技能一覧 › 大学数学 最適化・線形計画法

端点(基底解)の列挙による最適解

最適解が実行可能領域の端点に現れることを使える。制約のいくつかを等号にした連立 1 次方程式で基底解を求め、実行可能かを確かめて目的関数の値を比べ、3 変数以上の線形計画問題の最適値と最適解を求められる

前提

この技能までの道筋(49 技能)
算数中学高校大学大学院

読み込み中…

右端(太枠)がこの技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。

一覧で見る(前提が先)
  1. 三角形の角の大きさ (算数 平面図形)
  2. 対頂角と平行線の同位角・錯角 (中学数学 平面図形)
  3. 三角形の外角と角の組み合わせ (中学数学 平面図形)
  4. 小数の四則計算 (算数 計算と数のきまり)
  5. 分数のたし算・ひき算 (算数 計算と数のきまり)
  6. 分数のかけ算・わり算 (算数 計算と数のきまり)
  7. 小数と分数のまじった計算 (算数 計算と数のきまり)
  8. 逆算(□ を求める) (算数 計算と数のきまり)
  9. 正負の数の加法・減法 (中学数学 数と式)
  10. 四則の混じった計算の順序 (算数 計算と数のきまり)
  11. 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
  12. 分配法則を使った計算のくふう (算数 計算と数のきまり)
  13. 文字式の計算(同類項・分配法則) (中学数学 数と式)
  14. 1 次方程式の解き方 (中学数学 方程式)
  15. 二等辺三角形の角 (中学数学 平面図形)
  16. 平行四辺形と特別な四角形の性質 (中学数学 平面図形)
  17. 三角形・四角形の面積 (算数 平面図形)
  18. 約数の見つけ方 (算数 整数の性質)
  19. 素因数分解と約数の個数 (算数 整数の性質)
  20. 平方根の意味と根号の簡単化 (中学数学 数と式)
  21. 三平方の定理 (中学数学 相似と三平方の定理)
  22. 乗法公式による展開 (中学数学 数と式)
  23. 折り返した図形の角と長さ (中学数学 平面図形)
  24. 三平方の定理と平面図形 (中学数学 相似と三平方の定理)
  25. 最大公約数と最小公倍数 (算数 整数の性質)
  26. 比の性質と簡単な比 (算数 割合と比)
  27. 相似な三角形と長さの比 (算数 平面図形)
  28. 三角形の相似条件と対応する辺の長さ (中学数学 相似と三平方の定理)
  29. 平行線と線分の比 (中学数学 相似と三平方の定理)
  30. 2点間の距離と内分点・外分点 (数学II 図形と方程式)
  31. 比例・反比例の式とグラフ (中学数学 関数)
  32. 関数 の式と変域 (中学数学 関数)
  33. 因数分解 (中学数学 数と式)
  34. 平方完成と 2 次関数のグラフ (数学I 2次関数)
  35. 円の方程式 (数学II 図形と方程式)
  36. 連立方程式の解き方(加減法・代入法) (中学数学 方程式)
  37. 1 次関数の式の求め方 (中学数学 関数)
  38. 直線の方程式 (数学II 図形と方程式)
  39. 不等式の表す領域 (数学II 図形と方程式)
  40. 点と直線の距離 (数学II 図形と方程式)
  41. 2 次不等式 (数学I 2次関数)
  42. 円と直線の位置関係と弦の長さ (数学II 図形と方程式)
  43. 2直線の平行・垂直 (数学II 図形と方程式)
  44. 円の接線 (数学II 図形と方程式)
  45. 領域における最大・最小 (数学II 図形と方程式)
  46. ベクトルの演算と成分 (数学C ベクトル)
  47. 行列の和・積と 2 次の逆行列 (大学数学 線形代数)
  48. 線形計画問題の定式化と標準形 (大学数学 最適化・線形計画法)
  49. 掃き出し法と連立 1 次方程式 (大学数学 線形代数)

説明

変数が 3 個以上あると、線形計画問題をグラフで解くのは難しくなります。そこで、実行可能領域の『角』にあたる点(端点)を連立 1 次方程式で計算して書き出し、目的関数の値を比べて最適解を求めます。この方法は、『実行可能な点があり、目的関数が上に有界なら、最大値は有限個の基底解のどれかで達成される』という事実にもとづいています。変数や制約が少ない問題なら、手計算で確実に解けます。また、シンプレックス法を理解する土台にもなります。

なぜそうしてよいのか

