CN101620693A - 运输适时调度方法 - Google Patents

运输适时调度方法 Download PDF

Info

Publication number
CN101620693A
CN101620693A CN200810039991A CN200810039991A CN101620693A CN 101620693 A CN101620693 A CN 101620693A CN 200810039991 A CN200810039991 A CN 200810039991A CN 200810039991 A CN200810039991 A CN 200810039991A CN 101620693 A CN101620693 A CN 101620693A
Authority
CN
China
Prior art keywords
incident
vehicle
task
pond
change
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.)
Pending
Application number
CN200810039991A
Other languages
English (en)
Inventor
金焰
吴守仓
罗一桥
卢燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MCC Baosteel Technology Services Co Ltd
Original Assignee
MCC Baosteel Technology Services Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by MCC Baosteel Technology Services Co Ltd filed Critical MCC Baosteel Technology Services Co Ltd
Priority to CN200810039991A priority Critical patent/CN101620693A/zh
Publication of CN101620693A publication Critical patent/CN101620693A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明揭示了一种运输适时调度方法,用于根据动态事件触发、调整现场运输调度作业;该方法根据事件的信息对事件做相应处理。本发明基于事件驱动的动态车辆优化调度,适时根据运输资源使用情况和未完成任务,提高运输资源使用效率。

Description

运输适时调度方法
技术领域
本发明涉及一种调度方法,尤其涉及一种运输适时调度方法。
背景技术
动态车辆调度是物流管理领域研究的前沿问题,目前,中国市场的运输优化系统软件几乎全部来自国外。在中国物流管理软件市场中排名前四位的博科、用友、金蝶和东软金算盘均没有提供运输资源决策支持功能,而仅涵盖物流业务的流程管理。
通过对国外同类运输优化软件的分析可知,如SAP、MANUGISTICS、Oracle、i2等提供的运输优化产品,定位比较单一,都只是解决车辆的路径优化问题,涵盖的约束也非常少,仅仅包含了时间窗的限制,并且均没有涉及到满载车辆的优化问题。
启发式搜索算法发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。这样可以省略大量无畏的搜索路径,提到了效率。在启发式搜索中,对位置的估价是十分重要的。采用了不同的估价可以有不同的效果。估价的表示方法如下。
启发中的估价是用估价函数表示的,如:f(n)=g(n)+h(n),其中f(n)是节点n的估价函数,g(n)实在状态空间中从初始节点到n节点的实际代价,h(n)是从n到目标节点最佳路径的估计代价。在这里主要是h(n)体现了搜索的启发信息。因为g(n)是已知的。如果说详细点,g(n)代表了搜索的广度的优先趋势。但是当h(n)>>g(n)时,可以省略g(n),而提高效率。
发明内容
本发明所要解决的技术问题是:提供一种根据动态事件触发、调整现场运输调度作业的运输适时调度方法。
为解决上述技术问题,本发明采用如下技术方案:
一种运输适时调度方法,用于根据动态事件触发、调整现场运输调度作业;该方法包括如下步骤:
步骤1、模型初始化,读入基础数据及参数,测试接口;若发现错误,做出提示并退出;
步骤2、计算车辆、任务匹配度;
步骤3、经调度确认后,模型计算初始指令,保存至数据库,做新指令标记;
步骤4、无匹配指令的任务和车辆进入各自就绪列表;
步骤5、扫描数据库及缓冲池,按队列取出当前第一个未处理事件;
步骤6、事件预处理;车辆状态转换包括状态A——到达装点、状态B——离开装点、状态C——到达卸点、状态D——离开卸点;事件包括车辆堵车事件、午饭启毕事件、车辆抛锚或修复事件、到达卸点事件、任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件;
步骤61、如果事件为池事件,则直接返回已经过预处理的该事件;
步骤62、根据车辆状态序列以及人工确定,判断事件是否为可响应事件:
对于车辆堵车事件,如果当前处于状态C、或状态D,则堵车信息不合法,移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,车辆状态为状态A、或状态B,检查该车和该事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于午饭启毕事件,检查合法性,包括:午饭开始是第一次出现,且符合时间窗口,午饭结束是午饭开始后第一次出现;如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空,否则,转步骤63;
对于车辆抛锚或修复事件,检查合法性,包括:当前状态是否为正常或故障,如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达装点事件,如当前非离开卸点状态,事件不合法,对于离开装点事件,如当前非离开卸点或到达装点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达卸点事件,如当前非离开装点状态,事件不合法,对于离开卸点事件,如当前非离开装点或到达卸点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
步骤63、首先通过车辆、任务或事件各自设定,判断事件是进入缓冲池还是立即响应;如为前者,标记后进入缓冲池,然后检查池是否慢,如不满,返回;否则,返回缓冲池;如为后者,返回该事件;
步骤7、若步骤6的返回值为空,则直接返回至步骤5;若返回值为事件,直接进入步骤8;若返回值为缓冲池,设置池事件启动标志,取其第一个事件,进入步骤8;
步骤8、若收到车辆堵车信息,进入步骤9;若收到车辆到装点或离开装点信息,进入步骤10;若收到车辆到卸点或离开卸点信息,进入步骤11;若收到开始午饭信息或抛锚信息,进入步骤12;若收到午饭结束信息或车辆修复信息,进入步骤13;若收到新任务信息,进入步骤14;若收到取消任务信息,进入步骤15;若收到任务量调整信息,进入步骤16;若收到任务卸点改变信息,进入步骤17;若收到天气变化信息,进入步骤18;若收到退出程序事件,进入步骤19;
步骤9、根据车辆选车函数,在所有任务或仅就绪任务列表中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表,转入步骤20;
指令审批处理步骤:
步骤A1、根据计算该指令的事件类型,通过参数设定检查是否可直接下发,如是,标记“直发”后返回该指令;否则转步骤A2;
步骤A2、询问用户是否满意该计划,如是,标记“满意”后返回该指令;否则转步骤A3;
步骤A3、询问是否调整该指令,如非,标记“取消”后返回该指令,否则返回调整后的指令,标记为“新调整”;
步骤10、更新车辆实时状态;根据到装点或离开装点类型更新任务的等待服务车辆列表,如果为离开装点事件,同时更新任务余量和任务的开始服务时间标记,如果当前等待队列为0,根据任务选车函数在就绪车辆中选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新车辆匹配度;如果返回指令为取消,则任务进入就绪任务列表;转入步骤20;
步骤11、更新车辆实时状态;如果事件为到卸点且无请求提前期,直接转步骤20;否则,更新车辆当前结束时间,根据车辆选车函数,在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤12、更新车辆午饭或可用否的实时状态,转入步骤20;
步骤13、更新车辆午饭或正常的实时状态,如果车辆处于C或D状态,转入20;否则根据当前位置在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤14、更新任务列表,更新匹配度,根据任务选车函数在所有车辆中或仅就绪车辆选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发;如果返回指令标记为取消,任务进入就绪列表;转入步骤20;
步骤15、更新任务列表,更新匹配度,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤16、更新任务列表,更新匹配度,当任务量减少时,检索该任务排队车辆和分配该任务指令车辆,按运量计算后对多余车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤17、更新任务表,更新匹配度,转入步骤20;
步骤18、更新任务表状态,对于变为停止状态的任务,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入20;
步骤19、保存后退出程序;
步骤20、主要处理池事件;检索临时池标志,如为真则取出临时池下一个标志,转步骤8;否则,更新主池,如果转入前处理的事件是主池池事件且主池不为空,则继续处理池事件,取主池中下一个事件,转步骤8;否则转步骤5。
作为本发明的一种优选方案,所述主池用来储存事件的缓冲池,池的长度决定调度的周期。
作为本发明的一种优选方案,所述临时池用来储存因某个事件而产生的一系列虚拟事件,池的大小表示触发的虚拟事件的数量,该池事件一经填充立即进行算法处理直至池空。
作为本发明的一种优选方案,所述步骤20中取主池中下一个事件后,取后主池事件为空设置主池空标志。
作为本发明的一种优选方案,所述车辆被船只、飞机所替代;同时还包括生产作业中的零部件调度,即如何动态按需调度这些零部件到组装线上;除此之外,还有炼钢工艺中的铁水运输所需的鱼雷车调度。
本发明提出的运输适时调度方法的有益效果在于:
(1)构造了考虑拥堵控制的满载模型,弥补以往满载调度研究的不足之处,并提出动态时间窗的概念并加以利用。
(2)该模型基于三维场景,并设计了高效快速的启发式模型求解算法。
(3)该模型和算法考虑了满载车辆调度中的各类约束,尤其是成功解决了满载中存在的车辆载重不统一和多货物匹配时的难题。
(4)提出把车辆调度优化和GPS/GPRS相结合的机制,使得调度管理更快捷,更高效,做到状态的适时控制。
(5)基于事件驱动的动态车辆优化调度,适时根据运输资源使用情况和未完成任务,提高运输资源使用效率。
附图说明
图1为本发明运输适时调度方法的流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
实施例一
请参阅图1,本发明揭示了一种运输适时调度方法,该方法用于根据钢铁物流运输现场中随时发生作业任务变更、作业车辆调整等事件,通过动态事件触发、调整现场运输调度作业。该方法包括如下步骤:
步骤1、模型初始化,读入基础数据及参数,测试接口;若发现错误,做出提示并退出;
步骤2、计算车辆、任务匹配度;
步骤3、经调度确认后,模型计算初始指令,保存至数据库,做新指令标记;
步骤4、无匹配指令的任务和车辆进入各自就绪列表;
步骤5、扫描数据库及缓冲池,按队列取出当前第一个未处理事件;
步骤6、事件预处理;车辆状态转换包括状态A——到达装点、状态B——离开装点、状态C——到达卸点、状态D——离开卸点;事件包括车辆堵车事件、午饭启毕事件、车辆抛锚或修复事件、到达卸点事件、任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件;
步骤61、如果事件为池事件,则直接返回已经过预处理的该事件;
步骤62、根据车辆状态序列以及人工确定,判断事件是否为可响应事件:
对于车辆堵车事件,如果当前处于状态C、或状态D,则堵车信息不合法,移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,车辆状态为状态A、或状态B,检查该车和该事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于午饭启毕事件,检查合法性,包括:午饭开始是第一次出现,且符合时间窗口,午饭结束是午饭开始后第一次出现;如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空,否则,转步骤63;
对于车辆抛锚或修复事件,检查合法性,包括:当前状态是否为正常或故障,如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达装点事件,如当前非离开卸点状态,事件不合法,对于离开装点事件,如当前非离开卸点或到达装点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达卸点事件,如当前非离开装点状态,事件不合法,对于离开卸点事件,如当前非离开装点或到达卸点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
步骤63、首先通过车辆、任务或事件各自设定,判断事件是进入缓冲池还是立即响应;如为前者,标记后进入缓冲池,然后检查池是否慢,如不满,返回;否则,返回缓冲池;如为后者,返回该事件;
步骤7、若步骤6的返回值为空,则直接返回至步骤5;若返回值为事件,直接进入步骤8;若返回值为缓冲池,设置池事件启动标志,取其第一个事件,进入步骤8;
步骤8、若收到车辆堵车信息,进入步骤9;若收到车辆到装点或离开装点信息,进入步骤10;若收到车辆到卸点或离开卸点信息,进入步骤11;若收到开始午饭信息或抛锚信息,进入步骤12;若收到午饭结束信息或车辆修复信息,进入步骤13;若收到新任务信息,进入步骤14;若收到取消任务信息,进入步骤15;若收到任务量调整信息,进入步骤16;若收到任务卸点改变信息,进入步骤17;若收到天气变化信息,进入步骤18;若收到退出程序事件,进入步骤19;
步骤9、根据车辆选车函数,在所有任务或仅就绪任务列表中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表,转入步骤20;
指令审批处理步骤:
步骤A1、根据计算该指令的事件类型,通过参数设定检查是否可直接下发,如是,标记“直发”后返回该指令;否则转步骤A2;
步骤A2、询问用户是否满意该计划,如是,标记“满意”后返回该指令;否则转步骤A3;
步骤A3、询问是否调整该指令,如非,标记“取消”后返回该指令,否则返回调整后的指令,标记为“新调整”;
步骤10、更新车辆实时状态;根据到装点或离开装点类型更新任务的等待服务车辆列表,如果为离开装点事件,同时更新任务余量和任务的开始服务时间标记,如果当前等待队列为0,根据任务选车函数在就绪车辆中选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新车辆匹配度;如果返回指令为取消,则任务进入就绪任务列表;转入步骤20;
步骤11、更新车辆实时状态;如果事件为到卸点且无请求提前期,直接转步骤20;否则,更新车辆当前结束时间,根据车辆选车函数,在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤12、更新车辆午饭或可用否的实时状态,转入步骤20;
步骤13、更新车辆午饭或正常的实时状态,如果车辆处于C或D状态,转入20;否则根据当前位置在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤14、更新任务列表,更新匹配度,根据任务选车函数在所有车辆中或仅就绪车辆选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发;如果返回指令标记为取消,任务进入就绪列表;转入步骤20;
步骤15、更新任务列表,更新匹配度,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤16、更新任务列表,更新匹配度,当任务量减少时,检索该任务排队车辆和分配该任务指令车辆,按运量计算后对多余车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤17、更新任务表,更新匹配度,转入步骤20;
步骤18、更新任务表状态,对于变为停止状态的任务,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入20;
步骤19、保存后退出程序;
步骤20、主要处理池事件;检索临时池标志,如为真则取出临时池下一个标志,转步骤8;否则,更新主池,如果转入前处理的事件是主池池事件且主池不为空,则继续处理池事件,取主池中下一个事件(取后为空设置主池空标志),转步骤8;否则转步骤5。所述主池用来储存事件的缓冲池,池的长度决定调度的周期;所述临时池用来储存因某个事件而产生的一系列虚拟事件,池的大小表示触发的虚拟事件的数量,该池事件一经填充立即进行算法处理直至池空。
实施例二
本实施例通过建立模型具体介绍运输适时调度方法中计算车、任务匹配度的工作原理及过程。
其模型如下:
A表示点集,包括重载点和车场(其中用Ai表示车场,Aj表示重载点)。有n项货运任务表示为Aj,1≤j≤n,Aj的货运量为Qj,Aj表示一个装卸过程,其装一车的时间为Pj,卸货时间设为Dj。[aj,bj]为任务Aj的时间窗,rj为Aj的装车数(有rj=[Qj/q]+1,[]表示小于括号内的最大整数)。有m个车场表示为Ai,n+1≤i≤n+m,Ai拥有的车辆数为ui,Vi u表示i车场的第u辆车,1≤u≤ui,其车速用Si u表示。车辆载重量均为q,每一项任务称为一个重载点,令且任一Qj>>q,车辆固定成本设为P,车辆最早开始时间为ei u,最长工作时间为li u,一般取定值L。
距离常量dij依i、j值而定义。当n+1≤i≤n+m和1≤j≤n时,则dij表示车场Ai到任务Aj的装点的距离;当1≤i,j≤n时,dij表示Ai的卸点到Aj的装点的距离;当1≤i≤n和n+1≤j≤n+m时,dij表示Ai的卸点到车场Aj的距离;当n+1≤i,j≤n+m时,dij表示一个很大的正数,这意味着从车场到车场的路线是没有意义的。下面是模型中用到的变量的定义:
Liu:Ai车场第u辆车路线的装车数,n+1≤i≤n+m,1≤u≤ui
Tiu w:Ai车场第u辆车到达路线上第w个装货点的时间,1≤w≤Liu,已知从车场出发时间设为 T iu 0 = e i u ;
Tjr:任务Aj装第r车的最早开始时间,1≤r≤rj,已知Tj1=aj
Yij su:非负整数变量,表示弧(i,j)在车场As的第u辆车的路线上出现的次数。弧的具体定义类似于dij,和i、j的值有关,在此不再赘述。
另外定义本文中用到的一个函数表达式F(x,y)如下所示:
显然,当x大于y时,F(x,y)表示x和y的差值,否则为0。
在上述变量定义基础上,有如下递推关系式:
T iu w = T iu w - 1 + Σ j = 1 n Σ r = 1 r j F ( T jr , T iu w - 1 ) X jr iu ( w - 1 )
+ Σ j = 1 n Σ r = 1 r j ( P j + D j ) X jr iu ( w - 1 )
+ Σ j = 1 n Σ r = 1 r j d jj X jr iu ( w - 1 ) / S i u
+ Σ j = 1 n Σ r = 1 r j Σ j ′ = 1 n Σ r ′ r j ′ d jj ′ ( X jr iu ( w - 1 ) ∩ X j ′ r ′ iuw ) / S i u , w > 1 - - - ( 1 - 1 )
T iu 1 = T iu 0 + Σ j = 1 n Σ r = 1 r j d ij X jr iu 1 / S i u , w = 1 - - - ( 1 - 2 )
T jr = T j ( r - 1 ) +
Σ i = n + 1 n + m Σ u = 1 u i Σ w = 1 L iu F ( T iu w , T j ( r - 1 ) ) X j ( r - 1 ) iuw + P j , r > 1 - - - ( 1 - 3 )
式(1-1)表示车辆到达某一装车点的时间为到达上一个装车点的时间和在上一个装车点等待的时间、上一个装点装车持续时间、重车行驶时间、上一个卸点卸车持续时间、空车行驶到本次装点的时间总和;式(1-2)表示式(1-1)在车辆从车场出发到第一个装点时的特例;式(1-3)表示的就是同一个任务的次序关系,由于考虑等待时间成本,任务的某一车次最早开始时间并不仅仅与上一车次的最早开始时间和装车持续时间有关,还包括装载机械等待车辆到来的一段时间。所以,某一车次的最早开始时间是动态的,在模型求解之前并不能确定,而只能作为模型中的决策变量考虑。
其数学模型如下所示:
min TC = w 1 Σ i = n + 1 n + m Σ u = 1 u i Σ w = 1 L iu Σ j = 1 n Σ r = 1 r j | T iu w - T jr | X jr iuw
+ w 2 Σ s = n + 1 n + m Σ u = 1 u s Σ i = 1 n + m Σ j = 1 n + m d ij Y ij su / S s u
+ w 3 Σ i = n + 1 n + m Σ u = 1 u i Σ j = 1 n + m PY ij iu - - - ( 1 )
s.t.
Σ s = n + 1 n + m Σ u = 1 u s Σ i = 1 n + m Y ij su = [ Q j / q ] + 1,1 ≤ j ≤ n - - - ( 2 ) Σ i = n + 1 n + m Σ u = 1 u i Σ w = 1 L iu X jr iuw = 1,1 ≤ j ≤ n , 1 ≤ r ≤ r j - - - ( 3 ) Σ s = n + 1 n + m Σ u = 1 u s Σ i = 1 n + m Y ij su = Σ s = n + 1 n + m Σ u = 1 u s Σ i = 1 n + m Y ji su , 1 ≤ j ≤ n - - - ( 4 ) Σ s = n + 1 n + m Σ u = 1 u s Σ j = 1 n + m Y ij su ≤ u i , n + 1 ≤ i ≤ n + m - - - ( 5 ) Σ s = n + 1 n + m Σ u = 1 u s Σ i = 1 n + m Y ij su ≤ u j , n + 1 ≤ j ≤ n + m - - - ( 6 ) Σ i = n + 1 n + m Σ j = 1 n + m Y ij su = Σ i = 1 n + m Σ j = n + 1 n + m Y ij su ≤ 1 - - - ( 7 )
其中,
aj≤Tjr<Tj(r+1)≤bj,1≤j≤n,1≤r<rj(8) e i u ≤ T iu w ≤ e i u + L , n+1≤i≤n+m,1≤u≤ui,1≤w≤Liu(9)
i、j、s、u、w均为正整数,Xjr iuw取0或1,Yij su为非负整数。
在此模型(设为M)中,(1)式为目标函数,即最小化等待总时间、空驶时间以及固定成本的总和;(2)式表示每一个任务都要被完成;(3)式表示任一装载机装载的任一车都有一辆车且只有一辆车来完成;(4)式表示任一货运任务Aj,其进出的车辆数平衡;(5)、(6)式表示车场派车和收车不能超过容量;(7)式表示每辆车要么不派出,要么只派出一次,即返回某车场后不能再被派出,并且保证派出车辆从车场出发并返回车场;(8)表示任务的时间窗约束;(9)限制了车辆的工作时间不能超过定值。
从M可以看出,本文考虑了任务的装车时间和卸货时间,但认为只在装点会产生动态时间窗,存在空闲现象。在满足约束的情况下,所要求得的是一个总成本最小的解,其中目标函数中总等待时间一项不光包括车辆的等待时间,也包括任务的等待时间(即装载机械等待车辆的时间)。因为从时间上考虑,车辆和装载机械都尽量减小空闲时间的解才是合理的。
车辆调度模型算法分析:
满载的车辆调度(Vehicle Scheduling Problem-Full Load,VSPFL)是典型的NP难题,很难求得全局最优解。为了在可接受的多项式时间内求解模型,一般采用启发式算法来求得满意解。不同于以往的车辆路线问题,模型M中时间和空间的信息都是决策变量。本文基于贪心算法,并对其进行改进,设计评估函数。在路线构造的过程中,选择车辆当前路线的每一个待访问任务的原则是非常重要的。从静态时间窗的算法来看,在满足时间约束的前提下,一般选择距离最短或最节省的重载点来扩展路线。在模型M中,动态时间窗构成总成本的一部分,是判定所求解可行性的重要指标,必须在构造路线中予以考虑。本文建立如下的路线构造评估函数:
评估函数一:
假设车辆Vi u在Tiu w时刻来到任务Aj,所要完成的一车货物是Aj的第r车,完成这一车任务后于Tiu w+1时刻行驶到任务Aj′,设此时Aj′能为该车辆提供服务的是其第r′车,由公式(1-1)可得出:
T iu w + 1 = T iu w + F ( T jr , T iu w ) + P j + D j
+ d jj / S i u + d jj ′ / S i u ;
该车辆在执行完Aj的一车后去执行Aj′的一车的代价可表示为:
P 1 ( j , j ′ ) = w 1 ′ d jj ′ / S i u + w 2 ′ F ( T j ′ r ′ , T iu w + 1 )
- w 3 ′ F ( T iu w + 1 , T j ′ r ′ ) ;
0≤w′1,w′2,w′3≤1,w′1+w′2+w′3=1;
上式中,第一项表示空车行使时间(Time0),第二项表示该车辆等待Aj′的装载机械的时间(Time1),第三项表示虽然车辆到达Aj′时可立即开始工作,但此时装载机已经等待的一段时间(Time2)(均不包括权系数)。w′1、w′2、w′3表示各自的权值。很明显,后两项的值不可能同时为正。其中,第三项的符号为负,是因为在前两项值相等的情况下,函数倾向于选择装载机空闲时间最长的下一个任务(函数值越小越好)。
评估函数二:
设车辆Vi u在Tiu 0时刻从车场Ai出发,行使到Aj开始执行该车辆的第一车任务。Aj为该车辆提供的是该装载机的第r车,已知此时 T iu 1 = d ij / S i u , 可知该车辆从车场行使到Aj的代价为:
P 2 ( i , j ) = w 1 ′ d ij / S i u + w 2 ′ F ( T jr , T iu 1 )
- w 3 ′ F ( T iu 1 , T jr ) ;
0≤w′1,w′2,w′3≤1,w′1+w′2+w′3=1;
其中函数一用于表示一般情况下车辆完成某车任务执行另一车任务的转移成本,用于不完整线路的延伸。其值综合考虑了距离、车辆等待时间和任务的等待车辆时间。函数二用于表示车辆刚从车场出发驶向某个任务的执行成本。
●车货匹配依赖度分析
首先分析:衡量某任务对某车辆的依赖程度的相关因素:
A和能够完成该任务的车辆数有关
B和能够完成该任务的车辆总运能有关
C和能够完成该任务的车辆的可用工作时间有关
对上述两个因素,统一用新定义的匹配依赖度来衡量。
依次定义车辆潜在运能、任务匹配依赖度、任务潜在运能需求、车辆匹配依赖度:
车辆j潜在运能:VPC(vehicle potential Capacity)=该车j载重量(吨)*剩余工作时间(分钟)。
任务i匹配依赖度:
Figure S2008100399919D00131
0表示低依赖度,什么车都能做,1表示高依赖度,什么车都不能做。
任务i潜在运能需求TPD(task potential demand):=该任务i剩余量(吨)*(标准重车行驶时间+装车总时间+卸车总时间)
车辆j匹配依赖度:
●评价函数扩展:
有车辆请求指令时,对车辆分配一个标明任务的去向,此时,用原来的P1值乘以任务匹配依赖度来衡量;有任务新来且有空闲车辆时,对任务寻找一个车辆来作业,此时,用原来的P1值乘以车辆匹配依赖度来衡量。
以上实施例仅用以说明而非限制本发明的技术方案。如,实施例中的车辆可以是其他运输设备,如船只、飞机;或者非运输设备,如零部件或者其他配件。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。

