CN107704960A - 一种基于mas的自动化集装箱码头堆场双armg调度方法 - Google Patents
一种基于mas的自动化集装箱码头堆场双armg调度方法 Download PDFInfo
- Publication number
- CN107704960A CN107704960A CN201710931186.6A CN201710931186A CN107704960A CN 107704960 A CN107704960 A CN 107704960A CN 201710931186 A CN201710931186 A CN 201710931186A CN 107704960 A CN107704960 A CN 107704960A
- Authority
- CN
- China
- Prior art keywords
- mrow
- agent
- task
- stockyard
- case
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 10
- 239000003795 chemical substances by application Substances 0.000 claims description 106
- 238000005457 optimization Methods 0.000 claims description 36
- 230000007306 turnover Effects 0.000 claims description 31
- 239000003016 pheromone Substances 0.000 claims description 27
- 235000015170 shellfish Nutrition 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 20
- 238000011835 investigation Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000009826 distribution Methods 0.000 claims description 7
- 238000005096 rolling process Methods 0.000 claims description 6
- 230000008676 import Effects 0.000 claims description 4
- 241000257303 Hymenoptera Species 0.000 claims description 3
- 238000013459 approach Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000012856 packing Methods 0.000 claims description 3
- 230000037361 pathway Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims description 3
- 238000002156 mixing Methods 0.000 claims description 2
- 238000012790 confirmation Methods 0.000 claims 2
- 230000035772 mutation Effects 0.000 claims 1
- 230000006399 behavior Effects 0.000 abstract 1
- 238000011160 research Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 210000004209 hair Anatomy 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- General Health & Medical Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Educational Administration (AREA)
- Life Sciences & Earth Sciences (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及集装箱运输领域,特别是涉及一种用于自动化集装箱码头堆场轨道式龙门起重机(ARMG)对进出口集装箱调度的方法,包括自动化集装箱码头堆场装卸设备、信息Agent,船舶Agent,堆场Agent,优化Agent和用户Agent。所述双ARMG调度系统抽象为具有一系列行为和属性的智能体,依据各智能体之间相互独立又通过信息共享相互协作完成双ARMG的调度。
Description
技术领域
本发明涉及集装箱运输领域,特别是自动化集装箱码头堆场对进出口集装箱装的调度领域。
背景技术
随着经济全球化以及世界贸易的发展,集装箱运输持续快速增长。集装箱吞吐量的增加以及船舶的大型化、高速化给集装箱码头生产管理提出了更高的要求。集装箱存储选位和双ARMG的调度是自动化集装箱码头堆场中的两个重要研究内容。装卸设备的合理调度是提高码头效率的关键内容之一,又由于大部分集装箱运输在自动化码头堆场的开始或结束位置,合理分配集装箱的堆存位置不仅能减少翻箱率而且能提高码头的运行效率。
尽管在自动化集装箱码头的研究中,调度问题和集装箱存储问题已经得到了广泛关注,但是双ARMG的调度和集装箱堆存位置的选择及翻箱问题相互影响,研究双ARMG的调度同时考虑集装箱的存储选位及翻箱问题并不多,而基于MAS研究堆场中进出口集装箱双ARMG的调度同时考虑集装箱的存储选位及翻箱问题还没有涉及。MAS是具有一定资源和能力、相对独立且相互作用的Agent组成的系统,具有分布式并行处理、可伸缩性、可维护性等特点,非常适用于多变的分布式复杂系统调度优化问题。基于此,本发明提出了一种基于MAS的自动化集装箱码头堆场双ARMG调度方法来提高码头的作业效率。
发明内容
本发明针对自动化集装箱码头堆场不可相互穿越的双ARMG调度问题,提出了一种运用MAS的方法来改进双ARMG的调度策略。MAS(Multi-Agent System)是多个智能体(Agent)组成的集合,Agent是一个具有适应性和智能性的软件实体,能代替用户或其他程序,以主动服务的方式完成一项工作。ARMG(Automated Rail-Mounted Gantry)是指自动化轨道式龙门起重机,在自动化集装箱码头堆场中用于装卸作业,每个箱区的ARMG是固定的,不会出现跨箱区作业的情况,集装箱只能在堆场的两端进行交互作业。在本发明中,建立了5类Agent:信息Agent,船舶Agent,堆场Agent,优化Agent和用户Agent,这5类Agent之间相互协作,共同完成进出口集装箱作业,这样可以使得双ARMG调度效率更高。
该双ARMG对进出口集装箱的调度方法主要包括以下步骤:
步骤一、判断当前任务是装载出口集装箱还是卸载进口箱。若当前任务是装载出口箱,则执行步骤二,否则,执行步骤八;
步骤二、若当前任务是装载出口箱,此时,船舶请求装载出口箱,经船舶Agent发送装载出口箱请求给堆场Agent和用户Agent,同时实时查询堆场状态功能;
步骤三、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送请求确认信息,并查询堆场箱区的数据库获取目标集装箱的准确位置并返回给船舶Agent;
步骤四、船舶Agent通过查询堆场箱区的数据库获取目标箱所在位置状态,判断目标箱上方是否有箱,若无,则发送提箱号、当前贝位、排、层状态等数据给优化Agent进行双ARMG优化调度,双ARMG调度如下:
1)首先定义目标函数和适应度函数,然后加入一个虚拟点随机生成一组实数编码;
2)根据适应度函数选择父代X、Y,对X、Y进行适应度值交叉计算,并通过递归迭代生成若干组优化解;
3)初始化蚁群算法中的参数,并根据优化解生成信息素初始分布;
4)选择靠近两个ARMG初始位置最近的集装箱作为m只蚂蚁路径的起点;
5)由出口集装箱的位置和调度规则采用集装箱任务间的转移概率和蚂蚁在当前任务转移到下一任务的概率转移函数逐渐确定后续的集装箱任务:
P(k)=[τ(i,k)]α·[s(i,k)]β,i∈tabu,k∈allow (1)
式中,P(k)表示蚂蚁在集装箱k处的概率值;s(i,k)表示集装箱任务k的评分值;τ(i,k)为信息素矩阵中第i行第k列的值;tabu为禁忌表记录已访问的任务;allow为未访问任务的集合;α为信息重要度因子;β为启发式函数重要度因子。
调度规则为:ARMG的重进重出r1,即当前任务若为卸载任务,则下一个任务希望是装载任务,其权重值为g1;ARMG与任务的起始位置的距离r2,其权重为g2;任务的性质(接力任务或主任务,主任务的优先级高于接力任务)r3,其权重为g3;翻箱r4,其权重为g4;根据公式得到任务I的评分,其中r1,r3,r4为0-1变量。
6)当所有蚂蚁完成一次路径巡访,即完成一次搜索后需要进行信息素更新。根据下面两个式子进行信息素更新:
τ(t+1)(i,j)=(1-ε)·τt(i,j)+ε·Δτ(i,j),0<ε<1 (3)
式中,τ(t+1)(i,j)表示第t+1次搜索中任务i与j之间的信息浓度;Δτ(i,j)表示蚁群任务i与j之间释放信息素浓度;ε表示信息素的挥发程度,τt(i,j)表示第t次搜索中任务i与j之间的信息素浓度;Δτ为一个矩阵,表示蚁群在任务间释放的信息素浓度矩阵;Δτq(i,j)表示第q只蚂蚁在任务i和j之间释放的信息素浓度。
7)剔除对不满足两ARMG之间具有2个贝位的安全距离的约束和不满足路径要求的解。
8)重复上述步骤,更新信息素和剔除不满足条件的解,当算法运行次数达到设定值时,停止计算,输出最优解和最优目标值。
若目标箱上方有集装箱,则先发送提箱号、当前贝位状态等数据给优化Agent进行翻箱落位优化计算,然后再进行双ARMG调度优化进行调度作业;翻箱落位优选计算如下:
首先对该算法做出以下假设:翻箱在同贝内进行;提箱序列;和贝内箱分布已知;提箱过程中贝内无新箱进场。采用下述两个公式选取翻箱增加量最小的考察栈为翻箱最佳落箱位:
式中,e为剩余空箱数;n为栈内箱号最小编号;pro为非考察栈内箱编号;p(e,n,pro)为箱pro翻倒到考察栈可能性代表值;a为候选栈最小箱序总和,候选栈就是除当前翻倒箱以外的贝内其他栈;b为考察栈箱序总和;E(0,n)=0。
步骤五、优化Agent返回优化结果给堆场Agent,堆场Agent输出优化结果并发送结果给用户Agent,然后更新目标箱所在贝、排、层的状态及堆场箱区数据库;
步骤六、判断是否需要翻箱,若需要翻箱,则重复步骤三和步骤四直至可直接提取到目标箱为止,然后对目标箱进行调度;若无需翻箱,则直接对目标集装箱进行调度;并更新堆场的箱位信息,当前任务调度结束;
步骤七、判断下一集装箱任务。若下一任务是卸载进口箱,则执行步骤八;若下一任务是装载出口箱,则执行步骤二;否则执行步骤十二;
步骤八、船舶请求卸载进口箱,经船舶Agent发送卸载进口箱请求给堆场Agent和用户Agent;步骤九、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送确认请求,并查询堆场箱区数据库获取进口箱存储选位初始调度方案等优化数据,向优化Agent发送进口箱存储选位和双ARMG调度优化请求和相关数据;其中,进口箱存储选位如下:
进口箱存储选位分为两个阶段,形成两级调度。第一级,在滚动调度基础上,首先根据预约进口箱信息根据启发式算法为即将进入堆场的进口箱优化分配箱位,形成初始调度方案;第二级,当进口箱进入堆场时和出口箱出堆场时,根据动态装卸载进出口箱信息进一步优化初始调度方案中的进场箱箱位,生成再调度方案,根据实时调度,更新再调度初始方案。
步骤十、优化Agent收到堆场Agent发送的优化请求及相关数据后,对进口箱存储选位进行优化及双ARMG调度进行优化,并返回计算结果给堆场Agent;
步骤十一、堆场Agent收到优化Agent发送的结果,输出进口箱存储选位和双ARMG调度优化结果并将其转发给用户Agent,然后更新箱区数据库;
步骤十二、判断预约箱量是否调度完毕,若调度完毕,则发送消息给消息Agent进行下一轮滚动调度,得到初始调度方案;否则执行步骤七。
本发明具有如下效果和优点:
本发明采用多智能体的方法进行双ARMG调度,根据堆场系统的复杂性,该方法能够提高双ARMG调度的实时性和鲁棒性。它能根据堆场的箱区信息得到进口集装箱的合适存储位置和双ARMG调度的合适序列,减少集装箱的翻箱率、提高码头堆场的作业效率。
附图说明
图1为自动化集装箱堆场双ARMG调度多Agent系统框图
图2为多Agent协作完成调度过程示意图
图3为GAAA流程图
图4为集装箱存储选位的两级调度流程图
具体实施方式
在本发明中,如图1所示,建立了5类Agent:信息Agent,船舶Agent,堆场Agent,优化Agent和用户Agent,这5类Agent采用点对点方式进行通信,相互协作,共同完成进出口集装箱作业。数据库主要包括堆场状态、装卸载进出口箱序列、调度方案等信息数据。知识库主要包括箱操作和数据更新知识,供Agent群使用。下面结合图2对本发明作进一步详细描述:
步骤一、判断当前任务是装载出口集装箱还是卸载进口箱。若当前任务是装载出口箱,则执行步骤二,否则,执行步骤八;
步骤二、若当前任务是装载出口箱,此时,船舶请求装载出口箱,经船舶Agent发送装载出口箱请求给堆场Agent和用户Agent,同时实时查询堆场状态功能;
步骤三、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送请求确认信息,并查询堆场箱区的数据库获取目标集装箱的准确位置并返回给船舶Agent;
步骤四、船舶Agent通过查询堆场箱区的数据库获取目标箱所在位置状态,判断目标箱上方是否有箱,若无,则发送提箱号、当前贝位、排、层状态等数据给优化Agent进行双ARMG优化调度,如图3所示,采用遗传与蚁群融合算法(GAAA)进行双ARMG调度,调度步骤如下:
1)首先定义目标函数和适应度函数,然后加入一个虚拟点随机生成一组实数编码;
2)根据适应度函数选择父代X、Y,对X、Y进行适应度值交叉计算,并通过递归迭代生成若干组优化解;
3)初始化蚁群算法中的参数,并根据优化解生成信息素初始分布;
4)选择靠近两个ARMG初始位置最近的集装箱作为m只蚂蚁路径的起点;
5)由出口集装箱的位置和调度规则采用集装箱任务间的转移概率和蚂蚁在当前任务转移到下一任务的概率转移函数逐渐确定后续的集装箱任务:
P(k)=[τ(i,k)]α·[s(i,k)]β,i∈tabu,k∈allow (1)
式中,P(k)表示蚂蚁在集装箱k处的概率值;s(i,k)表示集装箱任务k的评分值;τ(i,k)为信息素矩阵中第i行第k列的值;tabu为禁忌表记录已访问的任务;allow为未访问任务的集合;α为信息重要度因子;β为启发式函数重要度因子。
调度规则为:ARMG的重进重出r1,即当前任务若为卸载任务,则下一个任务希望是装载任务,其权重值为g1;ARMG与任务的起始位置的距离r2,其权重为g2;任务的性质,是接力任务还是主任务为r3,其权重为g3;翻箱r4,其权重为g4;根据公式得到任务I的评分,其中r1,r3,r4为0-1变量。
6)当所有蚂蚁完成一次路径巡访,即完成一次搜索后需要进行信息素更新。根据下面两个式子进行信息素更新:
τ(t+1)(i,j)=(1-ε)·τt(i,j)+ε·Δτ(i,j),0<ε<1 (3)
式中τ(t+1)(i,j)表示第t+1次搜索中任务i与j之间的信息浓度;Δτ(i,j)表示蚁群任务i与j之间释放信息素浓度;ε表示信息素的挥发程度,τt(i,j)表示第t次搜索中任务i与j之间的信息素浓度;Δτ为一个矩阵,表示蚁群在任务间释放的信息素浓度矩阵;Δτq(i,j)表示第q只蚂蚁在任务i和j之间释放的信息素浓度。
7)对不满足两ARMG之间具有2个贝位的安全距离的约束和不满足路径要求的解,需剔除。
8)重复上述步骤,更新信息素浓度和剔除不满足条件的解,当算法运行次数达到设定值时,停止计算,输出最优解和最优目标值。
若目标箱上方有集装箱,则先发送提箱号、当前贝位状态等数据给优化Agent进行翻箱落位优化计算,然后再进行双ARMG调度优化进行调度作业;翻箱落位优选计算如下:
首先对该算法做出以下假设:翻箱在同贝内进行;提箱序列;和贝内箱分布已知;提箱过程中贝内无新箱进场。采用下面两个公式选取翻箱增加量最小的考察栈为翻箱最佳落箱位。
式中,e为剩余空箱数;n为栈内箱号最小编号;pro为非考察栈内箱编号;p(e,n,pro)为箱pro翻倒到考察栈可能性代表值;a为候选栈(除当前翻倒箱以外的贝内其他栈)最小箱序总和;b为考察栈箱序总和;E(0,n)=0。
步骤五、优化Agent返回优化结果给堆场Agent,堆场Agent输出优化结果并发送结果给用户Agent,然后更新目标箱所在贝、排、层的状态及堆场箱区数据库;
步骤六、判断是否需要翻箱,重复步骤三和步骤四直至可直接提取到目标箱为止,对目标箱进行调度,并更新堆场的箱位信息,完成当前的调度任务。
步骤七、判断下一集装箱任务。若下一任务是卸载进口箱,则执行步骤八;若下一任务是装载出口箱,则执行步骤二;否则执行步骤十二;
步骤八、船舶请求卸载进口箱,经船舶Agent发送卸载进口箱请求给堆场Agent和用户Agent;步骤九、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送确认请求,并查询堆场箱区数据库获取进口箱存储选位初始调度方案等优化数据,向优化Agent发送进口箱存储选位和双ARMG调度优化请求和相关数据;如图4所示,进口箱存储选位如下:
进口箱存储选位分为两个阶段,形成两级调度。第一级,在滚动调度基础上,首先根据预约进口箱信息根据启发式算法为即将进入堆场的进口箱优化分配箱位,形成初始调度方案;第二级,当进口箱进入堆场时和出口箱出堆场时,根据动态装卸载进出口箱信息进一步优化初始调度方案中的进场箱箱位,生成再调度方案,根据实时调度,更新再调度初始方案。
步骤十、优化Agent收到堆场Agent发送的优化请求及相关数据后,对进口箱存储选位进行优化及双ARMG调度进行优化,并返回计算结果给堆场Agent;
步骤十一、堆场Agent收到优化Agent发送的结果,输出进口箱存储选位和双ARMG调度优化结果并将其转发给用户Agent,然后更新箱区数据库;
步骤十二、判断预约箱量是否调度完毕,则发送消息给消息Agent进行下一轮滚动调度,得到初始调度方案。
Claims (1)
1.一种基于MAS的自动化集装箱码头堆场双ARMG调度方法,其特征在于包括以下步骤:
步骤一、判断当前任务是装载出口箱还是卸载进口箱;若当前任务是装载出口箱,则执行步骤二,否则,执行步骤八;
步骤二、船舶请求装载出口箱,经船舶Agent发送装载出口箱请求给堆场Agent和用户Agent,同时实时查询堆场状态功能;
步骤三、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送请求确认信息,并查询堆场箱区的数据库获取目标集装箱的准确位置并返回给船舶Agent;
步骤四、船舶Agent通过查询堆场箱区的数据库获取目标箱所在位置状态,判断目标箱上方是否有箱,若无,则发送提箱号、当前贝位、排、层状态等数据给优化Agent进行双ARMG优化调度,采用遗传蚁群融合算法对双ARMG调度的算法步骤如下:
1)首先定义目标函数和适应度函数,然后加入一个虚拟点随机生成一组实数编码;
2)根据适应度函数选择父代X、Y,对X、Y进行选择、交叉、变异操作生成若干组优化解;
3)初始化蚁群算法中的参数,并根据优化解生成信息素初始分布;
4)选择靠近两个ARMG初始位置最近的集装箱作为m只蚂蚁路径的起点;
5)由出口集装箱的位置和调度规则采用集装箱任务间的转移概率和蚂蚁当前任务转移到下一任务的概率转移函数逐渐确定后续的集装箱任务:
P(k)=[τ(i,k)]α·[s(i,k)]β,i∈tabu,k∈allow (1)
<mrow>
<mi>P</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<msup>
<mrow>
<mo>&lsqb;</mo>
<mi>&tau;</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mi>&alpha;</mi>
</msup>
<mo>&CenterDot;</mo>
<msup>
<mrow>
<mo>&lsqb;</mo>
<mi>s</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mi>&beta;</mi>
</msup>
</mrow>
<mrow>
<munder>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>&Element;</mo>
<mi>a</mi>
<mi>l</mi>
<mi>l</mi>
<mi>o</mi>
<mi>w</mi>
</mrow>
</munder>
<msup>
<mrow>
<mo>&lsqb;</mo>
<mi>&tau;</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mi>&alpha;</mi>
</msup>
<mo>&CenterDot;</mo>
<msup>
<mrow>
<mo>&lsqb;</mo>
<mi>s</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mi>&beta;</mi>
</msup>
</mrow>
</mfrac>
<mo>,</mo>
<mi>j</mi>
<mo>&Element;</mo>
<mi>a</mi>
<mi>l</mi>
<mi>l</mi>
<mi>o</mi>
<mi>w</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,P(k)表示蚂蚁在集装箱k处的概率值;s(i,k)表示集装箱任务k的评分值;τ(i,k)为信息素矩阵中第i行第k列的值;tabu为禁忌表记录已访问的任务;allow为未访问任务的集合;α为信息重要度因子;β为启发式函数重要度因子;
调度规则为:ARMG的重进重出r1,即当前任务若为卸载任务,则下一个任务希望是装载任务,其权重值为g1;ARMG与任务的起始位置的距离r2,其权重为g2;任务的性质,接力任务或主任务为r3,其权重为g3;翻箱r4,其权重为g4;根据公式得到任务I的评分,其中r1,r3,r4为0-1变量;
6)当所有蚂蚁完成一次路径巡访,即完成一次搜索后需要进行信息素更新。根据下面两个式子进行信息素更新:
τ(t+1)(i,j)=(1-ε)·τt(i,j)+ε·Δτ(i,j),0<ε<1 (3)
<mrow>
<mi>&Delta;</mi>
<mi>&tau;</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munder>
<mo>&Sigma;</mo>
<mi>q</mi>
</munder>
<msup>
<mi>&Delta;&tau;</mi>
<mi>q</mi>
</msup>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,τ(t+1)(i,j)表示第t+1次搜索中任务i与j之间的信息浓度;Δτ(i,j)表示蚁群任务i与j之间释放信息素浓度;ε表示信息素的挥发程度,τt(i,j)表示第t次搜索中任务i与j之间的信息素浓度;Δτ为一个矩阵,表示蚁群在任务间释放的信息素浓度矩阵;Δτq(i,j)表示第q只蚂蚁在任务i和j之间释放的信息素浓度;
7)剔除不满足两ARMG之间具有2个贝位的安全距离的约束和不满足路径要求的解;
8)重复上述步骤,更新信息素和剔除不满足条件的解,当算法运行次数达到设定值时,停止计算,输出最优解和最优目标值;
若目标箱上方有集装箱,则先发送提箱号、当前贝位状态等数据给优化Agent进行翻箱落位优化计算,然后再进行双ARMG调度优化进行调度作业;翻箱落位优选计算如下:
首先对该算法做出以下假设:翻箱在同贝内进行;提箱序列;和贝内箱分布已知;提箱过程中贝内无新箱进场;采用下述两个公式选取翻箱增加量最小的考察栈为翻箱最佳落箱位;
<mrow>
<mi>E</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>e</mi>
<mo>,</mo>
<mi>n</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>e</mi>
<mo>,</mo>
<mi>n</mi>
<mo>,</mo>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mrow>
<mo>&lsqb;</mo>
<mrow>
<mn>0</mn>
<mo>+</mo>
<mi>E</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>e</mi>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
<mo>=</mo>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>e</mi>
<mo>,</mo>
<mi>n</mi>
<mo>,</mo>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
</mrow>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mrow>
<mo>&lsqb;</mo>
<mrow>
<mn>1</mn>
<mo>+</mo>
<mi>E</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>e</mi>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
<mi>n</mi>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mo>&rsqb;</mo>
</mrow>
<mo>,</mo>
<mi>e</mi>
<mo>&GreaterEqual;</mo>
<mn>1</mn>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mi>e</mi>
<mo>,</mo>
<mi>n</mi>
<mo>,</mo>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<mn>2</mn>
<mo>*</mo>
<mi>p</mi>
<mi>r</mi>
<mi>o</mi>
</mrow>
<mrow>
<mi>N</mi>
<mrow>
<mo>(</mo>
<mi>N</mi>
<mo>-</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mn>2</mn>
<mi>b</mi>
</mrow>
</mfrac>
<mo>*</mo>
<mfrac>
<mi>n</mi>
<mi>a</mi>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
式中,e为剩余空箱数;n为栈内箱号最小编号;pro为非考察栈内箱编号;p(e,n,pro)为箱pro翻倒到考察栈可能性代表值;a为候选栈最小箱序总和,候选栈就是指除当前翻倒箱以外的贝内其他栈;b为考察栈箱序总和;E(0,n)=0;
步骤五、优化Agent返回优化结果给堆场Agent,堆场Agent输出优化结果并发送结果给用户Agent,然后更新目标箱所在贝、排、层的状态及堆场箱区数据库;
步骤六、判断是否需要翻箱,若需要翻箱,则重复步骤三和步骤四直至可直接提取到目标箱为止,然后对目标箱进行调度;若无需翻箱,则直接对目标集装箱进行调度;并更新堆场的箱位信息,当前任务调度结束;
步骤七、判断下一集装箱任务,若下一任务是卸载进口箱,则执行步骤八;若下一任务是装载出口箱,则执行步骤二;否则执行步骤十二;
步骤八、船舶请求卸载进口箱,经船舶Agent发送卸载进口箱请求给堆场Agent和用户Agent;
步骤九、堆场Agent收到船舶Agent发送的请求信息后,向用户Agent发送确认请求,并查询堆场箱区数据库获取进口箱存储选位初始调度方案等优化数据,向优化Agent发送进口箱存储选位和双ARMG调度优化请求和相关数据;其中,进口箱存储选位如下:
进口箱存储选位分为两个阶段,形成两级调度;第一级,在滚动调度基础上,首先根据预约进口箱信息根据启发式算法为即将进入堆场的进口箱优化分配箱位,形成初始调度方案;第二级,当进口箱进入堆场时和出口箱出堆场时,根据动态装卸载进出口箱信息进一步优化初始调度方案中的进场箱箱位,生成再调度方案,根据实时调度,更新再调度初始方案;
步骤十、优化Agent收到堆场Agent发送的优化请求及相关数据后,对进口箱存储选位进行优化及双ARMG调度进行优化,并返回计算结果给堆场Agent;
步骤十一、堆场Agent收到优化Agent发送的结果,输出进口箱存储选位和双ARMG调度优化结果并将其转发给用户Agent,然后更新箱区数据库;
步骤十二、判断预约箱量是否调度完毕,若调度完毕,则发送消息给消息Agent进行下一轮滚动调度,得到初始调度方案;否则执行步骤七。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710931186.6A CN107704960B (zh) | 2017-10-09 | 2017-10-09 | 一种基于mas的自动化集装箱码头堆场双armg调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710931186.6A CN107704960B (zh) | 2017-10-09 | 2017-10-09 | 一种基于mas的自动化集装箱码头堆场双armg调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107704960A true CN107704960A (zh) | 2018-02-16 |
CN107704960B CN107704960B (zh) | 2021-07-20 |
Family
ID=61184903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710931186.6A Active CN107704960B (zh) | 2017-10-09 | 2017-10-09 | 一种基于mas的自动化集装箱码头堆场双armg调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107704960B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446852A (zh) * | 2018-03-23 | 2018-08-24 | 西北工业大学 | 一种多主体调度分段式协调优化方法 |
CN109816242A (zh) * | 2019-01-23 | 2019-05-28 | 上海海事大学 | 一种用于自动化集装箱码头的集成调度方法 |
CN111932203A (zh) * | 2020-08-03 | 2020-11-13 | 上海海勃物流软件有限公司 | 箱区集装箱翻箱自动选位分配方法、终端以及介质 |
CN113687876A (zh) * | 2021-08-17 | 2021-11-23 | 华北电力大学(保定) | 信息处理方法、自动驾驶控制方法和电子设备 |
CN114394440A (zh) * | 2022-01-29 | 2022-04-26 | 北京百度网讯科技有限公司 | 集装箱的堆叠处理方法、装置、设备、存储介质及产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101585453A (zh) * | 2008-05-20 | 2009-11-25 | 上海海事大学 | 集装箱码头出口箱堆场分配方法 |
CN101751622A (zh) * | 2009-12-22 | 2010-06-23 | 武汉理工大学 | 大型集装箱码头出口箱装船前预翻箱整理方法 |
CN102214321A (zh) * | 2011-07-14 | 2011-10-12 | 大连海事大学 | 一种三维集装箱装载布局优化方法及系统 |
CN107055116A (zh) * | 2017-06-07 | 2017-08-18 | 大连大学 | 集装箱自动化码头协同作业系统及卸载最短路径搜索方法 |
-
2017
- 2017-10-09 CN CN201710931186.6A patent/CN107704960B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101585453A (zh) * | 2008-05-20 | 2009-11-25 | 上海海事大学 | 集装箱码头出口箱堆场分配方法 |
CN101751622A (zh) * | 2009-12-22 | 2010-06-23 | 武汉理工大学 | 大型集装箱码头出口箱装船前预翻箱整理方法 |
CN102214321A (zh) * | 2011-07-14 | 2011-10-12 | 大连海事大学 | 一种三维集装箱装载布局优化方法及系统 |
CN107055116A (zh) * | 2017-06-07 | 2017-08-18 | 大连大学 | 集装箱自动化码头协同作业系统及卸载最短路径搜索方法 |
Non-Patent Citations (3)
Title |
---|
周鹏飞: "集装箱堆场收发箱管理Multi_Agent系统研究", 《大连理工大学学报》 * |
赵成: "集装箱码头进口箱堆存优化问题研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
郑红星: "单船岸桥分配与调度集成优化模型", 《计算机应用》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446852A (zh) * | 2018-03-23 | 2018-08-24 | 西北工业大学 | 一种多主体调度分段式协调优化方法 |
CN108446852B (zh) * | 2018-03-23 | 2021-07-30 | 西北工业大学 | 一种多主体调度分段式协调优化方法 |
CN109816242A (zh) * | 2019-01-23 | 2019-05-28 | 上海海事大学 | 一种用于自动化集装箱码头的集成调度方法 |
CN111932203A (zh) * | 2020-08-03 | 2020-11-13 | 上海海勃物流软件有限公司 | 箱区集装箱翻箱自动选位分配方法、终端以及介质 |
CN111932203B (zh) * | 2020-08-03 | 2021-06-22 | 上海海勃物流软件有限公司 | 箱区集装箱翻箱自动选位分配方法、终端以及介质 |
CN113687876A (zh) * | 2021-08-17 | 2021-11-23 | 华北电力大学(保定) | 信息处理方法、自动驾驶控制方法和电子设备 |
CN113687876B (zh) * | 2021-08-17 | 2023-05-23 | 华北电力大学(保定) | 信息处理方法、自动驾驶控制方法和电子设备 |
CN114394440A (zh) * | 2022-01-29 | 2022-04-26 | 北京百度网讯科技有限公司 | 集装箱的堆叠处理方法、装置、设备、存储介质及产品 |
CN114394440B (zh) * | 2022-01-29 | 2024-04-16 | 北京百度网讯科技有限公司 | 集装箱的堆叠处理方法、装置、设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN107704960B (zh) | 2021-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107704960A (zh) | 一种基于mas的自动化集装箱码头堆场双armg调度方法 | |
CN105836356B (zh) | 一种密集仓储系统混合优化调度方法 | |
CN103413209B (zh) | 多客户多仓库物流配送路径选择方法 | |
CN103473616A (zh) | 用于处理多品种物资仓储的动态货位分配规划方法与系统 | |
CN109345017A (zh) | 一种考虑装箱约束的车间物料配送优化方法 | |
CN111091238A (zh) | 一种自动化集装箱码头agv智能化调度方法 | |
CN103246941B (zh) | 一种出口集装箱码头堆存空间调度方法 | |
Zhang et al. | An effective multi-AGVs dispatching method applied to matrix manufacturing workshop | |
CN108438689A (zh) | 一种基于智能立体仓库的拆零缓存方法及仓储系统 | |
CN107967586A (zh) | 一种电网物资仓储优化方法 | |
CN107578197A (zh) | 需求不确定的混流生产线物流车辆调度区域优化方法 | |
CN109597304A (zh) | 基于人工蜂群算法的模具库智能分区存储方法 | |
CN105858043B (zh) | 一种升降机与穿梭车结合的仓储系统优化调度方法 | |
CN107230023A (zh) | 基于改进和声搜索的生产和运输协同调度方法和系统 | |
CN106773686A (zh) | 同轨双车运行模式下堆垛机调度路径模型建立方法 | |
Kumar et al. | Managing warehousing in an agile supply chain environment: an F-AIS algorithm based approach | |
CN109359771A (zh) | 一种基于大数据的干线运输车货匹配算法 | |
Singh et al. | Carton Set Optimization in E‐commerce Warehouses: A Case Study | |
Lu | The Three‐Stage Integrated Optimization of Automated Container Terminal Scheduling Based on Improved Genetic Algorithm | |
CN113050644A (zh) | 基于迭代贪婪进化的agv调度方法 | |
CN112149876A (zh) | 求解矩阵制造车间多自动轨道小车上料调度问题的人工蜂群算法 | |
Tao et al. | A metaheuristic algorithm to transporter scheduling for assembly blocks in a shipyard considering precedence and cooperating constraints | |
Liu et al. | A co-evolutionary design methodology for complex AGV system | |
CN115293670A (zh) | 基于混合元启发式算法的自动配送中心订单分拣方法 | |
Birasnav et al. | Routing vehicles through cross-docking facility for third party logistics service providers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |