1.一种带有岸桥缓冲区的自动化集装箱码头AGV重进重出路径规划方法,其特征在于,包括如下步骤:
I.建立岸桥缓冲区,其中,建立的岸桥缓冲区包括装箱缓冲区以及卸箱缓冲区;
在装箱缓冲区内设有可左右横移的第一轨道;在第一轨道上方设有AGV车厢,在AGV车厢上存放待运载集装箱,这些待运载集装箱是由岸桥分配到装箱缓冲区的;
当AGV车厢沿着第一轨道左右移动时,AGV车厢上的待运载集装箱实现左右横移;
在卸箱缓冲区内设有可左右横移的第二轨道;在第二轨道上方设有AGV车厢,在AGV车厢上存放卸载后的集装箱,这些卸载后的集装箱是由堆场运输至卸箱缓冲区的;
当AGV车厢沿着第二轨道左右移动时,AGV车厢上的集装箱实现左右横移;
其中,AGV车头与AGV车厢采用可分离式结构,且当AGV车头在卸箱缓冲区与AGV车厢分离后,AGV车头到达装箱缓冲区,完成集装箱装载后驶离装箱缓冲区;
II.构建带有岸桥缓冲区的自动化集装箱码头AGV重进重出调度模型;
首先给出与自动化集装箱码头AGV重进重出调度模型相关的参数定义,分别如下:表示自然数的集合, 为所有AGV数量,*
S表示集合S上的多重集,|S|表示集合S中元素的个数;
V={v0;v1,v2,…,vn}是一个任务点的集合;
其中,v0表示岸桥缓冲区,vi表示堆场的第i个位置,*
V(vi)表示由vi构成的多重集{vi}中的一个子集,*
X∈{V‑{v0}} 表示一个任务点集合,即从船上卸载的集装箱存放到任务点集合X中堆场;
*
Y∈{V‑{v0}}表示一个任务点集合,即将任务点集合Y中堆场的集装箱装载到船上;
*
其中,{v0}表示只含有岸桥缓冲区v0的集合,{V‑{v0}}表示删除了v0后V的多重集;
c表示每个AGV最大承载集装箱数量;
表示第k辆AGV的编号;
dij表示任务点vi到任务点vj的距离;
k k
η表示第k辆AGV一次运输过程中所经过的任务点,η=v1′v2′…vj′;
k
为了方便表达,记vi′∈η;
k k
Q=∑i,jdij表示第k辆AGV的行驶距离,其中,vi,vj是η中的连续任务点;
k k k
li表示η中第k辆AGV在任务点vi装箱数量,li∈{0,1,…,c};
k k k
ui表示η中第k辆AGV在任务点vi卸箱数量,ui∈{0,1,…,c};
k k k
ni表示η中在任务点vi装卸前,第k辆AGV上的集装箱数量,ni∈{0,1,…,c};
构建带有岸桥缓冲区的自动化集装箱码头AGV重进重出调度模型,该AGV重进重出调度k
模型的目标函数为最短调度距离,即求η,使得满足如下目标函数:其中,Z表示所有AGV的行驶距离之和;minZ表示目标函数为所有AGV的行驶距离之和最小;目标函数的约束条件为:公式(2)规定了第k辆AGV进出岸桥缓冲区v0装箱和卸箱的数量都是AGV的容量c,即满足重进重出的AGV满载要求;
公式(3)规定了AGV的最大承载量不超过c;
公式(4)和公式(5)对AGV每次装卸箱的数量进行了限制;
公式(6)禁止任务点运输过程中既不卸箱也不装箱的非法操作;
公式(7)规定对于每一个卸箱任务点都会被满足运输任务;
公式(8)规定对于每一个装箱任务点的运输任务都会被满足;
III.生成初始解;首先给出与生成初始解相关的定义,分别如下:F(v)表示任务点v的映射,将一个任务点映射为一个整数,‑1 ‑1
F (v)=v,将一个整数映射回一个任务点,F (v)∈V;
CX表示X中重复任务点的集合;
CY表示Y中重复任务点的集合;
C表示除去重复元素后的X、Y中相同任务点后的任务点集;
α表示染色体序列,αi表示染色体中的第i段,i∈{1,2,3};
α1=v1′v2′…vj′表示一辆AGV一次合法装卸过程经过的任务点序列为v1′v2′…vj′;
α2表示染色体中每辆AGV行驶序列的起始点;
α3=x1x2…xj,xi=1,2,用于记录每一次合法运输的装卸次序组合;xi=1时,表示vi′为卸箱‑>卸箱‑>装箱‑>装箱;xi=2时,表示vi′为卸箱‑>装箱‑>卸箱‑>装箱,则生成初始解过程如下:
III.1.筛选重复任务点;
为了减少初始解空间的大小,事先将在同一堆场的连续操作组合在一起;
若c=1,从任务点集合X、Y中筛选相同元素组成任务点集C,并将X在任务点集C中出现的任务点去除构成集合X′,将Y在任务点集C中出现的任务点去除构成集合Y′;
若c=2,当X中每有两个相同的任务点,将这两个任务点筛选出放入重复任务点的集合CX,当Y中每有两个相同的任务点,将这两个任务点筛选出放入重复任务点的集合CY;
根据重复任务点的集合CX和重复任务点的集合CY对X、Y中的元素进行去重操作产生X′和Y′,从X′、Y′中筛选相同元素组成C,并将X′、Y′在C中出现的任务点去除;
III.2.个体编码;
将X′,Y′,CX,CY,C中的任务点v映射为F(v),将F(v)编码成α;
若c=1,则α=α1α2;否则,α=α1α2α3;
IV.利用遗传算法对带有岸桥缓冲区的自动化集装箱码头AGV重进重出调度模型求解;
首先给出与遗传算法相关的参数的定义,分别如下:αx表示α中的卸箱序列;
αy表示α中的装箱序列;
p表示遗传算法初始种群数量, p′表示遗传算法进化种群数量,t表示当前迭代次数, tmax表示最大迭代次数;
fitness(α)表示α的适应度;
利用遗传算法对自动化集装箱码头AGV重进重出调度模型求解的具体过程如下:IV.1.计算适应度,选择进化个体;
若为初次迭代,则设置迭代次数t=1;
对于每一个α,根据计算适应度fitness(α)值,选择适应度高的p′个个体进入第t次迭代;
其中,fitness(α)值的计算公式如下:IV.2.染色体拆分;
将每个α1中的卸箱任务点组成序列αx,装箱任务点组成序列αy;
IV.3.交叉算子;
采用两点交叉的方式,将序列αx和序列αy每两个分成一组,对于每组选择两个交叉点,对交叉点内部的序列进行交叉;
IV.4.变异、逆转算子;
对于序列αx和序列αy选择两个任务点进行交换,再选择一段序列进行逆转反置;
IV.5.染色体合并;
若c=1,根据序列αx和序列αy合并成α1,生成新个体α′;否则,根据序列αx、序列αy和α3合并成α1,生成新个体α′;
IV.6.精英保留;
计算新个体的适应度fitness(α′)值;
在新个体α′和原个体α中选择适应度值最高的p个个体作为新种群;
IV.7.若t
‑1
否则遗传算法结束,将α映射回任务点F (v)的序列,输出种群中最优解的行驶距离Z。