Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.