基于数学规划模型的工件加工问题的求解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于工件加工问题的求解
摘要
对于一个加工企业而言,如何在最短时间内完成加工任务,是一个企业提高竞争力和利润的关键。本文就是一篇关于工件加工的排序优化问题,在给定的数据和符合实际生产的条件下,合理的安排工件的加工顺序,使总加工时间达到最少。对于工件加工次序模型的求解,我们可以运用许多方法来进行求解,但是考虑到3台机床加工10个零件的给定一加工顺序,所有零件通过机床的顺序是一致的;每个零件在各机床的加工时间已知,且每台机床在同一时间只能加工一个零件。M2及M3工序上会出现等待。如果采用不同序加工,那么在M1上已加工好的零件,在M2上加工的时间会落到在M1上比其后加工的零件的后面,则其在M2上等待的时间更长,同样在M2与M3工序上也是这样,要求加工时间最短的加工顺序,就必须尽量减少零件在M2及M3工序上的等待时间,由于零件必须在它们要求的时间内完工,即某零件在任务开始起到该零件加工完毕之间所用的总时间应少于该零件的规定完工时间。所以要使各个零件在车间待的总时间最短,其加工零件顺序固然只有一种。那么就要合理选择加工零件的种类及其加工的次序。
本题根据已知数据,结合问题中的具体要求,我们引入0/1变量建立零件排序的数学规划模型。通过lingo得出其中的最优排序方案。使得完成这批工件加工任务所需要的总时间最省。然后我们对各个排序后的零件完成特定工序所需花费时间进行求和得到整个加工程序所需总时间。总时间包括了各个零件在机床的加工时间以及加工其它零件的等待时间。
最后,根据建立的模型求出某车间加工十个零件所需最短的时间为413分钟,总加工时间最短的加工顺序为D-H-G-I-J-E-A-F-C-B,具体结果如表
1-1,1-2。
若件加工还要满足下面条件,零件D必须在零件E之前加工;零件H与零件J的加工必须相连;机床M3加工每个零件等待时间不能超过5分钟,总等待时间不能超过30分钟。那么继续利用lingo软件求解可以得出在此条件下最优的顺序为G-I-D-H-J-E-A-F-C-B,所需最短的时间为425分钟,具体结果如表3-1,3-2。
关键词:线性规划0/1变量数学规划模型lingo软件
一、问题重述
车间上午8:00开始加工十个零件,这些零件必须依次通过机床M1,M2,M3,其加工时间如下表(单位:分钟)。
1. 试建立模型求出使总加工时间最短的加工顺序。
2. 写出各零件加工起止时间表,求出各机床的等待时间。
3. 若零件加工还要满足下面条件,零件D必须在零件E之前加工;零件H 与零件J的加工必须相连;机床M3加工每个零件等待时间不能超过5分钟,总等待时间不能超过30分钟。试建立模型,重新回答前面两个问题。
二、问题分析
零件在M1工序上的总加工时间是固定的,无关乎零件加工顺序。问题关键在于零件在M2以及M3工序上回出现等待。若采取不同加工顺序,那么在M1上已加工好的零件会在M2工序上出现等待。同样在M2上加工好的零件在M3工序上也会出现这种现象。要求加工时间最短的加工顺序,就必须尽量减少零件在M2及M3工序上的等待时间,由于零件必须在它们要求的时间内完工,即某零件在任务开始起到该零件加工完毕之间所用的总时间应少于该零件的规定完工时间。若要使整个加工任务的零件总价值最大,应选择最优加工零件的种类及其加工的次序。
若零件D必须在零件E之前加工且零件H与零件J的加工必须相连;机床M3加工每个零件等待时间不能超过5分钟,总等待时间不能超过30分钟。那么就需在第一个建立好的模型上附上条件,得出该条件下的最优次序。
三、模型假设
假设一:在后面的模型中,我们都假定了忽略零件在转换工序时的运输时间。即将整个零件加工过程简化为一个连续的过程,只考虑机床在加工零件时其他零件的等待时间。
假设二:零件之间是相互独立的,从生产的角度看,先加工一个零件并不响对
后面零件的加工。不象有些流水线生产那样,存在固定的加工顺序。
假设三:工人都是熟练工人,零件在工序上的加工时间是固定不变的,与工人的操作水平无关。
假设四:零件在三个工序上采有同顺序加工,即在工序M1上的加工顺序与在M2及M3工序上的加工顺序相同。在工序M1上的加工是连续不断的。
四、符号说明
X i (1):i零件在车床M1加工所需时间
X i (2):i零件在车床M2加工所需时间
X i (3):i零件在车床M3加工所需时间
T i (1):i零件完成在M1加工的总时间
T i (2):i零件完成在M2加工的总时间
T i (3):i零件完成在M3加工的总时间
T i-1(2):(i-1)零件完成在M2加工的总时间(i>1)
T i-1(3)(i-1)零件完成在M3加工的总时间(i>1)
T:加工十个零件模型的总时间
五、模型的建立
由问题分析可知工件i在M1工序完成的时间:
T T 1
=
T T −1
1
+
T T 1
(1)
对于工件i 在M1工序完成的时间T T 1
与(i-1)工件完成在M2加工的总时间T T −12
要分两种情况分析:
(1)当T T 1
≥T T −12
时,即i 工件完成M1工序的总时间大于或等于(i-1)工件完成M2工序的总时间,此时i 工件不需要等待(i-1)工件而立即就进入下一工序,因此i 工件完成 M2工序的总时间表达式为:
T T 2
=T T 1
+T T 2
(2)当T T 1
≤T T −12时,即i 工件完成M1工序的总时间小于或等于(i-1)工件完成M2工序的总时间,此时i 工件需要等待(i-1)工件完成M2工序才能进入M2加工。因此i 工件 完成M2工序的总时间表达式为: T T 2
=T T −12
+T T 2
综合以上两种情况,得到i 工件完成M2工序的总时间计算公式为:
T T 2=max (T T 1,T T −12)+T T 2
(i>1) (2)
同理:对于工件i 在M2工序完成的时间T T 2
与(i-1)工件完成在M3加工的总时T T −13
,有i 工件完成M3工序的总时间计算公式为: T T 3
=max (T T 2,T T −13)+T T 3
(i>1)
(3)
综合(1)(2)(3)可得加工十件零件需要的总时间为:
T=T T 3+∑{TTT (T T 2,T T 3+T T 3
)}10T =2
约束条件: