Research Reports on Mathematical and Computing Sciences Series B : Operations Research

Department of Mathematical and Computing Sciences Tokyo Institute of Technology 2-12-1 Oh-Okayama, Meguro-ku, Tokyo 152, Japan

Introduction to Mathematical Programming from the Viewpoint of Interior-Point Methods (in Japanese)

Masakazu Kojima e-mail:kojima@is.titech.ac.jp

March 1999, B-349

Abstract. Since Karmarkar proposed a new interior-point method for linear program in 1984, the interior-point method has made dramatic progress in these fifteen years. Competing with the traditional simplex method, the interior-point method is now known as the most powerful computational method for solving huge scale linear programs. In the field of continuous optimization, the interior-point method has been successfully extended to convex quadratic programs, semidefinite programs, and more general convex programs, while, in the field of discrete optimization, the interior-point method has been playing an important role in terms of the semidefinite programming relaxation of 0-1 integer programs. The purpose of this article is to present basic ideas behind the interior-point method without using deep mathematics, and to give an overview of recent development of mathematical programming emphasizing the interior-point method.

Keywords: Mathematical Program, Linear Program, Interior-Point Methods, Optimization.

B-349 {数理計画法概論 — 内点法を中心にして — \atop 小島政和^{†}，１９９８年９月}

概要．１９８４年に Karmarkar が線形計画問題に対する内点法（いわゆる， Karmarkar 法）を発表して以来１５年が経過した．この間，内点法はめざましい速度で発展を遂げ，線形計画法の分野では従来の単体法をしのぐ高速解法に成長している．線形計画を含む連続最適化の分野では，内点法は，凸２次計画問題，半正定値計画問題，より一般の凸計画問題に対して拡張されている．離散最適化の分野でも，内点法は半正定値計画問題による緩和を通して重要な役割を果たしつつある．本稿では内点法の基本的な考え方をなるべく数学を使わずにやさしく解説し，内点法を中心において数理計画法全体の概説を行う．

Key words 数理計画法，線形計画法，内点法，最適化

† 郵便番号１５２目黒区大岡山２–１２–１東京工業大学情報理工学研究科数理・計算科学専攻電子メール： kojima@is.titech.ac.jp

1 はじめに

内点法（Interior-Point Method）の歴史をいつまで遡ればよいかはさほど明確ではないが，現在の内点法の隆盛の直接のきっかけとなったのは１９８４年に発表された線形計画問題の新解法，いわゆる Karmarkar 法 [9] である． Karmarkar 法が数理計画分野全体に与えた影響は非常に大きく，この１５年間に数理計画は著しい進歩を遂げている．特に，線形計画の分野では，内点法は従来の単体法（Simplex Method）では解けないような超大規模な問題を高速に解く計算手法（Lustig-Marsten-Shanno[20] 等参照）として，その地位を確立している．

本稿の主目的は，内点法の基本的な考え方を易しく説明し，内点法の数理計画分野全体の中での位置づけを示すことにある．本稿を通して，なるべく数式を使わないように努力を払った．内点法や単体法と言っても，それらの中に非常に多くの種類の方法を含む．また，１種類の方法に限定しても様々な角度から記述が可能である．ここでは， “あまり大きな嘘はつかない程度に”，幾何学的な説明のしやすい角度からの説明を行う．そのため，数学的には厳密性を欠いていること，および，原著にもそれほど忠実でないことをご容赦願いたい．

第２節では，内点法によって最も強い影響を受けた線形計画法（線形計画問題，単体法，および，双対定理）について簡単に説明する．第３節では内点法の初期の頃の発展，および，それらを通して内点法の基本的な考え方を説明する．第４節「数理計画法とは」，第５節「連続最適化と離散最適化」，第６節「局所最適化と大域的最適化」では数理計画法分野全体を概観し，その中での内点法の位置づけ，および，内点法の担う役割についてふれる．第７節では内点法が拡張されている凸計画問題について述べる．

2 線形計画問題，単体法，双対定理について簡単に

この節では線形計画問題（2.1 節），線形計画問題を解く伝統的な計算手法である単体法（2.2 節)，および，線形計画問題の基本理論である双対定理（2.3 節）の簡単な説明を行う． 2.2 節で述べる単体法の特徴は， 3.1 節で Karmarkar 法を紹介するときに，その特徴と対比する．また，双対定理は 3.4 節で紹介する主双対内点法の準備でもある．

2.1 線形計画問題

\underline{線形計画問題}は「\underline{線形不等式条件}

∑_{j=1}^{n} a_{ij}x_{j} ≤ b_{i} (1 ≤ ∀i ≤ m)  (1)

図 1: 線形計画問題（概念図）

を満たす x = (x_{1}, x_{2}, …, x_{n}) で，線形の\underline{目的関数} ∑_{j=1}^{n} c_{j}x_{j} を最小（または，最大）にする

x^{∗} = (x_{1}^{∗}, x_{2}^{∗}, …, x_{n}^{∗})を求めよ」という問題である．ここで， a_{ij}, b_{i}, c_{j} はすべて実数で，線形計画問題のデータとして与えられる．条件 (1) を満たす x = (x_{1}, x_{2}, …, x_{n}) を\underline{実行可能解}（または，\underline{許容解}），その集まりを P で表す． P は n 次元空間 \{x = (x_{1}, x_{2}, …, x_{n}) : x_{j}は実数\} 内で，有限個の超平面

∑_{j=1}^{n} a_{ij}x_{j} = b_{i} (1 ≤ ∀i ≤ m)

で囲まれた領域（有界とは限らない）になる．ここでは，対象とする線形計画問題が最小化問題で， P が n 次元空間内で内点が空でない有界な多面体を形成していると仮定して議論を進める． P を\underline{実行可能多面体}と呼ぶ． n = 2 の場合には，図 1 に示したように， P は多角形になる．線形計画問題を

目的： ∑_{j=1}^{n} c_{j}x_{j} → 最小化；条件： x = (x_{1}, x_{2}, …, x_{n}) ∈ P  (2)

と記述する．

目的関数は線形であるから，その等高面 {x = (x_{1}, x_{2}, …, x_{n}) : ∑_{j=1}^{n} c_{j}x_{j} = 定数} も n 次元空間内の超平面となる． n = 2 の場合には，図 1 のように，直線になる．等高面（図 1 の場合には等高線）を目的関数が小さくなる方向に，実行可能多面体 P の境界と接するまでずらして行くと\underline{最小解}が得られる．一般には，最小解の集合が得られるが，その中に必

図 2: 単体法と内点法（概念図）

ず頂点が含まれる（図 1 において，等高線の傾きを種々に変化させて同様の操作を行うとこの事実が検証できる）．このことより，実行可能多面体 P 内で最も目的関数値を小さくする点に必ず P の頂点が含まれることが分かり，最小解の候補を P の有限個の頂点に絞ることができる．

2.2 単体法

