一种复杂生产环境下车间调度实时控制方法
技术领域
本发明涉及车间调度控制技术领域,尤其涉及一种复杂生产环境下车间调度实时控制方法。
背景技术
近年来,随着制造业面临小批量,定制化,订单流不稳定的严重考验,车间调度问题(Job-Shop Scheduling Problem,JSP)拥有越来越多的不确定性。车间调度控制方法实时性、动态性、多目标性等方面提出了更高的要求,以求更接近实际生产情况。目前对车间调度问题的研究大多存在以下问题:(1)将生产过程中的各项参数视为精确值。传统的车间调度问题研究中,工件到达时间、运输时间、加工时间等都被视为精确值。而事实上,由于人工操作、设备可靠性、供应链稳定性和紧急订单等不确定性因素存在,上述各项参数都存在一定范围误差。随着系统运行时间增加,误差逐步累积,预调度结果会逐渐偏离生产实际。因此,需要考虑生产系统的实时性调度。(2)将生产系统当作一个静态的系统,忽略实际生产过程中不确定性。由于设备故障或被修复、紧急订单等各种突发状况出现,使得原始调度结果失效,生产系统不得不停工等待重新调度。因此,在车间调度中必须将其加以考虑,及进行动态调度。总之,现有的车间调度模型往往将生产系统大大简化,与实际生产状况相差较大,不能完全适应当前订单、工况频繁变化,不确定性多的复杂生产环境。
发明内容
本发明的目的在于通过一种复杂生产环境下车间调度实时控制方法,来解决以上背景技术部分提到的问题。
为达此目的,本发明采用以下技术方案:
一种复杂生产环境下车间调度实时控制方法,其包括如下步骤:
步骤S101、初始化车间生产环境多智能体模型;
步骤S102、注册调度触发事件;
步骤S103、当步骤S102中的任一事件触发后,根据车间实时状态对若干个工件智能体进行依次调度;
步骤S104、对于每个工件智能体,在调度完成后,若满足缓存任务执行条件,则执行缓存任务;否则,等待缓存任务执行条件的满足。
特别地,所述步骤S101具体包括:初始化车间生产环境多智能体模型,包括加工设备、运输设备、仓库以及工件智能体单元的状态信息。
特别地,所述步骤S102具体包括:注册调度触发事件,包括加工完成、运输完成、出入库完成、现有智能体单元故障、新的智能体单元进入生产运行系统;所述新的智能体单元包括新的加工设备、新的运输设备、新的工件。
特别地,所述步骤S103中根据车间实时状态对若干个工件智能体进行依次调度,具体包括:
步骤S1031、工件智能体根据自身当前状态以及下一步工序信息发布任务工序信息;其中,工件智能体的当前状态包括工件位置、当前工序剩余时间,下一步工序信息包括下一步工序的优先级、下一步工序所需加工设备的类型、下一步工序的加工时间;
步骤S1032、符合所述任务工序所需的加工设备或运输设备智能体单元接收到任务工序信息后,向所述工件智能体回复自身状态信息来参与竞标;其中,加工设备的自身状态信息包括当前加工任务剩余时间,运输设备的自身状态信息包括当前任务完成时运输设备所在位置;
步骤S1033、所述工件智能体对所有收到的智能体回复的自身状态信息进行评估;
步骤S1034、选取评估值最大的组合,向相应运输设备和加工设备智能体发布中标任务工序信息,所述中标任务工序信息中包含评估值;
步骤S1035、所述步骤S1034确定的运输设备和加工设备智能体分别比较自身缓存任务与所述中标任务工序的评估值:当运输设备和加工设备智能体同时满足中标任务工序评估值大于其自身缓存任务的评估值,则用所述中标任务工序替换缓存任务,并通知运输设备和加工设备智能体的原自身缓存任务重新调度,并执行步骤S1037;否则,所述运输设备和加工设备智能体拒绝所述中标任务工序,并执行步骤S1036;
步骤S1036、,从所述步骤S1033得到的评估结果中删除评估值最大的组合,然后重复步骤S1034-S1035;当步骤S1033的评估结果为空集时,则工件智能体此次调度失败;
步骤S1037、所述步骤S1035中被替换的原自身缓存任务重新排入任务调度序列,进行重新调度。
特别地,所述步骤S1033具体包括:
步骤S10331、确定评估目标函数:
设定工件智能体对运输设备j和加工设备k组合对任务工序的竞标评估目标函数如下:
Ttotal=Twait+Ttransport+Tprocess
其中,Ttotal表示预计的任务工序总执行时间,Twait表示预计的等待加工单元完成上一任务的时间以及上下料时间,Ttransport表示预计的工件的运输时间,Tprocess表示任务工序在加工设备的加工时间;W=(w1,w2,…wn)为不同种类工件的比较权重,wi表示评估时种类i的工件占进入车间生产环境的所有工件的比例,n表示工件的种类总数;P=(p1,p2,…pn)为不同工件的优先级比较权重,pi表示评估时种类i的工件的优先级数值与最大优先级数值的比值,pi∈(0,1];zj,k是运输设备j和加工设备k组合的评估值;
步骤S10332,按照所述步骤S1331,计算所有可行运输设备与加工设备组合的评估值,并根据评估值的大小对结果排序。
本发明提出的复杂生产环境下车间调度实时控制方法采用事件触发方式,并根据贪婪原则,每次调度仅对工件智能体的单步工序任务执行方式进行调度。与传统针对于所有工序的预调度方法相比,本发明充分考虑了复杂生产环境下,设备故障,紧急订单等不确定因素的影响,减少了无效调度计算。本发明根据调度时刻生产环境实时状态计算相关评估值,充分考虑了预计加工时间、运输时间等预计时间与实际运行时间的误差,减少了多步运行产生的误差累积,提高调度的准确性。本发明通过多智能体之间的交互协作,形成车间动态调度;有效实现了复杂生产环境下,多工件、实时动态调度。在应对设备故障、紧急订单等生产扰动因素时,有效提升系统运行效率。
附图说明
图1为本发明实施例提供的复杂生产环境下车间调度实时控制方法流程图;
图2为本发明实施例提供的工件智能体调度控制流程图;
图3为本发明实施例提供的运输设备和加工设备智能体调度控制流程图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容理解的更加透彻全面。需要说明的是,除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
请参照图1所示,图1为本发明实施例提供的复杂生产环境下车间调度实时控制方法流程图。
本实施例中复杂生产环境下车间调度实时控制方法具体包括如下步骤:
步骤S101、初始化车间生产环境多智能体模型,包括加工设备、运输设备、仓库以及工件智能体单元的状态信息。其中,各工件智能体的状态信息包括:
(1)加工设备:
状态:空闲 可用值:空闲、运行、故障
缓存任务:无
加工任务:无
缓冲区大小:额定缓冲区大小
位置:设备所在位置
加工能力:车、铣、刨、磨等;
(2)运输设备:
状态:空闲 可用值:空闲、运行、故障
缓存任务:无
运输任务:无
位置:车库所在位置
速度:额定速度;
(3)仓库:
状态:空闲 可用值:空闲、运行、故障
缓存任务:无
当前出入库任务:无
容量:额定容量
位置:仓库所在位置;
(4)工件:
状态:空闲 可用值:空闲、运行
缓存任务:无
当前任务:无
工序:各个工序的加工要求、预计加工时间、优先级。
步骤S102、注册调度触发事件,包括加工完成、运输完成、出入库完成、现有智能体单元故障、新的智能体单元进入生产运行系统;所述新的智能体单元包括新的加工设备、新的运输设备、新的工件。
步骤S103、当步骤S102中的任一事件触发后,根据车间实时状态对若干个工件智能体进行依次调度。如图2所示,根据车间实时状态对若干个工件智能体进行依次调度,具体包括:
步骤S1031、工件智能体根据自身当前状态以及下一步工序信息发布任务工序信息;其中,工件智能体的当前状态包括工件位置、当前工序剩余时间,下一步工序信息包括下一步工序的优先级、下一步工序所需加工设备的类型、下一步工序的加工时间。
任务工序信息包括:1.工序所需加工设备的类型;2.预计加工时间;3.工件优先级;4.当前工件所在位置,即某个加工设备或者仓库的某个仓位;当前工序预计剩余加工时间。
步骤S1032、符合所述任务工序所需的加工设备或运输设备智能体单元接收到任务工序信息后,向所述工件智能体回复自身状态信息来参与竞标;其中,加工设备的自身状态信息包括当前加工任务剩余时间,运输设备的自身状态信息包括当前任务完成时运输设备所在位置。其中,符合任务工序所需的加工设备是指:1.加工设备正常运行;2.加工设备拥有工序加工所要求的加工能力。符合任务工序所需的运输设备是指:1.运输设备正常运行;2.运输设备满足工件所需运输要求,如承重。
步骤S1033、所述工件智能体对所有收到的智能体回复的自身状态信息进行评估,具体包括:
步骤S10331、确定评估目标函数:
设定工件智能体对运输设备j和加工设备k组合对任务工序的竞标评估目标函数如下:
Ttotal=Twait+Ttransport+Tprocess
其中,Ttotal表示预计的任务工序总执行时间,Twait表示预计的等待加工单元完成上一任务的时间以及上下料时间,Ttransport表示预计的工件的运输时间,Tprocess表示任务工序在加工设备的加工时间;W=(w1,w2,…wn)为不同种类工件的比较权重,wi表示评估时种类i的工件占进入车间生产环境的所有工件的比例,n表示工件的种类总数;P=(p1,p2,…pn)为不同工件的优先级比较权重,pi表示评估时种类i的工件的优先级数值与最大优先级数值的比值,pi∈(0,1];zj,k是运输设备j和加工设备k组合的评估值;
步骤S10332,按照所述步骤S1331,计算所有可行运输设备与加工设备组合的评估值,并根据评估值的大小对结果排序。
步骤S1034、选取评估值最大的组合,向相应运输设备和加工设备智能体发布中标任务工序信息,所述中标任务工序信息中包含评估值。
步骤S1035、如图3所示,所述步骤S1034确定的运输设备和加工设备智能体分别比较自身缓存任务与所述中标任务工序的评估值:当运输设备和加工设备智能体同时满足中标任务工序评估值大于其自身缓存任务的评估值,则用所述中标任务工序替换缓存任务,并通知运输设备和加工设备智能体的原自身缓存任务重新调度,并执行步骤S1037;否则,所述运输设备和加工设备智能体拒绝所述中标任务工序,并执行步骤S1036。
步骤S1036、,从所述步骤S1033得到的评估结果中删除评估值最大的组合,然后重复步骤S1034-S1035;当步骤S1033的评估结果为空集时,则工件智能体此次调度失败。
步骤S1037、所述步骤S1035中被替换的原自身缓存任务重新排入任务调度序列,进行重新调度。加入任务调度序列的位置可按照该任务对应工件智能体进入生产运行系统的顺序来进行确定。
步骤S104、对于每个工件智能体,在调度完成后,若满足缓存任务执行条件,则执行缓存任务;否则,等待缓存任务执行条件的满足。
本发明的技术方案提出的调度机制属于动态调度中的完全反应式调度,即不生成预调度方案,只根据重调度时刻的现有信息对工件进行重调度。这种动态调度方式时间复杂度低、计算速度快、实时性好,能够较快对系统中扰动事件做出反应。传统的预测反应式动态调度需要在制造系统运行前,在不考虑车间层未来的动态事件的前提下生成一个预调度方案(通常是遗传算法),因而需要较长的预调度方案生成时间。而本发明所应用的复杂生产环境中,订单、加工设备和运输设备组成、运行情况和实时状态都较为复杂,不确定性高,容易出现扰动事件。遗传算法等启发式算法生成的预调度方案(或者后续的重调度方案),耗时较长;且容易因扰动事件失效,造成频繁的长时间重调度,反而影响效率。此外遗传算法等启发式算法仅适用于大批量、确定性订单的调度。而本调度方法是基于智能体之间的交互竞标,因而也适用于单件、小批量、流式订单。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。