跳到正文
格致开物MATHWIKI

支撑函数

支撑函数(support function)记录集合在每个线性方向上的最大投影值。对非空集合 C⊆ℝn,定义 hC(a)=supx∈Ca𝖳x,a∈ℝn. 若该方向无上界,函数值为 +∞;上确界有限也未必由集合中的点达到。方向 a 是输入,集合内点的内积上界是输出。只在 ‖a‖=1 时,它才直接表示相应有向法线坐标的长度尺度。[1]

取矩形 C=[0,2]×[−1,1]。对方向 a=(a1,a2),两个坐标可以独立选择,故 hC(a)=2max⁡(a1,0)+|a2|. 第一项来自在区间 [0,2] 上最大化 a1x1,第二项来自在 [−1,1] 上最大化 a2x2。例如 hC(3,4)=10,由顶点 (2,1) 达到。

矩形零到二乘负一到一,在方向三四上顶点二一接触直线三x加四y等于十,方向相同的直线在集合内部取更小值。
沿固定法向量平移等值线,最后接触集合的位置给出支撑函数值。

上确界与支撑超平面的关系

若 hC(a) 有限且在 x0∈C 达到,a≠0,则 a𝖳x=hC(a) 是支撑超平面。主例中该直线为 3x1+4x2=10。若方向改为 (0,4),支撑值为四,整条上边都达到它;因此支撑函数是一个数,不自动指定唯一接触点。

变式取开矩形 (0,2)×(−1,1),支撑函数仍为相同公式,但方向 (3,4) 的上确界十无法达到,因为需要两个坐标同时取被排除的端点。可用点 (2−1/k,1−1/k) 逼近十,任一有限 k 却都严格小于十。这区分了上确界与最大值。

正齐次性与次可加性

对 t>0,将上确界中的内积整体乘 t,得到 hC(ta)=thC(a);另外 hC(0)=0。当某方向的值无穷时,把 t=0 代入乘法会遇到未定义的 0⋅∞,所以零方向应单独说明。

对每个 x∈C 有 (a+b)𝖳x≤hC(a)+hC(b),取上确界得到 hC(a+b)≤hC(a)+hC(b). 结合正齐次性即可推出凸性。等号不总成立:在主例取 a=(1,0)、b=(−1,0),右边为二,左边 hC(0)=0。两个方向各自的最优点不同,不能要求同一点同时实现两个上界。

平移满足 hC+c(a)=hC(a)+a𝖳c;线性像满足 hAC(a)=hC(A𝖳a)。两式都可直接将 x+c 或 Ax 代回定义。它们说明支撑值可以为负,例如单点集 {(2,0)} 在方向 (−1,0) 上的支撑值为负二,不是普通的非负距离。

支撑函数确定闭凸集合

对任意非空 S,有 hS=hconv⁡S=hconv⁡S‾。因为线性函数在凸组合上的值是原值的加权平均,不会超过原上确界;取闭包也不改变连续线性函数的上确界。于是支撑函数不能区分一个集合与它的闭凸包,例如两个端点和连接它们的线段具有相同支撑函数。

反过来,非空闭凸集满足 C=⋂a∈ℝn{x:a𝖳x≤hC(a)}. 正向包含直接来自上确界定义。若 x∉C,取它在 C 中的最近点 p,令 a=x−p≠0。最近点条件给出 a𝖳(z−p)≤0 对全部 z∈C 成立,因此 hC(a)=a𝖳p。但 a𝖳x=a𝖳p+‖x−p‖2>hC(a). 所以外点被其中一个半空间排除,反向包含得证。最近点条件可由比较线段 p+t(z−p) 与 p 的距离并令 t↓0 得到;闭性保证最近点存在,凸性保证该线段仍在集合中。

无界集合的有限方向

无界不等于所有非零方向支撑值都无穷。例如射线 C={(t,0):t≥0} 的支撑函数在 a1≤0 时为零,在 a1>0 时为 +∞。它同时记录了沿正方向可无限延伸,以及反方向被原点限制。对凸锥,采用本文正号的对偶锥约定,支撑函数在 −K∗ 上为零,其余方向为无穷;负号正来自“取上界”和“内积非负”两个约定的区别。

参考文献

  1. ↑ Stephen Boyd、Lieven Vandenberghe,Convex Optimization,3.2.3节的例3.7,以及习题2.26、3.35。