参考书籍《最优化:建模、算法与理论》
在数学分析课程中,我们学习过 Weierstrass定理,即定义在紧集上的连续函数一定存在最大 (最小) 值点.而在许多实际问题中,定义域可能不是连续的,目标函数也不一定连续,因此需要将此定理推广来保证最优化问题解的存在性,下面的推广定理给出了最优解的存在性条件。
定理 5.1 (Weierstrass 定理) 考虑一个适当且闭的函数 f : X → ( − ∞ , + ∞ ] f : {\mathcal X} → (−∞,+∞] f:X→(−∞,+∞],假设下面三个条件中任意一个成立:
(1) d o m f = d e f { x ∈ X : f ( x ) < + ∞ } {\bf dom} f \overset{def}{=} \{x ∈ {\mathcal X} : f(x) < +∞\} domf=def{x∈X:f(x)<+∞}是有界的;
(2) 存在一个常数 γ − \overset{-}{\gamma} γ− 使得下水平集 C γ − = d e f { x ∈ X : f ( x ) ⩽ γ − } C_{\overset{-}{\gamma}} \overset{def}{=} \{x ∈ {\mathcal X} : f(x) ⩽ \overset{-}{\gamma}\} Cγ−=def{x∈X:f(x)⩽γ−}是非空且有界的;
(3) f 是强制的,即对于任一满足 ∥ x k ∥ → + ∞ ∥x^k∥ → +∞ ∥xk∥→+∞的点列 { x k } ⊂ X \{x^k\} ⊂ {\mathcal X} {xk}⊂X,都有 lim k → ∞ f ( x k ) = + ∞ \lim_{k→∞} f(x^k) = +∞ limk→∞f(xk)=+∞,
那么,问题 min x ∈ R n f ( x ) , s . t . x ∈ X \min_{x∈R^n} f(x), s.t. x ∈ {\mathcal X} minx∈Rnf(x),s.t.x∈X的最小值点集 { x ∈ X ∣ f ( x ) ⩽ f ( y ) , ∀ y ∈ X } \{x ∈ {\mathcal X} | f(x) ⩽ f(y), ∀y ∈ {\mathcal X} \} {x∈X∣f(x)⩽f(y),∀y∈X} 是非空且紧的。
三个条件在本质上都是保证 f(x) 的最小值不能在无穷远处取到,因此我们可以仅在一个有界的下水平集中考虑 f(x) 的最小值.同时要求 f(x) 为适当且闭的函数,并不需要 f(x) 的连续性
定义 5.1 (强拟凸函数) 给定凸集 X 和函数 f : X → ( − ∞ , + ∞ ] f : {\mathcal X} → (−∞,+∞] f:X→(−∞,+∞],如果对任意的 x ≠ y x \neq y x=y 和 λ ∈ (0, 1),都有 f ( λ x + ( 1 − λ ) y ) < max { f ( x ) , f ( y ) } f(λx + (1 − λ)y) < \max\{ f(x), f(y)\} f(λx+(1−λ)y)<max{f(x),f(y)},那么我们称函数 f 是强拟凸的。
强拟凸函数的几何意义是定义域内任何两点之间线段上的函数值不会大于两个端点处函数值的最大值,一般来说,强拟凸函数不一定是凸函数,但其任意一个下水平集都是凸集,并可以包含一部分性质较好的非凸函数。
注:此处凸函数的定义与同济版高等数学中凸函数的定义不同。
定理 5.2 (唯一性定理) 对于问题 min x ∈ R n f ( x ) , s . t . x ∈ X \min_{x∈R^n} f(x), s.t. x ∈ {\mathcal X} minx∈Rnf(x),s.t.x∈X,设 X {\mathcal X} X 是 R n R^n Rn 的一个非空、紧且凸的子集,如果 f : X → ( − ∞ , + ∞ ] f : {\mathcal X} → (−∞,+∞] f:X→(−∞,+∞]是适当、闭且强拟凸函数,那么存在唯一的 x ∗ x^∗ x∗ 满足 f ( x ∗ ) < f ( x ) , ∀ x ∈ X \ { x ∗ } f(x^∗) < f(x), ∀x ∈ {\mathcal X} \backslash \{x^∗\} f(x∗)<f(x),∀x∈X\{x∗}
利用此结论,可知对任何定义在有界凸集上的闭强凸函数,其最优解都是唯一存在的,但是对于一般的凸函数,其最优解可能不唯一。
无约束可微优化问题通常表示形式为: min x ∈ R n f ( x ) \min_{x∈R^n} f(x) minx∈Rnf(x)。
定义 5.2 (下降方向) 对于可微函数 f 和点 x ∈ R n x ∈ R^n x∈Rn,如果存在向量 d 满 足 ∇ f ( x ) T d < 0 ∇ f(x)Td < 0 ∇f(x)Td<0,那么称 d 为 f 在点 x 处的一个下降方向。
定理 5.3 (一阶必要条件) 假设 f 在全空间 R n R^n Rn 可微.如果 x ∗ x^∗ x∗ 是一个局部极小点,那么 ∇ f ( x ∗ ) = 0 ∇ f(x^∗) = 0 ∇f(x∗)=0
我们称满足 ∇ f ( x ) = 0 ∇ f(x) = 0 ∇f(x)=0的点 x 为 f 的稳定点(有时也称为驻点或临界点)。
在没有额外假设时,如果一阶必要条件满足,我们仍然不能确定当前点是否是一个局部极小点.这里考虑使用二阶信息来进一步判断给定点的最优性。
定理 5.4 假设 f 在点 x ∗ x^∗ x∗ 的一个开邻域内是二阶连续可微的,则以下最优性条件成立:
二阶必要条件 如果 x ∗ x^∗ x∗ 是 f 的一个局部极小点,那么 ∇ f ( x ∗ ) = 0 , ∇ 2 f ( x ∗ ) ⪰ 0 ∇ f(x∗) = 0, ∇^2 f(x∗) ⪰ 0 ∇f(x∗)=0,∇2f(x∗)⪰0;
二阶充分条件 如果在点 x ∗ x^∗ x∗ 处有 ∇ f ( x ∗ ) = 0 , ∇ 2 f ( x ∗ ) ≻ 0 ∇ f(x∗) = 0, ∇^2 f(x∗) ≻ 0 ∇f(x∗)=0,∇2f(x∗)≻0成立,那么 x ∗ x^∗ x∗ 为 f 的一个局部极小点。
二阶最优性条件给出的仍然是关于局部最优性的判断.对于给定点的全局最优性判断,我们还需要借助实际问题的性质,比如目标函数是凸的、非线性最小二乘问题中目标函数值为 0 等。
0 ∈ ∂ f ( x ∗ ) 0 ∈ ∂ f(x^∗) 0∈∂f(x∗) 是 x ∗ x^∗ x∗ 为全局最优解的充要条件.这个结论比定理5.3要强,其原因是凸问题有非常好的性质,它的稳定点中不存在鞍点。因此,可以通过计算凸函数的次梯度集合来求解其对应的全局极小点,相较于非凸函数,凸函数的最优性分析简单,计算以及验证起来比较方便,因此在实际建模中受到广泛的关注。
在实际问题中,目标函数不一定是凸函数,但它可以写成一个光滑函数与一个非光滑凸函数的和,形如: min x ∈ R n ψ ( x ) = d e f f ( x ) + h ( x ) \min_{x∈R^n}ψ(x) \overset{def}{=} f(x) + h(x) minx∈Rnψ(x)=deff(x)+h(x),其中f为光滑函数(可能非凸),h为凸函数(可能非光滑)。对于其任何局部最优解,我们给出如下一阶必要条件:
定理 5.6 (复合优化问题一阶必要条件) 令 x ∗ x^∗ x∗ 为一个局部极小点,那么 − ∇ f ( x ∗ ) ∈ ∂ h ( x ∗ ) −∇ f(x^∗) ∈ ∂h(x^∗) −∇f(x∗)∈∂h(x∗),其中 ∂ h ( x ∗ ) ∂h(x^∗) ∂h(x∗) 为凸函数 h 在点 x ∗ x^∗ x∗ 处的次梯度集合。
注意,由于目标函数可能是整体非凸的,因此一般没有一阶充分条件。
对偶很容易联想到对称之类的概念,这个翻译带有迷惑性,数学中的对偶问题其实是duality provides a different angle to look at some mathematical objects
,也就是将复杂问题转换为等价的简单问题,分为强对偶和弱对偶。
后面都将以一般约束化问题为例,一般约束化问题形式为:
min x ∈ R n f ( x ) ; c i ( x ) ⩽ 0 , i ∈ τ ; c i ( x ) = 0 , i ∈ ξ ( 5.4.1 ) \min_{x \in R^n} f(x); ci(x) ⩽ 0, i ∈ \tau;ci(x) = 0, i ∈ \xi\quad(5.4.1) x∈Rnminf(x);ci(x)⩽0,i∈τ;ci(x)=0,i∈ξ(5.4.1)