漫步凸分析四——凸函数

令函数f的值域是实数或±,定义域是Rn的一个子集,集合

{(x,μ)|xS,μR,μf(x)}

叫做f的上境图(epigraph),用epif表示,如果epifRn+1的凸子集,那么我们将f定义为凸函数。对于S上的函数,如果其负为凸,那么该函数为凹。S上的仿射函数是有限的,凸且凹的。

凸函数fS上的有效定义域(用domf表示)就是f的上境图在Rn上的投影:

domf={x|μ,(x,μ)epif}={x|f(x)<+}

这是Rn中的一个凸集,因为它是凸集epif在线性变换下的像(定理3.4)。它的维数就是f的维数,一般地,f为凸等价于domf为凸,所有的讨论实际上集中在有效定义域上,S本身没什么太大作用。

我们不想只考虑有效定义域为某个确定值C的一类凸函数,稍后会看到这么做的原因。但是有两个方法依然保留着,我们考虑不取+的函数,这样的话S总是和domf是一致的(但是将和f一起变化),或者考虑定义域在整个Rn上的函数,这样的话对于xS,通过设置f(x)=+就能将S上的凸函数f扩展为整个Rn上的凸函数。

本文选择第二种方法,因此当提到凸函数时,除非特别说明,否则这就意味着这个凸函数是定义在整个Rn空间上的,并且可能取无穷大。这个方法有个好处,那就是可以压制有效定义域带来的麻烦,例如当凸函数f已经通过某种形式构造出来后,同样的形式可以用于有效定义域上,因为他们指定了f(x)+的地方。而对于另一种方法,在定义域内f的值给定以前,必须先显示地给出有效定义域。

然而,这里采用的方法会产生涉及+,的算术计算,我们采纳的法则如下:

α+=+α=for<αα=+α=forα<α=α=,α()=()α=for0<αα=α=,α()=()α=forα<00=0=0()=()0,()=inf=+,sup=

组合,+没有定义,应该避免,在这些法则下,下面熟悉的算数法则依然成立:

α1+α2=α2+α1,(α1+α2)+α3=α1+(α2+α3)α1α2=α2α1,(α1α2)α3=α1(α2α3)α(α1+α2)=αα1+αα2

当然前提是α+β没有一个会产生(或者+)。

避免自然要求我们要留心,像避免除数出现零。实际中,根据假设给定的计算通常自动排除了无穷大的情况,所以不会出现复杂的情况。

对于凸函数f,如果它的上境图是非空的并且不包含垂线,即至少有一个点x使得f(x)<+并且对于所有x,f(x)>,这是我们说函数是正常的(proper),因此当且仅当凸集C=domf是非空并且在此集合上f是有限时,f是合适的。换句话说,Rn上的凸函数就是这样的函数,在非空凸集C上取有限的凸函数f,然后对xC,设置f(x)=+从而将函数f扩展到整个Rn上。

不是正常的凸函数就是不正常的(improper)。正常凸函数使我们要研究的对象,但是在许多情况下,正常函数会产生不正常函数并且接纳他们比费力地排除他们要更简便。这里给出一个定义在R上不正常凸函数的例子

f(x)=0+if |x|<1if |x|=1if |x|>1

凸函数有一个重要的插值属性,根据定义,fS上的凸函数,当且仅当(x,μ),(y,v)属于epif并且0λ1时,下式

(1λ)(x,μ)+λ(y,v)=((1λ)x+λy,(1λ)μ+λv)

属于epif。换句话说,当xS,yS,f(x)μR,f(y)vR,0λ1时,(1λ)x+λyS那么

f((1λ)x+λy)(1λ)μ+λv

这个条件可以用几种不同的方式表达,下面两种变形是非常有用的。

定理4.1f是从C(,+]的函数,其中C是凸集(例如C=Rn),那么当且仅当对于C中所有x,y下式

f((1λ)x+λy)(1λ)f(x)+λf(y),0<λ<1

成立时,函数fC上是凸的。

定理4.2f是从Rn[,+]的函数,那么当且仅当下式

f((1λ)x+λy)<(1λ)α+λβ,0<λ<1

成立时,函数f在是凸的,其中f(x)<α,f(y)<β

另一个有用的变形通过在上境图上应用定理2.2推出来。

定理4.3 (Jensen’s Inequality)f是从Rn(,+]上的函数,那么对于λ10,,λm0,λ1++λm=1,当且仅当下式

f(λ1x1++λmxm)λ1f(x1)++λmf(xm)

成立时,f是凸的。

当然,在同样的假设下,凹函数满足反向的不等式,仿射函数满足上面的等式,因此Rn上的仿射函数是从RnR的仿射变换。

定理4.1中的不等式经常用来作为从凸集C(,+]上函数f为凸的定义,然而当f同时有+,时,这个方法就行不通了,因为产生了。当然,定理4.2中的条件可以用来作为一般情况下凸的定义,但是本文开始给出的定义似乎更好,因为它强调了几何特征,这是凸函数理论的基础。

