对偶问题的基本性质

2024-01-04 02:12
文章标签 问题 基本 对偶 性质

本文主要是介绍对偶问题的基本性质,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写于:2024年1月3日晚

修改于:


原规划与对偶规划

原规划对偶规划
max ⁡ z = C T X s.t.  { A X ≤ b , 其中  X ( m ∗ 1 ) X ≥ 0 \begin{aligned} & \max \mathrm{z}=\mathbf{C}^T \mathbf{X} \\ & \text { s.t. }\left\{\begin{array}{l}\mathbf{A X} \leq \mathbf{b}, \quad \text { 其中 } \mathrm{X}_{\left(\mathrm{m}^* 1\right)} \\ \mathbf{X} \geq \mathbf{0}\end{array}\right.\end{aligned} maxz=CTX s.t. {AXb, 其中 X(m1)X0 min ⁡ w = Y b s.t.  { Y A ≥ C T , 其中  Y ( 1 ∗ n ) Y ≥ 0 \begin{aligned} & \min w=\mathbf{Y b} \\ & \text { s.t. }\left\{\begin{array}{l}\mathbf{Y A} \geq \mathbf{C}^T, \text { 其中 } \mathrm{Y}_{\left(1^* \mathrm{n}\right)} \\ \mathbf{Y} \geq 0\end{array}\right.\end{aligned} minw=Yb s.t. {YACT, 其中 Y(1n)Y0
max ⁡ z = ∑ j = 1 n c j x j s.t.  { ∑ j = 1 n a i j x j ≤ b i ( i = 1 , 2 , … , m ) x j ≥ 0 ( j = 1 , 2 , … , n ) \begin{aligned} & \max \mathrm{z}=\sum_{j=1}^n c_j x_j \\ & \text { s.t. }\left\{\begin{array}{l}\sum_{j=1}^n a_{i j} x_j \leq b_i(i=1,2, \ldots, m) \\ x_j \geq 0(j=1,2, \ldots, n)\end{array}\right.\end{aligned} maxz=j=1ncjxj s.t. {j=1naijxjbi(i=1,2,,m)xj0(j=1,2,,n) min ⁡ w = ∑ i = 1 m b i y i s.t.  { ∑ i = 1 m a i j y i ≥ c j ( j = 1 , 2 , … , n ) y i ≥ 0 ( i = 1 , 2 , … , m ) \begin{aligned} & \min w=\sum_{i=1}^m b_i y_i \\ & \text { s.t. }\left\{\begin{array}{l}\sum_{i=1}^m a_{i j} y_i \geq c_j(j=1,2, \ldots, n) \\ y_i \geq 0(i=1,2, \ldots, m)\end{array}\right.\end{aligned} minw=i=1mbiyi s.t. {i=1maijyicj(j=1,2,,n)yi0(i=1,2,,m)

对称性:对偶问题的对偶问题是原问题。任何一个线性规划问题存在且有唯一的对偶问题。


弱对偶性:若 X ‾ \overline{\mathbf{X}} X 是原问题的可行解, Y ‾ \overline{\mathbf{Y}} Y 是对偶问题的可行解,则存在 C X ‾ ⩽ Y ‾ b \mathbf{C} \overline{\mathbf{X}} \leqslant \overline{\mathbf{Y}} \mathbf{b} CXYb

原问题最优目标函数值是对偶目标函数值的下界,对偶问题最优目标函数值是原问题目标函数值的上界。
在这里插入图片描述

坐标轴理解: 坐标轴自左向右逐渐增大。如果原问题和对偶问题都有可行解 X ‾ 、 Y ‾ \overline{\mathbf{X}} 、 \overline{\mathbf{Y}} XY,那么说明原问题和对偶问题都存在某个可行解对应的函数值,而因为原问题为 max ⁡ \max max 类型,则更优解会在 Z ∗ \mathrm{Z}^* Z 右侧,而对偶问题为 m i n \mathrm{min} min 类型,更优解会在 W ∗ \mathrm{W}^* W 左侧,两者一定会在某一处取得相同的最优目标函数值,因此存在 C X ‾ ⩽ Y ‾ b \mathbf{C} \overline{\mathbf{X}} \leqslant \overline{\mathbf{Y}} \mathbf{b} CXYb

将原问题和对偶问题看做是两个人在角力,目标函数值视为擂台。原问题自左向右冲,对偶问题自右向左冲,如果问题有可行解,那么就在擂台上,如果有无界解,那么就将对方挤出擂台。


无界性

  1. 若原问题/对偶问题有无界解,那么对偶问题/原问题无可行解
    在这里插入图片描述
    如果原问题有无界解,说明原问题最优值随着坐标轴一直向右延伸,对偶问题被挤出擂台,所以对偶问题无可行解。

  2. 若原问题/对偶问题无可行解,那么对偶问题/原问题无可行解或有无界解

  3. 若原问题有可行解,而对偶问题无可行解,那么原问题有无界解

  4. 若对偶问题有可行解,而原问题无可行解,那么对偶问题有无界解

补充:原问题和对偶问题中有一个为无穷多/唯一最优解,无法退出另一个最优解的情况。


最优性:设 X ^ \widehat{\mathbf{X}} X 是原问题的可行解, Y ^ \widehat{\mathbf{Y}} Y 是对偶问题的可行解,当 C X ^ = Y ^ b \mathbf{C} \hat{\mathbf{X}}=\hat{\mathbf{Y}} \mathbf{b} CX^=Y^b 时, X ^ \hat{\mathbf{X}} X^ Y ^ \hat{\mathbf{Y}} Y^ 是最优解。
对偶定理:
表述1:若原问题和对偶问题都有可行解,则都有最优解,而且最优解的目标函数值相等。
表述2:若原问题有最优解,则对偶问题也有最优解,而且目标函数值相等。


互补松驰定理:线性规划问题的最优解中,如果对应某一约束条件的对偶变量值非零,那么该约束条件取严格等式;反之如果约束条件取严格不等式,那么对应的对偶变量一定为零。也即:
{ y i ∗ ( ∑ j = 1 n a i j x j − b i ) = 0 ( i = 1 , 2 , … , m ) x j ∗ ( ∑ i = 1 m a i j y i − c j ) = 0 ( j = 1 , 2 , … , n ) \left\{\begin{array}{l} y_i *\left(\sum_{j=1}^n a_{i j} x_j-b_i\right)=0(i=1,2, \ldots, m) \\ x_j *\left(\sum_{i=1}^m a_{i j} y_i-c_j\right)=0(j=1,2, \ldots, n) \end{array}\right. {yi(j=1naijxjbi)=0(i=1,2,,m)xj(i=1maijyicj)=0(j=1,2,,n)

应用:由原/对偶问题最优解求对偶/原问题最优解

这篇关于对偶问题的基本性质的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/567850

相关文章

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

如何解决Spring MVC中响应乱码问题

《如何解决SpringMVC中响应乱码问题》:本文主要介绍如何解决SpringMVC中响应乱码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC最新响应中乱码解决方式以前的解决办法这是比较通用的一种方法总结Spring MVC最新响应中乱码解

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

SpringBoot整合MybatisPlus的基本应用指南

《SpringBoot整合MybatisPlus的基本应用指南》MyBatis-Plus,简称MP,是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,下面小编就来和大家介绍一下... 目录一、MyBATisPlus简介二、SpringBoot整合MybatisPlus1、创建数据库和

解决Java中基于GeoTools的Shapefile读取乱码的问题

《解决Java中基于GeoTools的Shapefile读取乱码的问题》本文主要讨论了在使用Java编程语言进行地理信息数据解析时遇到的Shapefile属性信息乱码问题,以及根据不同的编码设置进行属... 目录前言1、Shapefile属性字段编码的情况:一、Shp文件常见的字符集编码1、System编码

Spring MVC使用视图解析的问题解读

《SpringMVC使用视图解析的问题解读》:本文主要介绍SpringMVC使用视图解析的问题解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC使用视图解析1. 会使用视图解析的情况2. 不会使用视图解析的情况总结Spring MVC使用视图

Redis解决缓存击穿问题的两种方法

《Redis解决缓存击穿问题的两种方法》缓存击穿问题也叫热点Key问题,就是⼀个被高并发访问并且缓存重建业务较复杂的key突然失效了,无数的请求访问会在瞬间给数据库带来巨大的冲击,本文给大家介绍了Re... 目录引言解决办法互斥锁(强一致,性能差)逻辑过期(高可用,性能优)设计逻辑过期时间引言缓存击穿:给

Java程序运行时出现乱码问题的排查与解决方法

《Java程序运行时出现乱码问题的排查与解决方法》本文主要介绍了Java程序运行时出现乱码问题的排查与解决方法,包括检查Java源文件编码、检查编译时的编码设置、检查运行时的编码设置、检查命令提示符的... 目录一、检查 Java 源文件编码二、检查编译时的编码设置三、检查运行时的编码设置四、检查命令提示符