シンプレックス法で線形計画問題(最大化問題)を解くプログラムです。一度に最適解を求めることも、 ステップを追って求めることも可能です。
データ入力
(必要ならば)「データの入力」タブを表示し、(必要ならば)変数の個数、式の本数を変更し「変更」ボタンを押す。このプログラムは最大化問題を解くプログラムなので、最小化問題を解く場合はあらかじめ目的関数を-1倍して最大化問題に変更しておくこと。制約式の係数と定数項を入力する。非負変数でない場合は「非負変数」のチェックマークをはずす。制約式のタイプとして、「$\le$」、「$\ge$」、「$=$」のどれかを選ぶ。目的関数の係数は一番下の行に入力する。入力できる係数は有理数までである。10.6、-5/6、等、小数点数、分数(帯分数ではなく仮分数)を入力できる。
結果(経過)の表示
「結果(経過)の表示」タブを表示する。(必要ならば)余裕変数等を自動的に追加して最初のシンプレックス表を求め、この時点での状況(最適解、非有界、等)がステータスバーに表示される。「解く」ボタンを押せば、解が求まる。「ステップ実行」がチェックされていれば、シンプレックス法を1ステップずつ実行する。
例1(実行不可能)
次の線形計画問題(「線形数学」竹内啓著、培風館、p.37より)を解く。
(必要ならば)「データの入力」タブを表示して、変数の個数を2個、式の本数を3本に変更し、データを入力する。「結果(経過)の表示」タブを表示すると、
例2(非有界)
次の線形計画問題を解く。
(必要ならば)「データの入力」タブを表示して、データを入力する。「結果(経過)の表示」タブを表示すると、
例3(通常)
次の線形計画問題(”Cooperative Game Theory and Applications” by Imma Curiel, p.21より)を解く。
(必要ならば)「データの入力」タブを表示して、変数の個数を2個、式の本数を3本に変更し、データを入力する。「結果(経過)の表示」タブを表示すると、
例4(縮退1)
次の線形計画問題(「線型不等式とその応用」長堀長慶著、岩波書店、p.73より)を解く。
(必要ならば)「データの入力」タブを表示して、変数の個数を7個、式の本数を4本に変更し、データを入力する。
例5(縮退2)
次の線形計画問題(「線形数学」竹内啓著、培風館、p.33より)を解く。
(必要ならば)「データの入力」タブを表示して、変数の個数を2個、式の本数を3本に変更し、データを入力する。「結果(経過)の表示」タブを表示すると、
例6(行列ゲーム)
次の行列ゲーム(”Game Theory” by Owen, p54より)を解く。
これを解くには、次の線形計画問題を解けばよい。
(必要ならば)変数の個数を4個、式の本数を5本に変更し、上記のデータを入力する。変数x4の「非負変数」のチェックをはずす。「結果(経過)の表示」タブを表示すると、
例7(割当問題)
次の割当問題(”Cooperative Game Theory and Applications” by Imma Curiel, p.54より)を解く。
(必要ならば)変数の個数を9個、式の本数を6本に変更し、上記のデータを入力する。
例8(輸送問題)
次の輸送問題(「問題解決のためのオペレーションズ・リサーチ入門」高井英造、真鍋龍太郎著、日本評論社、第5章より)を解く。
(必要ならば)変数の個数を15個、式の本数を8本に変更し、上記のデータを入力する。
例9(勝者調整法)
2人のプレイヤーAとBの5品目(可分とする)に対する評価値が次の表のようになっている時、勝者調整法による配分を線形計画法を利用して求める。
品目1 | 品目2 | 品目3 | 品目4 | 品目5 | 合計 | |
---|---|---|---|---|---|---|
Aの配点 | 25 | 5 | 30 | 20 | 20 | 100 |
Bの配点 | 20 | 10 | 15 | 25 | 30 | 100 |
(必要ならば)変数の個数を11個、式の本数を7本に変更し、上記のデータを入力する。 「結果(経過)の表示」タブを表示すると となり、最初のシンプレックス表が表示される。ステータスバーにより、実行可能解を探そうとしていること、最初のピボットが7行8列であることが分かる。ここでは、(必要ならば)「ステップ実行」のチェックを外し、解を求める。「解く」ボタンを押すと、 となり、x1=1、x2=0、x3=1、x4=2/9、x5=0、x6=0、x7=1、x8=0、x9=7/9、x10=1の時、最大値が59+4/9であることが分かる。表にすれば次のようになる。プレイヤーAは品目1と品目3と品目4の2/9を貰い、プレイヤーBは品目2と品目5と品目4の7/9を貰う。そのときの利得は\(59 \frac{4}{9}\)となる。
品目1 | 品目2 | 品目3 | 品目4 | 品目5 | 合計 | |
---|---|---|---|---|---|---|
A | 25 | 30 | \(\frac{2}{9} \times 20 \) | \(59 \frac{4}{9}\) | ||
B | 10 | \(\frac{7}{9} \times 25 \) | 30 | \(59 \frac{4}{9}\) |