線形計画の角に答え

線形計画問題の最適解は、実行可能領域の 頂点(角) のどれかに必ず現れます。目的関数ベクトルを回し、制約をドラッグして角の移動を体感します。

35°
8.0
7.0
目的ベクトル c
最適頂点 (x, y)
最適値 z = c·x
頂点の数
実行可能領域(青)と最適頂点(赤)── 破線の制約はドラッグで平行移動できます
線形計画(LP)は、1次式の目的関数 z = c₁x + c₂y を、いくつかの 1次不等式の制約 のもとで最大化(または最小化)する問題です。
制約を満たす点の集合は 凸多角形(実行可能領域) になります。目的関数の値が等しい点は「レベル線」という平行な直線群をなし、その線をベクトル c の向きへ押し進めて 領域からはみ出す直前で止まる場所が最適解です。
だから最適解は、領域の中ではなく必ず 角(頂点) に現れます。これが単体法(シンプレックス法)が頂点だけを探す理由です。θ を回し、制約をドラッグして、答えが角から角へ飛び移る様子を確かめましょう。

いま何が起きている?

ここがポイント