最优化理论与方法-引言和预备知识
引言和预备知识
引言
- Optimization
- 所谓最优化或优化问题通常泛指各类定量决策问题,即如
何在各种限制约束之下,寻找解决问题的最佳可⾏⽅案,
使得⼀项或者多项衡量指标达到某种意义上的最优。 - 这种⼒求达到最优或遵循最优的原则可以说是⼀种⾮常⾃
然和普遍存在的决策⽬标。通常,我们不仅想找到解决问
题的可⾏⽅案,还总是希望找到⼀个最好的可⾏⽅案。 - 甚⾄,这也是宇宙万物的⼀种变化规律。
- 所谓最优化或优化问题通常泛指各类定量决策问题,即如
-
优化的过程
-
数学规划的一般形式:
其中:
:决策变量 :目标函数 :约束函数 :可行域
-
数学规划(Mathematical Programming)的分类
- 线性 / 非线性 (如:二次规划、凸规划)
- 光滑 / 非光滑
- 凸 / 非凸
- 连续 / 离散 (如:整数规划、混合整数规划)
- 静态 / 动态 (如:动态规划)
- 确定性 / 随机性 (如:随机规划、鲁棒优化)
- 有约束 / 无约束
预备知识
线性代数基础知识
-
向量和矩阵
- 向量通常用小写字母表示,矩阵通常用大写字母表示。
- 长度为
的实向量空间记为 。 阶实矩阵空间记为 。 - 若矩阵
满足 ,则称 为对称矩阵。 - 对称矩阵
称为正定(记作 ),如果
- 若对任意
,有
则称为半正定(记作 )。
-
范数
-
一般来说,一个范数
是一个实值函数,满足以下性质: - 非负性:对所有
,有 ; - 正定性:
当且仅当 ; - 齐次性:对任意实数
,有 ; - 三角不等式:对所有
,有 。
- 非负性:对所有
-
对于矩阵范数,以下性质有用但非必需:
- 相容性(次可乘性):对任意可乘的矩阵
和 ,有
- 相容性(次可乘性):对任意可乘的矩阵
-
-
向量范数
-
范数:
-
欧几里得范数(
范数):
-
范数:
-
范数( ):
-
加权范数(由正定矩阵诱导):
,其中 为对称正定矩阵(即 ) -
“范数”:
向量中非零元素的个数。 严格来说,
并不满足范数的齐次性,因此不是真正的范数。
-
-
向量范数的性质
-
内积定义:
向量与 的内积记为
-
Hölder 不等式:
对任意满足 ,有
-
对偶范数表示:
范数可通过对偶形式表示为
-
特例 1:
(Cauchy–Schwarz 不等式)
-
特例 2:
,
且
-
欧几里得范数与内积的关系:
-
向量范数的等价性:
在中,任意两种向量范数 与 均满足
特别地,常见范数之间有如下具体关系:
-
-
矩阵范数
-
最常用的矩阵范数是由向量范数诱导的范数(也称为算子范数或诱导范数),定义为:
-
1-范数(列和范数):
即所有列向量绝对值之和的最大值。 -
2-范数(谱范数):
其中是 的最大特征值。 -
-范数(行和范数):
即所有行向量绝对值之和的最大值。 -
Frobenius 范数(弗罗贝尼乌斯范数):
-
迹(Trace)的性质:
即两个矩阵对应元素乘积之和(等价于向量化后的内积)。 -
Frobenius 范数的展开公式:
-
正交矩阵(Orthogonal Matrix)的性质:
若为正交矩阵,则满足:
并且保持以下范数不变:
-
-
Sherman-Morrison公式
-
假设原始矩阵
,且扰动后的矩阵为 ,其中 。 -
如果已知
,如何高效地计算扰动矩阵 的逆矩阵? -
步骤 1:求解
首先,假设矩阵
的逆矩阵形式为 ,则 的值为:
由此得出:
因此:
-
步骤 2:利用上述关系计算
其次,利用上述关系,我们有:
其中要求。 -
通过以上步骤,我们可以高效地计算出扰动矩阵
的逆矩阵,而不需要重新进行完整的矩阵求逆运算。这种方法在处理大型矩阵时特别有用,因为它避免了高计算复杂度的直接求逆过程。
-
-
, 记号 -
设
是一个实变量的实值函数。 -
记号
表示当 时, 趋于零的速度至少与 一样快。
更精确地,存在常数,使得
-
记号
表示 趋于零的速度比 更快,即
-
在算法分析中,大
符号通常用于描述渐近上界(当 ):
- 例如:
。若算法复杂度为 ,则输入规模 翻倍时,运行时间约增至 8 倍(对大 而言)。
- 例如:
-
在数值分析或泰勒展开中,大
和小 常用于描述逼近误差(当 ):
-
例如,当
时:
且更精细地,
-
多元函数分析
-
梯度和Hessian矩阵
-
设
是一个 元实值函数:
-
函数
的一阶偏导数组成的向量称为梯度(gradient),记作 :
-
函数
的二阶偏导数组成的矩阵称为Hessian 矩阵(或简称 Hessian),记作 ,其 元素定义为:
-
若
的二阶偏导数连续,则 Hessian 矩阵是对称的,即:
-
练习:计算以下函数的梯度与 Hessian 矩阵:
解:
-
练习:计算以下函数的梯度与 Hessian 矩阵:
解:
-
-
雅可比矩阵
-
考虑向量值函数
:
-
其 Jacobian 矩阵 是一个
矩阵,第 行第 列元素为 ,即:
-
练习:计算
的 Jacobian。 -
Jacobian 为:
-
-
链式法则
-
求复合函数导数的法则称为链式法则(chain rule)。
-
考虑函数
,其中每个变量 本身是另一组变量 的函数,即 。 -
定义复合函数
,则其梯度满足:
其中是向量值函数 的 Jacobian 矩阵(大小为 ),因此 。 -
例如:若
连续可微,定义 ,其中 , ,则
-
-
方向导数
-
若
连续可微, ,则 在点 沿方向 的方向导数定义为:
-
为验证该公式,定义辅助函数:
-
注意到:
-
由链式法则,
因此,即方向导数等于梯度与方向向量的内积。
-
-
泰勒级数
-
泰勒级数(Taylor series)是一种在指定点
附近近似函数 的工具,其近似结果是一个多项式。 -
只要函数具有足够阶的导数,泰勒级数就可应用,常见用途包括:
- 在
附近估计难以直接计算的函数值; - 利用近似多项式的导数或积分来估计原函数的导数或积分;
- 推导求根、优化等数值算法。
- 在
-
对一元函数
(具有 阶连续导数),在点 处的 阶泰勒展开为:
-
前两项给出函数在
处的切线方程:
-
前三项给出二次近似。
-
对多元函数
,二阶泰勒展开为:
-
泰勒级数还有带余项的形式。若取前三项,则:
- 一元情形:
- 多元情形:
其中是介于 与 之间的某一点。
- 一元情形:
-
通过分析余项的上界,可以评估近似的精度。更高阶项虽可写出,但符号复杂,本课程不作要求。
-
练习:考虑函数
在点处,用二阶泰勒公式近似计算 。 已知:
令
,则二阶泰勒近似为:
计算各项:
- $p^T \nabla^2 f(x_0) p =
(0.1,, 0.2)
\begin{pmatrix} 18 & 22 \ 22 & 8 \end{pmatrix}
\begin{pmatrix} 0.1 \ 0.2 \end{pmatrix}
= (0.1)(18\cdot0.1 + 22\cdot0.2) + (0.2)(22\cdot0.1 + 8\cdot0.2)
= 0.62 + 0.76 = 1.38$
因此:
-
凸集与凸函数
-
仿射
-
一个集合
称为仿射集(affine set),如果对任意 和任意实数 ,都有
-
当
和 是 中两个不同的点时,所有形如 ( )的点构成通过 和 的直线。
-
由仿射集的定义可归纳得出:
若是仿射集, ,且系数满足 ,则
-
换句话说,仿射集包含其任意点的仿射组合。
-
仿射组合(Affine Combination)定义为:
-
例如,集合
(线性方程组的解集)是一个仿射集。 -
给定任意集合
,其所有仿射组合构成的集合称为 的仿射包(affine hull),记作 ,即
-
-
凸
-
一个集合
称为凸集(convex set),如果对任意 和任意 ,都有
-
换句话说,若
和 属于 ,则连接 与 的线段也完全包含在 中。
-
点
(其中 )称为 与 的凸组合(convex combination)。 -
凸组合的一般形式:
-
一个集合是凸集,当且仅当它包含其任意点的所有凸组合。
-
给定集合
,其所有凸组合构成的集合称为 的凸包(convex hull),记作 ,即
-
凸集的基本性质:
- 若
和 是凸集,则以下集合也是凸集: (标量乘法, ), (Minkowski 和), , (交集,若非空)。
- 按约定,空集
被视为凸集。
- 若
-
-
超平面和半空间
-
超平面(Hyperplane)定义为:
-
半空间(Halfspace)分为两类:
- 闭下半空间:$ H^+ = { x \mid a^T x \leq b } $
- 闭上半空间:$ H^- = { x \mid a^T x \geq b } $
其中
。 -
超平面和半空间都是凸集。
-
多面体(Polyhedron)是指有限个半空间与超平面的交集。
-
-
范数球和范数锥
-
范数球(Norm Ball):以
为中心、半径为 的范数球定义为
常见的范数球包括:
-球: -球(欧几里得球): -球:
-
范数锥(Norm Cone):
其中,欧几里得范数锥也称为二阶锥(Second-Order Cone)或冰激凌锥(Ice-Cream Cone)。
- 范数球和范数锥都是**凸集**。 -
-
锥和锥组合
-
一个集合
称为锥(cone),如果对任意 和任意 ,都有
-
锥组合(Conic Combination,或称非负组合)是指形如
的线性组合,其中, 。(可推广到任意有限项) -
一个集合称为凸锥(convex cone),如果它包含其任意点的所有锥组合。
-
等价地,集合
是凸锥,当且仅当对任意 和任意 ,都有
-
总结
-
-
凸集分离
设为两个非空凸集。若存在非零向量 和实数 ,使得
则称超平面
分离(separates)集合和 。 进一步,如果
则称超平面严格分离(strictly separates) 和 ,其中 和 分别表示 和 的内部。 -
投影定理
设是一个非空闭凸集,点 但 。 -
存在唯一最近点:
存在唯一的点,使得
-
最优性条件:
是 到 的最近点,当且仅当
-
证明:
(1) 存在唯一性
- 距离函数
在闭集 上连续,且 非空 → 最小值可达(存在性)。 - 因为
是严格凸函数,而 是凸集 → 最小值点唯一。
(2) 最优性条件
-
必要性:若
是最近点,则对任意 ,线段上的点 (由凸性)。
函数在 处最小,其导数 ,即
-
充分性:若
对所有 成立,则
所以确实是最接近 的点。
- 距离函数
-
-
点与凸集分离定理
设是一个非空闭凸集,点 但 。则存 在非零向量 和实数 ,使得
这表示存在超平面
严格分离点与集合 :整个集合 位于超平面的一侧(含边界),而点 严格位于另一侧。 -
证明:
设是非空闭凸集, 。
由投影定理,存在唯一的使得 最小,且满足
整理不等式得:
令
。因为 ,所以 。
上式变为:
又因为
,
所以对所有有:
令
,则
即超平面严格分离点 与集合 。
-
-
支撑超平面
-
设
是非空集合,点 (即 是 的边界点)。
若存在非零向量,使得
或
则称超平面
为集合在点 处的一个支撑超平面。 -
若
是非空凸集,则在其每一个边界点处都存在至少一个支撑超平面。
-
-
两个凸集的分离定理
-
设
为两个非空凸集,且 。
则存在一个超平面分离与 ,即存在非零向量 ,使得
-
证明:
令。
由于和 均为凸集,其差集 也是凸集;又因 ,故 。 考虑闭包
,它仍是凸集且不包含原点。由点与闭凸集的分离定理,存在非零向量 ,使得
对任意
、 ,有 ,代入得
即所求分离不等式成立。
-
-
Farkas 引理
设, 。则以下两个系统中有且仅有一个有解: -
系统 (1):
-
系统 (2):
其中
, 。 -
几何理解:
-
-
凸函数
-
设
为凸集,函数 称为 凸函数,如果对任意 和任意 ,都有
-
若上述不等式对所有
和 严格成立,即
则称为 严格凸函数。 -
凸函数(或严格凸函数)的相反数称为 凹函数(或严格凹函数)。
-
线性函数既是凸函数,也是凹函数。
- 一阶条件(适用于定义在凸集
上的可微函数 ): -
函数
在 上是凸函数,当且仅当
-
函数
在 上是严格凸函数,当且仅当
-
该条件表明:凸函数在其任意点处的一阶泰勒展开是全局下界;严格凸时,该下界在其他点严格成立。
-
二阶条件(适用于定义在开凸集
上的二阶连续可微函数 ): -
函数
在 上是凸函数,当且仅当其 Hessian 矩阵半正定,即
-
若对所有
,Hessian 矩阵正定,即
则是严格凸函数。
(注:这是严格凸的充分条件,但非必要条件。)
-
-
一维凸函数的例子:
-
指数函数:
,其中 ,在 上是凸函数。 -
幂函数:
,定义在 上,当 或 时为凸函数。 -
负对数函数:
,在 上是凸函数。 -
负熵函数:
,在 上是凸函数(约定 可将其连续延拓至 )。 -
需要注意的是,并非所有凸函数都是可微的。
- 一个简单的不可微凸函数例子是绝对值函数:
该函数在处不可导,但在整个 上是凸函数。
- 一个简单的不可微凸函数例子是绝对值函数:
-
-
上方图
-
设
是定义在集合 上的实值函数。
函数的上镜图(epigraph)定义为
它表示中位于函数图像之上或恰好在图像上的所有点构成的集合。 -
设
是非空凸集,则函数 是凸函数 当且仅当 其上镜图 是 中的凸集。
这一定理建立了凸函数与凸集之间的等价关系,常用于证明某些函数的凸性。
-
-
水平集 (Level Set)
假设是定义在 上的实值函数。对于任意 ,集合 称为函数
的 水平集。 若
是非空凸集,且 是定义在 上的凸函数,则对任意 ,水平集 是一个凸集。 - 水平集是所有满足
的点 构成的集合。 - 如果函数
是凸函数,并且其定义域是凸集,则该函数的所有水平集也是凸集。这为我们判断某些集合是否为凸提供了一种方法。
- 水平集是所有满足
-
-
凸规划
-
凸规划(Convex Programming)是指如下形式的优化问题:
其中,可行域是一个凸集,目标函数 在 上是凸函数。 -
示例:
考虑问题
若目标函数是凸函数,且每个约束函数 是凹函数,则该问题是凸规划。 -
理由:
由于是凹函数,集合 是凸集(凹函数的上水平集为凸集)。
多个凸集的交集仍是凸集,因此可行域
是凸集。结合为凸函数,该问题满足凸规划的定义。
-
-
可行性
-
考虑如下形式的约束条件:
-
满足所有约束条件的点称为可行点(feasible point)。
所有可行点构成的集合称为可行域(feasible region)或可行集。 -
在一个可行点
处,不等式约束 被称为: - 起作用(active / binding),如果
(即该点位于约束边界上); - 不起作用(inactive / nonbinding),如果
(即该点位于约束内部)。
- 起作用(active / binding),如果
-
所有等式约束在任意可行点处均视为起作用。
-
在可行点
处的起作用集(active set)定义为在该点处所有起作用约束(包括全部等式约束和满足 的不等式约束)的下标集合。 -
所有满足至少一个不等式约束起作用(即
对某个 成立)的可行点,构成可行域的边界。 -
其余的可行点(即所有不等式约束均严格成立:
对所有 )称为可行域的内点。 -
对于无约束优化问题,可行集
即为整个 。
-
-
最优性
-
若点
满足
则称为函数 在集合 上的全局最小值点(global minimizer)。 -
若进一步满足
则称为 在 上的严格全局最小值点(strict global minimizer)。
-