Presentation is loading. Please wait.

Presentation is loading. Please wait.

SDPA: Leading-edge Software for SDP Informs ’ 08 Tokyo Institute of Technology Makoto Yamashita Mituhiro Fukuda Masakazu Kojima Kazuhide Nakata.

Similar presentations


Presentation on theme: "SDPA: Leading-edge Software for SDP Informs ’ 08 Tokyo Institute of Technology Makoto Yamashita Mituhiro Fukuda Masakazu Kojima Kazuhide Nakata."— Presentation transcript:

1 SDPA: Leading-edge Software for SDP 2008/10/14 @ Informs ’ 08 Tokyo Institute of Technology Makoto Yamashita Mituhiro Fukuda Masakazu Kojima Kazuhide Nakata Chuo University Katsuki Fujisawa National Maritime Research Institute Kazuhiro Kobayashi RIKEN Maho Nakata

2 2 SDPA (SemiDefinite Programming Algorithm) Project  Open Source Software to solve SemiDefinite Programming  Since the 1 st release in 1995, it has kept high quality  In 2008, the latest version SDPA 7 was released and has been updated continuously  Many software for more advantage

3 3 SDPA Family SDPA SDPARA (Parallel with MPI) SDPA-C (Matrix Completion) SDPA-M (Matlab Interface) SDPA-GMP (Multiple Precision) SDPARA-C accessible on SDPA Online Solver as Web service

4 4 Outline of this talk 1.SDP and the improvements of SDPA7 2.Parallel with MPI 3.Multiple Precision 4.Online Solver 5.Future Works

5 5 SDPA  Basic software of SDPA family  Primal-Dual Interior-Point Method  Mehrotra-type Predictor-Corrector  Exploitation of Sparisty

6 6 Standard form of SDP

7 7 Applications of SDP  Control Theory Lyapnov condition  Combinatorial Optimization Max Cut Theta function  Quantum Chemistry Reduced Density Matrix

8 8 Primal-Dual Interior-Point Methods

9 9 Computation for Search Direction Schur complement matrix ⇒ Cholesky Factorizaiton Exploitation of Sparsity in

10 10 Exploitation of Sparsity in Schur complement matrix  Minimize the number of numerical operations with proper formulations

11 11 SDPA 7  SDPA7 resolves bottlenecks of SDPA6 Introduce sparse Cholesky factorization for the Schur complement matrix Adopt new data structure Reduce memory space for temporary variables Introduce configure script for easier installation

12 12 Sparsity pattern of Schur complement matrix Fully dense Schur complement matrix Fully dense Schur complement matrix Sparse Schur complement matrix Sparse Schur complement matrix minimum degree ordering  to minimize the number of fill-in minimum degree ordering  to minimize the number of fill-in

13 13 New Data Structure  For multiple diagonal structure  SDPA6 stores nonzero elements of each block stores all blocks  SDPA 7 stores nonzero elements of each block stores only nonzero blocks

14 14 r2S_broydenTri300.dat-s SDPA 6SDPA 7 Computing B1009.0s0.8s Cholesky B5179.5s0.5s Total CPU Time6204.4s2.8s Input data90MB1MB Matrix B272MB4MB Dense Matrix7MB3MB Total Memory380MB19MB Sparse Schur New Data Structure Efficient Temporary Xeon 2.80GHz, 2GB memory, Linux 2.4

15 15 Configure script  Easier installation $./configure – with-blas= ” -lblas ” – with-lapack= ” -llapack ” $ make $ make install  We can link with Optimized BLAS, i.e., ATLAS, GotoBLAS, Intel MKL

16 16 Matlab Interface  SDPA-M is the Matlab interface [mDIM,nBLOCK,bLOCKsTRUCT,c,F] = read_data( ’ example1.dat-s ’ ); [objVal,x,X,Y,INFO] = sdpam(mDIM,nBLOCK,bLOCKsTRUCT,c,F,OPTION);  SeDuMi Input interface [At,b,c,K] = fromsdpa( ’ example1.dat-s ’ ); [x,y,info] = sedumiwrap(At,b,c,K,[],pars);  Current version is for only LP and SDP cones  Parameter control is based on SDPA

