支持向量机SVM的训练过程中需要求解带约束的最优化问题。
带约束的最优化问题通常表述如下:
objective:minw f(w)s.t. {gi(w)≤0,hj(w)=0,i=1,2,3...n;j=1,2,3...m;不等式约束等式约束 o b j e c t i v e : min w f ( w ) s . t . { g i ( w ) ≤ 0 , i = 1 , 2 , 3... n ; 不等式约束 h j ( w ) = 0 , j = 1 , 2 , 3... m ; 等式约束
gi(w) g i ( w ) , hj(w) h j ( w ) 和 f(w) f ( w ) 一般都是连续可导的。要求在满足 gi(w)≤0,hj(w)=0 g i ( w ) ≤ 0 , h j ( w ) = 0 的前提下求能使得目标函数 f(w) f ( w ) 最小化的 w w 。
学习支持向量机SVM时,拉格朗日对偶、Slater条件、KKT条件等一大堆概念席卷而来,让没系统学习过凸优化的笔者一头雾水,估计不少人都是这样吧。
不幸的是笔者在数学相关问题上经常一不小心就陷入死磕,遇到没想明白的问题就总惦记着。另外笔者还是个懒于动手的人,但好在数学是一门完全不需要动手的学科,你只要靠想就可以,最多需要在纸上画画,完全不用做什么实验或者手工体力活儿,嗯,很适合笔者这种懒人,这也是笔者为什么从一个电气工程学生慢慢偏离航向发展成一个程序猿的原因。
回到我们要说的SVM中的优化问题。为什么要引入一堆系数把约束条件与目标函数组合到一起?为什么满足了KKT条件就是符合条件的解? 为什么可以转化为对偶问题?什么是Slater条件?在讲SVM的资料中通常不会详细展开这些问题,只是告知读者有这么回事。带着一排排问号,翻阅文献、Wiki、博客,加上自己的一些思考,算是把不少问题整理清楚了。笔者希望能把这些问题用容易理解的方式讲述明白,通过这一系列博文,将相关问题由易到难一一做出解释,希望这个系列的文章能帮更多人解惑。
本系列文章包括:
1. 纯等式约束时的optimalize问题
2. 纯不等式约束时的optimalize问题
3.混合约束时的optimalize问题——KKT条件与拉格朗日对偶问题
4.强对偶性的证明与Slater条件
这一类问题的范式如下:
在满足 hj(w)=0 h j ( w ) = 0 的条件下使 f(w) f ( w ) 最小化。 hj(w) h j ( w ) 和 f(w) f ( w ) 都应是连续可导的。上面纯代数的形式会让人不容易看到此类问题的本质,我们希望对这类问题有一个直观的几何理解。首先我们来看一下每个等式约束的含义。
对于 hj(w)=0 h j ( w ) = 0 ,如果 w w 是一个3维变量,那所有满足 hj(w)=0 h j ( w ) = 0 的 w w 点集通常会组成一个 2 维的曲面。特别当 hj(w) h j ( w ) 是 w w 的线性函数时,比如 :
V=m∑j=1cj∇hj(w∗)
当然,d0 d 0 也有大于dw−m d w − m 的时候,但这并不影响上面的结论。假如m个等势面中有某(t+1) ( t + 1 ) 个等势面是相切的,这时公共等势面变成了dw−(m−t) d w − ( m − t ) 维,比正常时候多了t个维度;但另一方面,梯度空间G也会因此而减少t个维度,因为有(t+1) ( t + 1 ) 个梯度是平行的,它们只能提供1个维度。此时,上面的结论保持不变
我们已经知道,满足所有等式约束的点,都在前面提到的公共0势面上。那我们的目标函数f(w) f ( w ) 的极值点怎么找呢?
通常,在没有约束的时候,我们要找f(w) f ( w ) 的极值点,只要找f(w) f ( w ) 梯度为0的点,即∇f(w) ∇ f ( w ) 是0。而我们把可行域限制在公共0势面上之后呢?对,我们只要要求梯度向量∇f(w) ∇ f ( w ) 在公共0势面上的分量为0即可,换句话说,梯度向量与公共0势面垂直。
为了表达具体一点我们不得不把倒霉的w∗ w ∗ 再抓回来当我们的小白鼠。我们继续把它在公共0势面上,看一下它怎样才能变成极值点。
我们要求f(w) f ( w ) 在w∗ w ∗ 处的梯度向量∇f(w∗) ∇ f ( w ∗ ) 与该处的公共0势面垂直,意味着∇f(w∗) ∇ f ( w ∗ ) 必然在前面提到的梯度子空间G上,即它可以由各个等式约束函数在w∗ w ∗ 处的梯度线性组合而成,即存在一系列系数βj β j ,满足下式:
∇f(w∗)+m∑j=1βj∇hj(w∗)=0
当我们求解纯等式约束下的最优化问题时,我们只需求解如下方程组即可求得候选解,然后从中挑选最优解:
求解w和β{∇f(w)+∑mj=1βj∇hj(w)=0hj(w)=0for j=1,2...m
因此当d>m d > m 时,上面的方程组通常是有解的。特别是当目标函数f(w) f ( w ) 是w w 的二次函数、hj(w) h j ( w ) 都是w的一次函数即仿射函数时,上面的方程组就变了一个线性方程组,可以用线性代数方法直接求解
简单解释一下:
当f(w) f ( w ) 是w w 的二次函数、hj(w) h j ( w ) 是w w 的一次函数时,他们对wk w k 的偏导分别是w w 的一次和零次(常数)函数,所以他们的组合函数 L(w,β) L ( w , β ) 对wk w k 的偏导∂L∂wk ∂ L ∂ w k 就是w,β w , β 的一次函数,∂L∂wk=0 ∂ L ∂ w k = 0 就是一个线性方程;
而∂L∂βj=0 ∂ L ∂ β j = 0 等价于hj(w)=0 h j ( w ) = 0 ,hi(w) h i ( w ) 是w w 的一次函数,因此所有的hj(w)=0 h j ( w ) = 0 也都是线性方程;
于是整个方程组就变成了线性方程组
求解等式约束下的最优化问题,只需要解个方程组就可以找到候选极值点,然后在方程组的各个解中筛选出满足条件的最小值点即可(该方程组有可能是多解的)。
如果目标函数是二次函数,且约束都是线性的,那我们只需要求解一个线性方程组。
这一类问题的范式如下:
objective:minw f(w)s.t:gi(w)≤0,i=1,2,3...n;
gi(w) g i ( w ) 和f(w) f ( w ) 都应是连续可导的。为了方便理解,我们先看只有一个不等式约束时的情形
objective:minw f(w)s.t:g1(w)≤0
从几何角度来说,上面的两个条件对应的意义是:∇f(w∗) ∇ f ( w ∗ ) 应与边界面垂直并指向包含可行域的一侧(边界面的一侧包含可行域,另一侧不包含可行域)。函数值沿着梯度方向是增长的,当f(w) f ( w ) 在w∗ w ∗ 处的梯度指向可行域一侧时,可行域内部的函数值都比w∗ w ∗ 处大,w∗ w ∗ 才能是极小点
现在可以做个小结了:若w∗ w ∗ 是可行域上的极值点,则应满足:
{∇f(w∗)+α1∇g1(w∗)=0且α1≥0w∗是边界点,即g1(w∗)=0时∇f(w∗)=0w∗是内点,即g1(w∗)<0时
巧妙的是,第二行的(α1g1(w)=0) ( α 1 g 1 ( w ) = 0 ) 和第三行的(α1≥0, g1(w)≤0) ( α 1 ≥ 0 , g 1 ( w ) ≤ 0 ) 联合起来,正好暗示了一个规则:当g1(w)<0 g 1 ( w ) < 0 时,α1=0 α 1 = 0 ;只有当g1(w)=0 g 1 ( w ) = 0 时,α1 α 1 才可能大于0
objective:minw f(w)s.t:gi(w)≤0,i=1,2,3...n;
同样的几何意义:∇f(w∗) ∇ f ( w ∗ ) 应与公共边界面垂直并指向靠近可行域的方向。
这里说的“靠近可行域的方向”,是指与可行域夹角小于等于90°的方向。准确的说,对于所有能使(w∗+Δw) ( w ∗ + Δ w ) 位于可行域上的微小位移向量 Δw Δ w ,与∇f(w∗) ∇ f ( w ∗ ) 夹角都应小于等于90°,用内积表示就是∇f(w∗)⋅Δw≥0 ∇ f ( w ∗ ) ⋅ Δ w ≥ 0
结合∇gi(w∗)⋅Δw≤0 ∇ g i ( w ∗ ) ⋅ Δ w ≤ 0 ,为保证对所有满足的条件的Δw Δ w 上式都能成立,必须要求每个αi α i 都大于等于0。
否则,假如α1 α 1 小于0,对于满足以下条件Δw Δ w ,∇g1(w∗)⋅Δw<0, ∇g2(w∗)⋅Δw=0,∇g3(w∗)⋅Δw=0, ∇g4(w∗)⋅Δw=0
∇ g 1 ( w ∗ ) ⋅ Δ w < 0 , ∇ g 2 ( w ∗ ) ⋅ Δ w = 0 , ∇ g 3 ( w ∗ ) ⋅ Δ w = 0 , ∇ g 4 ( w ∗ ) ⋅ Δ w = 0上面的式子就不成立了
总结起来就是,当w∗ w ∗ 在上述公共边界并是可行极值点时,应满足:
∇f(w∗)+n∑i=1α1∇g1(w∗)=0仅当i=1,2,3,4时,αi≥0,其他αi=0
这一类问题的范式如下:
objective:minw f(w)s.t. {gi(w)≤0,i=1,2,3...n;不等式约束hj(w)=0,j=1,2,3...m;等式约束
有了前面纯等式和纯不等式约束问题的铺垫,我们可以轻松得出混合约束时的结论。
首先,还是先考虑最简单的情况,假如w∗ w ∗ 不在任何不等式的边界,即gi(w∗)<0 g i ( w ∗ ) < 0 对所有 i=1,2...n i = 1 , 2... n 成立。——被玩坏的w∗ w ∗ 肯定在抱怨:为什么又是我躺枪,隔壁w′ w ′ 闲了两天了!但显然无情的笔者才不打算关心这个声音。
但w∗ w ∗ 须仍在所有等式约束hj(w) h j ( w ) 的公共0势面上。这时相当于只有等式约束,w∗ w ∗ 是极值的条件是:
∇f(w∗)+m∑j=1βj∇hj(w∗)=0
我们再把w∗ w ∗ 扔到不等式的边界上看看会发生什么。有了之前纯不等式约束的基础,我们直接考虑w∗ w ∗ 同时在多个不等式约束边界时的情况,假如w∗ w ∗ 在第1、2、3、4个不等式约束的公共边界面上,即:
{gi(w∗)=0for i=1,2,3,4gi(w∗)<0for i=otherhj(w∗)=0for j=1,2...m
但这还不够,为了保证可行域上w∗ w ∗ 所有邻域点(w∗+Δw) ( w ∗ + Δ w ) 的目标函数值都比w∗ w ∗ 处大,α1...α4 α 1 . . . α 4 还应都是大于等于0的,具体分析过程与讲解纯不等式约束问题时类似,不再重复。
再强调下几何意义:∇f(w∗) ∇ f ( w ∗ ) 应与公共混合0势面垂直并指向靠近可行域的方向。
将上面两种情况用统一的形式重写如下,w∗ w ∗ 是可行域上极值点的条件是:
∇f(w∗)+m∑j=1βj∇hj(w∗)+n∑i=1α1∇g1(w∗)=0其中αi≥0,且当gi(w∗)<0,即w∗不在第i个不等式约束边界时只能取等号
因此,我们可以通过解以下方程组(前3行等式构成方程组)
求解w、α和β{∇f(w)+∑mj=1βj∇hj(w)+∑ni=1αi∇gi(w)=0hj(w)=0for j=1,2...mαigi(w)=0for i=1,2...nαi≥0,gi(w)≤0for i=1,2...n
然后,拉格朗日时间到。是时候引出完整版的拉格朗日乘子式了,我们构造一个融合目标函数和所有约束的新函数:
L(w,α,β)=f(w)+n∑i=1αigi(w)+m∑j=1βjhj(w)
是的,我们就这样得到了广为流传的KKT条件。对于某组给定的(w∗,α∗,β∗) ( w ∗ , α ∗ , β ∗ ) ,如果能同时满足上面的条件,w∗ w ∗ 就是原问题的候选解,但候选解不一定是最优解。KKT条件只是最优解的必要条件。
前面KKT条件中的方程组通常是很难直接求解的。而有些时候,将原问题转换成另一种形式,可能更会容易求解。下面就介绍一种常见的转换形式,对偶问题。
我们先来看一个与原问题等价的问题。设
θ(w)=maxα≥0,βL(w,α,β)注意条件,所有的αi≥0
注意所有的 αi α i 都是大于等于0的。
容易得出
θ(w)={f(w)所有等式和不等式约束均被满足+∞,有任意一个约束未被满足
如果不等式约束中有任意一个约束未被满足,比如若某个 w∗ w ∗ 使得 gi(w∗)>0 g i ( w ∗ ) > 0 时, 那我们将对应的 αi α i 取 +∞ + ∞ ,则 αigi(w∗) α i g i ( w ∗ ) 必然也是 +∞ + ∞ ,导致 θ(w∗) θ ( w ∗ ) 变为 +∞ + ∞ 。
同理如果原问题的等式约束中有任意一个约束未被满足,比如若某个w∗ w ∗ 使得 hj(w∗)≠0 h j ( w ∗ ) ≠ 0 时, 那我们将对应的βj β j 取βj={−∞hj(w∗)<0+∞,hj(w∗)>0β j = { − ∞ h j ( w ∗ ) < 0 + ∞ , h j ( w ∗ ) > 0
则 βjhj(w∗) β j h j ( w ∗ ) 必然是 +∞ + ∞ ,,导致 θ(w∗) θ ( w ∗ ) 变为 +∞ + ∞ 。
只有当 w∗ w ∗ 满足所有的等式约束和不等式约束时, θ(w∗) θ ( w ∗ ) 才不会变为无穷大。而且由于此时等式约束被满足,导致所有的 βjhj(w∗) β j h j ( w ∗ ) 项被直接消去,因为他们都等于0;另一方面由于所有的 αi≥0,gi(w∗)≤0 α i ≥ 0 , g i ( w ∗ ) ≤ 0 ,因此 αigi(w∗) α i g i ( w ∗ ) 取最大时必然也是0,即所有的 αigi(w∗) α i g i ( w ∗ ) 项也被消去,只剩下了 f(w) f ( w ) 。于是就有上面的结果
θ(w)={f(w)constraint satisfied+∞,constraint not satisfiedθ ( w ) = { f ( w ) constraint satisfied + ∞ , constraint not satisfied
这样一来,求原问题中的 minwf(w) min w f ( w ) 就等价于求 minwθ(w) min w θ ( w ) 。
原问题等价于:
objective:minwmaxα,βL(w,α,β)s.t.αi≥0,for i=1,2,3...n
如果调换上面 min 和 max 的顺序,就得到该问题的对偶问题。
对偶问题 :
objective:maxα,βminwL(w,α,β)s.t.αi≥0,for i=1,2,3...n
引入一个新函数: θD(α,β)=minwL(w,α,β) θ D ( α , β ) = min w L ( w , α , β ) ,这时对偶问题变成:
objective:maxα,βθD(α,β)s.t.αi≥0,for i=1,2,3...n
根据θD θ D 的定义可知,对于任意的(w,β,α≥0) ( w , β , α ≥ 0 ) ,有θD(α,β)≤L(w,α,β) θ D ( α , β ) ≤ L ( w , α , β ) ;
根据θ θ 的定义可知,对于任意的(w,β,α≥0) ( w , β , α ≥ 0 ) ,有θ(w)≥L(w,α,β) θ ( w ) ≥ L ( w , α , β ) ;
如果设p∗=θ(w∗)=minwθ(w),d∗=θD(α∗,β∗)=maxα≥0,βθD(α,β)
定义: 凸优化问题
当且仅当目标函数f(w) f ( w ) 和所有的不等式约束函数gi(w) g i ( w ) 都是凸函数,所有的等式约束hj(w) h j ( w ) 都是线性(仿射)函数时,相应的最优化问题属于凸优化问题。
Slater条件
对于凸优化问题,如果可行域满足Slater条件,强对偶性保证成立。
Slater条件是指,可行域存在一点 w′ w ′ 同时满足:{gi(w′)<0for i=1,2...n (注意是<不再是≤)hj(w′)=0for j=1,2...m{ g i ( w ′ ) < 0 f o r i = 1 , 2... n ( 注 意 是 < 不 再 是 ≤ ) h j ( w ′ ) = 0 f o r j = 1 , 2... m
如果不等式约束中存在线性约束,比如前 t t 个不等式约束都是线性约束时,Slater条件可以弱化为: {gi(w′)≤0for i=1,2...tgi(w′)<0for i=t+1,t+2...nhj(w′)=0for j=1,2...m{ g i ( w ′ ) ≤ 0 f o r i = 1 , 2... t g i ( w ′ ) < 0 f o r i = t + 1 , t + 2... n h j ( w ′ ) = 0 f o r j = 1 , 2... m
之前的分析中,KKT条件只能作为最优解的必要条件,但满足KKT条件的解不一定是最优解。而对于凸优化问题,KKT条件同时也是最优解的充分条件。
如果(w∗,α∗,β∗) ( w ∗ , α ∗ , β ∗ ) 是满足KKT条件的一组解,即
{∂L∂w∗k=0for k=1,2,3...dw(w的维数)∂L∂β∗j=0for j=1,2...mα∗i⋅∂L∂α∗i=0for i=1,2...nα∗i≥0,∂L∂α∗i≤0for i=1,2...n{ ∂ L ∂ w k ∗ = 0 f o r k = 1 , 2 , 3... d w ( w 的 维 数 ) ∂ L ∂ β j ∗ = 0 f o r j = 1 , 2... m α i ∗ ⋅ ∂ L ∂ α i ∗ = 0 f o r i = 1 , 2... n α i ∗ ≥ 0 , ∂ L ∂ α i ∗ ≤ 0 f o r i = 1 , 2... n
由于 α∗≥0 α ∗ ≥ 0 ,以及凸优化问题中各不等式约束函数和目标函数都是凸函数的特点,易知 L(w,α∗,β∗) L ( w , α ∗ , β ∗ ) 是 w w 的凸函数,而KKT条件的第一行说明 w∗ w ∗ 是使得 L(w,α∗,β∗) L ( w , α ∗ , β ∗ ) 对 w w 导数为0的点,因此
L(w∗,α∗,β∗)=minwL(w,α∗,β∗)=θD(α∗,β∗)L ( w ∗ , α ∗ , β ∗ ) = min w L ( w , α ∗ , β ∗ ) = θ D ( α ∗ , β ∗ )
同时,KKT条件的第二行 h(w∗)=0 h ( w ∗ ) = 0 和第三行 α∗g(w∗)=0 α ∗ g ( w ∗ ) = 0 使得
L(w∗,α∗,β∗)=f(w∗)=θ(w∗)L ( w ∗ , α ∗ , β ∗ ) = f ( w ∗ ) = θ ( w ∗ )
因此有 θD(α∗,β∗)=θ(w∗) θ D ( α ∗ , β ∗ ) = θ ( w ∗ ) 。
而同时 θD(α∗,β∗)≤d∗≤p∗≤θ(w∗) θ D ( α ∗ , β ∗ ) ≤ d ∗ ≤ p ∗ ≤ θ ( w ∗ ) ,这其实暗示了 d∗=p∗ d ∗ = p ∗ ,即强对偶性成立,且 (w∗,α∗,β∗) ( w ∗ , α ∗ , β ∗ ) 正好是原问题和对偶问题的最优解。
因此,对于凸优化问题,满足KKT条件的解一定是最优解,且满足KKT条件暗示了强对偶性成立。
强对偶性的一种比较直观的证明是用几何方法。
先介绍一条关于凸集的定理。这个定理表达的意思很直观。比如在二维空间中,二维平面上的任意一个凸图形(比如一个圆),在其边缘上任一点处做切线,该图形必在切线的同一侧,而不会被切割成多个部分并分居两侧。该定理的完整表述如下:
引理: 支撑超平面定理
设集合 C C 是 Rn R n 空间中的闭凸集, ˉx x ¯ 是 C C 边界上一点,则必存在一个过点 ˉx x ¯ 的超平面,使得 C C 位于它的一个闭半空间。即存在法向量 a a ,使得对于 C C 中任意点 x x ,有:
a⋅x−a⋅ˉx≥0a ⋅ x − a ⋅ x ¯ ≥ 0
进一步地,如果已知 xin x i n 是 C C 的一个内点,则:
a⋅xin−a⋅ˉx>0a ⋅ x i n − a ⋅ x ¯ > 0
如果想了解该定理的证明看这里:
http://www.cnblogs.com/murongxixi/p/3615034.html
这是在网上找到的一篇博文,里面步骤比较详尽。为防止原链接失效,相关的重要证明步骤会以图片形式插入到本文末尾的附录中。
回到我们的问题。我们要研究的是凸优化问题中强对偶性成立的条件,首先做一个基本假设:
基本假设:假设原问题是凸优化问题,即f(w),gi(w) f ( w ) , g i ( w ) 都是凸函数,hj(w) h j ( w ) 都是线性函数,且所有的hj(w) h j ( w ) 相互之间都是线性独立的。
w∈Rdw w ∈ R d w ,我们按如下方式将Rdw R d w 空间中一点w w 映射为R(n+m+1) R ( n + m + 1 ) 空间中的点E E :
E(w)=(u1,u2,...un,v1,v2,...vm,t)其中{ui=gi(w)i=1,2,3...nvj=hj(w)j=1,2,3...mt=f(w)
设所有点E E 组成的集合为Go G o ,
Go={(u,v,t):u=g(w),v=h(w),t=f(w),w∈Rdw} G o = { ( u , v , t ) : u = g ( w ) , v = h ( w ) , t = f ( w ) , w ∈ R d w }
然而,即便有了前面的基本假设,我们也不能保证Go G o 是凸集。但是如果把它简单扩展一下,设:
Ge={(u,v,t):u≥g(w),v=h(w),t≥f(w),w∈Rdw}
容易证明Ge G e 是一个凸集,且Go⊆Ge G o ⊆ G e 。
若A(ua,va,ta) A ( u a , v a , t a ) 和B(ub,vb,tb) B ( u b , v b , t b ) 是Ge G e 内的两个点,按照Ge G e 的定义可知必然存在wa w a 和wb w b ,使得
va=h(wa),ua≥g(wa),ta≥f(wa)vb=h(wb),ub≥g(wb),tb≥f(wb)v a = h ( w a ) , u a ≥ g ( w a ) , t a ≥ f ( w a ) v b = h ( w b ) , u b ≥ g ( w b ) , t b ≥ f ( w b )
设 0≤c≤1,wc=cwa+(1−c)wb,C=cA+(1−c)B=(uc,vc,tc) 0 ≤ c ≤ 1 , w c = c w a + ( 1 − c ) w b , C = c A + ( 1 − c ) B = ( u c , v c , t c ) ,则
uc=cua+(1−c)ubvc=cva+(1−c)vbtc=cta+(1−c)tbu c = c u a + ( 1 − c ) u b v c = c v a + ( 1 − c ) v b t c = c t a + ( 1 − c ) t b
由于 h(w) h ( w ) 是 w w 的线性函数,因此
c⋅h(wa)+(1−c)h(wb)=h[cwa+(1−c)wb]=h(wc)c ⋅ h ( w a ) + ( 1 − c ) h ( w b ) = h [ c w a + ( 1 − c ) w b ] = h ( w c )
即 vc=h(wc) v c = h ( w c ) ;
由于 g(w),f(w) g ( w ) , f ( w ) 都是 w w 的凸函数,因此
c⋅g(wa)+(1−c)g(wb)≥g[cwa+(1−c)wb]=g(wc)c⋅f(wa)+(1−c)f(wb)≥f[cwa+(1−c)wb]=f(wc)c ⋅ g ( w a ) + ( 1 − c ) g ( w b ) ≥ g [ c w a + ( 1 − c ) w b ] = g ( w c ) c ⋅ f ( w a ) + ( 1 − c ) f ( w b ) ≥ f [ c w a + ( 1 − c ) w b ] = f ( w c )
而同时 ua≥g(wa),ta≥f(wa),ub≥g(wb),tb≥f(wb) u a ≥ g ( w a ) , t a ≥ f ( w a ) , u b ≥ g ( w b ) , t b ≥ f ( w b ) ,于是
cua+(1−c)ub≥c⋅g(wa)+(1−c)g(wb)cta+(1−c)tb≥c⋅f(wa)+(1−c)f(wb)c u a + ( 1 − c ) u b ≥ c ⋅ g ( w a ) + ( 1 − c ) g ( w b ) c t a + ( 1 − c ) t b ≥ c ⋅ f ( w a ) + ( 1 − c ) f ( w b )
即 uc≥g(wc),tc≥f(wc) u c ≥ g ( w c ) , t c ≥ f ( w c ) 。再结合 vc=h(wc) v c = h ( w c ) ,可知 (uc,vc,tc)∈Ge ( u c , v c , t c ) ∈ G e ,即 C=cA+(1−c)B∈Ge C = c A + ( 1 − c ) B ∈ G e 。由于前述 A,B,c A , B , c 的选取具有任意性,因此对于任意两点 A,B∈Ge A , B ∈ G e ,连线 ¯AB A B ¯ 上的所有点都属于 Ge G e , Ge G e 是凸集。
除此之外,我们还知道E∗=(0,0,p∗) E ∗ = ( 0 , 0 , p ∗ ) 必是Ge G e 的一个边界点,其中p∗=minwθ(w) p ∗ = min w θ ( w ) ,θ(w) θ ( w ) 的定义同上一节。
若w∗ w ∗ 是目标函数f(w) f ( w ) 在可行域内的极小点,则p∗=f(w∗) p ∗ = f ( w ∗ ) ,且由于在可行域内,必然满足g(w∗)≤0 g ( w ∗ ) ≤ 0 、h(w∗)=0 h ( w ∗ ) = 0 ,因此(0,0,p∗)∈Ge ( 0 , 0 , p ∗ ) ∈ G e ;
又由于p∗ p ∗ 是可行域上即区间 {g(w∗)≤0,h(w∗)=0} { g ( w ∗ ) ≤ 0 , h ( w ∗ ) = 0 } 上的最小值(边界值),对于任意小的正数δ δ ,(0,0,p∗−δ)∉Ge ( 0 , 0 , p ∗ − δ ) ∉ G e ,因此(0,0,p∗) ( 0 , 0 , p ∗ ) 在边界上。
即E∗=(0,0,p∗) E ∗ = ( 0 , 0 , p ∗ ) 是Ge G e 的一个边界点。
利用上面关于边界点的支撑超平面定理,我们知道必存在一个法向量a=(αa,βa,γa) a = ( α a , β a , γ a ) ,使得对于Ge G e 内任一点Ee=(ue,ve,te) E e = ( u e , v e , t e ) ,满足:
a⋅Ee−a⋅E∗≥0即αaue+βave+γate≥γap∗
h(w) h ( w ) 是w w 的线性函数,因此ve=h(w) v e = h ( w ) 也可以取到正无穷,甚至负无穷也可以。但ve v e 不能单独、随意 地增大,因为ve v e 完全由w w 确定,而ue和te u e 和 t e 只是被w w 确定了下限,它们可以单独增大,且仍保证在集合Ge G e 内。
假如γa≠0 γ a ≠ 0 ,此时令α∗=αa/γa,β∗=βa/γa α ∗ = α a / γ a , β ∗ = β a / γ a ,则式(1-a)可重写如下:
α∗ue+β∗ve+te≥p∗