康伟成,俞爱林,黎展滔
(广东工业大学机电工程学院,广东广州 510006)
随着我国经济的持续高速发展,定制型产品的需求数量及质量都在不断增大,这就对轮胎模具等装备制造行业的要求越来越高,而对于这种Make to Order(MTO)型企业而言,产品的生产提前期对其在日益激烈的竞争中占据主动优势地位,赢得更多客户的订单,就显得更为重要。
质量、成本和交货期对于MTO型生产企业是尤为重要的三个核心竞争力,为了在与其他竞争对手的竞争中能从客户手中获取更多的订单,订单的交货期已上升到与产品报价同样重要的地位[1-2]。产品能否按期交货直接关系企业的经济利益,同时影响着企业与客户的关系。因此,当前MTO型生产企业提高自身核心竞争力的最直接有效的方法就是采用科学的生产管理方法来提高订单交货期的准确性。
如果要准确预报订单的交货期,则需要对制造系统中的产能及负荷有准确的界定[3],而影响系统负荷界限的主要是系统中的在制品数量,因此要限制工件的平均生产提前期,即是要限制在制品总数,而影响在制品总数的关键因素就是系统中各阶段缓冲区[4]的最优设置问题即Buffer Alloca⁃tion Problem(BAP)。
目前国内外对BAP的研究整体分为三类解法:动态规划法、搜索方法和仿真方法。
第一、二种方法均是通过数学分析方法求解系统性能指标来对缓冲区容量值进行设计,精确方法求解较大规模系统时,将会面临维数灾难,使求解变得不可行,而近似求解的方法会降低求解精度。
通过仿真建模统计分析方法亦可以求解较大规模系统最佳性能指标值,文献[5]中针对两道工序的订货型车间订单投放问题进行了研究,仿真了有限缓存无阻塞的情形,对每道工序有单台或多台加工设备的两级Flow Shop问题进行了探讨,通过仿真实验说明了正确地拒绝订单能够明显地改善订单交货期的表现,但其未考虑系统的阻塞情况。
仿真实验的方法可以通过一系列贴近实际的分布假设来求解系统性能,这就使之成为一种非常普遍有效的方法,但由于其通常需要通过大量的重复试验,使得它无法求得最优解,但对于较大规模的系统,仿真实验依然是一个比较科学行之有效的方法。本文亦将通过仿真的方法对8阶段每阶段具有多台设备的流水车间进行缓冲区优化配置。
对于定制型装备制造企业中具有有限buffer的制造单元,受产品交货期要求的影响,每一级buffer容量值不可能无限大,而与托盘型闭环柔性流水车间相比,其系统内的产品数量又不是固定值。因此,本文将以单一产品类型的多阶段每阶段具有多台设备的柔性流水车间(Flexible Flow Shop,FFS)为研究目标,在每阶段buffer容量均有限且为服务后阻塞机制的前提下,分别以工件平均生产周期最短和设备平均利用率最大为目标函数,利用仿真统计的方法通过两种启发式算法,求得该八阶段每阶段具有多台设备的流水车间在预定拒绝率范围内满足目标函数时,各阶段缓冲区容量值的最优值。
本文通过采用遵从服务后阻塞的有限缓存八阶段Flow-Shop排队模型(如图1)来研究各级缓存值对系统性能指标的影响[6],并求得满足目标函数时各级缓冲区容量值的大小。该模型共有八个节点,八个节点中每节点的设备数量依次分别为1、2、3、4、1、3、1、2,其中μ1、μi、μ7、μ8分别为第1、i(i=2,3,4,5,6)、7、8阶段的加工速率,各节点处的设备加工速率分别服从参数为0.9、0.45、0.3、0.225、0.9、0.3、0.9、0.45的负指数分布,各节点加工工时相互独立;λ1为该模型的外部到达率,也为第1阶段的到达率,λi、λ7、λ8分别为第i、7、8阶段的到达率;B1、Bi、B7、B8分别为第1、i、7、8阶段的缓冲区,各节点处缓冲区大小是有限的。模型其他参数的设置如下:工件按照泊松过程到达;服务规则是先到先服务;在某设备上,一个工件完工离开后,下一个工件方可进入该设备进行加工;一个工件到达系统将进入第一道工序进行加工,如果之前已经有工件在等待或在加工,则新工件将加入缓冲区队列等待,若该缓冲区已达到最大值,则工件被拒绝;工件完工后将进入下一节点的缓冲区,如果下一节点缓冲区为空,且有空余设备,则工件直接接入下一节点的设备上进行加工;如果进入下一节点时下一节点缓冲区满,将在原地等待直到下一节点的缓冲区出现空位才能进入下一节点;若某节点同时阻塞上一节点的多台设备,当阻塞解除时,上一节点被阻塞的工件按其到达节点的先后顺序进入下一节点的缓冲区;工件从第一个节点进入系统,依次进入下一节点进行加工,最后从第8阶段设备离开系统,期间没有工件损失。本文采用预设指标为系统平均拒绝率10%±3%,即在满足该拒绝率的前提下,分别以工件平均最短生产周期和设备最大利用率为优化目标,通过两种启发式算法对系统各级缓冲区容量值进行优化,同时统计并分析反映系统性能的四个指标,分别为工件平均生产周期Leadtime、系统平均在制品数量WIP、设备平均利用率Utilization及系统平均拒绝率Jobrejected。
图1 八级流水车间模型
本文采用的仿真实验平台为eM-Plant仿真软件,硬件基本配置如下:双核CPU 2.0 GHz,2 GB内存的硬件环境,构建的仿真模型如图2所示。
该软件采用面向对象的方法对制造系统运行过程进行仿真,在对资源状态概率提取、资源利用率观测、系统稳态界定等方面均具有较好的实验环境。模型中工件由工件产生区到达,接着或进入八个节点并顺次进行加工;或被系统拒绝,进入工件拒绝区。
因为运行过程中工件的到达和加工速率均是随机事件,为了得到能准确描述系统的仿真结果,根据大数定理,在仿真统计过程中,将每次仿真的时间设置为一个较大的值,各指标仿真统计值由在同一组参数情况下经1 000次独立重复实验求均值得到,且为保证仿真过程中所采集数据的合理性,实验过程中数据的选取均为在系统开始运行并趋于稳定时开始记录统计。根据所统计的数据,计算出反映系统性能的如下四个性能指标:(1)工件的平均加工周期;(2)系统的平均在制品数量;(3)设备的平均利用率;(4)系统对工件的平均拒绝率。
图2 八级柔性流水车间的仿真模型(主界面)
对于多级流水车间,当其各节点加工能力相当时,其缓冲区设置为一般为喇叭口型,即上一节点的缓冲区容量值要大于或等于下一节点的缓冲区容量值,因为在整个系统中,每个节点处工件只会来源于上一级节点,再同等时间内,下一级节点接受的工件最多等于上一节点输出的工件数量,如果后面工序的缓存满了,必然导致前面工序停工阻塞,因此前面工序最大缓存量也应当设置得更大一些,以便于降低更前面工序被阻塞的概率。
对于MTO制造型企业而言,工件拒绝率越高对于企业就意味着在同等的时间里将接到更少的订单,从而使得总产值下降,影响企业的经济效益;当工件拒绝率越低,就意味着企业在同等时间内接收更多的订单,从而使得订单产量可能超过企业的实际产能,进而造成订单拖期,影响企业信誉及长期利益。
由分析可知,对于系统而言,一定时间内系统对工件的拒绝率越低,则表明系统接收的订单数量越多,在系统各阶段设备加工能力一定的条件下,进入系统的订单数量越多,则订单的平均生产周期越长,如果系统拒绝率的预设条件为7%~13%时,系统拒绝率在尽量靠近且小于13%时,订单的平均生产周期最短,在满足拒绝率为7%~13%时,采用如下启发式算法来求得各级缓冲区的容量值。
首先,当各级缓冲区容量值均设为无限大时,系统能接受所有订单,此时系统拒绝率为0,而订单的平均生周期为最长,为求得系统拒绝率小于且接近13%时第一阶段缓冲区容量值,采用如下方法,如图3所示,保持后续七级缓冲区容量值为无限大,第1阶段缓冲区从1开始递增,每增加一次统计并分析仿真结果,直至系统拒绝率首次出现小于13%时即停止第1阶段缓冲区容量值的寻优,并记录下该值,此时各节点的缓冲区容量值即为系统拒绝率首次满足预设条件时,系统产能最大化即工件的平均生产周期最长所对应的各级缓冲容量值;接着依照N1≥N2≥N3≥N4≥N5≥N6≥N7≥N8,将第1阶段的缓冲区容量值赋值给第二个节点,同时第一阶段的缓冲区值保持不变,后续六个节点的缓冲区值仍设为无限大,接着开始第二轮仿真;记录并分析每次仿真结果,如果仿真结果系统拒绝率大于13%,则第1阶段的缓冲区容量值加一,并再次仿真,如果该次仿真结果不能满足预设条件,则继续加一,依此类推,直至统计指标中的系统拒绝率首次出现接近且小于13%,则本轮仿真结束;接着将第二个节点的缓冲区容量值赋值给第三个节点,第1、2阶段缓冲区容量值保持不变,同时后续五个节点的缓冲区容量值仍设为无限大,按照第二轮仿真方法开始进行第三轮仿真;以此类推,直到第八轮仿真结束。在仿真过程中,如果对某一组缓冲区容量值进行仿真时,结果不满足预设条件,采用如下原则对各级缓冲区容量值进行改变:从相邻两级差距较大的那组中的下一级节点开始递增;如果该组缓冲区容量值中有相同的数值或有好几组相邻两级数值差距相同时,则从相邻两级差距相同中的较后那一组中的下一级开始递增。这样能在保持各级加工能力大致相同的情况下,尽量保持前后各级缓冲区容量值更加均衡,不会出现大的偏差,且能在保持较优运行结果的前提下大大减少仿真次数。
对于设备利用率而言,设备利用率主要与设备的空闲比率和阻塞比率有关,若要系统的设备平均利用率较高,则要尽可能的降低设备的空闲比率和被阻塞的概率,而系统中设备平均空闲比率与系统拒绝率呈正比,若要降低系统中设备的空闲比率则要尽可能的降低系统拒绝率,使得有更多的订单进入系统,当系统拒绝率的预设值为10%±3%时,即系统拒绝率要尽可能的接近且大于7%,才能使得系统中的订单数量最大,此时系统中设备的平均空闲比率最低;而系统中设备被阻塞的概率主要与系统中该设备的下一节点的缓冲区大小有关,要降低设备被阻塞的概率,则要尽可能的提高该设备下一级缓冲区的容量值,但实际生产中缓冲区容量值又不可能设置为无限大,于是需要使得设备被阻塞的概率为0时,求该设备下一级缓冲区容量值的最小值。基于服务后阻塞机制,以系统满足预设拒绝率的前提下,通过启发式策略(如图4)求得各级设备被阻塞的概率最小化时,对应各级缓冲区容量值的大小。
图3 以工件拒绝率为目标优化流程
在确定满足系统预设拒绝率时所对应的第一节点缓冲区容量值的大小,仍采用与上述方法一致的做法,首先设置缓冲(B2-B8)为∞,缓冲区B1的容量值根据每次仿真结果从一开始进行递增,直至系统拒绝率接近且大于7%时停止,此时得到即为在满足系统预设拒绝率范围内进入系统最多订单的情况,接着设置第8阶段缓冲区(B8)的初值,从一开始累加,第2到第7阶段缓冲区(B2-B7)容量值设为∞,然后进行一次仿真,观察第7阶段工作中心是否堵塞,如果堵塞则第8阶段缓冲区容量值加一再次进行仿真直到第7阶段设备不再堵塞,然后将第8阶段缓冲区的容量值赋予第7阶段缓冲区,然后开始第二轮仿真,观察第6阶段设备是否堵塞,依此类推直到所有节点处的设备都不再堵塞时的各级缓存即为所得到的满足预设条件时设备利用率最大化所对应的仿真结果,流程图如图4所示。
图4 以设备阻塞率为目标优化流程
根据上述模型,在满足预设拒绝率约束条件对不同目标函数进行求解,按照以上两种算法分别求目标函数最优时所对应各级缓冲区容量值进行仿真,即得到如下结果,如表1所示,它们均为系统拒绝率在满足10%±3%的条件下的结果,其中第一个算法的结果是以工件平均加工周期最小化为目标,第二个算法的结果是以设备利用率最大为目标。
这两种方法分别为在满足系统预设拒绝率的上限和下限情况下,分别以最小化工件平均生产周期和最大化设备利用率为目标值求解系统所对应的各级缓冲区最优值,通过对比可知,当工件的平均加工周期最短时,方案一中各级缓冲区容量值及系统中的在制品数量均小于第二种方法,但由此造成方案一中的设备平均利用率也因此降低,且系统平均拒绝率的升高会减少进入系统的订单,这会由此降低企业的产能,影响企业的经济效益。因此上述模型在进行各缓冲区容量值优化时所采用的启发式算法对实际生产过程和进行系统设计及优化时均有借鉴和指导意义。
表1 算法结果比较
本文通过对系统设计时负荷界限难以界定的问题建立仿真模型,应用两种启发式算法,对多级流水车间进行了缓存设置问题(BAP)的仿真优化,得到了在满足系统预设拒绝率的前提下,以工件平均生产周期最短和设备平均利用率最大化为目标函数进行了仿真优化,得到了两类目标函数最优时所对应各级缓冲区容量值的大小。该仿真优化模型为车间负荷控制中以不同目标函数最优时所对应的综合负荷的界限设定提供了一种有效的设置方法,这对较大规模的每阶段具有多台设备的多阶段流水车间各阶段缓冲区容量值的有效设定及其规划具有借鉴和指导意义。
[1]A.haskose,BG Kingsman,D worthington.Modelling flow and jobbing shops as a queueing network for work⁃load control[J].Interna⁃tional Journal of Produc⁃tion Economics, 2002,78(3):271-285.
[2]方水良,姚嫣菲,赵诗奎.基于遗传算法的柔性车间多目标优化调度[J].机电工程,2011(3):269-274.
[3]严浩云,李宏余.面向订货生产的生产计划与控制技术[J].成组技术与生产现代化,2008,25(1):12-17.
[4]张涛,于瑞峰,王建才.生产线缓冲区容量优化配置:案例研究[J].机械设计与制造,2002(01):29-31.
[5]陈田,陈庆新,毛宁,等.具有两道工序的柔性同序加工车间任务投放策略[J].工业工程,2010,13(5):69-74.
[6]A.haskose,B G Kingsman,D worthington.Perfor⁃mance analysis of make-to-order manufacturing systems under defferent workload control regimes[J].Interna⁃tional Journal of Production Economics,2004,90(2):169-186.