技能一覧 › 大学院数学 凸最適化・組合せ最適化

線形計画の双対定理

線形計画問題の双対問題を書き下し、弱双対性・強双対性と相補性条件を使って、主・双対の最適解と最適値を求められる

前提

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

読み込み中…

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

一覧で見る(前提が先)
  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. ベクトルの演算と成分 (数学C ベクトル)
  26. 行列の和・積と 2 次の逆行列 (大学数学 線形代数)
  27. 掃き出し法と連立 1 次方程式 (大学数学 線形代数)
  28. 最大公約数と最小公倍数 (算数 整数の性質)
  29. 比の性質と簡単な比 (算数 割合と比)
  30. 相似な三角形と長さの比 (算数 平面図形)
  31. 三角形の相似条件と対応する辺の長さ (中学数学 相似と三平方の定理)
  32. 平行線と線分の比 (中学数学 相似と三平方の定理)
  33. 2点間の距離と内分点・外分点 (数学II 図形と方程式)
  34. 比例・反比例の式とグラフ (中学数学 関数)
  35. 関数 の式と変域 (中学数学 関数)
  36. 因数分解 (中学数学 数と式)
  37. 平方完成と 2 次関数のグラフ (数学I 2次関数)
  38. 円の方程式 (数学II 図形と方程式)
  39. 連立方程式の解き方(加減法・代入法) (中学数学 方程式)
  40. 1 次関数の式の求め方 (中学数学 関数)
  41. 直線の方程式 (数学II 図形と方程式)
  42. 不等式の表す領域 (数学II 図形と方程式)
  43. 点と直線の距離 (数学II 図形と方程式)
  44. 2 次不等式 (数学I 2次関数)
  45. 円と直線の位置関係と弦の長さ (数学II 図形と方程式)
  46. 2直線の平行・垂直 (数学II 図形と方程式)
  47. 円の接線 (数学II 図形と方程式)
  48. 領域における最大・最小 (数学II 図形と方程式)

説明

線形計画問題(1 次式の制約のもとで 1 次式を最大・最小にする問題)には、同じデータから作られる「双対問題」という相棒の問題がついています。双対問題の任意の実行可能解は元の問題の最適値の上界(または下界)を与え、両方に最適解があれば最適値どうしは一致します。この技能では、双対問題を書き下し、弱双対性・強双対性・相補性条件を使って、一方の最適解からもう一方の最適解と最適値を求めます。最適性の証明書を作るときや、制約の「価値」(シャドウプライス)を求めるときに使います。

なぜそうしてよいのか

次の形の問題(主問題)を考えます。 ここで は 行列、、 で、ベクトルの不等式は成分ごとの不等式です。また は の行と列を入れ替えた 行列(転置行列)で、 と定めます。縦ベクトル の転置 は横ベクトルで、 は内積です。

最大値を上から押さえたいので、 番目の制約 に重み を掛けて足し合わせると が得られます( なので不等号の向きは変わりません)。左辺を でまとめると、 の係数は 、つまり の 列目と の内積です。もしこの係数がどの についても 以上なら、 より となり、 が最大値の上界になります。最もよい(小さい)上界を探す問題が双対問題です。 上の不等式の連鎖が、(P) の任意の実行可能解 と (D) の任意の実行可能解 について が成り立つという弱双対性です。特に、 となる実行可能な組が見つかれば、両方とも最適解です。

さらに強双対性という定理が成り立ちます: (P) が最適解をもてば (D) も最適解をもち、最適値は一致します(図形的には、最適な頂点で交わる制約直線の法線ベクトルを非負の重みで組み合わせると目的関数の係数ベクトル が作れる、ということに対応します)。

最適値が一致するとき、上の連鎖の 2 つの不等号はどちらも等号です。 で各項は 以上なので、各 で または 。同様に から、各 で または 。これが相補性条件で、「主問題で余裕のある(等号でない)制約に対応する双対変数は 0、正の主変数に対応する双対制約は等号」と読めます。逆に、実行可能な が相補性条件を満たせば、上の連鎖がすべて等号になるので両方とも最適です。これにより、最適解を求める問題が連立 1 次方程式に帰着されます。

手順

  1. 主問題を「最大化 、、」の形に整え、 を読み取る。最小化 なら の最大化に直す(最適値は符号を戻す)、 の制約は両辺に を掛けて にする、等式の制約は と の 2 本に分ける、符号に制約のない変数 は ()と置き換える

  2. 双対問題「最小化 、、」を書き下す(主の制約 1 本ごとに双対変数 1 個、主の変数 1 個ごとに、 のその列を係数とする双対制約 1 本)

  3. 主問題の最適解 を求め(2 変数なら領域の頂点を調べる)、どの制約が等号で、どの変数が正かを調べる

  4. 相補性条件を書く: 等号でない主制約 には 、 の には

  5. 得られた連立 1 次方程式を解き、 と を満たすことを確かめる

  6. を確認する(弱双対性より両方が最適であることの証明になる)

例題

線形計画問題 の双対問題の最適解 を求めよ。ただし はそれぞれ 1 本目、2 本目の制約に対応する双対変数とする。

例題の解答

手順 1: すでに標準形なので、, , 。

手順 2: の 1 列目 と 2 列目 を係数にして、双対問題は

手順 3: 実行可能領域の頂点は で、 の値はそれぞれ 。よって主問題の最適解は 、最適値 。このとき 2 本の制約はどちらも等号(, )で、, 。

手順 4: , なので双対制約はどちらも等号: (主制約はどちらも等号なので、 という条件は出てこない。)

手順 5: 2 式の差から で 、。 で、双対制約も(等号で)満たす。

手順 6: 。弱双対性より は双対問題の最適解である。

答え:

よくある誤り

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

入口の問題

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