凸凹函数定义以及判断

凹凸函数在同济大学高等数学中的定义符合人们的思维定式。在国际上的定义恰好与同济大学高等数学中的定义相反。

1、同济大学高等数学定义:

2、国际上的定义:

国际上的定义刚好与国内的凹凸函数的定义相反。二阶导数大于0,则为凸函数,有极小值;二阶导数小于0,则为凹函数,有极大值(后面涉及到的凹凸函数,均为国际上的定义);

3、e^x的二阶导数大于0,为凸函数;logx的二阶导数小于0,为凹函数;一元函数可以很容易的判断凹凸性,二元函数如何判断凹凸性?用到了海塞矩阵,根据海塞矩阵的正定性,判断凹凸性。

①海塞矩阵

A=\begin{bmatrix} \frac{\partial^2Z}{\partial x^2}& \frac{\partial^2Z}{\partial x\partial y}\\ \\ \frac{\partial^2Z}{\partial y\partial x}& \frac{\partial^2Z}{\partial y^2} \end{bmatrix}

②正定矩阵

判断海塞矩阵是否为正定矩阵;若所有特征值均不小于零,则称为半正定。 若所有特征值均大于零,则称为正定。特征值怎么求?|λE-A|=0,可以求出特征值。若主对角线上的元素都为0,则主对角线上的值为特征值。detA=|A|=对角线元素积。

③凹凸性判断(正定矩阵为凸函数):

例题1:f(x,y)=x^2+5y^2-6x+10y+6

A=\begin{bmatrix} 2& 0\\ \\ 0& 10 \end{bmatrix}

所有的特征值均大于0,海塞矩阵为正定矩阵,函数为凸函数。

例题2:f(x,y)=10(y^2+4x)^2+(1-4y)^2

A=\begin{bmatrix} 320& -160y\ \\ -160y& 120y^2-160x+32 \end{bmatrix}

经过行列式变化(行列式性质:把一行(列)的倍数加到另一行(列),行列式不变),把主对角线上的元素变为0,第一个特征值为320,第二个特征值先不计算。可以计算|A|=320*第二个特征值=对角相乘再相减,利用这个连等式,若该函数为凸函数,则第二个特征值也必须大于0,那么|A|>0;320*(120y^2+160x*32)-160*160y^2=2560(5y^2-20x+4)>0是f(x,y)为凸函数的条件。驻点:dz/dx=0,dz/dy=0,即x=1/64,y=1/4;而x和y的值满足5y^2-20x+4>0,所以满足凸函数性质,有唯一极小值。

例题3:f(x,y)=x^2/y

A=\begin{bmatrix} \frac{2}{y}& \frac{-2x}{y^2}\ \\ \\ \frac{-2x}{y^2}& \frac{2x^2}{y^3} \end{bmatrix}

根据特征值,一个为2/y,一个为0,那么y的正负决定函数的凹凸性,若y>0,函数为凸函数。
 

你可能感兴趣的:(C/C++编程)