求线性规划问题的最优解
- 格式:doc
- 大小:270.50 KB
- 文档页数:4
第一章 线性规划1、由图可得:最优解为2、用图解法求解线性规划: Min z=2x 1+x 2⎪⎪⎩⎪⎪⎨⎧≥≤≤≥+≤+-01058244212121x x x x x x解:由图可得:最优解x=1.6,y=6.4Max z=5x 1+6x 2⎪⎩⎪⎨⎧≥≤+-≥-0,23222212121x x x x x x解:由图可得:最优解Max z=5x 1+6x 2, Max z= +∞Maxz = 2x 1 +x 2⎪⎪⎩⎪⎪⎨⎧≥≤+≤+≤0,5242261552121211x x x x x x x由图可得:最大值⎪⎩⎪⎨⎧==+35121x x x , 所以⎪⎩⎪⎨⎧==2321x xmax Z = 8.1212125.max 23284164120,1,2maxZ .jZ x x x x x x x j =+⎧+≤⎪≤⎪⎨≤⎪⎪≥=⎩如图所示,在(4,2)这一点达到最大值为26将线性规划模型化成标准形式:Min z=x 1-2x 2+3x 3⎪⎪⎩⎪⎪⎨⎧≥≥-=++-≥+-≤++无约束321321321321,0,052327x x x x x x x x x x x x解:令Z ’=-Z,引进松弛变量x 4≥0,引入剩余变量x 5≥0,并令x 3=x 3’-x 3’’,其中x 3’≥0,x 3’’≥0Max z ’=-x 1+2x 2-3x 3’+3x 3’’⎪⎪⎩⎪⎪⎨⎧≥≥≥≥≥≥-=++-=--+-=+-++0,0,0'',0',0,05232'''7'''5433213215332143321x x x x x x x x x x x x x x x x x x x7将线性规划模型化为标准形式Min Z =x 1+2x 2+3x 3⎪⎪⎩⎪⎪⎨⎧≥≤-=--≥++-≤++无约束,321321321321,00632442392-x x x x x x x x x x x x解:令Z ’ = -z ,引进松弛变量x 4≥0,引进剩余变量x 5≥0,得到一下等价的标准形式。
求线性规划问题的最优整数解的方法作者:陈树礼来源:《中学教学参考·理科版》2010年第01期线性规划是新教材新增内容,在近几年高考中都以较易题目出现,要学好本节内容,应注意以下三点.一、判定最优解求线性目标函数z=ax+by(a≠0、b≠0)在线性约束条件下的最优解问题,可转化为求直线y=-abx+zb在y轴上的截距的最大值和最小值.易知在b>0时,当zb最大时,z取得最大值,当zb最小时,z取得最小值;在b二、求出最优解依据边界直线的斜率(或倾斜角)计算出最优解.三、修正最优解,得到最优整数解现改编人教版高二(上例3的问题,以求达到抛砖引玉的目的.【例】某工厂生产甲、乙两种产品.已恬生产甲种产品1t需耗A种矿石10t、B种矿石5t、煤4t;生产乙种产品1t需耗A种矿石4t、B种矿石4t、煤9t.每1t甲种产品的利润是600元,每1t乙种产品的利润是1000元.工厂在生产这两种产品的计划中要求消耗A种矿石不超过300t、B种矿石不超过200t、煤不超过360t.求:(1)甲、乙两种产品各生产多少吨(精确到1吨)才能使利润最大?(2)若甲种产品每吨利润600元,乙产品每吨利润200元.甲、乙两种产品各生产多少吨(精确到1吨)才能使利润最大?(3)若甲种产品每吨利润400元,乙产品每吨利润200元.甲、乙两种产品各生产多少吨(精确到1吨)才能使利润最大?(4)若甲种产品每吨利润200元,乙产品每吨利润600元.甲、乙两种产品各生产多少吨(精确到1吨)才能使利润最大?(5)若甲种产品每吨利润1000元,乙产品每吨利润800元.甲、乙两种产品各生产多少吨(精确到1吨)才能使利润最大?解:(1)设生产甲、乙两种产品分别为x吨,y吨.利润为z元.则10x+4y≤300,5x+4y≤200,4x+9y≤360,x≥0,y≥0,z=600x+1000y.作出以上不等式组表示的平面区域,即可行域.作直线:600x+1000y=0,即直线:3x+5y=0,则z=200(3x+5y).设u=3x+5y,则当u最大时,z最大.易知直线NQ、MN、PM的斜率分别为-52,-54,-49,直线l的斜率为-53.平移直线∵M点为最优解点.由方程组5x+4y=200,4x+9y=360得M点的坐标为(36029,100029).∵x,y都是正整数,∴u=3x+5y=608029也应为正整数.∴u=3x+5y≤209.于是整点(11,35)为所求.当生产甲产品11吨,乙产品35吨时,能使利润总额最大.(2)此时目标函数为z=600x+200y.作直线平移直线∵直线经过点Q(30,0)时,z取得最大值.即只生产甲产品30吨时,获得利润最大.(3)此时目标函数为z=400x+200y.作直线平移直线∵-类似(1)可求解.(4)此时目标函数为z=200x+600y.作直线平移直线∵--49.∴当直线经过点P(0,40)时,5x+4y=0,即只生产乙产品40吨时,获得利润最大.(5)此时目标函数为z=1000x+800y.作直线平移直线∵-∴当直线与直线5x+4y=0重合时,z取得最大值.∴当点位于线段MN上任意一点时,都能使z取得最大值.总之,在本部分内容的学习中,要做到“一定、二算、三修正”.(责任编辑金铃)。
求解线性规划的方法
求解线性规划问题的常用方法有以下几种:
1. 单纯形法(Simplex Method):单纯形法是解线性规划问题的经典方法,通过逐步迭代找到目标函数的最优解。
它适用于小到中等规模的问题。
2. 内点法(Interior Point Method):内点法通过在可行域内的可行点中搜索目标函数最小化的点来解决线性规划问题。
相对于单纯形法,内点法在大规模问题上的计算效率更高。
3. 梯度法(Gradient Method):梯度法是基于目标函数的梯度信息进行搜索的一种方法。
它适用于凸优化问题,其中线性规划问题是一种特殊的凸优化问题。
4. 对偶法(Duality Method):对偶法通过构建原问题和对偶问题之间的关系来求解线性规划问题。
通过求解对偶问题,可以得到原问题的最优解。
5. 分支定界法(Branch and Bound Method):分支定界法通过将原问题划分为更小的子问题,并逐步确定可行域的界限,来搜索目标函数的最优解。
需要根据具体的问题规模、约束条件和问题特点选择合适的方法进行求解。
线性规划经典例题一、问题描述某工厂生产两种产品A和B,产品A每单位利润为10元,产品B每单位利润为8元。
工厂有两个车间,分别是车间1和车间2。
每天车间1生产A产品需要2小时,B产品需要1小时;车间2生产A产品需要1小时,B产品需要3小时。
每天车间1的工作时间为8小时,车间2的工作时间为10小时。
工厂需要决定每天在两个车间分别生产多少单位的A和B产品,以最大化利润。
二、数学模型设每天在车间1生产的A产品单位数为x1,B产品单位数为y1;车间2生产的A产品单位数为x2,B产品单位数为y2。
根据题目要求,可以得到以下约束条件:车间1的工作时间约束:2x1 + 1y1 ≤ 8车间2的工作时间约束:1x2 + 3y2 ≤ 10产品A的产量约束:x1 + x2 ≤ A总产量产品B的产量约束:y1 + y2 ≤ B总产量非负约束:x1, y1, x2, y2 ≥ 0目标函数为利润的最大化:10x1 + 8y1 + 10x2 + 8y2三、求解过程1. 确定决策变量和目标函数决策变量:x1, y1, x2, y2目标函数:10x1 + 8y1 + 10x2 + 8y22. 确定约束条件车间1的工作时间约束:2x1 + 1y1 ≤ 8车间2的工作时间约束:1x2 + 3y2 ≤ 10产品A的产量约束:x1 + x2 ≤ A总产量产品B的产量约束:y1 + y2 ≤ B总产量非负约束:x1, y1, x2, y2 ≥ 03. 求解最优解利用线性规划求解方法,将目标函数和约束条件输入线性规划求解器,得到最优解。
四、数值计算与结果分析假设A总产量为100单位,B总产量为80单位。
将上述条件带入线性规划求解器,得到最优解如下:x1 = 20,y1 = 0,x2 = 60,y2 = 20根据最优解,工厂每天在车间1生产20单位的A产品,不生产B产品;在车间2生产60单位的A产品和20单位的B产品。
此时,工厂的利润最大化为:10 * 20 + 8 * 0 + 10 * 60 + 8 * 20 = 1160 元。
线性规划问题的解法与最优解分析线性规划是一种数学建模方法,用于解决最优化问题。
它在工程、经济学、管理学等领域有着广泛的应用。
本文将介绍线性规划问题的解法和最优解分析。
一、线性规划问题的定义线性规划问题是指在一定的约束条件下,求解一个线性目标函数的最大值或最小值的问题。
线性规划问题的数学模型可以表示为:max/min Z = c₁x₁ + c₂x₂ + ... + cₙxₙsubject toa₁₁x₁ + a₁₂x₂ + ... + a₁ₙxₙ ≤ b₁a₂₁x₁ + a₂₂x₂ + ... + a₂ₙxₙ ≤ b₂...aₙ₁x₁ + aₙ₂x₂ + ... + aₙₙxₙ ≤ bₙx₁, x₂, ..., xₙ ≥ 0其中,Z表示目标函数的值,c₁, c₂, ..., cₙ为目标函数中的系数,a₁₁,a₁₂, ..., aₙₙ为约束条件中的系数,b₁, b₂, ..., bₙ为约束条件中的常数,x₁,x₂, ..., xₙ为决策变量。
二、线性规划问题的解法线性规划问题的解法主要有两种:图形法和单纯形法。
1. 图形法图形法适用于二维或三维的线性规划问题。
它通过绘制约束条件的直线或平面以及目标函数的等高线或等高面,来确定最优解。
首先,将约束条件转化为不等式,并将其绘制在坐标系上。
然后,确定目标函数的等高线或等高面,并绘制在坐标系上。
最后,通过观察等高线或等高面与约束条件的交点,找到最优解。
图形法简单直观,但只适用于低维的线性规划问题。
2. 单纯形法单纯形法是一种迭代的求解方法,适用于高维的线性规划问题。
它通过在可行域内不断移动,直到找到最优解。
单纯形法的基本思想是从初始可行解开始,每次通过找到一个更优的可行解来逼近最优解。
它通过选择一个基本变量和非基本变量,来构造一个新的可行解。
然后,通过计算目标函数的值来判断是否找到了最优解。
如果没有找到最优解,则继续迭代,直到找到最优解为止。
单纯形法是一种高效的求解线性规划问题的方法,但对于大规模的问题,计算量会很大。
第五章线性规划线性规划(Linear Programming,简记为LP)是数学规划的一个重要的分支,其应用极其广泛.1939年,前苏联数学家康托洛维奇(Л.B.Kah )在《生产组织与计划中的数学方法》一书中,最早提出和研究了线性规划问题.1947年美国数学家丹泽格(G. B. Dantzig)提出了一般线性规划的数学模型及求解线性规划的通用方法─单纯形方法,为这门科学奠定了基础.此后30年,线性规划的理论和算法逐步丰富和发展.1979年前苏联数学家哈奇扬提出了利用求解线性不等式组的椭球法求解线性规划问题,这一工作有重要的理论意义,但实用价值不高.1984年在美国工作的印度数学家卡玛卡(N. Karmarkar)提出了求解线性规划的一个新的内点法,这是一个有实用价值的多项式时间算法.这些为线性规划更好地应用于实际提供了完善的理论基础和算法.第一节线性规划问题及其数学模型一、问题的提出例1 某工厂在计划期内要安排生产Ⅰ、Ⅱ两种产品,已知条件如表所示。
问应如何安排计划使该工厂获利最多?ⅠⅡ现有资源设备原材料A 原材料B 14248台时16kg12kg每件利润23ⅠⅡ现有资源设备原材料A 原材料B 1402048台时16kg12kg每件利润23解: 设x 1、x 2 分别表示在计划期内产品Ⅰ、Ⅱ的产量。
12max 23z x x =+..s t 1228x x +≤1416x ≤2412x ≤12,0x x ≥二、线性规划问题的标准型112211112211211222221122123max ..,,0n nn n n n m m m mn n mn z c x c x c x s t a x a x a x b a x a x a x b a x a x a x b x x x x =+++⎧⎪+++=⎪⎪+++=⎨⎪⎪+++=⎪≥⎩,,其中1,,0m b b ≥11max ..,1,2,,0,1,2,,nj jj nij j i j j z c x s t a x b i mx j n=====≥=∑∑ 12(,,,)T n c c c =c 12(,,,)Tn x x x =x 12(,,,)Tm b b b =b 111212122212n nm m mn a a a a a a a a a ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦A 12[,,,]n = p p pmax ..()Tz s t ⎧=⎪=≥⎨⎪≥⎩c x Ax b b x 001max ..()Tnj j j z s tx =⎧=⎪⎪=≥⎨⎪⎪≥⎩∑c xp bb x 00对于不是标准形式的线性规划问题,可以通过下列方法将线性规划的数学模型化为标准形式:(1)目标函数的转换对min z 可以化max()z -(2)右端项的转换对0i b <,给方程两边同时乘以1-(3)约束条件的转换约束条件为≤方程左边加上一个变量,称为松弛变量约束条件为≥方程左边减上一个变量,称为剩余变量(4)变量的非负约束变量j x 无限制时,令,,0j j j j j x x x x x ''''''=-≥变量0j x ≤时,令j jx x '=-例将下列线性规划模型转化为标准形式12312312312312min 23..7232500x x x s t x x x x x x x x x x x -+-⎧⎪++≤⎪⎪-+≥⎨⎪--=-⎪≥≥⎪⎩,解(1)变量的非负约束令345x x x =-1245max 233x x x x -+-..s t 612457x x x x x ++-+=712452x x x x x -+--=12453225x x x x -++-=§2 两变量线性规划问题的图解法例1 求下列线性规划的解12121212max ..284300z x x s t x x x x x x =+⎧⎪+≤⎪⎪≤⎨⎪≤⎪≥≥⎪⎩,解(1)画可行域c A B D C 2x 1x O (2)画出目标函数的梯度向量:(3)作目标函数的一条等值线,120x x z +=将等值线沿梯度方向移动当等值线即将离开可行例2 求下列线性规划的解12121212max 2..284300z x x s t x x x x x x =+⎧⎪+≤⎪⎪≤⎨⎪≤⎪≥≥⎪⎩,解(1)画可行域c A B D C 2x 1x O (2)画出目标函数的梯度向量:(3)作目标函数的一条等值线,1202x x z +=将等值线沿梯度方向移动当等值线即将离开可行域时与可行域“最后的交点点为问题的最优解例3 求下列线性规划的解12121212max ..2200z x x s t x x x x x x =+⎧⎪-≤⎪⎨-≥-⎪⎪≥≥⎩,c2x 1x O无解例4 求下列线性规划的解12121212min 3..123600z x x s t x x x x x x =-⎧⎪≤⎪⎨≥⎪⎪≥≥⎩++,2x 1x O线性规划问题的性质:(1)线性规划的可行域为凸集,顶点个数有限.若可行域非空有界,则可行域为凸多边形.(2)线性规划可能有唯一最优解,可能有无数多个最优解,也可能无解最优解.无最优解可能是目标函数在可行域上无界,也可能可行域为空集.(3)若线性规划有最优解,则最优解必可在可行域的某个顶点达到.若两个顶点都为最优解,那么这两点连线上的所有点都是线性规划的最优解.§3 线性规划解的概念及其性质1 线性规划解的概念考虑线性规划问题max ..()Tz s t ⎧=⎪=≥⎨⎪≥⎩c x Ax b b x 00定义.1 矩阵A 中任何一组m 个线性无关的列向量构成的可逆矩阵B 称为线性规划的一个基矩阵与这些列向量对应的变量称为基变量(basis variable )其余变量称为基对应的非基变量(nonbasis variable )B 若设一个基为12(,,)m B p p p = ,12,,,m x x x ——为基B 对应的基变量1,,m n x x + ——为基B 对应的非基变量1B m x x x ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦1m N n x x x +⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦12(,,,)m m n ++= N p p p (,)=A B N 从而令=Ax b 则(,)N x ⎡⎤=⎢⎥⎣⎦B x B N b11B Nx B b B Nx --=-B N Bx Nx b+=令0N x =则1B x B b-=10B b -⎡⎤⎢⎥⎣⎦——基本解(basis solution )满足10B b -⎡⎤≥⎢⎥⎣⎦,=≥0Ax b x 的基本解——基本可行解(basis feasible solution )对应的基称为可行基(feasible basis ).B 可以写成即:定义4 若基本可行解中所有基变量都为正,这样的基本可行解称为非退化解(non-degenerate solution).若基本可行解中某基变量为零,这样的基本可行解称为退化解(degenerate solution).例1212112max ..28400z x x s t x x x x x =-⎧⎪+≤⎪⎨≤⎪⎪≥≥⎩,标准化得:12123141234max ..28400,00z x x s t x x x x x x x x x =-⎧⎪++=⎪⎨+=⎪⎪≥≥≥≥⎩,,12341210(,,,)1001⎡⎤==⎢⎥⎣⎦A p p p p 子阵是否为基基变量非基变量基本解目标函数值134(,)=B p p 34,x x 12,x x (0,0,8,4)是231(,)=B p p 31,x x 24,x x (4,0,4,0)312(,)=B p p 12,x x 34,x x (4,2,0,0)424(,)=B p p 24,x x 13,x x (0,4,0,4)-4514(,)=B p p 14,x x 23,x x (8,0,0,4)-是是是是042基本可行解1x O(4,0)(4,2)(0,4)(8,0)2x 顶点2 解的判别定理定理1 最优解的判别准则设B 为线性规划LP 的一个基,1(1)0-≥B b 1(2)T T--≥0Bc B A c 则基对应的基本可行解1-⎡⎤⎢⎥⎣⎦0B b 是LP 的最优解.1(1,2,,)σ--== TBj j j c B p c j n 为变量对应的检验数j x 112[0,,0,,,]σσσ-++-= ,T TBm m n c B A c 显然基变量对应得检验数为零.定理2 无穷多个最优解的判别定理在线性规划的最优解中,某个非基变量对应的检验数为零,则线性规划有无数多最优解.定理3 无界解的判别定理设B 为线性规划的一个可行基,若基本可行解中s x 对应的检验数0σ<s ,且1-≤0s B p 则线性规划具有无界解(或称无解).某非基变量§3.4 单纯形表设B 为线性规划的一个基,x 为对应的可行解,则=Ax b两边同乘得1-B 11--=B Ax B b两边同乘得T Bc 11T T --=BBc B Ax c B b T z =c xTz -=c x 11T T --+-=TBBz c B Ax c x c B b 11(T T --+-=)TBBz c B A c x c B b1111()T TT z ----⎧+-=⎨=⎩BBc B A c x c B b B Ax B b 11111T T Tz ----⎡⎤⎡⎤-⎡⎤=⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦0BBc B b c B A c x B A B b 定义矩阵1111TT----⎡⎤-⎢⎥⎣⎦T BBc B b c B A c B bB A 为基B 对应的单纯形表(table of simplex ),记为()T B1111()T T----⎡⎤-=⎢⎥⎣⎦T BBc B b c B A c T B B bB A 检验数函数值基变量的值各变量的系数100T b -=Bc B b 101020(,,,)--= T TBn c B A c b b b 10201-⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥ b b B b则单纯形表可写成000101011102()⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦B n n m m mn b b b b b b T b b b 1112121222111112(,,)---⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦n n n m m mn b b b b b b B A B p B p bb b上例中1212112max ..28400z x x s t x x x x x =-⎧⎪+≤⎪⎨≤⎪⎪≥≥⎩,标准化得:121231412max ..28400z x x s t x x x x x x x =-⎧⎪++=⎪⎨+=⎪⎪≥≥⎩,12341210(,,,)1001⎡⎤==⎢⎥⎣⎦A p p p p 子阵是否为基基变量非基变量基本解目标函数值134(,)=B p p 34,x x 12,x x (0,0,8,4)是231(,)=B p p 31,x x 24,x x (4,0,4,0)312(,)=B p p 12,x x 34,x x (4,2,0,0)424(,)=B p p 24,x x 13,x x (0,4,0,4)-4514(,)=B p p 14,x x 23,x x (8,0,0,4)-是是是是042基本可行解1x O(4,0)(4,2)(0,4)(8,0)2x 顶点13410(,)01⎡⎤==⎢⎥⎣⎦B p p 231(,)=B p p 12341210(,,,)1001⎡⎤==⎢⎥⎣⎦A p p p p T(0,0)=B C 10()T⎡⎤-=⎢⎥⎣⎦c T B b A 34011008121041001z x x -⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦23140101()4021141001x x ⎡⎤⎢⎥=-⎢⎥⎢⎥z T B 121101--⎡⎤=⎢⎥⎣⎦B 31401014021141001z x x ⎡⎤⎢⎥−−→-⎢⎥⎢⎥⎣⎦T(0,1)=B C单纯形表的特点:1、基变量对应的检验数为零2、基变量的系数构成单位阵§5旋转变换(基变换)设已知12(,,,,,)= r m j j j j B p p p p T()=B 1 r m j j j z x x x 1sn x x x 0001001011110102⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦sn s n r r rs rn m m ms mn b b b b b b b b b b b b b b b b为了将s x 变为基变量,而将r j x 变为非基变量,必须使表中的第s 列向量变为单位向量,变换按下列步骤进行:(1)将()T B 中第r 行,第s 列的元素化为1.01(,,,,,1,,) rj r rnr rs rs rs rsb b b b b b b b (2)将()T B 中第s 列的的其余元素化为0.0101(,,,,,0,,)---- is rn is rj is r is r i i ij in rs rs rs rsb b b b b b b b b b b b b b b b由此得出变换后矩阵中各元素的变换关系式如下,其中,01== ,,,rjrj rsb b j nb ,,01,01=-≠== ,,,,,,is rjij ij rsb b b b i r i m j nb 变换式称为旋转变换rs b 称为旋转元,r称为旋转行称为旋转列,s s x 称为入基变量,称为出基变量,r j x {,}r s定理3.5.1,01== ,,,rj rj rsb b j n b ,,0,01=-≠== ,,,,,is rj ij ij rsb b b b i r i m j n b 在变换之下,将基12(,,,,,)= r m j j j j B p p p p 的单纯形表变为基12(,,,,,)= m j s j j B p p p p 的单纯形表第6节单纯形法基本思路是:线性规划(通常是求最小值的形式)若有最优解,其必定在可行域(在相应几何空间中是一个凸多面体)的顶点达到,故从某一个顶点出发,沿着凸多面体的棱向另一顶点迭代,使得目标函数的值增加,经过有限次迭代,将达到最优解点.1.入基变量及出基变量的确定入基变量的确定由上面可知,目标函数用非基变量表示的形式为01n j jj m z z x σ=+=-∑若某检验数0j σ<则j x 的系数大于零,将j x 由零变为非零,目标函数值增大.所以,为了使的取值目标函数值增加,可以将某检验数0j σ<对应的非基变量j x 中的某个变为基变量.{}min 0j s j σ=<则s x 可选作为入基变量.即:在负检验数中,列标最小的检验数对应的非基变量入基.2.出基变量的确定在确定出基变量时应满足两个原则:(1)目标函数值不减;(2)保证新的基本解为基本可行解.0min 0,0i is is b b i m b θ⎧⎫=>≤≤⎨⎬⎩⎭min ,00i is is b r i b i m b θ⎧⎫==>≤≤⎨⎬⎩⎭,2 单纯形法设已知一个初始可行基及B T()B 基变量指标集合为{}1,,B m J j j = 非基变量的指标集合为{}1,2,,\N BJ n J =单纯形法若所有()00j N b j J ≥∈,则停止,最优解为0,1,,0,ij i j N x b i m x j J **⎧==⎪⎨=∈⎪⎩否则转(2).(1)最优性检验(2)选入基变量{}0min 0,j N s j b j J =<∈若()01~is b i m ≤=,则停止,(LP)无最优解,否则转(3)(3)选出基变量0min 0,0i is is b b i m b θ⎧⎫=>≤≤⎨⎬⎩⎭0min ,00i is is b r i b i m b θ⎧⎫==>≤≤⎨⎬⎩⎭,(4)作{},r s 旋转运算,01rj rj rsb b j n b == ,,,,,01,01is rj ij ij rsb b b b i r i m j n b =-≠== ,,,,,,得B 的单纯形表()()ijT B b =,以ij b 代替ij b ,转(1)例1 求线性规划问题的解解标准型为:121231425max 2328416.412,,,,0z x x x x x x x s t x x x x x x x =+++=⎧⎪+=⎪⎨+=⎪⎪≥12121212max 2328416.412,0z x x x x x s t x x x =++≤⎧⎪≤⎪⎨≤⎪⎪≥⎩12123142512345max 2328416.412,,,,0z x x x x x x x s t x x x x x x x =+++=⎧⎪+=⎪⎨+=⎪⎪≥⎩-20-381612121004001004001345z x x x 12345x x x x x 000⎤⎥⎥⎥⎥⎥⎥⎡⎢⎢⎢⎢⎢⎢0T()B =0345[,,]B p p p =00T()T c B bA ⎡⎤-=⎢⎥⎣⎦-20-381612121004001004001345z x x x 12345x x x x x 000⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣0T()B =8/116/408-3441202101001/400400135z x x 12345x x x x x 01/20⎤⎥⎥⎥⎥⎥⎥⎡⎢⎢⎢⎢⎢⎢1/4-41x08-3441202101001/400400135z x x 12345x x x x x 01/20⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣1/4-1x 4/212/40140244011/201001/40002-15z x 12345x x x x x 3/21/80⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣1/8-1x 32x 1/2例2求线性规划问题的解解标准型为:121231425max 228416.412,,,,0z x x x x x x x s t x x x x x x x =+++=⎧⎪+=⎪⎨+=⎪⎪≥12121212max 228416.412,0z x x x x x s t x x x =++≤⎧⎪≤⎪⎨≤⎪⎪≥⎩12123142512345max 228416.412,,,,0z x x x x x x x s t x x x x x x x =+++=⎧⎪+=⎪⎨+=⎪⎪≥⎩-10-281612121004001004001345z x x x 12345x x x x x 000⎤⎥⎥⎥⎥⎥⎥⎡⎢⎢⎢⎢⎢⎢0T()B =0345[,,]B p p p =00T()T c B bA ⎡⎤-=⎢⎥⎣⎦-10-281612121004001004001345z x x x 12345x x x x x 000⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣0T()B =8/116/404-2441202101001/400400135z x x 12345x x x x x 01/40⎤⎥⎥⎥⎥⎥⎥⎡⎢⎢⎢⎢⎢⎢1/4-41x0-2441202101001/400400135z x x 12345x x x x x 00⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣1/4-1x 4/212/4080244011/201001/400015z x 12345x x x x x 100⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣1/8-1x 32x 41/42-1/2080244011/201001/400015z x 12345x x x x x 100⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣1/8-1x 2x 2T 0803280101/410101/2-004-12z 12345x x x x x 00⎤⎥⎥⎥⎥⎥⎥⎦⎡⎢⎢⎢⎢⎢⎢⎣01x 2x 42-1/25x 11212x k x k x =+12120,1,1k k k k ≤≤+=全部最优解为§7 两阶段法第二阶段从初始可行基开始,用单纯形法求解原问题.(LP )max ..(0)0T z c x s t Ax b b x ⎧=⎪=≥⎨⎪≥⎩(ALP )max ..0()T w s t z ⎧=-⎪-=⎪⎨+≥⎪⎪≥⎩00T e y c x A =b b x y x 第一阶段引入人工变量,构造辅助问题,求辅助问题的最优解,得出原问题的初始可行基及对应的基本可行解.(ALP)12112211112211121122222211212312max..0 ,,,,0mn nn nn nm m mn n m mn mw y y ys t z c x c x c xa x a x a x y ba x a x a x y ba x a x a x y bx x x x y y y=----⎧⎪----=⎪⎪++++=⎪++++=⎨⎪⎪++++=⎪⎪≥⎩,,,,,121111211112122122212000000100()010001m m m m i i i in i=1i i i n n n m m m mn b a a a c c c b a a a T B b a a a b a a a ===⎡⎤----⎢⎥⎢⎥---⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦∑∑∑∑。
求线性规划问题的最优解:
121212123
max 2322124 16.. 5 15,,0z x x x x x s t x x x x =++≤⎧⎪
≤⎪⎨
≤⎪⎪≥⎩ 方法1:图解法。
(P15 图1-3)
方法2:求出所有的基可行解,然后比较目标值的大小得到最优解。
(P14表1-1)
方法3:单纯形法。
第一步,将模型转化为标准型。
12345
123142512345
max 2300022 12 (1)4 16 (2).. 5 15 (3)
,,,,0z x x x x x x x x x x s t x x x x x x x =++++++=⎧⎪+=⎪⎨+=⎪⎪≥⎩ 221004*********A ⎛⎫ ⎪
= ⎪ ⎪
⎝⎭ 秩A=3 第二步,求初始基可行解。
取()345100 010001B P P P ⎛⎫ ⎪
== ⎪ ⎪⎝⎭
作为初始基矩阵,345, , x x x 为基变量,12, x x 为非基变量,
令12
=0,x x =得到初始基可行解()(0)0,0,12,16,15X =,目标值(0)0.z =
第三步,对初始基可行解()(0)
0,0,12,16,15X =进行最优性检验。
基可行解()(0)
0,0,12,16,15X =对应的目标值为(0)0z =,因为12023z x x =++,只要1>0x 或
者2 0x >,目标值都会比(0)0z =大,即12or x x 之一作为基变量,目标值都会增大,故初始基可行
解()(0)
0,0,12,16,15X
=不是最优解。
第四步,作基变换,求目标值比(0)
0z =更大的基可行解。
① 确定换入基变量。
由第三步可知,12, x x 都可作为换入基变量,一般地,
{}121122*********, 0,0. max ,z x x x x σσσσσσσ=++=++≥≥=。
2 x 作为换入基变量。
这里12,σσ称为基可行解(0)X 非基变量12, x x 的检验数。
② 确定换出基变量。
2 x 作为换入基变量,1x 仍为非基变量,下面确定另一个非基变量,由方程组(1)(2)(3)得到
312
41
5212345
1222 164 15 5,,,,0
x x x x x x x x x x x x =--⎧⎪
=-⎪⎨
=-⎪⎪≥⎩令10,x =且345,,0x x x ≥得到32452 1220 16 0 1550
x x x x x =-≥⎧⎪=≥⎨⎪=-≥⎩,解不等式得到2
12
15min ,,32
5x R ⎧⎫≤=⎨⎬⎩⎭。
当2
3x <时,345,,0x x x >,345,,x x x 都不能作为非基变量,但345,,x x x 中必须有一个被换出来
作为非基变量,我们注意到当23x =时,3450,0,0x x x >>=,说明5x 可以作为非基变量。
③ 求目标值更大的基可行解。
由①②知,新的基可行解中234,,x x x 是基变量,15,x x 是非基变量,注意方程组(1)(2)
(3)中
34,x x 的系数列向量已经是单位矩阵的第一列和第二列,2x 的系数列向量应变换为单位矩
阵的第三列,而方程组只能是恒等变形,所以让第三个方程1
5
⨯,然后让第三个方程()2⨯-再加到第
一各方程上,可得到下列与(1)(2)(3)等价的方程组
12
1
351425
12345
max 02322 6 (1)5
4 16 (2)1 3 (3)
5,,,,0z x x x x x x x x x x x x x x =++⎧
'+-=⎪⎪
'+=⎪⎨
⎪'+=⎪⎪≥⎩ 令
150,x x ==得到新的基可行解()(1)0,3,6,16,0X =,目标值(1)20339z =⨯+⨯=
第五步,对基可行解()(1)
0,3,6,16,0X =进行最优性检验。
将目标函数用非基变量
15,x x 表示,
215151155151333233929, 20,0
555z x x x x x x x σσσσ⎛
⎫==+-=+-=++=>=-< ⎪⎝
⎭因为5x 的检验数5305
σ=-<,故5x 从非基变量取0变为大于0,不会使得目标函数值增大,反而更小,但是1x 的检验数120σ=>,故1x 从非基变量取0变为大于0,目标函数值还可以增大,故
基可行解()(1)
0,3,6,16,0X
=仍然不是最优解。
第六步,作基变换,求目标值比(1)
9z =更大的基可行解。
① 确定换入基变量。
由第五步可知,只有120σ=>,即1x 是换入基变量, ② 确定换出基变量。
1 x 作为换入基变量,
5x 仍为非基变量,下面确定另一个非基变量,由方程组
(1)(2)(3)'''得到
31541
2512345
2 62 5 164 1
3 5
,,,,0x x x x x x x x x x x x ⎧
=-+⎪⎪=-⎪⎨
⎪=-⎪⎪≥⎩令50,x =且342,,0x x x ≥得到31412 620 1620 3 0
x x x x x =-≥⎧⎪=-≥⎨⎪=≥⎩,解不等式
得到1
616min ,,324x R ⎧⎫
≤=⎨⎬⎩⎭。
当1
3x <时,342,,0x x x >,342,,x x x 都不能作为非基变量,但342,,x x x 中必须有一个被换出来
作为非基变量,我们注意到当1
3x =时,3420,0,0x x x =>>,说明3x 可以作为非基变量。
③ 求目标值更大的基可行解。
由①②知,新的基可行解中124,x x x 是基变量,35,x x 是非基变量,注意方程组(1)(2)(3)
'''中
24,x x 的系数列向量已经是单位矩阵的第三列和第二列,1x 的系数列向量应变换为单位矩阵的第
一列,而方程组只能是恒等变形,所以让第一个方程1
2
⨯,然后让第一个方程()4⨯-再加到第二个方
程,可得到下列与(1)(2)(3)'''等价的方程组
151
35345
25123453max 925
11 3 (1)25
4 2 4 (2)51
3 (3)
5,,,,0
z x x x x x x x x x x x x x x x =+-
⎧
''+-=⎪⎪
⎪''-++=⎪⎨
⎪''+=⎪⎪
⎪≥⎩ 令
350,x x ==得到新的基可行解()(2)3,3,0,4,0X =,目标值(2)233315z =⨯+⨯=
第七步,对基可行解()(2)
3,3,0,4,0X =进行最优性检验。
将目标函数用非基变量
35,x x 表示,
12
35535
33553523111 23332551
155
1
15, 10,0
5
z x x x x x x x x x σσσσ=+⎛⎫⎛
⎫=-++- ⎪ ⎪
⎝⎭⎝⎭=--=++=-<=-<
因为
35,x x 的检验数都小于0,故1x 或者5x 从非基变量取0变为大于0,都不会使得目标函数
值增大,反而更小,故基可行解()(2)
3,3,0,4,0X
=是最优解。