- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单纯形法(使用版).ppt
第2章单纯形法 主要内容 (1) 按数学模型确定初始可行基和初始基可行解 (2) 计算各非基变量xj的检验数, 检查检验数,若所有检验数 则已得到最优解,可停止计算。否则转入下一步。 (3) 在σj>0, j=m+1,…,n中,若有某个σk对应xk的系数列向量Pk≤0,则此问题是无界,停止计算。 否则,转入下一步。 (4) 根据max(σj>0)=σk,确定xk为换入变量(进基,所在列称主元列) (5)按θ规则(最小比值原则)计算,确定xl为换出变量(出基,所在行称主元行) (6) 以alk为主元进行迭代(即用高斯消去法或称为旋转运算),把xk所对应的列向量 将XB列中的xl换为xk,得到新的基可行解。重复(2)~(6),直到终止。 为了使xk与xl进行对换,须把Pk变为单位向量,这可以通过上述方程式系数矩阵的增广矩阵进行初等变换来实现。 变换后新的增广矩阵为 由此可得到变换后系数矩阵各元素的变换关系式: 练习 用单纯形法求解下述线性规划问题 2.4.1 人工变量法 设线性规划问题的约束条件 若没有作为初始基的单位矩阵,则分别给每一个约束方程加入人工变量xn+1,…,xn+m,得到 2.4.1.1 大M法 在一个线性规划问题的约束条件中加进人工变量后,要求人工变量对目标函数取值不受影响;为此假定人工变量在目标函数中的系数为(-M)(M为任意大的正数),若为最小化问题,系数取为M。 目标函数要实现最大化时,必须把人工变量从基变量换出。否则目标函数不可能实现最大化。 2.4.1.2两阶段法 第一阶段—— 不考虑原问题是否存在基可行解;给原线性规划问题加入人工变量,并构造仅含人工变量的目标函数和要求实现最小化。 目的: 判断原问题是否存在可行解; 得到一个初始基可行解。 2.4.1.2两阶段法 第二阶段—— 将第一阶段计算得到的最终表,除去人工变量。将目标函数行的系数,换原问题的目标函数系数,作为第二阶段计算的初始表。各阶段的计算方法及步骤与单纯形法相同。 例 试用两阶段法求解线性规划问题 第二阶段 练习 用大M法和两阶段法求解下述线性规划问题 2.4.2 退化 单纯形法计算中用θ规则确定换出变量时,有时存在两个以上相同的最小比值,这样在下一次迭代中就有一个或几个基变量等于零,这就出现退化解。 循环现象 1974年由勃兰特(Bland)提出一种简便的规则,简称勃兰特规则: (1) 选取cj-zj>0中下标最小的非基变量xk为换入变量,即 k=min(j|cj-zj>0) (2) 当按θ规则计算存在两个和两个以上最小比值时,选取下标最小的基变量为换出变量。 按勃兰特规则计算时,一定能避免出现循环。 [1] 单目标、多目标与整数规划,卢开澄,清华大学出版社。 [2] 线性规划及其应用,胡清淮等,科学出版社。 [3] 解线性规划的单纯形算法中避免循环的几种方法,裘宗沪,数学实践与认识,1978年,第4期。 X*=(4,2,0,0,4) T z*=14 Ex. §2.3 单纯形法的进一步讨论 2.3.1 人工变量法 2.3.2 退化 人工变量在目标函数中的系数如何取? 初始基可行解是什么? 是不是必须加入m个人工变量? 人工变量能否取值非零? 如何求解带有人工变量的线性规划问题? 1、 2、 3、 4、 5、 例 试用大M法求解如下线性规划问题。 这里M是一个任意大的正数。 解 在上述问题的约束条件中加入松弛变量x4,剩余变量x5,人工变量x6,x7,得到 人工变量出基后能否删去该人工变量在系数矩阵中所在的列? 编程时,M如何赋值? 能否考虑把问题分步解决? 1、 2、 3、 用单纯形法求解上述模型,若得到ω=0,这说明原问题存在基可行解,可以进行第二段计算。否则原问题无可行解,应停止计算。 第一阶段 人工变量 取值为0 Ex. 单 纯 形 法 小 结 单纯形法的基本原理 单纯形法的计算步骤 人工变量法 本章小结 *杨晓艺 数学建模(公修) * 数学建模(公修) 单纯形法的引入 2.1 单纯形法的计算步骤 2.2 单纯形法的进一步讨论 2.3 先找到一个基可行解(初始基可行解),检验其是否为最优解,否则,再找到一个使目标函数所改进的基可行解,再进行检验,反复迭代,直至找到最优解或判定问题无界。 单纯形方法的基本思路 某厂生产两种产品,下表给 出了单位产品所需资源及单位产品 利润 问:应如何安
文档评论(0)