基于零件虚拟工序队列的FMS动态调度研究
基于零件虚拟工序队列的FMS动态调度研究
注意:本文已经在《中国机械工程》(1999,10(12):1367~1369)杂志发表
使用者请注明文章内容出处
赵天奇 陈禹六 李培根
摘要提出虚拟工序队列的概念,并在此基础上提出一种基于静态零件分批(静态调度)的FMS动态生产调度方法,该算法充分考虑到FMS的系统资源限制及零件运输等环节,能较好地解决生产调度中的设备负荷平衡、系统紧急事件发生(如机床故障、新零件加入等)、可替代加工工序等问题,且易于实现,具有较广泛的适应性。
关键词FMS零件虚拟工序队列动态调度调度规则
中国图书资料分类法分类号TH165TP271
Dynamic Scheduling Based on Virtual Operation Queue of Part for FMSs
Zhao Tianqi(Tsinghua University,Beijing,China)ChenYuliuLi Peigenp 1367-1369
Abstract: In this paper a concept of Virtual Operation Queue of part is proposed, a dynamic production scheduling algorithm is presented based on static batching of FMSs. The restricts of manufacturing resources, influence of part handling system and some emergency events (e.g. machine breakdown, rush order joining etc.), alternative operations, etc. are considered in the algorithm. The algorithm is easy to be realized, and can be applied to dynamic scheduling for most types of FMSs, which have one or more AGVs and have linear or loop layout.
Key words:FMSVirtual Operation Queue of PartDynamic schedulingDispatching Rule
对于有效地利用已有FMS中的各种资源提高生产效率而言,合理完善的调度控制系统是关键。调度是指在时间意义上所有系统资源的定位、分配和处理,其系统分为加工子系统和运输子系统(刀具流系统和物料流系统),其调度分为静态调度和动态调度。FMS的调度控制比较复杂,尤其当涉及的因素较多时,若要根据某一调度目标得到最优调度结果,往往很难满足实时性的要求。其实,多数情况下调度目标是人为的,FMS调度只要得到近优解即可[1,2]。
本文在零件静态分批的基础上提出零件虚拟工序队列的概念,并在此基础上提出1个解决FMS动态生产调度的启发式调度算法。
1FMS调度问题描述
FMS动态调度及零件静态分批之间的关系见图1。这里所研究的动态调度是在零件静态分
批的基础上以分好的零件子批为加工任务进行调度的[3,4]。因在加工任务静态分批阶段已充分考虑了系统的部分资源(如装卸站、缓冲站、刀具、夹具、托盘等因素),故在此不需考虑。
图1动态调度与零件静态分批之间的关系
FMS动态调度的目标是使系统具有较好的加工性能,一方面能使系统具有较高的生产率,即较高的设备利用率,另一方面能及时完成给定的加工任务。在本文中,调度主要考虑2方面的性能,即尽量满足加工任务中零件的交货期和尽可能减少系统生产时间。用以下2个指标来描述:工件平均延误时间(mean tardiness,MT)和工件平均流通时间(mean flow-time,MFT)。
MT反映零件是否满足交货期,MFT则反映工件在系统中的驻留时间,能较全面地反映系统生产时间。调度目标
f=min{W1×MT+W2×MFT}
式中,W1、W2为权值;×反映调度目标中MT和MFT的侧重程度。
2零件虚拟工序队列的概念及特点
零件在FMS中加工的过程可用排队理论和方法来描述,由于加工中影响因素较多,如零件的某些工序存在可替代加工工序和零件的加工工序之间的加工先后关系的柔性等。这些因素给系统性能的提高创造了有利的条件,但无疑也为系统的调度控制系统的实现增加了难度。这也是目前大多数调度控制系统采用固定加工工艺的主要原因之一。利用本文提出的零件虚拟工序队列方法可大幅度降低调度问题的复杂性。
零件虚拟工序队列方法的基本原理见图2。假设系统内的每一台机床前都存在一队列(集合),该集合中存放的是当前该设备能够加工的工序(机床的可加工工序集合)。在调度开始时各设备前可加工工序集合为空(也可按给定系统状态设定),当有新零件进入系统或设备加工完一零件时,首先判明该零件当前能加工的工序及其对应的机床,然后使这些工序进入对应机床的可加工工序集合中。若当前可调度工序存在可替代加工工序,则该工序同时加入到对应设备的可加工工序集合中。设备的下一个加工零件是在该机床的可加工工序集合中按一定的规则进行选择的。当机床选择好1个工序后,从所有设备的可加工工序集合中删去该工序对应的零件的所有工序,从而避免不同设备同时选择同一零件的情况。
图2零件虚拟工序队列概念图
采用零件虚拟工序队列方法有如下特点:
(1)有广泛的适应性。对机床故障、紧急零件进入、可替代加工工序以及改变调度目标等通常意义上的重调度情况都很容易处理。
(2)避免了算法中零件在不同的机床队列之间不必要的相互传送及调整。
(3)在零件优化分批的基础上,可实现批内各机床加工负荷的近似自动平衡。机床最大负荷不均衡量为零件的最后一道加工工序的加工时间。
(4)适用于多种零件的混流生产,也适用于传统的Job-Shop生产。
(5)简化了FMS动态调度控制中的规则系统,使得调度控制更易于实现。
用零件虚拟工序队列方法保证了各加工设备加工负荷的近似均衡,若结合合适的调度规则在机床的可调度零件集合中选择合适的加工零件,所得到的结果必为系统的近优解甚至最优解。
3基于零件虚拟工序队列的FMS启发式动态调度算法
该算法是在加工任务分批的基础上,同时考虑了工件运输系统的影响而提出的。机床前输入/输出缓冲站配置不同,其调度算法略有不同。本文针对机床前具有1个输入和1个输出缓冲器的典型FMS情况进行研究,提出动态调度算法,其流程图见图3。
图3FMS动态调度原理图
在调度算法中提出了系统决策点的确定方法。通过计算各机床上所有工件的加工完成时刻,确定具有最小加工完成时间的机床,把该机床当前加工工件的加工完成时刻作为决策点。该方法一方面全面考虑了各机床的加工负荷情况,另一方面也找出了系统中最迫切需要调度决策的机床进行决策和运输,从而提高整个加工和运输系统的利用率,使总加工时间最短。
设备在加工过程中情况主要有6种(见图4)。图4a和图4b中,系统中各机床均有工件加工,且输入存储器中皆有待加工工件,选择t2时刻最小的机床(机床2)的t1时刻作为决策点tD。
图4机床工件选择的决策点分析示意图
图4c和图4d中,此时系统中有机床(机床1)输入存储器中无待加工工件(t2=∞),找出t2最小的机床(机床3)的t1作为决策点tD。
图4e和图4f中,此时系统中有机床(机床1)当前为空闲状态,同样找出t2最小的机床(机床2)的t1作为决策点tD。
除上面几种情况外,还有1种特殊情况,即各机床输入存储器中都为空、各机床或空闲、或只有1个工件。此时把新工件进入系统时刻或系统中工件的工序加工完成时刻作为系统的决策点。
在算法中提出的动态预调度方法,能在系统决策点处预先决策好机床待加工的零件,并通知零件运输系统送入机床的输入缓冲站中,这样当机床加工好零件后可直接通过托盘交换装置把机床上的零件送入输出缓冲站,并把输入缓冲站中的零件送入机床。零件的动态预调度能显着地减少机床的等待时间,提高机床的生产率。
为了实现调度目标,提出调度规则的动态选择方法,即根据系统的主调度目标,确定系统的主调度规则。在系统中未出现特殊情况时,用主调度规则实现对系统的调度;若出现特殊情况,则根据系统的辅助调度目标和特殊状况的类型确定辅助调度规则。主调度规则和辅助调度规则在系统中的动态选择,使系统可达到较好的主调度目标和辅助调度目标。本文通过采用最小松弛时间和零件优先级规则可使MT最小,从而保证零件的交货期。
4实例仿真
根据上面提出的零件虚拟工序队列的概念及动态调度算法,以直线型双排布局的FMS为例,在我们所研制的FMS动态调度仿真系统上对1个典型的加工任务进行仿真试验。该FMS由5台加工中心、1台AGV(正常运行速度为0.2 m/s)、1个装卸站、8个缓冲站和8个可用托盘组成。零件的某一子批加工计划(指经静态分批后生成的子加工计划)见表1,零件的加工工艺见表2,在没有对动态调度仿真系统进行人工干预的情况下经过14.293 32 min的仿真试验得出仿真结果。系统总加工时间为23.822 2 h,总生产率为2.395 5件/h,所用托盘数为6个。表3给出了机床和运输小车的仿真性能结果。因考虑了零件的可替代加工工序,且是在零件静态分批的基础上进行的,所以无法提供可供比较的例子。
表1零件的子批加工计划
零件编号批量交货期(天)零件优先级对应托盘数 A1 20 3 1 1 A2 12 2 1 2 A3 25 3 2 1 A4 24 2 2 1 A5 24 3 1 1 表2零件加工工艺及可替代加工工序
零件
编号工序加工时间(min) 机床1 机床2 机床3 机床4 机床5 A1
1 20 — 25 — — 2 — 25 — 25 23 3 10 12 — — — A2
1 60 — 65 70 — 2 — 25 20 — 20 A3
1 — — 40 — 50 2 40 40 — 35 — 3 — 35 40 — 40 A4
1 — 20 20 — — 2 — 30 — 25 25 A5
1 30 — 20 — — 2 — 25 — 25 25 3 15 12 15 — — 4 — 45 — — 25 表3对该子批零件的调度结果
机床
编号利用率
(%) 通过工
件数加工时间
(h)生产率
(件/h) MC1 78.777 38 17.5002 1.5951 MC2 89.13 26 20.3661 1.0914 MC3 86.262 24 19.7496 1.0075 MC4 52.333 24 11.6668 1.0075 MC5 78.987 25 17.9834 1.0494 AGV1 40.392 - - -
通过对调度结果的分析可知,本文提出的基于零件虚拟工序队列的动态调度算法是切实可行的。
*国家科学技术部重大攻关计划资助项目和国家863高技术发展计划资助项目(863—511—9608—004)
作者简介:赵天奇男,1965年生。清华大学(北京市100084)自动化系博士后研究人员、工学博士。研究方向为敏捷制造、并行工程、ERP、企业过程管理与优化。发表论文20余篇。
作者单位:陈禹六北京市100084清华大学
李培根武汉市430074华中理工大学
参考文献
1.邓子琼.FMS建模及仿真.北京:国防工业出版社,1993:58~96
2.赵天奇,李培根,段正澄.华中理工大学学报,1998,26(2):12~14
Kusiak. Intelligent Manufacturing York:Prentice Hall, Inc., 1990:125~143
Dae Young, Chank Wan ers Ind. Engin.,1996,31(3):557~568