最適化問題とは、与えられた条件のもとで目的となる関数を最大化または最小化する問題を指します。最適化問題は、数理最適化としても知られ、多くの工学や科学分野で応用されています。
最適化問題は、次のような一般的な形式を持っています。
最大化問題:
maxxf(x)
制約条件:
gi(x)≤0,i=1,2,3,…,m
hj(x)=0,j=1,2,3,…,n
最小化問題:
minxf(x)
制約条件:
gi(x)≤0,i=1,2,3,…,m
hj(x)=0,j=1,2,3,…,n
ここで、xは決定変数(decision variable)であり、f(x)は最適化したい目的関数(objective function)です。gi(x)≤0は不等式制約条件(inequality constraint)であり、hj(x)=0は等式制約条件(equality constraint)です。また、mとnは制約条件の数を表します。
最適化問題の解法は、一般には解析的解法と数値的解法に分けられます。解析的解法は、解析的手法を用いて最適解を求めます。一方、数値的解法は、計算機を用いて最適解を近似的に求めます。
代表的な最適化問題の数値的解法としては、線形計画法(linear programming)、非線形最小二乗法(nonlinear least squares)、ニュートン法(Newton's method)、共役勾配法(conjugate gradient method)などがあります。これらのアルゴリズムは、最適化問題の性質によって使い分けられます。
最適化問題は、多くの工学や科学分野で応用されています。例えば、工場の生産計画、株式投資、トラフィック制御、航空機設計などが挙げられます。最適化問題を解くことで、より効率的な生産や投資、トラフィックの渋滞緩和、より安全で燃費の良い航空機設計などが実現されます。