零件加工排序问题
流水线作业排序问题
流水线作业排序问题/productioncontrol/200908091604.html流水作业排序问题的基本特征是每个工件的加工路线都一致。
在流水生产线上制造不同的零件,遇到的就是流水作业排序问题。
我们说加工路线一致,是指工件的流向一致,并不要求每个工件必须经过加工路线上每台机器加工。
如果某些工件不经某些机器加工,则设相应的加工时间为零。
一般说来,对于流水作业排序问题,工件在不同机器上的加工顺序不尽一致。
但本节要讨论的是一种特殊情况,即所有工件在各台机器上的加工顺序都相同的情况。
这就是排列排序问题。
流水作业排列排序问题常被称作“同顺序”排序问题。
对于一般情形,排列排序问题的最优解不一定是相应的流水作业排序问题的最优解,但一般是比较好的解;对于仅有2台和3台机器的特殊情况,可以证明,排列排序问题下的最优解一定是相应流水作业排序问题的最优解。
这里只讨论排列排序问题。
但对于2台机器的排序问题,实际上不限于排列排序问题。
一、最长流程时间Fmax的计算这里所讨论的是n/m/P /Fmax,问题,其中n为工件数,m为机器数,P表示流水线作业排列排序问题,Fmax为目标函数。
目标函数是使最长流程时间最短,最长流程时间又称作加工周期,它是从第一个工件在第一台机器开始加工时算起,到最后一个工件在最后一台机器上完成加工时为止所经过的时间。
由于假设所有工件的到达时间都为零(ri=0,i= 1,2,…,n),所以Fmax等于排在末位加工的工件在车间的停留时间,也等于一批工件的最长完工时间Cmax。
设n个工件的加工顺序为S=(S1,S2,S3,…,Sn),其中Si为第i位加工的工件的代号。
以表示工件Si在机器M k上的完工时间, 表示工件Si在Mk上的加工时间,k= 1,2,…,m;i=1,2,…,n,则可按以下公式计算:在熟悉以上计算公式之后,可直接在加工时间矩阵上从左向右计算完工时间。
下面以一例说明。
例9.4 有一个6/4/p/F max问题,其加工时间如表9—6所示。
加工顺序分类方法
加工顺序分类方法
数控加工工序的划分一般可以按照以下方法进行:
(1)刀具集中排序法是按照使用的刀具进行工序划分,将同一刀具可以完成的零件全部精加工。
用第二刀和第三刀完成其他他们能完成的部分。
这可以减少工具更换的次数,减少空闲时间,并减少不必要的定位误差。
(2)对于加工内容较多的零件,可根据其结构特点将加工零件分为若干部分,如内部形状、外部形状、曲面或平面等。
一般先加工平面和定位面,再加工孔;先加工简单的几何形状,再加工复杂的几何形状;先加工精度低的零件,再加工精度高的零件。
(3)对于容易发生加工变形的零件,由于粗加工后可能发生变形,
需要对粗加工和精加工排序方法进行校准。
所以一般来说,所有的粗加工和精加工工序都要分开。
综上所述,在划分工序时,要灵活掌握零件的结构和工艺性,机床的功能,零件数控加工内容的数量,安装次数,机组的生产组织。
此外,建议采用集中处理或分散处理的原则。
要根据实际情况来定,但一定要合理。
机械制造行业中的流水作业排序问题-文档资料
机械制造行业中的流水作业排序问题一、生产作业计划与流水作业排序问题假如某个车间需要生产n种零部件,这n种零部件需要经过m台设备进行加工,并且每种零部件在每台设备上的加工时间各不相同。
那么怎样编排这n种零部件的加工顺序可以使总加工时间最短,这是排序要解决的问题。
一般说来,排序只是确定工件在机器上的加工顺序,而编制生产作业计划,则不仅包括确定工件的加工顺序,而且还包括确定机器加工每个工件的开始时间和完工时间。
可以说解决好排序问题是顺利完成生产作业计划的保障。
二、排序问题的表示方法通常我们用4个参数来表示不同的排序问题,4个参数表示法为:n/m/p/Fmax其中,n为零部件数,m为设备(或机器数),p表示流水作业排列排序问题,Fmax则表示目标函数,通常是使其值最小。
流水作业排序问题的基本特征是每个零部件的加工路线都一致,并且每个零部件在每台设备上的加工顺序都相同。
我们所说的加工路线一致,是指零部件的流向一致,并不要求每个零部件必须经过加工路线上每台设备加工。
如果某些零部件不经过某些设备加工,则设相应的加工时间为零。
上述公式是一个递推公式,在熟悉这个计算公式之后,可以直接在矩阵上计算完工时间.某车间生产的产品符合4/3/p/Fmax问题,其加工时间如下表所示:如果车间按照S=(1,2,3,4)的顺序组织生产,按照上述公式递推,将每个零部件的完工时间标在其加工时间的右上角.对于第一行第一列,只需要把加工时间的数值作为完工时间标在加工时间的右上角。
对于第一行的其它元素,只需从左到右依次将前一列右上角的数字加上本列的加工时间,将结果填在计算列加工时间的右上角。
对于第二行到第m行,第一列的算法相同。
只要把上一行右上角的数字和本行的时间相加,将结果填在本行加工时间的右上角;从第2列到第n列,则要从本行前一列右上角和本列上一行右上角数字中取大者,再和本列加工时间相加,将结果填在本列加工时间的右上角.这样最后一行的最后一列右上角的数字即为Fmax。
第九章流水作业的排序问题精品文档
9.2 流水作业排序问题
一、最长流程时间Fmax的计算
工件 Si在机器MK 上的完工时间为CKSi • 工件 Si在机器MK 上的加工时间为PSiK
• C1Si= C1Si-1+PSi1 • CKSi=max{ C(k-1)Si, CkSi-1 }+PSik
举例:有一个6/4/p/ Fmax问题,其加工时间如下 表所示。当按顺序S=(6,1,5,2,4,3) 加工时,求Fmax。
• (1,2,3,4)或(2,1,3,4)
i12 Pi1 11 2 3 Pi2 89 4 13 Pi3 413 518
Fmax=28
3
4
69
312
215
924
8 26 2 28
i21 Pi1 22 13 Pi2 46 814 Pi3 511 418
3
4
69
312
216
925
8 26 2 28
Fmax=28 加工顺序(1,2,3,4)或(2,1,3,4)
3
4
69
312
215
924
8 26 2 28
举例
J1
J2
J3
J4
J5
J6
机器1 pi1
5
5
4
1
2 10
机器2 pi2
5
5
5
3
6 10
机器3
4
机器4 pi4
2
8
2
1
5
6
机器5 pi5
5
2
1
2
8 10
总和
25 23 15 11 28 40
具体过程
(1)找出关键工件:工作负荷最大的40,对应的是工 件 6, Jc=J6
工件加工排序问题
工件加工排序问题2009-01-09 17:36工件加工排序问题问题摘要:本文是经典计划排序问题中的车间作业问题,研究n个工件在m台机器上有序的加工问题。
根据所提的问题及文中所给的有关数据表,我们分别采用了不同的解法。
(1)第一问为n(在此为12)个工件在一台设备(车床)上加工问题,(1.1)这里我们使用lingo8.0求解(源代码见附录1)得最优工件加工的顺序为:6每个工件在车床上加工的结束时间分别为:车床 2.5 5.8 9.0 12.6 13.5 16.3 20.3 22.0 23.2 25.9 28.4 33.1等待和加工的总时间为:171.9000(1.2)这问工件要在它们要求的时间内完工,选择加工工件的种类及加工的次序,使得整个选择加工的工件价值最大。
我们采用贪心算法(源代码见附录)求得结果:选择的加工工件和加工次序为:整个选择的加工价值为:117总的加工时间为P=27.2(2)第二问为12个工件在两台设备上加工问题,我们使用johnson算法,(源代码见附录2)求得最优工件加工的次序为:每个工件在车床,钻床机上加工的结束时间分别为:0.9 2.1 3.8 6.3 9.0 11.8 15.4 18.7 22.7 27.4 29.9 33.15.4 7.2 11.7 14.2 17.2 21.2 25.0 27.5 29.7 31.6 33.3 34.6最小时间为:34.6(3)第三问为n(在此为12)个工件在三台设备(分别为车床,钻床和铣床)上加工,我们使用CDS算法(源代码见附录2),求得最优工件加工的次序为:每个工件在车床,钻床,机上加工的结束时间分别为:车床 1.2 3.7 4.6 7.4 9.1 11.8 14.3 18.3 21.6 26.3 29.5 33.1钻床 3.0 5.4 9.9 13.9 18.4 21.4 23.9 26.1 28.6 30.5 31.8 34.0铣床 5.5 9.1 11.9 16.9 19.4 23.2 25.0 27.4 29.4 31.2 32.8 35.3加工过程状态图,其中黑色表示等待:最小时间为:35.3关键字:Johnson算法 CDS算法(启发式算法)贪心算法工件加工排序问题重述:(一)12种工件都在车床上加工,车床一次只能加工一种工件,根据文中所给表(1)求:1)在不考虑工件的完工时间和工件的价值的条件下,使得完成这批工件加工任务所需的总时间最省的工件加工的次序。
不同顺序加工零件的作业排序与作业安排方法
本文通过对影响作业排序的优解因素的分析, 构造作业排序的优化规则, 并结合生产的实际情况 进行作业排序和作业安排, 注重了实用性, 取得了较 好的效果, 当零件数量N 比较大时, 其效果更佳。
结 语
影响作业排序的因素很多, 以往的研究大多仅 着眼于作业本身, 而很少顾及具体的生产环境。本文 在作业排序与作业安排的实用化方面进行了有益的 尝试, 充分考虑车间生产的实际情况, 提出了一个实 用的最小时钟推进仿真作业排序与作业安排方法。 该作业排序与安排方法有以下特点:
1. 以系统统一时钟逐渐推进作业排序与安排 的过程, 该时钟始终代表了设备可用资源的最近时 间, 以此制定作业进程计划, 与生产的实际情况十分 相似, 使本系统具有生产实际情况动态仿真的良好 功效。
! 机械加工与自动化#
不同顺序加工零件的作业排序与作业安排方法
T he M ethod s of A rrangm en t fo r D ifferen t M ach ing Sequence of Pa rt 北方工业大学 (100041) 张向慧
西北核技术研究所 (710024) 赵龙文
责任编辑 修
《新技术新工艺》·机械加工与自动化 2002 年 第 3 期
·3·
4) 待 加 工 零 件 种 类、数 量 较 多, 设 备 种 类、 数量多;
5) 相同工序码 (ST EPCOD E ) 的工序均可在有 同一工序码的 k 台设备中任一台加工。
以上几点, 基本上模拟了实际的生产现场。 2. 最小时钟推进仿真排序与安排法 1) 作业生产任务已由生产计划系统排出, 并放 入作业任务信息库 D 1中: D 1 = {L ( i, j) [ ST EPNO ( i, j) , CLA SS ( i, j) , ST EPCOD E (i, j) ,W COD E (i, j) , t ( i, j) , T b ( i, j) , T d (i, j) , T R (i, j) , R ( i, j) ], i= 1, 2,. . . k } 其中L ( i, j) 为零件 i 的第 j 道工序的有关信息, ST EPNO ( i, j) 为工序号, CLA SS ( i, j) 为作业优先 级, ST EPCOD E ( i, j) 为工序码, W COD E ( i, j) 为作 业 码, t ( i, j) 为额定工时, T b ( i, j) 为就绪时间, T d ( i, j) 为最晚完成时间, T R ( i, j) 为最小间隔, R ( i, j) 为剩 余工序数。 2) 设备信息库 D 2: D 2= {M ( i, j) (SCOD E ( i, j) , B EG IN T IM E ( i, j) ) ; i= 1, 2,. . . m , j = 1, 2,. . . . i(m ) ; } 其中M ( i, j) 为 i 类第 j 台设备, SCOD E 为设备 适用工序码, B EG IN T IM E 为设备最早可用时间。
生产运作管理---第十一章流水作业的排序问题
假设条件
1.一个工件不能同时在几台不同的机器上加工。 2.工件在加工过程中采取平行移动方式,即当上一道工
序完工后,立即送下道工序加工。 3.不允许中断。当一个工件一旦开始加工,必须一直进
行到完工,不得中途停止插入其它工件。 4.每道工序只在一台机器上完成。 5.工件数、机器数和加工时间已知,加工时间与加工顺
Fi----工件Ji 的流程时间,即工件在车间的实际停留时间,在工
件都已到达的情况下, Fi= Pi+ Wi
Li----工件Ji 的延误时间, Li= Ci- di , Li<=0 按期或完成提前;
Li>0 延误
Fmax----最长流程时间, Fmax=max{Fi}
二、排序问题的分类和表示法
1、排序问题的分类:
排序问题常用四个符号来描述: n/m/A/B
其中, n-----工件数; m-----机器数; A----车间类型; F=流水型排序, P=排列排序 G=一般类型,即单件型排序 B-----目标函数
三、流水作业排序问题
1、最长流程时间Fmax的计算
举例:有一个6/4/p/ Fmax问题,其加工时 间如下表所示。当按顺序S=(6,1,5, 2,4,3)加工时,求Fmax。
(a) J1 - J2 - J3- J4 - J5
A B
30
(b) J4 - J2 - J3- J5 - J1
A B
26
比较
可以看出,初始作业顺序的总加工周期是 30,用约翰逊法排出的作业顺序总加工周 期是26,显然后者的结果优于前者。
两台机器排序问题的算法(续)
I
1
2
3
4
5
6
Ai
生产作业排序的问题
• EDD(Earliest Due Date)法则:优先选择完工期限紧的工件。 • MWKR(Most Work Remaining)法则:优先选择余下加工时间最
长的工件。 • LWKR(Least Work Remaining)法则:优先选择余下加工时间最
1、问题描述
• (i,j,k):表示工件i的第j道工序是在机器k上进行。 • 加工描述矩阵D:每一行描述一个工件的加工,每一
列的工序序号相同。
1,1,1 1,2,3 1,3,2 D=
2,1,3 2,2,1 2,3,2
五、单件车间排序问题(n/m/G/Fmax)
• 加工时间矩阵T:与D相对应。
1,1,1 1,2,3 1,3,2 D=
短的工件。 • MOPNR(Most Operations Remaining)法则:优先选择余下工序
3
0
2 1,2,3 2
6
2,1,3 0
3
0
3 1,2,3
3
7
3
2,2,1 3
7
3
4 1,3,2 7 2,2,1 3
8 7
3
5 1,3,2 7 2,3,2 7
8 12
7 7
M*
Oj
M1 1,1,1 M3
M3 2,1,3 M3 1,2,3 M1
M1
2,2,1
M2 M2 2,3,2
6 2,3,2 12
13
④将确定的Oj放入{St},从{Ot}中消去Oj并将Oj的紧后 工序放入{Ot}中,使t=t+1。
⑤若还有未安排的工序,转步骤②;否则,停止。
零件加工流水作业排序问题—车间作业计划
方法只用 4 个参数就可以表示大多数不同的排序问题。4 参数表示法为:
n/ m/ A/ B
其中, n -工件数; m -机器数; A -车间类型,在 A 的位置若标以“ F ”,则代表流水作业排序问题。若标以 “ P ”, 则表示流水作业排列排序问题。若标以“ G ”,则表示一般单件作业排序问 题。当 m = 1 ,则 A 处为空白。因为对于单台机器的排序问题来说,无所谓加工路线问 题,当然也就谈不上是流水作业还是单件作业的问题了。 B -目标函数,通常是使其值最小。 有了这 4 个符号,就可以简明地表示不同的排序问题。例如, n / 3 / P / Cmax 表示
i ti1 ti 2 ti 3 ti 4
6 2,2 5,7 5,12 1,13 表 2 顺序 S 下的加工时间矩阵 1 5 2 4,6 4,11 5,17 4,21 4,10 4,15 5,22 3,25 2,12 5,20 8,30 2,32 4 1,13 7,27 5,35 3,38 3 3,16 6,33 7,42 4,46
j =1 m
Cmax :最长完工时间, Cmax = max{ci } ;
1≤i ≤ n
Fi : J i 的流程时间,即工件在车间的实际停留时间, Fi = Ci − ri = H i + Ti ; Fmax :最长流程时间, Fmax = max{Fi } ;
1≤i ≤ n
Li :工件的延迟时间, Li = Ci − d i ;当 Li > 0 (正延迟) ,说明 J i 的实际完工时 ,说明 J i 提前完工;当 Li = 0 (零延迟) , Ji 间超过了完工期限;当 Li < 0 (负延迟)
当 ri = 0 , i = 1,2, L , n 时,最大流程时间为
生产作业排序(1)
2020/8/29
一、基本概念
1、排序 • 排序就是要将不同的工作任务安排一个执行
的顺序,使预定的目标最优化。
• 实际上就是要解决如何按时间的先后,将有 限的人力、物力资源分配给不同工作任务, 使预定目标最优几个概念
• 工件(Job):服务对象; • 机器(Machine、Processor):服务者。
一、基本概念
单件车间排序问题的基本特征:
• 每个工件都有其独特的加工路线,工件没有 一定的流向。
一、基本概念
3)表示方法 一般正规的表示方法为:n/m/A/B
n:工件数;m:机器数; A:车间类型(F、P、G);B:目标函数
一、基本概念
4)一般来说,排列排序问题的最优解不一定 是相应流水车间排序问题的最优解,但一般 是比较好的解。而对于仅有2台或3台机器的 情况,则排列排序问题的最优解一定是相应 流水车间排序问题的最优解。
往前排。
• 若最短时间出现在M2上,则对应的工件尽可能 往后排。
• 若最短时间有多个,则任选一个。 • 划去已排序的工件。 • 若所有工件都已排序,则停止,否则重复上述
步骤。
四、一般n/m/P/ Fmax问题的 启发式算法
对于一般的n/m/P/Fmax问题,可以用分支 定界法求得最优解,但计算量很大。实际 中,可以用启发式算法求近优解。
四、一般n/m/P/ Fmax问题的 启发式算法
1、Palmer法
• 计算工件斜度指标i : m : 机器数 pik :工件i在机器k上的加工时间。 i=1,2,,n
• 排序方法: 按i从大到小的顺序排列。 • 按排序的顺序计算Fmax
四、一般n/m/P/ Fmax问题的 启发式算法
【经典】建模-组合优化模型-排序问题
(X,t) (X/{i,j},zij(t))
f (X ,t,i, j) ai aj f [X /i, j, zij(t)]
zij (t ) max[zi(t) aj,0] bj max(t ai aj bi bj, bi bj aj, bj)
zji (t ) max( t ai aj bi bj, bi bj ai, bi)
ai f (X / i,t ai bi) 当t ai时
f (X ,t,i)
ai f (X / i,bi)
当t ai时
zi(t) max( t ai,0) bi f ( X , t, i) ai f [ X / i, zi(t)]
X/i表示在集合X中去掉工件i后剩下的工件集合
5
6
8
+2
+2
-5
9
5ቤተ መጻሕፍቲ ባይዱ
43
2
T
动态规划思想
动态规划是用来解决多阶段决策过程最优 化的一种数量方法。其特点在于,它可以 把一个n 维决策问题变换为几个一维最优 化问题,从而一个一个地去解决。
需指出:动态规划是求解某类问题的一种 方法,是考察问题的一种途径,而不是一 种算法。必须对具体问题进行具体分析, 运用动态规划的原理和方法,建立相应的 模型,然后再用动态规划方法去求解。
j2
j3
j4
j5
7
1
5
4
交货日期(d) 23
20
8
6
14
分析:
加工工件在机床A上有加工顺序问题,在机
床B上也有加工顺序问题。可以证明:最优 排序方案可以只在机床A、B上加工顺 序相同的排序中寻找。即使如此,所有
可能的方案仍有n!个,这是一个不小的数, 用穷举法是不现实的。
五种作业排序规则最短作业时间规则
五种作业排序规则最短作业时间规则当多项任务(零件)排队等候某个工作中心加工时,哪项任务应当优先安排?这就是作业优先次序安排(简称为作业排序)要解决的问题。
常用的排序规则有:
①先到先服务规则(FCFS排序):即任务的处理顺序是按照其到达工作中心的先后次序依次进行。
②最短作业时间规则(SPT排序):即在所有排队等候某个工作中心加工的任务中,选择作业时间(准备时间十加工时间)最短的那一件最先加工。
③超限最短加工时间规则:即事先设定一个排队等候时间限度,对于等候时间超过此时间限度的任务,优先安排其中作业时间最短的任务。
如果没有哪项任务的排队等候时间超限,则按最短作业时间规则排序。
④最早到期规则:即在所有排队等候某个工作中心加工的任务中,按照计划交货期从早到晚的顺序,最先安排计划交货期最早的任务,而不管该项任务何时到达该工作中心。
⑤最短松弛时间规则:所谓松弛时间,等于某项任务距离计划交货期的剩余时间与该项任务的作业时间之差。
而最短松弛时间规则,
是将最高优先级分派给具有最短松弛时间的任务,而不管其计划交货期的早晚。
数学建模(工件加工排序)
完成时间 T i 0.9 2.1 3.8 6.3 8.8 11.5 14.3 17.5 20.8 24.4 28.4 33.1 总计:171.9
-5-
2) 分析:由于工件必须在它们要求的时间内完工,即某工件在任务开始起到该工件加工完
毕之间所用的总时间应少于该工件பைடு நூலகம்规定完工时间。 所以要使整个加工任务的工件总价值最 大,必须合理选择加工工件的种类及其加工的次序。 引入 0-1 变量,若选择 i 工件加工,则记 Y i =1.否则记 Y i =0; 工件的排序算法同问题 1) ,但约束条件有所不同。在本题中,12 种工件不一定都可以入选 到最优加工序列中(即目标排序中可能出现工件空缺) ,所以
Lingo 程序: (wenti(2).lg4 文件) model: !考虑完工时间和工件价值的排序问题; sets: gongjian/g1..g12/:shijian,endtime,gj_value; ! 属性为原始排序下各个工件的机床加工时间, 完工时间,工件价值; shunxu/s1..s12/:time,overtime,fin_value; ! 属性为重新排序后各个工件的机床加工时间,完 工时间,工件价值; links(shunxu,gongjian): note; endsets !目标函数; max=@sum(shunxu(I):fin_value(I)); !从新排序后各工件的机床加工时间(可能为零,即表示未选中工件); @for(shunxu(I): time(I)=@sum(gongjian(J):shijian(J)*note(I,J))); !从新排序后各工件的完工时间(可能为零,即表示未选中工件); @for(shunxu(I): overtime(I)=@sum(gongjian(J):endtime(J)*note(I,J)); ); !从新排序后各工件的工件价值(可能为零,即表示未选中工件); @for(shunxu(I):
排序模型一台机器上加工n种零件定义1零件的滞留时间=等待
排序模型
一、一台机器上加工n种零件
定义1零件的滞留时间=等待加工时间+加工时间
定义2 平均滞留时间M t=各零件滞留时间的总和/零件个数
例1车间有一台机床,计划加工6个零件,每个零件加工完毕后立刻到下一道工序上加工,但尚未加工的零件必须等待正在加工的零件加工完毕后,才能到机床上加工。
相关数
现在要确定各零件的加工顺序,使各零件在该机床上的平均滞留时间最短。
推广开来,若有n个零件,各零件的加工时间分别为J1,J2,…,J n,则=[J1+(J1+J2)+…+( J1+J2+…+J n)]/n
=[nJ1+(n-1)J2+…+2 J n-1+ J n]/n
要使M t尽可能小,应J1≤J2≤…≤J n,即排序原则为:加工时间小的零件先加工。
于是原问题的最优加工顺序为:3,6,2,5,1,4。
零件i的总耗时=零件i件数×零件i每件加工时间+零件i准备时间
二、在两台机器上加工n个零件
一批零件依次在两台机器上加工,这批零件在第一台机器上加工的顺序必须与在第二台机器上加工的顺序相同,且均应先在第一台机器上加工,然后才能在第二台机器上加工。
例2 设有5个零件,按工艺要求必须先在机床上切削,再在钻床上打孔,加工时间如。
工件可转包加工的排序问题研究
j b c n b r c se n h u e o ige ma h n rs b o t a t d t u c n r c o . o a ep o e sd i o s n a s l n c i eo u c n r c e o a s b o t a t r I ajbi s b o tatd t h u cn rco. t d l ey l dtmei t esmea h f S u c nrce ot es b o tatr i ev r c i h a ste o s i a S
霍志明
摘要 研究工件可 以转包加工的单台机排序问题:有 n个工件,在零时刻 已经 到达 一个
单 台机处,每个工件可以 由加工者 自有 的单 台机器加工或者转包 给其他机器加工.如果工件 被转包加工,那么其完工 时间等于在 自有机器上的加工时间,而产生的加工费用与在 自有机
器 上加工的费用不同.假设被转包加工的工件的完工 时间和加工费用与转包加工机器 的总负 载 没有关系.目标函数是 最小化工件最大完工时间与总加工费用的加权和 .该问题 已经被证 明是 NP 难的.最后给 出该问题的伪多项式时间最优 算法 ,并且提 出一个完全多项式时间近 一 似方案 ( P AS . FT ) 关键词 排序,伪多项式 时间最优算法, F AS PT 中图分类号 O2 3 2 数学分类号 6 B 0 9 B3 8 2,0 5
s m ft a i a o pe in tme f ih i f e st e lr e n ft em a i l u o hem xm lc m lto i wh c Sde n d a h ag ro eo h x ma i
c mpeint f h — o s b n h xma eieyla i f h u —o s o l o i o ei h uej s dtema i l l r dtmeo e th ue t me t n o a d v e t o jb )a d t Байду номын сангаасtt 1 rcsigc s.Thspo lm a en p o e ob —ad v o s n h oa po es ot n i rbe h sb e rv dt eNP h r .、 e
作业排序优制材料
i2
P
i3
p
i
i
1
2
3
4
P
i1
1
2
6
3
P
8
4
2
9
4
5
8
2
13
11
16
例:一批制品,批量n =4件,须经四道工序加工,各工序时间分别为:t1=10, t2=5, t3=15, t4=10。
n——加工批量; m——工序数目; ti——工件在第i工序的单件工时;
四、相同零件、不同移动方式下加工周期的计算
一批零件在上道工序全部加工完毕后,才整批转移 到下道工序加工。
n——加工批量; m——工序数目; ti——工件在第i工序的单件工时;
3、平行顺序移动方式
工序
M1
M2
M3
M4
T平顺
t2
t1
t3
时间
t4
第2种情况:ti≥ ti+1 考虑设备加工的连续性
第1个工序的所有工件加工完成的时刻为基准,向前推(n-1)个t2时间,作为第2个工序的开始时间。即从红线开始向前推3个作为第2个工序的开始时间。
3、平行顺序移动方式
x
T=nt1+t2+x+t4
k=1,2,3...m
例:有一个4/3/P/ Fmax 问题,其加工时间如下表所示,用Palmer法求解。
表
11
-
5
加工时间矩阵
i
1 2 3 4
P
i1
1 2 6 3
P
i2
8 4 2 9
二、n/2/F/Fmax问题的最优算法
(一)Johnson算法: ① 从加工时间矩阵中找出最短的加工时间。 ② 若最短的加工时间出现在M1上,则对应的零件尽可能往前排;若最短加工时间出现在M2上,则对应零件尽可能往后排。然后,从加工时间矩阵中划去已排序零件的加工时间。若最短加工时间有多个,则任挑一个 ③ 若所有零件都已排序,停止。否则,转步骤①。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
……………………装……………………订……………………线…………………………商丘师范学院2011-2012学年度第二学期期终考试数学与信息科学学院数学与应用数学、信息与计算科学专业
10级(数本10-1班、数本10-2班、信计10-1班)《数学建模》答卷
零件加工顺序的数学模型
摘要
对于零件加工顺序模型的求解,我们不难想到运用多种方法来达到其求解目的,但是考虑到零件在M1工序上的总加工时间是固定的。
关键是在M2及M3工序上会出现等待。
如果采用不同序加工,那么在M1上已加工好的零件,在M2上加工的时间会落到在M1上比其后加工的零件的后面,则其在M2上等待的时间更长,同样在M2与M3工序上也是这样,要求加工时间最短的加工顺序,就必须尽量减少零件在M2及M3工序上的等待时间,由于零件必须在它们要求的时间内完工,即某零件在任务开始起到该零件加工完毕之间所用的总时间应少于该零件的规定完工时间。
所以要使整个加工任务的零件总价值最大,必须合理选择加工零件的种类及其加工的次序。
本题根据已知数据,结合问题中的具体要求,我们引入0/1变量建立零件排序的数学规划模型。
借助Lingo软件进行求解运算,得出其中的最优排序方案。
使得完成这批零件加工任务所需要的总时间最省。
在这里,我们通过对各个零件(排序后)完成某项特定工序所需总时间进行求和得到整个加工任务所需要的总时间。
而各零件的总时间包括其机床加工时间和加工其他零件的等待时间。
最后,根据我们建立的模型求解得出某车间加工十个零件模型所需最短总加工时间为943分钟,总加工时间最短的加工顺序为:D-E-J-G-H-B-I-A-F -C,具体结果如表1-1,1-2。
关键词:0/1变量数学规划模型 Lingo软件
一、问题重述
某车间上午8:00开始加工十个零件,这些零件必须依次通过机床M1,M2,M3,其加工时间如下表(单位:分钟)。
2. 写出个零件加工起止时间表,求出个机床的等待时间。
3. 若零件加工还要满足下面条件,零件D必须在零件E之前加工;零件H与零件J的加工必须相连;机床M3加工每个零件等待时间不能超过5分钟,总等待时间不能超过30分钟。
试建立模型,重新回答前面两个问题。
二、问题分析
零件在M1工序上的总加工时间是固定的。
关键是在M2及M3工序上会出现等待。
如果采用不同序加工,那么在M1上已加工好的零件,在M2上加工的时间会落到在M1上比其后加工的零件的后面,则其在M2上等待的时间更长,同样在M2与M3工序上也是这样,要求加工时间最短的加工顺序,就必须尽量减少零件在M2及M3工序上的等待时间,由于零件必须在它们要求的时间内完工,即某零件在任务开始起到该零件加工完毕之间所用的总时间应少于该零件的规定完工时间。
所以要使整个加工任务的零件总价值最大,必须合理选择加工零件的种类及其加工的次序。
三、模型假设
假设一:在后面的模型中,我们都假定了忽略零件在转换工序时的运输时间。
即将整个零件加工过程简化为一个连续的过程,只考虑机床在加工零件时其他零件的等待时间。
假设二:零件之间是相互独立的,从生产的角度看,先加工一个零件并不影响对后面零件的加工。
不象有些流水线生产那样,存在固定的加工顺序。
假设三:工人都是熟练工人,零件在工序上的加工时间是固定不变的,与工人的操作水平无关。
假设四:零件在三个工序上采有同顺序加工,即在工序M1上的加工顺序与在M2及M3工序上的加工顺序相同。
在工序M1上的加工是连续不断的。
四、符号说明
……………………装……………………订……………………线…………………………
X I (1):i 零件在车床M1加工所需时间 X I (2) :i 零件在车床M2加工所需时间 X i (3) :i 零件在车床M3加工所需时间 M I (1):i 零件完成在M1加工的总时间 M I (2):i 零件完成在M2加工的总时间 M I (3):i 零件完成在M3加工的总时间
M I-1(2):(i-1)零件完成在M2加工的总时间(i>1) M I-1(3)(i-1)零件完成在M3加工的总时间(i>1) M:加工十个零件模型的总时间
五、模型的建立
由问题分析可知零件i 在M1工序完成的时间:
M I (1)= M I-1(1) + M I (2) (1)
对于零件i 在M1工序完成的时间M I (1)与(i-1)零件完成在M2加工的总时间,M I-1(2)要分两种情况分析:
1)当时M I (1)≥M I-1(2)即i 零件完成M1工序的总时间大于或等于(i-1)零件完成M2工序的总时间,此时i 零件不需要等待(i-1)零件而立即就进入钻工序,因此i 零件完成M2工序的总时间表达式为; M I (2)= M I (1)+ M I (2)
2) 当时M I (1)≤ M I-1(2)
,即i 零件完成M1工序的总时间小于或等于(i-1)零件
完成M2工序的总时间,此时i 零件需要等待(i-1)零件完成M2工序才能进入M2加工。
因此i 零件完成M2工序的总时间表达式为M I (1)= M I-1(1) + X I (2)。
综合以上两种情况,得到i 零件完成M2工序的总时间计算公式为:
M I (1)=max(M I (1), M I-1(1)) + X I (2) (2)
同理:对于零件i 在M2工序完成的时间M I (1)与(i-1)零件完成在M3加工的总时间M I (3),有i 零件完成M3工序的总时间计算公式为:
M I (3)=max(M I (1), M I-1(3)) + X I (3)
(3)
综合(1)(2)(3)可得加工十件零件需要的总时间为:
M= M I (3)
+}
{
∑-⋅±
⋅10
2
3)
3()2()max (i i
i i X
M M
约束条件:
s.t. ∑=10
1i ij X =1,(i=1,2,3, (10)
……………………装……………………订……………………线…………………………
∑=10
1
i ij X =1,(j=1,2,3, (10)
}{1,0∈X ij
六、模型求解
通过用Lingo 编程求解,我们得出以下结论:
……………………装……………………订……………………线…………………………
表1-2
由表6-1可知,我们可以排出各个零件加工的起止时间表,如下表所示:
起止时间表:
机床等待时间:
针对问题三:
若零件加工还要满足下面条件,零件D必须在零件E之前加工;零件H与零件J
……………………装……………………订……………………线…………………………的加工必须相连;机床M3加工每个零件等待时间不能超过5分钟,总等待时间不能超过30分钟,我们还用此类似模型进行求解。
唯一不同的是:该模型要满足上述要求,从软件的运行情况可知,最优的零件排序为D-E-B-G-H-J-F -A-I-C;完成这批零件加工任务所需的最省总时间为846分钟.
起止时间表:
机床等待时间:
七、模型评价
……………………装……………………订……………………线…………………………
在本题的解答过程中所建立的数学规划模型中,我们始终围绕一种化整为零的数学思,根据各零件在加工过程中加工时间和总时间之间的联系,寻求各零件加工总时间的具体算法。
再利用Lingo 软件进行求解模型,得出零件的最优排序。
其中逻辑严谨,论证充分,算法简洁准确。
有效地提高了软件求解效率。
由于零件的生产与加工要受很多因素的影响,我们建立的模型中还有很多我们未考虑到的因素,对现实生活中的零件生产与加工的的排序问题影响不大,不适合全面推广。
X=⎥⎥
⎥
⎥
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡X X
X
X
X X
X X X X X X X X X X X X X X X X X X
X 1010104
103
102
101
41044
43
42
41310
3433323121024232221110
14131211
八、参考文献
[1]姜启源,谢金星,叶俊,数学模型(第三版)
[2]颜文勇,数学建模,高等教育出版社,北京,2011.6
[3] /view/66c42373f242336M1eb95ee9.html [4] /view/63bfcf3410661ed9ad51f391.html [5] /view/4199d2be960590c69eM376b2.html。