M11 · 第 2 章 · 第一编 优化问题与凸性

凸集、凸函数与次梯度

用线段判据和 Jensen 不等式建立凸性,以一阶支撑不等式连接梯度与全局下界,区分严格凸和强凸,并用次梯度处理绝对值与分段线性函数。

报告页面错误
预备知识优化模型、可行域与最优性梯度

本章目标

  1. 用任意两点间线段是否留在集合内判断凸集,并利用交集规则构造新凸集。
  2. 应用凸函数定义与 Jensen 不等式比较加权平均处的函数值。
  3. 对可微函数使用一阶支撑不等式验证凸性并判断全局最优。
  4. 准确区分凸、严格凸和强凸,说明唯一性、曲率与存在性结论的边界。
  5. 计算绝对值和最大仿射函数的次微分,用零次梯度条件求不可微凸问题的最优解。
页面阅读位置0% · 仅保存在此浏览器
章节未开始
本册完成进度0/6 章 · 0%
本页目录

线段保留的几何结构

一般可行域可能有洞、断裂或弯曲分支,局部下降方向未必能通向远处更好的点。凸集排除了这些几何障碍:集合内任意两点之间的整条线段仍留在集合内。

凸集

集合 CRnC\subseteq\mathbb R^n 称为凸集,如果对任意 x,yC\mathbf x,\mathbf y\in C 和任意 λ[0,1]\lambda\in[0,1],都有

λx+(1λ)yC.\lambda\mathbf x+(1-\lambda)\mathbf y\in C.

λx+(1λ)y\lambda\mathbf x+(1-\lambda)\mathbf y 称为两点的凸组合。推广到有限多个点时,若 λi0\lambda_i\ge0i=1kλi=1\sum_{i=1}^k\lambda_i=1,则 iλixi\sum_i\lambda_i\mathbf x_i 是这些点的凸组合。

仿射子空间、半空间、欧氏球、长方体和概率单纯形都是凸集。任意族凸集的交集仍凸,因为交集中两点的线段同时留在每一个成员中。并集一般不保凸:两个分离圆盘各自凸,它们的并集却漏掉跨越圆盘的线段中部。等式 Ax=bA\mathbf x=\mathbf b、线性不等式 GxhG\mathbf x\le\mathbf h 以及范数球约束的交集因而产生大量凸可行域。

例 1:验证带状区域并识别非凸补集

考虑

C={(x,y):xy1, x+y3}.C=\{(x,y):|x-y|\le1,\ x+y\le3\}.

绝对值约束等价于两个线性不等式

xy1,yx1.x-y\le1,\qquad y-x\le1.

所以 CC 是三个半空间的交集,必为凸集。也可直接取 u,vC\mathbf u,\mathbf v\in C:线性函数在凸组合处等于端点值的同一凸组合,因此三个不等式都继续成立。

相反,集合 D={(x,y):x2+y21}D=\{(x,y):x^2+y^2\ge1\} 不是凸集。点 (1,0)(1,0)(1,0)(-1,0) 都属于 DD,中点 (0,0)(0,0) 却不属于 DD。圆盘是凸的,圆盘外部不是凸的;仅凭边界形状“圆”无法判断凸性。

函数图像位于弦线下方

凸函数的定义需要凸定义域。对最小化而言,函数值在平均点处不高于端点函数值的同权平均,这使局部信息能够给出全局控制。

凸函数

CC 是凸集。函数 f:CRf:C\to\mathbb R 称为凸函数,如果对任意 x,yC\mathbf x,\mathbf y\in Cλ[0,1]\lambda\in[0,1]

f(λx+(1λ)y)λf(x)+(1λ)f(y).f\big(\lambda\mathbf x+(1-\lambda)\mathbf y\big) \le \lambda f(\mathbf x)+(1-\lambda)f(\mathbf y).

若对不同的 x,y\mathbf x,\mathbf y0<λ<10<\lambda<1 总有严格不等式,则 ff 严格凸。把不等号反向便得到凹函数与严格凹函数。

凸函数的上图集

epif={(x,t):xC, tf(x)}\operatorname{epi}f =\{(\mathbf x,t):\mathbf x\in C,\ t\ge f(\mathbf x)\}

是凸集;反过来,上图集凸也刻画了函数凸性。这个视角允许把非光滑折角与光滑曲面放在同一框架内。二阶可微函数在开凸集上凸,当且仅当 Hessian 处处半正定;一维情形退化为 f(x)0f''(x)\ge0。二阶判据方便,但定义本身不要求导数存在。

Jensen 不等式

两点定义可递推到任意有限个点。

有限形式的 Jensen 不等式

ff 在凸集 CC 上凸,xiC\mathbf x_i\in Cλi0\lambda_i\ge0i=1kλi=1\sum_{i=1}^k\lambda_i=1,则

f(i=1kλixi)i=1kλif(xi).f\left(\sum_{i=1}^k\lambda_i\mathbf x_i\right) \le \sum_{i=1}^k\lambda_i f(\mathbf x_i).

k=2k=2 这就是定义。假设结论对 k1k-1 个点成立,令 s=i=1k1λis=\sum_{i=1}^{k-1}\lambda_i。当 0<s<10<s<1 时,把前 k1k-1 个点先按权重 λi/s\lambda_i/s 合成一点,再与 xk\mathbf x_k 使用权重 ss1s1-s;连续两次使用凸性即可完成归纳。s=0s=0s=1s=1 的退化情形直接成立。

Jensen 不等式比较“先平均再代入”和“先代入再平均”。它不说明随机波动一定有利或有害;不等号方向取决于函数是凸还是凹,等号还依赖权重、点的位置和严格性。

例 2:用凸性推导均方不小于均值平方

取凸函数 f(t)=t2f(t)=t^2。对实数 x1,,xnx_1,\ldots,x_n 和相等权重 1/n1/n,Jensen 不等式给出

(1ni=1nxi)21ni=1nxi2.\left(\frac1n\sum_{i=1}^n x_i\right)^2 \le \frac1n\sum_{i=1}^n x_i^2.

记均值为 xˉ\bar x,两边之差可直接复算:

1ni=1nxi2xˉ2=1ni=1n(xixˉ)20.\frac1n\sum_{i=1}^n x_i^2-\bar x^2 =\frac1n\sum_{i=1}^n(x_i-\bar x)^2\ge0.

取数据 1,2,61,2,6,左侧均值平方为 99,右侧均方为 (1+4+36)/3=41/3(1+4+36)/3=41/3,差为 14/314/3。只有所有 xix_i 相等时,严格凸性允许等号成立。这里的结论来自平方函数的凸性,不应把同样方向套到凹函数,例如 logt\log t

一阶支撑不等式

ff 在开凸集上可微,则凸性等价于每一点的切平面都是全局下界:

f(y)f(x)+f(x)T(yx)对所有 x,y.f(\mathbf y) \ge f(\mathbf x) +\nabla f(\mathbf x)^\mathsf T(\mathbf y-\mathbf x) \quad\text{对所有 }\mathbf x,\mathbf y.

固定 x,y\mathbf x,\mathbf y 并令 ϕ(t)=f(x+t(yx))\phi(t)=f(\mathbf x+t(\mathbf y-\mathbf x))。凸性说明割线斜率不小于右导数 ϕ(0)\phi'(0),于是

f(y)f(x)ϕ(0)=f(x)T(yx).f(\mathbf y)-f(\mathbf x) \ge\phi'(0) =\nabla f(\mathbf x)^\mathsf T(\mathbf y-\mathbf x).

反向证明把支撑不等式分别用于线段上的点与两个端点,再加权相加。支撑不等式把局部梯度变成对整个定义域有效的仿射下界,这是一般可微函数没有的性质。

例 3:从半正定矩阵得到全局支撑下界

f(x)=12xTQx+cTx,f(\mathbf x) =\frac12\mathbf x^\mathsf TQ\mathbf x +\mathbf c^\mathsf T\mathbf x,

其中 Q=QT0Q=Q^\mathsf T\succeq0。梯度为 f(x)=Qx+c\nabla f(\mathbf x)=Q\mathbf x+\mathbf c。任取 x,y\mathbf x,\mathbf y,直接展开得

f(y)f(x)f(x)T(yx)=12(yx)TQ(yx)0.\begin{aligned} f(\mathbf y)-f(\mathbf x) -\nabla f(\mathbf x)^\mathsf T(\mathbf y-\mathbf x) =\frac12(\mathbf y-\mathbf x)^\mathsf T Q(\mathbf y-\mathbf x)\ge0. \end{aligned}

