約束優化問題(亦譯為受約束的最優化問題)是一類數學最優化問題,它由目標函數以及與目標函數中的變量相關的約束條件兩部分組成,優化過程則為在約束條件下最優化(最大化或最小化)目標函數。
一個約束最小化問題可以寫成如下形式:
min f ( x ) s u b j e c t t o g i ( x ) = c i h j ( x ) ≧ d j {\displaystyle {\begin{array}{rcll}\min &~&f(\mathbf {x} )&\\\mathrm {subject~to} &~&g_{i}(\mathbf {x} )=c_{i}&\quad \\&~&h_{j}(\mathbf {x} )\geqq d_{j}\end{array}}}
其中 f ( x ) {\displaystyle f(\mathbf {x} )} 是目標函數; g i ( x ) = c i {\displaystyle g_{i}(\mathbf {x} )=c_{i}} 與 h j ( x ) ≧ d j {\displaystyle h_{j}(\mathbf {x} )\geqq d_{j}} 是求解這個目標函數需要滿足約束條件( i {\displaystyle i} 和 j {\displaystyle j} 標識第幾個約束條)。在這個例子中,所有約束條件都是必須滿足的,為硬約束。在有些問題中,目標函數是一些成本函數或者效用函數的加總,個體成本函數或者效用函數的約束條件只需要儘量滿足,而不是必須滿足,這種情況下的約束條件為軟約束。