《《优化模型讲座》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《优化模型讲座》PPT课件.ppt(49页珍藏版)》请在三一办公上搜索。
1、数学建模讲座,仇秋生数理信息工程学院 2011、8,内容安排1、最优化问题简介2、LINGO软件简介3、线性规划模型4、非线性规划模型5、0-1规划模型6、投资的收益与风险7、露天矿生产的车辆安排,1、最优化问题简介,所谓最优化问题就是在许多可行的方案中找到最好的方案。例如:在工程设计中,如何选择设计参数,使得设计方案既满足设计要求,又能降低成本。,优化模型一般包括以下三个要素:(1)决策变量。它通常是该问题要求解的那些未知量。一般用n维向量 表示。(2)目标函数。通常是该问题要优化(最大或最小)的那个目标的数学表达式,是决策变量的函数。(3)约束条件。即决策变量允许取值的范围,常用一组关于决
2、策变量的等式 和不等式 来界定,分别称为等式约束和不等式约束。,一般模型为:,例1:汽车生产计划,汽车厂生产三种类型的汽车,已知各类型每辆车对钢材、劳动时间的需求,利润及工厂每月的现有量。若生产某类汽车,则至少生产80辆,求生产计划,使工厂的利润最大,小型 中型 大型 现有量钢材(吨)1.5 3 5 600劳动时间(小时)280 250 400 60000利润(万元)2 3 4,例2 加工奶制品的生产计划,问题:一奶制品加工厂生产A1,A2两种奶制品,1桶牛奶可以在设备甲上用12小时加工成3公斤A1,或在设备乙上用8小时加工成4公斤A2。生产的产品全部售出,且每公斤A1获利24元,每公斤A2获
3、利16元。现在加工厂每天能得到50桶牛奶供应,每天正式工人总的劳动时间为480小时,且设备甲每天至多能加工100公斤A1。试为工厂制定一个生产计划,使每天获利最大。并进一步讨论以下问题:,(1)35元可买到1桶牛奶,买吗?若买,每天最多买多少?(2)可聘用临时工人,付出的工资最多是每小时几元?(3)A1的获利增加到 30元/公斤,应否改变生产计划?,例2 加工奶制品的生产计划,50桶牛奶,总时间480小时,甲至多加工100公斤A1,制订生产计划,使每天获利最大,35元可买到1桶牛奶,买吗?若买,每天最多买多少?,可聘用临时工人,付出的工资最多是每小时几元?,A1的获利增加到 30元/公斤,应否
4、改变生产计划?,每天:,x1桶牛奶生产A1,x2桶牛奶生产A2,获利 243x1,获利 164 x2,原料供应,劳动时间,加工能力,决策变量,目标函数,每天获利,约束条件,非负约束,线性规划模型(LP),时间480小时,至多加工100公斤A1,最优化问题分类,(1)线性规划(LP):所有函数都是决策变量的线性函数。,(2)非线性规划(NLP):目标函数和约束条件中至少有一个函数是非线性函数。,(3)二次规划(QP):目标函数是决策变量的二次函数,而所有约束都是决策变量的线性函数。,3、线性规划模型,重点是:模型建立、模型的化简、结果分析。求解主要利用LINGO软件。,(4)整数规划(IP):决
5、策变量仅取整数值。,2、LINGO软件简介,模型求解,软件实现,Model:Max=72*x1+64*x2;x1+x250;12*x1+8*x2480;3*x1100;end,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.000000 0.000000 NO.ITERAT
6、IONS=2,20桶牛奶生产A1,30桶生产A2,利润3360元。,结果解释,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.000000 0.000000 NO.ITERATIONS=2,原料无剩余,时间无剩余,加工能力剩余40,Model:Max=72*x1+64*x2
7、;x1+x250;12*x1+8*x2480;3*x1100;end,三种资源,“资源”剩余为零的约束为紧约束(有效约束),结果解释,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.000000 0.000000 NO.ITERATIONS=2,最优解下“资源”增加1单位时
8、“效益”的增量,原料增加1单位,利润增长48,时间增加1单位,利润增长2,加工能力增长不影响利润,影子价格,35元可买到1桶牛奶,要买吗?,35 48,应该买!,聘用临时工人付出的工资最多每小时几元?,2元!,RANGES 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
9、 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,最优解不变时目标函数系数允许变化范围,DO RANGE(SENSITIVITY)ANALYSIS?,Yes,x1系数范围(64,96),x2系数范围(48,72),A1获利增加到 30元/千克,应否改变生产计划,x1系数由24 3=72增加为303=90,在允许范围内,不变
10、!,(约束条件不变),结果解释,RANGES 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 CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 50.000000 10.000000
11、6.666667 3 480.000000 53.333332 80.000000 4 100.000000 INFINITY 40.000000,影子价格有意义时约束右端的允许变化范围,原料最多增加10,时间最多增加53,35元可买到1桶牛奶,每天最多买多少?,最多买10桶!,(目标函数不变),问题:某公司用两种原油(A和B)混合加工两种汽油(甲和乙)。甲、乙两种汽油含原油A的最低比例分别为50%和60%,每吨售价分别为4800元和5600元。该公司现有原油A和B的库存量分别为500吨和1000吨。市场上可买到不超过1500吨的原油A:购买量不超过500吨时的单价为10000元/吨。购买量超
12、过500吨但不超过1000吨时,超过500吨的部分8000元/吨;购买量超过1000吨时,超过1000吨的部分6000元/吨。该公司应如何安排原油采购与加工?,例3 原油采购与加工,应如何安排原油的采购和加工?,原油采购与加工,市场上可买到不超过1500吨的原油A:购买量不超过500吨时的单价为10000元/吨;购买量超过500吨但不超过1000吨时,超过500吨的 部分8000元/吨;购买量超过1000吨时,超过1000吨的部分6000元/吨。,决策变量,目标函数,问题分析,利润:销售汽油的收入-购买原油A的支出 难点:原油A的购价与购买量的关系较复杂,原油A的购买量,原油A,B生产汽油甲,
13、乙的数量,c(x)购买原油A的支出,利润(千元),c(x)如何表述?,原油供应,约束条件,x 500吨单价为10千元/吨;500吨 x 1000吨,超过500吨的8千元/吨;1000吨 x 1500吨,超过1000吨的6千元/吨。,目标函数,目标函数中c(x)不是线性函数,是非线性规划;对于用分段函数定义的c(x),一般的非线性规划软件也难以输入和求解;想办法将模型化简,用现成的软件求解。,汽油含原油A的比例限制,约束条件,x1,x2,x3 以价格10,8,6(千元/吨)采购A的吨数,目标函数,只有当以10千元/吨的价格购买x1=500(吨)时,才能以8千元/吨的价格购买x2,方法1,非线性规
14、划模型,可以用LINGO求解,模型求解,x=x1+x2+x3,c(x)=10 x1+8x2+6x3,500吨 x 1000吨,超过500吨的8千元/吨,x=x1+x2+x3,c(x)=10 x1+8x2+6x3,方法1:LINGO求解,Model:Max=4.8*x11+4.8*x21+5.6*x12+5.6*x22-10*x1-8*x2-6*x3;x11+x12 0;2*x12-3*x22 0;x=x1+x2+x3;(x1-500)*x2=0;(x2-500)*x3=0;x1 0;x11 0;x12 0;x21 0;x22 0;x1 0;x2 0;x3 0;end,Objective val
15、ue:4800.000Variable Value Reduced CostX11 500.0000 0.0000000E+00X21 500.0000 0.0000000E+00X12 0.0000000E+00 0.0000000E+00X22 0.0000000E+00 0.0000000E+00 X1 0.1021405E-13 10.00000 X2 0.0000000E+00 8.000000 X3 0.0000000E+00 6.000000 X 0.0000000E+00 0.0000000E+00,LINGO得到的是局部最优解,还能得到更好的解吗?,用库存的500吨原油A、5
16、00吨原油B生产汽油甲,不购买新的原油A,利润为4,800千元。,y1,y2,y3=1 以价格10,8,6(千元/吨)采购A,增加约束,方法2,0-1线性规划模型,可用LINDO求解,y1,y2,y3=0或1,OBJECTIVE FUNCTION VALUE 1)5000.000 VARIABLE VALUE REDUCED COST Y1 1.000000 0.000000 Y2 1.000000 2200.000000 Y3 1.000000 1200.000000 X11 0.000000 0.800000 X21 0.000000 0.800000 X12 1500.000000 0.
17、000000 X22 1000.000000 0.000000 X1 500.000000 0.000000 X2 500.000000 0.000000 X3 0.000000 0.400000 X 1000.000000 0.000000,购买1000吨原油A,与库存的500吨原油A和1000吨原油B一起,生产汽油乙,利润为5,000千元。,x1,x2,x3 以价格10,8,6(千元/吨)采购A的吨数,优于方法1的结果,为了选修课程门数最少,应学习哪些课程?,例4、0-1规划选课策略,要求至少选两门数学课、三门运筹学课和两门计算机课,选修课程最少,且学分尽量多,应学习哪些课程?,0-1规划
18、模型,决策变量,目标函数,xi=1 选修课号i 的课程(xi=0 不选),选修课程总数最少,约束条件,最少2门数学课,3门运筹学课,2门计算机课。,先修课程要求,最优解:x1=x2=x3=x6=x7=x9=1,其它为0;6门课程,总学分21,0-1规划模型,约束条件,x3=1必有x1=x2=1,模型求解(LINDO),学分最多,多目标优化的处理方法:化成单目标优化。,两目标(多目标)规划,讨论:选修课程最少,学分尽量多,应学习哪些课程?,课程最少,以学分最多为目标,不管课程多少。,以课程最少为目标,不管学分多少。,多目标规划,在课程最少的前提下以学分最多为目标。,最优解:x1=x2=x3=x5
19、=x7=x9=1,其它为0;总学分由21增至22。,注意:最优解不唯一!,LINDO无法告诉优化问题的解是否唯一。,可将x9=1 易为x6=1,多目标规划,对学分数和课程数加权形成一个目标,如三七开。,最优解:x1=x2=x3=x4=x5=x6=x7=x9=1,其它为0;总学分28。,讨论与思考,最优解与1=0,2=1的结果相同学分最多,多目标规划,最优解与1=1,2=0的结果相同课程最少,生产中通过切割、剪裁、冲压等手段,将原材料加工成所需大小,例5、钢管下料问题,原料下料问题,按照工艺要求,确定下料方案,使所用材料最省,或利润最大,问题1.如何下料最节省?,钢管下料,问题2.客户增加需求:
20、,节省的标准是什么?,由于采用不同切割模式太多,会增加生产和管理成本,规定切割模式不能超过3种。如何下料最节省?,按照客户需要在一根原料钢管上安排切割的一种组合。,切割模式,合理切割模式的余料应小于客户需要钢管的最小尺寸,钢管下料,为满足客户需要,按照哪些种合理模式,每种模式切割多少根原料钢管,最为节省?,合理切割模式,2.所用原料钢管总根数最少,钢管下料问题1,两种标准,1.原料钢管剩余总余量最小,xi 按第i 种模式切割的原料钢管根数(i=1,2,7),约束,满足需求,决策变量,目标1(总余量),按模式2切割12根,按模式5切割15根,余料27米,最优解:x2=12,x5=15,其余为0;
21、最优值:27。,整数约束:xi 为整数,当余料没有用处时,通常以总根数最少为目标,目标2(总根数),钢管下料问题1,约束条件不变,最优解:x2=15,x5=5,x7=5,其余为0;最优值:25。,xi 为整数,按模式2切割15根,按模式5切割5根,按模式7切割5根,共25根,余料35米,虽余料增加8米,但减少了2根,与目标1的结果“共切割27根,余料27米”相比,钢管下料问题2,对大规模问题,用模型的约束条件界定合理模式,增加一种需求:5米10根;切割模式不超过3种。,现有4种需求:4米50根,5米10根,6米20根,8米15根,用枚举法确定合理切割模式,过于复杂。,决策变量,xi 按第i 种
22、模式切割的原料钢管根数(i=1,2,3),r1i,r2i,r3i,r4i 第i 种切割模式下,每根原料钢管生产4米、5米、6米和8米长的钢管的数量,满足需求,模式合理:每根余料不超过3米,整数非线性规划模型,钢管下料问题2,目标函数(总根数),约束条件,整数约束:xi,r1i,r2i,r3i,r4i(i=1,2,3)为整数,增加约束,缩小可行域,便于求解,原料钢管总根数下界:,特殊生产计划:对每根原料钢管模式1:切割成4根4米钢管,需13根;模式2:切割成1根5米和2根6米钢管,需10根;模式3:切割成2根8米钢管,需8根。原料钢管总根数上界:13+10+8=31,模式排列顺序可任定,钢管下料
23、问题2,需求:4米50根,5米10根,6米20根,8米15根,每根原料钢管长19米,LINGO求解整数非线性规划模型,Local optimal solution found at iteration:12211 Objective value:28.00000Variable Value Reduced CostX1 10.00000 0.000000X2 10.00000 2.000000X3 8.000000 1.000000R11 3.000000 0.000000R12 2.000000 0.000000R13 0.000000 0.000000R21 0.000000 0.0000
24、00R22 1.000000 0.000000 R23 0.000000 0.000000 R31 1.000000 0.000000 R32 1.000000 0.000000 R33 0.000000 0.000000 R41 0.000000 0.000000 R42 0.000000 0.000000 R43 2.000000 0.000000,模式1:每根原料钢管切割成3根4米和1根6米钢管,共10根;模式2:每根原料钢管切割成2根4米、1根5米和1根6米钢管,共10根;模式3:每根原料钢管切割成2根8米钢管,共8根。原料钢管总根数为28根。,露天矿里铲位已分成矿石和岩石:平均铁含量
25、不低于25%的为矿石,否则为岩石。每个铲位的矿石、岩石数量,以及矿石的平均铁含量(称为品位)都是已知的。每个铲位至多安置一台电铲,电铲平均装车时间5分钟,卡车在等待时所耗费的能量也是相当可观的,原则上在安排时不应发生卡车等待的情况。,露天矿生产的车辆安排(CUMCM-2003B),矿石卸点需要的铁含量要求都为29.5%1%(品位限制),搭配量在一个班次(8小时)内满足品位限制即可。卸点在一个班次内不变。卡车载重量为154吨,平均时速28km,平均卸车时间为3分钟。,问题:出动几台电铲,分别在哪些铲位上;出动几辆卡车,分别在哪些路线上各运输多少次?,平面示意图,问题数据,问题分析,与典型的运输问
26、题明显有以下不同:这是运输矿石与岩石两种物资的问题;属于产量大于销量的不平衡运输问题;为了完成品位约束,矿石要搭配运输;产地、销地均有单位时间的流量限制;运输车辆只有一种,每次满载运输,154吨/车次;铲位数多于铲车数意味着要最优的选择不多于7个产地作为最后结果中的产地;最后求出各条路线上的派出车辆数及安排。,近似处理:先求出产位、卸点每条线路上的运输量(MIP模型)然后求出各条路线上的派出车辆数及安排,模型假设,卡车在一个班次中不应发生等待或熄火后再启动的情况;在铲位或卸点处由两条路线以上造成的冲突问题面前,我们认为只要平均时间能完成任务,就认为不冲突。我们不排时地进行讨论;空载与重载的速度
27、都是28km/h,耗油相差很大;卡车可提前退出系统,等等。,如理解为严格不等待,难以用数学规划模型来解 个别参数队找到了可行解(略),符号,xij:从i铲位到j号卸点的石料运量(车)单位:吨;cij:从i号铲位到j号卸点的距离 公里;Tij:从i号铲位到号j卸点路线上运行一个周期平均时间 分;Aij:从号铲位到号卸点最多能同时运行的卡车数 辆;Bij:从号铲位到号卸点路线上一辆车最多可运行的次数 次;pi:i号铲位的矿石铁含量 p=(30,28,29,32,31,33,32,31,33,31)%qj:j号卸点任务需求,q=(1.2,1.3,1.3,1.9,1.3)*10000 吨cki:i号铲
28、位的铁矿石储量 万吨cyi:i号铲位的岩石储量 万吨fi:描述第i号铲位是否使用的0-1变量,取1为使用;0为关闭。,(近似),优化模型,(1)道路能力(卡车数)约束(2)电铲能力约束(3)卸点能力约束(4)铲位储量约束(5)产量任务约束(6)铁含量约束(7)电铲数量约束(8)整数约束,.,xij为非负整数fi 为0-1整数,计算结果(LINGO软件),计算结果(派车),结论:铲位1、2、3、4、8、9、10处各放置一台电铲。一共使用了13辆卡车;总运量为85628.62吨公里;岩石产量为32186吨;矿石产量为38192吨。,此外:6辆联合派车(方案略),最大化产量,结论:(略),目标函数变
29、化此外:车辆数量(20辆)限制(其实上面的模型也应该有),投资的收益和风险,市场上有n种资产(如股票、债券、)Si(i=1,n)供投资者选择,某公司有数额为M的一笔相当大的资金可用作一个时期的投资。公司财务分析人员对这n种资产进行了评估,估算出在这一时期内购买Si的平均收益率为,并预测出购买Si的风险损失率为。考虑到投资越分散,总的风险越小,公司确定,当用这笔资金购买若干种资产时,总体风险可用所投资的Si中最大的一个风险来度量。,购买Si要付交易费,费率为,并且当购买额不超过给定值 时,交易费按购买 计算(不买当然无须付费)。另外,假定同期银行存款利率是,且既无交易费又无风险。(=5%),试给该公司设计一种投资组合方案。用给定的资金,有选择地购买若干种资产或存银行生息,使净收益尽可能大,而总体风险尽可能小。,