混凝土运输调度方法、装置、计算机设备及可读存储介质与流程

未命名 09-22 阅读:46 评论:0


1.本发明涉及混凝土运输调度技术领域,特别是涉及一种混凝土运输调度方法、装置、计算机设备及计算机可读存储介质。


背景技术:

2.与传统的车辆调度不同,在混凝土运输调度领域中,受混凝土初凝时间的限制,具体的运输调度时间十分重要,若调度计划制作不当,不仅影响搅拌站的企业声誉与服务质量,还会增加企业的运营成本,甚至会影响工程质量,造成合同纠纷。现阶段大部分相关企业所采用的是人工调度方式,即由企业相关调度人员依靠人工经验,结合各施工工地的订单情况,对各搅拌站的混凝土搅拌运输车进行逐次调度。然而,在依靠人工经验进行混凝土运输调度时,费时费力,且对实际调度过程中的各类影响因素无法综合考虑,导致常常无法满足客户的服务需求,同时影响企业的生产运营效率和增加了运营成本。


技术实现要素:

3.本技术的目的在于提供一种混凝土运输调度方法、装置、计算机设备及计算机可读存储介质,能够对混凝土运输实现智能调度,减少对人工的依赖,降低企业运营成本,提高生产运营效率。
4.为达到上述目的:
5.第一方面,本技术实施例提供了一种混凝土运输调度方法,所述方法包括:
6.s1、获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;
7.s2、采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;
8.s3、生成初始的染色体种群;
9.s4、根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;
10.s5、判断当前迭代次数是否等于或大于预设迭代次数,若是,则根据适应度值最小的染色体组生成混凝土运输调度方案;若否,则执行步骤s6;
11.s6、按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群并返回步骤s4。
12.在一实施方式中,所述混凝土订单信息包括施工工地名称、所需混凝土型号、所需混凝土量、工地开工时间;
13.所述混凝土搅拌运输车信息包括车辆id、油耗、容量、位置信息;
14.所述搅拌站信息包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量;
15.所述施工工地信息包括施工工地位置、与各搅拌站对应的运输信息。
16.在一实施方式中,所述步骤s2之前,还包括:
17.根据所述混凝土订单信息和所述混凝土搅拌运输车信息,确定需要向各施工工地分别派送的混凝土搅拌运输车的车次;
18.根据所述车次确定搅拌站染色体和施工工地染色体的长度,以及施工工地染色体中包含的各施工工地的编号的数量。
19.在一实施方式中,所述步骤s3,包括:
20.对于搅拌站染色体,随机生成各搅拌站的编号;
21.对于施工工地染色体,将各施工工地的编号随机打乱。
22.在一实施方式中,所述步骤s6,包括:
23.根据各染色体组对应的适应度值,采用轮盘赌方式从所述染色体种群中选择至少两个染色体组;
24.按照设定的交叉概率,对选择的任意两个染色体组包含的搅拌站染色体和施工工地染色体中目标基因片段分别进行交叉,以生成新的染色体;所述目标基因片段为随机选中的两个基因之间的基因片段;
25.按照设定的变异概率,对选择的染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以及施工工地染色体中随机选中的基因片段进行互换,以生成新的染色体。
26.在一实施方式中,所述步骤s6,还包括:
27.针对选择的两个染色体组包含的施工工地染色体进行交叉所生成的两条新的施工工地染色体,若所述两条新的施工工地染色体中任一条施工工地染色体中存在相同基因片段,则将所述两条新的施工工地染色体中未互换的目标位置的基因片段进行互换,所述目标位置为所述相同基因片段所在位置。
28.在一实施方式中,所述适应度函数为基于运输成本和/或等待时间的适应度函数。
29.第二方面,本技术实施例提供一种混凝土运输调度装置,包括:
30.获取模块,用于获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;
31.编码模块,用于采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;
32.初始化模块,用于生成初始的染色体种群;
33.计算模块,用于根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;
34.判断模块,用于判断当前迭代次数是否等于或大于预设迭代次数;
35.处理模块,用于在当前迭代次数等于或大于预设迭代次数时,根据适应度值最小的染色体组生成混凝土运输调度方案;以及在当前迭代次数小于预设迭代次数时,按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群。
36.在一实施方式中,所述混凝土订单信息包括施工工地名称、所需混凝土型号、所需混凝土量、工地开工时间;
37.所述混凝土搅拌运输车信息包括车辆id、油耗、容量、位置信息;
38.所述搅拌站信息包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量;
39.所述施工工地信息包括施工工地位置、与各搅拌站对应的运输信息。
40.在一实施方式中,处理模块,具体用于:
41.根据各染色体组对应的适应度值,采用轮盘赌方式从所述染色体种群中选择至少两个染色体组;
42.按照设定的交叉概率,对选择的任意两个染色体组包含的搅拌站染色体和施工工地染色体中目标基因片段分别进行交叉,以生成新的染色体;所述目标基因片段为随机选中的两个基因之间的基因片段;
43.按照设定的变异概率,对选择的染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以及施工工地染色体中随机选中的基因片段进行互换,以生成新的染色体。
44.第三方面,本技术实施例提供一种计算机设备,包括:处理器和存储有计算机程序的存储器,在所述处理器运行所述计算机程序时,实现上述文件混凝土运输调度方法的步骤。
45.第四方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述混凝土运输调度方法的步骤。
46.本技术实施例提供的混凝土运输调度方法、装置、计算机设备及计算机可读存储介质,所述方法包括:s1、获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;s2、采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;s3、生成初始的染色体种群;s4、根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;s5、判断当前迭代次数是否等于或大于预设迭代次数,若是,则根据适应度值最小的染色体组生成混凝土运输调度方案;若否,则执行步骤s6;s6、按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群并返回步骤s4。如此,结合混凝土运输调度过程中的多种影响因素,通过遗传算法对混凝土运输调度方案进行迭代,以获得最优的混凝土运输调度方案,能够对混凝土运输实现智能调度,减少对人工的依赖,降低企业运营成本,提高生产运营效率。
附图说明
47.图1为本发明实施例提供的混凝土运输调度方法的流程示意图;
48.图2为本发明实施例提供的混凝土运输调度装置的结构示意图;
49.图3为本发明实施例中染色体的编码示意图;
50.图4为本发明实施例中染色体进行交叉示意图;
51.图5为本发明实施例中染色体进行变异示意图;
52.图6为本发明实施例提供的混凝土运输调度装置的具体结构示意图;
53.图7为本发明实施例提供的混凝土运输调度方法的具体过程示意图;
54.图8为本发明实施例提供的计算机设备的结构示意图。
具体实施方式
55.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
56.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本技术不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
57.应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在
……
时"或"当
……
时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“a、b或c”或者“a、b和/或c”意味着“以下任一个:a;b;c;a和b;a和c;b和c;a、b和c”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
58.应该理解的是,虽然本技术实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
59.需要说明的是,在本文中,采用了诸如s1、s2等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制,本领域技术人员在具体实施时,可能会先执行s2后执行s1等,但这些均应在本技术的保护范围之内。
60.应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
61.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本技术的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
62.参阅图1,为本技术实施例提供的一种混凝土运输调度方法,该混凝土运输调度方法可以由本技术实施例提供的一种混凝土运输调度装置来执行,该混凝土运输调度装置可以采用软件和/或硬件的方式来实现,本实施例中以该混凝土运输调度方法的执行主体为
计算机设备如服务器、终端设备为例,本实施例提供的混凝土运输调度方法包括:
63.步骤s1、获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息。
64.需要说明的是,本实施例中的搅拌站有多个,施工工地也可有多个。可选地,所述混凝土订单信息可以是由施工工地对应生成的,具体可包括施工工地名称、所需混凝土型号、所需混凝土量、工地开工时间等。其中,工地开工时间可以理解为施工工地需要使用混凝土的开始时间。此外,所述混凝土订单信息还可包括施工单位、施工部位等。
65.可选地,所述混凝土搅拌运输车信息、所述搅拌站信息和所述施工工地信息可以是预先或实时采集的。其中,所述混凝土搅拌运输车信息可包括车辆id、车牌号、油耗、容量、位置信息、速度信息、卸料时间等。所述容量为混凝土搅拌运输车每次最大可运输的混凝土量。所述位置信息可包括在不同时间时混凝土搅拌运输车所处的经度、纬度、方向等信息,基于以上数据能方便掌握混凝土搅拌运输车的实时运行状态,进行车辆到达时间预测。所述搅拌站信息可包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量。所述搅拌站id可用于区分不同搅拌站,具体可采用数字、字母等编号。所述施工工地信息可包括施工工地位置、与各搅拌站对应的运输信息。其中,施工工地与各搅拌站对应的运输信息可包括运输时间、运输距离、道路路况等。同一施工工地与不同搅拌站对应的运输距离,可以根据施工工地的位置如电子围栏与不同搅拌站的位置进行确定,而同一施工工地与不同搅拌站对应的运输时间,可以根据施工工地与不同搅拌站对应的运输距离以及速度等信息进行确定,当然也可结合道路路况等信息进行确定。这里,可以默认同一施工工地与各搅拌站对应的运输时间、运输距离是固定的。
66.步骤s2、采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号。
67.其中,采用双染色体实数编码方式进行编码,具有较好的实现精度和大搜索空间的优点。本实施例中,以采用x染色体代表搅拌站染色体,采用y染色体代表施工工地染色体为例,参阅图2,x染色体中的编码代表搅拌站的编号,y染色体中的编码代表施工工地的编号,x染色体和y染色体中从左往右的前三个编码分别表示从编号为1的搅拌站派送混凝土搅拌运输车到编号为1的施工工地,从编号为3的搅拌站派送混凝土搅拌运输车到编号为2的施工工地,从编号为2的搅拌站派送混凝土搅拌运输车到编号为1的施工工地。
68.在一实施方式中,所述步骤s2之前,还包括:
69.根据所述混凝土订单信息和所述混凝土搅拌运输车信息,确定需要向各施工工地分别派送的混凝土搅拌运输车的车次;
70.根据所述车次确定搅拌站染色体和施工工地染色体的长度,以及施工工地染色体中包含的各施工工地的编号的数量。
71.可选地,根据所述混凝土订单信息和所述混凝土搅拌运输车信息,可确定需要向各施工工地分别派送的混凝土搅拌运输车的车次,即需要向每个施工工地分别派送多少辆混凝土搅拌运输车。其中,每辆混凝土搅拌运输车实际运输的混凝土量可能相同,也可能不相同,具体需要结合混凝土订单信息进行确定。例如,假设每辆混凝土搅拌运输车的容量为
8立方,施工工地1、施工工地2、施工工地3所需混凝土的立方量分别为32、45、23,即需要向施工工地1派送4辆混凝土搅拌运输车,向施工工地2派送6辆混凝土搅拌运输车,而向施工工地3派送3辆混凝土搅拌运输车,则搅拌站染色体和施工工地染色体的长度为13(即需要派送混凝土搅拌运输车的车次之和),施工工地染色体中包含的编号1、2、3的个数分别为4、6、3。如此,可实现准确确定染色体的长度,实现对染色体进行准确编码,进一步提高智能化水平。
72.步骤s3、生成初始的染色体种群。
73.具体地,对于搅拌站染色体,随机生成各搅拌站的编号;对于施工工地染色体,将各施工工地的编号随机打乱。这里,可随机生成多条搅拌站染色体和施工工地染色体,以得到初始的染色体种群。
74.步骤s4、根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体。
75.具体地,首先,将所述染色体种群中的任意一条搅拌站染色体和任意一条施工工地染色体进行随机组合,获得多个染色体组,且每个染色体组包括一条搅拌站染色体和一条施工工地染色体;接着,根据设置的适应度函数计算所述染色体种群中各染色体组对应的适应度值,以获得所述染色体种群中各染色体组对应的适应度值。
76.其中,所述适应度函数可以为基于运输成本和/或等待时间的适应度函数。若所述适应度函数包括基于运输成本的适应度函数和基于等待时间的适应度函数,则通过加权组合方式获得染色体组对应的适应度值。具体地,对于任一染色体组,可以先通过基于运输成本的适应度函数计算该染色体组对应的第一适应度值,并通过基于等待时间的适应度函数计算该染色体组对应的第二适应度值,然后将第一适应度值与第一预设权重之积加上第二适应度值与第二预设权重之积,作为该染色体组对应的适应度值。
77.以所述适应度函数为基于等待时间的适应度函数为例,根据混凝土订单信息的最早开始时间(即最早的工地开工时间)与预设的混凝土搅拌运输车的卸料时间,可以计算每个施工工地的理想浇注时间,记time
ijk
为搅拌站i运往施工工地j的第k辆混凝土搅拌运输车的理想浇注时刻。根据对每个染色体组的解码结果(即从哪个搅拌站派送混凝土搅拌运输车至对应的施工工地),可推算每辆混凝土搅拌运输车到达施工工地的实际时间,记timei'
jk
为搅拌站i运往施工工地j的第k辆混凝土搅拌运输车的实际浇注时刻,记di'
jk
为搅拌站i运往施工工地j的第k辆混凝土搅拌运输车的实际发车时刻,t
ij
为搅拌站i运往施工工地j的运输时间,则timei'
jk
=di'
jk
+t
ij
。在实际情况中,若搅拌站的混凝土搅拌运输车不足,则di'
jk
受上一辆混凝土搅拌运输车返回时间的影响。考虑到存在混凝土搅拌运输车等待和工地等待两种情况,则单次调度中的等待时间time
iwjkait
为:
[0078][0079]
当k为0时,有:
[0080]
则基于等待时间的适应度函数f为:
[0081]
[0082]
又或者,以所述适应度函数为基于运输成本的适应度函数为例,考虑到各搅拌站的生产设备可能不一样,与各施工工地之间的运输距离也不一样,产生的运输成本不一,本实施例还支持以运输成本作为适应度函数。记dis
ij
为搅拌站i与施工工地j之间的运输距离,记wi为搅拌站i的单位运输成本,λi为搅拌站i的单位混凝土的制作成本,q
ijk
为搅拌站i运往施工工地j的第k辆混凝土搅拌运输车的实际运输量,则单次调度(即运输)的成本为:
[0083]sijk
=2dis
ij
×
wi+λi×qijk
[0084]
则基于运输成本的适应度函数f为:
[0085][0086]
步骤s5、判断当前迭代次数是否等于或大于预设迭代次数,若是,则根据适应度值最小的染色体组生成混凝土运输调度方案;若否,则执行步骤s6。
[0087]
具体地,判断当前迭代次数是否等于或大于预设迭代次数,若当前迭代次数等于或大于预设迭代次数,说明完成迭代操作,则根据适应度值最小的染色体组生成混凝土运输调度方案;若当前迭代次数小于预设迭代次数,说明未完成迭代操作,则继续执行步骤s6。
[0088]
步骤s6、按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群并返回步骤s4。
[0089]
其中,所述进化操作包括选择操作、交叉操作和变异操作。所述预设策略可以根据实际情况需要进行设置,包括基于改进的交叉概率进行交叉操作和基于改进的变异概率进行变异操作等。
[0090]
可选地,所述步骤s6,包括:
[0091]
根据各染色体组对应的适应度值,采用轮盘赌方式从所述染色体种群中选择至少两个染色体组;
[0092]
按照设定的交叉概率,对选择的任意两个染色体组包含的搅拌站染色体和施工工地染色体中目标基因片段分别进行交叉,以生成新的染色体;所述目标基因片段为随机选中的两个基因之间的基因片段;
[0093]
按照设定的变异概率,对选择的染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以及施工工地染色体中随机选中的基因片段进行互换,以生成新的染色体。
[0094]
可选地,选择是对染色体种群中的染色体进行优胜劣汰,本实施例中染色体种群的选择方式为轮盘赌方式。首先,计算各染色体组的适应度ga,并计算染色体种群中染色体组的适应度总和size为染色体种群中组成的染色体组总数,则每个染色体组被选中的概率为接着计算每个染色体组的累积概率然后采用随机生成数的方式对当代染色体种群中的染色体组进行选择。
[0095]
可选地,对于选择的任意两个染色体组,可以将这两个染色体组分别包含的搅拌站染色体中目标基因片段分别进行交叉,以生成两个新的搅拌站染色体;同时,将这两个染色体组分别包含的施工工地染色体中目标基因片段分别进行交叉,以生成两个新的施工工地染色体。需要说明的是,对于搅拌站染色体和施工工地染色体,随机选择的目标基因片段
的长度可以相同,也可以不相同。
[0096]
可选地,染色体的交叉方式可具体描述为:对于选中的染色体,随机选择两个交叉点,对两染色体交叉点之间截取的部分进行互换。如图3所示,对于搅拌站染色体x1和x2,x1为“132442313”,x2为“123321132”,可以将从左往右的第4个基因至第6个基因进行互换即对调,得到新的搅拌站染色体x1’为“132321313”和x2’为“123442132”。对于施工工地染色体y1和y2,y1为“121322311”,y2为“113112232”,可以将从左往右的第4个基因至第6个基因进行互换即对调,得到新的施工工地染色体y1’为“121112311”和y2’为“113322232”。
[0097]
其中,本实施例中采用改进的交叉概率,改进的交叉概率pc按如下公式进行自适应调整:
[0098][0099]
其中,p
c1
、p
c2
为预设的(0,1)区间的值,f
max
为该染色体种群中染色体组的最大适应度值,f
avg
为该染色体种群中染色体组的平均适应度值,f'为待交叉两个染色体中对应的较大适应度值。需要说明的是,由于一个染色体组包括一条搅拌站染色体和一条施工工地染色体,而在计算适应度是计算染色体组对应的适应度值,因此染色体对应的适应度值可以理解为该染色体所在染色体组对应的适应度值。
[0100]
可选地,对于选择的任意一个染色体组,可以将该染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以生成新的搅拌站染色体;同时,将该染色体组包含的施工工地染色体中随机选中的基因片段进行互换,以生成新的施工工地染色体。需要说明的是,随机选中的基因片段可以包括一个或多个基因。其中,染色体的变异方式可具体描述为:对于搅拌站染色体采用逆序变异的方式,即对搅拌站染色体中随机选中的基因片段进行逆序;对于施工工地染色体采用互换变异的方式,即对施工工地染色体中随机选中的基因片段进行互换。如图4所示,对于搅拌站染色体x1,x1为“132442313”,可以将从左往右的第4个基因至第6个基因进行逆序,得到新的搅拌站染色体x1’为“132244313”。对于施工工地染色体y1,y1为“121322311”,可以将从左往右的第2个基因与第8个基因进行互换,得到新的施工工地染色体y1’为“111322321”。
[0101]
其中,本实施例中采用改进的变异概率,改进的变异概率pm按如下公式进行自适应调整:
[0102][0103]
其中,p
m1
、p
m2
为预设的(0,1)区间的值,f为要变异染色体的适应度值,f
max
为该染色体种群中染色体组的最大适应度值,f
avg
为该染色体种群中染色体组的平均适应度值。如此,通过采用自适应的交叉概率和变异概率,能保证染色体种群中适应度较高的个体不被交叉和变异操作破坏,加快了搜索速率。
[0104]
可选地,所述步骤s6,还包括:
[0105]
针对选择的两个染色体组包含的施工工地染色体进行交叉所生成的两条新的施工工地染色体,若所述两条新的施工工地染色体中任一条施工工地染色体中存在相同基因片段,则将所述两条新的施工工地染色体中未互换的目标位置的基因片段进行互换,所述目标位置为所述相同基因片段所在位置。
[0106]
可选地,所述相同基因片段至少包括两个基因。继续参阅图3,对于施工工地染色体y1和y2,y1为“121322311”,y2为“113112232”,在对y1和y2进行交叉后,得到新的施工工地染色体y1’为“121112311”和y2’为“113322232”。由于施工工地染色体y1’中存在相同基因片段“11”,则可将施工工地染色体y1’和y2’中从左往右的第8个基因和第9个基因对应进行互换,获得更新后的施工工地染色体y1’为“121112332”和y2’为“113322211”。如此,通过检测施工工地染色体中未互换的部分,对交叉后产生的重复部分进行互换,以消除同一条染色体的冲突基因。
[0107]
可选地,在确定所述混凝土运输调度方案后,可输出所述混凝土运输调度方案以通过显示装置展示所述混凝土运输调度方案。同时,还可将实时调度情况、道路信息、施工进度等信息进行可视化展示,支持管理者依据实际情况对调度方案进行调整。此外,每次调度产生的新数据会实时更新到相关数据库中,包括剩余浇注量、道路拥堵情况、生产负荷情况、各搅拌站仓储余量等,当外部环境发生较大变化时,上一时刻的混凝土运输调度方案不一定能满足新的调度需求,通过实时的数据更新以方便进行新一轮的智能调度。
[0108]
综上,上述实施例提供的混凝土运输调度方法中,结合混凝土运输调度过程中的多种影响因素,通过遗传算法对混凝土运输调度方案进行迭代,以获得最优的混凝土运输调度方案,能够对混凝土运输实现智能调度,减少对人工的依赖,降低企业管理成本,提高生产运营效率。
[0109]
基于前述实施例相同的发明构思,本技术实施例还提供了一种混凝土运输调度装置,参阅图5,所述装置包括:
[0110]
获取模块,用于获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;
[0111]
编码模块,用于采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;
[0112]
初始化模块,用于生成初始的染色体种群;
[0113]
计算模块,用于根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;
[0114]
判断模块,用于判断当前迭代次数是否等于或大于预设迭代次数;
[0115]
处理模块,用于在当前迭代次数等于或大于预设迭代次数时,根据适应度值最小的染色体组生成混凝土运输调度方案;以及在当前迭代次数小于预设迭代次数时,按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群。
[0116]
综上,上述实施例提供的混凝土运输调度装置中,结合混凝土运输调度过程中的多种影响因素,通过遗传算法对混凝土运输调度方案进行迭代,以获得最优的混凝土运输调度方案,能够对混凝土运输实现智能调度,减少对人工的依赖,降低企业管理成本,提高
生产运营效率。
[0117]
可选地,所述混凝土订单信息包括施工工地名称、所需混凝土型号、所需混凝土量、工地开工时间;
[0118]
所述混凝土搅拌运输车信息包括车辆id、油耗、容量、位置信息;
[0119]
所述搅拌站信息包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量;
[0120]
所述施工工地信息包括施工工地位置、与各搅拌站对应的运输信息。
[0121]
可选地,处理模块,还用于:
[0122]
根据所述混凝土订单信息和所述混凝土搅拌运输车信息,确定需要向各施工工地分别派送的混凝土搅拌运输车的车次;
[0123]
根据所述车次确定搅拌站染色体和施工工地染色体的长度,以及施工工地染色体中包含的各施工工地的编号的数量。
[0124]
可选地,初始化模块,具体用于:
[0125]
对于搅拌站染色体,随机生成各搅拌站的编号;
[0126]
对于施工工地染色体,将各施工工地的编号随机打乱。
[0127]
可选地,处理模块,具体用于:
[0128]
根据各染色体组对应的适应度值,采用轮盘赌方式从所述染色体种群中选择至少两个染色体组;
[0129]
按照设定的交叉概率,对选择的任意两个染色体组包含的搅拌站染色体和施工工地染色体中目标基因片段分别进行交叉,以生成新的染色体;所述目标基因片段为随机选中的两个基因之间的基因片段;
[0130]
按照设定的变异概率,对选择的染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以及施工工地染色体中随机选中的基因片段进行互换,以生成新的染色体。
[0131]
可选地,处理模块,还用于针对选择的两个染色体组包含的施工工地染色体进行交叉所生成的两条新的施工工地染色体,若所述两条新的施工工地染色体中任一条施工工地染色体中存在相同基因片段,则将所述两条新的施工工地染色体中未互换的目标位置的基因片段进行互换,所述目标位置为所述相同基因片段所在位置。
[0132]
可选地,所述适应度函数为基于运输成本和/或等待时间的适应度函数。
[0133]
关于混凝土运输调度装置的具体限定可以参见上文中对于混凝土运输调度方法的限定,在此不再赘述。上述混凝土运输调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0134]
基于前述实施例相同的发明构思,下面通过一具体示例对前述实施例进行详细说明,本实施例中以将混凝土搅拌运输车简称为车辆、混凝土订单简称为订单为例。
[0135]
参阅图6,为本实施例提供的基于启发式算法的混凝土运输调度装置,用于对多搅拌站的混凝土订单进行智能调度,主要包括数据存储模块、信息管理模块、智能调度模块、看板管理模块等。其中,数据存储模块用于对车辆gps数据、搅拌站仓储数据、车辆型号信息、订单信息、施工工地信息等数据进行存储。信息管理模块为各类管理系统,主要包括车辆信息、搅拌站信息、施工工地信息、订单信息,方便管理者进行各类信息查询。智能调度模
块为智能调度核心模块,用于基于遗传算法对混凝土运输调度方案进行迭代,输出最优的混凝土运输调度方案,且对交叉与变异概率进行改进,保证每一代的优良策略不被破坏,使遗传算法搜索更快。看板管理模块用于可视化展示,方便管理者更直观地进行跟踪管理,主要包括车辆与道路信息展示、施工进度展示等。此外,最终生成的混凝土运输调度方案所产生的实时数据会反馈到数据库系统中,方便外部环境变化较大时进行重新调度。
[0136]
这里,数据存储模块与信息管理模块可采用mysql数据库及时序数据库influxdb对各类相关信息及gps数据进行存储。在信息储存的基础上建立管理系统,可主要包括搅拌站管理单元、车辆管理单元、订单管理单元、工地管理单元,且主要用于下述信息的存储:
[0137]
1)车辆gps、搅拌站、施工工地位置信息存储。车辆gps数据存储在influxdb数据库中,主要包括时间、车辆id、经度、纬度、方向等信息,基于以上数据能掌握车辆的实时运行状态,进行车辆到达时间预测,提高智能调度的精确度。搅拌站、施工工地位置信息存储主要包括搅拌站、施工工地名称、搅拌站id、施工工地id、搅拌站和施工工地的电子围栏,基于以上信息,能掌握各搅拌站与各施工工地之间的距离信息。
[0138]
2)车辆型号信息、搅拌站仓储信息、订单信息存储。车辆型号主要包括混凝土搅拌车车辆id、车牌号、车辆油耗、容量等,搅拌站仓储信息主要包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量等,订单信息主要包括施工工地名称、施工单位、施工部位、所需混凝土型号、所需混凝土量、工地开工时间等信息。
[0139]
3)各搅拌站与施工工地的运输信息存储,运输信息主要包括搅拌站名称、搅拌站id、施工工地名称、施工工地id、运输时间、运输距离、道路情况等信息。
[0140]
基于以上存储的信息,可开发管理系统并采用界面的方式对各类信息进行直观的展示,方便管理者对各搅拌站的运输能力、仓储余量、道路状况、服务工地状况等信息进行综合管控,后续的智能调度模块也是综合以上信息进行混凝土搅拌运输车的智能调度。
[0141]
参阅图7,基于上述混凝土运输调度装置,本实施例提供的混凝土运输调度方法主要包括以下过程:
[0142]
(一)获取订单信息及搅拌站信息。
[0143]
可选地,先获取混凝土订单信息及搅拌站信息。
[0144]
(二)编码及参数设置。
[0145]
这里,可通过智能调度模块进行编码与解码。本实施例中,采用双染色体实数编码方式,其具有较好的实现精度和大搜索空间的优点,并采用x染色体代表混凝土搅拌站染色体,采用y染色体代表施工工地染色体。x染色体中的编码代表搅拌站的编号,y染色体中的编码代表施工工地的编号,且染色体的长度与具体的订单信息相关。x染色体与y染色体长度相等且一一对应,解码的过程中x染色体与y染色体对应编号表示从x该处编号的搅拌站派混凝土搅拌运输车到所对应y染色体的编号对应的施工工地,继续参阅图2,x染色体和y染色体中从左往右的前两个个编码分别表示从编号为1的搅拌站派送混凝土搅拌运输车到编号为1的施工工地,从编号为3的搅拌站派送混凝土搅拌运输车到编号为2的施工工地。
[0146]
(三)初始染色体种群生成。
[0147]
这里,初始染色体种群的生成方式为:x染色体中的基因(即编号)随机生成,将y染色体中的基因随机打乱。
[0148]
(四)选择、交叉与变异操作。
[0149]
这里,可通过智能调度模块进行选择、交叉与变异操作,具体过程可参考前述实施例的说明,在此不再赘述。
[0150]
(五)适应度计算。
[0151]
这里,可通过智能调度模块进行适应度计算,适应度函数可以包括基于运输成本和/或等待时间的适应度函数,适应度计算具体过程可参考前述实施例的说明,在此不再赘述。此外,支持用户对两种适应度函数进行选择或加权组合。
[0152]
(六)输出最优调度方案。
[0153]
这里,在满足终止条件时,可根据适应度值输出最优调度方案。在生成调度方案后,可对实时调度情况、道路信息、施工进度等信息进行可视化展示,支持管理者依据实际情况对调度方案进行调整。此外,每次调度产生的新数据会实时更新到相关数据库中,包括剩余浇注量、道路拥堵情况、生产负荷情况、各搅拌站仓储余量等,当外部环境发生较大变化时,上一刻的智能调度方案不一定能满足新的调度需求,实时的数据更新方便进行新一轮的智能调度。
[0154]
综上,上述实施例提供的混凝土运输调度方法,具有以下创新点:采用双染色体实数编码的方式,具有较好的实现精度和大搜索空间的优点,且对交叉和变异的概率进行改进,避免在交叉和变异的过程中对适应度值较高的个体造成破坏;支持等待时间和运营成本两种优化目标选择,方便管理者依据实际情况进行智能调度方案的选择;支持多站协同调度,综合利用各站资源,且有实时的调度情况反馈,并更新到相关数据库,方便系统进行重新调度,对意外情况造成智能调度方案的可行性降低具有较高鲁棒性。同时,具有以下优点:方便管理者进行各类信息查询,且能更直观的了解到各搅拌站、混凝土搅拌运输车、施工工地的实时状况;基于遗传算法,对调度方案进行迭代,输出最优调度方案,且对交叉和变异概率进行改进,保证每一代的优良策略不被破坏,使遗传算法搜索更快;目标函数既支持基于等待时间的优化,又支持运营成本的优化两种方式,方便管理者灵活选用;同时,考虑到了各搅拌站的运营成本、运输成本、等待时间等因素,能使企业获得满足约束条件下的最大利润,且免去了复杂的人工调度过程,节约人工成本,提高了相关企业的信息化、智能化水平。
[0155]
基于前述实施例相同的发明构思,本发明实施例提供了一种计算机设备,如图8所示,该计算机设备包括:处理器310和存储有计算机程序的存储器311;其中,图8中示意的处理器310并非用于指代处理器310的个数为一个,而是仅用于指代处理器310相对其他器件的位置关系,在实际应用中,处理器310的个数可以为一个或多个;同样,图8中示意的存储器311也是同样的含义,即仅用于指代存储器311相对其他器件的位置关系,在实际应用中,存储器311的个数可以为一个或多个。在所述处理器310运行所述计算机程序时,实现应用于上述设备的所述混凝土运输调度方法。
[0156]
该计算机设备还可包括:至少一个网络接口312。该计算机设备中的各个组件通过总线系统313耦合在一起。可理解,总线系统313用于实现这些组件之间的连接通信。总线系统313除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统313。
[0157]
其中,存储器311可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编
程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本发明实施例描述的存储器311旨在包括但不限于这些和任意其它适合类型的存储器。
[0158]
本发明实施例中的存储器311用于存储各种类型的数据以支持该计算机设备的操作。这些数据的示例包括:用于在该计算机设备上操作的任何计算机程序,如操作系统和应用程序;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序,例如媒体播放器(media player)、浏览器(browser)等,用于实现各种应用业务。这里,实现本发明实施例方法的程序可以包含在应用程序中。
[0159]
基于前述实施例相同的发明构思,本实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,计算机可读存储介质可以是磁性随机存取存储器(fram,ferromagnetic random access memory)、只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。所述计算机可读存储介质中存储的计算机程序被处理器运行时,实现上述混凝土运输调度方法。所述计算机程序被处理器执行时实现的具体步骤流程请参考图1所示实施例的描述,在此不再赘述。
[0160]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0161]
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,除了包含所列的那些要素,而且还可包含没有明确列出的其他要素。
[0162]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何
熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