所以 ff 凸。若存在 x\mathbf x^\star 使 Qx+c=0Q\mathbf x^\star+\mathbf c=0,支撑不等式立即给出 f(y)f(x)f(\mathbf y)\ge f(\mathbf x^\star),故该驻点是全局最优解。

Q=[2000]Q=\begin{bmatrix}2&0\\0&0\end{bmatrix}c=0\mathbf c=\mathbf0,则 f(x,y)=x2f(x,y)=x^2。所有 (0,y)(0,y) 都是全局最优解,说明半正定只保证凸性和全局性,不保证唯一性。

凸、严格凸与强凸

三个概念的结论强度不同。

  • 凸函数允许线性区段和多个最优解;
  • 严格凸函数在凸可行域上至多有一个最优解,但定义不给统一曲率常数;
  • μ\mu-强凸函数满足某个 μ>0\mu>0 的二次下界,定量控制离开最优点后的增长。

对可微函数,μ\mu-强凸可写成

f(y)f(x)+f(x)T(yx)+μ2yx22.f(\mathbf y)\ge f(\mathbf x)+\nabla f(\mathbf x)^\mathsf T(\mathbf y-\mathbf x) +\frac\mu2\lVert\mathbf y-\mathbf x\rVert_2^2.

等价地,f(x)μ2x22f(\mathbf x)-\frac\mu2\lVert\mathbf x\rVert_2^2 是凸函数。二阶可微时, 2f(x)μI\nabla^2 f(\mathbf x)\succeq\mu I 是相应判据。强凸蕴含严格凸,严格凸蕴含凸;反向都不成立。

f(x)=x4f(x)=x^4R\mathbb R 上严格凸,但不是全局强凸,因为 f(0)=0f''(0)=0,不存在统一正数 μ\mu 使二阶曲率处处至少为 μ\muf(x,y)=x2f(x,y)=x^2 是凸函数,却沿 yy 方向完全平坦,既不严格凸也不强凸。 exe^x 严格凸,但在 R\mathbb R 上只有下确界 00 而不取到,说明严格凸保证“至多一个”最优解,不负责解的存在。存在性仍要结合闭定义域、连续性、紧水平集或强制增长等条件。

ff 在凸集上严格凸且存在两个不同最优解 x,y\mathbf x^\star,\mathbf y^\star,它们中点的函数值会严格小于两端共同的最优值,产生矛盾,所以最优解唯一。若只有普通凸性,同样推理只得到“不超过”,最优解集合可以是一条线段或更高维凸集。

次梯度:折角处的支撑斜率

绝对值、最大值和许多正则项在折点不可微,但仍保留凸函数的支撑结构。次梯度把唯一切线推广为所有合法支撑超平面的斜率。

次梯度与次微分

f:CRf:C\to\mathbb R 为凸函数。向量 g\mathbf g 若满足

f(y)f(x)+gT(yx)对所有 yC,f(\mathbf y)\ge f(\mathbf x)+\mathbf g^\mathsf T(\mathbf y-\mathbf x) \quad\text{对所有 }\mathbf y\in C,

则称 g\mathbf gffx\mathbf x 的一个次梯度。全部次梯度组成次微分 f(x)\partial f(\mathbf x)。若 ff 在内点 x\mathbf x 可微,则 f(x)={f(x)}\partial f(\mathbf x)=\{\nabla f(\mathbf x)\}

次微分是一个集合,不是任意挑选的“近似导数”。在定义域内部,凸函数的局部折角可能对应一整段次梯度;每个成员都必须给出全局有效的仿射下界。对无约束凸函数,

x 为全局最优解0f(x).\mathbf x^\star\text{ 为全局最优解} \quad\Longleftrightarrow\quad \mathbf0\in\partial f(\mathbf x^\star).

若零向量属于次微分,定义立即给出 f(y)f(x)f(\mathbf y)\ge f(\mathbf x^\star)。反过来,内点最优处存在水平支撑超平面,零向量是合法次梯度。带约束问题则需把次微分与可行域法锥合并,不能机械要求 0f\mathbf0\in\partial f

例 4:绝对值折点的整段次梯度

f(x)=xf(x)=|x|

