UA SIE545 优化理论基础4 对偶理论简介4 求解对偶问题的割平面算法
UA SIE545 優(yōu)化理論基礎4 對偶理論簡介4 求解對偶問題的割平面算法
這一講我們介紹一個求解對偶問題的算法——割平面算法(cutting plane algorithm)。
假設原問題為
min?x∈Xf(x)s.t.g(x)≤0,h(x)=0\min_{x \in X}f(x) \ \ s.t. \ \ g(x) \le 0,h(x)=0x∈Xmin?f(x)??s.t.??g(x)≤0,h(x)=0
假設f,g,hf,g,hf,g,h是連續(xù)函數(shù),XXX是緊集。根據(jù)定義,這個優(yōu)化的對偶問題是
max?u≥0θ(u,v)=max?u≥0min?x∈Xf(x)+uTg(x)+vTh(x)\max_{u \ge 0} \theta(u,v)=\max_{u \ge 0}\min_{x \in X} f(x)+u^Tg(x)+v^Th(x)u≥0max?θ(u,v)=u≥0max?x∈Xmin?f(x)+uTg(x)+vTh(x)
我們可以等價地把這個優(yōu)化改寫成:
max?z,u,vzs.t.z≤θ(u,v)=min?x∈Xf(x)+uTg(x)+vTh(x)u≥0\max_{z,u,v} z \\ s.t. \ z \le \theta(u,v)=\min_{x \in X} f(x)+u^Tg(x)+v^Th(x)\\u \ge 0z,u,vmax?zs.t.?z≤θ(u,v)=x∈Xmin?f(x)+uTg(x)+vTh(x)u≥0
進一步,
max?z,u,vzs.t.z≤f(x)+uTg(x)+vTh(x),?x∈Xu≥0\max_{z,u,v} z \\ s.t. \ z \le f(x)+u^Tg(x)+v^Th(x),\forall x \in X\\u \ge 0z,u,vmax?zs.t.?z≤f(x)+uTg(x)+vTh(x),?x∈Xu≥0
當給定xxx的值時,這個優(yōu)化就是一個簡單的線性規(guī)劃,為了讓這種替代可行,我們希望XXX是一個有限集,這樣才能在有限步內結束循環(huán)。但一般XXX都不會是有限集,這時我們可以先給定一個xxx的初值,然后在每一次做完這個優(yōu)化后,再去求解min?x∈Xf(x)+uTg(x)+vTh(x)\min_{x \in X} f(x)+u^Tg(x)+v^Th(x)minx∈X?f(x)+uTg(x)+vTh(x)這個問題,從而得到一個新的xxx,這樣就避免了去遍歷無限集XXX。基于這個思想,我們可以定義下面的算法:
例 用割平面法求解下面的優(yōu)化的對偶問題
min?(x1,x2)∈Xf(x1,x2)=(x1?2)2+x224s.t.g(x1,x2)=x1?72x2?1≤0X={(x1,x2):2x1+3x2=4}\min_{(x_1,x_2) \in X} f(x_1,x_2)= (x_1-2)^2+\frac{x_2^2}{4} \\ s.t. g(x_1,x_2)=x_1-\frac{7}{2}x_2-1 \le 0 \\ X = \{(x_1,x_2):2x_1+3x_2=4\}(x1?,x2?)∈Xmin?f(x1?,x2?)=(x1??2)2+4x22??s.t.g(x1?,x2?)=x1??27?x2??1≤0X={(x1?,x2?):2x1?+3x2?=4}
找一個初始值x0=(54,12)x_0=(\frac{5}{4},\frac{1}{2})x0?=(45?,21?),
第一次循環(huán):
求解Master Problem
max?z,u,vzs.t.z≤f(x0)+uTg(x0)+vTh(x0)=58?32uu≥0\max_{z,u,v} z \\ s.t. \ z \le f(x_0)+u^Tg(x_0)+v^Th(x_0)=\frac{5}{8}-\frac{3}{2}u\\u \ge 0z,u,vmax?zs.t.?z≤f(x0?)+uTg(x0?)+vTh(x0?)=85??23?uu≥0
最優(yōu)解為(z1,u1)=(58,0)(z_1,u_1)=(\frac{5}{8},0)(z1?,u1?)=(85?,0)。
求解subproblem
x1=arg?min?x∈Xf(x)+ukTg(x)+vkTh(x)=arg?min?x∈Xf(x)=(2,0)x_1 = \argmin_{x \in X}f(x)+u^T_kg(x)+v^T_kh(x) \\ =\argmin_{x \in X}f(x) = (2,0)x1?=x∈Xargmin?f(x)+ukT?g(x)+vkT?h(x)=x∈Xargmin?f(x)=(2,0)
判斷是否停止
z1=58>θ(u1)=f(x1)=0z_1 = \frac{5}{8} >\theta(u_1)=f(x_1) = 0z1?=85?>θ(u1?)=f(x1?)=0,所以算法繼續(xù)。
第二次循環(huán):
求解Master Problem
max?z,u,vzs.t.z≤f(x0)+uTg(x0)+vTh(x0)=58?32uz≤f(x1)+uTg(x1)+vTh(x1)=uu≥0\max_{z,u,v} z \\ s.t. \ z \le f(x_0)+u^Tg(x_0)+v^Th(x_0)=\frac{5}{8}-\frac{3}{2}u \\ z \le f(x_1)+u^Tg(x_1)+v^Th(x_1)= u \\u \ge 0z,u,vmax?zs.t.?z≤f(x0?)+uTg(x0?)+vTh(x0?)=85??23?uz≤f(x1?)+uTg(x1?)+vTh(x1?)=uu≥0
最優(yōu)解為(z2,u2)=(14,14)(z_2,u_2)=(\frac{1}{4},\frac{1}{4})(z2?,u2?)=(41?,41?)。
。。。。
然后按步驟繼續(xù)循環(huán)即可!
總結
以上是生活随笔為你收集整理的UA SIE545 优化理论基础4 对偶理论简介4 求解对偶问题的割平面算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初等数学O 集合论基础 第三节 序关系
- 下一篇: UA SIE545 优化理论基础4 对偶