本发明涉及生产车间中的批处理调度技术领域,具体为一种考虑并行批处理机成本的投入产出决策问题,通过提出批处理机扩容的调度问题,考虑批处理机成本,决定批处理机扩容方案并进行投入产出分析。
背景技术:
批处理机(batchprocessingmachine)将单件处理方式拓展到成批处理方式,突破了一台机器一次只能输入或输出一个工件的限制。批处理机前期投入大、建设周期长、运维成本高、能源消耗大、在建数量少,通常为生产车间的瓶颈机器,同时也是制造系统物料流上拉下推的关键单元,是产线高投入、高产出、高附加值的发生地。生产调度(scheduling)是保障生产过程有序、平稳、均衡、高效运转的神经中枢,是制约生产系统性能的关键环节。传统生产调度研究侧重于寻求优化方案,但是生产车间工艺复杂、约束条件多,导致优化空间小、优化难度大。
并行批处理调度问题可以描述为:给定包含n个工件的工件集合j={j1,j2,…,jn},具有m个并行批处理机的机器集合m={m1,m2,…,mm},工件jj的加工时间为pj,工件组批批次集合b={b1,b2,…,bk,…},第k批加工时间p(bk),安排在机器mi上的第k批加工时间p(bik)。平行机环境下的批处理机调度问题中,并行批处理机mi同一时刻最多可以加工b个工件,工件在0时刻到达,批处理机在0时刻开始加工,每批工件之间无准备时间且加工过程不可中断。
将上述并行批处理调度问题采用数学语言描述即为pm|p-batch,b<n|cmax,cmax为最大完工时间,是优化目标;数学模型如下
obj.mincmax(1)
p(bik)≥xjikpjj=1,2,…,n,i=1,2,…,m,(4)
c(bik)≥c(bi(k-1))+p(bik)i=1,2,…,m,(5)
xjik∈{0,1}i=1,2,…,m,j=1,2,…,n(7)
其中,xjik为0-1变量,当工件jj在机器mi上加工并安排在bk批中,则xjik=1,否则xjik=0;c(bik)表示机器mi上第k批工件的完工时间。
式(1)为模型的目标函数,即最小化最大完工时间;式(2)表示每个工件只能组成一批并在一台机器上加工;式(3)表示批处理机中每一批工件个数不超过批处理机容量b;式(4)表示每一批工件的加工时间不小于批中任何一个工件加工时间;式(5)表示每一批工件的完工时间不小于前一批工件完工时间与该批工件加工时间之和;式(6)表示最大完工时间不小于每台批处理机的最大完工时间;式(7)表示xjik为0-1变量。
技术实现要素:
要解决的技术问题
批处理机扩容旨在提升制造车间产能以实现利润最大化。考虑批处理机成本,分析投入产出,权衡批处理机成本与工件最大完工时间,得到批处理机扩容后批容量的决策方案,为车间装备升级改造提供理论支撑,也是本专利要解决的技术问题。
本发明以并行批处理机为研究对象,考虑批处理机容量变化带来生产成本增加的实际问题,通过建立成本增量与批处理机容量和数量的函数,设计有效的启发式算法,权衡成本收益进行投入产出分析,得到批处理机扩容决策方案。本发明面向生产实际,旨在为企业老线设备改造、新线能力规划等决策提供理论依据,也为其它类型产线升级换代、产线能力提升等提供可借鉴的研究模式。
本发明的技术方案为:
所述一种考虑并行批处理机成本的投入产出决策方法,其特征在于:包括以下步骤:
步骤1:建立并行批处理机容量成本的投入产出决策问题数学模型:
m台加工速度相同的并行批处理机,加工n个工件,并行批处理机同一时刻最多可以加工b个工件;优化目标为最小化最大加工时间cmax与批处理机容量成本之和:
批处理调度问题表示为:pm|p-batch,b<n|cmax+βmb
数学模型如下:
obj.min(cmax+βmb)
p(bik)≥xjikpjj=1,2,…,n,i=1,2,…,m
c(bik)≥c(bi(k-1))+p(bik)i=1,2,…,m
xjik∈{0,1}i=1,2,…,m,j=1,2,…,n
其中,xjik为0-1变量,当工件jj在机器mi上加工并安排在bk批中,则xjik=1,否则xjik=0;
步骤2:将工件松弛为可中断,得到原问题的松弛问题,分析松弛问题的最优解性质:
在步骤1建立的批处理调度问题pm|p-batch,b<n|cmax+βmb中增加工件可中断的约束条件,得到批处理调度问题的松弛问题为pm|p-batch,b<n,pmtn|cmax+βmb;
对松弛问题pm|p-batch,b<n,pmtn|cmax+βmb进行最优解求解,得到最优解为
成本函数为
其中f1(b)=pmax+βmb,f2(b)=pmb+βmb;
步骤3:根据松弛问题最优解性质,设计启发式算法1,求解松弛问题的最优批处理容量:
令
f1(b)是关于批处理容量b的单调递增函数,得到minf1(b)=f1(b1);成本函数f2(b)是凸函数,当
从而得到
针对松弛问题pm|p-batch,b<n,
步骤3.1:通过等式
步骤3.2:通过等式
步骤3.2.1:若
步骤3.2.2:令b2=b1-1,若f2(b2)≤f1(b1),则
步骤3.3:计算
步骤3.4:输出
步骤4:设计启发式算法rph,求解松弛问题的最优批处理容量下的总成本函数:
针对工件不能中断情形下,分析考虑批处理容量成本的调度问题
pm|p-batch,b<n|cmax+βmb
考虑批处理容量成本后目标函数为
其中下标np表示工件不可中断,
取
采用以下启发式算法制定调度方案:
步骤4.1:根据步骤3,得到松弛问题的最优批处理容量
步骤4.2:根据步骤4.1中所求的b,运行下面启发式算法h1,输出调度方案cmax(snp(b))和成本函数
步骤4.2.1:将工件集
步骤4.2.2:按lpt规则将每一批工件安排在使其完工时间最小的机器上,直到所有批安排完毕。
有益效果
为了验证所提rph算法的合理性,设置了机器数固定情况下取不同批处理容量成本系数的实验,具体参数如表1中所示。通过仿真实验,对比启发式算法rph与最优解下界的误差大小,由图1可得如下结论:
1)提出批处理机扩容的调度问题,考虑批处理机扩容所需的成本,设计算法,求解最佳批处理容量,是批处理调度问题的进一步扩展。
2)启发式算法rph与最优解的最大偏差不超过5%,平均偏差随着算例规模增加呈下降趋势;
3)子图之间比较,当算例规模相同时,批处理容量成本系数越大,平均偏差越小;
4)子图内比较,批处理容量成本系数相同时平均偏差随算例规模增加而逐渐减小。
根据理论结果可知,针对问题pm|p-batch,b<n|cmax+βmb,启发式算法rph的最差性能比最大不超过2。根据实验结果可知,启发式算法rph最大偏差不超过5%,且随着算例规模增大而逐渐减小。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1算法rph实验结果;
图2算法h1甘特图;
图3实例函数图。
具体实施方式
下面详细描述本发明的实施例,所述实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本专利提出了考虑并行批处理机成本的投入产出决策问题,并通过仿真实验对其合理性进行了说明。考虑并行批处理机成本的投入产出决策方法主要特征包含在以下步骤中:提出相关问题的数学模型;设计批处理机成本函数,给出松弛问题的最优解;设计启发式算法rph;分析启发式算法rph的性能;给出最优解下界算法;并设计算例实验仿真,验证启发式算法的有效性以及本专利方法的合理性。
步骤1:建立并行批处理机容量成本的投入产出决策问题数学模型。m台加工速度相同的并行批处理机,加工n个工件,优化目标为最小化最大加工时间与批处理机容量成本之和。
优化目标为最大加工时间与批处理容量成本之和,即
obj.min(cmax+βmb)(8)
p(bik)≥xjikpjj=1,2,…,n,i=1,2,…,m(11)
c(bik)≥c(bi(k-1))+p(bik)i=1,2,…,m,(12)
xjik∈{0,1}i=1,2,…,m,j=1,2,…,n(14)
其中,xjik为0-1变量,当工件jj在机器mi上加工并安排在bk批中,则xjik=1,否则xjik=0。
式(8)为模型的目标函数,即最小化总成本函数;式(9)表示每个工件只能组成一批并在一台机器上加工;式(10)表示批处理机中每一批工件个数不超过批处理机容量b;式(11)表示每一批工件的加工时间不小于批中任何一个工件加工时间;式(12)表示每一批工件的完工时间不小于前一批工件完工时间与该批工件加工时间之和;式(13)表示最大完工时间不小于每台批处理机的最大完工时间;式(14)表示xjik为0-1变量。
步骤2:松弛问题的最优解分析。将工件松弛为可中断,得到原问题的松弛问题,分析松弛问题的最优解性质。
在步骤1建立的批处理调度问题pm|p-batch,b<n|cmax+βmb中增加工件可中断的约束条件,得到批处理调度问题的松弛问题为pm|p-batch,b<n,pmtn|cmax+βmb;对松弛问题
pm|p-batch,b<n,pmtn|cmax+βmb
进行最优解求解,得到最优解为
成本函数
其中f1(b)=pmax+βmb,f2(b)=pmb+βmb。
步骤3:松弛问题最优批处理容量求解。根据松弛问题最优解性质,设计启发式算法1,求解松弛问题的最优批处理容量。
令
由于f1(b)是关于批处理容量b的单调递增函数,所以minf1(b)=f1(b1)。
成本函数f2(b)是凸函数,变化趋势与经济订货批量(eoq)模型变化趋势相似,当
进一步,可得
针对松弛问题pm|p-batch,b<n,pmtn|cmax+βmb,在给定机器数量时,定义批处理容量b1为能使工件最大加工时间不小于机器的平均负载时的最小批处理容量,即满足pmax≥pmb1的最小批处理容量
针对松弛问题pm|p-batch,b<n,
算法输入:工件集合
算法输出:松弛问题的最优批处理容量
步骤3.1:通过等式
步骤3.2:通过等式
步骤3.2.1:若
步骤3.2.2:令b2=b1-1,若f2(b2)≤f1(b1),则
步骤3.3:计算
步骤3.4:输出
步骤4:设计启发式算法rph,求解松弛问题的最优批处理容量下的总成本函数。
实际生产过程中,批处理加工过程中工件不允许中断,下面针对工件不能中断情形下,分析考虑批处理容量成本的调度问题,即pm|p-batch,b<n|cmax+βmb。
考虑批处理容量成本后目标函数为
其中下标np表示工件不可中断,
令
本小节所设计的算法中需要分析相同批处理容量情形下,工件不可中断时最优目标值与工件可中断时最优目标值之比,因此先分析并行批处理机环境下工件可中断对目标函数的影响。
步骤4.1:工件中断对目标函数的影响。
针对问题pm||cmax,工件中断对目标函数的影响采用如下指标衡量
braun等(2003)证明了,若将工件不可中断情形下的最优解
可以证明问题pm|p-batch,b<n|cmax的最优解与问题pm|p-batch,b<n,pmtn|cmax最优解之比上界为2-1mb。
步骤4.2:启发式算法rph设计。
启发式算法rph设计思路如下:通过算法1求出松弛问题的最优批处理容量,基于算法1所求最优批处理容量采用启发式算法h1制定调度方案。启发式算法rph具体如下。
算法输入:工件集合
算法输出:批处理容量b、调度方案cmax(snp(b))、成本函数
步骤4.2.1:运行算法1,求松弛问题的最优批处理容量
步骤4.2.2:介绍启发式算法h1(fblpt)。
平行机环境下的并行批处理机调度问题,涉及两个子问题,一是工件如何组批,二是如何将已组好的批次进行排序。不考虑批处理机容量成本时,针对问题pm|p-batch,b<n|cmax,介绍一种启发式算法h1(fblpt)。
步骤4.2.2.1:将工件集
步骤4.2.2.2:按lpt(longestprocessingtime)规则将每一批工件安排在使其完工时间最小的机器上,直到所有批安排完毕。
步骤4.2.3:根据步骤4.2.1中所求的b,运行启发式算法h1,输出cmax(snp(b))和
【实例1】
两台批容量b=2的并行批处理机,6个工件加工时间如表1所示。
表1工件加工时间
根据启发式算法h1,分批方案为b1={j1,j2},b2={j3,j4},b3={j5,j6},调度方案为机器m1上加工批次b2、b3,机器m2上加工批次b1。因此工件的最大完工时间为cmax=max{c1,c2}=max{p(b1),p(b2)+p(b3)}=max{11,13}=13。
启发式算法h1的甘特图如图2所示。
步骤5:启发式算法rph性能分析。
启发式算法rph的性能优劣很大程度取决于
步骤5.1:启发式算法rph性能分析情形1。
对于算法1中所求
证明:工件不可中断时最优解不小于工件可中断时的最优解,即满足如下不等式关系
情况1若
情况2若
因此
当
步骤5.2:启发式算法rph性能分析情形2。
对于算法1中所求
证明:下面分两种情况讨论。
情况1若
由于
将式(26)代入式(25),可得
情况2若
由于
由式(28)和式(29),可得
因此
步骤6:最优解下界算法。
问题pm|p-batch,b<n|cmax+βmb是np难,不存在多项式时间最优算法,因此,本节通过设计下界算法,求得最优解的下界,然后对其进行仿真实验。
针对问题pm|p-batch,b<n|cmax+βmb,将工件松弛为可中断,利用松弛问题的最优解设计原问题的最优解下界算法,具体步骤如下。
步骤6.1:批处理容量b=1,若
步骤6.2:将集合
步骤6.3:若k≤2m,将集合
步骤6.4:若k≥2m,将集合
步骤6.5:将最大完工时间、批处理容量代入成本函数,计算成本函数值,令b=b+1返回步骤6.1;
步骤6.6:输出批处理容量和最小成本函数值。
针对问题pm|p-batch,b<n|cmax+βmb,下界算法的完工时间lb可表示如下
其中
步骤7:合理性分析。
为了衡量启发式算法rph性能,对于任意一个实例i,采用启发式算法rph所求得的解用rph(i)表示,最优解用opt(i)表示,最优解的下界用lb(i)表示。定义启发式算法rph的相对偏差dev(rph)大小为
对于任意一个实例i,lb(i)≤opt(i)均成立,因此启发式算法rph所得的解与最优解的偏差不超过dev(rph),即
每幅图包含(a)、(b)、(c)、(d)四幅子图,分别表示批量β=0.5,1,1.5,2时的偏差变化情况。每幅子图中横坐标表示工件数,从100到1000,纵坐标表示启发式算法与最优解下界偏差dev(rph)。每幅图包含了取不同批容量增量时偏差的大小。每个数据点是100个算例偏差的平均值。偏差越小,表明启发式算法性能越好。
算例实验参数如表2所示,根据工件数量、批处理容量成本系数,设计10×4=40组算例,对于每组算例,随机产生100个算例,因此总共有4000个算例。
表2实验参数
仿真实验结果如图1所示。
实例说明:
下面结合具体实例描述本发明:
工件信息如下,
1)根据已知条件,可得
2)根据批处理容量成本系数,可得
3)当b≥b1时,f1(b)为单调增函数,最小值为minf1(b),b∈{b1,b3,b4};当b<b1时,f2(b)为单调减函数,最小值为f2(b2)。
4)所以
此实例中批处理机最佳经济效益的批处理容量为4,为批处理机老线改造和新线能力规划等决策提供理论依据。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。