2. 湖北汽车工业学院 机械工程学院,湖北 十堰 442002
2. College of Mechanical Engineering, Hubei University of Automotive Technology, Shiyan 442002, China
混流装配线是一种可以在一条产线上按一定的装配顺序装配不同产品柔性装配方式,混流装配线可以很好地协调利用装配线的布局、设备、人员、分装线和厂内物流以提高装配线的平衡率和降低装配节拍[1-2]。装配线上执行装配作业的操作工人是影响装配线平衡和节拍的重要因素:不同的操作工人存在体力、脑力和技能等方面的个体差异,每个操作工人在不同装配工位上的装配效率也存在差异,因而同一名工人在不同工位的效率存在差异,并且有一个特别擅长的工位效率相对较高。装配工艺中不同工位的工作内容不同,相邻近工位之间工人的工作完成时间存在差异,考虑工人的差异因素和相邻近工位工人的流动分配,可以在满足工人体力、脑力和技能负荷的情况下,有效地提高混流装配线的平衡率和降低装配线节拍。在考虑工人差异因素和流动分配的装配线平衡优化时,需要考虑工人在不同工位的效率和装配线均衡,分配工人尽可能多的在其最擅长的工位工作,才能确保均衡之后的混流装配线的整体优化效果。
在装配线工人优化建模和方法方面国内外大量的专家学者针对装配线的各种情况,应用不同的方法做了研究。Battaïa等[3]采用启发式算法,考虑在所有工人和工位完全相同的情况下,在发动机装配线上将瓶颈工位的工人移动至相邻工位,从而减少因混流生产中瓶颈工序时间过长带来的扰动。Oksuz等[4]研究了工人效率不均等、不同工位存在差异的情况,建立了不同工人在不同工位的贡献度模型,进而求和计算出总贡献,再使用蜂群算法对工人分布进行调整,寻找最优解。Akpinar等[5]采用了以迭代式蚁群算法为基础的解决方案解决混合装配线平衡问题,其目标可以转换为求最小节拍循环时间,即现有工作站和工人数量有限时如何最大化生产速率。刘绘珍等[6]考虑工人差异性的混合生产线工人分配优化模型,主要研究了工人和工位存在差异的混合生产模式存在差异的情况下如何对工人进行合理分配,分配后忽略工人在不同工位之间调动,从而使混合装配线效率最高。常建娥等[7]提出基于装配相似性与灰色理论GM(0, N)模型的装配工时预测方法,通过计算样本与基准零件的装配相似系数,结合装配工时在Matlab中构建拟合曲线,从系数上寻找更契合的工人。在工人优化方面,需要考虑工人在混流装配线上的效率最大化,细分节拍时间,调整工人的调度方案,平衡装配工位效率。何善平等[8]介绍了Thomopoulos平衡搜寻法步骤,在此基础上提出了对单一型发动机装配线平衡较实用的搜寻方法,阐述了如何对装配线平衡。刘芹等[9]提出Pareto遗传算法,并提出了向量评估多目标遗传算法和多目标优化遗传算法,给出了多目标优化算法的性能评价指标,为制定适应度评估函数奠定了基础。张宏林等[10]建立了合适的编码方式,按照不违背作业优先关系约束和工位时间不超过节拍的原则,把可调整工人集合中作业元素分配到各工位上,仅对工作任务顺序进行分配,不对工人进行分配,而且该装配线只装配一种型号产品,混流线需要再进一步调整。求解方法方面,Delice等[11]提出了一种新的具有无预期性的改进粒子群优化算法,用来解决两条分支混合装配线的平衡问题,从而减少工件的移动,提高混合装配线效率。Li[12]等为解决双边装配线平衡问题,采用改进型的模拟退火算法,制定了5个评估函数和多种不同的编码方式。Bukchin等[13]通过对工人安排方案进行编码,遗传变异寻求最小化工人空闲时间,以提高生产线的效率。Kucukkoc等[14]提出了一种基于混合模型的并行装配线系统,建立了多行交叉工位的混合装配线模型,对工人分配进行编码再采用蚁群算法求解,最终证明了并行的混合装配线比单线的装配线劳动力需求更少。在工人优化问题的优化目标方面,许多工厂考虑以牺牲部分生产效率为代价使装配产品多样化,同时减少工人数量,也有针对特定工位调整工人。Sungur等[15]考虑到混合装配线的分层工人装配问题,高级工人的使用成本高于低级工人,因此在相同条件下低级工人的选择权重更高,而高难度的任务则会安排高级工人来完成。Li等[16]为了解决双面混合装配线的平衡问题,采用了多种启发式算法综合比较,证明了改进的迭代贪婪算法具有的有效性。Akpinar等[17]给不同的工位指定不同的生产任务,在一个节拍时间内,如果完成了任务则可以去其他工位工作,通过对节拍时间的自然分解来安排工人时间分配,然后检测是否能按时完成。本文借鉴了文献[6]中提出的新产品工时预测估算出
本文考虑工人在不同工位的效率差异、同一个工位工人完成不同产品也存在差异和相近工位工人的流动分配,分析混流装配线工人分配优化问题。在确定混流装配线的排序后,装配工人在其最擅长的工位工作,在完成本工位的工作后参与其他工位的装配工作,建立考虑工人工位效率差异且可流动分配的混流装配线工人优化数学模型。采用削峰填谷算法和多种群移民算法进行工人的调整和均衡优化,利用一个三层神经网络对削峰填谷的工位进行评估选择得到工人的最优分配方案。
在对工人进行优化时,为了更快的收敛同时减少计算量,采用了削峰和填谷两种方式来寻优。由于不同工人和工位之间的差异,即使所有工位同时完成任务,也不一定是最优解,还必须确保大部分工人有足够时间在其最擅长的工位工作。因此本文使用较为合理的评估函数,估算理论最优值的大小,找出收敛效果较好的解,确保收敛完成后(所有工位几乎同时完成任务时)整体用时尽可能短。在选择削峰和填谷时,使用评估函数确定大致估算出哪个工人更适合调动,哪个工位更适合作为调整对象。这样既可以提高收敛速度又能确保更加合理的收敛,即每个工人都有尽可能多的时间安排在其擅长的工位。
1 模型建立本文相关的参数定义如下:
$\quad\quad{{E}} = \left[ {\begin{array}{*{20}{c}} {e_{11}}& \cdots &{e_{1i}}&{\cdots }&{e_{1W}}\\ \vdots & \ddots &{ \vdots }&{\ddots}& \vdots \\ {e_{1j}}& \cdots &{e_{ji}}& \cdots &{e_{jW}}\\ \vdots & {\ddots} &{ \vdots }& \ddots & \vdots \\ {e_{1S}}& \cdots &{e_{Si}}&{\cdots }&{e_{SW}} \end{array}} \right]{\text{。}}$ |
$\quad\quad{{M}} = \left[ {\begin{array}{*{20}{c}} {{m_{11}}}& \cdots &{{m_{k1}}}& \cdots &{{m_{K1}}} \\ \vdots & \ddots &{ \vdots }&{\ddots }& \vdots \\ {{m_{1j}}}& \cdots &{{m_{kj}}}& \cdots &{{m_{Kj}}} \\ \vdots &{\ddots}&{ \vdots }& \ddots & \vdots \\ {{m_{1s}}}& \cdots &{{m_{ks}}}&{\cdots }&{{m_{KS}}} \end{array}} \right] {\text{,}} $ |
$\begin{split}&\qquad{{{E}}_k} = {{E}} \times \left[ {\begin{array}{*{20}{c}} {1/{m_{k1}}}& \cdots &0&0&0 \\ \vdots & \ddots &{0}&0&0 \\ 0&{0}&{1/{m_{kj}}}&{0}&0 \\ 0&0&{0}& \ddots & \vdots \\ 0&0&0& \cdots &{1/{m_{kS}}} \end{array}} \right] = \\ &\left[ {\begin{array}{*{20}{c}} {{e_{11k}}}& \cdots &{{e_{1ik}}}& \cdots &{{e_{1Wk}}} \\ \vdots & \ddots &{\vdots }&{\ddots}& \vdots \\ {{e_{1jk}}}& \cdots &{{e_{jik}}}& \cdots &{{e_{jWk}}} \\ \vdots &{ \ddots}&{\vdots }& \ddots & \vdots \\ {{e_{1Sk}}}& \cdots &{{e_{Sik}}}& \cdots &{{e_{SWk}}} \end{array}} \right]{\text{。}}\end{split}$ |
例如,型号1的发动机的缸盖上有12颗螺丝,型号2发动机缸盖有16颗螺丝,那么型号2发动机上螺丝的工序消耗时间就会比型号1发动机多出33%;如果型号1发动机有4个气缸,型号2发动机气缸数量为6个,那么在装配活塞时,型号2消耗的时间就会比1型号多50%。因此在装缸盖螺丝时,型号2发动机可以折算成1.33台型号1发动机;在装配活塞工序时,可以折合算1.5台型号1发动机来计算。
$\quad\quad{{{T}}_k} = \left[ {\begin{array}{*{20}{c}} {t_{11k}}& \cdots &{t_{1ik}}&{\cdots }&{t_{1wk}} \\ \vdots & \ddots &{\vdots }&{ }& \vdots \\ {t_{j1k}}& \cdots &{t_{jik}}& \cdots &{t_{jwk}} \\ \vdots & &{\vdots }& \ddots & \vdots \\ {t_{S1k}}& \cdots &{t_{Sik}}&{\cdots }&{t_{Swk}} \end{array}} \right]{\text{。}}$ |
装配线为混流线,在一个循环周期内
$\qquad\left\{ \begin{array}{l} \;\;{\rm{min}}W\\ \;\;{\rm{s.t.}}\\ \begin{array}{*{20}{c}} {{e_i}_{jk}} \end{array} {\text{≥}} 0; \\ \begin{array}{*{20}{c}} 0 \end{array} {\text{≤}} {t_{ijk}} {\text{≤}} 1; \\ \begin{array}{*{20}{c}} {\displaystyle\sum\limits_{j - i}^{j - s} {{t_{ijk}} = 1, \forall i \in \left[ {1, W} \right]} } \end{array}, \forall k \in \left[ {1, K} \right]; \\ \begin{array}{*{20}{c}} {{t_{ijk}}} \end{array} = 0, {\rm{如果}}{e_{ijk}} = 0; \\ \begin{array}{*{20}{c}} {{{{Q}}_k} {\text{≥}} 1, \forall k \in \left[ {1, K} \right]} \end{array}{\text{。}} \end{array} \right.$ | (1) |
为了检验调走一名工人后,是否依然能满足要求,需要再次对每个工位的任务进行均衡,然后再次计算
1) 工人工作效率不受情绪、体力、环境因素影响;
2) 每种型号产品节拍时间为固定值;
3) 每过一个节拍时间,所有产品往后移动一个工位,没有暂停时间;
4) 任务完成后可以去另一个工位工作,不考虑移动时间和工人休息时间;
5) 每个相同型号的产品在相同工位的加工时间完全相同;
6) 工人的贡献度随着时间和工人数量线性增长,不考虑工人之间的配合问题;
7) 工人在在不擅长的工位工作效率为0。
2 模型分析求解为了确保每个工位尽可能同时完成任务且这个时间尽可能短,需要依次对每个时间分配矩阵
在进行削峰填谷调整时,需要挑选削峰填谷工人
调整工人时,必须优先考虑瓶颈工位的效率。为了找出瓶颈工位,本文设定2个衡量标准:1) 工位瓶颈系数
挑选调整工人时应该优先选择在瓶颈工位工作效率较高的工人,或者在其最擅长的工位效率和瓶颈工位工作效率差距较小的工人,或者擅长在多个工位工作的工人,应当优先被选择。工位的调整系数分为3个级别:1) 优先解决瓶颈系数高的工位;2) 优先从效率较高的工位调来工人进行填谷;3) 优先选择效率差距较小的工位。本文采用图1所示的三层神经网络确定工人综合调整系数(工人被选中作为调整工人的概率),再采用轮盘赌法进行选择。
工人调整网络输入层:瓶颈工位对该工人的需求程度、该工人在不同工位的效率差异大小、该工人所胜任的工位数量、工人在不同工位的效率偏差百分比以及工人当前效率的饱和程度;工人调整网络隐藏层用于计算工人的稀缺程度、估算效率饱和程度、估算效率潜力、在瓶颈工位的贡献程度、在瓶颈工位的极限贡献值等。图2为选择工位的评判网络,优先选择工作效率差距较小的工位,削峰调整时尽量选择效率较高,工人工作效率相对较高的工位,填谷调整时尽量选择工人工作效率较低,瓶颈系数较低的工位。
在效率最高的工位选择调整工人时,必须满足这名工人原本在最高工位工作时间大于0;在选择这名工人前往的削峰工位时,必须满足这名工人在那里的工作效率大于0。在效率最低工位选择调整工人时,必须找出一名在最低工位工作效率大于0的工人,且在最低工位工作时间小于1个节拍时间。在选择填谷工位来支援效率最小工位时,必须确保工人在效率最小的工位那里的工作效率大于0。
定义
$ \begin{aligned} \quad\quad&{P_{\rm{c}}} = E({j_{\max}}, {i_{\rm{c}}})/E({j_{\rm{c}}}, {i_{\rm{c}}}) {\text{,}}\\ &{P_{\rm{f}}} = E({j_{\rm{f}}}, {i_{\rm{f}}})/E({j_{\min}}, {i_{\rm{f}}}){\text{。}} \end{aligned} $ | (2) |
当任务量固定时,每个工人安排在其最擅长的工位工作,那么总效率一定是最高的,然而这样就会导致一些工位因缺乏工人而形成短板。在实际装配中工人在不同工位的效率往往有差异,而且一个工人往往只能适应少数几个工位的工作且效率有一定差距。因此无法直接将效率最高的工位的工人随便调整到效率最低的工位工作。这个时候就必须采用“中间调整工位”进行调整,确保每个工位尽可能同时完成任务。
图3为在削峰填谷时调整工位快慢的收敛曲线图。在调整过快时,调整幅度超过一定值,最高工位被削减得过多,就会变成最小工位,甚至比原来最小工位效率还要低。而最低工位填得过多时,也可能变成效率最高工位,而且比原来的最高工位还要高,导致调整发散。为了确保工人调整的效率,需要将每次削峰和填谷调整的时间控制在一定范围内,逐步调整达到图3中浅色线逐渐收敛。
从效率最高的工位
$\quad\quad{P_{\rm{c}}} = E\left( {{j_{\max}}, {i_{\rm{c}}}} \right)/E\left( {{j_{\rm{c}}}, {i_{\rm{c}}}} \right){\text{。}}$ | (3) |
填谷工人
$\quad\quad{P_{\rm{f}}} = E\left( {{j_{\rm{f}}}, {i_{\rm{f}}}} \right)/E\left( {{j_{\min}}, {i_{\rm{f}}}} \right){\text{。}}$ | (4) |
由于初始值设定所有工人全部时间都从事效率最高的工作,因此假设
为了保证削峰填谷的收敛性,设定效率最高工位选择的工人的调整时间L为
$\quad\quad L = T ({Q_{{\rm{max}}}} - {Q_{{\rm{avr}}}})/(2 {E_{\max }}){\text{。}} $ | (5) |
其中,
$\quad\quad{E_x} = E({j_{\rm{c}}}, {i_{\max }}) ({Q_{\max }} - {Q_{{\rm{avr}}}})/(2 {E_{\max }}){\text{。}} $ | (6) |
其中,
随着调整不断进行,求解易陷入局部最优解。因此可以建立5个种群,1个精英种群和4个平民种群,每个种群包含4条染色体。无性繁殖3次变成16条染色体,然后筛选出4条染色体,其余全部淘汰。
平民种群和精英种群的区别在于,采取更加激进的调整方案,优点是更快的收敛,更大可能跳出局部极小解,缺点是在计算最终极限时更难收敛,或者在局部极小解附近徘徊。精英种群中的个体则采用相对保守的繁殖调整方案,每一轮繁殖过后采用移民算法:如果平民种群中的一条染色体评估函数比精英种群中的最差染色体适应度更高,则替换掉该染色体,可以更加精确地收敛于局部极小解。当调整次数达到30代后停止调整,输出精英种群中的最优解。其中,平民种群的评估函数和寻找调整工人方案与精英种群完全相同,但每次调整幅度更大,收敛速度会更快,也更容易跳出局部最优解,但出现不良个体的几率也更大。由于采用了不同的筛选机制,精英种群每次总是保存4个最优染色体。
每一轮“无性繁殖”与“优胜劣汰”后,从平民种群中挑选出一个最优的个体,如果超过了精英种群中的末位,则该个体将被移民到精英种群中替换掉末位个体,再开始新一轮繁衍与淘汰,直到达到预期繁殖代数,详细优化步骤如图4所示。理论最优解的必定符合的特征:1) 所有工位都能同时完成任务,最小工位的完成时间就是最大值;2) 大部分工人都有一段时间在其最擅长的工位工作,以至于任意两名工人调换工作位置,都会导致效率下降;3) 没有任何继续优化的潜力可以挖掘。
因此,方案的优劣的评价不仅考虑最小工位的相对效率以外还应该看方差、最大工位值、平均值等才能估算出染色体的相对潜力。染色体适应度评估函数
$\quad\quad F = {a_1} {Q_{\min }} + {a_2} {Q_{\max }} + {a_3} {Q_{{\rm{mean}}}} + {a_4} {Q_{\rm{var} }}{\text{。}} $ | (7) |
其中,
某发动机装配线是一条手动装配的混流装配线,装配V12、V16、V20这3种类型的发动机装配复杂程度不相同,V20花费的时间最多,其次是V16,V12花费的时间最少。3种类型的12个产品为一个周期,顺序进入装配线再进行循环往复,一个循环周期内的排序如图5所示。装配线由6个工位和21名工人组成,如何在保证节拍要求的条件下确定最优的工人调配方案是需要解决的实际问题。
一个循环周期内包含生产任务总数量
由实际测量值计算可得21个工人在6个工位的工作效率矩阵
${{ E}_{21}}=\left[ \begin{array}{*{35}{l}} 0.5 \!\!\!&\!\!\! \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.3 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.2 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0.3 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.1 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0.15 \\ 0 \!\!\!&\!\!\! 0.55 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0.3 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.1 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.35 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0.2 \\ 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.5 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.2 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.28 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.22 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \\ 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.45 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0.18 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0.28 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.28 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.28 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.27 \!\!\!&\!\!\! 0 \\ 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.5 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.2 \!\!\!&\!\!\! 0.2 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.25 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0 \\ 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.55 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.35 \!\!\!&\!\!\! 0.2 \!\!\!&\!\!\! 0.15 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.35 \!\!\!&\!\!\! 0.35 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.28 \!\!\!&\!\!\! 0 \!\!\!&\!\!\! 0.12 \\ \end{array} \right] {\text{,}}$ |
$ \quad\quad{{{E}}_{15}} = \left[ {\begin{array}{*{20}{l}} {0.3}&0&0&{0.2}&{0.25}&{0.3}&0&{0.1}&0&0&{0.15}&0&0&{0.15}&{0.15} \\ {0.15}&{0.3}&0&0&{0.1}&0&{0.35}&0&0&{0.25}&0&{0.25}&0&{0.15}&{0.2} \\ {0.2}&0&{0.25}&0&0&0&0&{0.15}&0&0&{0.28}&0&{0.22}&0&{0.15} \\ 0&{0.25}&0&{0.25}&{0.18}&{0.15}&{0.28}&0&{0.28}&0&0&{0.28}&0&{0.27}&0 \\ 0&0&{0.2}&{0.2}&0&{0.25}&0&0&0&{0.25}&{0.15}&0&0&{0.15}&0 \\ 0&0&{0.35}&{0.2}&{0.15}&0&0&{0.35}&{0.35}&0&0&0&{0.28}&0&{0.12} \end{array}} \right]{\text{。}} $ |
当k=1到k=12时,不同工位的生产难度系数变化矩阵为
$\quad\quad\quad\quad\quad\quad\quad\quad{{M}}_k = \left[ {\begin{array}{*{20}{l}} {1.1}&1&1&1&1&1&1&1&1&1&1&1 \\ 1&{1.3}&1&1&1&{1.2}&1&{1.2}&1&{1.2}&1&1 \\ 1&1&{1.4}&1&1&1&{1.2}&1&{1.2}&1&{1.2}&1 \\ 1&1&1&{1.2}&1&1&1&1&1&1&1&1 \\ {1.2}&1&1&1&{1.5}&1&1&1&{1.2}&1&{1.2}&1 \\ 1&{1.1}&1&1&1&{1.2}&1&1&1&{1.1}&1&{1.1} \end{array}} \right]{\text{。}}$ |
考虑到3和4两个工位效率较高,而且整体工人贡献度偏高,通过优化裁掉15号和21号工人。裁员之后,再次对进行削峰填谷均衡计算,裁员之后的时间分配矩阵和工位完成度百分比
$\quad\quad\quad\quad {{{T}}_1} = \left[ {\begin{array}{*{20}{r}} {0.80}&{0.00}&{0.00}&{0.00}&{1.00}&{0.00}&{0.00}&{0.41}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00} \\ {0.00}&{0.89}&{0.00}&{0.00}&{0.00}&{0.00}&{0.51}&{0.00}&{0.18}&{0.00}&{0.00}&{0.00}&{0.00} \\ {0.20}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.59}&{0.00}&{1.00}&{0.00}&{0.22}&{0.00} \\ {0.00}&{0.11}&{0.00}&{0.52}&{0.00}&{0.00}&{0.49}&{0.00}&{0.00}&{0.00}&{1.00}&{0.00}&{0.15} \\ {0.00}&{0.00}&{0.56}&{0.48}&{0.00}&{1.00}&{0.00}&{0.00}&{0.82}&{0.00}&{0.00}&{0.00}&{0.85} \\ {0.00}&{0.00}&{0.44}&{0.01}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.78}&{0.00} \end{array}} \right]; $ |
$\quad\quad\quad\quad {{{T}}_{12}} = \left[ {\begin{array}{*{20}{r}} {0.75}&{0.00}&{0.00}&{0.00}&{0.80}&{0.49}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}\\ {0.00}&{0.74}&{0.00}&{0.00}&{0.00}&{0.00}&{0.64}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}\\ {0.25}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.26}&{0.00}&{1.00}&{0.00}&{0.70}&{0.00}\\ {0.00}&{0.26}&{0.00}&{0.50}&{0.00}&{0.12}&{0.36}&{0.00}&{0.33}&{0.00}&{1.00}&{0.00}&{0.42}\\ {0.00}&{0.00}&{0.50}&{0.50}&{0.00}&{0.38}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.00}&{0.58}\\ {0.00}&{0.00}&{0.50}&{0.00}&{0.20}&{0.00}&{0.00}&{0.74}&{0.67}&{0.00}&{0.00}&{0.30}&{0.00} \end{array}} \right]{\text{。}} $ |
为了得到更好的收敛结果,需要在调整初期就选对优化调整方向,将重要的几名工人都分配到其擅长的工位或者瓶颈工位,需要多次运算收敛才能训练出一个合理的工人分配权重和各工位的瓶颈系数权重,以便在调整初期就将工人尽可能合理地分配。中期可以舍弃调整潜力较小,转化效率低的染色体,从而跳出局部最优解。通过算例的分析,可以看出,通过工人在不同工位的调整,在保证节拍时间的前提下减少工人的工作量,并且可以提高装配线的平衡率。通过图6所示的算例收敛曲线图可以看出,优化算法可以快速地收敛,新的调配方案下,染色体适应度总评估函数曲线⑤逐渐趋于稳定,最小工位完成度百分比
本文分析了混流装配线上不同工位存在效率差异,工人如何进行精确的分配与动态调度的优化问题,建立了考虑工人工位效率差异且可流动分配的混流装配线工人优化数学模型,引入混流装配线,考虑周期性分布、工位效率、流动因数等更加全面的评估方法。本文提供的方法对实际工厂混流装配线适应性、针对性强,分析的各种评估因素的影响,在保证节拍时间要求的条件下,给出了一套相对优化的工人调配方案。
在下一步研究中,考虑工人在不同工位的移动时间、在不同工位的配合效率问题,工人操作方面具体到装配工人动素。在工人和机器人协调完成装配工作时装配工人的优化问题也是拓展研究的方向[18-19]。
[1] |
杨世君, 赵玲, 齐二石. 基于GT-NSGA2的混流装配线设施规划与布局应用研究[J].
工业工程与管理, 2018, 23(01): 64-70.
YANG Shijun, ZHAO Ling, QI Ershi. A research for the facility layout problem of mixed model assenbly line based on GT-NSGA2[J]. Industrial Engineering and Management, 2018, 23(01): 64-70. |
[2] |
江新利, 苏平, 戚留举. 冷柜门体混流装配线排序问题研究[J].
工业工程, 2017, 20(03): 53-59.
JIANG Xinli, SU Ping, QIN Liujun. A study of mixed-model assembly line sequencing problem of freezer door[J]. Industrial Engineering Journal, 2017, 20(03): 53-59. DOI: 10.3969/j.issn.1007-7375.e16-1121. |
[3] |
BATTAÏA O, DELORME X, DOLGUI A, et al. Workforce minimization for a mixed-model assembly line in the automotive industry[J].
International Journal of Production Economics, 2015, 170: 489-500.
DOI: 10.1016/j.ijpe.2015.05.038. |
[4] |
OKSUZ M K, BUYUKOZKAN K, SATOGLU S I. U-shaped assembly line worker assignment and balancing problem: a mathematical model and two meta-heuristics[J].
Computers & Industrial Engineering, 2017, 112: 246-263.
|
[5] |
AKPINAR S, BAYHAN G M. Performance evaluation of ant colony optimization-based solution strategies on the mixed-model assembly line balancing problem[J].
Engineering Optimization, 2014, 46(6): 842-862.
DOI: 10.1080/0305215X.2013.806915. |
[6] |
刘绘珍, 张毕西, 张湘伟. 考虑工人差异性的混合生产线工人分配优化模型[J].
科技管理研究, 2012, 32(09): 210-213.
LIU Huizhen, ZHANG Bixi, ZHANG Xiangwei. Optimization model of worker operation assignment in production line[J]. Science and Technology Management Research, 2012, 32(09): 210-213. DOI: 10.3969/j.issn.1000-7695.2012.09.050. |
[7] |
常建娥, 李帅, 莫易敏, 等. 基于装配相似性与灰色模型的汽车装配工时预测[J].
工业工程, 2018, 21(03): 87-92.
CHANG Jian′e, LI Shuai, MO Yimin, et al.. Man-hour prediction method for automobile assembly based on assembly similarity and Grey Mode[J]. Industrial Engineering Journal, 2018, 21(03): 87-92. DOI: 10.3969/j.issn.1007-7375.2018.03.011. |
[8] |
何善平, 奚立峰. 发动机装配线平衡方法研究[J].
工业工程, 2005, 8(3): 83-88.
HE Shanping, XI Lifeng. Method for engine assembly line balancing[J]. Industrial Engineering Journal, 2005, 8(3): 83-88. DOI: 10.3969/j.issn.1007-7375.2005.03.019. |
[9] |
刘芹. 基于智能优化算法的汽车发动机混流装配线排序问题研究[D]. 燕山大学, 2014.
LIU Qin. The car-motor mixed model assembly line sequencing research based on intelligent optimization algorithms[D]. Yanshan university, 2014. |
[10] |
张宏林, 殷复鹏, 吴爱华. 双边多工位装配线平衡问题[J].
计算机集成制造系统, 2013, 19(2): 421-428.
ZHANG Honglin, YIN Fupeng, WU Aihua. Heuristic algorithm of two sided with multi-parallel stations as assembly line balancing[J]. Computer Integrated Manufacturing Systems, 2013, 19(2): 421-428. |
[11] |
DELICE Y, AYDOĞAN E K, ÖZCAN U, et al. A modified particle swarm optimization algorithm to mixed-model two-sided assembly line balancing[J].
Journal of Intelligent Manufacturing, 2017, 28(1): 23-36.
DOI: 10.1007/s10845-014-0959-7. |
[12] |
LI Z, TANG Q, ZHANG L P. Two-sided assembly line balancing problem of type I: Improvements, a simple algorithm and a comprehensive study[J].
Computers & Operations Research, 2017, 79: 78-93.
|
[13] |
BUKCHIN Y, RAVIV T. Constraint programming for solving various assembly line balancing problems[J].
Omega, 2018, 78: 57-68.
DOI: 10.1016/j.omega.2017.06.008. |
[14] |
KUCUKKOC I, ZHANG D Z. Mixed-model parallel two-sided assembly line balancing problem: A flexible agent-based ant colony optimization approach[J].
Computers & Industrial Engineering, 2016, 97: 58-72.
|
[15] |
SUNGUR B, YAVUZ Y. Assembly line balancing with hierarchical worker assignment[J].
Journal of Manufacturing Systems, 2015, 37: 290-298.
DOI: 10.1016/j.jmsy.2014.08.004. |
[16] |
LI Z, KUCUKKOC I, NILAKANTAN J M. Comprehensive review and evaluation of heuristics and meta-heuristics for two-sided assembly line balancing problem[J].
Computers & Operations Research, 2017, 84: 146-161.
|
[17] |
AKPINAR S, ELMI A, BEKTAŞ T. Combinatorial benders cuts for assembly line balancing problems with setups[J].
European Journal of Operational Research, 2017, 259(2): 527-537.
DOI: 10.1016/j.ejor.2016.11.001. |
[18] | |
[19] |
PEREIRA J, ÁLVAREZ-MIRANDA E. An exact approach for the robust assembly line balancing problem[J].
Omega, 2018, 78: 85-98.
DOI: 10.1016/j.omega.2017.08.020. |