まず用語を決めます。 次元の列ベクトル について、 を満たす数の組が しかないとき、これらは 1 次独立であるといいます。そうでないとき、つまりどれかの列が残りの列の組合せで表せるとき、1 次従属であるといいます。 本の式と 個の未知数からなる連立 1 次方程式は、係数の列が 1 次独立なら掃き出し法で単位行列まで変形でき、解がただ 1 つに決まります。1 次従属なら、解がないか、無数にあります。なお、1 次独立な列の個数は高々 個です。

標準形 , , , を考えます。 は 行列で、 は 個のスラック変数です。全変数をまとめて と書くと、条件は , となります。ここで は 次の単位行列です。 は の 本の列を含むので、1 次独立な列を 本とれます(階数が )。 とおくのは制約 を等号にすること、 とおくのは 番目の不等式を等号にすることにあたります。そこで、列が 1 次独立になる 個の変数(基底変数)を選び、残りの 個(非基底変数)を とおきます。残った 元の方程式のただ 1 つの解を基底解と呼び、全変数が 以上の基底解を実行可能基底解と呼びます。実行可能基底解は領域の端点、つまり他の 2 つの実行可能な点を結ぶ線分の途中にはない『角』の点にあたります。3 変数なら、境界の平面 3 枚がちょうど 1 点で交わる点です。

最大値がどこかの実行可能基底解で達成されることを示します。目的関数 は上に有界、つまり実行可能な点での の値がある一定の数以下に収まるとします。実行可能な点 を 1 つとり、 で正の値をとる変数の列が 1 次従属だとします。すると、正の変数の位置以外の成分が で、 を満たす がとれます。 とおくと、 です。向きは次のように選びます。 なら を に取りかえて、 にします。 で に負の成分がないなら、すべての で は実行可能で、 となります。これは有界性に反するので、この場合 には必ず負の成分があります。 なら、 なので と のどちらかは負の成分をもちます。そちらを選びます。こうして、 で、負の成分をもつ が得られます。 を から増やすと、 は減りません。 である変数のどれかがちょうど になる で止めると、 は実行可能で、正の変数が少なくとも 1 つ減ります。この操作を繰り返すと、正の変数は有限個しかないので、いずれ正の変数の列が 1 次独立な点 にたどりつきます。このとき です。

が実行可能基底解であることを確かめます。 の正の変数が 個とすると です。 のとき(退化の場合)でも、 の階数は なので、他の列を付け足して 1 次独立な 本の列にできます。この 個を基底変数とすると、残りの変数は ですべて です。基底変数の方程式は解がただ 1 つなので、その解は そのものになります。よって は実行可能基底解です。以上から、どの実行可能な点 についても、 となる実行可能基底解 があります。実行可能基底解は高々 個しかありません。したがって、その中で が最大のものが元の問題の最適解です。

手順

  1. スラック変数を加えて標準形 () に直す。等式の本数 と変数の総数 を確認する。

  2. 実行可能領域が有界であるなどの理由で、目的関数が上に有界であることを確かめる。

  3. 基底変数の候補を 個選び、残りの 個を とおく。選び方は全部で 通りある。

  4. 残った 元連立 1 次方程式を掃き出し法で解く。解がない組や解が無数にある組(列が 1 次従属な組)は、基底解にならないので除外する。

  5. 求めた解で、スラック変数も含めた全変数が 以上かを確かめる。負の変数が 1 つでもあれば実行不可能なので除外する。

  6. 残った実行可能基底解それぞれで目的関数の値を計算し、最大のものを最適値・最適解とする。

例題

, , のもとで、 の最大値 と最適解 を求め、 の組で答えよ。

例題の解答

【手順1】スラック変数 を加えると、, となる。等式は 本で、変数は の 5 個である。

【手順2】 と から、元の変数 はそれぞれ 以下である。スラック変数は , となる。よって であり、 は上に有界である。原点は実行可能なので、最大値が存在する。

【手順3〜5】基底変数の組は 通りある。それぞれ、選ばなかった 3 個の変数を とおいて解く。
(1) : , より 。実行可能で、。
(2) : , 。実行不可能。
(3) : , 。実行不可能。
(4) : , 。実行可能で、。
(5) : より 、。実行可能で、。
(6) : , 。実行可能で、。
(7) : , 。実行不可能。
(8) : 2 本目が となり解がない(両方の列が で 1 次従属)。基底解ではない。
(9) : , 。実行可能で、。
(10) : , (原点)。実行可能で、。

【手順6】実行可能基底解での の値は で、最大は (5) の である。このとき となる。

答え:

よくある誤り

この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。

入口の問題

この技能を使う問題

この技能の次に学べること