S \mathcal{S} S を空でない任意の集合とする。S \mathcal{S} S 上の目的関数 (objective function)と呼ばれる関数f : S → R : x ↦ f ( x ) f \colon \mathcal{S} \to \mathbb{R} \colon x \mapsto f(x) f : S → R : x ↦ f ( x ) を最小化(または最大化)する点x ∗ x ^ \ast x ∗ を求める問題をS \mathcal{S} S 上の最適化問題 (optimization problem)という。この問題の解x ∗ x ^ \ast x ∗ は問題の最適解 (optimal solution)という。
特に関数f f f がS \mathcal{S} S 上の連続関数であるとき、その最適化問題は連続最適化問題 (continuous optimization problem)と呼ばれる。
関数f f f の最小値(minimum value)、最大値(maximum value)はそれぞれ
min x ∈ S f ( x ) , max x ∈ S f ( x ) \underset{ x \in \mathcal{S} }{\operatorname{min}} \, f(x) \, , \,\, \underset{ x \in \mathcal{S} }{\operatorname{max}} \, f(x) x ∈ S min f ( x ) , x ∈ S max f ( x ) と表記される。
最適解x ∗ x ^ \ast x ∗ は一般にひとつとは限らない。そこで関数f f f の最小値を与える最適解の集合を
arg min x ∈ S f ( x ) \underset{x \in \mathcal{S}}{\operatorname{arg} \operatorname{min}} \, f(x) x ∈ S arg min f ( x ) と表記する。最適解の集合は空集合になることもあるし、最適解が無数に存在することもある。arg min \operatorname{arg}\operatorname{min} arg min は「argument of minimum(最小値を与える引数)」の略である。この最適解の集合を求める問題をS \mathcal{S} S 上の最小化問題 (minimization problem)という。同様に、関数f f f の最大値を与える最適解の集合を
arg max x ∈ S f ( x ) \underset{x \in \mathcal{S}}{\operatorname{arg} \operatorname{max}} \, f(x) x ∈ S arg max f ( x ) と表記する。arg max \operatorname{arg}\operatorname{max} arg max は「argument of minimum(最大値を与える引数)」の略である。この集合を求める問題をS \mathcal{S} S 上の最大化問題 (maximization problem)という。
関数f f f の符号を反転すれば最小化問題と最大化問題は入れ替えることができるので、最適化問題ではどちらか一方を考えれば十分であり、大抵は最小化問題として扱うことが多い。
最適化問題には制約条件 (constraint、束縛条件ということもある)を課す場合がある。たとえば正定値対称行列A A A の最大の固有値に対応する固有ベクトルを求めるには、レイリー商
f ( x ) = x T A x f(x) = x ^ \mathrm{T} A x f ( x ) = x T A x の最大化問題を考えることになる。しかしこの目的関数はx x x のノルムを大きくしていけばいくらでも大きな値をとるので、その最適解は∥ x ∥ = + ∞ \| x \| = +\infty ∥ x ∥ = + ∞ となるような点x x x の集合という無意味な解になる。実際、固有ベクトルにはノルムの自由度が存在して、重要なのはその方向だけなので、∥ x ∥ = 1 \| x \| = 1 ∥ x ∥ = 1 の範囲で解を探せば十分である。この最大化問題は
arg max x ∈ R n x T A x s.t. ∥ x ∥ = 1 \underset{x \in \mathbb{R} ^ n}{\operatorname{arg} \operatorname{max}} \, x ^ \mathrm{T} A x\quad \operatorname{s.t.} \|x\| = 1 x ∈ R n arg max x T A x s.t. ∥ x ∥ = 1 と書く。「s.t. \operatorname{s.t.} s.t. 」は「such that(〜を満たすような)」または「subject to(〜の条件下で)」の略である。どちらと読むかはその人の好みでよい。
制約条件のついた最適化問題を制約付き最適化問題 (constrained optimization problem)という。g ( x ) = c g(x) = c g ( x ) = c の形で書かれる制約条件を等式制約 (equality constraint)といい、h ( x ) ≤ c h(x) \leq c h ( x ) ≤ c の形で書かれる制約条件を不等式制約 (inequality constraint)という。h ( x ) < c h(x) < c h ( x ) < c の形で不等式制約を設けると目的関数の最大値や最小値の存在を保証するのが難しくなるので、この形は連続最適化の文脈ではほとんど見かけない。
等式制約と不等式制約は同時に課してもよいし、また同時にいくつ課してもよい。したがって制約付き最適化問題は一般に
arg max x ∈ R n f ( x ) s.t. E i { g i ( x ) = c i } , E j { h j ( x ) ≤ d j } \underset{x \in \mathbb{R} ^ n}{\operatorname{arg} \operatorname{max}} \, f(x) \quad \operatorname{s.t.} \underset{i}{{\sf E}} \left\{ g _ i (x) = c _ i \right\}, \underset{j}{{\sf E}} \left\{ h _ j (x) \leq d _ j \right\} x ∈ R n arg max f ( x ) s.t. i E { g i ( x ) = c i } , j E { h j ( x ) ≤ d j } という形で表される。ただしE {\sf E} E は「列挙」を意味する記号で
E i { g i ( x ) = c i } ≡ g 1 ( x ) = c 1 , g 2 ( x ) = c 2 , … , g n ( x ) = c n \underset{i}{{\sf E}} \left\{ g _ i (x) = c _ i \right\} \equiv g _ 1(x) = c _ 1, g _ 2(x) = c _ 2, \ldots, g _ n(x) = c _ n i E { g i ( x ) = c i } ≡ g 1 ( x ) = c 1 , g 2 ( x ) = c 2 , … , g n ( x ) = c n と定義する。詳しくは
数学記号記法一覧 を参照のこと。
制約付き最適化問題に対して、制約条件のない最適化問題は制約なし最適化問題 (unconstrained optimization problem)という。