Claims (6)

1、一种运输适时调度方法,用于根据动态事件触发、调整现场运输调度作业;其特征在于,该方法包括如下步骤:
步骤1、模型初始化,读入基础数据及参数,测试接口;若发现错误,做出提示并退出;
步骤2、计算车辆、任务匹配度;
步骤3、经调度确认后,模型计算初始指令,保存至数据库,做新指令标记;
步骤4、无匹配指令的任务和车辆进入各自就绪列表;
步骤5、扫描数据库及缓冲池,按队列取出当前第一个未处理事件;
步骤6、事件预处理;车辆状态转换包括状态A——到达装点、状态B——离开装点、状态C——到达卸点、状态D——离开卸点;事件包括车辆堵车事件、午饭启毕事件、车辆抛锚或修复事件、到达卸点事件、任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件;
步骤61、如果事件为池事件,则直接返回已经过预处理的该事件;
步骤62、根据车辆状态序列以及人工确定,判断事件是否为可响应事件:
对于车辆堵车事件,如果当前处于状态C、或状态D,则堵车信息不合法,移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,车辆状态为状态A、或状态B,检查该车和该事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于午饭启毕事件,检查合法性,包括:午饭开始是第一次出现,且符合时间窗口,午饭结束是午饭开始后第一次出现;如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空,否则,转步骤63;
对于车辆抛锚或修复事件,检查合法性,包括:当前状态是否为正常或故障,如不合法,移至不响应事件表,忽略该事件并把警告信息报错至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达装点事件,如当前非离开卸点状态,事件不合法,对于离开装点事件,如当前非离开卸点或到达装点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于到达卸点事件,如当前非离开装点状态,事件不合法,对于离开卸点事件,如当前非离开装点或到达卸点,事件不合法,均移至不响应事件表,忽略该事件并把警告信息保存至数据库,标记为新信息,返回空;否则,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
对于任务新增事件、任务量变化事件、取消任务事件、任务卸点改变事件以及天气变化事件,检查事件处理设定,如不是可响应,则标记后,返回空;否则,转步骤63;
步骤63、首先通过车辆、任务或事件各自设定,判断事件是进入缓冲池还是立即响应;如为前者,标记后进入缓冲池,然后检查池是否慢,如不满,返回;否则,返回缓冲池;如为后者,返回该事件;
步骤7、若步骤6的返回值为空,则直接返回至步骤5;若返回值为事件,直接进入步骤8;若返回值为缓冲池,设置池事件启动标志,取其第一个事件,进入步骤8;
步骤8、若收到车辆堵车信息,进入步骤9;若收到车辆到装点或离开装点信息,进入步骤10;若收到车辆到卸点或离开卸点信息,进入步骤11;若收到开始午饭信息或抛锚信息,进入步骤12;若收到午饭结束信息或车辆修复信息,进入步骤13;若收到新任务信息,进入步骤14;若收到取消任务信息,进入步骤15;若收到任务量调整信息,进入步骤16;若收到任务卸点改变信息,进入步骤17;若收到天气变化信息,进入步骤18;若收到退出程序事件,进入步骤19;
步骤9、根据车辆选车函数,在所有任务或仅就绪任务列表中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表,转入步骤20;
指令审批处理步骤:
步骤A1、根据计算该指令的事件类型,通过参数设定检查是否可直接下发,如是,标记“直发”后返回该指令;否则转步骤A2;
步骤A2、询问用户是否满意该计划,如是,标记“满意”后返回该指令;否则转步骤A3;
步骤A3、询问是否调整该指令,如非,标记“取消”后返回该指令,否则返回调整后的指令,标记为“新调整”;
步骤10、更新车辆实时状态;根据到装点或离开装点类型更新任务的等待服务车辆列表,如果为离开装点事件,同时更新任务余量和任务的开始服务时间标记,如果当前等待队列为0,根据任务选车函数在就绪车辆中选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新车辆匹配度;如果返回指令为取消,则任务进入就绪任务列表;转入步骤20;
步骤11、更新车辆实时状态;如果事件为到卸点且无请求提前期,直接转步骤20;否则,更新车辆当前结束时间,根据车辆选车函数,在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤12、更新车辆午饭或可用否的实时状态,转入步骤20;
步骤13、更新车辆午饭或正常的实时状态,如果车辆处于C或D状态,转入20;否则根据当前位置在所有任务中选择最佳任务,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发,同时更新任务匹配度;如果返回指令标记为取消,车辆进入就绪列表;转入步骤20;
步骤14、更新任务列表,更新匹配度,根据任务选车函数在所有车辆中或仅就绪车辆选择最佳车辆,然后进入指令审批处理步骤,如果返回指令标记为直发或满意或调整,则保存该返回指令到数据库待发;如果返回指令标记为取消,任务进入就绪列表;转入步骤20;
步骤15、更新任务列表,更新匹配度,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤16、更新任务列表,更新匹配度,当任务量减少时,检索该任务排队车辆和分配该任务指令车辆,按运量计算后对多余车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入步骤20;
步骤17、更新任务表,更新匹配度,转入步骤20;
步骤18、更新任务表状态,对于变为停止状态的任务,检索该任务排队车辆和分配该任务指令车辆,依次为车辆虚拟离开卸点事件进入临时池,设置临时池标志,直接转入20;
步骤19、保存后退出程序;
步骤20、主要处理池事件;检索临时池标志,如为真则取出临时池下一个标志,转步骤8;否则,更新主池,如果转入前处理的事件是主池池事件且主池不为空,则继续处理池事件,取主池中下一个事件,转步骤8;否则转步骤5。
2、根据权利要求1所述的运输适时调度方法,其特征在于:所述主池用来储存事件的缓冲池,池的长度决定调度的周期。
3、根据权利要求1所述的运输适时调度方法,其特征在于:所述临时池用来储存因某个事件而产生的一系列虚拟事件,池的大小表示触发的虚拟事件的数量,该池事件一经填充立即进行算法处理直至池空。
4、根据权利要求1所述的运输适时调度方法,其特征在于:所述步骤20中取主池中下一个事件后,取后主池事件为空设置主池空标志。
5、根据权利要求1或2或3或4所述的运输适时调度方法,其特征在于:所述车辆被船只、飞机、零部件所替代。
6、根据权利要求1或2或3或4所述的运输适时调度方法,其特征在于:所述车辆包括鱼雷车。
CN200810039991A 2008-07-01 2008-07-01 运输适时调度方法 Pending CN101620693A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810039991A CN101620693A (zh) 2008-07-01 2008-07-01 运输适时调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810039991A CN101620693A (zh) 2008-07-01 2008-07-01 运输适时调度方法

