数学建模-机械产品生产计划调整的解决方案_第1页
数学建模-机械产品生产计划调整的解决方案_第2页
数学建模-机械产品生产计划调整的解决方案_第3页
数学建模-机械产品生产计划调整的解决方案_第4页
数学建模-机械产品生产计划调整的解决方案_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机械产品生产方案调整的解决方案1、问题的重述机械加工厂用四台磨床、两台立式钻床、三台水平钻床、一台镗床和一台刨床设备生产7种产品。每种产品的利润(单位:元/件,在这里,利润=销售价格-原料本钱)以及生产单位产品需要的各种设备的工时(小时/件)如表所示,其中短划线表示这种产品不需要相应的设备加工。表C.2产品的利润和需要的设备工时产品1234567单位产品利润磨床0.50----立钻------水平钻0.20------镗床----刨床--------从一月份至六月份,每个月中需要检修设备见表所示(在检修月份,被检修设备全月不能用于生产)。每个月各种产品的市场销售量上限如表所示。每种产品的最大库存量为100件,库存费用为每件每月0.5元,在一月初,所有产品都没有库存;而要求在六月底,每种产品都至少要有50件库存。工厂每天开两班,每班8小时,为简单计,假定每月都工作24天。表C.3设备检修方案月份方案检修设备及台数月份方案检修设备及台数一月一台磨床四月一台立式钻床二月二台立式钻床五月一台磨床和一台立式钻床三月一台镗床六月一台刨床和一台水平钻床表C.4产品的市场销售量上限(件/月)产品1234567一月5001000300300800200100二月6005002000400300150三月30060000500400100四月2003004005002000100五月010050010010003000六月500500100300110050060生产过程中,各种工序没有先后次序的要求。(1)制定六个月的生产、库存、销售方案,使六个月的总利润最大。(2)在不改变以上方案的前提下,哪几个月中哪些产品的售价可以提高以到达增加利润的目的。价格提高的幅度是多大?(3)哪些设备的能力应该增加?请列出购置新设备的优先顺序。(4)是否可以通过调整现有的设备检修方案来提高利润?提出一个新的设备检修方案,使原来方案检修的设备在这半年中都得到检修而使利润尽可能的增加。(5)构造一个最优设备检修方案模型,使在这半年中各设备的检修台数满足案例中的要求且使利润为最大。2、问题的分析因为产品是完整的,设备也是完整的,它们都不是半成品,所以我们要把产品数和设备数都要看做整数,即模型里的变量都要用整数,所以该生产方案问题是一个整数规划〔IP〕问题,可以在合理假设的根底上通过建立整数规划模型并利用LINGO软件来解决该问题。问题一中,需要求使六个月生产量、库存量和销售量到达最大利润的模型。通过分析可知:总利润=销售所获总利润-库存所需金额以此建立目标函数,通过分析,我们把决策变量定为各月份各种产品的生产量、库存量以及销售量。考虑各种产品的利润、各个设备需要使用的时间、设备检修方案、产品的库存量以及市场销售量上限的约束,建立整数规划模型并进行求解,从而制定出六个月的生产、库存、销售方案使六个月的总利润最大的解决方案。问题二中,在不改变题中给出的方案的前提下,通过提高产品售价来到达增加利润的目的。这是一个灵敏度分析问题。采用灵敏度分析,得到各月份各种产品售价可以提高的上限。为了能得到更大的利润工厂需要购置新设备,通过增加设备数来提高生产产量。问题三就是以这种情况为背景提出来的。这种问题是通过求各种资源的影子价格来判断要买哪一种设备。于是采用对影子价格的分析及对偶规划理论来进行求解,从而得到最好的购置方案。问题四是在使原来方案检修的设备在这六个月仍旧得到检修的前提下,通过改变上述的设备检修方案来到达增加利润的目的。通过对前几个问题的求解过程以及影子价格的分析,找出更优的设备检修方案,并通过求解验证这些方案比原有方案获得更大的利润。问题五是在不改变各种设备检修的台数的根底上提出最优的设备检修方案使工厂所得到的总利润到达最大。所以建立模型时我们需要在问题一中所建立的模型里引进新的变量,重新建立新的模型来求解。3、模型的假设通过上面的分析我们假设=1\*GB3①检修月份被检修的设备全月不能用于生产=2\*GB3②一月末开始计算剩余产品的库存费=3\*GB3③产品生产所需要的设备类型和生产一件产品的设备工作时间及一件产品生产本钱不随方案的改变而改变=4\*GB3④产品的生产量、库存量及销售量为整数。根据上面的假设我们定义了下面的一些变量:第i种产品在第j个月的产量。i=1,2…7,j=1,2…6:第i种产品在第j个月的库存量。i=1,2…7,j=1,2…6:第i种产品在第j个月的销售量。i=1,2…7,j=0.1,2…6:第i种产品六个月的总销售量。i=1,2…7:第i种产品在第j个月的销售量上限。i=1,2…7,j=1,2…6:第i种产品单位产品利润。i=1,2…7㈠根据题目给出的“工厂每天开两班,每班8小时,为简单计,假定每月都工作24天〞。可知:各月份各种设备的工作时间数是相等的。设备工作时间数=月工作天数×每天工作班数×每班工作时间数=24×2×8=384〔时〕㈡因为每个月都有要需要检修的设备,所以不是所有的设备会去生产产品,根据题中给出的表C.3设备检修方案我们可以列出下面的各个月份实际可工作的设备数量。各个月份实际可工作设备数月份机床1月2月3月4月5月6月磨床344434立钻202112水平钻333333镗床110111刨床1111104、模型的建立与求解建立问题一的模型并求解:在问题一中,需要求使六个月生产、库存和销售到达最大利润的模型。通过分析可知:总利润=销售所获利润-库存所需金额。所以可以建立以下的模型:决策变量:决策变量为:,,确定约束条件:该月份可用的各个设备都会工作384小时,根据表C.2可以确定约束条件。①设备使用时间的约束:一月份二月份三月份四月份五月份六月份②产品库存量的约束:在一月初,所有产品都没有库存,我们把一月初设为j=0,所以得到下面的第一个式子;每种产品的最大库存量为100件,所以得到下面的第二个式子;在六月底,每种产品都至少要有50件库存,我们把六月底设为j=7,所以得到下面的第三个式子。③销售量上限的约束目标函数:最终利润:根本公式:从二月份开始因为有一月份剩余的产品,所以要把上个月的剩余产品一同卖出去。因此在第二个式子里面该月销售量就是把该月的生产量加上上个月的剩余产品量再减去该月剩余产品的量。求解结果:用LINGO软件来求解模型所得出来的六个月各个月份的生产,库存,销售方案结果如下〔源程序和运行结果见附录一〕:月月份份产品1月2月3月4月5月6月1生产量600002000550库存量100000050销售量500100020005002生产量12200107102109库存量0000250销售量12200107100613生产量30020004006000库存量000010050销售量3002000400500504生产量30000500100350库存量0000050销售量300005001003005生产量800500020011000库存量01000010050销售量8004001002001000506生产量30004500250550库存量10005050050销售量20010040003005007生产量10025001001000库存量01000010050销售量100150100100050求解得到目标函数值〔即六个月最大利润〕为41464.00元。问题二的求解:问题二是灵敏度分析问题。采用灵敏度分析,得到各个月份各种产品销售价格可以提高的上限。问题二的决策变量,约束条件以及目标函数跟问题一中给出的一样。但由于LINGO无法解决整数规划的灵敏度分析问题,于是用LINGO编码的时候把问题一中已编的代码里面的整数约束语句删除即可。求解完后的结果见附录二。因为我们的问题是通过提高产品销售价格来到达增加利润的目的,于是我们只需考虑上限便可。下表展示的是令最优解不变的系数变化范围,即价格最大提高幅度:月月份产品1月2月3月4月5月6月1∞∞∞0.5390.7216.5194041531.30.50.50.211∞∞429.5130.910.550.5∞190.5∞106∞510.4750.650.571.1∞130.283∞8.6〔3〕问题三的求解:问题三说道“哪些设备的能力应该增加〞,这题的意思就是应增加哪种设备的工作时间数。这是一道分析影子价格的问题,而影子价格是资源在最优解下资源增加1个单位时“效益〞的增量,我们可以把设备看做资源。用LINGO对问题三求解得到:Row