１９４７年に G.B.Dantzig によって提案された線形計画問題の解法である\underline{単体法}は，コンピュータの急速な発展と線形計算技術の進歩を取り込んで，着実な進歩を遂げている． Karmarkar 法（後述）の出現した１９８４年よりずっと前の時点で，数理計画法（あるいはオペレーションズリサーチ分野と言っても過言ではない）の最も基本的で，実用的で，かつ，最強の手法としての地位を確立していた．単体法は，線形計画問題の上述の特徴を巧妙に利用している．１つの頂点から出発して隣接する頂点をたどって，目的関数の値を小さくしながら，最小解に到達する．図 2 参照．したがって，単体法の反復回数は最小解に到達するまでに生成される頂点の個数に一致し，計算効率もそれに比例する．一方，線形計画問題のサイズ＝ “変数の個数 n と線形不等式の個数 m” の増加にともなって，生成される可能性のある P の頂点の個数は爆発的に増加することが知られている．このことが災いして，単体法を工夫して多項式オーダーの解法が作れるかは未知な課題として残されたままになっている．言い換えると，「現在までに提案されている単体法では， n と m のどんな多項式（例えば， 2m^{4} や 4m^{3}n + 6n^{5}）を選んでも， n と m を十分大きくとると，その多項式の四則演算回数では解けないようなサイズ（変数の個数 = n，不等式の個数 = m）の線形計画問題が存在する」となる．実社会から生ずる線形計画問題を解いた経験からは，単体法の反復回数は実行可能多面体 P を記述するのに用いられる線形不等式の個数 m の数倍程度であると言われているが，単体法が多項式オーダーの解法でないことは，問題のサイズが大きくなると計算効率が著しく落ちる可能性を示唆している． Karmarkar 法が出現した当時，航空

図 3: 双対定理（概念図）

会社の乗員のスケジューリング，広域ネットワーク上の通信の最適化等，従来の単体法では手に負えないような超大規模な線形計画問題を解く需要が次第に生まれつつあった．

2.3 双対定理

線形計画問題 (2) の\underline{双対問題}を導入する．この双対問題は元の問題 (2) を定義するデータ c_{j}, a_{ij}, b_{i} と同じデータを使って定義されるが，その使い方は異なる．大ざっぱには，元の問題 (2) の目的関数の最小化，線形目的関数の係数 c_{j}，線形不等式条件の係数 a_{ij}，線形不等式条件の定数項 b_{i} が， “転置” されて，双対問題の目的関数の最大化，線形不等式条件の定数項 c_{j}，線形不等式条件の係数 a_{ji} （ij が ji になっていることに注意），線形目的関数の係数 b_{i} として使われる．ここでは，双対問題を抽象的に以下のように書くことにする．

目的： ∑_{i=1}^{m} b_{i}y_{i} → 最大化；条件： y = (y_{1}, y_{2}, …, y_{m}) ∈ D  (3)

双対問題 (3) と対比させて，元の問題 (2) を\underline{主問題}と呼ぶ^{1}．主問題 (2) と双対問題 (3) の間には，\underline{双対定理}と呼ばれる以下の関係が成り立つ．

∑_{i=1} b_{i}y_{i} ≤ 双対問題の最大値
= 主問題の最小値

1双対問題 (3) も線形計画問題であるから，さらに，その双対問題を考えることが出来るが，問題 (3) の双対問題はもとの問題 (2) と一致する．したがって， (2) と (3) のどちらを主問題と呼んでもよい．

≤ ∑_{j=1}^{n} c_{j}x_{j}
(∀x = (x_{1}, x_{2}, …, x_{n}) ∈ P, ∀y = (y_{1}, y_{2}, …, y_{m}) ∈ D)

図 3 参照．主問題と双対問題の実行可能解の組 (x, y) に対して， ∑_{j=1}^{n} c_{j}x_{j} − ∑_{i=1}^{m} b_{i}y_{i} ≥ 0 を

\underline{双対ギャップ}と呼ぶ．双対定理より，「双対問題の実行可能解 y （または，主問題の実行可能解 x）が１つ与えられると， ∑_{i=1} b_{i}y_{i} は主問題の最小値の下界（または， ∑_{j=1}^{n} c_{j}x_{j} は双対問題の最大値の上界）になっている」ことが分かる．さらに，主問題と双対問題の実行可能解の組 (x, y) に対して，双対ギャップが十分小さければ， x は主問題の近似最小解であり，かつ， y は双対問題の近似最大解として使うことができる．

3 線形計画問題に対する内点法

単体法の特徴は実行可能多面体 P の境界に属する頂点をたどって最小解に到達することにある．この特徴は単体法が有限回の反復で最適解に到達することを保証している．しかしながら，この特徴ゆえに，「変数の個数 n と線形不等式条件の個数 m の増加にともなって頂点が爆発的に増える」等の実行可能多面体 P の境界の組合せ的複雑さとまともに対峙することになる．内点法は，実行可能多面体 P の内部を通って最適解に近づくことで，実行可能多面体 P の境界の組合せ的複雑さを回避している．図 2 参照．この節では代表的な内点法である Karmarkar 法 [9]，アフィン変換法 [2, 3, 35]， Renegar による中心パス追跡法 [29]，主双対内点法 [12, 13, 31] を紹介し，それらを通して内点法の本質的な考え方を解説する．

3.1 Karmarkar 法

線形計画法＝ G.B.Dantizig の単体法とまでいわれていた単体法信奉の Mathematical Programming Society に\underline{Karmarkar 法}が与えた衝撃と余波ははかりしれないほど大きかった．その当時（1984 年）の様子とその後の特許論争を含めては今野浩著「カーマーカー特許とソフトウェア」 [17] に詳しく紹介されている．従来の単体法と比較したときの Karmarkar 法の特徴として，

(a) 多項式オーダの解法，

(b) 実行可能多面体 P の内部を通って最小解に近づく

をあげることができる．

(a) に関しては， 1979 年に発表された最初の多項式オーダの解法である楕円体法 [10] よりも僅かによい多項式オーダを示しているにすぎない．理論面で優れた多項式オーダの楕円体図 4: 対数ポテンシャル関数（概念図）

図 5: Karmarkar 法の１反復（概念図）

法が，実用面では単体法に全くかなわない極めて非効率な方法であることを経験している多くの研究者にとって，関心の的は Karmarkar 法の実用面にあった．そのような状況の中で Karmarkar は彼の方法が実用面でも従来の単体法をはるかにしのぐ方法であることを主張し続けた．しかしながら，計算実験に使ったアルゴリズムの細部を公開しなかったため，彼が論文で発表した Karmarkar 法が単体法を本当にはるかにしのいだのかは未確認のまま埋もれてしまった．

