Mímisbrunnr知恵の泉

← 数理最適化 一覧

🎓 レベル:基礎 | 重要度:A(必須)

📎 前提:最適化問題とは | 関連:局所最適と大域最適・凸性の役割

要点(BLUF)

概念 ── 問題を測る軸

「線形計画」「整数計画」「凸最適化」といった呼び名は、すべて以下の軸の組み合わせに過ぎない。軸を分けて見ると、各章がどこを担当しているかが見えてくる。

一方もう一方効き目
変数の種類連続(実数)離散(整数・組合せ)大(離散は一般に難しい)
目的・制約の形線形非線形
凸性非凸最大(凸なら局所=大域)
制約なしあり中(解法の枠組みが変わる)
不確実性確定的確率的・ロバスト中(第7章)

主要クラスの地図

graph TD
  OPT["最適化問題"] --> CONT["連続"]
  OPT --> DISC["離散 (整数・組合せ)"]
  CONT --> LP["線形計画 LP"]
  CONT --> NLP["非線形計画 NLP"]
  NLP --> CVX["凸計画 (QP/SOCP/SDP)"]
  NLP --> NONCVX["非凸計画"]
  DISC --> IP["整数計画 IP/MILP"]
  DISC --> COMB["組合せ最適化"]

なぜ「凸か非凸か」が最も効くのか

最適化の難しさの本質は 「局所最適が大域最適か」 に尽きる。凸問題ではこれが一致するので、勾配がゼロの点を1つ見つければ世界最良が保証される。非凸問題では、見つけた解が「たまたま近くで一番良いだけ」かもしれず、大域最適である保証が原理的に得られない。だから「線形か非線形か」よりも「凸か非凸か」のほうが、解きやすさを強く支配する。詳しくは 局所最適と大域最適・凸性の役割

線形計画が嬉しいのは「線形だから」ではなく「線形ゆえに凸(しかも実行可能領域が凸多面体)だから」である、という見方をここで持っておくとよい。

連続 vs 離散 ── もう一つの大きな段差

連続問題では微分(勾配・ヘッセ行列)が使え、「少し動かして改善する」滑らかな探索ができる。離散問題では微分が使えず、選択肢が指数的に増える(nn 個の0/1変数で 2n2^n 通り)。この組合せ爆発が、整数計画を一般に難しくしている(計算複雑性とNP困難の地図)。LP 緩和(整数条件を一旦外す)が橋渡しになる(整数計画とは・LP緩和)。

数式の直観的意味

分類は「どの定理が使えるか」を決める。たとえば:

つまり分類は飾りではなく、「この問題にどの理論的武器を抜けるか」の判断そのもの。

⚠️ よくある誤解・落とし穴

関連ノート