线性规划问题

1.      概述

线性规划问题是在一组线性约束下,求资源配置的最大最小值的问题。

直观的变现是在一个约束条件围成的区域上寻找一个点,这个点使得资源配置最优化:

2.      线性规划的思想

线性规划的思路是将不等式转换为等式,最终求得一个满足等式的解。

下面的约束式必然可以转换为[P|N]*X=B的形式,这里P是线性无关的M*M的方正。如果说将剩余的N-M个X设置为0。那么表达式转换为了P*X=B,也就是可以用到线性代数中方正的解法。

那么问题也就转换为了,如何找出P继而求出X了。

3.      步骤

3.1    转换不等式为等式


这一步,会根据不等式的数量增加多个变量

3.2    寻找初始基底


显然有X1到Xm为基底

因此最优解的形式变为了

因为:

最优解变成了如下的形式:

由于Xj是必然>=0的,因此Z优化的问题实际上是在讨论 ,因为如果改对象大于0,则提高Xj必然会提高Z,那么还不是最优解,只有当 所有检验系数<=0的情况下才会有最优解,这是Z无法再变大了,非基变量取0,,此时Z0是最优解。

3.3    如何取得最优解

这就要用到上面图所展示的性质了,最优解必然是定点,定点必然是线性无关的基可行解,基可行解必然是定点。总而言之,也就是说最优解必然是基可行解中的求得。

那么实际上也就是说线性规划仅需要:

a.寻找不同的基Bi

b.然后求出Bi对应的基可行解Xi

c.最后被寻找满足所有检验系数 <=0的解X

 

3.4线性规划的实施步骤

a.寻找初始基底

这一步通过增加松弛变量和人工变量来实现

人工变量涉及到了一个可解与不可解的问题,采用大M法两阶段法

 

1)大M法在于给与人工变量一个极大的系数M,


按理来说X6,X7是必须等于0的情况下取得最优解才算是原表达式有最优解,最终的基变量中必须不能存在x6,x7。如果不满足的话那么就说明无解

2)两阶段法

a.第一阶段是求最小化问题,

如果说w最小值为0,那么说明是存在基可行解的(存在基可行解说明存在基,存在基也就可以计算原始表达式的基可行解,如此也就可能得到最优解),可以进行第二阶段

b.第二阶段

第一阶段必然会得到一个最优解的基底,这时从中去除人工变量。然后继续优化即可。(这个地方需要再理解一下)

http://baike.baidu.com/link?url=BY-xFheoEH_Wndb7qCJpUmibcjEFv6XeER52eKn5MtzeeOM-kdeeCOGU-W-diNcYfjfvpettosFHhs0SL4AGjXJyIzrW6VaSWXUTjqh9VJVGjwtlarQwznorRhOuuVRg

因为人工变量是虚拟的,在最优时它不应该有取值。如果原问题有可行解,那么人工变量必定取零yi=0(i=1, 2, ···,m),那么辅助问题的最优值一定为z=0。设最优解目标函数值为z,第一阶段求解的结果有三种可能的情况:

(1)如果第一阶段求解结果为z≠0,说明最优解的基变量中含有非零的人工变量,从而表明原问题无可行解,

不必进行第二阶段,计算终止。

(2)如果第一阶段求解结果z=0,如果辅助问题的最优基变量中没有人工变量,进入第二阶段。

(3)如果第一阶段求解结果z=0,如果辅助问题的最优基变量中仍有为0的人工变量,这表明原问题有退化的情况,在辅助问题的最优的单纯形表中有:】

其中 为非基变量下标集,这时又分两种情况:

(i)若arj全为0,则人工变量所在行中有原变量(现在是非基变量)下的元素都是0,这表明原问题的约束方程中有多余的,将其去掉,转入第二阶段。

(ii)若arj不全为0,则以ars为主元,进行换基迭代,最后转入转入第二阶段。

=================================================================

b.转换基底

如果存在 检验系数>0的情况,说明还没有获得最优解,这种情况下需要替换基底变量。选择检验系数最大的那一个替换,(可能因为增加X的时候Z增加的最大)

而换进的变量则是:

 

 

3.5退化的情况

如果在选择换入的情况下出现了存在多个 ,会出现退化。因为基变量中多出现了0,这会导致在计算进行多次迭代后会出现循环的情况。采用勃兰特法可以不出现循环。

总流程:

 

总结:

线性规划需要重视的在于,

1.       算法主要流程

2.       有解性的条件

3.       初始基底构造方法及基底的交换规则

4.       退化的情况

可参考的思想在于:

1.       表达式的化简,将不等式转换为等式,最优化问题转换为了对检查参数的校验问题

2.       逐步求解的思想,如何正确的寻找求解的方向

 