Karmarkar 法の特徴 (a), (b) を支える主たる数学的道具は実行可能多面体の内点で定義された\underline{対数ポテンシャル関数}と\underline{射影変換}の２つである．対数ポテンシャル関数は，内点から最小解とは異なる実行可能多面体の境界点に近づく，あるいは，境界に沿うように最小解に近づいても +∞ に発散し，かつ，最小解に実行可能多面体 P の十分内側を通って近づいたときのみ −∞ に発散するように設計されている．図 4 参照．したがって，実行可能多面体 P の内点で対数ポテンシャル関数を最小化することは，実行可能多面体 P の境界に近づかずに，内点を通って，線形計画問題の最小解に近づくことを強制する．一方， Karmarkar 法の１反復では，射影変換 Tx^{}¯によって（x̄ に依存して定まることに注意），現反復内点 x̄ が実行可能多面体 P の像 P′ = Tx^{}¯ (P) （多面体）の “中心” e′ = Tx^{}¯ (x̄) に移される．変換された空間で中心 e′ = Tx^{}¯ (x̄) から目的関数の最急降下方向 d′ を選び，それを元の空間に逆射影

図 6: 内点法で使う非線形な探索方向ベクトル場（概念図）

変換した方向 d を，現反復点 x̄ からの探索方向として採用する．図 5 参照．さらに，現反復点 x̄ から適当なステップサイズ α > 0 （例えば， d 方向で対数ポテンシャル関数を最小にするステップサイズ α > 0）を選んで，新しい反復点 x̄ + αd を定める．それを x̄ で置き換えて，同様の反復を繰り返す．この１反復で，対数ポテンシャル関数の値を，少なくとも，あらかじめ与えられた定数 1/8 だけ下げることができる．このことが多項式オーダの収束を保証している．

Karmarkar 法が示唆する内点法に必要なメカニズム少しを違った角度から整理しておく． x̄ を実行可能多面体 P の各内点にとって，上述した射影変換とその逆変換を適用すると，図 6 に示したような

• 任意の内点からその流れに沿って進むと最小解に到達する非線形の探索方向ベクトル場

を得る．対数ポテンシャル関数は，

• 実行可能多面体 P の境界に決して近づかないようにする障壁と目的関数の値を組み合わせたメリット関数

として機能し，ステップサイズの決定に関わっている．この２つのメカニズムはこれ以後に発展する数多くの内点法に引き継がれることになる．

「線形計画はもちろん，非線形計画の研究者も使ったことがない非線形の道具である対数ポテンシャル関数と射影変換を線形の世界に持ち込むことが実用的なアルゴリズムへと結びつくのだろうか？」等の疑問を多くの研究者が発したに違いない．いずれにしろ， Karmarkar 法は十分に刺激的であり，多くの研究者を引きつけ，内点法の研究のまさに起爆剤になったといえる．

図 7: 中心パスと Renegar の中心パス追跡法（概念図）

3.2 アフィン変換法

上述の２つの道具，対数ポテンシャル関数と射影変換のなかでアルゴリズムの計算過程でより本質的な役割を演じているのは射影変換である．対数ポテンシャル関数は多項式オーダーの収束を測るものさしとして使われているにすぎない．この点に着目して， Barnes[2] と Vanderbei-Meketon-Freedman[35] は，射影変換の代わりにより単純なアフィン変換を用いた “Karmarkar 法の変形版” ＝\underline{アフィン変換法}（Affine Scaling Method）を１９８６年に独立に提案している．その後，１９８８年になってこのアフィン変換法が，１９６７年に当時のソ連の研究者 I.I.Dikin に [3] よって提案されていたことが判明する．したがって，線形計画問題に対する最初の内点法がアフィン変換法で， Karmarkar 法はその変形版と言い直すべきかもしれない．実際，オリジナルの Karmarkar 法を，アフィン変換法と対比させて， \underline{射影変換法}（Projective Scaling Method）と呼ぶことも多い．アフィン変換法は非常に単純な構造をしており，かつ，理解し易い内点法として知られている．概念的には図 5 で射影変換を用いる代わりにアフィン変換を用いていると考えてよい．アフィン変換とその逆変換を用いることにより，図 6 に示したような任意の内点からその流れに沿って進むと最小解に到達する非線形の探索方向ベクトル場も得られる． Karmarkar 法の登場直後から，アフィン変換法は Karmarkar 法の実用版として注目され， Adler-Karmarkar-Resende-Veiga[1] による従来の単体法との比較実験でも好成績を収めた．ただし， Karmarkar 法と違って，多項式オーダの収束は保証されていない．最も一般的な大域的な収束性は土谷−村松 [33] 等によって証明されている．

3.3 Renegar による中心パス追跡法

上述のアフィン変換法の再発見とほぼ同時期に，その後の内点法の発展にまさに中心的な役割を果たす多面体の\underline{解析的中心}（Analytic Center）が Renegar[29] と Sonnevend[30] によって内点法に導入されている．多面体の解析的中心は多面体の内点上で定義された対数障壁関数の最小値を達成する点として定義される．この概念を線形計画問題 (2) に対する内点法に適用するために， t > t^{∗} をパラメータとする多面体の族

P (t) = {x ∈ P : ∑_{j=1}^{n} c_{j}x_{j} ≤ t}

を導入する．ここで， t^{∗} は線形計画問題 (2) の最小値である．このとき，各 t > t^{∗} に対して多面体の解析的中心 x(t) が一意的に定まる．その集まり \{x(t) : t > t^{∗}\} は\underline{中心パス}（Center Path，または， Central Trajectory）と呼ばれ，実行可能多面体 P の内部から最小解に収束する滑らからパスを形成する．図 7 参照． Renegar の方法では，この中心パスをパラメータ t を目的関数の最小値 t^{∗} まで徐々に減少させながら Newton 法を用いて追跡している．この方法では中心パスへの Newton 方向ベクトル場が，その流れに沿って進むと最小解に到達する非線形の探索方向ベクトル場の役割を果たしている．実行可能多面体 P の境界に近づかないように，生成する内点列を中心パスの近傍内に制限している．理論的には，この中心パスの近傍が Karmarkar 法においてその多項式オーダの収束の証明に使われた対数ポテンシャル関数の役割を代替している．これ以後， Karmarkar 法のように対数ポテンシャル関数を用いて多項式オーダーの収束を達成する内点法と， Renegar の方法のように中心パスの追跡によってそれを達成する内点法とに分かれる．前者のクラスの内点法は\underline{ポテンシャル減少法}（Potential Reduction Method），後者のクラスの内点法は\underline{パス追跡法}（Path-Following Method）と呼ばれる．

3.4 主双対内点法

１９８７年３月に統計数理研究所で行われた研究集会「線形計画問題の新解法」において，現時点で，理論的にも実用的にも最強の内点法である\underline{主双対内点法}（Primal-Dual Interior-Point Method）の原型が，小島−水野−吉瀬 [12, 13] と田辺 [31] によって独立に提案された．主双対内点法は， Renegar の中心パス追跡法に双対定理を組み入れ，主問題と双対問題の空間で同時に連動して中心パスを追跡する方法であると言える．これを簡単に説明するために，主問題 (2) と双対問題 (3) を合わせた線形計画問題である主双対問題を導入する．

