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

文章目录

  • [1. 原问题:](#1. 原问题:)
  • [2. 割平面法程序步骤](#2. 割平面法程序步骤)
    • [2.1 第一次迭代](#2.1 第一次迭代)
    • [2.2 第二次迭代](#2.2 第二次迭代)
    • [2.3 第三次迭代](#2.3 第三次迭代)

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.−5x1−2x2+3≤0,x∈X={x∈Zn 8x1+8x2≥1,0≤x1≤1,0≤x2≤2}

给定 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)=−5x1−2x2+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(λ)=x∈XminL(x,λ)L(x,λ)=3x12+2x22+λ(−5x1−2x2+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,λ)=3−2λL(x3,λ)=5−4λL(x4,λ)=11−6λ
  • 画图可得:·图形法
  • 根据图形可以求出最大值可得:

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,λ)=5−4λ
    ( 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:θ≤5−4λ,λ≥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(λ)=x∈XminL(x,λ)={2+λ,8−λ,3−2λ,5−4λ,11−6λ}
  • 可得最小值为 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,λ)=5−4λ;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:θ≤5−4λ,λ≥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)=x∈X2minL(x,λ)={2+λ,8−λ,3−2λ,5−4λ,11−6λ}
  • 可得最小值为 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\} {3−2λ}到约束中
  • 第二次迭代 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,λ)=5−4λ;L(x3,λ)=2+λ,L(x3,λ)=3−2λ
    ( 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:θ≤5−4λ,λ≥0st:θ≤2+λ,λ≥0st:θ≤3−2λ,λ≥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)=x∈X2minL(x,λ)={2+λ,8−λ,3−2λ,5−4λ,11−6λ}
  • 可得最小值为 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之间的大小相等,算法停止
相关推荐
AIGC小尼4 分钟前
本地AI漫剧部署|低配8G显存实战部署MiniMax-H3|4步极速采样+低显存优化完整方案(可角色替换/视频魔改)
人工智能·stable diffusion·comfyui·ai漫剧
宿州派大星41 分钟前
[NLP实战] 基于PyTorch实现N-gram词嵌入模型:输入4个词预测第5个词
人工智能·pytorch·深度学习·nlp
qq_199886871 小时前
第8板块·第2节:统一内存的高级特性与性能调优
c++·人工智能·gpu算力·cuda
ting94520001 小时前
深度拆解Enter Pro AI原生开发平台:从底层架构到企业级落地技术实践
人工智能·架构·ai-native
lisw051 小时前
人工智能辅助科学的快与慢!
人工智能
9呀1 小时前
vscode如何打开多个codex标签页
人工智能
todoitbo1 小时前
本地图库语义搜索实战:接上蓝耘元生代,让“傍晚的海边“能搜到图
人工智能·ai·api·工具实战
羊羊小栈1 小时前
基于「YOLO目标检测 + 多模态AI分析」的水稻病害智能检测分析预警系统(LangChain框架)
人工智能·yolo·目标检测·毕业设计·创业创新·大作业
IT_陈寒1 小时前
Vue的响应式让我熬到凌晨三点,原来漏了这个小细节
前端·人工智能·后端
lisw052 小时前
提升社会科学领域的计算可重复性
人工智能·数字时代