リニアプログラミング
標準リニア・プログラミング
リニアプログラミングモデル(LP)
- 決定変数のセット
- 線形目的関数
- 線形制約のセット
一般形式:
\ [\分(\ MAX)\ sum_ {i = 1} ^ {N}、C_ {I} X_ {I} \\ ST \左\ {\開始{アレイ} {C} {A_ {11} X_ {1} + A_ {12} X_ {2} + \ cdots + A_ {1、N} X_ {N} \ GEQ(=、\ 1当量)B_ {1}} \\ {A_ {21} X_ {1} + A_ {22} X_ {2} + \ cdots + A_ {2 N} X_ {N} \ GEQ(=、\ 1当量)B_ {2}} \\ {\ cdots} \\ {A_ {M 1} X_ {1} + A_ {M 2} X_ {2} + \ cdots + A_ {MN} X_ {N} \ GEQ(=、\ 1当量)B_ {M}} \\ {X_ {I} \ GEQ(= \ 1当量)0、I = 1,2、\ cdots、N} \端{アレイ}右\。\]
标准型:
\ [\最大の\ sum_ {i = 1} ^ {N}、C_ {I} X_ {I} \クワッド\テキスト{ST} \左\ {\開始{アレイ} {C} {A_ { 11} X_ {1} + A_ {12} X_ {2} + \ cdots + A_ {1、N} X_ {N} = B_ {1}} \\ {A_ {21} X_ {1} + A_ {22} X_ {2} + \ cdots + A_ {2 N} X_ {N} = B_ {2}} \\ {\ cdots} \\ {X_ {I} \ GEQ 0、I = 1,2、\ cdots、nは} \端{アレイ}右\。\]
其中、记\(C = \左(C_ {1}、C_ {2}、\ cdots、C_ {N} \右)^ {T}、B = \左(B_ {1}、B_ {2}、\ cdots、 B_ {M} \右)^ {T}、X = \左(X_ {1}、X_ {2}、\ cdots、X_ {N} \右)^ {T}、\ boldsymbol {A} = \左(A_ {IJ} \右)_ {N Mの\回} \) 、则线性规划标准型记为
\ [\開始{アレイ} {1} {\最大\クワッドC ^ {T}、X} \\ { \テキスト{ST} \左\ {右\ \開始{アレイ} {1} {A、X = B} \\ {X \ GEQ 0} \端{アレイ}。} \端{アレイ} \]
標準の
目的関数
オリジナル目的関数:\(\分\クワッドC ^ {X} T \クワッド\ RIGHTARROW \最大\クワッドC ^ {X} T \)
制約
元の問題の条件:\(A_ X_ {I} 1 1} {2} + I {A_ X_ {2} + \ A_ N-X_ {}内cdots {+} \ {I}のLeq B_ \)
\(\ RIGHTARROW \左\ {\開始{アレイ} {C} {A_ {I 1} X_ {1} + A_ {iは2} X_ {2} + \ cdots + A_ {における} X_ {N} + X_ {N + I} = B_ {I}} \\ {X_ {N + i}は\ GEQ 0} \端{アレイ}右\ \)、 \(X_ {N + I} \)称为松弛变量
元の問題の条件:\(A_ X_ {I} 1 1} {2} + I {A_ X_ {2} + \ A_ N-X_ {}内cdots {+} \ {I} GEQ B_ \)
\(\ RIGHTARROW \左\ {\開始{アレイ} {C} {A_ {I 1} X_ {1} + A_ {iは2} X_ {2} + \ cdots + A_ {X_}に{N} -x_ {N + I} = B_ {I}} \\ {X_ {N + i}は\ GEQ 0} \端{アレイ}右\ \)、 \(X_ {N + I} \)称为剩余变量
オリジナル問題:\は(X_I \)負の制約以外の何ものでもありませんし、しましょう\(\左\ {\始める - \ boldsymbol {V {整列} \ boldsymbol {X} _ {I}&= \ boldsymbol {U} _ {I} } _ {I} \\ \ boldsymbol {U} _ {I} \ boldsymbol {V} _ {I}&\ GEQ \ mathbf {0} \端{整列} \右。\)
グラフィカルな方法
- 実行可能領域の範囲を描きます
- 輪郭点を用いて、パンニング方法極値
LPソリューションのコンセプトと自然
\ [\開始{アレイ} {C} {(LP)\クワッド\最大\クワッドZ = C ^ {T}はX \クワッド(1)} \\ {\テキスト{ST} \左\ {\開始{アレイ右\} {CC} {A、X = B}&{\テキスト{(2)}} \\ {X \ GEQ 0}&{\テキスト{(3)}} \端{アレイ}。} \端{アレイ} \]
実現可能な解決策:を満たす(2)(3)溶液の\(X =(X_1、X_2 、...、x_nに関する)^ Tを\) と呼ばれている\((LP)\)実現可能な解
可能領域:\ (D = \ {X | A = B X、X \ GEQ 0 \} \)
- 線形計画問題可能領域\(Dは\)凸集合であります
線形計画ソリューションの概念
グループ:みましょう\(\)の\(m個の\ n倍\)係数行列、ランク\(m個\) 。場合\(B \)の\(\)の\(Mの\回数M \)非縮退サブアレイ順序は、と呼ばれる\(B \)の\(\) (または\((LP)\ )問題)ベース。
- 非縮退部分行列:「非排他的なマトリックス」「フルランク行列」行列式として知られている\(| A | \ NE0 \) 。\(N- \)正方行列\(\)非縮退のための必要十分条件\(\)は正則行列です。
基底ベクトル:うグループ\(\ boldsymbol {B} = \左(\ boldsymbol {P} _ {iは1}、\ boldsymbol {P} _ {iは2}、\ cdots、\ boldsymbol {P} _ {IM} \右)\)と呼ばれる(\ \ \(左boldsymbol { P} _ {iは1}、\ boldsymbol {P} _ {iは2}、\ cdots、\ boldsymbol {P} _ {IM} \右)\ )基底ベクトルの。
イル変数:\(\ boldsymbol {P}} _ {IM \)は変数に対応する\(x_m \)変数は、変数が非イル基変数と呼ばれていません。
塩基性溶液:グループは線形プログラミングにある\(B \)非イル変数は、0を取るように、\(\左(B ^ { - 1} B、0 \右)^ {T}は\)のグループに対応する(\ Bの\)基本的なソリューションを提供します。
基本的な実現可能な解決策は:線形計画満たすために\((LP)\)の基本的な実現可能な解決策の問題の条件(3)の根本的な解決を。
- 線形プログラミング((LP)\)\問題の溶液\(X \)は基本的な実行可能解に十分な条件であるである\(X \)は、可能領域である\(D \)頂点
シンプレックス法
アルゴリズムの考え方
あなたが最適解を見つけるまで、次の基本的な実現可能な解決策にスキップしていない場合、それが最適解であるかどうかを決定し、基本的な実現可能な解決策を開始します。
- 最初の基本的な実現可能なソリューションを取得する方法
- 最適な解決策かどうかを確認する方法
- さらに、基本的な実現可能なソリューションへの基本的な実行可能解から変換する方法
最初の基本的な実現可能なソリューション
大\(M \)方法:変数人工増加(Z = \ sum_ {I \ = 1} ^ {N}、C_ {I} X_ {I} -M X_ {N + 1} - \ cdots-MのX_ { } M + N- \) 、取る(\ \ boldsymbol {X} _ {N + 1}、\ cdots、\ boldsymbol {X} _ {N + M} \) 初期集団に変数。
最適解条件を決定
\ [(\ boldsymbol {LP})\の最大Z = \ sum_ {i = 1} ^ {N}、C_ {I} \ boldsymbol {X} _ {I} \クワッド\テキスト{ST} \左\ {\始まります{アレイ} {C} {A_ {11} X_ {1} + A_ {12} X_ {2} + \ cdots + A_ {1、N} X_ {N} = B_ {1}} \\ {A_ {21} X_ {1} + A_ {22} X_ {2} + \ cdots + A_ {2 N} X_ {N} = B_ {2}} \\ {\ cdots} \\ {A_ {M 1} X_ {1} + A_ {M 2} X_ {2} + \ cdots + A_ {MN} X_ {N} = B_ {M}} \\ {X_ {I} \ GEQ 0、I = 1,2、\ cdots、N} \端右\ {アレイ}。\]
そこを通って反復した後に設け
[\左\ \ {\開始 {アレイ} {1} {X_ {1} = B_ {1} ^ {\プライム} - \のsum_ {J = M + 1} ^ {n}はA_ { 1 J} ^ {\プライム} X_ {J}} \\ \ vdots \\ {X_ {M} = B_ {M} ^ {\プライム} - \のsum_ {J = M + 1} ^ {n}はA_ { MJ} ^ {\プライム} X_
{J}} \端{アレイ}右\。(1)\] れる(X_1、...、x_m \ \ ) 可変基である\(1 + X_ {M}、 ...、x_nに関する\)以外の基本的な変数。
目的関数に代入
\ [Z = \ sum_ {I = 1} ^ {M} C_ {I} B_ {I} ^ {\プライム} + \ sum_ {J = M + 1} ^ {N} \左(C_ {J} - \ sum_ {I
= 1} ^ {M} C_ {I} A_ {IJ} ^ {\プライム} \右)X_ {J} \] オーダー\(Z_0 = \ sum_ {I = 1} ^ {M} C_ {I} B_ {I} ^ {\プライム} \)、\ (\ sigma_j = C_ {J} - \ sum_ {I = 1} ^ {M} C_ {I} A_ {のIJ} ^ { \プライム} \) 、次いで
\ [Z = Z_ {0}
+ \ sum_ {J = M + 1} ^ {N} \ sigma_ {J} X_ {J} \] と呼ばれる\(\ sigma_jの\)テスト機能のために。
- もし\(X ^ * =(B_1 ^ *、...、b_m ^ *、0、...、0)^ T \) のグループに対応する\(Bの\)基本的な実行可能解のを、および任意用\(M + N-LE 1ルJ \ \ \)がある(LE sigma_j 0 \ \ \)\、次に\(X ^ * \)最適解です。
- もし\(X ^ * =(B_1 ^ *、...、b_m ^ *、0、...、0)^ T \) のグループに対応する\(Bの\)基本的な実行可能解のを、および任意用\(第m + 1 \ルJ \ルN- \)がある(\ \ sigma_j \ル0 \) 、およびそこに\(\ sigma_ {M + K} = 0(K \ GE 0)\)、線形プログラミング質問最適解は無限にあります。
タブロー
前節、線形計画問題に応じて\((LP)\) 、のように書き換え
\ [(LP)\クワッド\の最大クワッドZ = Z_ {0} + \ sum_ {i = mの+ 1} ^ {N} \ \ sigma_ {I} X_ {I} \]
\ [\テキスト{ST} \左\ {\開始{整列} X_ {1} + A_ {1、M + 1} X_ {M + 1} + \ cdots + A_ {1、N} X_ {N}&= B_ {1} \\ X_ {2} + A_ {2、M + 1} X_ {M + 1} + \ cdots + A_ {2 N} X_ {N} =&B_ {2} \\ X_ {M} + A_ {M、M + 1} X_ {M + 1} + \ cdots + A_ {MN} X_ {N} =&B_ {M} \\ X_ {I} \ GEQ 0、I = 1,2、\ cdots、N \端{整列}右\。\]
単体表
\(X_ 1 \) | \(X_2 \) | \(X_ M \) | \(X_ {M + 1} \) | \(x_nに関するの\) | \(のb \) | ||
---|---|---|---|---|---|---|---|
1 | 0 | \(\ cdots \) | 0 | \(A_ {1、M + 1} \) | $ \ cdots $ | \(a_{1n}\) | \(B_1 \) |
0 | 1 | \(\ cdots \) | 0 | \(A_ {2、M + 1} \) | \(\ cdots \) | \(A_ {2N} \) | \(B_2 \) |
$ \ $ vdots | \(\ vdots \) | \(\ vdots \) | \(\ vdots \) | \(\ vdots \) | $ \ $ vdots | ||
0 | 0 | \(\ cdots \) | 1 | \(A_ {M、M + 1} \) | \(\ cdots \) | \(A_ {MN} \) | \(b_m \) |
0 | 0 | $ \ cdots $ | 0 | \(\ sigma_ {M + 1} \) | $ \ cdots $ | \(\ Sigma_n \) | \( - Z_0 \) |
- サブ行列、それが変数グループに対応するように、ベースマトリックスを含むこと変数であります
- 試験群の可変数が0であった前記行のテスト番号と呼ばれる最後の行
- 変数の現在の値に対応するグループの最後の要素
- \(M + 1 \)番目、\(N + 1 \)列要素( - Z_0 \)\、逆の数は、基本的な実現可能な解に対応する目的関数の現在の値を表します
ラジカルの変換
変数グループに:あなたは、最大の選択することができます\(\ sigma_jの\)変数のグループに変数に対応します
基本変数から:グループ変数う\(X_Kの\)を、式(1)により算出される
\ [\ boldsymbol {\シータ} \分= \左\ {\ FRAC {\ boldsymbol {B} _ {I} ^ {\ プライム}} {\ boldsymbol {A = \ FRAC {\:boldsymbol \ \ boldsymbol {A} _ {IK} ^ {\プライム}> {0} \右\} |} _ {IK} ^ {\プライム}} boldsymbol {B} _ {1} ^ {\プライム}} {\ boldsymbol {A} _ {LK} ^ {\プライム}} \]
\(X = Yの\)は命題を表し\(X \)をに等しくなるように定義されている(Y \)\
(1)、留意すべきで算出される結合(\ \ A_ {LK})マイナス記号の前に
\({X_ {M} = B_ {M} ^ {\プライム} - \のsum_ {J = M + 1} ^ {n}はA_ {MJ} ^ {\プライム} X_ {J}} \)
選択し\(X_L \)がグループからの変数です。
簡単な方法のアルゴリズムステップ
最初の基本的な実現可能な解決策、初期シンプレックスタブローの設立を決定
場合は、試験番号を参照して\(\ sigma_j \ル0( J = M + 1、...、N)\) 現在の基本的な実現可能な解決策は、アルゴリズムは終了する最適解です。それ以外の場合は、(3)にアクセスしてください
存在した場合(> 0 \ \ sigma_k)\それが変数に対応するように\(X_Kの\)は、係数列ベクトルである\(LE0の\としてPJC \) 、無制限の線形計画問題、アルゴリズムは終了します。それ以外の場合は、(4)にアクセスしてください
セット\(\最大\左(\ sigma_ {J}> 0 \右)= \ {K} sigma_ \)を選択、\(X_Kは\)可変基です。計算
\ [\ boldsymbol {\シータ} = \ \分左\ {\ FRAC {\ boldsymbol {B} _ {I}} {\ boldsymbol {A} _ {IK}} | \ boldsymbol {A} _ {IK} > \ boldsymbol {0}右\
\}:= \ FRAC {\ boldsymbol {B} _ {1} {\ boldsymbol {A} _ {LK}} \] を選択し\(X_L \)は、グループから変数です。(5)ターンで\(A_ {LK} \)回転要素をベース。すなわち、ライン変換の使用、最初の\(K \)番目の列ベクトルをする変換係数\を(A_ {LK} = 1 \) 他の要素が列に0です。