目的： ∑_{j=1}^{n} c_{j}x_{j} − ∑_{i=1}^{m} b_{i}y_{i} → 最小化；条件： x ∈ P, y ∈ D  (4)

双対定理により，この問題の最小値は 0 であることが分かっている．したがって，主双対問題 (4) の中心パスは t > 0 をパラメータとする多面体

{(x, y) ∈ P × D : ∑_{j=1}^{n} c_{j}x_{j} − ∑_{i=1}^{m} b_{i}y_{i} ≤ t}

の解析的中心 (x(t), y(t)) からなる滑らかな曲線 {(x(t), y(t)) : t > 0} で主問題と双対問題の最適化の組 (x^{∗}, y^{∗}) に収束する．図 8 参照．主双対内点法はこのように定義された中心パ

図 8: 主双対問題に対する中心パスと主双対内点法（概念図）

スを追跡している．中心パスはいくつかの異なった表現がある．論文 [12, 13, 31] では，上述の解析的中心を用いた表現でなく，主双対問題の実行可能多面体 P × D の内点で定義された対数障壁関数の最小点として中心パスを定義し，最小点であるための必要十分条件をなす非線形方程式系に Newton 法を適用して，中心パスを追跡している．

対数障壁関数の最小点および非線形方程式系を用いた上述の中心パスの表現は Megiddo [21]による．対数障壁関数は１９６０年代後半に提案されたSUMT(Sequential Unconstrained Minimization Technique)[4] で使われたが，数値的な不安定性等の理由により，非線形計画法の分野では忘れかけられていた道具である．それが線形計画法の分野で主要な役割を果たす道具として復活したのは興味深い．

線形計画法の最も強力な定理である双対定理を取り込んだことにより，内点法は理論的に強化されたのみならず，これ以後，実用化へ向けて急速な進歩を遂げることになる．理論的には，主双対内点法の凸２次計画問題への拡張 [14, 24] 等，主双対予測子修正子法（Primal-Dual Predictor-Corrector Method） [23] 等，主双対ポテンシャル減少法（Primal-Dual Potential Reduction Method） [15]，局所的な収束速度に関する研究 [36] 等をあげることが出来る．実用面で大きな影響を与えたのは，実行可能でない点を初期点とする主双対内点法（Primal-Dual Infeasible-Interior-Point Method） [19] 等， Mehrotra の予測子修正子法（Mehrotra’s Predictor-Corrector Method） [22] である．

図 9: 数理計画問題（概念図）

4 数理計画問題とは

第２節で紹介した線形計画問題は最も基本的な数理計画問題の１つであり，単体法と内点法はそれを解くためのアルゴリズム（数値計算手法）である．一般に，\underline{数理計画問題} （Mathematical Program，または， Mathematical Programming Problem）は与えられた制約条件の下でより良い目的を達成するための数理モデルの１つである．現実の問題の数理計画問題への定式化，それを解くアルゴリズム，および，それらの理論的な考察までを含めて\underline{数理計画法}と呼ぶ．内点法は，線形計画問題のみならず，より一般的な数理計画問題に拡張されている．この節では数理計画問題に関わる基本的な定義を与える．

抽象的な形の数理計画問題

目的：f(x) → 最小化（または，最大化）；条件：x ∈ F  (5)

から始めよう．ここで， F はある集合 S の部分集合， f は S の各点 x を実数値 f(x) に対応させる関数である． (図 9 参照)． S は対象とする数理計画問題を記述するのに用いられる \underline{基礎となる空間}と考えればよい．

F を\underline{実行可能集合}（または，\underline{許容集合}）， f を\underline{目的関数}と呼ぶ．目的関数 f の最大化を扱う場合も多いが，目的関数 f を F 上で最大化することは， −f を F 上で最小化することと等価である（ただし，目的関数値 f(x) の符号は反転する）．以下では，目的関数を最小化する場合に限定して，問題 (5) に関して，実行可能，大域的最小解，有界等の基本的な定義を与える．

実行可能集合F が空集合でないとき，問題 (5) は\underline{実行可能}， F が空集合であるとき\underline{実行不能} と言う．条件 x ∈ F を満たす x を\underline{実行可能解}（\underline{許容解}）と呼ぶ．実行可能解 x^{∗} が条件

f(x^{∗}) ≤ f(x) (∀x ∈ F)

を満たすとき，\underline{大域的最小解}，または，単に\underline{最小解}と呼ぶ（対応する目的関数値 f(x^{∗}) を \underline{大域的最小値}，または，\underline{最小値}と呼ぶ）．

実行可能な問題 (5) に対して， inf\{f(x) : x ∈ F \} > −∞ であるとき，問題 (5) は\underline{有界}であると言う．そうでないとき，すなわち， inf{f(x) : x ∈ F } = −∞ であるとき，問題 (5) は\underline{非有界}であると言う．

最大化問題に対しては，不等号を逆転し， “ 小” を “大” に， “−∞” を “+∞” に置き換えることにより，対応する定義（実行可能，大域的最大解，有界等）が得られる． “最小” と “ 最大” をあわせて “最適” ということにする．

数理計画問題 (5) を１つ与えると，以下の４つの場合が起こりうる．

1) 実行不能．

2) 実行可能，かつ，最小解が存在．

3) 実行可能，かつ，非有界．

4) 実行可能，かつ，有界であるが，最小解は存在しない．

数理計画問題 (5) の本来の目的は，この４つを判別し， 2) であれば最小解を計算することである．しかしながら， “最小解の存在” と “最小解の計算” は明確に区別されねばならない．たとえ最小解が存在することが分かっていても，局所的な最小解しか求められない，あるいは，難しい問題の場合には実行可能解さえも計算できないこともある．最小解の計算を困難にしている主な要因は最小解を計算するときに使える資源の有限性にある．通常，最小解の計算はコンピュータによってなされるが，コンピュータのメモリは有限であるし，有限の時間では有限桁の演算を有限回しか行うことができない．このことが障害となって，最小解が存在するような数理計画問題でも正確に最小解を計算することは一般には不可能であるし，すべての問題を処理する万能アルゴリズムも存在しない．それゆえ，実行可能集合 F や目的関数 f に種々の条件を課して限定したさまざまなクラスの問題に対して非常に多くのアルゴリズムが提案されている．

注意 4.1 数理計画問題は\underline{最適化問題}（Optimization Problem）と呼ばれることも多い．特に，実行可能集合 F が有限集合あるいは離散集合である数理計画問題は離散最適化問題（後述）と呼ばれることのほうが多い．より抽象的な応用数学分野や制御分野等では，実行可能集合 F が無限次元空間の集合である（たとえば， F の各要素が時間の関数からなり微分方程式や関数方程式を用いて記述される）最適化問題を扱う場合も多い．通常，そのような最適化問題は数理計画問題とは呼ばない．

