数学规划建模学习教案.pptx
《数学规划建模学习教案.pptx》由会员分享,可在线阅读,更多相关《数学规划建模学习教案.pptx(153页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1数学数学(shxu)规划建模规划建模第一页,共153页。(2)所确定的)所确定的x的范围称为可行域的范围称为可行域feasibleregion,满足(,满足(2)的解)的解x称为可行解称为可行解feasiblesolution,同时满足(,同时满足(1)()(2)的解)的解x称为最优解称为最优解Optimalsolution,整个可行域上的最优解称为全局最优解,整个可行域上的最优解称为全局最优解globaloptimalsolution,可行域中某个领域上的最优解称为局部,可行域中某个领域上的最优解称为局部(jb)最优解最优解localoptimalsolution。最优解所对应的目标
2、函数值称为最优值。最优解所对应的目标函数值称为最优值optimum。第1页/共153页第二页,共153页。优化模型优化模型(mxng)的分类的分类(一)按有无约束条件(一)按有无约束条件(2)可分为:)可分为:1.无约束优化无约束优化 unconstrained optimization。2.约束优化约束优化constrained optimization。大部分实际大部分实际(shj)问题都是约束优化问题。问题都是约束优化问题。第2页/共153页第三页,共153页。(二)按决策变量取值是否连续可分为:(二)按决策变量取值是否连续可分为:1.数学规划或连续优化。数学规划或连续优化。可继续划分可
3、继续划分(hu fn)为线性规划为线性规划(LP)Linear programming和非线性规划和非线性规划(NLP)Nonlinear programming。在非线性规划中有一种规划叫做二次规划。在非线性规划中有一种规划叫做二次规划(QP)Quadratic programming,目标为二次函数,约束为线性函数。,目标为二次函数,约束为线性函数。2.离散优化或组合优化。离散优化或组合优化。包含:整数规划包含:整数规划(IP)Integer programming,整数规划中又包含很重要的一类规划:,整数规划中又包含很重要的一类规划:0-1(整数)规划(整数)规划Zero-one pro
4、gramming,这类规划问题的决策变量只取,这类规划问题的决策变量只取0或者或者1。第3页/共153页第四页,共153页。(三)按目标的多少可分为:(三)按目标的多少可分为:1.单目标规划。单目标规划。2.多目标规划。多目标规划。(四)按模型中参数和变量是否具有不确定性可分为:(四)按模型中参数和变量是否具有不确定性可分为:1.确定性规划。确定性规划。2.不确定性规划。不确定性规划。(五)按问题(五)按问题(wnt)求解的特性可分为:求解的特性可分为:1.目标规划。目标规划。2.动态规划。动态规划。3.多层规划。多层规划。4.网络优化。网络优化。5.等等。等等。第4页/共153页第五页,共1
5、53页。优化问题求解常用的软件优化问题求解常用的软件LINGO软件和软件和MATLAB软件。软件。对于对于LINGO软件,线性优化求解程序通常使用单纯形法软件,线性优化求解程序通常使用单纯形法simplexmethod,单纯形法虽然在实际应用,单纯形法虽然在实际应用(yngyng)中是最好最有效的方法,但对某些问题具有指数阶的复杂性,为了能解大规模问题,也提供了内点算法中是最好最有效的方法,但对某些问题具有指数阶的复杂性,为了能解大规模问题,也提供了内点算法interiorpointmethod备选(备选(LINGO中一般称为障碍法,即中一般称为障碍法,即barrier),非线性优化求解程序采
6、用的是顺序线性规划法,也可用顺序二次规划法,广义既约梯度法,另外可以使用多初始点(),非线性优化求解程序采用的是顺序线性规划法,也可用顺序二次规划法,广义既约梯度法,另外可以使用多初始点(LINGO中称中称multistart)找多个局部最优解增加找全局最优解的可能,还具有全局求解程序)找多个局部最优解增加找全局最优解的可能,还具有全局求解程序分解原问题成一系列的凸规划。分解原问题成一系列的凸规划。第5页/共153页第六页,共153页。软件软件(run jin)介绍介绍例例1帆船生产计划帆船生产计划SAILCO公司需要决定下四个季度的帆船生产量。公司需要决定下四个季度的帆船生产量。下四个季度的
7、帆船需求量分别是下四个季度的帆船需求量分别是40条,条,60条,条,75条,条,25条,这些需求必条,这些需求必须按时满足。每个季度正常的生产能力是须按时满足。每个季度正常的生产能力是40条帆船,每条船的生产费用条帆船,每条船的生产费用为为400美元。如果加班生产,每条船的生产费用为美元。如果加班生产,每条船的生产费用为450美元。每个季度末,美元。每个季度末,每条船的库存费用为每条船的库存费用为20美元。假定生产提前期为美元。假定生产提前期为0,初始库存为,初始库存为10条船。条船。如何如何(rh)安排生产可使总费用最小?安排生产可使总费用最小?分析分析:DEM需求量,需求量,RP正常生产的
8、产量,正常生产的产量,OP加班生产的产量,加班生产的产量,INV库存量,库存量,则则DEM,RP,OP,INV对每个季度对每个季度(jd)都应该有一个对应都应该有一个对应的值,也就说他们都应该是一个由的值,也就说他们都应该是一个由4个元素组成的数组,其中个元素组成的数组,其中DEM是已知的,而是已知的,而RP,OP,INV是未知数。是未知数。第6页/共153页第七页,共153页。目标函数目标函数(hnsh):正常生产费加班生产费储存费:正常生产费加班生产费储存费最小最小约束条件:约束条件:1)能力)能力(nngl)限制:限制:2)产品数量的平衡)产品数量的平衡(pnghng)方程:方程:4)变
9、量非负)变量非负3)初始库存:)初始库存:引例引例 模型建立模型建立第7页/共153页第八页,共153页。记四个季度组成的集合QUARTERS=1,2,3,4,它们就是上面数组的下标集合,而数组DEM,RP,OP,INV对集合QUARTERS中的每个元素1,2,3,4分别对应于一个值。LINGO正是充分利用了这种数组及其下标的关系,引入了“集合”及其“属性(shxng)”的概念,把QUARTERS=1,2,3,4称为集合,把DEM,RP,OP,INV称为该集合的属性(shxng)(即定义在该集合上的属性(shxng)。集合集合(jh)与属性与属性第8页/共153页第九页,共153页。QUART
10、ERS集合的属性DEM RPOP INVQUARTERS集合2341 集合集合(jh)与属性与属性第9页/共153页第十页,共153页。集合元素及集合的属性确定的所有集合元素及集合的属性确定的所有(suyu)变量变量集合QUARTERS的元素1234定义在集合QUARTERS上的属性DEMDEM(1)DEM(2)DEM(3)DEM(4)RPRP(1)RP(2)RP(3)RP(4)OPOP(1)OP(2)OP(3)OP(4)INVINV(1)INV(2)INV(3)INV(4)集合集合(jh)与属性与属性第10页/共153页第十一页,共153页。程序程序(chngx)编写编写MODEL:!集合集
11、合(jh)段:定义集合段:定义集合(jh)SET,元素,元素member及其属性及其属性attribute;SETS:QUARTERS/1,2,3,4/:DEM,RP,OP,INV;ENDSETS!目标与约束段:没有开始和结束标记,顺序无关;目标与约束段:没有开始和结束标记,顺序无关;MIN=SUM(QUARTERS(I):400*RP(I)+450*OP(I)+20*INV(I);FOR(QUARTERS(I):RP(I)1(greaterthan)第11页/共153页第十二页,共153页。展开式展开式LINGOGenerateDisplyModel(Ctrl+G)MIN=SUM(QUART
12、ERS(I):400*RP(I)+450*OP(I)+20*INV(I);FOR(QUARTERS(I):RP(I)40);FOR(QUARTERS(I)|I#GT#1:INV(I)=INV(I-1)+RP(I)+OP(I)-DEM(I););INV(1)=10+RP(1)+OP(1)-DEM(1);第12页/共153页第十三页,共153页。全局全局(qunj)最优最优解解RP=(40,40,40,25)OP=(0,10,35,0)最小成本最小成本(chngbn)=78450自动自动(zdng)生成行号生成行号 结果报告结果报告第13页/共153页第十四页,共153页。例例例例2 2 2 2
13、运输运输运输运输(ynsh)(ynsh)(ynsh)(ynsh)问题问题问题问题第14页/共153页第十五页,共153页。解:设解:设A1,A2调运到三个粮站调运到三个粮站(lingzhn)的大米分别为的大米分别为x11,x12,x13,x21,x22,x23吨。吨。题设量可总到下表:题设量可总到下表:84库库存存量量x23x22x21A2542需要量需要量x13x12x11A1B3B2B1粮库粮库粮站粮站距离及运量距离及运量12122430824第15页/共153页第十六页,共153页。结合结合(jih)存量限制和需量限制得数学模型:存量限制和需量限制得数学模型:第16页/共153页第十七页
14、,共153页。程序编写程序编写推荐推荐MODEL:TITLE调运大米调运大米(dm)的运输问题程序的运输问题程序;!定义集合段定义集合段;SETS:LIANGKU/1.2/:A;!定义粮库的集合定义粮库的集合;LIANGZHAN/1.3/:B;!定义粮站的集合定义粮站的集合;YULIANG(LIANGKU,LIANGZHAN):X,C;!定义运量和距离定义运量和距离;ENDSETSDATA:!粮库到粮站的距离粮库到粮站的距离;C=12248301224;第17页/共153页第十八页,共153页。!粮库的限量粮库的限量;A=4 8;!粮站粮站(lingzhn)的限量的限量;B=2 4 5;END
15、DATAOBJMIN=SUM(YULIANG:C*X);!粮库上限的约束粮库上限的约束;FOR(LIANGKU(I):LK SUM(LIANGZHAN(J):X(I,J)B(J);END 第18页/共153页第十九页,共153页。程序的调试程序的调试1.直接点击运行,如果出错会弹出错误提示,根据提示做相应的修改;直接点击运行,如果出错会弹出错误提示,根据提示做相应的修改;2.可以用可以用“!”把约束变成说明语句,而把这条语句屏蔽掉,缩小寻找把约束变成说明语句,而把这条语句屏蔽掉,缩小寻找(xnzho)出错的范围;出错的范围;3.可以边写程序边运行,保证每行书写都是正确的程序;可以边写程序边运行
16、,保证每行书写都是正确的程序;第19页/共153页第二十页,共153页。料场的建立与运输料场的建立与运输建筑工地的位置建筑工地的位置(用平面坐标用平面坐标a,b表示,表示,距离距离(jl)单位:公里单位:公里)及水泥日用量及水泥日用量d(吨吨)下表给出。有两个下表给出。有两个临时料场位于临时料场位于P(5,1),Q(2,7),日储量各有日储量各有20吨。吨。(1)从从A,B两料两料场分别向各工地运送多少吨水泥,使总的吨公里数最小。场分别向各工地运送多少吨水泥,使总的吨公里数最小。(2)两两个新的料场应建在何处,节省的吨公里数有多大?个新的料场应建在何处,节省的吨公里数有多大?a1.258.75
17、0.55.7537.25b1.250.754.7556.57.75d3547611 非线性规划非线性规划(guhu)引例引例第20页/共153页第二十一页,共153页。已知为LP模型,未知为NLP模型 引例引例(yn l)模型建立模型建立料场向工地的运送量为:料场向工地的运送量为:工地:位置工地:位置水泥日用量:水泥日用量:料场:位置料场:位置日储量:日储量:第21页/共153页第二十二页,共153页。利用集合的概念利用集合的概念(ginin),可以定义需求点,可以定义需求点DEMAND和供和供应点应点SUPPLY两个集合,分别有两个集合,分别有6个和个和2个元素个元素(下标下标)。但决策变。
18、但决策变量量(运送量运送量)cij与集合与集合DEMAND和集合和集合SUPPLY都有关系的。该都有关系的。该如何定义这样的属性?如何定义这样的属性?集合的属性相当于以集合的元素集合的属性相当于以集合的元素(yuns)为下标的数组。这为下标的数组。这里的里的cij相当于二维数组。它的两个下标分别来自集合相当于二维数组。它的两个下标分别来自集合DEMAND和和SUPPLY,因此可以定义一个由二元对组成的新的集合,然后,因此可以定义一个由二元对组成的新的集合,然后将将cij定义成这个新集合的属性,这个集合称为派生集合。定义成这个新集合的属性,这个集合称为派生集合。派生派生(pishng)集合集合第
19、22页/共153页第二十三页,共153页。程序程序(chngx)编写编写MODEL:TitleLocationProblem;sets:demand/1.6/:a,b,d;supply/1.2/:x,y,e;link(demand,supply):c;endsetsdata:!locationsforthedemand(需求点的位置需求点的位置(wizhi);a=1.25,8.75,0.5,5.75,3,7.25;b=1.25,0.75,4.75,5,6.5,7.75;!quantitiesofthedemandandsupply(供需量)(供需量);d=3,5,4,7,6,11;e=20,2
20、0;enddata基本集合基本集合(jh)primaryset与与派生集合派生集合(jh)derivedset(定义多维数组)(定义多维数组)第23页/共153页第二十四页,共153页。程序程序(chngx)编写编写!初始段:对集合属性定义初值(迭代初始段:对集合属性定义初值(迭代(didi)算法的迭代算法的迭代(didi)初值)初值);init:!initiallocationsforthesupply(初始点)(初始点);x,y=5,1,2,7;endinit!Objectivefunction(目标)(目标);OBJmin=sum(link(i,j):c(i,j)*(x(j)-a(i)2
21、+(y(j)-b(i)2)(1/2);!demandconstraints(需求约束)(需求约束);for(demand(i):DEMAND_CONsum(supply(j):c(i,j)=d(i););!supplyconstraints(供应约束)(供应约束);for(supply(i):SUPPLY_CONsum(demand(j):c(j,i)sum(yuefen(i)|i#le#j:d);sum(yuefen:x)=sum(yuefen:d);for(yuefen:xa);end 第38页/共153页第三十九页,共153页。第39页/共153页第四十页,共153页。Model:Tit
22、le 生产计划生产计划(jhu)程序程序2;Sets:yuefen/1.4/:c,x,e,d,s;endsetsdata:c=70 71 80 76;d=6000 7000 12000 6000;e=2 2 2 2;a=10000;enddatamin=sum(yuefen:c*x+e*s);for(yuefen(i)|i#lt#4:s(i+1)=s(i)+x(i)-d(i);s(4)+x(4)-d(4)=0;s(1)=0;for(yuefen:xa);End第40页/共153页第四十一页,共153页。月月份份单位成本单位成本(元元)销售量销售量1234 70 6000 72 7000 80
23、12000 76 6000第41页/共153页第四十二页,共153页。76827676-80-7472-747270生产月10000100001000010000产量600041200070006000销量4321321需求月费用cij第42页/共153页第四十三页,共153页。第43页/共153页第四十四页,共153页。model:title 生产计划程序3;sets:yuefen/1.4/:a,d,xx;!定义上三角矩阵(j zhn);link(yuefen,yuefen)|&2#ge#&1:c,x;endsetsdata:c=70 72 74 76 71 73 75 80 82 76;d
24、=6000 7000 12000 6000;a=10000 10000 10000 10000;enddatamin=sum(link:c*x);for(yuefen(i):sum(yuefen(j)|j#ge#i:x(i,j)d(j););!得到每个月的生产量;for(yuefen(i):xx=sum(yuefen(j):x(i,j);End第44页/共153页第四十五页,共153页。Model Title:生产计划生产计划(jhu)程序程序1 Variable Value Reduced Cost 第45页/共153页第四十六页,共153页。课堂练习课堂练习1:1:转运转运(zhun(zh
25、un yn)yn)问题问题设有两个工厂设有两个工厂(gngchng)A、B,产量都是,产量都是 10万个,工厂万个,工厂(gngchng)有三个仓库有三个仓库 x,y,z,产品都先送到仓库。现有四个顾客分别为甲,乙,丙,丁,需求量分别为,产品都先送到仓库。现有四个顾客分别为甲,乙,丙,丁,需求量分别为3,5,4,5万个。工厂万个。工厂(gngchng)到仓库、仓库到顾客的运费单价(元到仓库、仓库到顾客的运费单价(元/个)见下表所示。试求总运费最少的运输方案以及总运费。个)见下表所示。试求总运费最少的运输方案以及总运费。AB甲甲乙乙丙丙丁丁x43571020y2196715z5220674第46
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 规划 建模 学习 教案
限制150内