最適化問題さいてきかもんだい: optimization problem)は特定の集合上で定義された実数関数または整数値関数についてその値が最小(もしくは最大)となる状態を解析する問題である[1]数理計画問題すうりけいかくもんだい: mathematical programming problem[1]エネルギー最小化問題エネルギーさいしょうかもんだい[注 1]とも。

数理最適化自然科学工学社会科学など様々な分野で利用されるため、最適化問題は基本的な問題の一つである。実世界の現象の数理的な解析に関わる問題や抽象的な理論の多くをこの最適化問題という一般的なくくりに入れることができる。その歴史は18世紀の変分問題まで遡れ[2]、1940年代には線型計画法線形最適化問題線型計画問題)が定式化され、その後も様々なサブクラスが提案・研究されている(詳細は 数理最適化#歴史[1]

定義

編集

ここでは最小化問題をもって最適化問題を定義する(参考: #最小化と最大化が等価)。

集合実数全体の集合、関数とする。最適化問題は次の問題である:

最適化問題

なる を求めよ

このとき 目的関数もくてきかんすう: objective function)又は : cost function実行可能領域[3]実行可能解[4] を規定する条件を制約[1]最適解さいてきかい: optimal solution[5]最適値さいてきち[5]と呼ぶ。

つまり、最適化問題とは、制約が規定する実行可能領域 のなかから目的関数 を最小化する実行可能解 を求める問題である。

数理最適化の慣習として「解」は「点」と同義であり(言い換え例: 実行可能点)、これは「問題の(最適)解」を指す語ではない。また、最小化問題であることを強調する場合は 最小解最小値と呼ぶ。

性質

編集

最小化と最大化が等価

編集

最適化問題において最小化問題と最大化問題は等価である。

最大化問題では となる を探す。ここで目的関数の符号を反転させると であるため、最大化問題は等価な最小化問題に書き直せる。つまり最適化問題では最小化と最大化は等価であり、最大化問題にも最小化用のアルゴリズムが使える[6]

最大化問題あることを強調する場合、最大解最大値とも呼ぶ。

分類

編集

最適化問題は様々な観点から分類できる。

まず考える集合 A の含まれる空間によって、無限次元と有限次元の問題に大別される。すなわち、A が関数空間に含まれる場合、無限次元の最適化問題となり、変分問題や最適制御問題が代表的である。A がユークリッド空間に含まれる場合は、有限次元の最適化問題となる。

また A が全空間のように実質的に制約条件がない問題は無制約問題(制約なし問題)となり、そうでない場合は有制約問題(制約付き問題)となる。

有限次元の場合、最適化問題は目的関数・制約(実行可能領域)に基づき分類できる:

連続最適化問題

編集

連続最適化問題(: continuous optimization problem)とは、制約条件の集合 A がユークリッド空間 の部分集合の物。

無制約問題を解析的に解く場合は、最適性の必要条件(偏微分を取って 0 )を満たす点の中に最小解がある。束縛条件がある場合はラグランジュの未定乗数法が使える。

導関数が必要なアルゴリズム

編集

導関数が必要なアルゴリズムを勾配法という。以下は、勾配法のアルゴリズム。

MathematicaのFindMinimumのデフォルトの設定は、制約条件付きは内点法[7]、目的関数が平方和の場合はレーベンバーグ・マーカート法を使い[8]、そうで無い場合はBFGS法を使い、250次元以上の場合L-BFGS法を使う[9]

導関数が不要なアルゴリズム

編集

以下は、導関数が不要(: Derivative-free optimization)なアルゴリズム。

MathematicaのNMinimumのデフォルトの設定は、線形計画問題ならば単体法を使い、整数パラメータがある場合などは差分進化を使い、それ以外はNelder-Mead法を使う[10]

1次元用

編集

2次元以上に対応している連続最適化問題のアルゴリズムでも内部で1次元用のアルゴリズムを使用している場合も多い。以下は、1次元用のアルゴリズム。

線形計画問題用

編集

以下は線形計画問題用のアルゴリズム。

離散最適化問題

編集

離散最適化問題(: discrete optimization problem)とは、制約条件の集合 A が の部分集合の物。詳細は組合せ最適化を参照。

計算理論の問題のクラス

編集

脚注

編集

注釈

編集

出典

編集
  1. ^ a b c d 矢部2006、2頁。
  2. ^ 矢部2006、ⅳ頁。
  3. ^ 「領域」は「集合」の慣例的な別名であり、数学的な意味の「領域=連結な開集合」とは異なる。
  4. ^ 矢部2006、46頁。
  5. ^ a b 矢部2006、47頁。
  6. ^ 矢部2006、5頁。
  7. ^ 局所的非線形数値最適化—Wolfram言語ドキュメント
  8. ^ 極小値探索概論—Wolfram言語ドキュメント
  9. ^ 準ニュートン法—Wolfram言語ドキュメント
  10. ^ 大域的非線形数値最適化—Wolfram言語ドキュメント

参考文献

編集
  • 矢部博『工学基礎 最適化とその応用』(初版)数理工学社、2006年3月25日。ISBN 4-901683-34-9 


関連項目

編集

📚 Artikel Terkait di Wikipedia

線型計画問題

linear programming problem)とは、最適化問題において、目的関数が線型関数で、なおかつ線型関数の等式と不等式で制約条件が記述できる問題である。線形最適化問題(せんけいさいてきかもんだい、(英: linear optimization problem)とも。 線型計画問題を解く手法を線型計画法(線形最適化)という。

組合せ最適化

すことができるものであり、その目的は最も良い解決法を見つけることである。 解が二値ベクトルの場合は0-1最適化問題(英: 0-1 optimization problem)とも言われる。 組合せ最適化問題のインスタンスは、 ( X , P , Y , f , e x t r ) {\displaystyle

二次計画法

245. サポートベクターマシン 逐次二次計画法 線形計画法 二次計画法についてのページ (英語) NEOS Optimization Guide: Quadratic Programming Solve an example Quadratic Programming (QP) problem

進化的計算

(CEC) Parallel Problem Solving from Nature (PPSN) The Foundations of Genetic Algorithms workshop (FOGA) The Workshop on Ant Colony optimization and Swarm Intellligence

マリナ・ヴィヤゾフスカ

Scientifiques (IHÉS) Automorphic Forms and Optimization in Euclidean Space(1/6) - YouTube Automorphic Forms and Optimization in Euclidean Space(2/6) - YouTube

楽天主義

倫理的な問題とも実践的に結びつきにくいと批判された。 しかし、ライプニッツの最善説(英: optimism)は、現代における最適化(英: optimization)の概念を先取りする内容となっている。フランスの科学史家ミシェル・セールは、ライプニッツの数理モデルに動的構造主義からの解釈を与えた。

行列値関数

method for the matrix square root based on a sphere constrained optimization problem, JSIAM Letters, 8 (2016), pp.17-20. ^ a b Hargreaves, G. I., & Higham

焼きなまし法

“Thermodynamical approach to the traveling salesman problem: An efficient simulation algorithm” (英語). Journal of Optimization Theory and Applications 45: 41-51. doi:10