Publications (1)

Publication Number Publication Date
CN101620693A true CN101620693A (zh) 2010-01-06

Family

ID=41513917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810039991A Pending CN101620693A (zh) 2008-07-01 2008-07-01 运输适时调度方法

Country Status (1)

Country Link
CN (1) CN101620693A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104392326A (zh) * 2014-12-01 2015-03-04 冶金自动化研究设计院 一种用于钢铁企业含铁固废循环利用的监控方法
CN106952018A (zh) * 2017-02-22 2017-07-14 上海钢联物流股份有限公司 一种基于智能手机app的智能调度系统
CN109669458A (zh) * 2018-12-28 2019-04-23 芜湖哈特机器人产业技术研究院有限公司 一种基于无向图的多台激光叉车调度方法
CN109754175A (zh) * 2018-12-28 2019-05-14 广州明动软件股份有限公司 用于对行政审批事项的办结时限进行压缩预测的计算模型及其应用
CN110633181A (zh) * 2018-06-25 2019-12-31 北京国双科技有限公司 可视化显示方法和装置
CN111547439A (zh) * 2019-02-08 2020-08-18 萨沃伊公司 在收集收集器上负载期间可减少无序的对自动化分配系统中负载进行排序的方法
CN111832842A (zh) * 2020-07-28 2020-10-27 西南交通大学 基于提前期的时间工作流网络执行效率提升方法
CN112464445A (zh) * 2020-11-10 2021-03-09 中冶赛迪工程技术股份有限公司 一种铁水铁路运输的自动仿真和优化系统
CN113379356A (zh) * 2021-07-02 2021-09-10 西北师范大学 一种基于ahp-dbn的车货匹配方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104392326B (zh) * 2014-12-01 2017-05-24 冶金自动化研究设计院 一种用于钢铁企业含铁固废循环利用的监控方法
CN104392326A (zh) * 2014-12-01 2015-03-04 冶金自动化研究设计院 一种用于钢铁企业含铁固废循环利用的监控方法
CN106952018A (zh) * 2017-02-22 2017-07-14 上海钢联物流股份有限公司 一种基于智能手机app的智能调度系统
CN110633181B (zh) * 2018-06-25 2023-04-07 北京国双科技有限公司 可视化显示方法和装置
CN110633181A (zh) * 2018-06-25 2019-12-31 北京国双科技有限公司 可视化显示方法和装置
CN109669458A (zh) * 2018-12-28 2019-04-23 芜湖哈特机器人产业技术研究院有限公司 一种基于无向图的多台激光叉车调度方法
CN109754175A (zh) * 2018-12-28 2019-05-14 广州明动软件股份有限公司 用于对行政审批事项的办结时限进行压缩预测的计算模型及其应用
CN111547439A (zh) * 2019-02-08 2020-08-18 萨沃伊公司 在收集收集器上负载期间可减少无序的对自动化分配系统中负载进行排序的方法
CN111832842B (zh) * 2020-07-28 2022-07-12 西南交通大学 基于提前期的时间工作流网络执行效率提升方法
CN111832842A (zh) * 2020-07-28 2020-10-27 西南交通大学 基于提前期的时间工作流网络执行效率提升方法
CN112464445A (zh) * 2020-11-10 2021-03-09 中冶赛迪工程技术股份有限公司 一种铁水铁路运输的自动仿真和优化系统
CN112464445B (zh) * 2020-11-10 2022-08-12 中冶赛迪工程技术股份有限公司 一种铁水铁路运输的自动仿真和优化系统
CN113379356A (zh) * 2021-07-02 2021-09-10 西北师范大学 一种基于ahp-dbn的车货匹配方法
CN113379356B (zh) * 2021-07-02 2022-05-17 西北师范大学 一种基于ahp-dbn的车货匹配方法

