最优化理论与方法-第十讲割平面法

1. 原问题:

给定下列约束优化问题:
( P )      min ⁡    3 x 1 2 + 2 x 2 2 s t .      − 5 x 1 − 2 x 2 + 3 ≤ 0 ,      x ∈ X = { x ∈ Z n ∣ 8 x 1 + 8 x 2 ≥ 1 , 0 ≤ x 1 ≤ 1 , 0 ≤ x 2 ≤ 2 } \begin{equation}\begin{aligned} &(P)\; \;\min\; 3x_1^2+2x_2^2\\ &st.\;\;-5x_1-2x_2+3\le 0,\\ &\;\;x\in X=\{x\in Z^n\big| 8x_1+8x_2\ge1,0\le x_1 \le 1,0\le x_2 \le 2\} \end{aligned}\end{equation} (P)min3x12+2x22st.5x12x2+30,xX={xZn 8x1+8x21,0x11,0x22}
给定 X 1 = { ( 1 , 1 ) T } X^1=\{(1,1)^T\} X1={(1,1)T},利用外逼近法求解其对偶问题

  • 因为x为整数,所以我们可以依次根据约束问题求解出所有的点
    X = { x 0 = ( 0 , 1 ) , x 1 = ( 0 , 2 ) x 2 = ( 1 , 0 ) x 3 = ( 1 , 1 ) x 4 = ( 1 , 2 ) } \begin{equation} X=\{x_0=(0,1),x_1=(0,2)x_2=(1,0)x_3=(1,1)x_4=(1,2)\} \end{equation} X={x0=(0,1),x1=(0,2)x2=(1,0)x3=(1,1)x4=(1,2)}
  • 构造拉格朗日函数:
    f ( x ) = 3 x 1 2 + 2 x 2 2 , g ( x ) = − 5 x 1 − 2 x 2 + 3 \begin{equation} f(x)=3x_1^2+2x_2^2,g(x)=-5x_1-2x_2+3 \end{equation} f(x)=3x12+2x22,g(x)=5x12x2+3
  • 构建对偶问题
    ( D )      max ⁡ λ > 0 d ( λ ) d ( λ ) = min ⁡ x ∈ X L ( x , λ ) L ( x , λ ) = 3 x 1 2 + 2 x 2 2 + λ ( − 5 x 1 − 2 x 2 + 3 ) X = { x 0 = ( 0 , 1 ) , x 1 = ( 0 , 2 ) , x 2 = ( 1 , 0 ) , x 3 = ( 1 , 1 ) , x 4 = ( 1 , 2 ) } \begin{equation}\begin{aligned} &(D)\; \;\max\limits_{\lambda >0} d(\lambda)\\ &d(\lambda)=\min\limits_{x\in X}L(x,\lambda)\\ &L(x,\lambda)=3x_1^2+2x_2^2+\lambda(-5x_1-2x_2+3)\\ &X=\{x_0=(0,1),x_1=(0,2),x_2=(1,0),x_3=(1,1),x_4=(1,2)\} \end{aligned}\end{equation} (D)λ>0maxd(λ)d(λ)=xXminL(x,λ)L(x,λ)=3x12+2x22+λ(5x12x2+3)X={x0=(0,1),x1=(0,2),x2=(1,0),x3=(1,1),x4=(1,2)}
  • 将 X 代入可得:
    L ( x 0 , λ ) = 2 + λ L ( x 1 , λ ) = 8 − λ L ( x 2 , λ ) = 3 − 2 λ L ( x 3 , λ ) = 5 − 4 λ L ( x 4 , λ ) = 11 − 6 λ \begin{equation}\begin{aligned} &L(x_0,\lambda)=2+\lambda\\ &L(x_1,\lambda)=8-\lambda\\ &L(x_2,\lambda)=3-2\lambda\\ &L(x_3,\lambda)=5-4\lambda\\ &L(x_4,\lambda)=11-6\lambda\\ \end{aligned}\end{equation} L(x0,λ)=2+λL(x1,λ)=8λL(x2,λ)=32λL(x3,λ)=54λL(x4,λ)=116λ
  • 画图可得:·图形法

在这里插入图片描述

  • 根据图形可以求出最大值可得:
    在这里插入图片描述

