灵敏度分析与参数规划
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例4
• 在上一节例1中增加一个新的约束条件, 问原最优解是否仍然保持?若不能,则 求出新的最优解.
• 事实上,并不是一张正规单纯形表,因 为将新约束条件的系数填入基变量x8所在 的行以后,破坏了原来的单位矩阵(最 优基).为了恢复原来的单位矩阵,需要用 矩阵的初等行变换将单位列向量中新出 现的非零元素变为零,这样得表
• 这是因为在B-1中的第l列只有一个非零元 素1,故上界无限制.
§4 技术系数的灵敏度分析
• 4.1 个别技术系数的变化 • 4.2 增加新变量的灵敏度分析
– 新产品
• 4.3 增加新约束条件的灵敏度分析
– 增加一道工序
4.1 个别技术系数的变化
根据变动的系数aij处于矩阵A中的哪一列 又可分为两种情况来考虑:一是aij处于 非基变量列中;二是aij处于基变量列 中. • 非基变量xj的系数列向量Pj的变化 • 基变量xj的系数列向量Pj的变化
三个问题
• 当这些数据中有一个或几个发生变化时, 已求得的线性规划问题的最优解会有什 么变化? • 这些数据在什么范围内变化时,已求得 的线性规划问题的最优解或最优基不变? • 若原最优基不再是最优基,如何在先前 优化的基础上迅速求得新的最优方案?
灵敏度分析
• 以上三个问题正是灵敏度分析所要讨论 的问题. • 灵敏度分析(Sensitivity analysis) • 又称为优化后分析(Post-optimality analysis) • 因为它是在已求得线性规划最优解的基 础上,来讨论这些数据的变化对最优解 的影响.
增加等式约束与不等式约束
• 增加等式约束R(A)增大需要增加基 变量没有明显的可增加的基变量引 入人工变量作为基变量再用大M法或 两阶段法 • 增加不等式约束R(A)增大需要增加 基变量引入的松弛变量正好成为基变 量立即得到新问题的一个正则解
例5 综合实例
本章小结
2.1 非基变量的价值系数的变化
• 这就是保持原最优解不变时,基变量的 目标系数的变化范围. • 当超出这个范围时,原最优解将不再是 最优解了, • 为了求新的最优解,必须在原最优单纯 形表的基础上,继续往下迭代以求得新 的最优解.
例1
• 为保持现有最优解不变,分别求非基变 量x1,x3的系数c1,c3的变化范围. • 当c1变为5时,求新的最优解.
发生变化的对象
在实际问题中,下面这些数据或条件是会 经常发生变化的: • 目标函数系数的变化; • 右端常数的变化; • 消耗系数的变化
– 包括增加新的变量 – 增加新的约束条件
§2 目标函数系数的灵敏度分析
• 目标函数系数的变化会引起检验数的变 化,从而影响最优性条件是否成立.
分情况讨论
• 可分为对应的是非基变量的系数或基变 量的系数两种情况来讨论.
注意!
进基出基法则不能绝对化!
§3 右端常数的灵敏度分析
• 右端常数 bi的变化,和B-1、A、C不相关, σ没有变化, • 会影响到原最优解的可行性与目标函数 值.
怎么记?
• 当br在此范围内变化时,基B的最优性虽 然仍可保持,但最优解中基变量的值和 目标函数值同时改变 • 当br变化超出范围时,必须破坏基B的可 行性,可用对偶单纯形法继续迭代
例2
• 在 上一节例 1中,若基变量x2的技术系数 列向量由 P2=(3,4,4)T变为 P’2=(4,5,6)T, 而它在目标函数中的系数由c2=5变为 c’2=6.试求变化后的最优解.
• 并不是一个正规的单纯形表,因为没有单位矩 阵.为了得到一个单位矩阵,注意到x2仍为第3 个基变量,故必须将x2 所在列变成单位列向量, 同时将σ’2=-7/2变为0,即以a’32=9/4为主元进行 矩阵的初等变换(这种变换没有换基, x2 仍为 基变量).
不换基!
• 若基变量系数的变化导致原始可行性条 件和对偶可行性条件均被破坏,即产生 了对原问题和对偶问题均为非可行解时, 这就需要引入人工变量重新求解,或者 用第三章中介绍的求初始正则解的方法 求解.这里就不详细讨论了.
4.2 增加新变量的灵敏度分析
建模时漏掉了
例3
• 在上一节例1中新增一个决策变量由(相 当于生产计划中增加一种新产品)已知 价值系数c8=7,技术系数P8=(3,2,5)T.问 该产品是否值得投产?如果值得投产, 求新的最优解.
考察数据变化对现行最优方案的影响,实 际上考查对基B最优性的影响。因此,可 考虑从以下两个方面入手: • 数据的变化是否影响基B的原始可行性
B b0
1
1
• 数据的变化是否影响基B的对偶可行性
C CB B A 0
原问题
对偶问题
结论或继续计算的步骤
可行解 可行解
非可行解
可行解 非可行解
可行解
参数规划
• 参数规划问题 • Parametric Programming
• 研究当某些数据是某一个参数的线性函 数时,该参数的连续变化对线性规划问 题最优解的影响.
目录
§1 §2 §3 §4 §5 灵敏度分析的基本原理 目标函数系数的灵敏度分析 右端常数的灵敏度分析 技术系数的灵敏度分析 参数线性规划
• 首先,要在最优表中查出最优基 B的逆 矩阵 (它就在与初始表中单位矩阵—— 初始基相对应的位置. • 其次,将B-1的第r列中的正元素放在不等 式左边,负元素放在不等式右边 • 最后,再按公式求出△br的上下界.
例1
在上一节例l中 • 为保持现有最优解不变,分别求b1,b2,b3 的允许变化范围. • 如果b3减少150,验证原最优解是否可行? 如果不可行,求出改变后的最优解及最 优值.
表中的解仍为最优解 用单纯形法继续迭代求最 优解 用对偶单纯形法继续迭代 求最优解
引入人工变量,编制新的 单纯形表求最优
非可行解 非可行解
C变 CN
CB b变 A变 N B 变量 约束 增加一列 不等式约束,增加一行一列 等式约束,大M法
XB
4.3 增加新约束条件的灵敏度分析
• 具体作法是在原最优单纯形表上增加一 行和一列,增加的行中以xn+1(松弛变量) 为基变量,并在变量又下面填入 am+1,j(j=1,2,…,n) ,增加的列Pn+1是一个单 位列向量.它的最下面的一个元素为1, 其余元素均为0(包括σn+1=0)这样增加一 行以后,可能破坏了原最优表上的单位 矩阵(最优基)要用矩阵的初等行变换将 原单位矩阵恢复.然后再继续迭代求 解.
• 为了保持现有的最优解或最优基不变, 找出这些数据变化的范围,即所谓数据 的稳定性区间. • 当这些数据的变化超出了范围时,如何 在原有最优解或最优基的基础上,作微 小的调整,尽快求出新的最优解或最优 基.
单纯形法的优点
• 某些数据只和表中的某些块有关,因而 当这些数据发生变化时,只需对上表中 的某些块进行修改,便可得到新问题的 单纯形表,从而能够进行判别和迭代, 而不必从头开始计算线性规划问题
第四章 灵敏度分析与参数规划
前面的假设
• 前几章讨论线性规划问题时,总是假设 是不变的常数. • 但实际上这些数据往往是根据以往资料, 或估计值、或预测值,不可能很精确, 而且随着情况的变化,这些数据也会经 常发生变化.
实际的情况
面对市场经济: • 价格的波动会引起价值系数的变化; • 工艺的改进引起消耗系数的变化; • 资源储量的变化会引起右端常数的变化; • 增加新产品会引起决策变量的增加; • 增加新的资源限制会引起约束条件的增 加等等。
Wh来自百度文库?
N C N CB B N
1
基变量xr的价值系数Cr的变化引起CB的变化, 从而导致所有非基变量的检验数发生变化。
• △的变化超出此范围时,破坏了基B的对 偶可行性,此时可用单纯形法继续迭代
例2
• 为保持现有最优解不变分别求例1中基变 量x2,x4的变化范围,并问当CB由(0,4,5)改 变为(0,6,2)时,原最优解是否仍然保持最 优?如果不是,该怎么办?
§1 灵敏度分析的基本原理
• 当其中的某些数据发生变化时,就可能 使这个最优解或最优基发生变化.
灵敏度分析的任务
• 研究这些数据的变化对最优解或最优基 的影响.
优化后分析
• 因为它是在已求得最优解的基础上进行 分析
灵敏度分析的理论依据
• 就是看条件是否仍成立.
灵敏度分析所研究的问题
1. 非基变量xj的系数列向量Pj的变化
yi 0 ?
• 非基变量的技术系数的变化,仅影响基B 地对偶可行性,不影响B的可行性
2基变量xj的系数列向量Pj的变化
例1
上一节例1 • 为保持现有最优解不变,分别求非基变 量x1,x3的系数的变化范围; • 若非基变量x1 的系数由(1,3,5)T变为 (1,4,1)T,考察原最优解是否仍然保持最 优?若不是,该怎么办?
5
3/4
2.2 基变量的价值系数的变化
cr CB
怎么记?
• 首先,要在最优表上查出基变量xr所在行 中的元素a’rj • 然后,只取与非基变量所在列相对应的 元素,将其中的正元素放在不等式左边, 负元素放在不等式右边, • 最后,分别求出△cr的上下界.
然后,只取与非基变量所在列相对应的元素, 将其中的正元素放在不等式左边,负元素放 在不等式右边,
• 将最优解代入,判断是起作用约束,还 是不起作用约束
• 增加等式约束条件,一般地将使约束矩 阵A的秩增加,故需增加基变量.显然, 增加一个不等式约束也可以看作是增加 一个等式约束,但是,此时引入的松弛 变量正好成为基变量,故可立即得到新 问题的一个正则解.而增加一个等式约 束时,没有明显的可添加的基变量,故 需引入人工变量xn+1作为基变量,再用大 M法或两阶法将它剔除.