当前位置: 首页 > 专利查询>清华大学专利>正文

一种基于XGBoost算法的机器人制造单元自适应调度方法技术

技术编号:19240647 阅读:40 留言:0更新日期:2018-10-24 04:05
一种基于XGBoost算法的机器人制造单元自适应调度方法,属于制造业生产线自动化调度领域,具体涉及采用XGBoost算法对具有复杂约束的机器人制造单元进行实时在线调度的方法。包括以下步骤:建立样本数据库,数据库中存储的样本是生产数据以及对应生产数据的最优启发式方法;以样本数据库为基础,应用FIPS‑XGBoost算法启发式调度方法分类模型;通过监测机器人制造单元内的生产状态信息,获取实际的生产数据,将实际的生产数据输入给启发式调度方法分类模型,得到最优启发式方法。本发明专利技术可以快速高效地求解最优特征子集,算法性能普遍好于组合调度规则,验证了该算法自适应调度的有效性。使用本发明专利技术提供的分类模型,根据实际生产数据得出最优启发式方法,可以减少机器人空载移动次数、加快调度效率,带来单元内吞吐量的提升。

【技术实现步骤摘要】
一种基于XGBoost算法的机器人制造单元自适应调度方法
本专利技术属于制造业生产线自动化调度领域,具体涉及采用XGBoost算法对具有复杂约束的机器人制造单元进行实时在线调度的方法。
技术介绍
随着先进工业机器人技术的快速发展,以计算机控制的物料搬运机器人为核心装置的自动化制造系统正被日益广泛地应用,该系统被称之为机器人制造单元。机器人制造单元相比传统生产线具有以下几点优势:更高的精度、操作速度以及生产效率,减少人力,在恶劣生产环境中稳定运行并保证加工过程的安全、无污染,但同时也增加了调度对象、约束关系与机器人瓶颈,使得机器人制造单元调度问题比传统车间调度具有更高的复杂性。与传统的车间调度问题相比,机器人制造单元的调度复杂性主要体现在三方面:1)机器人制造单元不仅仅要考虑物料在加工机器上的加工顺序,同时要考虑机器人搬运作业的顺序,由此调度对象与约束关系增加。2)在机器瓶颈、物料瓶颈之外增加了机器人瓶颈。3)对调度算法的有效性和实时性要求更高,即要求机器人具有更高的利用率。目前,调度问题大多以最小化任务完工时间(makespan)或最大化单位时间吞吐量(throughput)为优化目标,同时使得机器人、加工机器得到充分利用,通过优化调度过程提高制造单元内的生产效率。在机器人制造单元领域已有许多调度方法,精确算法如混合整数规划法、分支定界算法,元启发式算法如遗传算法、差分进化算法等。这些调度优化方法在静态调度问题中有较好表现,但无法适应DRCP(DynamicRoboticCellPromblem,动态机器人制造单元调度问题)中生产中经常面临更多的临时任务、功能更多样化的加工机器和生产线上的更复杂动态工况,如新工件(物料)到达、机器加工时间波动、机器故障、工件交货期变更等,难以满足高实时性的要求,不适宜应用于实际的复杂生产调度过程。在复杂大规模制造系统的在线动态调度中,启发式规则调度方法因其简单、实时的特点在动态调度问题上引起了广泛关注。目前专家们已经为制造车间的众多不同领域总结了大量的通用规则,赋予了规则调度方法科学性与实用性。但基于简单规则的调度难以获得满意解,主要原因在于:缺乏有效的调度规则选择方法,由人工经验来指导的规则调度方法会出现选择不当,使调度过程的性能下降;缺乏调度目标函数和必要的优化控制手段,无法根据系统运行情况,进一步优化生产过程。针对上述缺陷,自适应调度方法成为当前规则调度领域的研究热点,即赋予调度器依照当前系统运行状态和调度目标选择适合调度规则的能力。Shaw和Park等提出了通过归纳学习进行模式导向(pattern-directed)自适应调度的概念,当三个重要因素成立时,该方法能够在制造系统调度中起到很好的效果:用于表征系统运行状态与环境信息的属性具备有效性;备选的调度规则集合具备有效性;正确将系统状态信息映射到当前适合调度策略的能力。目前,自适应调度研究的热点问题大多面向车间调度。Shiue等提出了一种应用元启发式算法进行特征子集搜索的支持向量机算法(GeneticAlgorithm-SupportVectorMachine,GA-SVM)用于建立自适应调度器。Choi,Kim和Lee对flowshop类型可重入生产线提出了基于决策树(DecisionTree,DT)的实时调度方法。针对复杂制造系统,Li等利用仿真系统模拟实际生产并利用仿真数据训练二元回归模型,采用BP神经网络训练模型参数并加入粒子群算法优化训练过程。Guh等提出了一种基于仿真的训练样本生成机制,并采用自组织特征映射神经网络(Self-organizingMapNeuralNetwork,SOM)获取调度知识。Shiue和Su针对冗余特征的问题,应用基于人工神经网络权重的特征选择算法与决策树分类算法结合。自适应调度方法也正逐渐应用于其他复杂制造系统,机器人制造单元调度有别于传统车间调度,针对该领域的自适应调度方法还未见有人提出。XGBoost(极端梯度提升树)的英文全称是eXtremeGradientBoosting,是2014年2月诞生的专注于梯度提升算法的机器学习函数库,因其优良的学习效果以及高效的训练速度而获得广泛的关注。
技术实现思路
本专利技术的目的是提出一种调度方法,从大量样本中学习制造系统的调度知识与模式,采用机器学习方法训练启发式方法分类模型,根据实时生产状态信息,得到该状态下近似最优的启发式调度方法,由此实现实时在线选择调度的功能。为实现上述目的,本专利技术采用的技术方案是:一种基于XGBoost算法的机器人制造单元自适应调度方法,包括以下步骤:建立样本数据库,数据库中存储的样本是生产数据以及对应生产数据的最优启发式方法。以样本数据库为基础,建立启发式调度方法分类模型。通过监测机器人制造单元内的生产状态信息,获取实际的生产数据,将实际的生产数据输入给启发式调度方法分类模型,得到当前生产状态下的最优启发式方法。以样本数据库为基础,建立启发式调度方法分类模型包括以下步骤:A1、将数据库中的样本随机分为训练样本集和测试样本集。A2、采用XGBoost模型为分类模型,分类模型的输入是生产数据,输出是生产数据对应当前生产状态的最优启发式方法。A3、选取特征子集,训练模型。A4、使用测试样本集对模型进行测试:将测试样本集中的生产数据输入模型,比对模型的输出和测试样本集中该生产数据对应的最优启发式方法,相同即判断准确,如果模型输出的准确率高于95%,结束,否则,转到步骤A3。A3包括以下步骤:步骤1、设置优化过程参数,包括惯性权重、加速系数、种群规模、迭代停止条件;步骤2、种群初始化,包括粒子的初始位置及初始速度;步骤3、对种群进行解码,得到每个粒子对应的特征子集及XGBoost模型超参数,采用XGBoost模型训练分类模型,将分类模型的准确率作为粒子的适应度值;步骤4、得到分类模型后计算每一维特征的全局贡献度,计算所有特征的贡献度后作归一化处理,得每个特征的权重Wj;步骤5、对于每个粒子i,将其适应度值与pbesti的适应度值进行比较,若较好,则将其赋值给pbesti,反之,pbesti保持不变;步骤6、对每个粒子,将其适应度值与所有邻域粒子的适应度值进行比较,确定邻域粒子中适应度值优于当前粒子的数量Ni;步骤7、根据以下公式,对粒子的速度进行更新:根据以下公式,对粒子的位置进行更新:其中,标量χ和φ分别是收缩系数,设置为0.7298和4.1,pbestin表示该粒子历史最优位置,gbestqn表示第q个近邻的历史最优位置,U(0,φ)表示0和φ之间均匀分布的随机数,Win+1表示本轮分类模型训练当中该特征所对应的权重系数,S(Vid)使用Sigmoid函数将速度分量映射到[0,1]区间用于决策,d代表粒子的维度,[1,m]代表所有特征对应的编码位置,(m,D]代表超参数对应的编码位置,r3为0到1之间均匀分布的随机数,Vid为粒子速度分量;步骤8、如未达到迭代停止条件,则返回步骤3;如达到迭代停止条件,输出历史最优解,对特征子集及超参数进行解码;步骤9、确定特征子集,对模型采用栅格搜索法进一步确定其超参数,得到最优分类模型;步骤3中,样本数为n维度为m的数据集为:其中,xi表示数据i对应的特征,yi表本文档来自技高网
...