2. 割平面法程序步骤

  • 程序迭代法
  • 第一次迭代 step1:
    X 1 = { ( 1 , 1 ) } X^1=\{(1,1)\} X1={(1,1)}代入拉格朗日函数: L ( x 3 , λ ) = 5 − 4 λ L(x_3,\lambda)=5-4\lambda L(x3,λ)=54λ
    ( D )      max ⁡ λ ≥ 0 θ s t :    θ ≤ 5 − 4 λ , λ ≥ 0 \begin{equation}\begin{aligned} &(D)\; \;\max\limits_{\lambda \ge0} \theta\\ &st:\; \theta \le 5-4\lambda,\lambda\ge0 \\ \end{aligned}\end{equation} (D)λ0maxθst:θ54λ,λ0
    根据定义可得,在 λ 1 = 0 \lambda_1=0 λ1=0,可得 max ⁡ θ = θ 1 = 5 \max \theta=\theta_1=5 maxθ=θ1=5

2.1 第一次迭代

  • 第一次迭代 step2:
    λ 1 = 0 \lambda_1=0 λ1=0代入到对偶函数:
    d ( λ ) = min ⁡ x ∈ X L ( x , λ ) = { 2 + λ , 8 − λ , 3 − 2 λ , 5 − 4 λ , 11 − 6 λ } \begin{equation}\begin{aligned} &d(\lambda)=\min\limits_{x\in X}L(x,\lambda)=\{2+\lambda,8-\lambda,3-2\lambda ,5-4\lambda,11-6\lambda\} \end{aligned}\end{equation} d(λ)=xXminL(x,λ)={2+λ,8λ,32λ,54λ,116λ}
  • 可得最小值为 d ( λ 1 = 0 ) = 2 d(\lambda_1=0)=2 d(λ1=0)=2,并且是 x 1 = ( 0 , 1 ) x_1=(0,1) x1=(0,1)这个点取得最小。
  • 第一次迭代 step3:
    判断 d ( λ 1 ) = 2 d(\lambda_1)=2 d(λ1)=2 θ 1 = 5 \theta_1=5 θ1=5之间的大小关系,不相等,算法继续迭代
  • 第一次迭代 step4::新增约束点: X 2 = X 1 ∪ { ( 0 , 1 ) } X^2=X^1\cup\{(0,1)\} X2=X1{(0,1)}
  • 第二次迭代 step1::以 X 2 X^2 X2作为约束条件
  • 第二次迭代 step1:
    X 1 = { ( 1 , 1 ) ( 0 , 1 ) } X^1=\{(1,1)(0,1)\} X1={(1,1)(0,1)}代入拉格朗日函数: L ( x 3 , λ ) = 5 − 4 λ ; L ( x 3 , λ ) = 2 + λ L(x_3,\lambda)=5-4\lambda;L(x_3,\lambda)=2+\lambda L(x3,λ)=54λ;L(x3,λ)=2+λ
    ( D )      max ⁡ λ ≥ 0 θ s t :    θ ≤ 5 − 4 λ , λ ≥ 0 s t :    θ ≤ 2 + λ , λ ≥ 0 \begin{equation}\begin{aligned} &(D)\; \;\max\limits_{\lambda \ge0} \theta\\ &st:\; \theta \le 5-4\lambda,\lambda\ge0 \\ &st:\; \theta \le 2+\lambda,\lambda\ge0 \\ \end{aligned}\end{equation} (D)λ0maxθst:θ54λ,λ0st:θ2+λ,λ0
    根据定义可得,在 λ 1 = 3 5 \lambda_1=\frac{3}{5} λ1=53,可得 max ⁡ θ = θ 2 = 13 5 \max \theta=\theta_2=\frac{13}{5} maxθ=θ2=513

2.2 第二次迭代

  • 第二次迭代 step2:
    λ 1 = 3 5 \lambda_1=\frac{3}{5} λ1=53代入到对偶函数:
    d ( λ 2 ) = min ⁡ x ∈ X 2 L ( x , λ ) = { 2 + λ , 8 − λ , 3 − 2 λ , 5 − 4 λ , 11 − 6 λ } \begin{equation}\begin{aligned} &d(\lambda_2)=\min\limits_{x\in X^2}L(x,\lambda)=\{2+\lambda,8-\lambda,3-2\lambda ,5-4\lambda,11-6\lambda\} \end{aligned}\end{equation} d(λ2)=xX2minL(x,λ)={2+λ,8λ,32λ,54λ,116λ}
  • 可得最小值为 d ( λ 2 = 3 5 ) = 9 5 d(\lambda_2=\frac{3}{5})=\frac{9}{5} d(λ2=53)=59,并且是 x 2 = ( 1 , 0 ) x_2=(1,0) x2=(1,0)这个点取得最小。
  • 第二次迭代 step3:
    判断 d ( λ 2 ) = 9 5 d(\lambda_2)=\frac{9}{5} d(λ2)=59 θ 2 = 13 5 \theta_2=\frac{13}{5} θ2=513之间的大小关系,不相等,算法继续迭代,并且我们发现其中在 x 2 = ( 1 , 0 ) x_2=(1,0) x2=(1,0)这个点取得最小,所以我们将其加入 { 3 − 2 λ } \{3-2\lambda\} {32λ}到约束中
  • 第二次迭代 step4::新增约束点: X 3 = X 2 ∪ { ( 1 , 0 ) } = { ( 1 , 1 ) , ( 0 , 1 ) , ( 1 , 0 ) } X^3=X^2\cup\{(1,0)\}=\{(1,1),(0,1),(1,0)\} X3=X2{(1,0)}={(1,1),(0,1),(1,0)}

2.3 第三次迭代

  • 第三次迭代 step1::以 X 3 X^3 X3作为约束条件
  • 第三次迭代 step1:
    X 1 = { ( 1 , 1 ) ( 0 , 1 ) , ( 1 , 0 ) } X^1=\{(1,1)(0,1),(1,0)\} X1={(1,1)(0,1),(1,0)}代入拉格朗日函数: L ( x 3 , λ ) = 5 − 4 λ ; L ( x 3 , λ ) = 2 + λ , L ( x 3 , λ ) = 3 − 2 λ L(x_3,\lambda)=5-4\lambda;L(x_3,\lambda)=2+\lambda,L(x_3,\lambda)=3-2\lambda L(x3,λ)=54λ;L(x3,λ)=2+λL(x3,λ)=32λ
    ( D )      max ⁡ λ ≥ 0 θ s t :    θ ≤ 5 − 4 λ , λ ≥ 0 s t :    θ ≤ 2 + λ , λ ≥ 0 s t :    θ ≤ 3 − 2 λ , λ ≥ 0 \begin{equation}\begin{aligned} &(D)\; \;\max\limits_{\lambda \ge0} \theta\\ &st:\; \theta \le 5-4\lambda,\lambda\ge0 \\ &st:\; \theta \le 2+\lambda,\lambda\ge0 \\ &st:\; \theta \le 3-2\lambda,\lambda\ge0 \\ \end{aligned}\end{equation} (D)λ0maxθst:θ54λ,λ0st:θ2+λ,λ0st:θ32λ,λ0
    根据定义可得,在 λ 3 = 1 3 \lambda_3=\frac{1}{3} λ3=31,可得 max ⁡ θ = θ 3 = 7 3 \max \theta=\theta_3=\frac{7}{3} maxθ=θ3=37
  • 第三次迭代 step2:
    λ 3 = 1 3 \lambda_3=\frac{1}{3} λ3=31代入到对偶函数:
    d ( λ 2 ) = min ⁡ x ∈ X 2 L ( x , λ ) = { 2 + λ , 8 − λ , 3 − 2 λ , 5 − 4 λ , 11 − 6 λ } \begin{equation}\begin{aligned} &d(\lambda_2)=\min\limits_{x\in X^2}L(x,\lambda)=\{2+\lambda,8-\lambda,3-2\lambda ,5-4\lambda,11-6\lambda\} \end{aligned}\end{equation} d(λ2)=xX2minL(x,λ)={2+λ,8λ,32λ,54λ,116λ}
  • 可得最小值为 d ( λ 3 = 1 3 ) = 9 5 d(\lambda_3=\frac{1}{3})=\frac{9}{5} d(λ3=31)=59,并且是 x 2 = ( 1 , 0 ) x_2=(1,0) x2=(1,0)这个点取得最小。
  • 第三次迭代 step3:
    判断 d ( λ 3 ) = 7 3 d(\lambda_3)=\frac{7}{3} d(λ3)=37 θ 3 = 7 3 \theta_3=\frac{7}{3} θ3=37之间的大小相等,算法停止
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值