微積分複習

一、泰勒展開:

泰勒公式是一個用函數在某點的信息描述其附近取值的公式。這個公式來自於微積分的泰勒定理,泰勒定義描述了一個可微函數,如果函數足夠光滑的話,在已知函數在某一點的各階導數值的情況之下,泰勒公式可以用這些導數值做係數構建一個多項式來近似函數在這一點的鄰域中的值,這個多項式稱爲泰勒多項式。

泰勒定理:
設n是一個正整數,如果定義在一個包含a的區間上的函數f在a點處n+1次可導,那麼對於這個區間上的任意x,都有:
f(x)=f(a)+f(a)1!(xa)+f(2)(a)2!(xa)2+...+f(n)(a)n!(xa)n+Rn(x)f(x)=f(a)+{f'(a) \over 1!}(x-a)+{f^{(2)}(a) \over 2!}(x-a)^2+...+{f^{(n)}(a) \over n!}(x-a)^n+R_n(x)
其中的多項式稱爲函數在a處的泰勒展開式,剩餘的Rn(x)R_n(x)是泰勒展開式的餘項,爲(xa)n(x-a)^n的高階無窮小。

二、泰勒展開和Hassian矩陣的關係

二元函數f(x1,x2)f(x_1,x_2)X(0)(x1(0),x2(0))X^{(0)}(x_1^{(0)},x_2^{(0)})的泰勒展開爲:

f(x1,x2)=f(x1(0),x2(0))+fx1X(0)x1+fx2X(0)x2+12[2fx12X(0)x12+22fx1x2X(0)x1x2+2fx22X(0)x22]+...f(x_1,x_2)=f(x_1^{(0)},x_2^{(0)})+ {\partial f \over \partial x_1}|_{X^{(0)}}\triangle x_1+{\partial f \over \partial x_2}|_{X^{(0)}}\triangle x_2+ {1 \over 2}[{\partial ^2f\over \partial x_1^2}|_{X^{(0)}}\triangle x_1^2+2{\partial ^2f\over \partial x_1 \partial x_2}|_{X^{(0)}}\triangle x_1 \triangle x_2+{\partial ^2f\over \partial x_2^2}|_{X^{(0)}}\triangle x_2^2]+...

將上述表達式寫成矩陣形式:
f(X)=f(X(0))+(fx1,fx2)X(0)(x1x2)+12(x1,x2)(2fx122fx1x22fx2x12fx22)X(0)(x1x2)+...f(X)=f(X^{(0)})+({\partial f\over \partial x_1},{\partial f\over \partial x_2})_{X^{(0)}}\begin {pmatrix} \triangle x_1\\ \triangle x_2\end {pmatrix}+{1 \over 2}(\triangle x_1,\triangle x_2)\begin {pmatrix} {\partial ^2f \over \partial x_1^2}& {\partial ^2f \over \partial x_1 \partial x_2}\\ {\partial ^2f \over \partial x_2 \partial x_1}& {\partial ^2f \over \partial x_2^2} \end {pmatrix} _{X^{(0)}}\begin {pmatrix} \triangle x_1\\ \triangle x_2\end {pmatrix}+...

令:
f(X(0))T=(fx1fx2)X(0),X=(x1x2),G(X(0))=(2fx122fx1x22fx2x12fx22)X(0)\triangledown f(X^{(0)})^T=\begin {pmatrix} {\partial f\over \partial x_1}\\ {\partial f\over \partial x_2} \end {pmatrix}_{X^{(0)}}, \triangle X=\begin {pmatrix} \triangle x_1\\ \triangle x_2\end {pmatrix},G(X^{(0)})=\begin {pmatrix} {\partial ^2f \over \partial x_1^2}& {\partial ^2f \over \partial x_1 \partial x_2}\\ {\partial ^2f \over \partial x_2 \partial x_1}& {\partial ^2f \over \partial x_2^2} \end {pmatrix} _{X^{(0)}}

此時上式可表示爲:
f(X(0))=f(X(0))+f(X(0))TX+12XTG(X(0))X+....f(X^{(0)})=f(X^{(0)})+\triangledown f(X^{(0)})^T\triangle X+{1\over 2}\triangle X^TG(X^{(0)})\triangle X+....

這個G(X(0))G(X^{(0)})就是f(x1,x2)f(x_1,x_2)X(0)X^{(0)}點處的Hassian矩陣。

同時注意這個f(X(0))\triangledown f(X^{(0)})是雅可比矩陣

https://baike.baidu.com/item/%E9%BB%91%E5%A1%9E%E7%9F%A9%E9%98%B5

三、拉格朗日函數:

3.1定義:

設給定二元函數z=f(x,y)z=f(x,y)和附加條件ϕ(x,y)=0\phi (x,y)=0,爲尋找z=f(x,y)z=f(x,y)在附加條件下的極值點,先做拉格朗日函數F(x,y,ϕ)=f(x,y)+λϕ(x,y)F(x,y,\phi )=f(x,y)+\lambda \phi(x,y),其中λ\lambda是參數
首先令F(x,y,λ)F(x,y,\lambda )x,y,λx,y,\lambda的一階導數爲零,即:

Fx=fx(x,y)+λϕx(x,y)=0F^{'}_x=f^{'}_x(x,y)+\lambda \phi ^{'}_x(x,y)=0

Fy=fy(x,y)+λϕy(x,y)=0F^{'}_y=f^{'}_y(x,y)+\lambda \phi ^{'}_y(x,y)=0

Fλ=ϕ(x,y)=0F^{'}_{\lambda}=\phi (x,y)=0

由上述方程解出x,y,λx,y,\lambda,如此求得的(x,y),就是函數z=f(x,y)z=f(x,y)在附加條件ϕ(x,y)=0\phi (x,y)=0下的可能極值點。
如果這樣的點只有一個,由實際問題可直接確定此即所求的點。

https://baike.baidu.com/item/%E6%8B%89%E6%A0%BC%E6%9C%97%E6%97%A5%E4%B9%98%E6%95%B0%E6%B3%95/8550443

3.2 理解:

拉格朗日函數本身只是一種構造方式,這種方式本身是沒有意義的,但它可以使求條件極值的步驟變得相對簡單方便一些,所以大家傾向於使用構造拉格朗日函數這種方式來求極值。
以二元函數爲例,假設變量x,yx,y滿足約束條件f(x,y)=0f(x,y)=0,求g(x,y)g(x,y)的極值:
f(x,y)=0f(x,y)=0微分可以得到:df=fxdx+fydy=0df={\partial f\over \partial x}dx+{\partial f\over \partial y}dy=0 (1)
同時g(x,y)g(x,y)取極值的必要條件是dg=gxdx+gydy=0dg={\partial g\over \partial x}dx+{\partial g\over \partial y}dy=0 (2)
聯立(1)(2),這個方程組可以看成關於dx,dydx,dy的齊次線性方程組。要使該方程組有非零解(dx,dydx,dy雖然是小量,但不是真正的零),則該方程組的行列式爲零,即:
fxgyfygx=0{\partial f\over \partial x}{\partial g\over \partial y}-{\partial f\over \partial y}{\partial g\over \partial x}=0 (3)
也就是說(3)就是g(x,y)g(x,y)取極值的一個條件,將(3)與f(x,y)f(x,y)聯立,就能求出極值點。
上面是按定義求極值的方法,接下來構造拉格朗日函數看能否得到(3)這個式子。
令拉格朗日函數h(x,y)=g(x,y)+λf(x,y)h(x,y)=g(x,y)+\lambda f(x,y)。其無條件極值點滿足:
hx=gx+λfx=0{\partial h\over \partial x}={\partial g\over \partial x}+\lambda {\partial f\over \partial x}=0 (4)
hy=gy+λfy=0{\partial h\over \partial y}={\partial g\over \partial y}+\lambda {\partial f\over \partial y}=0 (5)
聯立(4)(5),這個方程組可以看成關於μ,λ\mu , \lambda(這個μ\mu只是一個臨時引入的變量)的一個齊次線性方程組:
μgx+λfx=0\mu {\partial g\over \partial x}+\lambda {\partial f\over \partial x}=0
μgy+λfy=0\mu {\partial g\over \partial y}+\lambda {\partial f\over \partial y}=0
且已知該方程組有非零解μ=1\mu =1
根據齊次線性方程組有非零解的條件可知,該方程的係數矩陣的行列式爲零,即:
gxfyfxgy=0{\partial g\over \partial x}{\partial f\over \partial y}-{\partial f\over \partial x}{\partial g\over \partial y}=0 (6)
可以看出(3)和(6)是完全等價的,也就是說用拉格朗日函數來求條件極值,和用定義求條件極值是等價的。所以我們可以通過解(4)(5)這個方程組,來求g(x,y)g(x,y)的條件極值。

https://www.zhihu.com/question/64044033

四、廣義拉格朗日函數:

給定不等式約束問題:
KaTeX parse error: Invalid delimiter: 'm' after '\middle' at position 9: \middle m̲in f(x)\\s.t.\\…
定義廣義拉格朗日函數:
L(x,α,β)=f(x)+i=1kαici(x)+j=1lβjhj(x)L(x,\alpha ,\beta )=f(x)+\sum _{i=1}^k\alpha _ic_i(x)+\sum _{j=1}^l\beta _jh_j(x)
這裏x=(x(1),x(2),...,x(n))TRn,αi,βjx=(x^{(1)},x^{(2)},...,x^{(n)})^T\in R^n,\alpha _i,\beta _j是拉格朗日乘子,αi0\alpha _i\ge 0,考慮x的函數
θP(x)=maxα,β,αi0L(x,α,β)\theta _P(x)=max_{\alpha ,\beta ,\alpha _i\ge 0}L(x,\alpha ,\beta)

θP(x)={f(x),x滿+,\theta _P(x)=\begin{cases} f(x),x滿足原始問題約束\\ +\infty ,其他\end{cases}
(有嚴格證明,這裏跳過)
極小化問題minxθp(x)=minxmaxα,β,αi0L(x,α,β)min_x\theta _p(x)=min_xmax_{\alpha ,\beta ,\alpha _i\ge 0}L(x,\alpha ,\beta)與原始優化問題有相同的解。

廣義拉格朗日函數相當於構造了一個含參函數,在滿足約束條件的情況下,這個函數的值總是小於等於目標函數f(x),而我們此時選取合適的參數α,β\alpha ,\beta令該函數最大可使等號成立,即L(x,α,β)=f(x)L(x,\alpha ,\beta)=f(x);若不滿足約束條件,則總存在α,β\alpha ,\beta使得該函數趨向於++\infty

定義原始問題的最優值爲p=minxθp(x)p^*=min_x\theta _p(x)

4.1對偶問題

定義θD(α,β)=minxL(x,α,β)\theta_D(\alpha ,\beta)=min_xL(x,\alpha ,\beta)
我們得到極大極小問題
maxα,βθD(α,β)=maxα,βminxL(x,α,β)max_{\alpha ,\beta}\theta _D(\alpha, \beta)=max_{\alpha ,\beta}min_{x}L(x,\alpha ,\beta)
s.t.ai0,i=1,2,...,ks.t. \quad a_i\ge 0,\quad i=1,2,...,k
稱爲原問題(極小極大問題)的對偶問題
定義對偶問題的最優解爲d=maxα,β,αi0θ(α,β)d^*=max_{\alpha ,\beta ,\alpha _i\ge 0}\theta (\alpha ,\beta)

4.2 原始問題和對偶問題的關係

4.2.1 性質1

(弱對偶性)dpd^* \le p^*。p是先求最大的一塊區域然後在這塊區域求最小,d是先求最小的一塊區域然後在這塊區域求最大,最大里面的最小,總會比最小裏面的最大要大

4.2.2 性質2

(強對偶充分條件)若f(x)f(x)ci(x)c_i(x)是凸函數,hj(x)h_j(x)是仿射函數,並且不等式是嚴格可行的(即x,i,ci(x)<0)\exists x,\forall i,有c_i(x)<0),則存在x,α,βx^*,\alpha ^*, \beta ^*使得xx^*是原始問題的解,α,β\alpha ^*,\beta ^*是對偶問題的解,並且
p=d=L(x,α,β)p^*=d^*=L(x^*,\alpha ^*,\beta ^*)

4.2.3 性質3

(強對偶充要條件)若f(x)f(x)ci(x)c_i(x)是凸函數,hj(x)h_j(x)是仿射函數,並且不等式是嚴格可行的,則xx^*是原始問題的解,α,β\alpha ^*,\beta ^*是對偶問題的解的充要條件就是他們滿足KKT(Karush-Kuhn-Tucker)條件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章