原创文章,禁止转载、抄袭或用于报告、交流等学术或商业用途
全文(其它章节内容)
https://blog.csdn.net/qq_38757869/article/details/106885769
2.3 基于基因表达规划算法的多AGV调度
为了满足复杂的物料搬运需求,自动导引车(AGV)被广泛用于智能仓储系统和智能生产物流系统,其可以自主路径规划与避障,极大地提高了物料搬运的灵活性和准确性。根据AGV的承载能力,可以分为单负载、多负载、协作AGV三种。单负载由于具有较好的搬运柔性,且管理相对简单,在实际生产应用中更为常见,本节介绍常见的生产物流系统多AGV调度问题。
2.3.1 问题描述
如下图所示,为某脉动式飞机装配线的生产现场,包括6个装配机位和7个物料以及装配所需设备的仓库,其中W1-W4为物料仓库,W5-W7为装配工具仓库。在装配过程中,装配工具首先需要按照生产计划被搬运至生产现场,在使用完成后需要返回至仓库。物料配送任务动态抵达生产车间,需要为每个任务分配对应的AGV执行任务。
在此研究问题中,做出不失一般性的假设:
所有AGV都是相同的;
两点间的运输时间已知且确定;
每个AGV每次当且仅当最多搬运一件物料/工具;
所有的AGV可以在任何位置等待下一任务;
不考虑AGV失效、路径规划问题;
2.3.2 数学模型
基于上述的问题描述和假设,AGV调度问题表述如下。
符号定义:
I 运输任务索引
j AGV索引
n任务数量
T 任务集合
A AGV集合
psi 任务Ti的起始点
pfi 任务Ti的终点
esti 任务Ti的释放时间
esaj AGV的最早开始时间
dtui 任务Ti的开始时间上限
dtli 任务Ti的开始时间下限
paj AGV 的最终位置
ttkk’ 从k到k’的运输时间
Xij 如果任务Ti被Aj执行,Xij=1,否则Xij=0
因此,本问题的目标函数为最小化物料搬运任务的延迟时间。
约束如下:
约束(2)表示每个任务当且仅当被分配给一个AGV。约束(3)表示任务的完成时间。
2.3.3 算法设计
针对此动态AGV调度问题,提出一种基于混合遗传规划的AGV动态调度方法。基因表达编程(Gene expression programming, GEP)是一种重要的进化计算方法,它利用自然选择来探索更好的个体。 它通常用于学习历史数据的知识,从而为所有这些实例生成一般规则。 在本文中,开发了一种改进的 GEP,如图 2 所示,包括四个主要步骤。 首先,初始种群是随机生成的。 然后,计算个体的适应度,用于选择好的个体。 最后,执行交叉、变异、邻居搜索和随机初始化以生成新个体。 GEP的参数如表1所示。
本文采用基于决策树的 GEP,根据 AGV 的相关属性和运输任务计算 SAGV 的优先级,然后选择优先级最小的 AGV 执行任务。 GAVs和运输任务的属性如表2所示。决策树如图3所示。
在本文中,优先选择用于从种群中选择较好的个体。 然后,根据这些好的个体生成新的个体,包括交叉、变异、邻域搜索和随机初始化。 单点交叉和变异用于探索新个体并避免局部最优。 为了提高 GEP 的收敛速度,如图 4 所示,使用邻域搜索来探索选择后的好个体附近的新个体,其中好的函数和属性由选择的个体确定。 此外,产生一些随机个体以增加每一代种群的多样性。 通过交叉和变异、邻域搜索和随机初始化生成的个体数量分别为 20,160 和 20。
2.3.4 实例验证
对某脉动式飞机装配线的物料配送任务进行优化,来验证本文踢出算法的有效性。
表3为装配站之间的运输时间,表4为装配站和仓库间的运输时间,表5为仓库间的运输任务,表6为运输任务。
其学习得到的3个最优调度规则如下所示,调度规则选择的五个属性出现在这三个规则中,说明了这五个参数的重要性。
可得到调度结果如下甘特图所示。(引自自己的论文,非本文的调度结果)
2.4 小结
本章内容起到抛砖引玉的作业,使得读者对调度这个概念有一个初步的了解。由于很多调度问题都相对复杂,基于规则的方法难以使用,因此本章内容相对简短,仅介绍了最为经典的一些规则。除此之外的单机调度规则还有STT、MWKR、SCR、LWKR、MOPNR和随机规则等,有兴趣的读者可以自行查阅生产计划与控制相关的数据进行学习。