关于CDS的流水作业排序问题
- 格式:doc
- 大小:97.50 KB
- 文档页数:2
流水线作业排序问题/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. 最长流程时间的计算例:有一个6/4/F/Fmax 问题,其加工时间如下表所示,当按顺序 加工 S=(6, 1, 5, 2, 4, 3) 时,求Fmax工件代号i 14 6 35 2 P 订 4 5 3 4 8 5 P 「23 9 1 3 7 5 PQ7 6 8 2 5 g563924解:列出加工时间矩阵根 据 公式Gsi 二max{Gk-i )si , C KSM }+ P sik,计算各行加丄时间,最后得出结果 Fmax=CmsnFmax=572•两台机器排序冋题的最优算法(Johnson 算法)例:求下表所示的6/2/F/Fmax 的最优解将工件2排在第1位 2将工件 将工件 将工件将工件将工件 3排在第 5排在第 6排在第 4排在第 最优加6位2位 3位5位4位2 56 1 4 S=(2, 5, 6, 1,4,33由上表可计算出,Fmax =283.—般n/m/F/Fmax问题的最优算法(一)Palmar算法(入i二刀[k-(m+l)/2]P ik k二1, 2,…,m按入i不增的顺序排列」】件)例:有一个4/3/F/Fmax问题,其加工时间如下表所示,用Palmar求解.解:入i二刀[k-(3+l)/2]P ik , k=l,2 , 3入i二-Pil+ Pi3于是,入1=-PU+ P13 =-1+4=3入2二-P21+ P23 =2+5二3入3二-P31+ P33 =-6+8=2入4二-P41+ P43 =-3+2二T按入i不增的顺序排列工件,得到加工顺序(1, 2, 3, 4)和(2, 1, 3, 4 ),经计算,二者都是最优顺序,Fmax=28(二)关键工件法例:有一个4/3/F/Fmax问题,其加工时间如下表所示,用关键工件法求解.3■ ■Pa Pit 24解:由上表可知,力口 u工时间最长的是3号工件,Pil<=Pi3的工件为1和2,按Pil不减的顺序排成Sa=(l,2),Pil>Pi3 的工件为4号工件,Sb= (4),这样得到加工顺序为(1,2, 3,4 )。
《生产与运作管理》试卷五一、填空题(本大题共7小题,每空2分,共计28分)1.用Johnson算法求下列6/2/F/F max问题的最优排序为,对应的F max。
i J1J2J3J4J5J6P i15 1 8 5 3 4Pi27 2 2 4 7 62.某装配线每天实际工作时间为480分钟,日产量为40台产品。
该装配线共有9道装配作业,各作业之间的关系及标准时间如下所示:那么它的节拍、最小工作地数、平衡的评价指标分别为、和。
作业 A B C D E F G H I紧前作业— A B B A C F DE GH时间(分)7 4 3 8 5 9 8 11 33.某产品流水生产,计划日产量为150件,两班生产,每班规定有12分钟停歇时间,计划废品率为5%,那么该产品生产的节拍的计算公式应为。
4.已知每件A产品需2件C部件,第6周C部件的库存量为110件,如A产品在第7周的计划订单投入量为190件,则C部件的净需求量为。
5.某超市的某种食用油平均日需求量为1000瓶,并且食用油的需求情况服从标准差为20瓶/天的正态分布,如果提前期是固定常数5天,如果该超市确定的客户服务水平不低于95%,请结合所提供的客户服务水平与安全系数对应关系的常用数据(见下表),计算出该食用油的订货点是;安全库存是。
服务水平0.9998 0.99 0.98 0.95 0.90 0.80 0.70安全系数 3.5 2.33 2.05 1.65 1.29 0.84 0.556.某装配车间零件需求率为490个/月,零件由厂内生产,生产率为900个/月,生产准备费为100元/每批,存储费为0.5元/个/月。
则经济生产批量、每月平均成本、最佳循环时间和最大库存水平分别为、和、。
7.n/3/P/C max表示。
二、简答题(本大题共4小题,每小题5分,共计20分)1.简述MRP的运算逻辑,并说明如何与OPT相结合。
2.按照对象专业化原则建立生产单位的优缺点是什么?3.简述OPT的三个财务指标和三个作业指标是什么?OPT的九原则是什么?4.简述网络计划方法的优点。
CDS启发式算法及Matlab程序--Campbell H,Dudek R, Simth M. A heuristic algorithm for the n-job m-machinesequencing problem.用于求解n-job,m-machine的流水作业调度问题;即n项作业都需要顺序进行m个工序,m个工序中,每道工序仅有一台机器,如何安排n项作业的加工先后关系。
CDS(Campbell-Dudek-Simth):是Johnson算法的扩展,被认为是好的具有鲁棒性的启发式算法;算法步骤:1、将m台机器分组,产生m-1个两台机器问题的集合;2、然后利用Johnson算法获得m-1个加工顺序(每个两台机器问题获得一个加工顺序);3、选取这m-1个加工顺序中考核指标最好(一般为Makespan最短)的加工顺序作为近似最优调度解;分组及每组组合加工时间示意表示例:现在有四项作业需要在6台机器上加工,时间数据如下(n行m列),试使用CDS方法获取最优调度,即最短加工时间Makespan。
2 2 12 12 10 739 7 17 6 2 54 3 16 19 2 3010 8 4 4 5 4CDS法求解结果如下:Makespan =106Schedule =3 1 2 43 1 2 43 1 2 43 1 2 4可以看出,分组后的5(m-1)组两机器问题中,通过Johnson法获取的最优调度中,有4组获得了最优调度: 3 1 2 4也验证了CDS法具有较高的Matlab程序--CDS.mfunction [Makespan,Schedule]=CDS(PT)[n,m]=size(PT);if n<=1error('The job qty must large than 2')endPT=double(PT);%Create new 2-stage-machine timeNewPT(1:n,1:2,1:m-1)=0.0;for i=1:m-1for j=1:iNewPT(:,1,i)=NewPT(:,1,i)+PT(:,j);NewPT(:,2,i)=NewPT(:,2,i)+PT(:,m-j+1);endend%Calculate the m-1 group 2-machine problem using Johnson Rulefor i=1:m-1[MidMakespan(i),MidSchedule(i,:)]=Johnson(NewPT(:,:,i)');end%Calculate the Makespan of the m-1 MidSchedulefor i=1:m-1StartTime(1:m,1:n)=0;StartTime(1,MidSchedule(i,1))=0;for j=2:nStartTime(1,MidSchedule(i,j))=StartTime(1,MidSchedule(i,j-1))+PT(MidSchedule(i,j-1),1);endfor k=2:mStartTime(k,MidSchedule(i,1))=StartTime(k-1,MidSchedule(i,1))+PT(MidSchedule(i,1),k-1);for j=2:nStartTime(k,MidSchedule(i,j))=max(StartTime(k,MidSchedule(i,j-1))+PT(MidSchedule(i,j-1),k),...StartTime(k-1,MidSchedule(i,j))+PT(MidSchedule(i,j),k-1));endendMMidMakespan(i)=StartTime(m,MidSchedule(i,n))+PT(MidSchedule(i,n),m); end% Sort the Makespan and obtain the optimal Schedule[Best,BestIndex]=sort(MMidMakespan);OptNum=1;Makespan=MMidMakespan(BestIndex(1));Schedule=MidSchedule(BestIndex(1),:);%Statistic the total optimal shedulesfor i=2:m-1if MMidMakespan(BestIndex(i))==MMidMakespan(BestIndex(1))OptNum=OptNum+1;Schedule(OptNum,:)=MidSchedule(BestIndex(i),:);endend。
作业排序的优先规则知识梳理在进行作业排序时,需用到优先调度规则。
这些规则可能很简单,仅需根据一种数据信息对作业进行排序。
这些数据可以是加工时间、交货日期或到达的顺序。
其它的规则,尽管也同样简单但可能需要更多的信息,通常是需要一个指标,比如最小松弛时间规则和关键比率规则。
还有另外的规则,比如约翰逊规则,在一个机器序列上应用作业排序,并需要一个计算程序来规定作业的顺序。
1、F CFS (先到优先)按订单送到的先后顺序进行加工。
2、S OT (最短作业时间优先)这个规则等同于SPT (最短加工时间)规则。
3、D date (交货期优先)最早交货期最早加工。
4、S TR (剩余时间最短优先)剩余时间是指交货期前所剩余时间减去加工时间所得的差值。
5、RAN (随机排序)主管或操作工通常随意选择一件他们喜欢的进行加工。
6、LCFS (后到优先)该规则经常作为缺省规则使用。
因为后来的工单放在先来的上面,操作人员通常是先加工上而的工单。
“n个作业一一单台工作中心的问题”或“n/1”,理论上,排序问题的难度随着工作中心数量的增加而增大,而不是随着作业数量的增加而增大,对n的约束是其必须是确定的有限的数。
例:n个作业单台工作中心排序问题。
在一周的开始,有5位顾客提交了他们的订单。
原始数据间=3+7+9+15+16二50 (天)平均流程时间二50/5=10天将每个订单的交货日期与其流程时间相比较,发现只有A 订单能按时 交货。
订单B, C, D 和E 将会延期交货,延期时间分别为1,2, 6, 14 天。
每个订单平均延期(0+1+1+2+6+14) /5二4. 6天。
平均流程时间=36/5=7. 5天SOT 规则的平均流程时间比FCFS 规则的平均流程时间小。
另外,订单E 和C 将在交货R 期前完成,订单A 仅延期1天。
每个订单的平均 延期时间为(0+0+1+4+7) /5=2. 4天。
方案二 利用S0T (最短作业时间)规则,流程时间为:间=1+3+6+10+16=36 (天)。
机械制造行业中的流水作业排序问题作者:马超来源:《中国科技博览》2013年第35期【摘要】企业要管理好,生产计划很重要。
保证生产交期和提高生产效率的前提条件,就是要有一个完整合理的生产计划,制定好详细的生产计划对生产的顺利进行有举足轻重的作用。
无论何种生产型态,首先要重视计划,实施有计划地生产。
无计划意味着无序,无序的结果便是无效率,最终是无效益。
而解决好生产过程中的排序问题就是完成生产计划的重要保障。
【关键词】排序生产作业计划 Palmer法关键工件法 CDS法中图分类号:TH 文献标识码:A 文章编号:1009―914X(2013)35―393―01一、生产作业计划与流水作业排序问题生产作业计划是根据企业年度、季度计划的要求,来具体地安排车间、工段、班组乃至工作地在月、旬、日以及昼夜、轮班和小时的工作任务。
对于大型机械制造企业,生产作业计划一般分为公司级生产作业计划和车间级生产作业计划两级。
一般来说,公司生产制造部负责编制和下达公司级生产作业计划,各车间的作业计划员在接到公司级生产作业计划以后,要负责编制本车间的生产作业计划,并将车间级生产作业计划分解落实到各个班组及各个工作地,将车间的生产任务变成各个班组、各个工作地的生产任务。
每个工作地生产作业计划的完成,保证了车间生产作业计划的完成;每个车间生产作业计划的完成,保证了公司级生产计划的完成;公司级生产计划的完成,保证了公司生产经营计划的完成。
假如某个车间需要生产n种零部件,这n种零部件需要经过m台设备进行加工,并且每种零部件在每台设备上的加工时间各不相同。
那么怎样编排这n种零部件的加工顺序可以使总加工时间最短,这是排序要解决的问题。
一般说来,排序只是确定工件在机器上的加工顺序,而编制生产作业计划,则不仅包括确定工件的加工顺序,而且还包括确定机器加工每个工件的开始时间和完工时间。
可以说解决好排序问题是顺利完成生产作业计划的保障。
二、排序问题的表示方法通常我们用4个参数来表示不同的排序问题,4个参数表示法为:n/m/p/Fmax其中,n为零部件数,m为设备(或机器数),p表示流水作业排列排序问题,Fmax则表示目标函数,通常是使其值最小。
生产作业排序的问题引言在制造业或生产行业中,作业排序是一项重要的管理任务。
作业排序的目的是合理、高效地安排生产作业,确保生产线的顺畅运行和最大化生产效率。
然而,由于生产作业的多样性和复杂性,作业排序的问题变得相当困难。
本文将探讨生产作业排序问题的背景、相关算法和解决方案。
背景生产作业排序是指将待处理的生产作业按特定的规则进行排列,以最小化生产周期、最大化生产效率。
当涉及到多个生产作业时,这个问题变得尤为复杂。
常见的作业排序问题包括单机调度问题、流水线调度问题和工序调度问题。
单机调度问题单机调度问题是指在单一设备或机器上安排多个作业的问题。
其目标是使得每个作业的完成时间最小化或工期最短。
常用的调度算法包括最早截止时间优先(EDD)算法、最短处理时间优先(SPT)算法和最长处理时间优先(LPT)算法。
流水线调度问题流水线调度问题是指在多个设备或工序之间安排多个作业的问题。
其目标是使得整个生产线的生产效率最大化。
常见的流水线调度问题包括多品种无等待流水线调度问题和有限缓冲流水线调度问题。
解决这些问题的方法包括最早完成时间优先(EFT)算法、最短工序时间优先(SOT)算法和最大可完工期(MTWR)算法。
工序调度问题工序调度问题是指在多个工序上安排多个作业的问题。
其目标是使得整个生产过程的吞吐量最大化。
常见的工序调度问题包括并行机调度问题和流水车间调度问题。
解决这些问题的方法包括遗传算法、模拟退火算法和禁忌搜索算法。
算法与解决方案为了解决生产作业排序问题,研究者们提出了多种算法和解决方案。
以下是一些常用的算法和解决方案:1.基于优先级规则的算法:根据作业的特定属性(如截止时间、处理时间等)确定作业的优先级。
常用的优先级规则有最早截止时间优先(EDD)规则、最短处理时间优先(SPT)规则和最长处理时间优先(LPT)规则。
2.遗传算法:模拟生物遗传过程,通过交叉、变异等操作产生新的解,并根据解的适应度进行选择。
用(palmer )法,关键工件法和CDS 法求4/4/P/Fmax 问题的最优解。
一,用palmer 法
i λ=m
ik k=1
k m+1/2p -∑
【()】=4
ik k=1
k +1/2p -∑【(4)】=-1.5i1p -0.5 i2p +0.5i3p +1.5i4p
1λ=7 2λ=-11 3λ= -4.5 4λ=5.5 1λ> 4λ>3λ>2λ
按i λ不增顺序排最优加工顺序为(1,4,3,2)则有如下
如p302计算得Fmax=34 二,用关键工件法
观察Pi 知 时间最长的是2号工件 (24>19>17>16) 即 C=2
对余下的工件1,3,4分析知,若Pi1<=Pi4则按Pi1不减的顺序排列Sa=1,4: 若Pi1>Pi4则按Pi4不增的顺序排列则有 Sb=3
则顺序(Sa ,C ,Sb )=(1,4,2,3)即为本例最优顺序 则有如下:
则如P302计算可得Fmax=33 三,用CDS 法
易知m=4,L=1,2……m-1知L=1,2,3则有
求ik
k=1
L
P ∑和4
ik
k=5L
P -∑
,L=1,2,3 则有
分别将L=1,2,3代入ik
k=1
L
P ∑得:
再分别将L=1,2,3代入4
ik
k=5L P -∑
得:
L=1时,所有第一列(i a )不大于第二列(
i
b )即
i a <=
i
b 的工件按
i
a 不减的顺序排列得 A= 1,4 将所有
i
a >i
b 的工件按i b 值不增的顺序排得
B=3,2 故L=1时最优排序为 AB=(1,4,3,2) 解得Fmax=34
L=2时,亦有上知:L=2时最优排序为 (1,4,2,3) 解得 Fmax=33 L=3时,亦有上知:L=3时最优排序为 (1,4,2,3) 解得 Fmax=33
综合上述情况知最佳排序为(1,4,2,3) 且 Fmax=33。