




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数学建模案例之线性规划专题学习优化问题及其一般模型: 引 言 优化问题是人们在工程技术、经济管理和科学研究等领域中最常遇到的问题之一。例如: 设计师要在满足强度要求等条件下选择材料的尺寸, 使 结构总重量最轻; 利润最高; 调度人员要在满足物质需求和装载条件下安排从各供应点 到需求点的运量和路线,使运输总费用最低; 投资者要选择一些股票,债券下注,使收益最大,而风险最小 一般地,优化模型可以表述如下: 这是一个多元函数的条件极值问题,其中 x = x 1 , x 2 , , x n 。 许多实际问题归结出的这种优化模型,但是其决策变量个数 n 和约束条件个数 m 一般较大,并且最优解往往在可行
2、域的边界上取得,这样就不能简单地用微分法求解,数学规划就是解决这类问题的有效方法。 引 言数学规划模型分类:“数学规划是运筹学和管理科学中应用及其广泛的分支。在许多情况下,应用数学规划取得的如此成功,以致它的用途已超出了运筹学的范畴,成为人们日常的规划工具。”H.P.Williams.数学规划模型的建立。 数学规划包括线性规划、非线性规划、整数规划、几何规划、多目标规划等,用数学规划方法解决实际问题,就要将实际问题经过抽象、简化、假设,确定变量与参数,建立适当层次上的数学模型,并求解。 引 言建立数学规划模型的步骤:当你打算用数学建模的方法来处理一个优化问题的时候,首先要确定寻求的决策是什么,
3、优化的目标是什么,决策受到那些条件的限制(如果有限制的话),然后用数学工具(变量、常数、函数等)表示它们,最后用合适的方法求解它们并对结果作出一些定性、定量的分析和必要的检验。 引 言引 言Step 1. 寻求决策,即回答什么?必须清楚,无歧义。 阅读完题目的第一步不是寻找答案或者解法,而是Step 2. 确定决策变量 第一来源:Step 1的结果,用变量固定需要回答的决策 第二来源:由决策导出的变量(具有派生结构) 其它来源:辅助变量(联合完成更清楚的回答)Step 3. 确定优化目标 用决策变量表示的利润、成本等。Step 4. 寻找约束条件 决策变量之间、决策变量与常量之间的联系。 第一
4、来源:需求; 第二来源:供给; 其它来源:辅助以及常识。Step 5. 构成数学模型 将目标以及约束放在一起,写成数学表达式。 内容: 如何建立线性规划模型举例 线性规划模型的求解方法要求: 掌握线性规划模型的建立方法 掌握利用数学软件 LINDO 、Matlab等求解线性规划模型的方法 理解单纯形法的计算步骤重点、难点: 重点:线性规划模型的建立与软件求解 难点:线性规划问题的理论求解方法单纯形法简介 线性规划是最简单、应用最广泛的一种数学规划方法,也是应用最早的一种最优化方法; 线性规划的数学模型是目标函数和全部约束式都是变量的线性函数; 线性规划是学习运筹学的首要课程之一; 1947年,
5、丹茨格(Dantzig)提出了单纯形法,使线性规划的算法趋于成熟; 在数学上讲,线性规划问题就是研究一类条件极值问题,即在一组线性约束条件(包括等式及不等式约束)下,找出一个线性函数的最大值或最小值。例1:加工奶制品的生产计划 一奶制品加工厂用牛奶生产A1,A2两种奶制品,一桶牛奶可以在设备甲上用12小时加工成3公斤A1,或者在设备乙上用8小时加工成4公斤A2。根据市场需求,生产的A1、A2全部能够售出,且每公斤A1获利24元,每公斤A2获利16元。现在加工厂每天能够得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且设备甲每天至多能加工100公斤A1,设备乙的加工能力没有限制。试
6、为该厂制定一个生产计划,使每天获利最大? 并进一步讨论以下三个附加问题: 1)若用35元可以买到一桶牛奶,应否作这项投资?若投资,每天最多购买多少桶牛奶? 2)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时多少元? 3)由于市场需求变化,每公斤A1的获利增加到30元,应否改变生产计划?问题分析企业内部的生产计划有各种不同的情况。 空间层次 工厂级:根据外部需求和内部设备、人力、原料等条件,以最大利润为目标制订产品生产计划 车间级:根据生产计划、工艺流程、资源约束及费用参数等,以最小成本为目标制订生产批量计划 时间层次 若短时间内外部需求和内部资源等不随时间变化,可制订单阶段生
7、产计划,否则应制订多阶段生产计划问题分析1桶牛奶 3公斤A1 12小时 8小时 4公斤A2 或获利24元/公斤 获利16元/公斤 每天50桶牛奶 时间480小时 至多加工100公斤A1 制订生产计划,使每天获利最大 35元可买到1桶牛奶,买吗?若买,每天最多买多少? 可聘用临时工人,付出的工资最多是每小时几元? A1的获利增加到 30元/公斤,应否改变生产计划?1桶牛奶 3公斤A1 12小时 8小时 4公斤A2 或获利24元/公斤 获利16元/公斤 模型构成引入决策变量 x1 桶牛奶生产 A1, x2 桶牛奶生产 A2 (每天)目标函数(每天获利) 生产 A1 获利: 243x1 生产 A2
8、获利: 164 x2 每天获利总额:z=72x1+64x2 约束条件 原料供应: x1+x250 劳动时间: 12x1+8x2480 加工能力: 3x1100 非负约束: x1 , x2 0模型构成 数学模型:LP 模型线性规划模型具有的三条性质比例性 可加性 连续性 xi对目标函数的“贡献”与xi取值成正比 xi对约束条件的“贡献”与xi取值成正比 xi对目标函数的“贡献”与xj取值无关 xi对约束条件的“贡献”与xj取值无关 A1,A2每公斤的获利是与各自产量无关的常数每桶牛奶加工出A1,A2的数量和时间是与各自产量无关的常数A1,A2每公斤的获利是与相互产量无关的常数每桶牛奶加工出A1,
9、A2的数量和时间是与相互产量无关的常数加工A1,A2的牛奶桶数是实数 xi取值连续LP问题的一般概念 1. LP模型的一般形式 求一组决策变量x1,x2,xn的值,使其满足约束条件: 并使目标函数 取得最大(或最小)值,其中aij,bi,cj为已知量。LP问题的一般概念2.标准形式其中LP问题的一般概念3.将一般线性规划模型转化为标准形 例题:将下述LP模型转化成标准形式解:转化分为目标函数、大于等于约束、小于等于约束和自由约束变量几个不同部分。 LP问题的一般概念目标函数 max z=4x1+5x2+7x3-x4 min z1=-4x1-5x2-7x3+x4约束条件 大于等于约束x1+x2+
10、2x3-x4 1 添加剩余变量 x5 0 x1+x2+2x3-x4-x5=1 小于等于约束2x1-6x2+3x3+x4 -3 添加松弛变量 x6 0 -2x1+6x2-3x3-x4-x6=3自由变量 (无)LP问题的一般概念化成标准型为:原始形式标准形式LP问题的一般概念4.单纯形法的单纯形法(Simplex method)是一个顶点迭代算法,即从一个顶点出发,沿着凸多面体的棱迭代到另一个顶点,使目标函数值下降(至少不升),由顶点个数的有限性,可以证明经过有限次迭代一定可以求得最优解或者判定该问题无最优解,这就是单纯形法的基本思想。而几何上一个的顶点对应在代数上的一个基可行解,因此,单纯形法求
11、解线性规划问题只需要关心基可行解。LP问题的一般概念 基本理论参见任何一本运筹学教材上的相关内容,下面仅以一个例子说明单纯形法的步骤。 利用单纯形法求解下述LP问题。 LP问题的一般概念Step1. 将一般的 LP 问题划成标准形式引入松弛变量x3,x4,x5 将原问题化成标准形式LP问题的一般概念Step2. 建立初始单纯形表,求出初始的基本可行解x(0)及对应的目标函数值z0建立初始单纯形表求出基本可行解 x(0)=(0,0,350,200,150)T,求出目标函数值 z0=0cj-1000-1500000系数基变量x1x2x3x4x5b0 x3951003500 x4450102000
12、x525001150检验数rj-1000-15000000LP问题的一般概念Step3. 判断现行解是否是最优解。若是,计算结束;否则转第4步。判断方法:计算检验数 rj=cj-zj,其中zj=cBTaij,j=1,2,n.若所有的 rj0,j=1,2,n,则现行解为最优解。 检验数中 r10,r20,上面的结果x(0)不是最优解。cj-1000-1500000系数基变量x1x2x3x4x5b0 x3951003500 x4450102000 x525001150检验数rj-1000-15000000LP问题的一般概念Step4. 确定进基向量 计算 min rj | rj 0 = rk,则
13、xk 进基;因min rj | rj0 = bl / ark, 此时主元素为ark,xl 应离基。 因为 150/5200/50 = b3 / a32 =3,主元素为 a32 =5,原来的基变量 x5 离基.cj-1000-1500000系数基变量x1x2x3x4x5b0 x3951003500 x4450102000 x525001150检验数rj-1000-15000000LP问题的一般概念Step6. 以ark为主元素,进行换基计算,即进行一次Gauss消元计算,求得一个新的基本可行解,然后返回Step3。将xk所对应的列向量化为单位向量,使主元素处为1,其余元素均为0. 新的基本可行解
14、为x(0)=(0,30,200,50,0)T最优值为 -45000 . 由于r1=-4000,所以还没有达到最优解。cj-1000-1500000系数基变量x1x2x3x4x5b0 x37010-12000 x42001-150-1500 x20.41000.230检验数rj-400000300-45000LP问题的一般概念重复Step4Step6 x1进基,x4离基,a21=2为主元素,作Gauss消去法后得到:cj-1000-1500000系数基变量x1x2x3x4x5b0 x37010-12000 x42001-150-1500 x20.41000.230检验数rj-400000300-
15、45000LP问题的一般概念重复 Step 3,判断是否为最优解 因为所有的检验数rj0,所以现行解为最优解,即最优解为x(0)=(25,20,25,0,0)T,最优值为w=-z0=55000.cj-1000-1500000系数基变量x1x2x3x4x5b0 x3001-3.5-2.525-1000 x11000.5-0.525-1500 x2010-0.20.420检验数rj000200100-55000模型求解1.图解法x1x20ABCDl1l2l3l4l5Z=0Z=2400Z=3360c约束条件目标函数 z=c(常数)等值线在B(20,30)点得到最优解目标函数和约束条件是线性函数 可行
16、域为直线段围成的凸多边形 目标函数的等值线为直线 最优解一定在凸多边形的某个顶点取得。 2.单纯形法Step1. 将一般的 LP 问题划成标准形式引入松弛变量x3,x4,x5 将原问题化成标准形式Step2. 建立初始单纯形表,求出初始的基本可行解x(0)及对应的目标函数值w0建立初始单纯形表求出基本可行解 x(0)=(0,0,50,480,100)T,求出目标函数值 w0=0cj-72-64000系数基变量x1x2x3x4x5b0 x311100500 x41280104800 x530001100检验数rj-72-640000Step3. 判断现行解是否是最优解。若是,计算结束;否则转第4
17、步。判断方法:计算检验数 rj=cj-zj,其中zj=cBTaij,j=1,2,n.若所有的 rj0,j=1,2,n,则现行解为最优解。 检验数中 r10,r20,上面的结果x(0)不是最优解。cj-72-64000系数基变量x1x2x3x4x5b0 x311100500 x41280104800 x530001100检验数rj-72-640000Step4. 确定进基向量 计算 min rj | rj 0 = rk,则 xk 进基;因min rj | rj0 = bl / ark, 此时主元素为ark,xl 应离基。 因为 50/1480/12100/3,所以 min bi / ai1 |
18、ai1 0 = b3 / a31=100/3,主元素为 a31 =3,原来的基向量 x5 离基.cj-72-64000系数基变量x1x2x3x4x5b0 x311100500 x41280104800 x530001100检验数rj-72-640000Step6. 以ark为主元素,进行换基计算,即进行一次Gauss消元计算,求得一个新的基本可行解,然后返回Step3。将xk所对应的列向量化为单位向量,使主元素处为1,其余元素均为0. 新的基本可行解为x(0)=(100/3,0,50/3,80,0)T最优值为 -2400 . 由于r2=-640,所以还没有达到最优解。cj-72-64000系数
19、基变量x1x2x3x4x5b0 x30110-1/350/30 x40801-480-72x110001/3100/3检验数rj0-640024-2400重复Step4Step6 x2进基,x4离基,a22=8为主元素,作Gauss消去法后得到:cj-72-64000系数基变量x1x2x3x4x5b0 x30110-1/350/30 x40801-480-72x110001/3100/3检验数rj0-640024-2400重复 Step 3,判断是否为最优解 新的基本可行解为x(0)=(100/3,10,20/3,0,0)T最优值为 -3040. 由于r5=-80,所以还没有达到最优解。cj-
20、72-64000系数基变量x1x2x3x4x5b0 x3001- 1/81/620/3-64x20101/8-1/210-72x110001/3100/3检验数rj0008-8-3040重复Step4Step6 x5进基,x3离基,a15=1/6为主元素,作Gauss消去法后得到:cj-72-64000系数基变量x1x2x3x4x5b0 x3001- 1/81/620/30 x20101/8-1/210-72x110001/3100/3检验数rj0008-8-3040重复 Step 3,判断是否为最优解 因为所有的检验数rj0,所以现行解为最优解,即最优解为x(0)=(20,30,0,0,40
21、)T,最优值为z=-w0=3360.cj-72-64000系数基变量x1x2x3x4x5b0 x5006- 3/41400 x2013-1/4030-72x11021/41/320检验数rj004820-33603.Mathematica软件求解方法一:Mathematica软件所采用的线性规划模型是: 式中:X是n维列向量,即X=(x1 , x2 , , xn )T ,为未知向量; CT是n维行向量,称为目标函数f的系数向量; b是m维列向量,称为约束函数右端向量; A是mn维矩阵,称为约束函数系数矩阵; 符号min f表示对函数f(x)求局部极小。3.Mathematica软件求解方法二:
22、Mathematica软件中的NMaximize和NMinimize函数可以解线性规划问题,还能解非线性规划问题。其使用格式如下:函 数意 义Nminimizef,x,y, 求自变量为x,y, 的函数f的最小值.Nminimizef,cons,x,y, 求满足约束条件cons的函数f 的最小值.Nmaximizef,x,y, 求自变量为x,y, 的函数f的最大值.Nmaximizef,cons,x,y, 求满足约束条件cons的函数f 的最大值.4.Matlab软件求解线性规划问题的数学模型:式中f,x,b,beq,lb,ub为向量A和Aeq为矩阵.Linprog函数的调用格式如下:x=lin
23、prog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,x0)x,fval=linprog()x,fval,exitflag=linprog()5.Lindo软件求解 5.1 软件介绍 LINDO 是Linear, INteractive, and Discrete Optimizer 的缩写 可求解问题线性规划:Linear Programming (LP)整数规划:Integer Programming (IP)二次规划:Quadratic Programm
24、ing(QP) 5.2 求解线性规划问题举例 利用 Lindo 软件求解 例题1:奶制品的生产 软件操作演示 用户输入程序 max 72x1+64x2 st 2)x1+x250 3)12x1+8x2480 4)3x1100 end 运行程序输出结果(不进行灵敏度分析)解释1 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.00000
25、0 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERATIONS= 220桶牛奶生产A1, 30桶生产A2,利润3360元。 输出结果(不进行灵敏度分析)解释2 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.0
26、00000 0.000000 NO. ITERATIONS= 2“资源” 剩余为零的约束为紧约束(有效约束) max 72x1+64x2st2)x1+x2503)12x1+8x24804)3x1100end原料无剩余时间无剩余加工能力剩余40三种资源输出结果(不进行灵敏度分析)解释3 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.
27、000000 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERATIONS= 2最优解下“资源”增加1单位时“效益”的增量 原料增加1单位, 利润增长48 时间增加1单位, 利润增长2 加工能力增长不影响利润影子价格 35元可买到1桶牛奶,要买吗?3548, 应该买! 聘用临时工人付出的工资最多每小时几元? 2元!输出结果(有灵敏度分析)解释4RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE
28、COEF INCREASE DECREASE X1 72.000000 24.000000 8.000000 X2 64.000000 8.000000 16.000000 RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 50.000000 10.000000 6.666667 3 480.000000 53.333332 80.000000 4 100.000000 INFINITY 40.000000最优解不变时目标函数系数允许变化范围 (约束条件不变)x1系数范围(64,96) x
29、2系数范围(48,72) A1获利增加到 30元/千克,应否改变生产计划 ?不变!x1系数由24 3=72增加为303=90,在允许范围内 输出结果(有灵敏度分析)解释5RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X1 72.000000 24.000000 8.000000 X2 64.000000 8.000000 16.000000 RIGHTHAND SIDE RANGES ROW CU
30、RRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 50.000000 10.000000 6.666667 3 480.000000 53.333332 80.000000 4 100.000000 INFINITY 40.000000影子价格有意义时右端约束的允许变化范围 (目标函数不变)原料最多增加10 时间最多增加53 35元可买到1桶牛奶,每天最多买多少?最多买10桶!例2:奶制品的生产销售计划 例1给出了A1,A2两种奶制品的生产条件,利润及工厂的“资源”限制全都不变。为增加工厂的获利,开发了奶制品的深加工技术:用2小时和3元的加工费
31、,可将1公斤A1加工成0.8公斤高级奶制品B1 ,也可将1公斤A2加工成0.75公斤高级奶制品B2,每公斤B1能获利44元,每公斤B2能获利32元。试为该厂制订一个生产销售计划,使每天的净利润最大,并讨论以下问题: 1)若投资30元可以增加供应1桶牛奶,投资3元可以增加1小时劳动时间,应否作这些投资?若每天投资150元,可赚回多少? 2)每公斤高级奶制品B1 , B2的获利经常有10%的波动,对制订的生产销售计划有无影响?若每公斤B1的获利下降10%,计划应该变化吗?例2 奶制品的生产销售计划 在例1基础上深加工1桶牛奶 3千克A1 12小时 8小时 4公斤A2 或获利24元/公斤 获利16元
32、/公斤 0.8千克B12小时,3元1千克获利44元/千克 0.75千克B22小时,3元1千克获利32元/千克 制订生产计划,使每天净利润最大 30元可增加1桶牛奶,3元可增加1小时时间,应否投资?现投资150元,可赚回多少?50桶牛奶, 480小时 至多100公斤A1 B1,B2的获利经常有10%的波动,对计划有无影响?1桶牛奶 3千克 A1 12小时 8小时 4千克 A2 或获利24元/千克 获利16元/kg 0.8千克 B12小时,3元1千克获利44元/千克 0.75千克 B22小时,3元1千克获利32元/千克 销售x1 千克 A1, x2 千克 A2, x3千克 B1, x4千克 B2原料供应 劳动时间 加工能力 决策变量 目标函数 利润约束条件非负约束 x5千克 A1加工B1, x6千克 A2加工B2附加约束 模型求解 软件实现 LINDO 6.1 OBJECTIVE FUNCTION VALUE 1) 3460.800 VARIABLE VALUE REDUCED COST X1 0.000000 1.680000 X2 168.000000 0.000000 X3 19.200001 0.000000 X4 0.000000 0.000000 X5 24.000000 0.000000 X6 0.000000 1.5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度报社图书资料室租赁合同范本
- 豪华别墅装修合同解除协议
- 就业合同范本装潢
- 2025年中国底片扫描仪市场调查研究报告
- 2025年中国小浮船市场调查研究报告
- 2025年中国对开刀式折页机市场调查研究报告
- 2025年中国女式连衣裤市场调查研究报告
- 2025年中国多级管道式消防泵市场调查研究报告
- 健康产业合同范本
- 洁具购买合同范本
- 英语常用动词表500个
- 《税法》(第六版)全书教案电子讲义
- 2024年电工(高级技师)职业鉴定理论考试题库-下(多选、判断题)
- 20S515 钢筋混凝土及砖砌排水检查井
- 《幼儿园保教质量评估指南》解读
- ICU单间耗材出入库使用登记表
- 外研版(一年级起点)四年级下册英语全册教学课件
- 助贷机构业务流程规范
- 2024四川省凉山州林业局招聘60人历年(高频重点复习提升训练)共500题附带答案详解
- DL∕T 5106-2017 跨越电力线路架线施工规程
- 西师大版数学四年级下册全册教学课件(2024年3月修订)
评论
0/150
提交评论