注意 4.2 コンピュータでの最小解の計算可能性，最小解の近似，および，それらにかかる計算量の見積もりを厳密に議論しようとすると，計算の複雑度 [7] 等に関する知識が必要である．少なくともビットレベルの議論を必要とする．多くの数理計画法や内点法の文献ではそこまで踏み込んだ議論はせず，暗黙に無限桁の正確な実数値演算（加減乗除）が可能と仮定して，加減乗除の回数で測った計算量の見積もりや，実行可能解の数列の大域的最小解への収束速度等を議論している．文献 [8, 29] 等では，より緻密なビットレベルの計算量の見積もりがされているので，興味ある読者は参照されたい．

5 連続最適化と離散最適化

実数の集合を R, \underline{n 次元 Euclid 空間}を R^{n} で表す．各 x ∈ R^{n} は縦ベクトルとする．すなわち，

R^{n} = {x = ( x_{1} ; x_{2} ; ⋮ ; x_{n} ) : x_{j} ∈ R (1 ≤ ∀j ≤ n)}

上付の T でベクトル，または，行列の転置を表す．ただし，紙面を節約するために x = (x_{1}, x_{2}, …, x_{n}) ∈ R^{n} とも書く．各 x = (x_{1}, x_{2}, …, x_{n}) ∈ R^{n} に対して，不等号 ≥， > を

x ≥ 0 ⟺ x_{j} ≥ 0 (1 ≤ ∀j ≤ n),
x > 0 ⟺ x_{j} > 0 (1 ≤ ∀j ≤ n)

の意味で使う．

数理計画問題 (5) の実行可能集合 F ⊂ S を不等式条件

g(x) ≤ 0  (6)

を用いて，

F = {x ∈ S : g(x) ≤ 0}  (7)

と表現しよう．ただし， g : S → R^{ℓ}．不等式条件で表すことが困難な条件（主として，後述する整数条件や離散的な条件）はすべて x ∈ S に含まれていると仮定すればこのような表現はいつでも可能である．

基礎となる空間 S, 実行可能集合 F を表現するのに使われる関数 g : S → R^{ℓ}，および，目的関数 f に種々の条件を課した多くのクラスの数理計画問題が研究されている．数理計画問題は大きく\underline{連続最適化問題}と\underline{離散最適化問題}に分けることができる．

連続最適化問題では，

• S = R^{n} （より一般的には， S は R^{n} の開集合）

• 関数 g : S → R^{ℓ} は連続（多くの場合，微分可能）図 10: 連続最適化に属する代表的な数理計画問題図 11: 離散最適化に属する代表的な数理計画問題

14 が仮定される．連続最適化に属する代表的な数理計画問題のクラスとそれらの関係を示すと図 10 のようになる．

離散最適化問題では，

• S は有限集合，または，離散的な集合．たとえば， S = {x ∈ R^{n} : x_{j} = 0 または1} （有限集合）， S = あるグラフの部分グラフの集まり（有限集合）， S = {x ∈ R^{n} : x_{j} = 自然数} （離散無限集合）．

離散最適化問題でも多くの場合，基礎となる空間 S を n-次元 Euclid 空間 R^{n} に埋め込み（あるいは，表現を工夫して S を n-次元 Euclid 空間 R^{n} の部分集合にとり），かつ，関数 f, g が R^{n} 全体で定義されるように問題を再構築することができる．関数 f, g に連続性（あるいは，微分可能性）のみを仮定する非線形離散最適化問題のクラスも考えることができるが，そのような問題は非常に難しく，関数 f, g が線形（あるいは，高々２次）関数である場合に限定することが多い．このように限定したとしても，離散最適化問題には広範な応用がある．離散最適化に属する代表的な数理計画問題のクラスとそれらの関係を示すと図 11 のようになる．

個々の数理計画問題は，それが定式化された元の（現実）問題を結びつけた名前で呼ばれることも多い．例えば，最小費用流問題，最大流問題，行商人問題，グラフ分割問題等である．そのような問題の多くは図 10，図 11 にあげたいずれかの問題に分類される．ただし，上記の数理計画問題に関する分類は厳密ではなく，連続最適化と離散最適化の両方の特徴を共有する問題（たとえば，施設配置問題，線形混合整数計画問題）や，それらからはみ出た数理計画問題も存在する．

注意 5.1 基礎となる空間 S および実行可能集合 F の表現を含めて，現実の問題をどのように数理計画問題にモデル化するかは非常に重要である．現実の問題の本質をよりよく抽出し，かつ，定式化された数理計画問題が効率よく解けることが望ましい．また，現実の問題に対して，同じ最適解が期待されるいくつかの異なった定式化があり，そのうちの一部のみが（市販の，あるいは，公開されているソフトウエアで）効率的に解くことができることもしばしば起こる．現実の問題を数理計画問題にモデル化する前に，数理計画問題がどのように分類され，そのなかでどのような数理計画問題がどのようなアルゴリズムで効率よく解けることを知っておくことは大切であろう．

実際には，問題 (5) の実行可能集合 F の表現に等式条件

h(x) = 0  (8)

を加える場合も多い．ただし， h : S → R^{m}．これらの等式条件は，不等式条件

h(x) ≤ 0, かつ, − h(x) ≤ 0  (9)

に置き換えることができるから， F の表現には等式条件を使わなくてもすむ．しかしながら，その後の理論展開および計算上の取り扱いに大きく影響する．特に， “内点” の取り扱いに差を生じる．すなわち， F が不等式条件 (6) で表現されている場合には，

g(x̂) < 0

なる x̂ ∈ S （内点）の存在がしばしば仮定されるが，等式条件 (8) を不等式条件 (9) に置き換えて F の表現に加えた場合には，

h(x̂) < 0, かつ, − h(x̂) < 0

なる x̂ ∈ S は存在し得ない．内点法では，不等式条件 (6) と等式条件 (8) を区別して扱い，必要に応じて，

g(x̂) < 0, かつ, h(x̂) = 0

なる x̂ ∈ S （“内点”）の存在が仮定される．

一般に，実行可能集合 F の代数的な表現は一意的ではなく，幾通りもある．等式条件 (8) は不等式条件 (9) と等価であることは上述した．さらに，通常は基礎となる空間 S に課せられるような条件も，等式または不等式条件として表したほうが好都合な場合もある．たとえば，離散的な条件「x_{j} = 0 または 1」は２次等式条件「x_{j}(x_{j} − 1) = 0」と等価である．このようなことまでを考慮に入れると，連続最適化と離散最適化の区別もぼやけてくる．実際，第７節で述べる非凸２次計画問題は両者の架け橋の役割を果たしている．

図 10 および図 11 に示した問題のクラスの中で，内点法のアルゴリズムおよび理論が直接に適用できる領域は凸計画問題である．凸計画問題とその特徴に関しては第７節で解説する．数理計画法で最も重要な地位を占めているのは第２節で紹介した線形計画問題である．特に，

• 理論，および，アルゴリズムの両面で数理計画法の基礎になっている

• 幅広い分野への応用がある

