一种人机协作生产任务的规划方法
文献发布时间:2023-06-19 11:08:20
技术领域
本发明涉及人与机器人的协作技术领域,具体涉及一种人机协作生产任务的规划方法。
背景技术
机器人技术在信息技术驱动下,将在智能制造、柔性制造中扮演的重要作用。装配生产作为制造过程重要的组成,工作量占比达到20~70%,时间占比达到40~60%,成本占比达到30~60%。装配的效率、成本与质量直接关系到整个产品的整体生产周期、成本与质量。传统装配通常由人工完成,效率差,可靠性低,在装配中引入机器人对提高制造业的自动化水平更加。
鉴于机器人尚不具备完成复杂生产任务的能力,工人和机器人组成混合系统共享工作空间、共同完成生产任务的人机协作系统是将会是一种重要的生产模式。其中,工人承担精细、复杂的工作任务,更多精力用于监督、决策及异常处理;而机器人则承担重复度高、强度大的工作任务。
人作为混合系统中的重要一环,一方面提高了系统应对复杂任务的能力,异常情况的应变能力;另一方面也是系统长时间稳定运行的短板。工人无法长时间持续工作,必须安排足够的休息时间,才能保证工人的身心健康,限制了系统长时间高效、可靠运行的能力。因此,人机协作虽然拥有较强的能力,也为在人与机器人的任务规划带来挑战。任务规划中,必须充分考虑工人的疲劳,为工人提供适当的休息恢复时间,保证协作生产正常有序开展。
发明内容
为了解决上述问题,本发明针对人与机器人协作的混合生产单元的任务规划,提供一种在生产过程中为工人提供短暂休息的人机协作生产任务的规划方法,并通过化学反应优化方法求解面向生产周期最短以及工人疲劳最小的多目标优化,在工人的疲劳程度与生产周期之前求得最优平衡方案。具体技术方案如下:
一种人机协作生产任务的规划方法,包括以下步骤:
S1:根据人机协作工作单元的属性,建立针对人机协作工作单元的生产任务规划模型P(h,r),具体如下:
P(h,r)=[A,h,r,T],T=[T
其中,h为人机协作工作单元中工人的数量,r为人机协作工作单元中机器人的数量,A为人机协作需要完成的生产任务,T为完成单个生产任务A的全部工时,T
该生产任务规划模型设置两个适应度函数,分别为Fit
S2:将生产任务A分解为n个任务序列,即:
A={S
任务序列需要按照顺序执行,只有前一个任务序列完成后,才能开始下一个任务序列;
第i个任务序列S
m
S3:工人H
式中,
机器人R
式中,
完成第i个任务序列S
S4:适应度函数Fit
其中,
适应度函数Fit
假设工人H
式中,
假设每个生产周期中,工人H
式中,
工人H
式中,μ为工人的恢复系数;
工人H
式中,T
设每个班次完成的生产周期总数为N,由下式表示:
式中,W为每个班次的时长;
S5:采用化学反应算法求解两个适应度函数Fit
优选地,所述化学反应优化算法包括以下步骤:
S51:设定化学反应算法的参数,即设定初始的动能损失率L
S52::初始化化学反应算法的种群,包括:
初始化种群Pop,对每个分子进行编码,编码包括两部分:子任务编码M和休息时间编码R,二者均为二进制编码;
计算种群中每个分子对应的适应度函数Fit
计算种群中每个分子对应的适应度函数Fit
计算种群中每个分子对应的势能;
S53:判断进行多分子反应还是单分子反应;任取一个随机数,若随机数大于碰撞概率coll或者种群规模小于
S54:判断进入单分子无效碰撞反应还是单分子分解反应;若分子的碰撞次数大于分解阈值α,则进行单分子分解反应,进入步骤S55;否则,进行单分子无效碰撞反应,进入步骤S56;
S55:进行单分子分解反应,进入步骤S510更新状态;
S56:进行单分子无效碰撞反应,进入步骤S510更新状态;
S57:判断进入多分子的分子间碰撞反应还是多分子的分子合成反应;若两个分子的动能均大于合成阈值β,则进入多分子的分子合成反应,进入步骤S58;否则进入多分子的分子间碰撞反应,进入步骤S59;
S58:进行多分子的分子合成反应,进入步骤S510更新状态;
S59:进行多分子的分子间碰撞反应,进入步骤S510更新状态;
S510:更新状态,包括更新最佳分子,迭代次数加1;
S511:判断是否完成迭代,若迭代次数小于I,则进入步骤S53继续迭代;否则,退出迭代,输出最佳分子;根据最佳分子的子任务编码M和休息时间编码R得到最优的生产任务规划方案。
优选地,所述步骤S55中进行单分子分解反应的步骤包括:
S551:随机生成新的任务编码M'和休息时间编码R';
S552:由原分子的子任务编码M和休息时间编码R与前述新生成的M'和R'组成新的分子,分子1为M与R'的组合,分子2为M'与R的组合;
S553:计算新分子对应的适应度函数Fit
S554:计算新分子对应的适应度函数Fit
S555:计算新分子的势能PE;
S556:更新新分子的动能KE;
S557:两个新分子的碰撞次数设为0;
S558:原分子从种群中删除;
S559:将前述两个新的分子加入种群。
优选地,所述步骤S56中进行单分子无效碰撞反应的步骤包括:
S561:随机选择对任务编码还是休息时间编码进行无效碰撞反应;
S562:计算新分子对应的适应度函数Fit
S563:计算新分子对应的适应度函数Fit
S564:计算新分子的势能PE;
S565:原分子的碰撞次数增加1;
S566:计算新分子的动能KE;
S567:更新缓冲区能量E
S568:原分子从种群中删除;
S569:将前述两个新的分子加入种群。
优选地,所述步骤S58中进行多分子的分子合成反应的步骤包括:
S581:随机从以下两种方式中选择合成方式:设步骤S57中的两个分子分别为分子1和分子2;所述分子1的任务编码M
S582:计算新分子对应的适应度函数Fit
S583:计算新分子对应的适应度函数Fit
S584:计算新分子的势能PE;
S585:计算新分子的动能KE;
S586:设定新分子的碰撞次数;
S587:将新分子加入种群;
S588:将前述两个父分子从种群移除。
优选地,所述步骤S59中进行多分子的分子间碰撞反应的步骤包括:
S591:交换步骤S57所述两个分子的任务编码列;
S592:交换步骤S57所述两个分子的休息时间编码列;
S593:两个分子的碰撞数均增加1;
S594:计算新分子对应的适应度函数Fit
S595:计算新分子对应的适应度函数Fit
S596:计算新分子的势能PE;
S597:计算新分子的动能KE;
S598:将两个新分子加入种群;
S599:将前述两个父分子从种群移除。
优选地,所述分子的势能PE由适应度函数Fit
f
优选地,所述步骤S55进行单分子分解反应中新分子的动能KE具体计算如下:
由下式求出临时变量tmp
tmp
式中,PE为分解前分子的势能,KE为分解前分子的动能,PE
如果tmp
从0到1取随机数赋值给q;
如果tmp
KE
新分子2的动能KE
KE
如果tmp
KE
KE
优选地,所述步骤S56进行单分子无效碰撞反应中新分子的动能KE具体计算为:
由下式求出临时变量tmp
tmp
式中,PE为碰撞前分子的势能,KE为碰撞前分子的动能,PE'为碰撞后分子的势能;
若tmp
若tmp
从L
新的分子的动能KE为tmp
缓冲区能量E
优选地,所述步骤S58进行多分子的分子合成反应中新分子的动能KE具体计算为:
由下式求出临时变量tmp
tmp
式中,PE
若tmp
优选地,所述步骤S59进行多分子的分子间碰撞反应中新分子的动能KE具体计算为:由下式求出临时变量tmp
tmp
式中,PE
若tmp
若tmp
从0到1取随机数赋值给q,
新分子1的动能为tmp
新分子2的动能赋值tmp
本发明的有益效果为:
1.本发明提供的任务规划方法集成工人短暂休息时间,使得在生产过程中,工人都能得到短暂休息,降低工人疲劳,最大程度保证生产线的效率。
2.传统模型不包含短暂休息时间,仅在工人的疲劳在下个生产周期将会超出疲劳约束时,为工人提供休息时间。经过对比,本发明提供的方法考虑了工人的疲劳因素,求解的工作周期更短,因此生产效率更高。
3.本发明在求解多目标任务规划求解中采用化学反应算法,算法具有较强的鲁棒性、收敛速度快、全局搜索能力强,提高了任务规划求解的准确性。
附图说明
图1基于化学反应优化算法求解任务规划的流程图;
图2工人的工作与休息时间甘特图示例;
图3分子二进制编码示例;
图4单分子无效碰撞示意图;
图5多分子无效碰撞示意图;
图6采用本发明所述方法求得的任务规划甘特图;
图7采用传统方法求得的任务规划甘特图;
图8本发明所得任务规划结果的生产周期与传统模型的对比图。
图2中,分子编码分为两部分,任务编码与休息时间编码。任务编码共分h+r组,对应 h个工人及r个机器人。每组中,共分S
图3中,H
图4(a)为针对任务编码的单分子无效碰撞。随机选择序列S
图5(a)为针对任务编码的多分子无效碰撞。随机选择任务编码中序列S
图6采用本发明所述方法求得的任务规划甘特图。图中结果是针对工人和机器人的数量分别为2的情况,所得结果时间编码部分为0。
图7采用传统方法求得的任务规划甘特图。图中分为工作和休息两部分。图中结果是针对工人和机器人的数量分别为2的情况。
图8为本发明所得任务规划结果的生产周期与传统模型的对比图。图中横坐标对应机器人与工人数量的配置,纵坐标为本发明所得任务规划结果相对传统模型的生产周期提高的百分比。
具体实施方式
为了更好的理解本发明,下面结合附图和具体实施例对本发明作进一步说明:
本发明基于集成短暂休息时间的人机协作任务规划模型,生产任务被分解成子任务并分配给工人与机器人,求解任务周期时间最短和工人疲劳最小的多目标任务规划结果。首先定义面向人机协作的任务规划模型;定义工时最短与工人疲劳最小为目标函数;设定化学反应算法的参数,初始化种群;然后计算种群中每个分子的目标函数值;对种群中的分子进行化学反应优化求解;最后判断是否达到终止条件,若是则输出结果,否者,重复上述步骤继续求解。一种人机协作生产任务的规划方法,包括以下步骤:
S1:根据人机协作工作单元的属性,建立针对人机协作工作单元的生产任务规划模型P(h,r),具体如下:
P(h,r)=[A,h,r,T],T=[T
其中,h为人机协作工作单元中工人的数量,r为人机协作工作单元中机器人的数量,A为人机协作需要完成的生产任务,T为完成单个生产任务A的全部工时,T
该生产任务规划模型设置两个适应度函数,分别为Fit
S2:将生产任务A分解为n个任务序列,即:
A={S
任务序列需要按照顺序执行,只有前一个任务序列完成后,才能开始下一个任务序列;
第i个任务序列S
m
本实施例中分解的任务序列和子任务情况如下表1所示:
表1任务分解及完成时间信息表
如表1中的任务信息,包括:序列的数量、每个序列中的子任务数量、每个子任务的类型、每个子任务由机器人和工人完成所需时间。则根据下列步骤S3的方法可求得完成单个生产任务所需时间。
S3:工人H
式中,
机器人R
式中,
完成第i个任务序列S
式中,max()函数为求括号中所有数值的最大值。
S4:本发明设计的多目标任务规划包含两个适应度函数,分别是时间Fit
适应度函数Fit
其中,
适应度函数Fit
工人完成工作会产生疲劳,工人完成每个子任务的疲劳系数与恢复系数如表2所示,具体计算如下:
表2子任务对应的疲劳系数与恢复系数
假设工人H
则工人完成该子任务后的疲劳,由下式求得:
式中,
假设每个生产周期中,工人H
式中,
工人H
式中,μ为工人的恢复系数;
工人H
式中,T
设每个班次完成的生产周期总数为N,由下式表示:
式中,W为每个班次的时长;
式中,max()函数为求括号内所有项的最大值;
S5:采用化学反应算法求解两个适应度函数Fit
化学反应优化算法包括以下步骤:
S51:设定化学反应算法的参数,即设定初始的动能损失率L
S52:初始化化学反应算法的种群,包括:
S521:初始化种群Pop,对每个分子进行编码,编码包括两部分:子任务编码M和休息时间编码R,二者均为二进制编码;如图2所示;
S522:计算种群中每个分子对应的适应度函数Fit
S523:计算种群中每个分子对应的适应度函数Fit
S524:计算种群中每个分子对应的势能;
分子的势能PE由适应度函数Fit
f
S53:判断进行多分子反应还是单分子反应;任取一个随机数,若随机数大于碰撞概率coll 或者种群规模小于
S54:判断进入单分子无效碰撞反应还是单分子分解反应;若分子的碰撞次数大于分解阈值α,则进行单分子分解反应,进入步骤S55;否则,进行单分子无效碰撞反应,进入步骤S56;
S55:进行单分子分解反应,进入步骤S510更新状态;步骤S55中进行单分子分解反应的步骤包括:
S551:随机生成新的任务编码M'和休息时间编码R';
S552:由原分子的子任务编码M和休息时间编码R与前述新生成的M'和R'组成新的分子,分子1为M与R'的组合,分子2为M'与R的组合;
S553:计算新分子对应的适应度函数Fit
S554:计算新分子对应的适应度函数Fit
S555:计算新分子的势能PE;如前述步骤S524;
S556:更新新分子的动能KE;具体计算如下:
由下式求出临时变量tmp
tmp
式中,PE为分解前分子的势能,KE为分解前分子的动能,PE
如果tmp
从0到1取随机数赋值给q;
如果tmp
KE
新分子2的动能KE
KE
如果tmp
KE
KE
S557:两个新分子的碰撞次数设为0;
S558:原分子从种群中删除;
S559:将前述两个新的分子加入种群。
S56:进行单分子无效碰撞反应,进入步骤S510更新状态;步骤S56中进行单分子无效碰撞反应的步骤包括:
S561:随机选择对任务编码还是休息时间编码进行无效碰撞反应;取一个随机数,若随机数大于0.5则对该任务编码进行无效碰撞反应,随机选择序列S
S562:计算新分子对应的适应度函数Fit
S563:计算新分子对应的适应度函数Fit
S564:计算新分子的势能PE;如前述步骤S524;
S565:原分子的碰撞次数增加1;
S566:计算新分子的动能KE;具体计算为:
由下式求出临时变量tmp
tmp
式中,PE为碰撞前分子的势能,KE为碰撞前分子的动能,PE'为碰撞后分子的势能;
若tmp
若tmp
从L
新的分子的动能KE为tmp
缓冲区能量E
S567:更新缓冲区能量E
S568:原分子从种群中删除;
S569:将前述两个新的分子加入种群。
S57:判断进入多分子的分子间碰撞反应还是多分子的分子合成反应;若两个分子的动能均大于合成阈值β,则进入多分子的分子合成反应,进入步骤S58;否则进入多分子的分子间碰撞反应,进入步骤S59;
S58:进行多分子的分子合成反应,进入步骤S510更新状态;步骤S58中进行多分子的分子合成反应的步骤包括:
S581:随机从以下两种方式中选择合成方式:设步骤S57中的两个分子分别为分子1和分子 2;所述分子1的任务编码M
S582:计算新分子对应的适应度函数Fit
S583:计算新分子对应的适应度函数Fit
S584:计算新分子的势能PE;如前述步骤S524;
S585:计算新分子的动能KE;具体计算为:
由下式求出临时变量tmp
tmp
式中,PE
若tmp
S586:设定新分子的碰撞次数;新分子的碰撞次数等于原两分子碰撞次数平均值取整;
S587:将新分子加入种群;
S588:将前述两个父分子从种群移除。
S59:进行多分子的分子间碰撞反应,进入步骤S510更新状态;步骤S59中进行多分子的分子间碰撞反应的步骤包括:
S591:交换步骤S57所述两个分子的任务编码列;如图5.a所示;
S592:交换步骤S57所述两个分子的休息时间编码列;如图5.b所示,如此得到两个新的分子;
S593:两个分子的碰撞数均增加1;具体为新分子1继承父分子1的碰撞次数并增加1,前述新分子2继承父分子2的碰撞次数并增加1;
S594:计算新分子对应的适应度函数Fit
S595:计算新分子对应的适应度函数Fit
S596:计算新分子的势能PE;如前述步骤S524;
S597:计算新分子的动能KE;具体计算为:
由下式求出临时变量tmp
tmp
式中,PE
若tmp
若tmp
从0到1取随机数赋值给q,
新分子1的动能为tmp
新分子2的动能赋值tmp
S598:将两个新分子加入种群;
S599:将前述两个父分子从种群移除。
S510:更新状态,包括更新最佳分子,迭代次数加1;势能值最小的分子为最佳分子;保存最佳分子的势能值以及对应的任务编码和休息时间编码;
S511:判断是否完成迭代,若迭代次数小于I,则进入步骤S53继续迭代;否则,退出迭代,输出最佳分子;根据最佳分子的任务编码M和休息时间编码R得到最优的生产任务规划方案。
传统的任务规划模型中,任务规划时不考虑工人的疲劳因素,仅考虑生产周期最短。得到规划结果后,预测工人的疲劳,当工人的疲劳将在下一个生产周期超出限定时,为工人提供休息时间降低疲劳,保证每个生产周期中,工人都不会出现疲劳超过限额的情况。
传统任务规划模型对应的生产周期可表示为:
式中,T
图6给出了采用本发明所述方法求得的任务规划甘特图;图7给出了采用传统方法求得的任务规划甘特图;图6和图7中的工人和机器人数量分别为2。但是采用本发明的方法得到的生产周期所需时间是164秒,而采用传统的模型方法得到的生产周期所需时间是587秒,
由此可见本申请给出的生产任务规划方法相对传统模型的生产周期缩短显著,且工人在周期内有短暂的休息,具体是机器人1和机器人2在执行任务序列S
本发明所得任务规划结果的生产周期与传统模型的生产周期对比如表3所示,提高的比例如图8所示,由此可见本发明相对传统的生产任务规划模型更加优化。其中,提高比例计算方法:(传统方法所得的周期-本发明所得的周期)/传统方法所得的周期。
表3本发明所得任务规划结果的生产周期与传统模型的生产周期对比表
本发明不局限于以上所述的具体实施方式,以上所述仅为本发明的较佳实施案例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
- 一种人机协作生产任务的规划方法
- 基于多种群协作果蝇优化的多无人机协同路径规划方法