半正定値計画法(SDP)は、半正定値行列の円錐とアフィン空間、すなわちスペクトル面体との交差上で線形目的関数(ユーザーが最小化または最大化したいユーザー指定の関数)の最適化に関係する数学的計画法のサブフィールドです。[1]
半正定値計画法は、いくつかの理由から関心が高まっている最適化の比較的新しい分野です。オペレーションズリサーチや組み合わせ最適化における多くの実際的な問題は、半正定値計画法の問題としてモデル化または近似できます。自動制御理論では、SDP は線形行列不等式のコンテキストで使用されます。SDP は実際には円錐計画法の特殊なケースであり、内点法によって効率的に解くことができます。すべての線形計画法と (凸) 2 次計画法はSDP として表現でき、SDP の階層を介して多項式最適化問題の解を近似できます。半正定値計画法は、複雑なシステムの最適化に使用されています。近年、一部の量子クエリ複雑性の問題が半正定値計画法の観点から定式化されています。
動機と定義
最初の動機
線形計画問題とは、多面体上の実変数の線形目的関数を最大化または最小化する問題です。半正定値計画では、代わりに実数値ベクトルを使用し、ベクトルのドット積を取ることができます。LP(線形計画)の実変数に対する非負制約は、SDP(半正定値計画)の行列変数に対する半正定値制約に置き換えられます。具体的には、一般的な半正定値計画問題は、次の形式の任意の数学的計画問題として定義できます。
ここで、、およびは実数であり、はおよび のドット積です。
同等の配合
行列が半正定値行列であるとは、それが何らかのベクトルのグラム行列である場合(つまり、すべての に対してとなるようなベクトルが存在する場合)、、言われます。この場合、これを と表記します。半正定値行列の同等の定義は他にもいくつかあることに注意してください。たとえば、半正定値行列は、非負の固有値のみを持つ自己随伴行列です。
をすべての実対称行列の空間 で表します。この空間には内積が備わっています(ここで はトレースを表します)。
前のセクションで示した数学プログラムは次のように書き直すことができる。
ここで、の要素は前のセクションからで与えられ、 は前のセクションから番目の要素を持つ対称行列です。したがって、行列 と は対称であり、上記の内積は明確に定義されています。
スラック変数を適切に追加すると、この SDP は方程式形式に変換できることに注意してください。
便宜上、SDP は若干異なるが同等の形式で指定される場合があります。たとえば、非負のスカラー変数を含む線形式をプログラム仕様に追加できます。各変数は、一部の に対してとして行列に組み込むことができるため、これは SDP のままです。 を確実にするために、すべての に対して 、制約を追加できます。別の例として、任意の半正定値行列に対して、の、エントリが および のスカラー積であるようなベクトルの集合が存在することに注意してください。したがって、SDPは多くの場合、ベクトルのスカラー積に関する線形式として定式化されます。標準形式の SDP の解が与えられれば、ベクトルは時間内に回復できます(たとえば、X の不完全コレスキー分解を使用することによって)。
他の最適化問題との関係
半正定値行列の空間は凸錐です。したがって、SDP は円錐最適化の特殊なケースであり、円錐最適化は凸最適化の特殊なケースです。
行列Cが対角行列の場合、内積 < C , X > は、 Cの対角要素とXの対角要素のベクトル積に相当します。同様に、行列A kが対角行列の場合、対応する内積はベクトル積に相当します。これらのベクトル積では、Xの対角要素のみが使用されるため、 Xの非対角要素を0 にするという制約を追加できます。この条件は、 Xのすべての対角要素が非負であるという条件に相当します。その結果得られる SDP は、変数がXの対角要素である線形計画になります。
二重性理論
定義
線形計画法と同様に、次のような一般的なSDPが与えられた場合、
(主問題またはP-SDP)では、双対半正定値計画(D-SDP)を次のように 定義します。
ここで、任意の 2 つの行列およびに対して、は を意味します。
弱い双対性
弱い双対性定理は、主SDPの値は少なくとも双対SDPの値であると述べています。したがって、双対SDPの実現可能な解は主SDP値の下限となり、逆に、主SDPの実現可能な解は双対SDP値の上限となります。これは、
ここで、最後の不等式は両方の行列が半正定値であるためであり、この関数の結果は双対ギャップと呼ばれることもあります。
強い二重性
主 SDP と双対 SDP の値が等しい場合、SDP は強い双対性プロパティを満たしていると言われます。すべての双対線形計画の最適目的が主目的に等しい線形計画とは異なり、すべての SDP が強い双対性を満たすわけではありません。一般に、双対 SDP の値は主 SDP の値より厳密に低い場合があり、P-SDP と D-SDP は次のプロパティを満たします。
(i) 原始問題 (P-SDP) が 以下に有界かつ厳密に実行可能であると仮定する(すなわち、 、 となるような問題が存在する) 。すると、 (D-SDP) の 最適解が存在し、
(ii) 双対問題(D-SDP)が上方に有界であり厳密に実行可能であると仮定する(つまり、 ある に対して)。このとき、(P-SDP)の最適解が存在し、(i)の等式が成り立つ。
SDP問題(および一般に任意の凸最適化問題)で強い双対性が成立するための十分条件は、スレーターの条件である。ラマナによって提案された拡張双対問題を使用することで、追加の正則性条件なしにSDPの強い双対性を達成することもできる。[2] [3]
例
例1
3つのランダム変数、、を考える。相関係数の集合が可能なのは、
この行列は相関行列と呼ばれます。 事前の知識(たとえば、実験の実証的結果)から、および であることがわかっているとします。 が取り得る最小値と最大値を決定する問題は、次のように表されます。
答えを得るために設定します。これはSDPで定式化できます。不等式制約は、変数行列を拡張し、スラック変数を導入することで処理します。たとえば、
この SDP を解くと、それぞれおよびの最小値と最大値が得られます。
例2
問題を考えてみましょう
- 最小化する
- 対象となる
ここで、 の場合は常に であると仮定します。
補助変数を導入すると、問題は次のように再定式化できます。
- 最小化する
- 対象となる
この定式化では、目的は変数の線形関数です。
最初の制約は次のように書ける。
ここで、行列は対角要素の値がベクトルの要素に等しい正方行列です。
2番目の制約は次のように記述できる。
以下のように 定義する
シューア補集合の理論を使うと、
(ボイドとヴァンデンバーグ、1996)
この問題に関連する半正定値プログラムは
- 最小化する
- 対象となる
例3(Goemans-Williamson最大カット近似アルゴリズム)
半正定値計画法は、NP困難な最大化問題の近似アルゴリズムを開発するための重要なツールです。SDPに基づく最初の近似アルゴリズムは、Michel GoemansとDavid P. Williamsonによるものです(JACM、1995)。[1] :第1章 彼らは最大カット問題を研究しました:グラフ G = ( V、E )が与えられたとき、一方から他方に交差する辺の数を最大化するように頂点Vの分割を出力します。この問題は、整数二次計画法として表現できます:
- それぞれが最大となるようにする。
P = NPでない限り、この最大化問題を効率的に解くことはできません。しかし、Goemans と Williamson は、この種の問題に取り組むための一般的な 3 段階の手順を観察しました。
- 整数二次計画を SDP に緩和します。
- SDP を解きます (任意の小さな加法誤差の範囲内で)。
- SDP ソリューションを丸めて、元の整数二次計画の近似解を取得します。
最大限のカットのために、最も自然なリラクゼーションは
- となるが、最大化は整数スカラーではなくベクトルに対して行われる。
これは SDP です。目的関数と制約がすべてベクトルの内積の線形関数だからです。SDP を解くと、 の単位ベクトルのセットが得られます。ベクトルは共線である必要がないため、この緩和されたプログラムの値は、元の 2 次整数プログラムの値よりも高くなるだけです。最後に、パーティションを取得するには丸め手順が必要です。Goemans と Williamson は、原点を通る一様ランダムな超平面を選択し、対応するベクトルが超平面のどちら側にあるかに応じて頂点を分割します。簡単な分析により、この手順で予想される近似比(パフォーマンス保証) 0.87856 - ε が達成されることがわかります。 (カットの期待値は、エッジがカットされる確率のエッジ全体にわたる合計であり、これは、エッジの端点のベクトル間の角度に比例します。この確率を と比較すると、期待値では、比率は常に少なくとも 0.87856 になります。)ユニーク ゲーム予想を仮定すると、この近似比率が本質的に最適であることが示されます。
GoemansとWilliamsonの最初の論文以来、SDPは数多くの近似アルゴリズムの開発に応用されてきました。その後、Prasad Raghavendraはユニークゲーム予想に基づいて制約充足問題の一般的な枠組みを開発しました。[4]
その他のアプリケーション
半正定値計画法は、近似比0.87856 の最大カット問題の解法など、組み合わせ最適化問題の近似解を見つけるために適用されてきました。SDPは幾何学ではテンセグリティ グラフを決定するためにも使用され、制御理論ではLMIとして、逆楕円係数問題では凸、非線形、半正定性制約として使用されます。[5]また、物理学では、共形ブートストラップを使用して共形場理論を制約するために広く使用されています。[6]
実行時の複雑さ
半正定値実行可能性問題( SDF) は、次のような決定問題です。SDP が与えられた場合、少なくとも 1 つの実行可能な解が存在するかどうかを判断します。この問題の正確な実行時複雑度は不明です (1997 年現在)。ただし、ラマナは次のことを証明しました。[2]
- チューリング マシンモデルでは、SDF が NP に属する場合と、SDF が co-NP に属する場合とで同じです。したがって、NP = coNP でない限り、SDF は NP 完全ではありません。
- Blum-Shub-Smale マシンモデルでは、SDF は NP と co-NP の交差点にあります。
SDPを解くアルゴリズム
SDP を解決するためのアルゴリズムにはいくつかの種類があります。これらのアルゴリズムは、プログラム記述のサイズと多項式である時間の加算誤差までの SDP の値を出力します。
楕円体法
楕円体法は凸計画法の一般的な方法であり、特にSDPを解くために使用できます。SDPのコンテキストでは、楕円体法は次の保証を提供します。[1] :Thm.2.6.1 次の方程式形式のSDPを考えます。
L をm 個の等式制約を満たすS n内の行列のアフィン部分空間とします。したがって、SDP は次のように記述できます。 。SDP のすべての係数が有理数であるとします。R を、実行可能解の最大フロベニウス ノルムの明示的に与えられた上限とし、ε> 0 を定数とします。 S n内の行列X は、 Xからのフロベニウス距離が最大でεであるL内のすべての行列Y が実行可能性条件 を満たす場合、 ε 深であると呼ばれます。と表記します。楕円体は、次のいずれかの出力を返します。
- L 内の行列 X* (つまり、すべての線形等式制約を正確に満たす) で、X* と何らかの実行可能解との間のフロベニウス距離が最大でε (つまり、不等式制約を近似的に満たす)、かつ(つまり、近似的に最適な目的値) となるもの。
- 問題にε 深解が存在しない (つまり、問題が近似的に実行不可能である) という証明書。
実行時間は、入力のバイナリエンコードでは多項式であり、チューリングマシンモデルではlog(R/ ε )です。
一般に、R はnに関して二重指数関数的になる可能性があることに注意してください。その場合、楕円体法の実行時間保証はnに関して指数関数的になります。しかし、ほとんどのアプリケーションでは、Rはそれほど大きくありません。これらの場合、楕円体法は、チューリングマシンモデルで多項式実行時間を保証する唯一の既知の方法です。[1] : 23 しかし、実際には、そのパフォーマンスはそれほど良くありません。
内点法
ほとんどのコードは内点法(CSDP、MOSEK 、SeDuMi、SDPT3、DSDP、SDPA)に基づいています。これらは一般的な線形SDP問題に対して堅牢かつ効率的ですが、アルゴリズムが2次法であり、大きな(そして多くの場合密な)行列を保存して因数分解する必要があるという制限があります。理論的には、最先端の高精度SDPアルゴリズム[7] [8]はこのアプローチに基づいています。
一次手法
円錐最適化のための一次法は、大きなヘッセ行列の計算、保存、因数分解を回避し、精度が多少犠牲になるものの、内点法よりもはるかに大きな問題に拡張できます。一次法は、分割円錐ソルバー (SCS) に実装されています。[9]もう 1 つの一次法は、交互方向乗数法(ADMM) です。[10]この方法では、各ステップで半正定値行列の円錐への投影が必要です。
バンドル方式
コード ConicBundle は、SDP 問題を非滑らかな最適化問題として定式化し、非滑らかな最適化のスペクトル バンドル法によって解決します。このアプローチは、特殊なクラスの線形 SDP 問題に非常に効率的です。
その他の解決方法
拡張ラグランジュ法(PENSDP)に基づくアルゴリズムは、内点法と動作が似ており、非常に大規模な問題に特化することができます。他のアルゴリズムでは、低ランク情報とSDPの非線形計画問題としての再定式化を使用します(SDPLR、ManiSDP)。[11]
近似法
SDP を近似的に解くアルゴリズムも提案されている。このような方法の主な目的は、近似解で十分であり、複雑性を最小限に抑える必要があるアプリケーションで、複雑性を低減することである。多入力多出力 (MIMO) 無線システムのデータ検出に使用されてきた著名な方法は、半正定値行列の代わりに半正定値行列のコレスキー分解因子を操作する三角近似半正定値緩和 (TASER) [12] である。この方法は、最大カットのような問題の近似解を計算し、多くの場合、正確なソルバーの解に匹敵しますが、アルゴリズムの反復回数はわずか 10~20 回です。Hazan [13]は、変数行列のトレースが1 でなければならないという追加の制約を付けて、SDP を解く近似アルゴリズムを開発しました。
前処理アルゴリズム
顔縮小アルゴリズムは、問題の制約を検査することでSDP問題を前処理するために使用されるアルゴリズムです。これらは、
- 厳密な実現可能性の欠如を検出します。
- 冗長な行と列を削除します。
- 変数行列のサイズを縮小する。[14]
参照
- 平方根和問題- SDP 実現可能性問題の特殊なケース。
参考文献
- ^ abcd ゲルトナー、ベルント;マトウシェク、イジー (2012)、ゲルトナー、ベルント。 Matousek、Jiri (編)、「半正定プログラミング」、近似アルゴリズムと半正定プログラミング、ベルリン、ハイデルベルク: Springer、pp. 15–25、doi :10.1007/978-3-642-22015-9_2、ISBN 978-3-642-22015-9、2023-12-31取得
- ^ ab Ramana, Motakuri V. (1997). 「半正定値計画法の正確な双対性理論とその複雑性への影響」.数学プログラミング. 77 (1): 129–162. doi :10.1007/BF02614433. ISSN 0025-5610. S2CID 12886462.
- ^ Vandenberghe, Lieven; Boyd, Stephen (1996). 「半正定値プログラミング」. SIAM Review . 38 (1): 49–95. doi :10.1137/1038003. ISSN 0036-1445.
- ^ Raghavendra, Prasad (2008). 「あらゆる CSP に対する最適アルゴリズムと近似不可能性の結果?」第 40 回 ACM コンピューティング理論シンポジウムの議事録。pp. 245–254。doi : 10.1145 / 1374376.1374414。ISBN 9781605580470. S2CID 15075197。
- ^ Harrach, Bastian (2021)、「凸非線形半正定値計画法による逆楕円係数問題の解決」、Optimization Letters、16 (5): 1599–1609、arXiv : 2105.11440、doi :10.1007/s11590-021-01802-4、S2CID 235166806
- ^ Simmons-Duffin, David (2015-02-06). 「共形ブートストラップのための半正定値プログラムソルバー」. Journal of High Energy Physics . 2015 (6): 174. arXiv : 1502.02033 . Bibcode :2015JHEP...06..174S. doi :10.1007/JHEP06(2015)174. S2CID 256009551.
- ^ ジャン・ハオティアン;カトゥリア、タルン。リー、イン・タット。パドマナーバン、スワティ。宋、趙(2020年11月)。 「半正定計画法のためのより高速な内点法」。2020 IEEE 61st Annual Symposium on Foundations of Computer Science (FOCS)。米国ノースカロライナ州ダーラム: IEEE。 910–918ページ。arXiv : 2009.10217。土井:10.1109/FOCS46700.2020.00089。ISBN 978-1-7281-9621-3. S2CID 221836388。
- ^ 黄、白河;江春華。宋、趙。タオ、蘭州。張瑞哲(2021-11-18)。 「SDP の迅速な解決: 堅牢な IPM フレームワークと効率的な実装」。arXiv : 2101.08208 [math.OC]。
- ^ Brendan O'Donoghue、Eric Chu、Neal Parikh、Stephen Boyd、「演算子分割と同種自己二重埋め込みによる円錐最適化」、Journal of Optimization Theory and Applications、2016 年、pp 1042--1068、https://web.stanford.edu/~boyd/papers/pdf/scs.pdf。
- ^ Wen、Zaiwen、Donald Goldfarb、Wotao Yin。「半正定値計画法のための交互方向拡張ラグランジュ法」数学計画計算 2.3-4 (2010): 203-230。
- ^ Burer, Samuel; Monteiro, Renato DC (2003)、「低ランク因数分解による半正定値計画法を解くための非線形計画アルゴリズム」、数学プログラミング、95 (2): 329–357、CiteSeerX 10.1.1.682.1520、doi :10.1007/s10107-002-0352-8、ISSN 1436-4646、S2CID 7691228
- ^ Castañeda, O.; Goldstein, T.; Studer, C. (2016 年 12 月). 「近似半正定値緩和による大規模マルチアンテナ無線システムでのデータ検出」. IEEE Transactions on Circuits and Systems I: Regular Papers . 63 (12): 2334–2346. arXiv : 1609.01797 . doi : 10.1109/TCSI.2016.2607198 . hdl :20.500.11850/448631. ISSN 1558-0806.
- ^ Hazan, Elad (2008). Laber, Eduardo Sany; Bornstein, Claudson; Nogueira, Loana Tito; Faria, Luerbio (編). 「半正定値プログラムのスパース近似解」. LATIN 2008: 理論情報学. コンピュータサイエンスの講義ノート. ベルリン、ハイデルベルク: Springer: 306–316. doi :10.1007/978-3-540-78773-0_27. ISBN 978-3-540-78773-0。
- ^ Zhu, Yuzixuan; Pataki, Gábor; Tran-Dinh, Quoc (2019)、「Sieve-SDP: 半正定値プログラムを前処理するための単純な顔縮小アルゴリズム」、数学プログラミング計算、11 (3): 503–586、arXiv : 1710.08954、doi :10.1007/s12532-019-00164-4、ISSN 1867-2949、S2CID 53645581
- Lieven Vandenberghe、Stephen Boyd、「半定値プログラミング」、SIAM Review 38、1996 年 3 月、pp. 49–95。pdf
- Monique Laurent、Franz Rendl、「半正定値計画法と整数計画法」、レポート PNA-R0210、CWI、アムステルダム、2002 年 4 月。optimization-online
- E. de Klerk、「半正定値計画法の側面: 内点アルゴリズムと選択されたアプリケーション」、Kluwer Academic Publishers、2002 年 3 月、ISBN 1-4020-0547-4。
- Robert M. Freund、「半正定値計画法 (SDP) 入門」、SDP 入門
外部リンク
- 分野別の紹介やイベントへのリンク
- László Lovászによる半正定計画法に関する講義ノート