• 整数計画問題等の他の数理計画問題を解く際に頻繁に使われる基本的な道具である

をあげることができる．内点法も線形計画の分野で最も発展している．

6 局所最適化と大域的最適化

第２節，第３節で紹介した単体法，内点法を始めとして，数理計画法の多くのアルゴリズムは局所的な改善（目的関数値が減少する，実行可能に近づく，あるいは，その両方）を繰り返す反復法である．

図 12: 極小解と大域的最小解

S = R^{n} あるいは S = R^{n} の開集合にとる連続最適化の分野では，現在の点 x^{k} ∈ S の近傍で局所的な改善が見込まれる探索方向を計算し，その方向に次ぎの反復点 x^{k+1} を定める．目的関数 f や不等式条件に現れる関数 g が微分可能であるときには， f と g の微分を用いてそのよう探索方向に関する局所的な情報を得る場合が多い．この分野では，通常， x ∈ S の近傍は x を含む開集合を意味し，局所的な最小解も明快に定義される．すなわち， x^{∗} ∈ F に対して， x^{∗} を含むある開集合 U(x^{∗}) ⊂ R^{n} （近傍）が存在して，条件

f(x^{∗}) ≤ f(x) (∀x ∈ F ∩ U(x^{∗}))

を満たすとき， x^{∗} を (5) の\underline{極小解}（または，\underline{局所的最小解}）と呼ぶ．図 12 参照．

離散最適化の多くのアルゴリズムでは現在の点 x^{k} ∈ S の近傍 U(x^{k}) でよりよい点を探索する．ここでの近傍 U(x^{k}) は問題の構造から自然に導出されるか，あるいは，適用するアルゴリズムで人工的に定義される有限集合である．連続最適化の場合と同様に極小解（局所的最小解）が定義できるが，連続最適化の場合ほど大域的最小解と局所的な最小解の区別は明確ではない．

連続最適化，離散最適化のいずれの場合にも大域的最小解は極小解でもあるが，一般にその逆は成立しない．図 12 参照．上述のような局所的なアルゴリズム（局所的な改善を繰り返す反復法）では極小解を求めるのが精一杯であるが，極小解が常に大域的最小解であることがあらかじめ保証されている問題（たとえば，線形計画問題）では局所的なアルゴリズムで大域的最小解まで到達できる．そのような問題は比較的易しい数理計画問題といってよい．この “極小解 ⟹ 大域的最小解” という性質は実行可能領域および目的関数の “凸性” と強く結びついている．凸性は連続最適化の分野で使われてきたが，近年， “離散凸” なる概念が導入され，離散最適化問題の解き易さと結びつけて研究されている． [25] 等参照．これまでに発展した内点法が直接適用できるのは凸性を満たす連続最適化問題である凸計画問題の範囲までである．凸計画問題に関しては次節で述べる．

図 13: 緩和問題

凸性を持たない数理計画問題（たとえば， 0-1 整数計画問題，非凸２次計画問題等）での内点法の役割についてふれておこう．そのような問題を対象とするアルゴリズムでは，反復の途中でそれまでに得られている最良の（近似）実行可能解での目的関数値と真の大域的最小値との差が十分小さければ，その解を近似大域的最小解として安心して使える．そのためには，未知な大域的最小値を見積もる仕組みをアルゴリズムに組み込む必要がある．この目的のために\underline{緩和}がしばしば使われる．数理計画問題 (5) の目的関数 f : S → R と実行可能領域 F に対して，集合 Ŝ，集合 F̂，および，関数 f̂: Ŝ → R が，条件

f̂(x) ≤ f(x) (∀x ∈ F), F ⊂ F̂, S ⊂ Ŝ

満たすと仮定し，新たな数理計画問題

目的：f̂(x) → 最小化；条件：x ∈ F̂  (10)

を導入する．元の問題 (5) と比較すると，問題 (10) の実行可能領域 F̂ は広く， (5) の目的関数 f は実行可能領域 F 内で (10) の目的関数 f̂で下から支えられている．したがって， (5) の未知の大域的最小値を f^{∗}， (10) の大域的最小値を f̂^{∗} とすると， f^{∗} ≥ f̂^{∗} であることが分かる．図 13 参照．問題 (10) を\underline{緩和問題}と呼ぶ．反復の途中で求まった問題 (5) の最良解を x̂ とすると， f(x̂) ≥ f^{∗} ≥ f̂^{∗} が成り立つ．したがって， f(x̂) − f̂^{∗} が十分小さいか，許容範囲にあれば， x̂ を近似大域的最小解として安心して使える．緩和問題は

• その大域的最小値 f̂^{∗} が元の問題の大域的最小値 f^{∗} に近いこと，

• 簡単に解けること

が望ましいが，この２つは矛盾する場合が多い．緩和問題は離散最適化問題に対する汎用的な手法である分枝限定法と組み合わされてよく使われている．

図 14: 凸集合と凸でない集合

従来は，離散最適化問題を線形計画問題で緩和し，緩和された問題に単体法を適用するのがよく行われていた．近年，離散最適化問題および非凸２次計画問題を半正定値計画問題で緩和する研究 [6, 18, 11] 等が盛んに行われている．一方では半正定値計画問題を解く内点法のソフトウエアも整いつつある． [5, 32] 等参照．今後，内点法がこのような形で凸性を持たない数理計画問題にますます強く関わっていくものと予想される．

7 凸計画問題と内点法

集合 A ⊂ R^{n} は条件

x^{1}, x^{2} ∈ A ⟹ (1 − λ)x^{1} + λx^{2} ∈ A (0 ≤ ∀λ ≤ 1)

を満たすとき，凸集合であるという．この条件は，「A 上の任意の２点 x^{1}, x^{2} を結んだ線分全体は A に含まれる」と言い換えることができる．図 14 参照．

凸集合 A 上で定義された実数値関数 f は，条件

x^{1}, x^{2} ∈ A ⟹
f((1 − λ)x^{1} + λx^{2}) ≤ (1 − λ)f(x^{1}) + λf(x^{2}) (0 ≤ ∀λ ≤ 1)

を満たすとき，凸関数と呼ぶ．この条件は「グラフ

{(x, y) ∈ R^{n+1} : y = f(x), x ∈ A}

上の任意の２点 (x^{1}, f(x^{1})), (x^{2}, f(x^{2})) を結んだ線分全体がグラフより上に位置する」とも言い換えることができる．図 15 参照．

図 15: 凸関数と凸でない関数

\underline{凸計画問題}（Convex Program）は， (5) において「実行可能集合 F ⊂ R^{n} が凸集合で， f が F を含む凸集合上で凸関数」を仮定した数理計画問題である．凸計画問題では極小解が大域的な最小解に一致することが知られている．線形計画問題の他，以下で説明する凸２次計画問題，一般凸２次計画問題，および，半正定値計画問題は凸計画問題の特殊例である．

２次関数

f(x) = c^{T} x + \frac{1}{2}x^{T} Qx (∀x ∈ R^{n})