17 17 Extremely Large Problem and Bottlenecks The largest size requires 8.6GB memory We replace these two bottlenecks by parallel computation Opteron 246 2.0GHz 6GB Memory

18 18 Exploitation of Sparsity in SDPA  We change the formula by row-wise  We keep this scheme on parallel computation F1F1 F2F2 F3F3

19 19 Row-wise distribution for evaluation of the Schur complement matrix  4 CPU is available  Each CPU computes only their assigned rows .  No communication between CPUs  Efficient memory management

20 20 Parallel Cholesky factorization  We adopt Scalapack for the Cholesky factorization of the Schur complement matrix  We redistribute the matrix from row-wise to two-dimensional block-cyclic-distribtuion Redistribution

21 21 Computation Time for NH3 TSUBAME@Tokyo-Tech Opteron 880 (2.4GHz) 32GB memory/node

22 22 Scalability for LiF Total 28 times Comp B 43 times Chol B 46 times Row-wise distribution for Comp B is very effective TSUBAME@Tokyo-Tech Opteron 880 (2.4GHz) 32GB memory/node

23 23 Matrix Completion  Structual Sparsity in Primal Variable  Nakata-Fujisawa-Fukuda-Kojima-Murota Positive Definite Matrix Completion Chordal Graph Sparse Cholesky Factorization  SDPA-C = SDPA + Completion  SDPARA-C = SDPARA + Completion [2003]

24 24 Aggregate Sparsity Pattern Enough for objective function and equality constraints All elements are required for PSD

25 25 Positive Definite Matrix Completion Assign values not in to be positive definite

26 26 Multiple Precision  SDPA uses ‘ double ’ precision 53 significant bit almost 8 digit  SDPA 7 result (gpp124-1 from SDPLIB) Objective Function (Only 5 digits) -7.3430761748645921e+00(Primal) -7.3430800814821620e+00(Dual) Feasibility 5.45696821063e-12 (Primal) 1.68252292320e-07 (Dual)  Some applications requires more accuracy

27 27 SDPA-GMP  GMP: Gnu Multiple Precision Library  Arbitrary fixed precision  ‘ double ’ precision is replaced by GMP  Ultra High Accuracy by long computation time

28 28 Ultra Accuracy of SDPA-GMP

29 29 Comparison on SDPA and SDPA-GMP(384bit) gpp124-1(SDPLIB) SDPA-GMP(7.1.0) Relative gap 1.7163710368162993e-26 Objective Function -7.3430762652465377e+00 (Primal) -7.3430762652465377e+00 (Dual) Feasibility 2.0710194844721e-57 (Primal) 1.2329417039702e-29 (Dual) Computation time 228.95 sec. (59 iterations) SDPA(7.1.0) Relative gap 5.3201361904260111e-07 Objective Function -7.3430761748645921e+00 (Primal) -7.3430800814821620e+00 (Dual) Feasibility 5.45696821063e-12 (Primal) 1.68252292320e-07 (Dual) Computation time 0.14 sec. (20 iterations)

30 30 SDPA Online Solver  SDPA Online Solver will offer SDPA/SDPARA/SDPARA-C via the Internet. Internet Interface User 1.Input 2.Ninf-G 3.SDPARA on PC cluster 4.Solution

31 31 To use Online Solver  Users without parallel environment can use SDPARA/SDPARA-C.  No Charge.  Registration via the Internet is required so that passwords to protect users data will be generated automatically.  Access SDPA Project Home Page. [SDPA Online for your future.] http://sdpa.indsys.chuo-u.ac.jp/sdpa/

32 32 Online Solver Interface

33 33 Online Solver Usage

34 34 Conclusion  The latest version 7 attains higher performance than version 6  Parallel Solver enables us to solve extremely large SDPs  Matrix Completion is useful for Structural Sparsity  SDPA-GMP generates ultra high accuracy solution  Online Solver provides powerful computation resources via the Internet

35 35 Future works  Callable Library of SDPA7  Automatic Selection from SDPA/SDPARA/SDPARA-C


Download ppt "SDPA: Leading-edge Software for SDP Informs ’ 08 Tokyo Institute of Technology Makoto Yamashita Mituhiro Fukuda Masakazu Kojima Kazuhide Nakata."

Similar presentations


Ads by Google