从下面的定理中我们可以得到一些实数轴上凸函数的经典实例。

定理4.4 令f是开区间(α,β)上二阶连续可导的实函数,那么当且仅当在(α,β)上它的二阶导f′′为非负时,f是凸的。

证明:首先假设f′′(α,β)是非负的,那么f(α,β)上是非递减的。对于α<x<y<β,0<λ<1,z=(1λ)x+λy,我们有

f(z)f(x)=zxf(t)dtf(z)(zx)f(y)f(z)=yzf(t)dtf(z)(yz)

因为zx=λ(yx),yz=(1λ)(yz),所以我们有

f(z)f(x)+λf(z)(yx)f(z)f(y)(1λ)f(z)(yx)

上面两个不等式两边分别乘以(1λ),λ,然后相加可得

(1λ)f(z)+λf(z)(1λ)f(x)+λf(y)

左边仅仅是f(z)=f((1λ)x+λy),所以根据定理4.1这就证明了f(α,β)上是凸的。现在考虑反向断言,假设f′′(α,β)不是非负的,那么根据连续性,在某个子区间(α,β)f′′将是负的,仿照前面的证明,在(α,β)上我们有

f(z)f(x)>f(z)(zx)f(y)f(x)>f(z)(yx)

因此

f((1λ)x+λy)>(1λ)f(x)+λf(y)

因此f(α,β)不是凸的。||

定理4.4将在定理24.1和24.2中进行推广。