技术特征:
1.一种混凝土运输调度方法,其特征在于,包括以下步骤:s1、获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;s2、采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;s3、生成初始的染色体种群;s4、根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;s5、判断当前迭代次数是否等于或大于预设迭代次数,若是,则根据适应度值最小的染色体组生成混凝土运输调度方案;若否,则执行步骤s6;s6、按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群并返回步骤s4。2.根据权利要求1所述的方法,其特征在于,所述混凝土订单信息包括施工工地名称、所需混凝土型号、所需混凝土量、工地开工时间;所述混凝土搅拌运输车信息包括车辆id、油耗、容量、位置信息;所述搅拌站信息包括搅拌站名称、搅拌站id、混凝土型号、混凝土仓储余量;所述施工工地信息包括施工工地位置、与各搅拌站对应的运输信息。3.根据权利要求1或2所述的方法,其特征在于,所述步骤s2之前,还包括:根据所述混凝土订单信息和所述混凝土搅拌运输车信息,确定需要向各施工工地分别派送的混凝土搅拌运输车的车次;根据所述车次确定搅拌站染色体和施工工地染色体的长度,以及施工工地染色体中包含的各施工工地的编号的数量。4.根据权利要求1或2所述的方法,其特征在于,所述步骤s3,包括:对于搅拌站染色体,随机生成各搅拌站的编号;对于施工工地染色体,将各施工工地的编号随机打乱。5.根据权利要求1所述的方法,其特征在于,所述步骤s6,包括:根据各染色体组对应的适应度值,采用轮盘赌方式从所述染色体种群中选择至少两个染色体组;按照设定的交叉概率,对选择的任意两个染色体组包含的搅拌站染色体和施工工地染色体中目标基因片段分别进行交叉,以生成新的染色体;所述目标基因片段为随机选中的两个基因之间的基因片段;按照设定的变异概率,对选择的染色体组包含的搅拌站染色体中随机选中的基因片段进行逆序,以及施工工地染色体中随机选中的基因片段进行互换,以生成新的染色体。6.根据权利要求5所述的方法,其特征在于,所述步骤s6,还包括:针对选择的两个染色体组包含的施工工地染色体进行交叉所生成的两条新的施工工地染色体,若所述两条新的施工工地染色体中任一条施工工地染色体中存在相同基因片段,则将所述两条新的施工工地染色体中未互换的目标位置的基因片段进行互换,所述目
标位置为所述相同基因片段所在位置。7.根据权利要求1所述的方法,其特征在于,所述适应度函数为基于运输成本和/或等待时间的适应度函数。8.一种混凝土运输调度装置,其特征在于,所述装置包括:获取模块,用于获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;编码模块,用于采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;搅拌站染色体和施工工地染色体的长度相等,搅拌站染色体上基因的取值为搅拌站的编号,施工工地染色体上基因的取值为施工工地的编号;初始化模块,用于生成初始的染色体种群;计算模块,用于根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;每个所述染色体组包括一条搅拌站染色体和一条施工工地染色体;判断模块,用于判断当前迭代次数是否等于或大于预设迭代次数;处理模块,用于在当前迭代次数等于或大于预设迭代次数时,根据适应度值最小的染色体组生成混凝土运输调度方案;以及在当前迭代次数小于预设迭代次数时,按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群。9.一种计算机设备,其特征在于,包括:处理器和存储有计算机程序的存储器,在所述处理器运行所述计算机程序时,实现权利要求1至7中任一项所述的混凝土运输调度方法的步骤。10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1至7中任一项所述的混凝土运输调度方法的步骤。

技术总结
本申请公开了一种混凝土运输调度方法,包括:S1、获取混凝土订单信息、混凝土搅拌运输车信息、搅拌站信息、施工工地信息;S2、采用双染色体实数编码方式对搅拌站和施工工地进行编码,生成用于表征混凝土搅拌运输车派送关系的搅拌站染色体和对应的施工工地染色体;S3、生成初始的染色体种群;S4、根据设置的适应度函数获取所述染色体种群中各染色体组对应的适应度值;S5、判断当前迭代次数是否等于或大于预设迭代次数,若是,则根据适应度值最小的染色体组生成混凝土运输调度方案;若否,则执行步骤S6;S6、按照预设策略对所述染色体种群进行进化操作,产生新的染色体种群并返回步骤S4。如此,能够降低企业运营成本,提高生产运营效率。效率。效率。


技术研发人员:曾光 陈亮 童兴
受保护的技术使用者:中科云谷科技有限公司
技术研发日:2023.06.29
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