本節では,ブロック対角な構造を持ったSDP問題を
効率よく解く手法について説明する.
ブロック対角な構造を持ったSDP問題とは,
入力データ行列
が
| 元 | 新 | ||
| 係数行列
|
|
|
|
| Schur方程式の求解 |
|
||
|
|
|
|
|
| 変数などの保持 |
|
|
|
| 係数行列
|
|
入力データ行列
はゼロ行列では無いため
(もしそうならば線形制約として意味がない),
基本的に式(4)で定義される
はゼロとはならない.
しかし,
はゼロ行列でなくても,
内部の行列
の中には
ゼロ行列が多いかもしれない.
その場合,
(10)式で計算される
はゼロとなる可能性がある.
実際,ブロック数が非常に多いSDP問題では,
係数行列
の中にゼロ要素が多数含まれることがある.
このような場合,疎Cholesky分解を実行することにより,
Schur方程式を高速に解くことができる.
その場合,充填(fill-in)がなるべく起らないように,
行や列を並べ替えることも重要となる.
今,係数行列
の疎性を
とし,
充填については考えない.
3.1節の手法も同時に利用することにより,
次のような効率化が期待できる.
| 元 | 新 | ||
| 係数行列
|
|
|
|
| Schur方程式の求解 |
|
|
|
|
|
|
||
| 変数などの保持 |
|
||
| 係数行列
|
|
|
|