跨层作业逐渐成为仓储物流提高效率的趋势之一。ADAPTO是范德兰德公司为了减轻企业仓储配送压力而专门设计的一款立异的3D穿梭小车。ADAPTO逐渐弱化了仓储系统层与层、巷道与巷道之间的隔离, 同一个3D穿梭车可以自由的穿梭于货架任意位置, 不局限于巷道与层之间。同样, 瑞士的建筑五金供应商SFS接纳的跨层穿梭车系统, 立库有17层, 这17层仅配备了3台穿梭车, 共5个巷道, 整个立库仅用15台穿梭车, 系统设计不但降低本钱, 作业效率也很是高[1]�?绮阕饕导蟮卦黾恿思鹧∽饕档牧榛钚�。
具有3维空间运动能力的典范移动机械人, 现在研究较多的是种种空间和水下机械人。其中, 智能水平较高的包括MAV、UAV、UUV、AUV等[2]。智能仓储物流领域使用拣选机械人十分广泛, 但大部分路径计划研究局限于二维路径计划, 类似跨层作业此类约束较少甚至无约束的通用仓储模型三维路径计划少有研究涉及, 本文提出一种通用的货仓拣选三维路径计划模型, 并设计了与之匹配的寻优算法。
通用立体货仓模型中的拣选小车路径计划问题是一个三维路径计划, 目前研究较多的是无人机 (UAV) 的三维路径计划, 仓储情况下的全地图三维路径计划研究并未几见。无人机三维路径计划的情况威胁包括地图情况威胁、雷达侦查威胁、敌军导弹辐射规模威胁等。仓储拣选设备的路径计划与之比照, 显然货仓里的拣选车辆路径比较规则, 通常只有水平、竖直直线运动, 相比于无人机的航行轨迹较为简单, 一个无人机的路径选择在栅格空间中可以有26个偏向[3] (如图1所示) 。一个仓储机械人的路径选择在空间中通常只有6个偏向, 如图2所示。
货仓拣选设备 (提升机、堆垛机、穿梭车等) 的运动仅为前、后、左、右、上、下6个偏向。划分对应矩阵:
故将连续空间变换为栅格空间系统模型, 更切合立体货仓拣选设备运动的客观纪律, 同时便于算法搜索。且实际求解历程中货仓尺寸、规模已知, 因此可以视为全局路径计划问题。将货仓凭据每个货位的尺寸按小方块进行划分, 每个小立方体代表一个货位。
A*算法是一种常见的路径搜索算法, A*算法的估价函数可以体现为:
其中g (n) 体现从起始节点Start到节点n的真实泯灭值, h (n) 体现从节点n到终止点Goal的启发预计泯灭值。f (n) 体现从起始点开始, 经过节点n抵达目标的启发预计泯灭值。h* (n) 是指经过节点n, 抵达终止目标点的实际最优消耗值。其基本思路与经典的路径搜索算法Dijkstra相似, 但在Dijkstra算法的基础上加上启发价钱, 路径价钱通常由距离决定, 距离通常有三种方法盘算:
1) 曼哈顿距离
曼哈顿距离即坐标系中两点的绝对轴距之和。其表达式如式 (3) 所示, 效果如图3所示。
2) 切比雪夫距离
切比雪夫距离被称为棋盘距离。其表达式如式 (4) 所示, 效果如图4所示。
3) 欧几里得距离
欧几里得距离是权衡两点之间距离远近的最常用的要领之一, 其值直接可以看作两个位置点在欧式空间中的两点的直线距离, 其表达式如式 (5) 所示, 效果如图5所示。
图5 欧几里得距离的A*搜索历程
由于仓储情况中, 只保存直线运动且为前、后、左、右、上、下6个偏向, 因此算法的距离选择应以曼哈顿距离为基础, 在此距离公式基础上增加竖直偏向坐标差的绝对值, 距离公式为:
线性函数归一化 (Min-Max Scaling) , 也称为离差标准化, 是对原始数据的线性变换, 使结果值映射到[0-1]之间。转换函数如下:
其中max为样本数据的最大值, min为样本数据的最小值。本文A*算法的历史路径函数里还包括地图情况价钱, 情况价钱的取值为0或1, 在盘算价钱函数时, 为制止“大数吃小数”的现象, 需要对数据进行归一化处理, 本文涉及的标准化参数有单位距离设备的能耗和单位距离设备的拣选时间两个指标, 其中单位距离设备的拣选时间与设备运行速度有关。
统计出仓储系统内差别执行设备的单位距离能耗和速度, 找出能耗最大值和速度最大值, 凭据以上离散标准化公式将单位能耗和速度归一化处理, 使之映射到[0-1]之间, 由于系统考量的两个指标是单位能耗与拣选时间, 时间与速度成反比, 因此在速度值的归一化处理之后可作加一处理, 制止拣选时间数值无穷大, 使单位距离下的设备运行时间也在[0-1]之间。
假设纵向移动由提升机执行, 其速度为vx、单位能耗 (功率) 为Ex, 水平移动由穿梭车执行, 其速度为vy、单位能耗 (功率) 为Ey。则有:
归一化处理, 将Ex1代入式 (7) :
其余偏向能耗和速度数据的归一化历程同上。
1) 路径计划需要考虑的指标:
(1) 行走时间最短:机械人行走时间按最低的选取; (2) 能量消耗最小:机械人所走过的路径能量消耗按最低的选取。
2) 情况模型的建立:
情况建模的目的是能够为路径计划提供可用的剖析平台, 常用的剖析建模要领有拓扑建模法和几何建模法[4,5], 在本文中选用栅格法对情况进行建模, 栅格法情况建模是将仓储情况剖析成一系列尺寸相同的网格单位, 将情况信息或障碍物信息漫衍在l×m×n的情况栅格矩阵中, 由于每个栅格的像元值都是唯一的、确定的, 所以每个栅格的标识也是唯一的、确定的[6]。建立情况模型时既要满足算规则划的准确性也要满足实时性, 作以下假设:
(1) 假设搬运设备 (平移、提升) 无法穿越已存货位。
(2) 假设货仓内的货物实时位置已知。
(3) 假设设备性能, 包括能耗、速度均已知。
(4) 假设将情况界限看成障碍物处理, 设备不可越过界限行走。
假设自动化立体货仓中每一个货架长宽高尺寸划分为a, b, c, 由l排m列n层的货架组成, 则整个货仓有l×m×n个货格, 整个货仓货架区长a×l, 宽b×m, 高c×n。地图情况价钱值的设置则凭据货仓中已被占据的货格决定, 若此货格已被占用, 则无法存放或穿越, 即此点为障碍点, 在matlab中可建立l×m×n的三维数组, 其中已被占据的货格相应位置则置INF, 体现障碍, 未被占据的货格相应位置置0, 体现可存储或可通行。
图6说明了一个4×4×4的货仓模型, 以图中填黑区域为例, 简单说明本文的建模战略, 则该区域的障碍障碍信息矩阵为一个l=m=n=4的三维矩阵:
其中每层INF值所在位置即障碍点, S点代表出发点Startpoint, G点则代表终点Goalpoint。
距离函数的选取, 由式 (6) 可知是凭据曼哈顿距离扩展Z偏向而来的, 由于启发函数中只盘算距离函数, 但实际行走需要考虑拣选时间、设备能耗, 且实际行走历程中拣选设备水平偏向和竖直偏向的运行速度和能耗并不完全一样。因此启发函的距离盘算中在竖直偏向引入因子γ, 以调理竖直偏向与水平偏向的差别。
DMS体现M和Startpoint点之间的的距离;
体现点s与下一点m水平方
向之间的距离;
体现点s与下一点m竖直偏向之间
的距离;
历史路径价钱函数可以如下分段表达:
K (M') 体现地图情况价钱;
α、β划分体现设备能耗与运行时间在启发函数中的占比且:
ξ体现启发价钱调理参数 (为了包管路径搜索偏向始终走向目标点, 仅避开障碍且不受历史路径价钱函数的影响, ξ可适当调理, 使得每次路径搜索都尽量靠近目标点) , ξ值的选取控制在时间和能耗参数同一量级, 并略大于αE及βv;
DMG体现点M和路径终点G之间的距离。
若γ>>11, 体现竖直偏向单位能耗是水平偏向单位能耗的γ倍>1。则f (M) 为如下分段函数 (水平、竖直) :

目标函数:
在三维空间中求解移动机械人最优路径的要领有许多, 如A*算法、D*算法、进化算法等[7], 在众多求解最优路径的要领中, A*算法简单、有效, 并且获得了广泛的应用, 本文接纳的A*算法进行仓储设备的路径计划, 其算法基本办法描述:
Step 1:通过Initialize Field函数初始化参数, 初始化地图情况;将初始节点存入Set Open数组中。
S t e p 2:扩展目今的节点, 即找到以目今节点为中心, 其前、后、左、右、上、下6个偏向邻域内的可通行节点, 将不保存于Set Open数组和Set Closed数组中的节点盘算其启发价钱即h (n) , 并将其存入Set Open Heuristics数组中相对应的位置, 并盘算该节点的路径泯灭即g (n) , 并将其设定为目今节点;在Set Open数组中删去目今节点, 并将其存入Set Closed表中。
Step3:将扩展获得的节点依次加入Set Open数组中, 若此节点不保存Set Open数组中, 那么就将其加入到Set Open数组中, 并将盘算获得的路径泯灭g (n) 加入到Set Open Cost数组中相应的位置, 并纪录这点的来源偏向到Field Pointers数组中, 若此节点己经保存于Set Open数组中, 比较此点纪录在Set Open Cost数组的路径消耗与新盘算获得的路径消耗, 若纪录的路径消耗小于新盘算获得的路径消耗, 则对此点不做任何改变, 反之, 用新的路径消耗取代此点在Set Open Cost数组中相对应的路径消耗, 并更新此点的来源偏向到Field Pointers数组。
Step4:Set Open Heuristics数组中和Set Open Cost数组中相对应位置的值相加, 选取其和最小的节点为目今节点, 并将其置入Set Closed数组中, 将其泯灭置入Set Closed Cost数组中, 然后跳转Step2。
Step5:当Set Open数组为空集之后, 从目标节点开始, 通过Find Way Back函数找到最终路径。
Step6:作图并输出最终结果。算法流程图如下:
初始化数据:
假设某货仓有20×20×20个库位, 合计8000个库位。其中已存货物 (即障碍点, 无法穿越) l=m=n=80;假设仅有一台设备, 其水平偏向、竖直偏向能耗、速度各异。
初始化障碍数据:数据量较大, 略。
初始化起点、终点:Startpoint: (6, 4, 1) ;Goalpoint: (16, 15, 20) 。
所得路径数据:
由上可知, 路径计划共经过43个点, 除去起点、终点, 拣选路径共经过41个点, 其中水平偏向23个单位长度, 竖直偏向19个单位长度。
本文通过对立体货仓情况的栅格化建模, 立异性地构建了无约束情况下收支库点与货仓中任意一点的三维路径计划模型。
通过栅格化三维空间模型, 将设备运行速度、设备耗能作为系统指标进行考量, 针对水平偏向和竖直偏向的差别移动特性, 提出分段路径价钱函数的看法, 并通过A*算法得出该三维空间模型中的最优路径, 从而获得拣选设备所有经过的路径节点。
随着仓储设备智能化的生长趋势, 系统约束及界限条件越来越少, 本文研究内容关于跨层作业系统、新型自动化拣选作业系统的路径计划有普适参考意义。今后可考虑多点、多设备的三维路径计划研究, 关于差别货仓增加相应约束即可求解其系统的最优路径。
图1 1 俯视图
【本文标签】
【责任编辑】yd2333云顶电子游戏云仓