【技术保护点】
1.一种基于XGBoost算法的机器人制造单元自适应调度方法,包括以下步骤:建立样本数据库,数据库中存储的样本是生产数据以及对应生产数据的最优启发式方法;以样本数据库为基础,建立启发式调度方法分类模型;通过监测机器人制造单元内的生产状态信息,获取实际的生产数据,将实际的生产数据输入给启发式调度方法分类模型,得到当前生产状态下的最优启发式方法;其特征在于,以样本数据库为基础,建立启发式调度方法分类模型包括以下步骤:A1、将数据库中的样本随机分为训练样本集和测试样本集;A2、采用XGBoost模型为分类模型,分类模型的输入是生产数据,输出是生产数据对应当前生产状态的最优启发式方法;A3、选取特征子集,训练模型;A4、使用测试样本集对模型进行测试:将测试样本集中的生产数据输入模型,比对模型的输出和测试样本集中该生产数据对应的最优启发式方法,相同即判断准确,如果模型输出的准确率高于95%,结束,否则,转到步骤A3;A3包括以下步骤:步骤1、设置优化过程参数,包括惯性权重、加速系数、种群规模、迭代停止条件;步骤2、种群初始化,包括粒子的初始位置及初始速度;步骤3、对种群进行解码,得到每个粒子对应的特征子集及XGBoost模型超参数,采用XGBoost模型训练分类模型,将分类模型的准确率作为粒子的适应度值;步骤4、得到分类模型后计算每一维特征的全局贡献度,计算所有特征的贡献度后作归一化处理,得每个特征的权重Wj;步骤5、对于每个粒子i,将其适应度值与pbesti的适应度值进行比较,若较好,则将其赋值给pbesti,反之,pbesti保持不变;步骤6、对每个粒子,将其适应度值与所有邻域粒子的适应度值进行比较,确定邻域粒子中适应度值优于当前粒子的数量Ni;步骤7、根据以下公式,对粒子的速度进行更新:...