下面列举一些R上的函数,他们的凸性从定理4.4中可以退出来。

  1. f(x)=eαx,where <α<
    • f(x)=xp if x0,f(x)= if x<0,where 1p<
    • f(x)=xp if x0,f(x)= if x<0,where 0p1
    • f(x)=xp if x>0,f(x)= if x0,where<p0
    • f(x)=(α2x2)(1/2) if |x|<α,f(x)= if |x|α,where α>0
    • f(x)=logx if x>0,f(x)= if x0
    • 对于多维的情况,根据定理4.1可得所有形如

      f(x)=x,a+α,aRn,αR

      的函数在Rn上是凸的,事实上是仿射的。每个Rn上的仿射函数实际上都有这种形式(定理1.5),二次函数

      f(x)=12x,Qx+x,a+α

      其中Qn×n的对称矩阵,要想是Rn上的凸函数,当且仅当Q是半正定的即

      z,Qz0 for every zRn

      下面关于定理4.4的多维版本可以直接得出

      定理4.5fRn中开集C上的二阶连续可导实值函数,那么当且仅当Hessian矩阵

      Qx=(qij(x)),qij(x)=2fξiξj(ξ1,,ξn)

      对所有xC是半正定时,f是凸的。

      证明:fC上的凸性等价于fC中每条线段上的凸性,这和函数g(λ)=f(y+λz)在开实数区间{λ|y+λzC}的凸性是一样的,其中yC,zRn。通过简单的计算就得出

      g′′(λ)=z,Qxz,x=y+λz

      因此根据定理4.4得,对于每个xC,zRn,当且仅当z,Qxz0时,g对于每个yC,zRn是凸的。||

      Rn上有一个非常有趣的函数,它的凸性可以用定理4.5证明,那就是几何平均的负:

      f(x)=f(ξ1,,ξn){(ξ1ξ2ξn)1/n+ otherwise if ξ10,,ξn0

      直接计算得

      z,Qxz=n2f(x)[(Σnj=1ζj/ξj)2nΣnj=1(ζj/ξj)2]

      其中 z=(ζ1,,ζn),x=(ξ1,,ξn),ξ1>0,,ξn>0。 这个量是非负的,因为 f(x)<0并且对于任意实数 αj
      (α1++αn)2n(α21++α2n)

      (因为2αjαkα2j+α2k)

      Rn上一个最重要的凸函数时欧几里得范数

      |x|=x,x1/2=(ξ21++ξ2n)1/2

      当然,在n=1时这就是绝对值函数。欧几里得范数的凸性由下面的法则得到

      |x+y||x|+|y|,|λx|=λ|x|forλ0

      凸集和凸函数之间有几个非常有用的对应关系,最简单的就是将Rn中的每个集合CC的指示函数(indicator function)δ(|C)联系起来,其中

      δ(x|C)={0 + if xCif xC

      指示函数的上境图是横截面为C的半圆柱,很明显当且仅当δ(|C)Rn上的凸函数时,C才是凸集,指示函数在凸分析中扮演着非常基础的角色,跟其他分析中集合的特征函数一样。

      Rn上凸集C的支撑函数(support function)δ(|C)定义为

      δ(x|C)=sup{x,y|yC}

      gaugeγ(|C)定义为

      γ(x|C)=inf{λ0|xλC},C

      (欧几里得)距离函数d(,C)定义为

      d(x,C)=inf{|xy||yC}

      这些Rn上函数的凸性现在可以直接证明,

      凸函数通过一种重要的方法可以产生凸集。

      定理4.6 对于任意凸函数f和任意α[,+],水平集{x|f(x)<α}{x|f(x)α}是凸的。

      证明:对于严格不等式的情况,上述结果可以利用定理4.2,令β=x直接得出。{x|f(x)α}的凸性可以从下面的事实得出,它是所有μα的凸集{x|f(x)<μ}之交,从几何观点来看就是{x|f(x)α}是epifRn+1上水平超平面{(x,μ)|μ=α}的交集在Rn上的投影,所以{x|f(x)α}可以看成epif的水平横截面。||

      推论4.6.1fiRn上的凸集并且对于所有iI,αi是实数,其中I是一个任意索引集,那么

      C={x|fi(x)αi,iI}

      是凸集。

      证明:像推论2.1.1。||

      f为定理4.6中的二次凸函数,我们可以得出满足下面二次不等式

      12x,Qx+x,a+α0

      的点集在Q是半正定的时候是凸的(定理4.5),这种形式的集合包括所有实心椭圆体和抛物体,以及像x,x1的球。

      定理4.6和推论4.6.1对于非线性不等式组理论非常重要,但是凸性也进入到不等式其他方面的分析,因为各种各样经典的不等式可以看成定理4.3的特殊情况,例如取fR上的负对数,如上面的例6。对于正数x1,,xm的凸组合,根据定理4.3我们有

      log(λ1x1++λmxm)λ1logx1λmlogxm

      两边乘以-1然后取指数得

      λ1x1++λmxmxλ11xλmm

      特别地,当λ1==λm=1/m时,

      (x1++xm)/m(x1xm)1/m

      这就是著名正数的算术平均和几何平均不等式。

      有时通过变量的非线性变换,可以将非凸函数变成凸函数,一个非常棒的例子就是Rn正象限上的(正)代数函数,它是如下形式的和

      g(x)=g(ξ1,,ξn)=βξα1αn1

      其中β>0并且指数αj是任意实数。(在30节末尾中一个很重要的应用会出现这种函数)这类的一个特定函数是

      f(ξ1,ξ2)=ξ21+(ξ1ξ2)1/3+2ξ42,ξ1>0,ξ2>0

      变量代换ζj=logξj将通常的形式g变成

      h(z)=h(ζ1,,ζn)=βeα1ζ1eαnζn=βea,z

      其中a=(α1,,αn),在下一节将会看到h以及任何形如h函数的和是凸的,注意同样的变量变化可以将集合{x|g(x)=α}变成超平面

      {z|h(z)=α}={z|a,z=log(α/β)}

      Rn上的函数f,如果对每个x,我们都有

      f(λx)=λf(x),0<λ<

      那么就称函数是正齐次的(positively homogeneous)(of degree 1),很明显,正齐次的等价于上境图是Rn+1上的锥,除了线性函数外,正齐次图函数的一个例子是f(x)=|x|

      定理4.7Rn(,+]的正齐次函数f是凸函数,当且仅当对于每个xRn,yRn,不等式

      f(x+y)f(x)+f(y)

      成立。

      证明:根据定理2.6就可得出此结果,因为f上的次可加性条件等价于epif对加法是封闭的。||

      推论4.7.1 如果f是正齐次正常凸函数,那么当λ1>0,,λm>0时,下式

      f(λ1x1++λmxm)λ1f(x1)++λmf(xm)

      成立。

      推论4.7.2 如果f是正齐次正常凸函数,那么对所有x,不等式f(x)f(x)成立。

      证明:f(x)+f(x)f(xx)=f(0)0||

      定理4.8 正齐次正常凸函数f在子空间L上是线性的,当且仅当对于每个xL,等式f(x)=f(x)成立。如果对于L中一组基b1,,bm的所有向量,等式f(bi)=f(bi)成立,那么结论依然成立。

      证明:假设后者成立,那么对于每个λiR,不仅仅是λi>0,等式f(λibi)=λif(bi)成立。对于任意x=λ1b1++λmbmL,我们有

      f(λ1b1)++f(λmbm)f(x)f(x)(f(λ1b1)++f(λmbm))=f(λ1b1)++f(λmbm)

      (定理4.7和推论4.7.2)那么

      f(x)=f(λ1b1)++f(λmbm)=λ1f(b1)++λmf(bm)

      因此fL上是线性的并且特别地对于xL,f(x)=f(x)||

      在13节,某些正齐次凸函数将会表征为凸集的支撑函数,而在15节会表征为凸集(包括范数)的gauge函数,次数p>1的正齐次凸函数将会在推论15.3.1和15.3.2中提到。

      附:文章PDF版本http://pan.baidu.com/s/1pKGHemJ