Similar Documents

Publication Publication Date Title
CN101620693A (zh) 运输适时调度方法
CN105448082B (zh) 一种可变间隔发车的快速公交车组合调度方法
CN109934532B (zh) 双向运输的路线规划方法和相关装置
US20120226624A1 (en) Optimization system of smart logistics network
CN109377084A (zh) 调度服务器及基于该调度服务器的智能物流调度服务系统
US20220122011A1 (en) Method and system for operating a fleet of vehicles
Heimfarth et al. A mixed truck and robot delivery approach for the daily supply of customers
CN111815231B (zh) 一种物流平台智能拼车方法及系统
CN103310317A (zh) 基于车载gps终端的可视化成品汽车运输管理系统及方法
US20190217850A1 (en) Vehicle control system, vehicle control method, and storage medium
JP6970628B2 (ja) 自律走行車、走行制御装置、走行制御方法、及び制御プログラム
JP2016091563A (ja) スマートな乗客および貨物輸送のためのシステムおよび方法
CN109709983B (zh) 一种物流无人机安全返航控制方法
CN108320494A (zh) 一种公交动态调度方法、存储介质及设备
Erera et al. Creating schedules and computing operating costs for LTL load plans
CN115081674B (zh) 新型卡车排队行驶模式下的本地集装箱运输排版优化方法
CN108038625A (zh) 智能派车系统
US20210078438A1 (en) Information processing system
CN114971196A (zh) 车型选择方法、装置、设备及存储介质
Montaña et al. A novel mathematical approach for the Truck-and-Drone Location-Routing Problem
CN102445208B (zh) 一种从地图数据中获取多车辆导航路径的方法
Cheng et al. An adaptive large neighborhood search metaheuristic for a passenger and parcel share-a-ride problem with drones
CN114049059A (zh) 物流用货物配送智能管理系统
WO2022120935A1 (zh) 一种车辆系统的调度控制方法,装置及系统
CN112308312A (zh) 留仓包裹转送方法、模型训练方法及相关设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20100106