【技术特征摘要】
1.一种基于XGBoost算法的机器人制造单元自适应调度方法,包括以下步骤:建立样本数据库,数据库中存储的样本是生产数据以及对应生产数据的最优启发式方法;以样本数据库为基础,建立启发式调度方法分类模型;通过监测机器人制造单元内的生产状态信息,获取实际的生产数据,将实际的生产数据输入给启发式调度方法分类模型,得到当前生产状态下的最优启发式方法;其特征在于,以样本数据库为基础,建立启发式调度方法分类模型包括以下步骤:A1、将数据库中的样本随机分为训练样本集和测试样本集;A2、采用XGBoost模型为分类模型,分类模型的输入是生产数据,输出是生产数据对应当前生产状态的最优启发式方法;A3、选取特征子集,训练模型;A4、使用测试样本集对模型进行测试:将测试样本集中的生产数据输入模型,比对模型的输出和测试样本集中该生产数据对应的最优启发式方法,相同即判断准确,如果模型输出的准确率高于95%,结束,否则,转到步骤A3;A3包括以下步骤:步骤1、设置优化过程参数,包括惯性权重、加速系数、种群规模、迭代停止条件;步骤2、种群初始化,包括粒子的初始位置及初始速度;步骤3、对种群进行解码,得到每个粒子对应的特征子集及XGBoost模型超参数,采用XGBoost模型训练分类模型,将分类模型的准确率作为粒子的适应度值;步骤4、得到分类模型后计算每一维特征的全局贡献度,计算所有特征的贡献度后作归一化处理,得每个特征的权重Wj;步骤5、对于每个粒子i,将其适应度值与pbesti的适应度值进行比较,若较好,则将其赋值给pbesti,反之,pbesti保持不变;步骤6、对每个粒子,将其适应度值与所有邻域粒子的适应度值进行比较,确定邻域粒子中适应度值优于当前粒子的数量Ni;步骤7、根据以下公式,对粒子的速度进行更新:根据以下公式,对粒子的位置进行更新:其中,标量χ和φ分别是收缩系数,设置为0.7298和4.1,pbestin表示该粒子历史最优位置,gbestqn表示第q个近邻的历史最优位置,U(0,φ)表示0和φ之间均匀分布的随机数,Win+1表示本轮分类模型训练当中该特征所对应的权重系数,S(Vid)使用Sigmoid函数将速度分量映射到[0,1]区间用于决策,d代表粒子的维度,[1,m]代表所有特征对应的编码位置,(m,D]代表超参数对应的编码位置,r3为0到1之间均匀分布的随机数,Vid为粒子速度分量;步骤8、如未达到迭代停止条件,则返回步骤3;如达到迭代停止条件,输出历史最优解,对特征子集及超参数进行...

【专利技术属性】
技术研发人员:张林宣王楚原刘重党
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1