对偶问题的基本性质

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

相关文章

mapstruct中的@Mapper注解的基本用法

《mapstruct中的@Mapper注解的基本用法》在MapStruct中,@Mapper注解是核心注解之一,用于标记一个接口或抽象类为MapStruct的映射器(Mapper),本文给大家介绍ma... 目录1. 基本用法2. 常用属性3. 高级用法4. 注意事项5. 总结6. 编译异常处理在MapSt

MyBatis ResultMap 的基本用法示例详解

《MyBatisResultMap的基本用法示例详解》在MyBatis中,resultMap用于定义数据库查询结果到Java对象属性的映射关系,本文给大家介绍MyBatisResultMap的基本... 目录MyBATis 中的 resultMap1. resultMap 的基本语法2. 简单的 resul

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Java死锁问题解决方案及示例详解

《Java死锁问题解决方案及示例详解》死锁是指两个或多个线程因争夺资源而相互等待,导致所有线程都无法继续执行的一种状态,本文给大家详细介绍了Java死锁问题解决方案详解及实践样例,需要的朋友可以参考下... 目录1、简述死锁的四个必要条件:2、死锁示例代码3、如何检测死锁?3.1 使用 jstack3.2

解决JSONField、JsonProperty不生效的问题

《解决JSONField、JsonProperty不生效的问题》:本文主要介绍解决JSONField、JsonProperty不生效的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录jsONField、JsonProperty不生效javascript问题排查总结JSONField

github打不开的问题分析及解决

《github打不开的问题分析及解决》:本文主要介绍github打不开的问题分析及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、找到github.com域名解析的ip地址二、找到github.global.ssl.fastly.net网址解析的ip地址三

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

springboot加载不到nacos配置中心的配置问题处理

《springboot加载不到nacos配置中心的配置问题处理》:本文主要介绍springboot加载不到nacos配置中心的配置问题处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录springboot加载不到nacos配置中心的配置两种可能Spring Boot 版本Nacos