02线性规划重点.pptVIP

  • 24
  • 0
  • 约7.08千字
  • 约 74页
  • 2016-08-11 发布于湖北
  • 举报
谢谢 由于是求最大值问题,目标函数的等值线应沿梯度方向推进,临界等值线为 2x1 ? 3x2 = 6 与可行域交于一线段 PQ,其中 P(0, 2),Q(6/5, 6/5),最优解为 PQ 上任一点,最优值为 6。 图 2.3.1 例 2.3.3 求解线性规划问题 min Z = ?2x1 ? x2, s.t. ?x1 ? x2 ? 2 x1 ? 4x2 ? 2 xi ? 0(i = 1, 2) 线性规划问题的可行域如图 2.3.2 所示,目标函数的梯度方向为 (?2, 1)T。由于是求最小值问题,目标函数的等值线应沿负梯度方向推进,可一直进行下去,得不到临界等值线,此问题目标值无下界,无最优解。 例 2.3.4 求解线性规划问题 min Z = ?2x1 ? 5x2, s.t. ?x1 ? x2 ? 2 ?x1 ? x2 ? 3 xi ? 0(i = 1, 2) 线性规划问题的可行域如图 2.3.3 所示,是一空集。此问题无最优解。 §2.4 用 Matlab 解线性规划 在 Matlab 软件的优化工具箱中,求解线性规划的函数为:linprog。其调用格式为 x = linprog(c, A, b, Aeq, beq, xLB, xUB) 适用模型为: 其中 Aeq、beq 表示约束条件中的等式约束部分AeqX = beq 的系数矩阵和常数向量。 使用 Matlab 求解线性规划问题, 必须是这样的“标准形式”。 例 2.4.1 在§2.2 的引例中,我们对食用油加工计划问题建立了如下的线性规划模型: 将上述模型改写成 Matlab 适用的模型,其形式为: 建立 M 文件,编写 Matlab 程序: c = [110; 120; 130; 110; 115; -150] A = [1, 1, 0, 0, 0, 0; 0, 0, 1, 1, 1, 0; 8.8, 6.1, 2, 4.2, 5, -6; -8.8, -6.1, -2, -4.2, -5, 3]; b = [200; 250; 0; 0]; Aeq =[1, 1, 1, 1, 1, -1]; beq = 0; xLB = zeros(6, 1); xUB = inf*ones(6, 1); x = linprog(c, A, b, Aeq, beq, xLB, xUB); x,Profit=c*x 运行上述 Matlab 程序,计算得: x = 159.2593 40.7407 0.0000 250.0000 0 450.0000 Profit = -1.7593e+004 于是月采购与生产计划为: 总利润:1.7593?104 生产量:450 0 250 0 40.7407 159.2593 采购量 OIL3 OIL2 OIL1 VEG2 VEG1 原油 §2.5 灵敏度分析 灵敏度分析是指对系统因周围条件变化显示出来的敏感程度的分析。 在前面讨论的线性规划问题中,我们都设定 aij, bi, cj 是常数。但在许多实际问题中,包括大型线性规划问题,这些系数往往是估计值或预测值,经常有少许的变动。 例如在§2.2 的引例(食用油加工计划)中,如果市场条件发生变化,cj 值就会随之变化;生产工艺条件发生改变,会引起 bi 变化,aij 也会由于种种原因产生改变。 因此提出这样两个问题: ? 如果参数 aij, bi, cj 中的一个或者几个发生了变化,现行最优方案会有什么变化? ? 将这些参数的变化限制在什么范围内,原最优解仍是最优的? 当然,有一套关于“优化后分析”的理论方法,可以进行灵敏度分析。具体参见有关的优化理论教科书。 但在实际应用中,给定参变量一个步长重复求解线性规划问题,以观察最优解的变化情况,不失为一种可用的数值方法,特别是使用

文档评论(0)

1亿VIP精品文档

相关文档