运筹学 —线性规划总结相关推荐

  1. 【数学思维】运筹学-线性规划之标准形式与Hidden LP

    [数学思维]运筹学-线性规划之标准形式与Hidden LP 一.线性规划的标准形式 二.LP规约为标准形式的常见情况 三.Hidden LP 本篇博文内容来自于我学习的研究生课程,由祁琦老师主讲的&l ...

  2. 运筹学 --- 线性规划

    运筹学 - 线性规划 概述 基本假设(线性) 决策变量每增加一个单位,对目标函数的贡献是一样的 可加性 允许非整数 所有参数均已知 标准形式 形式 maxZ = CX AX = b X >= 0 ...

  3. 管理运筹学软件计算机解咋看,管理运筹学-线性规划的计算机求解ppt课件.ppt

    <管理运筹学-线性规划的计算机求解ppt课件.ppt>由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关<管理运筹学-线性规划的计算机求解ppt课件.ppt> ...

  4. 单纯形法表格法例题详解_优化 |运筹学线性规划单纯形法之求解

    文章申明 文章作者:臧永森 臧永森:清华大学工业工程系在读博士,研究方向:运筹优化算法的设计与应用.数据统计分析.大数据技术与应用,戚铭尧老师团队 责任编辑:阎泳楠 文章由『运筹OR帷幄』原创发布,如 ...

  5. 运筹学 ——线性规划之单纯形法

    专栏简介: 大家好,我是小佘,一名交通专业在读本科生.新学期我们专业开设了运筹学课程,运筹学是本专业核心课程之一,所以学好运筹学是很有必要的.开设这个专栏的目的主要是为了督促自己及时整理,复习所学知识 ...

  6. kt条件例题运筹学_2016年山东大学管理学院运筹学(线性规划部分)之运筹学基础及应用(同等学力加试)复试笔试最后押题五套卷...

    一.计算题 1. 用两阶段法求解以下线性规划问题 [答案]第一阶段:加入松弛变量x 4,x 5,人工变量x 6,数学模型为: 用单纯形法求解如表所示. 表 第一阶段的最优解为X= 第二阶段:除去人工变 ...

  7. 运筹学----线性规划组成三要素、可行域、最优值、线性规划问题数学模型一般形式、线性规划问题数学模型标准形式

    线性规划的组成的三要素   可行域.最优值  建立线性规划问题数学模型的步骤 一般形式:  标准形式:         约束条件要是等式,右端常量要求非负的

  8. 【Matlab基础学习】运筹学-线性规划简单总结

    线性规划问题: linprog函数 2.1 x = linprog(f,A,b) 可用于求解 2.2 x = linprog(f,A,b,Aeq,beq) 可用于求解 2.3 x = linporg( ...

  9. 运筹学 | 线性规划求解算法 | 单纯形法的python实现

    单纯形法是在线性规划可行域的顶点中搜索最优解的算法,可以被分为三个步骤: 找到顶点 搜索顶点 判断在某顶点处是否最优 如何找到可行域的顶点? 存在由线性等式和不等式构成的多面体 P={X∈Rn∣∑j= ...

最新文章

  1. 99_leetcode_Best Time to Buy and sell Stock
  2. Ansible 基础-介绍
  3. Oracle SQL中实现indexOf和lastIndexOf功能
  4. Linux邮件系统整合windows 2008 R2 AD域认证更新
  5. 不记得 Git 命令? 懒人版 Git 值得拥有!
  6. Qt——线程类QThread
  7. Java常量什么时候被回收,JVM GC调优(2)-GC算法判定对象可以被回收(部分摘自深入理解Java虚拟机) - Java 技术驿站-Java 技术驿站...
  8. logback日志pattern_Springboot整合log4j2日志全解
  9. ubuntu 20.04 美化开机动画
  10. 北京专业一般人小规模代理记账
  11. oracle有rtf函数,Delphi中对Oracle存取RTF文档(作者:苏涌)
  12. Android系统中的常用时间戳及时间单位
  13. Python爬虫实战——反爬策略之代理IP【无忧代理】
  14. ecilpse写html图片,eclipse怎么导入图片
  15. 第二十章 幻读是什么,幻读有什么问题?
  16. java计算机毕业设计高校学生综合素质测评系统MyBatis+系统+LW文档+源码+调试部署
  17. 我们为什么做不好软件项目?做项目时间都浪费在反复奸奸杀杀,杀杀奸奸上了
  18. Ubuntu下安装Remix OS双系统
  19. 本周最新文献速递20210801
  20. onnx-modifier使用

热门文章

  1. Java实现 蓝桥杯 基础练习 特殊的数字
  2. 12 聚类模型 -- 机器学习基础理论入门
  3. 「 LaTex 」 写论文,插入图片方法
  4. 【Java】import org.junit.Test 和@Test报错
  5. ps导出gif时是html,ps导出gif图步骤图解
  6. 玄学:那些年我为之疯狂的超能力(有音频版)
  7. Scala 令人着迷的类设计
  8. 【ubuntu】Ubuntu 安装中文输入法
  9. 视频分析(三):背景减法
  10. AI学习之路(19)TensorFlow里的矩阵乘法