2次計画法におけるウオルフ法とビール法
2次計画法における
ウォルフ法とビール法
田中謙一郎
1
目 次 はじめに
序 論 2次計画法問題の定式化とその実例 第1節 ウオルフの方法
1.1. 手 順
1.2. アルゴリズムの収束 1.3. 数値例
第2節 ビールの方法
2..1.手順とアルゴリズムの収束 2.2. 数値例
補 論 ビールの方法のプログラムによる出力結果 むすび
は じ め に
2次計画法(quadraticprogramming;QPと略記する)は,数理計画法 の一分野として,非線形計画法(nonlinear programming;NPと略記す る)の1つに分類される。2次計画法は,1次制約式のもとで,2次の目的 関数を最適化する問題を扱うので,NPの一領域である。
ところで,QPが,NPの中にあって,なぜとくに2次計画法と別記さ れるか,といえば,それには2つの理由が,考えられる。
第1に,NPでは,線形計画法(1inearprogramming;LP と略記す る)に比べて,一般的解法が未発達で,特殊形式問題の研究が先行してい る,という点が指摘される。確かに,一般的非線形解法アルゴリズムとして
の傾斜法その他が,有効な局面もあるであろうo しかし,それらが, L Pの シンプレックス法と比較した際,いかに貧弱な道具であるかは,余人の言を 待たない。乙れに比して, Q Pとか,線形分数計画法といった特殊計画法 は,演算処理がLPI乙近く,多数の実用的アルゴリズムが生み出されてき た。とくに, ウォノレフの方法やビールの方、法は, コンビュータ言語へのコー ド化も容易であるD ともかく Q Pは,操作性の点で,他の N Pよりも格段に すぐれているo
第2I乙Q Pは,他の N P問題と異なり,確立された固有の応用例を有して いるD 投資決定論のー領域である資産選択問題は,その一例である。すなわ ち,所与の期待収益のもとで,危険を最小化する有価証券の組を見出す乙と が, Q P問題を形成するのであるO この議論を最初に体系づけたマーコビッ ツは,その解法アノレゴリズムとして, rクリテイカノレ・ライン法」を開発し た1)。乙のシンプレックス法の改訂版は,資産選択問題では,なじみ深いも のである。しかし,一般的なQ P問題に対するアルゴリズムはないため,本 稿の議論からは,除外されるD
本稿の議論の対象となるのは,一般的Q Pアルゴリズムのうち,最も代表 的なウオノレフの方法とビーノレの方法である。乙れらは, ウオノレフ (8),
ビーノレ (1)によって,それぞれ展開された口乙のうち, ウオjレフ (8) は,パラメトリック 2次計画法という分野を開発した点でも評価されるo し かし,その詳細な議論は,別の機会lζ 譲りたい。
本稿の議論の展開は,以下の順序で行なわれるD まず,序論において,一 般的Q P問題の定式化が,試みられるD また,その実例として,資源配分問 題が,例解されるO 次に,第l節「ウォノレフの方法」および第2節「ビーノレ の方法Jで,アルゴリズムの子順,収束,数値例が詳説される。ウォノレフの 方法とビールの方法によれば,すべての演算が, LPのシンプレックス法に より遂行される。われわれは,第l節で改訂シンプレックス法を,第2節で タブロー形式のシンプレックス法を用いる乙ととするo これは,同規枝の (たとえば n変数m詰Ij約式の)Q P問題に対し,ウォJレフの方法が, ビー ノレの方法の約2倍の行と列を必要とするためである。また,数値例における
2次計画法におけるウォJレフ法とビール法 3
イタレーションの説明では,最初の手続きは入念に記したが,先l乙進むにし ウォルフの方法と ビーノレの方法の諸特徴を比較検討する。その際,本稿で扱わなかった,他の
「むすび」で,
たがって簡便な表記法をとった。最後に,
QPアノレゴリズムについても言及する乙ととするD
(注)
Markowitz, H., The Optimization of a Quadratic Function Subject to Linear Constraints," Naval Research Logistics Quarter1y, Vo1. 3, 1956を参照せよ。
2次計画法問題の定式化とその実例
序論
以下の一般形で表示される。
n n
:E :Eω j Xk
j = 1 K = 1
QP問題は,
n
Max z = 2: CjXj+
( i = 1 ,…,rn) n
sub. to. 2: aljxj=b1
(1)
cl・1) cl・2)
︑ ︑ ︐ ノ
n ( j = 1 ,…,
Xj~三 O and
あらゆる形 乙乙で, a1h bh C ,j CJkは,任意の実数とするo 定式化(1)が,
制約方程式系
. ︐
しだた
明らかであるD
式のQP問題を含んでいることは,
もしくは不定である可能性は,排除されてい 式が不鵠,
cl・1)において,
る乙ととするo
より簡潔に表わされる。すなわち,
QP問題(1)は,行列表示を用いると,
Max z = CTX+XTOX Ax=b sub. to.
(2)
x~三O.
and
AはrnXn ともに列ベクト }¥.I,
ここで, xとcはn次元, bはm次元の,
ベクトル(行列)の右肩についた 以下のように定義されている。
Dはn'xn対称行列とする。また,
Tは,転直記号である。 Dの成分は,
行列,
( j = i,…, n)
(djj=CJJ
dJ匙= dkJ = cJk/2 (j+k; j, k=l,…, n) .
QP問題の代表的な実例として,資源配分問題,資産選択問題,混合物 の平衡配列決定問題(化学平衡) ,回帰分析, トラスの弾性・塑性分析 (elastic‑plastic analysis of trusses;構造力学)等が,あげられる。本稿 では,このうち最初の問題について,単純な実例をあげる乙ととするo
まず,以下のような数値例によって,考えを進めてみようo
Maxz=8x1 +6x2+4xa ‑2X12̲X32̲2xIX2‑2xIXa sub. to. Xl+ぉ+2xa三三3
and Xl,X2,Xa '"三o.
目的関数は,以下のように書き直される。
z =x1(8‑2x1‑ X2‑ X3) + x2(6‑2x2 ‑X1) +Xa( 4‑xa ‑X1).
乙乙で,ぬ (i=1,2,3)は,独占者によって生産された3つの商品の数量,
括弧の中の式は,独占者が各商品に課する乙とのできる価格と考えられるo
括弧の中の式を,各々 PI ( i = 1, 2, 3 )で表わすと,以下のように表記さ れる。
(P=8一 2x,‑ x. ‑ x P2 = 6 ‑ x1 ‑ 2x3 P3 = 4 ‑ x1 ‑ .ra・
これらの式は,価格P1を数量二日の関数として表わす,線形の需要関数とな っているoz=ex+ピDxとすれば,価格ベクトノレPは, p = c + Dx, z = pT X
と表わされる。また,制約式は,稀少資源が産出高を制限している, こと を意味しているo すなわち,商品xh X2 • x3の各1単 位 は , そ れ ぞ れ 稀 少資源をし し 2単位要求するが,稀少資源の全供給は 3単位である,
という状況を記述しているD さらに,各Xlの非負性は,独占者が売り手で あって,買い手とはみなされない,ことを志味している。すなわち,上の数 値例は,独占者が,線形需要関数と,稀少資源によって制限された産出高,
に直面した際,彼の総収入を最大化しようとしている状況を記述している,
2次計画法におけるウォルフ法とビール法 5 と解されるロもちろん,Xlを個々の商品ではなくて,いくつかの商品を合 む工程 (process)もしくは活動 (activity)と考える乙とは,何らさしっか えない。
第l節 ウォルフの方法 1. 1 . 手 順
ウオノレフの方法は,以下の形式のQ P問題に直接,適用されうるD
Max z = CTX + xTDx (2) ( sub. to. Ax=b
and x逗o.
(2・1) (2・2) ここで, xおよび、cはn成分, b はm成分の, ともに列ベクトノレ, AはmXn 行列, Dはnxn対称行列とする。ウォJレフのアJレゴリズムを導く基本原理 は,修正シンプレックス軸変換手続きを用いて,実行可能点の点列が,キュ ーン=タッカ一条件(以下K ‑ T条 件 と 略 記 す る ) を 満 足 す る 解 の 点 げ で 終了するように導く,ことである。 (2)の実行可能領域は,超平面によって,
有界であるので,凸集合であるo よって,目的関数が凹ならば,点げは,
必然的に最適解となる。乙れは,凸計画法問題に対する, K‑T条件から導 くことができる。
Dが負値のときは,ウォJレフの方法によれば,有限回の反復手続きによっ て,最適解へ収束するか,または,当該Q P問題が,実行可能でない,こと を証明することが,できる。ただし退化による無限循環の可能性は,排除さ れているものとするoDが半負値のときは,負値になるように摂動する1)と とによって,最適解への有限収束が,保証aされるoDが,不定値もしくは (半)正値のときは,収束はしない。よって,以下の議論においては, D が,負債もしくは半負値であることを前提する,こととする。
これより,ウォノレフの方法の手続きに関する,議論を始めることとする口 まず, Q P問題(2)のK‑T条件を記述する。制約式が 1次であるので,制 約必定は,満足される。よって,日が(2)の最適解であるならば,
(4) c+2Dx*~ATλ
(5)χ*・[c+2Dx*‑ATλ]= 0
を満足する, 一般化されたラグランジュ乗数ベクトノレλ三[入),…,λmJTが, 存在する。
不等式(4)に対して,スラック変数ベクトノレ (6) v三 ATλ ‑c‑2Dx
が,定義されるoそこで, K ‑ T条件(4)および(5)は, (7) 2Dx‑ATλ十v=‑c
(8) v詮O
(9) xTv= 0
となるo 乙こで, (9)を 除 い た K ‑ T条件 (7), (8)お よ び 原 制 約 式 (2・1)• (2・2)は, x, v.λを変数とする 1次 制 約 式 の み か ら 成 り 立 っ て い るo
まさに,乙の乙とが. Q Pのアルゴリズムであるウォノレフの方法に, L Pの シンプレックス法が導入される,根拠である。 (9)は,非線形の制約式である けれども,これをそのつど別個に吟味していくことは,困難ではない。
改訂シンプレックス法をQ P問題(2)に 適 用 す る 前 に , 制 約 式(7),(8), (2・1),(2・2)を標準形2)に変形せねばならない。乙れは, λを符号条件の1 つかない変数から非負変数に変換する,乙とを意味する。すなわち,
( I
日 λ=λ'一入Oi;λI,AO;;三o.
乙ζで, iは , 全 成 分 が 1と な るm成分列ベクトノレであるo(10)を (7)に 代 入 し,プライムをとると,以下の方程式系が,えられる口
Aメ=b (11・1)
2Dx‑ATA+ATj入O+v=‑c (11・2)
(11) ¥
x,λ,λO,v三三O (11・3)
xTv= 0 . (11・4)
最終的には, (11)の実行可能解が,えられるか, もしくは実行可能解が,存在 しないか,のいずれかに到達するo ところが. (11)の実行可能解が,存在する ならば,
2次計画法におけるウォJレフ法とビーJレ法 Ax=b (
12) ( 2Dx‑Aλ +ATjλo+v= ‑c T x,λ^,,o,v;三O
の基底可能解も存在するD
7
/ ¥ / ¥ / ¥ / ¥
その理由は,以下のとおりである。まず, [x,λ, ^'o, VJが, (11)を満足 していると仮定する。そのとき,
ー
ー /¥ /¥ /¥ 入=min{入。,入。,…,入m}
とおくと,以下の解も(11)を満足する3)。 ノ
χ │ ヘx
λ λ/ヘーー〉ー i .¥ (
13) I / ¥
入
。 入。一入
/ ¥
) v v
今.7の定義により,変数入。,^'1'…,入mのうち,高々m個のものは,ゼロ /¥ ノヘ
でない値をとるo ところが.(9)により Xとλの成分のうち高々 n個のもの は,ゼロでない値をとる。よって,実行可能解(13)は,高々m+n個の非ゼロ 成分をもっ乙ととなるo(12)は.m + n個 の 制 約 式 を 合 む の で , 基 底 可 能 解 が,存在することとなる心。
これまでの議論により,以下の結論に到達するo (12)の基底可能解の中か ら,条件(9)を満足するものを選び出すことによって.(11)の実行可能解が,え られる。ところが. Q P問題(2)に対しては. Dの(半)負値が,前提されて いた。よって.(11)~乙含まれる K-T 条件の十分性から,この実行可能解が,
Q P問題(2)の最適解となるわけである口以上が,次のステップによって進行 する,ウォlレフの方法の基本方針であるo
i ) 通常のシンプレックス手続きを用いて. (2・1)の基底可能解Xsを 決定するoXsが 存 在 し な い な ら ば,Q P問題(2)は , 実 行 可 能 解 を も た な い。いま Bを.Bxs=bなる.Xsのm X m基底行列とする。そのとき,
Dから BをつくるAの列の番号と同じ番号をもっ列を選び出して nxm
行列DBをつくることとするo
ii) n成分列ベクトノレピ=ー [c+2DBxBJを計算し, .djUj= U /を, (12)の m+j番めの制約式に加えるoただし,
r + 1 (u/ミ0のとき j= 1 ,…,n) (14) Jj = (
l ‑ 1 (u/<Oのとき 1,…,n) . その場合,制約式(12)は,以下のように変形される。
Ax=b (15) / 2Dx‑AT.<+ATj。入+v+.4u=‑c
x,λ,Ao,V,U;;;三o.
ただし, u=[u1,…, UnJTであり,またdは,第j番めの対角宗宗がJjであ る,n Xn対角行列であるo
iii) 変数xは,第i)ステップで計算された値を保ち,残りの変数には,
以下の初期値が,与えられるo
λ=0, Ao= 0, v=O, ujミo(j = 1,…, n).
これらの変数のうち,高々m+n個のもの(すなわち, xBとU)が,正の 値をもつことができるo それらは, m+n個の制約式(15)の実行可能解となっ ているOしかも [XBT,uTrは,それと関連のある基底行列
[2:. ]:
が,逆行列
[B OJ
‑2.4DBB‑l .4 J
をもつので,基底可能解である。
iv) 第 iii)ステップでつくった初期基底可能解から出発し,条件(9)を加 味しながら,シンプレックス法を用いて,制約式(15)のもとで,人為変数 Uj
( j = 1,…, n)の和を最小化するo最後に,負のリデュースト・コスト をもっ,どの変数も,条件(9)を破ることなくしては,基底の軸になれないと
2次計画法におけるウオノレフ法とビーノレ法i 9 き,このイタレーションは,終了する。そして,その時点での,解のχ成 分 が, Q P問題(2)の最適解である,と考えられるD
1. 2. アノレゴリズムの収束
本節では,議論を,実行可能な Q P問題に限定する。証明の目的は, Dが 負値のときはつねに,ウォノレフの方法によって, K‑T条件を満足する実行 可能点に到達できる,乙とを示すことにある。しかし,その前にまず,その ような点が存在することを,証明しなければならない口それには, Dが負値 のときは, Q P問題(2)が,非有界最大値をもたない,乙とを示しさえすれば よい。そのとき,ある有限実行可能点は,全域的最大値(よって,制約下で の局所的最大値)となるので,その点においては, K ‑ T条件が満足され
るからである。
そこで, xの,定点x。から特定方向t;(0でない)への変位が, 目的値Z におよぼす影響について考察する,こととする。その場合, xは,以下のよ うに表わされるO
x =xo+ O t; (0 :非負のスカラー)
ただし,方向ベクトノレsは,端点x。から発している,実行可能領域の端半 白線を表わす,乙ととするo その場合,任意の点xでの目的値は, 。の関数 として表わされるO すなわち,
z( 0) =CTXo+oet;+XoTDxo+20xoTDt;+OZ;tTDt;.
ここで,t;チOであったので 2次形式;tTDt;は,負値である。よって, 。 が増加するにつれて ,OZ;tTDt;の項は, c, D, xO, t;の位に関係なく Z( 0) を減少させるo すなわち Zが無限大に発散することはない, と結論する ことができる口
目下のところ, Dが負位のとき, (11)の実行可能解が,少なくとも 1つ存在 することが,確かめられているO そこで,1.1.節のけから iv)で示され た,ステップにより, (11)の実行可能解が求まる, こ と を 証 明 す る 。 そ れ に は, iv)で求めた最終解において,人為変数 UJ(j = 1 ,…, n)が,すべ てゼロになる,ことを示せばよい。
かくして,ウォノレフの方法により,ステップ iv)で 求 め た 最 終 解 に 到 達
した,と仮定し,その解をWで表わす,乙ととするo そのとき,変数ベクト ルXは,以下のように分割される。
X1 (Xj>O ; Vj= 0 ; Xj,VjEW; j =1,…,n) (
1 6) Xj E ( X? (xj = 0 ; V j> 0 ; Xj, V j E W ; j = 1 ,…,n) Xa (Xj= 0 ; Vj= 0 ; Xj,VjEW; j =1,…,n ). XjExのとき, vは,上と同じ方法で分割されるoすなわち,
v1 (XjEX1) ( j =1,…,n) (
1) 7 VjE ( v2 (XjEX2) (j =1,…,n) va (XjEx3) ( j =1,…,n)
そのとき, X2およびX3,v1お よ びvaの値は,全成分が,ゼロである。ま た,解Wが,以下のLP問 題 の 最 適 解 に な る 乙 と は , 容 易 に 確 か め ら れ
るo
n Maxz'=‑ ~ u
J = 1
sub. to. Ax=b (18・1) (
18) ~
2Dx‑Aλ +ATjT 入。+v+du=‑c (18・2)
X2=V1=O (18・3)
and x,λ,入。,v,u注o. (18・4) 証明の次の段階は, L P問題(18)の双対問題を記述することから始める。し かしながら,その前に,定式化(18)1乙対し,若干の変更を加えるとととする。
まず,変換(10)を逆転するo すなわち,入。を問題から排除し, λを符号条件 の な い 変 数 と し て , 扱 う こ と と す るo 次に, x = [x人 X2T,xaTJTおよび v=[vλvムV3TJとなるように, xとvの 成 分 を 並 べ か え , そ れ に 対 応 し てAとDの列も,順序を入れ換えて,分割するoすなわち,
A = [A1:A2:A3J, D=[D1:D2:D3J.
よって, (18)の制約式は,以下のように変形される。
2次計画法におけるウオルフ法とビーJレ法 A1x1 + AZX2 + A3Xa
2D1x1 +2DzX2+2D3X3‑ATλ+v+du=‑c χ2=V1=Q Xlt XZ' X3, V, u;三Q.
=b
11 (18・1') (18・2') (18・3') (18・4') 次に, (18・1')から(18・4')までの制約式からhとv1を 消 去 し ,Xと
vの分割に一致するように, (18・2')を分割するo最終的に, L P問題(1日 は,以下のように変形される。
n M
陥axzピ 一' 2戸: u
J = 1
sub. to. A1x1+ Aax3 =b (19・1) (
1) ( 9 2D1内 +2DI山 一A1Tλ +du1 = ‑C1 (19・2) 2D21X1 +2Dz3X3 ‑AZTλ十円+duz=‑c2 (19・3) 2D31X1 +2D33X3 ‑A3λ +v3+du3= ‑c3 T (19・4)
XI> X3, Vz, v3, U三三Q. (19・5) ただし, D1, D3, dの行およびc成分の分割は, Xとvの分割に一致してい
るD 最後に, p, ql> qz, q3を,それぞれ制約式(19・1)から 09・4)に対 応した,双対変数ベクトJレとおいて, L P問題(1)9の双対問題を提示する,こ
ととするoすなわち。
Min Z"=bTp‑CITql‑czTq2‑C3Tq3
sub. to. A1Tp +2DIlTql +2D2ITq2+2D3/q3;三O (20・1) A3Tp +2D13Tql +2Dz3Tq2+2D33Tq3ミO (20・2)
‑A1ql ‑A2q2 ‑ A、q3言。 (20・3)
q2 主主O (20・4) q3二三O (20・5) and d1Tql +d2TqZ +d3Tq3;三一I. (20・6) さて, [p*T, ql*T, q2*T, q3*Trを,印)の最適解であるとするo そのとき,
hおよび%が,主最適解W において,正である限りは, (20・1)および
(20・4)は,等式として成立しなければならない。乙れは. L Pの相補スラ ック性の条件より導き出されるo かくして,双対最適解によれば,間)は,以 下の形式で表わされるo
zHopt=bTP*ーC1q1*‑c3q/
q3*三三O
(21・0) (21・1) (21・2) (21・3) (21・4) (21・5)
sub. to. A1TP*+2DuTq1*+2D3ITq3*= 0 A3 TP* +2D13 T q1 * +2D33T q3 *孟O
ω A1ql* + A3q3* 0
d1Tql* +d3Tq3*三三一i.
今. (21・1)にql*Tを, (21・2)にqa*Tを,前からかけて,その積を転 置させると,以下のようになるo
(山1*刊 q1*TDl1q1*叩 TD31q1*=0
P*TA3qa* +2q1*TDI3q3* +2q3 TD33q3*;三o.
乙の2式の和は, (21・3)により,以下のように表わす乙とができるD
ハU2一
1I ll
ノl
*
*
‑ A
句 ︒
円 可 円 可
/ilJIL
‑ ‑ ‑ ノ D D D D
/1lilt‑
ー ︑
﹃sfJ
m A
* q .
T *
門司.﹁
E L n︐h ω
さらに, ωが,以下の式と同等である乙とは,明らかである。
ハU2一
¥Ill11‑‑‑/
*
*
円可
nU
円可
f i l l
‑ ‑ L
D
﹁a
EE
d m E .
* 円
可
nHU
T *
円ME
rl L
内4
ここで. Dが負値であるので, ωは, q1* = q3* = 0のときに限り満足され る。
ql* = q3*= 0を (21・1)に代入すると.A1TP本=0となる白よって,以下 の式が成立するD
ωP*TA〆1=0.
(
16)により,主最適解Wにおいては.X3= 0であったから, (19・1)は. A内
=bとなるD よって,以下の式が成立するo
2次計画法におけるウォJレフ法とビール法 13 P*Tb= bTP* =0.
そのとき,双対目的関数の最適値は. (21・0)によりゼロとなるo よって,
主目的値
n
zHopt = ‑ 2: u/
もまたゼロであるD 計三三Oでであったから.u/= 0 (j = 1 ,…,n)とな る(証了)0
1. 3. 数 値 例
ウォノレフの方法を例解するために,改訂シンプレックス法を用いて,以下 の例題を解くこととする。
(MX=
…
ω‑2xー2x."‑xー2x,x.‑2x,xsub. to. x1+ ゐ +2xa~3 and xl> x2 • xa;三o.
ここで,目的関数の2次形式の部分は,負値である口標準形(2)に変形するた めに,制約式にスラック変数を追加するoすなわち,
(X1+x2+2xa+X4= 3
1 Xl> X2• Xa. X4孟0 1. 1. 節の記号にしたがえば,
,,‑‑2・1・1 0 、
1 ‑1・2 0 0 1 A = [1 1 2 1]. D = I ~.L ~ L. V V I
1 ‑ 1 0 ‑ 1 0 1
¥o 0 0 0 ノ
また,制約方程式系(11)は,以下のように表記されるo
X1+x2+2xa+x4
‑4xl‑2x2‑2xa 一入1+入。+V1
‑2xl‑4x2 一入1+入。 十 円
‑2x1 ‑2xa ‑2入1+2入。 +Va
=3
=‑8
=‑6
=‑4
ー^'1+。入 +V, = 0 x, λ, ^'o, V 三三O
xTv =0.
まず, Ax=bの基底解を, Xu=ι=3にとることとする。次に,
u' =ー [cT+2(DBxB?r= [‑8,ー6,‑4,OJT
を計算し ,U4)にしたがって,人為変数を上記の制約式に加えると,以下のよ うになるo
X1+x2+2xa十X, =3
‑4xl‑2x2‑2xa 一入1+^'O+V1 ‑U1 =‑8
‑2x1ー4x2 一入1+^'O +V2 ‑U2 =‑6
(2~ ) ‑2Xl ‑2x3 ‑2^‑1+2目入 +Va ‑U3 =‑4 一入1十入。 +V, +u, =0
X, λ, 入。, V, U 三言。
XTv=O.
このとき,制約式ωの初期基底可能解XBおよび基底行列Bは,それぞれ以 下のとおりであるo
XB=[x" U1, U2, U3, u,r=[ 3 ,8 ,6 ,4 ,0 J¥
1 O O O O
o ‑1 O O O 0・1 O O O O o ‑1 O O O O O l
次に,制約式ωのもとで, z' = ‑2: j ~ 1 uJを最大化する手IJ貝に移って ゆくo計算を進める前に,人為基底変数山の値が,ゼロとなっていることに 注目する。人為変数を,より早く基底から追い出すために.U,をV,と置き 換えるD この操作は,条件XTV=0をやぷらないので,許容される。
演算を先に進めることとする。いま,基底可能解XBおよび費用係数CB
は,それぞれ以下のとおりであるo