f(x)={{1},x<0,[1,1],x=0,{1},x>0.\partial f(x)= \begin{cases} \{-1\},&x<0,\\ [-1,1],&x=0,\\ \{1\},&x>0. \end{cases}

x=0x=0,任取 g[1,1]g\in[-1,1],都有 ygy|y|\ge gy:当 y0y\ge0gyygy\le y,当 y<0y<0gyygy\le -y。若 g>1g>1,取正 yy 就失败;若 g<1g<-1,取负 yy 就失败,所以区间恰好完整描述所有支撑斜率。

现在最小化

F(x)=x+12(x3)2.F(x)=|x|+\frac12(x-3)^2.

x>0x>0 时, F(x)={1+x3}\partial F(x)=\{1+x-3\},令其包含零得到 x=2x=2,与区域条件一致。当 x<0x<0 时方程 1+x3=0-1+x-3=0 给出 x=4x=4,不在该区域;在 x=0x=0 时, F(0)=[1,1]3=[4,2]\partial F(0)=[-1,1]-3=[-4,-2],不含零。因此唯一全局最优解是 x=2x^\star=2,目标值为 2+12=2.52+\tfrac12=2.5

最大仿射函数与局部最优的全局化

有限个仿射函数的逐点最大值

f(x)=max1ik(aiTx+bi)f(\mathbf x)=\max_{1\le i\le k} (\mathbf a_i^\mathsf T\mathbf x+b_i)

是凸函数。若在某点只有第 jj 项达到最大值,函数局部可微且梯度为 aj\mathbf a_j;若有多个活跃项并列,次微分是这些活跃斜率的凸包。

例如

f(x)=max{x,2x}.f(x)=\max\{x,\,2-x\}.

x<1x<1 时活跃斜率为 1-1,当 x>1x>1 时为 11;在 x=1x=1 两项并列, f(1)=conv{1,1}=[1,1]\partial f(1)=\operatorname{conv}\{-1,1\}=[-1,1],包含零。因此 x=1x=1 是全局最优解,最优值为 11

凸问题还有一个关键结论:凸函数在凸可行域上的每个局部最优解都是全局最优解。若局部最优点 x\mathbf x^\star 不是全局最优,存在可行点 y\mathbf y 使 f(y)<f(x)f(\mathbf y)<f(\mathbf x^\star)。对足够小的 t>0t>0,点 xt=(1t)x+ty\mathbf x_t=(1-t)\mathbf x^\star+t\mathbf y 既可行又任意接近 x\mathbf x^\star,而凸性给出

f(xt)(1t)f(x)+tf(y)<f(x),f(\mathbf x_t) \le(1-t)f(\mathbf x^\star)+tf(\mathbf y) <f(\mathbf x^\star),

与局部最优矛盾。该结论依赖“目标凸且可行域凸”两项条件;缺少任一项都可能出现非全局局部极小点。

Hessian 在若干采样点半正定就证明全局凸

二阶判据要求整个开凸定义域内的 Hessian 都半正定。有限采样只能检查有限位置,未覆盖区域仍可能出现负曲率。若函数不可二阶微分,还应回到凸组合定义、上图集或一阶支撑不等式。

不可微就没有一阶最优性条件

不可微凸函数可以用次微分表达一阶条件。零属于次微分时,水平支撑平面已经给出全局最优证明。次梯度条件不能无假设地推广到非凸折角,也不能忽略约束法锥。

练习

练习 1:交集保持凸性,并集通常不保持

证明任意两个凸集 C1,C2C_1,C_2 的交集是凸集。再给出两个凸集,使它们的并集不是凸集。

查看提示
对交集直接检查凸组合;为并集选择分居两个集合的端点。
查看解答

x,yC1C2\mathbf x,\mathbf y\in C_1\cap C_2,则两点同时属于 C1C_1C2C_2。对任意 λ[0,1]\lambda\in[0,1],凸组合在两个集合中都成立,所以属于交集。反例可取 C1=[2,1]C_1=[-2,-1]C2=[1,2]C_2=[1,2]。端点 1-111 属于并集,中点 00 不属于并集,因此并集不是凸集。

练习 2:由 Jensen 推导加权算术—几何均值不等式

xi>0x_i>0λi0\lambda_i\ge0iλi=1\sum_i\lambda_i=1。用 Jensen 不等式证明

ixiλiiλixi.\prod_i x_i^{\lambda_i} \le\sum_i\lambda_i x_i.

说明当所有权重都为正时的等号条件。

查看提示
在正数域上使用凸函数 logx-\log x
查看解答

函数 f(x)=logxf(x)=-\log x(0,)(0,\infty) 上严格凸。Jensen 给出

log(iλixi)iλilogxi.-\log\left(\sum_i\lambda_i x_i\right) \le-\sum_i\lambda_i\log x_i.

两边乘以 1-1 后不等号反向,再取指数,得到

iλixiexp(iλilogxi)=ixiλi.\sum_i\lambda_i x_i \ge\exp\left(\sum_i\lambda_i\log x_i\right) =\prod_i x_i^{\lambda_i}.

若所有 λi>0\lambda_i>0,严格凸性说明等号当且仅当所有 xix_i 相等。

练习 3:指数函数的支撑直线

证明对任意 a,xRa,x\in\mathbb R

exea+ea(xa).e^x\ge e^a+e^a(x-a).

a=0a=0 写出常用特例,并说明何时取等号。

查看提示
在任意基点 a 计算函数值和导数,再代入一阶支撑式。
查看解答

f(x)=exf(x)=e^x 的二阶导数 ex>0e^x>0,所以它严格凸。凸可微函数的一阶支撑不等式在基点 aa 给出

f(x)f(a)+f(a)(xa)=ea+ea(xa).f(x)\ge f(a)+f'(a)(x-a) =e^a+e^a(x-a).

a=0a=0ex1+xe^x\ge1+x。由于函数严格凸,支撑直线只在基点接触图像,所以等号仅在 x=ax=a 时成立;特例中仅在 x=0x=0 取等号。

练习 4:严格凸不等于强凸

说明 f(x)=x4f(x)=x^4R\mathbb R 上严格凸,却不存在 μ>0\mu>0 使它在整个 R\mathbb Rμ\mu-强凸。它是否有唯一全局最优解?

查看提示
检查 x4x^{4} 的二阶导数在零点的值,并比较强凸所需的统一下界。
查看解答

f(x)=4x3f'(x)=4x^3 严格递增,因此 ff 严格凸。若它是 μ\mu-强凸且二阶可微,应有 f(x)=12x2μf''(x)=12x^2\ge\mu 对所有 xx 成立;在 x=0x=0 处左侧为零,与 μ>0\mu>0 矛盾。尽管没有统一正曲率,x40x^4\ge0 且只在 x=0x=0 取零,所以仍有唯一全局最优解 x=0x^\star=0。唯一性不反推强凸性。

练习 5:用次梯度求一整段最优解

求凸函数

f(x)=x1+x+1f(x)=|x-1|+|x+1|

的全部全局最优解,并用零次梯度条件验证。

查看提示
分 x<-1、x=-1、1<x<1-1<x<1、x=1、x>1 计算斜率或次微分。
查看解答

x<1x<-1 时,两项斜率都为 1-1,故次梯度为 2-2;当 1<x<1-1<x<1 时,两项斜率分别为 1-111,总斜率为 00;当 x>1x>1 时总斜率为 22。在 x=1x=-1

f(1)=1+[1,1]=[2,0],\partial f(-1)=-1+[-1,1]=[-2,0],

x=1x=1

f(1)=[1,1]+1=[0,2].\partial f(1)=[-1,1]+1=[0,2].

因此 0f(x)0\in\partial f(x) 恰在 x[1,1]x\in[-1,1] 成立,这一整段都是全局最优解。直接计算也得该区间内 f(x)=(1x)+(x+1)=2f(x)=(1-x)+(x+1)=2,区间外函数值更大。

知识关系与后续

参考资料

课程 · 2025

Nonlinear Optimization

Gabriele Farina

用于核对优化模型、凸性、次梯度、约束资格、KKT 条件和对偶结论的适用前提。

打开官方来源

MIT OpenCourseWare 的 Nonlinear Optimization 讲义包含凸集、凸函数、一阶最优性、分离与次梯度的系统论述。本章中的 Jensen 推导、二次型展开和绝对值次微分均可由定义独立复算;进一步学习时应保留定义域、内点、闭性和可微性等条件。