发明名称 基于分散式出/入库布局模式下的堆垛机调度路径模型建立方法
摘要 本发明公开了一种基于分散式出/入库布局模式下的堆垛机调度路径模型的建立方法,该方法建立的堆垛机调度路径模型以堆垛机完成任务序列所需时间为评价标准,通过完善现有堆垛机SC/DC作业模式,以使堆垛机调度模型更具通用性,从而解决了现有堆垛机调度模型不能满足多出/入库台工况的问题。能够满足“多出/入库台”这一实际工况需求。同时,单一出/入库台布局作为多出/入库台布局的一种特殊情况。在对堆垛机调度路径进行优化求解时,采用遗传算法,通过运用货位与出/入库台联合编码的方式,解决了现有优化方法无法完整表示货位与出/入库台关联信息的问题。
申请公布号 CN105911982A 申请公布日期 2016.08.31
申请号 CN201610213745.5 申请日期 2016.04.07
申请人 西安建筑科技大学 发明人 蔡安江;应嘉奇;史小辉;郭师虹
分类号 G05D1/02(2006.01)I 主分类号 G05D1/02(2006.01)I
代理机构 西安恒泰知识产权代理事务所 61216 代理人 李郑建
主权项 一种基于分散式出/入库布局模式下的堆垛机调度路径模型的建立方法,其特征在于,按下列步骤进行:在堆垛机运行时,其水平和垂直方向的运动将同时开始,此时堆垛机完成一条出/入库指令的作业时间取决于其水平和垂直方向作业时间的最大值;在货架中,设货位长度为l、货位高度为h,堆垛机水平运行速度为V<sub>x</sub>、堆垛机垂直运行速度V<sub>y</sub>,则堆垛机从某一位置[i,j]运动至指定位置[u,w]所需时间为:t=max(|i‑u|t<sub>x</sub>,|j‑w|t<sub>y</sub>)   (1)其中,t<sub>x</sub>为堆垛机通过一个货位时,水平方向运动所需时长:t<sub>x</sub>=l/V<sub>x</sub>;t<sub>y</sub>为堆垛机通过一个货位时,垂直方向运动所需时长:t<sub>y</sub>=h/V<sub>y</sub>;分散式出/入库形式下的自动化立体仓库出/入库作业具有如下特征:(1)入库任务有m个,在任务序列中表示为:<img file="FDA0000959825290000011.GIF" wi="488" he="68" />(2)出库任务有n个,在任务序列中表示为:<img file="FDA0000959825290000012.GIF" wi="476" he="70" />其中:<img file="FDA0000959825290000013.GIF" wi="96" he="55" />表示入库任务序列中,第i条任务中堆垛机所需存放货物的货位地址及该货物的入库台地址;<img file="FDA0000959825290000014.GIF" wi="113" he="70" />表示出库任务序列中,第j条任务中堆垛机所需取出货物的货位地址及该货物的出库台地址;基于上述出/入库作业特征,分散式出/入库布局模式下自动化立体仓库堆垛机的SC/DC作业方式如下:(1)SC作业方式:SC作业方式为单一命令作业方式,即堆垛机进行一次出入库操作仅完成一条出库或入库任务;在分散式布局模式下,堆垛机的SC作业方式是指:堆垛机由初始出/入库台或上一任务指定卸载货物的出/入库台出发,运动至指定货位装载货物后,再运动至货物指定的出/入库台卸载货物;或者堆垛机在某一出/入库台装载货物后,将货物运送至指定货位卸载货物,再运动至下一指令中需要装载货物的出/入库台;因此,当有n条SC作业方式的任务指令时,堆垛机的总运动时长为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>T</mi><mi>s</mi></msub><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><mrow><mo>(</mo><msub><mi>T</mi><msub><mi>P</mi><mi>i</mi></msub></msub><mo>+</mo><msub><mi>T</mi><mrow><msub><mi>P</mi><mi>i</mi></msub><msub><mi>IO</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow></msub><mo>)</mo></mrow><mo>+</mo><mn>2</mn><msub><mi>n&tau;</mi><mrow><mi>I</mi><mi>O</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000959825290000021.GIF" wi="1158" he="125" /></maths>其中:n为SC作业方式下出/入库的任务数量;i为任务序列中某一条出/入库任务指令的排序序号;<img file="FDA0000959825290000022.GIF" wi="53" he="70" />为第i条出/入库任务指令中,待存/取货物所在货位与初始或指定出/入库台之间,堆垛机行走时长;<img file="FDA0000959825290000023.GIF" wi="102" he="66" />为待存/取货物所在货位与指定卸载货物或下一出库任务起始出/入库台之间,堆垛机行走时长;τ<sub>IO</sub>为堆垛机进行一次装/卸载操作时,货叉作业所需的时长;(2)DC作业方式DC作业方式为复合命令作业方式,即堆垛机进行一次出入库操作完成一项入库作业和一项出库作业;在分散式布局模式下,堆垛机的DC作业方式是指:堆垛机首先运动至指定出/入库台装载待入库的货物,将货物运送至指定货位后,直接运动至出库任务的指定货位装载待出库货物,再将货物运送至指定的出/入库台;因此,当有n条DC作业方式的任务指令时,堆垛机的总运动时长为:<img file="FDA0000959825290000024.GIF" wi="1198" he="135" />其中,n为DC作业方式指令总数;<img file="FDA0000959825290000031.GIF" wi="53" he="63" />为待存/取货物货位到与其对应出/入库台之间堆垛机的运动时长;<img file="FDA0000959825290000032.GIF" wi="117" he="71" />为同一DC指令中入库货物所在货位到出库货物所在货位之间堆垛机的运动时长;<img file="FDA0000959825290000033.GIF" wi="142" he="63" />为一条DC指令中,出库货物对应出/入库台到下一条DC指令入库货物对应出/入库台之间堆垛机的运动时长;τ<sub>IO</sub>为堆垛机进行一次装/卸载操作时,货叉作业所需的时长;基于上述分散式出/入库布局模式下的自动化立体仓库堆垛机SC/DC作业方式,堆垛机调度路径模型如下:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>T</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><msub><mi>Q</mi><mn>1</mn></msub><mo>-</mo><msub><mi>Q</mi><mn>2</mn></msub></mrow></munderover><mrow><mo>(</mo><mrow><msub><mi>T</mi><msub><mi>P</mi><mi>i</mi></msub></msub><mo>+</mo><msub><mi>T</mi><mrow><msub><mi>P</mi><mi>i</mi></msub><msub><mi>IO</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow></msub></mrow><mo>)</mo></mrow><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mrow><mn>2</mn><msub><mi>Q</mi><mn>2</mn></msub></mrow></munderover><msub><mi>T</mi><msub><mi>P</mi><mi>i</mi></msub></msub><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>Q</mi><mn>2</mn></msub></munderover><msub><mi>T</mi><mrow><msub><mi>P</mi><mrow><mn>2</mn><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><msub><mi>P</mi><mrow><mn>2</mn><mi>i</mi></mrow></msub></mrow></msub><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mrow><msub><mi>Q</mi><mn>2</mn></msub><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>T</mi><mrow><msub><mi>IO</mi><mrow><mn>2</mn><mi>i</mi></mrow></msub><msub><mi>IO</mi><mrow><mn>2</mn><mi>i</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow></msub><mo>+</mo><mn>2</mn><mrow><mo>(</mo><mrow><msub><mi>Q</mi><mn>1</mn></msub><mo>+</mo><msub><mi>Q</mi><mn>2</mn></msub></mrow><mo>)</mo></mrow><msub><mi>&tau;</mi><mrow><mi>I</mi><mi>O</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000959825290000034.GIF" wi="1638" he="136" /></maths>其中:<img file="FDA0000959825290000035.GIF" wi="382" he="143" />n<sub>1</sub>为入库作业数量;n<sub>2</sub>为出库作业数量。在实际工况中,堆垛机所接到的任务数量大,因此在式(3)中,堆垛机的运动时长因任务排序的不同而存在较大差异,如采用枚举法一一列出,将消耗较长时间进行运算;故必须给出一种智能优化算法,用于求得该模型的最优解:运用遗传算法的全局寻优特性,并采用货位‑出/入库台联合信息编码方式,对式(3)进行最优解的计算,可以更加快速且准确的得到堆垛机最优调度路径;货位‑出/入库台联合信息编码表示如下:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>A</mi><mo>=</mo><mo>|</mo><mtable><mtr><mtd><msub><mi>a</mi><mrow><mn>1</mn><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mn>1</mn><mi>y</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mn>1</mn><mi>I</mi><mi>O</mi><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>a</mi><mrow><mn>2</mn><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mn>2</mn><mi>y</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mn>2</mn><mi>I</mi><mi>O</mi><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mn>2</mn></msub></mtd></mtr><mtr><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd></mtr><mtr><mtd><msub><mi>a</mi><mrow><mi>i</mi><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mi>i</mi><mi>y</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mi>i</mi><mi>I</mi><mi>O</mi><mi>x</mi></mrow></msub></mtd><mtd><mi>a</mi></mtd></mtr><mtr><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd></mtr><mtr><mtd><msub><mi>a</mi><mrow><mi>k</mi><mi>x</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mi>k</mi><mi>y</mi></mrow></msub></mtd><mtd><msub><mi>a</mi><mrow><mi>k</mi><mi>I</mi><mi>O</mi><mi>x</mi></mrow></msub></mtd><mtd><mi>a</mi></mtd></mtr></mtable><mo>|</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000959825290000036.GIF" wi="1142" he="452" /></maths>其中:k为出/入库任务数量;a<sub>ix</sub>和a<sub>iy</sub>为第i条任务中货物所对应的货位坐标;<img file="FDA0000959825290000041.GIF" wi="78" he="55" />和<img file="FDA0000959825290000042.GIF" wi="82" he="55" />为第i条任务中的货物所对应的出/入库台坐标;基于上述编码表示方式,DC和SC作业方式任务序列表示为:<img file="FDA0000959825290000044.GIF" wi="1118" he="64" /><img file="FDA0000959825290000043.GIF" wi="1118" he="143" />其中:D为根据所给出任务序列A生成的复合命令作业序列;S为根据所给出任务序列A生成的单一命令作业序列;A<sub>DI</sub>和A<sub>DO</sub>分别为复合命令序列的入库和出库序列;A<sub>SI</sub>和A<sub>SO</sub>为可形成单一命令序列的入库或入库序列;运用遗传算法,结合(5)、(6)、(7)式的编码方式,即求得式(4)的最优解。
地址 710055 陕西省西安市雁塔路13号