SlackorSurplus

DualPrice

OBJ

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

第i个约束条件的影子价格是LINGO输出的第i+1行的DUALPRICE,于是得到数据各个月份增加每种设备的所能创造的利润,列表如下〔下表数据均为增加单位时间,即一小时所得利润〕:月月份机床1月2月3月4月5月6月磨床立钻水平钻0000镗床刨床从上表可以知道,磨床所能创造的利润为0元;立钻所能创造的利润约为104.7元;水平钻所能创造的利润约为2.4元;镗床所能创造的利润为200元;刨床所能创造的利润为220元。所以按照利润从大到小的顺序来购置设备的优先次序为:刨床——>镗床——>立钻——>水平钻由于增加磨床的数量并不能提高利润,所以没有必要购置磨床。〔4〕问题四的求解:问题四是在使原来方案检修的设备在这六个月仍旧得到检修的前提下,通过改变上述的设备检修方案来到达增加利润的目的。通过对前几个问题的求解过程以及影子价格的分析,找出更优的设备检修方案,并通过求解验证这些方案比原有方案的优越性。在对数据的观察和模型的灵敏度分析和对影子价格的探究中,发现可以通过调整现有的检修方案可以到达提高利润的目的。从问题三中得到的影子价格分析表可以知道:一月份可检修除水平钻以外的4种机床,二月份可检修除立钻以外的4种机床,三月份可检修除镗床以外的4种机床,四月份可检修除立钻以外的4种机床,五月份可检修磨床,镗床,刨床,六月份可检修磨床,立钻,镗床。在表C.3中磨床一共要检修2台,立钻一共要检修4台,水平钻一共要检修1台,镗床一共要检修1台,刨床一共要检修1台。修改检修设备方案时检修的各种设备台数不能少于前一句给出的数据。数学语言表达式如下:设变量为第i种设备在第j个月检修的台数,设磨床为第1种设备,立钻为第2种设备,水平钻为第3种设备,镗床为第4种设备,刨床为第5种设备。所以提出来以下两种修改方案〔其实有很多种方案〕:修改的方案一:月份方案检修设备及台数月份方案检修设备及台数一月一台磨床四月一台立钻二月一台立钻五月一台磨床和一台立钻三月一台镗床和一台立钻和一台水平钻六月一台刨床和一台水平钻各个月份实际工作的设备数:月份机床1月2月3月4月5月6月磨床344434立钻211112水平钻332332镗床110111刨床111110时间限制表:115215361536153611521536768384384384384768115211527681152115276838438403843843843843843843843840用LINGO求解得到此方案的最大利润为:49870.00元〔结果见附录四〕修改的方案二:月份方案检修设备及台数月份方案检修设备及台数一月一台立钻四月一台立式钻床二月一台立钻五月一台立式钻床、一次镗床三月两台磨床六月一台刨床和一台水平床各个月份实际工作设备数:月份机床1月2月3月4月5月6月磨床442444立钻112112水平钻333332镗床111101刨床111110时间限制表:153615367681536153615363843847683843847681152115211521152115276838438438438403843843843843843840用LINGO求解得到此方案的最大利润为:50887.OO元〔结果见附录五〕〔5〕问题五的求解:问题五是在问题四的根底上建立新的模型求解最优的设备检修方案使总利润到达最大。模型的建立要在市场销售量上限以及产品库存量约束不变的条件下,通过更改设备检修方案并进而改变各个月份设备使用时间的约束,在保证设备总次数不变的条件下安排更好的设备检修方案。下面构造这个最优检修方案:=1\*GB3①决策变量:增加变量为第i种设备在第j个月可以使用的台数,其中设备顺序已在问题四中给出。(i=1,2…5,j=1,2…6。)②确定约束条件:各种设备每月可以工作的数目少于设备的总数:各种设备六个月工作的总次数:各个设备使用时间的约束:各个月份的销售量的约束:一月份四月份二月份五月份三月份六月份整数约束:且都为整数,i=1,2…7,j=1,2…6,k=1,2…5.③目标函数:=4\*GB3④用LINGO求解:〔源程序和运行结果见附录六〕在问题三中得到的表中可以看出:增加磨床所创造的利润都是0,所以磨床可以在任一个月都能检修磨床;增加立钻所创造的利润在1月,3月,6月份都是0,5月份的利润是最少的,所以可以在这四个月里检修立钻;增加水平钻所创造的利润在2月,3月,4月都是0,所以在这三个月当中任选一个月来检修水平钻;增加镗床所创造的利润在1月,2月,4月,5月,6月都是0,所以在这五个月当中任选一个月来检修镗床;增加刨床所创造的利润从1月到5月都是0,所以在这五个月当中任选一个月来检修刨床;种最优方案。下面只给出一种最优方案该最优设备检修方案方案为:

月份方案检修设备及台数月份方案检修设备及台数一月一台立钻四月一台磨床二月一台刨床五月一台立钻和一台水平钻三月一台立钻和一台磨床和一台镗床六月一台立钻分析LINGO运行结果可得最优方案的生产,库存,销售方案列表如下:月份产品1月2月3月4月5月6月1生产量5006003002000550库存量0000050销售量50060030020005002生产量62721821070156库存量0000050销售量627218210701063生产量300200040060050库存量000010050销售量30020004005001004生产量30001005000350库存量00100100050销售量300004001003005生产量800500030001150库存量01000100050销售量80040010020010011006生产量2003004000357493库存量00005750销售量20030040003004437生产量10025001000110库存量010000050销售量1001501001000605、模型的推广与改良此模型可以应用于涉及到整数规划的一般生产方案调整的解决方案。也可以进而推广到线性规划问题的优化。此模型的约束条件都很简单,也易于理解。建立模型之前我们假设检修月份被检修的设备全月不能用于生产,产品生产所需要的设备类型和生产一件产品的设备工作时间及一件产品生产本钱不随方案的改变而改变。但在现实生产中,设备不一定全月用于检修,随着季节、年份的变化单位生产本钱也会发生改变,所以要改良模型以便适用于解决更多类型的方案方案。最好在原有的模型上再加上用分段函数表示的各个时期生产本钱的价值的条件。6、参考文献:?数学模型?〔第三版〕姜启源,谢金星,叶俊编高等教育出版社2021年12月?运筹学?〔第二版〕徐玖平,胡知能编科学出版社2004年5月附录一:model:!机械产品生产方案问题;sets:machine/ma1..ma5/:need;goods/g1..g7/:interest;month/1..6/;links1(machine,goods):A;links2(goods,month):X,C,Y;alltimes(machine,month):B;endsets!目标函数;max=@sum(goods(I):(@sum(month(J):X(I,J))-Y(I,6))*interest(I))-0.5*@sum(links2(I,J):Y(I,J));!整数约束;@for(links2(I,J):@gin(X(I,J)));@for(links2(I,J):@gin(Y(I,J)));!设备使用时间约束;@for(alltimes(I,K):@sum(goods(J):A(I,J)*X(J,K))<=B(I,K));!库存量约束;@for(links2(I,J):Y(I,J)<=100);@for(goods(I):Y(I,6)>=50);!销售量约束;@for(goods(I):X(I,1)-Y(I,1)<=C(I,1));@for(links2(I,J)|J#NE#1:X(I,J)+Y(I,J-1)-Y(I,J)<=C(I,J));!数据;data:interest=10634193;B=11521536153615361152153676807683843847681152115211521152115276838438403843843843843843843843840;C=50060030020005001000500600300100500300200040050010030000500100300800400500200100011002003004000300500100150100100060;0.050.030.000.070.100.000.000.010.000.050.000.05;enddataend运行结果:Globaloptimalsolutionfound.Extendedsolversteps:2Totalsolveriterations:109VariableValueReducedCostRowSlackorSurplusDualPrice附录二:model:!机械产品生产方案问题;sets:machine/ma1..ma5/:need;goods/g1..g7/:interest;month/1..6/;links1(machine,goods):A;links2(goods,month):X,C,Y;alltimes(machine,month):B;endsets!目标函数;max=@sum(goods(I):(@sum(month(J):X(I,J))-Y(I,6))*interest(I))-0.5*@sum(links2(I,J):Y(I,J));!设备使用时间约束;@for(alltimes(I,K):@sum(goods(J):A(I,J)*X(J,K))<=B(I,K));!库存量约束;@for(links2(I,J):Y(I,J)<=100);@for(goods(I):Y(I,6)>=50);!销售量约束;@for(goods(I):X(I,1)-Y(I,1)<=C(I,1));@for(links2(I,J)|J#NE#1:X(I,J)+Y(I,J-1)-Y(I,J)<=C(I,J));!数据;data:interest=10634193;B=11521536153615361152153676807683843847681152115211521152115276838438403843843843843843843843840;C=50060030020005001000500600300100500300200040050010030000500100300800400500200100011002003004000300500100150100100060;0.000.000.010.000.050.000.05;enddataend运行结果:Globaloptimalsolutionfound.Totalsolveriterations:37VariableValueReducedCostY(G7,5)100.0000附录三:LINGO|Range得到得系数变化范围:Rangesinwhichthebasisisunchanged:

ObjectiveCoefficientRanges

Current

Allowable

Allowable

Variable

Coefficient

Increase

Decrease

NEED(MA1)

INFINITY

NEED(MA2)

INFINITY

NEED(MA3)

INFINITY

NEED(MA4)

INFINITY

NEED(MA5)

INFINITY

X(G1,1)

INFINITY

X(G1,2)

INFINITY

X(G1,3)

INFINITY

X(G1,4)

X(G1,5)

INFINITY

X(G1,6)

X(G2,1)

X(G2,2)

INFINITY

X(G2,3)

INFINITY

X(G2,4)

X(G2,5)

X(G2,6)

X(G3,1)

X(G3,2)

X(G3,3)

X(G3,4)

X(G3,5)

INFINITY

X(G3,6)

INFINITY

X(G4,1)

X(G4,2)

INFINITY

X(G4,3)

INFINITY

X(G4,4)

X(G4,5)

X(G4,6)

X(G5,1)

X(G5,2)

INFINITY

X(G5,3)

INFINITY

X(G5,4)

X(G5,5)

INFINITY

X(G5,6)

INFINITY

X(G6,1)

INFINITY

X(G6,2)

INFINITY

X(G6,3)

X(G6,4)

INFINITY

X(G6,5)

X(G6,6)

X(G7,1)

X(G7,2)

INFINITY

X(G7,3)

INFINITY

X(G7,4)

X(G7,5)

INFINITY

X(G7,6)

INFINITY

Y(G1,1)

INFINITY

Y(G1,2)

INFINITY

Y(G1,3)

INFINITY

Y(G1,4)

INFINITY

Y(G1,5)

INFINITY

Y(G1,6)

INFINITY

Y(G2,1)

INFINITY

Y(G2,2)

INFINITY

Y(G2,3)

INFINITY

Y(G2,4)

INFINITY

Y(G2,5)

Y(G2,6)

INFINITY

Y(G3,1)

INFINITY

Y(G3,2)

INFINITY

Y(G3,3)

INFINITY

Y(G3,4)

INFINITY

Y(G3,5)

INFINITY

Y(G3,6)

INFINITY

Y(G4,1)

Y(G4,2)

Y(G4,3)

INFINITY

Y(G4,4)

INFINITY

Y(G4,5)

INFINITY

Y(G4,6)

INFINITY

Y(G5,1)

INFINITY

Y(G5,2)

INFINITY

Y(G5,3)

INFINITY

Y(G5,4)

INFINITY

Y(G5,5)

INFINITY

Y(G5,6)

INFINITY

Y(G6,1)

INFINITY

Y(G6,2)

INFINITY

Y(G6,3)

Y(G6,4)

Y(G6,5)

INFINITY

Y(G6,6)

INFINITY

Y(G7,1)

INFINITY

Y(G7,2)

INFINITY

Y(G7,3)

INFINITY

Y(G7,4)

INFINITY

Y(G7,5)

INFINITY

Y(G7,6)

INFINITY附录四:Globaloptimalsolutionfoundatiteration:72VariableValueReducedCostX(G1,1)500附录

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论