を線形不等式条件 (1) を満たす点 x からなる多面体 P （有界であるとは限らない）上で最小化する問題を\underline{２次計画問題}（Quadratic Program）と呼ぶ．ここで， c ∈ R^{n}, Q : n × n 実対称行列である．２次関数 f は n × n 実対称行列 Q が半正定値であるとき（すなわち， ∀x に対して， x^{T} Qx ≥ 0 であるとき），かつ，そのときに限って，凸関数となる．実行可能集合をなす多面体 P は常に凸集合であるから， n × n 実対称行列 Q が半正定値であるときに，２次計画問題は凸計画問題になる．そのような２次凸計画問題に対しては，第２節で紹介した線形計画問題に対する主双対内点法が，ほぼそのままの形で拡張されている． [13, 24] 等参照．

以下のような２次関数を不等式条件にも含む\underline{一般２次計画問題}（General Quadratic Program）も研究されている．

\begin{matrix}目的： & c_{0}^{T} + x^{T} Q_{0}x → 最小化 \\ 条件： & γ_{i}c_{i}^{T} + x^{T} Q_{i}x ≤ 0 (1 ≤ ∀i ≤ m) \end{matrix} \}  (11)

ここで， γ_{i} ∈ R, c_{i} ∈ R^{n}, Q_{i} : n × n 実対称行列である．第５節で述べたように，「x_{j} = 0 または 1」は２次等式条件「x_{j}(x_{j} − 1) = 0」と等価である．したがって，線形 0-1 整数計画問題は，一般化された２次計画問題の特殊な場合として記述できる．このように，一般２次計画問題は連続最適化と離散最適化の架け橋の役割を果たしており，分枝限定法，切除平面法等，一般２次計画問題と離散最適化問題で共通に使える手法も多い．近年注目を集めている半正定値計画緩和手法もその１つである．一般２次計画問題 (11) において，すべての Q_{i} が半正定値であるときに， (11) は凸計画問題になる．このような一般凸２次計画問題に対しても，第 3.4 節で紹介した主双対内点法が拡張されている． [34] 等参照．

\underline{半正定値計画問題}（Semidefinite Program）の記述では，特殊な不等式 “⪰” が使われる．まず， n × n 対称行列の空間を S^{n}， n × n 半正定値対称行列からなる凸錐を S_{+}^{n} ⊂ S で表す．次に， n × n 対称行列の空間 S^{n} 内の不等号 “⪰” を

A ⪰ B ⟺ A − B ∈ S_{+}^{n}

で定義する．特に， A ⪰ O は A ∈ S^{n} が半正定値であることを意味している．半正定値計画問題は線形計画問題の対称行列の空間への拡張として捉えることができる．すなわち，実数変数と対称行列変数に関する不等号 “≥” と “⪰” を含んだ線形不等式の下で，それらの線形関数を最小または最大化する数理計画問題である．例えば，

\begin{matrix}目的： & A_{0} • X → 最小化 \\ 条件： & A_{i} • X = b_{i} (1 ≤ ∀i ≤ m), X ⪰ O \end{matrix} \}

は等式標準形の半正定値計画問題である．ただし， U •V はU, V ∈ S^{n} の内積 ∑_{i}^{n} ∑_{j=1}^{n} U_{ij}V_{ij} を表す．半正定値計画問題はシステムと制御，最適構造設計等に重要な応用を持っている．また，線形 0-1 整数計画問題を含む一般２次計画問題に対する緩和問題として研究されている．半正定値計画問題へも主双対内点法が拡張されている． [16, 27] 等参照．

内点法の凸計画問題への拡張には，大きく２つの流れがある．１つは Nesterov-Nemirovskii

[26] による\underline{Self-Concordance 理論}を源流としている．この理論は一般の凸計画問題に対する内点法の基礎を与えている．上述した一般凸２次計画問題および半正定値計画問題に対する主双対内点法はこの理論が生み出したものである．もう１つの流れは，第２節でもふれた１９６０年代後半に一世を風靡した古典的な内点法， SUMT [4] の復活である．これは線形計画問題に対する主双対内点法の中で対数障壁関数が主要な役割を果たしたことに起因している．

8 おわりに

この原稿は，日本オペレーションズ・リサーチ学会４０周年記念で企画している「経営科学のニューフロンティア」シリーズの第１巻「内点法」の第１章に当てるために書いたものである．ここで紹介した内容は第２章以降でより詳しく述べて行く予定である．第２章以降の内容との調整で第１章に相当するこの原稿も改訂されるであろうことをおことわりしておく．出版は速くても２年ほど先であるので，とりあえず，内点法関連の教科書，参考書，解説文献を以下にあげておく．

英文の参考書，教科書： [A] D. Bertsimas and J. Tsitsiklis, Introduction to Linear Optimization, Athena Scientific,

1997.

[B] R. Saigal, Linear Programming: A Modern Integrated Analysis, Kluwer, 1995.

[C] T. Terlaky, Interior Point Methods in Mathematical Programming, Kluwer, 1996.

[D] R. J. Vanderbei, Linear Programming: Foundations and Extensions, Kluwer, 1996.

[E] S. Wright, Primal-Dual Interior-Point Methods, SIAM, Philadelphia, 1997.

[F] Y. Ye, Interior Point Algorithms: Theory and Analysis, John Wiley, 1997. 単体法も含む線形計画法の入門書としては [D]，主双対内点法の総合的に扱った入門書としては [E]，代表的な内点法を詳しく知るには [C] を推薦する．内点法関連の和文の解説文献： [イ] 小島政和， “半正定値計画問題と内点法”，応用数理 6 (1996), pp.270-279. [ロ] 小島政和， “半正定値計画の組み合わせ最適化への応用に向けて”，オペレーションズ・

リサーチ 40 (1997), pp.216-221. [ハ] 小島政和， “半正定値計画とその組合せ最適化への応用”，離散構造とアルゴリズム

５，近代科学社 (1998), pp.203-249． [ニ] 水野真治， “線形相補性問題に対する内点法”，離散構造とアルゴリズム４，近代科

学社 (1995), pp.61-97． [ホ] 水野真治， “線形計画問題の主双対内点法”，統計数理 (1992), pp.27-44. [ヘ] 水野真治， “内点法（１）〜（４）（連載） ”，オペレーションズ・リサーチ 35 (1995)，

pp.321-326, pp.376-381, pp.437-442, pp.508-512. [ト] 土谷隆， “最適化アルゴリズムの新展開 – 内点法とその周辺 – I 〜 VII （連載） ”，

システム／制御／情報 42 (1998), pp.218-226, pp.334-343, pp.460-469, pp.550-559, pp.677-686, 43 (1999), pp.101-108, pp.???-???.

[チ] 土谷隆， “凸最適化問題に対する内点法の発展”，数理科学， 405 (1997), pp.40-47. Internet を通しても，数理計画法，内点法に関する最新の様々な情報が得られる．内点法

