Transcript ppt

線形計画問題に対する
主双対内点法
小崎 敏寛
東京工業大学大学院
経営工学専攻
2011 5/28 29 SCOPE@つくば
1
目的:輸送問題を数値的に解く
→主双対内点法の適用
•
•
•
•
線形計画問題に対する主双対内点法
輸送問題の定式化
輸送問題に対する内点法
結論と今後の課題
2011 5/28 29 SCOPE@つくば
2
1-1標準形の線形計画問題
主問題(P)
min cT x
s.t. A x  b
x  0 変数 xはn次元
双対問題(D)
max bT y
s.t. AT y  z  c 変数 yは m次元
z0 Ax  b
変数 zはn次元
AT y  z  c
最適条件
x0
z0
Xz  0
2011 5/28 29 SCOPE@つくば
3
1-2 フィージブル内点法
Ax  b
センターパス
みたす
AT y  z  c
x0
z0
強くみたす
wk
wk+1
Xz   e
w  ( x, y , z )
最適解
各μにつき近似解を得て,μ↓0とすれば,
等式不等式系が最適条件に近づくので,最適解が得られるはず
主問題と双対問題を同時に考えるので主双対内点法
理論で使われる
2011 5/28 29 SCOPE@つくば
4
1-3 インフィージブル内点法1
w  ( x, y , z )
w :ニュートン方向
wk
Ax  b  Ax
AT y  z  c  AT y  z
Zx  Xz   e  Xz
xT z
ただし   [0,1],  
n
wk 1  wk   cw
wk+1
ただし  c  0.99995,   [0,1]
最適解
実行可能領域の外から最適解に近づく
数値的に最適解を得られる
2011 5/28 29 SCOPE@つくば
5
1-4 インフィージブル内点法2
• 計算時間の大半は次の方程式を解くのにか
かる
AXZ-1ATΔy=AXZ-1(c-ATy-z)-γμAZ-1e+b
Δz=-ATΔy+c-ATy-z
Δx=-XZ-1Δz+γμZ-1ex
eは要素が全て1のベクトル
X:=diag(x) Z:=diag(z)
2011 5/28 29 SCOPE@つくば
6
1-5 インフィージブル内点法3
• ステップサイズα+
min{1, max{ : x  x  0, z  z  0}}
• 内点であるようにステップサイズをきめる
2011 5/28 29 SCOPE@つくば
7
2-1 輸送問題1
a1
b1
ソース
供給
(i , j )
シンク
a2
b2
工場
a3
cij
M=3
min  cij xij
N=2
s.t.x11  x12
x21  x22
需要
消費地
 a1
 a2
x31  x32  a3
 x21
x11
x12
 x31
 x22
 b1
 x32  b2
xij  0
• 仮定:  ai   b j
i
j
• 仮定:全てのiとjの間にアークが存在する
• 制約が一つ冗長なので一番下の制約を取り除く
2011 5/28 29 SCOPE@つくば
8
2-2 輸送問題2
min  cij xij
(i , j )
s.t. x11  x12
 a1
x21  x22
 a2
x31  x32  a3
x11
 x21
 x31
 b1
• MN変数M+N-1制約の
線形計画問題
• 実行可能解
xij  ai b j /( ai )
が存在する
i
xij  0
2011 5/28 29 SCOPE@つくば
9
2-3 輸送問題と他の問題の関係
(割当問題)(輸送問題)(多品種輸送問題)
輸送問題で,M=Nとして,ai , bj =1として,
変数を0-1に限定.
多品種輸送問題で品種を一つにしたもの.
2011 5/28 29 SCOPE@つくば
10
2-4 輸送問題に対する内点法
の既存研究
• 変数に対する非負制約だけでなく,上限制約
のある定式化
←実行可能解が存在するかわからない
• ニュートン方向の計算に共役勾配法を使用
a1=3
u11=1
u12=1
2011 5/28 29 SCOPE@つくば
11
3-1 輸送問題のニュートン方向
ij  xij / zij
• AXZ-1AT
 : (ij )

を の一番右の列を
M
取り除いた行列
=
N-1
M
計算量はO(MN)
N-1
密だとすると O(m2n)=O((M+N-1)2MN)
2011 5/28 29 SCOPE@つくば
12
3-2 ステップサイズの決定(LP)
ステップサイズの決め方に問題がある
正値性をみたしていれば,
ニュートン方向には
できるだけ進んだ方がよいと考える
Infeasibilityはステップサイズが1以下
なら大きいほど改善する
min{1, max{ : x  x  0}
x2
Δx1
α
座標ごとに計算する
 i  min{1, max{i : xi  i xi  0}
Δx2
x1
Δx
2011 5/28 29 SCOPE@つくば
13
ステップサイズと残差の関係
Zx  Xz  e  Xsより
xTz
( x  x)T ( z  z )
γxTz
n
 xT z (1   (1   ))   2  xi zi
i 1
A( x  x)  bより
考えない
A( x  x)  Ax   ( Ax  b)
α
Ax
b
α
2011 5/28 29 SCOPE@つくば
14
3-3 ステップサイズの決定(提案)
(SOCP,SDP)
(1)変数が二次錐の直積で表されている場合
  pi  min{1, max{i : xi  i xi  0}
i
(2)SDPで変数がブロック対角の場合
各ブロックごとにステップサイズを決定する
  pi  min{1, max{i : xi  i xi 0}
2011 5/28 29 SCOPE@つくば
15
3-4MATLABでの実装で注意したこと
• diagを使用しない
→A*sparse(1:M*N,1:M*N,x./z)*A’
• ステップサイズの計算の時に,先に領域を確
保しておく
2011 5/28 29 SCOPE@つくば
16
4 結論と今後の課題
• 輸送問題の係数行列の疎性を利用した計算
と(線形計画問題に対する)ステップサイズの
決定により効率的に最適解を得られた.
• 整数解を求める.
2011 5/28 29 SCOPE@つくば
17
• Δy(の近似)を求めるのに,直接法でなく反復
法を使う.
• SOR法(Successive Over-Relaxation,逐次
加速緩和法)を適用するが,3倍時間がか
かったので諦めた.
2011 5/28 29 SCOPE@つくば
18
輸送問題の表
c11
c12
x11
c21
x12
a1
x22
a2
x32
b2
a3
c22
x21
c31
c32
x31
b1
2011 5/28 29 SCOPE@つくば
19
参考文献
最近のサーベイ
L. T. Guardia and G. B. Lima, Interior Point
Methods for Linear Multicommodity Flow
Problems, 2nd International Conference on
Engineering Optimization, 2010.
MATLABの本
上坂吉則,MATLABプログラミング入門,牧
野書店,2006.
2011 5/28 29 SCOPE@つくば
20