に関しては， S. Wright が管理・運営する以下のホームページにアクセスし，そこから内点法の研究者のホームページをたどるとよい．

http://www.mcs.anl.gov/home/otc/InteriorPoint/ また，数理計画法全般に関しては，東京大学の松井助教授の管理・運営するホームページ

http://misojiro.misojiro.t.u-tokyo.ac.jp/ tomomi/opt-codeE.html

を覗くとよい．

参考文献

[1] I. Adler, N. Karmarkar, M. Resende and G. Veiga, “Date structures and Programming techniques for the implementation of Karmarkar’s algorithm,” ORSA Journal on Computing 1 (1989) 84–106.

[2] E. R. Barnes, “A variation of Karmarkar’s algorithm for solving linear programming problems,” Mathematical Programming 36 (1986) 174–182.

[3] I. I. Dikin, “Iterative solution of problems of linear and quadratic programming,” Soviet Mathematics Doklady 8 (1967) 674–675.

[4] A. V. Fiacco and G. P. McCormick, Nonlinear Programming: Sequential Unconstrained Minimization Techniques, (wiley New York, 1968), Reprinted in 1990 in the SIAM Classics in Applied Mathematics Series.

[5] K. Fujisawa, M. Kojima and K.Nakata, “SDPA (Semidefinite Programming Algorithm) – User’s Manual –,” Research Report B-308, Dept. of Mathematical and Computing Sciences, Tokyo Institute of Technology, Meguro, Tokyo 152, 1985.

[6] M. X. Goemans and D. P. Williamson, “Improved approximation algorithms for maximum cut and satisfiability problems using semidefinite programming,” Journal of Assoc. Comput. Mach. 42 (1995) 1115–1145.

[7] M. Grötschel, L. Lovász and A. Schrijver, Geometric Algorithm and Combinatorial Optimization, Springer, New York (1988).

[8] 伊理正夫，線形計画法，共立出版（１９８６）．

[9] N. Karmarkar, “A new polynomial-time algorithm for linear programming,” Combinatorica 4 (1984) 373–395.

[10] L. G. Khaciyan, “A polynomial algorithm in linear programming,” Soviet Mathematics Doclady 20 (1979) 191–194.

[11] M. Kojima and L. Tunccel, “Cones of matrices and successive convex relaxations of nonconvex sets,” Research Report B-338, Dept. of Mathematical and Computing Sciences, Tokyo Institute of Technology, Meguro, Tokyo, Japan, March 1998.

[12] 小島政和，水野真治，吉瀬章子， “多項式オーダの主双対内点法”，線形計画問題の新解法，統計数理研究所共同研究レポート５ (1987) 13–24.

[13] M. Kojima, S, Mizuno and A. Yoshise, “A primal-dual interior-point algorithm for linear programming,” Progress in Mathematical Programming, Interior-Point and Related Mthods, pp.29–47, Springer-Verlag, New York, 1989.

[14] M. Kojima, S, Mizuno and A. Yoshise, “A polynomial-time algorithm for a class of linear complementarity problem,” Matheamtical Programming, 44 (1989) 1–26.

[15] M. Kojima, S, Mizuno and A. Yoshise, “An O(\sqrt{n}) iteration potential reduction algorithm for linear complementarity problems,” Matheamtical Programming, 50 (1991) 331–342.

[16] M. Kojima, S. Shindoh and S. Hara, “Interior-point methods for the monotone linear complementarity problem in symmetric matrices,” SIAM Journal Optimization, 7 (1997) 86-125.

[17] 今野浩，カーマーカー特許とソフトウェア，中公新書，中央公論社， 1995 年．

[18] L. Lovász and A. Schrijver, “Cones of matrices and set functions and 0-1 optimization,” SIAM J. on Optimization 1 (1991) 166–190.

[19] I. J. Lustig, “Feasibility issues in a primal-dual interior-point method for linear programming,” Matheamtical Programming, 6 (1994) 1–14.

[20] I. J. Lustig, R. E. Marsten and D. F. Shanno, “Interior-point methods for linear programming: Computational state of the art,” ORSA Journal on Computing, 49 (1990/1991) 145–162.

[21] N. Megiddo, “Pathways to the optimal set in linear programming,” Progress in Mathematical Programming, Interior-Point and Related Mthods, pp.131–158, Springer-Verlag, New York, 1989.

[22] S. Mehrotra, “On the implementation of a primal-dual interior point method,” SIAM Journal on Optimization, 2 (1992) 575–601.

[23] S. Mizuno, M. J. Todd and Y. Ye, “On adaptive-step primal-dual interior-point algorithms for linear programming,” Matheamtics of Operations Research, 18 (1993) 964–981.

[24] R. D. C. Monteiro and I. Adler, “Interior path following primal-dual algorithms. Part II: convex quadratic programming,” Matheamtical Programming, 44 (1989) 43–66.

[25] 室田一雄， “離散凸解析”，離散構造とアルゴリズム５, 近代科学社 (1998) 51–100． [26] Y. Nesterov and A. Nemirovskii, Interior Point Polynomial Methods for Convex Pro-

gramming: Theory and Applications, SIAM, Philadelphia, 1994.

[27] Y. Nesterov and M. J. Todd,

[28] ‘Primal-dual interior-point methods for self-scaled cones,” Technical Report 1125, School of OR and IE. Cornell University, New York, 1995. To appear in SIAM Journal on Optimization.

[29] J. Renegar, “A polynomial-time algorithm, based on Newton’s method, for linear programming,” Mathematical Programming 40 (1988) 59–93.

[30] G. Sonnevend, “An ‘analytic center’ for polyhedrons and new classes of global algorithms for linear (smooth convex) programming,” Proceedings of 12th IFIP Conference on System Modeling and Optimization, Budapest, 1986.

[31] K. Tanabe, “Complementarity-enforcing centered Newton method for mathematical programming,” 線形計画問題の新解法，統計数理研究所共同研究レポート５ (1987) 118–143.

[32] K. C. Toh, M. J. Todd and R. H. Tütüncü, “SDPT3 — a MATLAB software package for semidefinite programming,” Department of Mathematics, National University of Singapore, Singapore, August 1998.

[33] T. Tsuchiya and M. Muramatsu, “Global convergence of a long-step affine scaling algorithm for degenerate linear programming problems,” SIAM Journal on Optimization 5 (1995) 525–551.

[34] T. Tshuchiya, “A polynomial primal-dual path-following algorithm for second-order cone programming,” Research Memorandum No. 649, The Institute of Statistical Mathematics, Tokyo Japan, October, 1997 (Revised: December 1997).

[35] R. J. Vanderbei, M. S. Meketon and B. A. Freedman, “A modification of Karmarkar’s linear programming algorithm,” Algorithmica 1 (1986) 395–407.

[36] Y. Ye and K. Anstreicher, “On quadraric and O(\sqrt{n}L) convergence of a predictorcorrector algorithm for LCP,” Matheamtical Programming, 59 (1993) 151–162.