CN108399455B - 基于遗传算法的调度方法及装置 - Google Patents

基于遗传算法的调度方法及装置 Download PDF

Info

Publication number
CN108399455B
CN108399455B CN201710068910.7A CN201710068910A CN108399455B CN 108399455 B CN108399455 B CN 108399455B CN 201710068910 A CN201710068910 A CN 201710068910A CN 108399455 B CN108399455 B CN 108399455B
Authority
CN
China
Prior art keywords
scheduling
individuals
population
fitness
individual
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.)
Active
Application number
CN201710068910.7A
Other languages
English (en)
Other versions
CN108399455A (zh
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.)
Xi'an jingxundi Supply Chain Technology Co., Ltd
Original Assignee
Xi'an Jingxundi Supply Chain Technology 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 Xi'an Jingxundi Supply Chain Technology Co ltd filed Critical Xi'an Jingxundi Supply Chain Technology Co ltd
Priority to CN201710068910.7A priority Critical patent/CN108399455B/zh
Publication of CN108399455A publication Critical patent/CN108399455A/zh
Application granted granted Critical
Publication of CN108399455B publication Critical patent/CN108399455B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Economics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Physics & Mathematics (AREA)
  • Operations Research (AREA)
  • Artificial Intelligence (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Physiology (AREA)
  • Genetics & Genomics (AREA)
  • Tourism & Hospitality (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于遗传算法的调度方法及装置,涉及智慧仓储技术领域。其中的方法包括:随机产生种群,种群中的个体代表各个调度集合之间的一一映射关系,个体的基因为调度集合中的元素;用二维数组对个体编码,二维数组的第二维度表示调度集合,二维数组的第一维度表示调度集合中的元素;计算种群中每个个体的适应度;选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因;迭代交叉运算直至种群满足预设条件。从而提升了调度效率,节省了调度成本。

Description

基于遗传算法的调度方法及装置
技术领域
本发明涉及智慧仓储技术领域,特别涉及一种基于遗传算法的调度方法及装置。
背景技术
智慧仓储是未来发展的大势所趋。无人仓具备处理大量订单的能力,可以大幅提升订单处理效率及准确率,降低人工成本,从而实现企业运营效率、经营效益的优化。在无人仓中,不同小车指派至不同托盘所需的路径成本不同,不同托盘运送至不同工位所需的路径成本也不同。调度方法能够实现将小车指派到合适的托盘,并将托盘搬运至合适的工位进行生产,从而节约调度成本。因此,在无人仓技术的实现过程中,调度方法起到较为核心作用,
传统的调度方法中,采用遍历的方法比较每一种调度组合的调度成本,然后确定调度成本最小的调度组合。然而随着调度集合中所含元素个数的增多,对于遍历的方法而言时间复杂度急剧增加,在有限的时间内很难求得最小调度成本。而在有限时间内或者有限的遍历次数内,获得一个相对较低成本的调度组合随机性较大,通常无法获得令人满意的调度组合。
遗传算法是一种启发式算法。遗传算法提供了一种求解复杂系统优化问题的通用框架,可以不用依赖于问题的具体领域,对解决问题的种类有很强的鲁棒性,应用广泛。遗传算法借鉴了进化生物学中的一些现象而发展起来,这些现象包括遗传、交叉、变异等等。在遗传算法的每次迭代运算中都保留一组候选解,并按适应度指标从解群中选取较优的个体,利用交叉、变异等遗传算子对这些个体不断进行组合产生新的子代,直到满足某种收敛指标为止。然而,在解决具有一一映射关系的小车集合、托盘集合以及工位集合之间的调度问题时,为了能够求得符合预设条件的调度组合,使用遗传算法进行求解并不能明显提高调度效率,节省的调度成本也相对有限。
发明内容
本发明解决的一个技术问题是,在调度集合之间存在一一映射关系的前提下,如何快速高效的求得符合预设条件的调度组合,从而提高调度效率,节省调度成本。
根据本发明实施例的一个方面,提供了一种基于遗传算法的调度方法,其特征在于,包括:随机产生种群,种群中的个体代表各个调度集合之间的一一映射关系,个体的基因为调度集合中的元素;用二维数组对个体进行编码,二维数组的第二维度表示调度集合,二维数组的第一维度表示调度集合中的元素;计算种群中每个个体的适应度;选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因;迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
在一些实施例中,该方法还包括:选取种群中的部分个体进行变异,在变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换;迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
在一些实施例中,选取种群中0.5%至1%的个体进行变异,在变异过程中,将变异个体30%至60%的基因进行随机交换。
在一些实施例中,计算种群中每个个体的适应度包括:根据个体所代表各个调度集合之间的一一映射关系中,各个调度集合的元素之间是否存在匹配关系,以及各个调度集合的元素之间的匹配成本,计算种群中每个个体的调度成本;根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度。
在一些实施例中,选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算包括:选取种群中适应度高于预设值的个体,并计算适应度高于预设值的个体所对应的总适应度;以适应度高于预设值的个体的适应度与总适应度的比值为概率,选择适应度高于预设值的个体作为父本和母本进行交叉运算。
在一些实施例中,种群满足预设条件包括以下条件中的至少一种:
(1)交叉运算的迭代次数高于预设值;
(2)变异的迭代次数高于预设值;
(3)种群中存在适应度函数值大于预设值的个体。
根据本发明实施例的另一个方面,提供了一种基于遗传算法的调度装置,其特征在于,包括:种群产生模块,用于随机产生种群,种群中的个体代表各个调度集合之间的一一映射关系,个体的基因为调度集合中的元素;个体编码模块,用于用二维数组对个体进行编码,二维数组的第二维度表示调度集合,二维数组的第一维度表示调度集合中的元素;适应度计算模块,用于计算种群中每个个体的适应度;交叉运算模块,用于选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因;第一迭代运算模块,用于迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
在一些实施例中,该装置还包括:变异模块,用于选取种群中的部分个体进行变异,在变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换;第二迭代运算模块,用于迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
在一些实施例中,变异模块用于选取种群中0.5%至1%的个体进行变异,在变异过程中,将变异个体30%至60%的基因进行随机交换。
在一些实施例中,适应度计算模块包括:调度成本计算单元,用于根据个体所代表各个调度集合之间的一一映射关系中,各个调度集合的元素之间是否存在匹配关系,以及各个调度集合的元素之间的匹配成本,计算种群中每个个体的调度成本;适应度计算单元,用于根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度。
在一些实施例中,交叉运算模块包括:个体选取单元,用于选取种群中适应度高于预设值的个体;适应度计算单元,用于计算适应度高于预设值的个体所对应的总适应度;交叉运算单元,用于以适应度高于预设值的个体的适应度与总适应度的比值为概率,选择适应度高于预设值的个体作为父本和母本进行交叉运算。
在一些实施例中,种群满足预设条件包括以下条件中的至少一种:
(1)交叉运算的迭代次数高于预设值;
(2)变异的迭代次数高于预设值;
(3)种群中存在适应度函数值大于预设值的个体。
根据本发明实施例的又一个方面,提供了一种基于遗传算法的调度装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述的基于遗传算法的调度方法。
根据本发明实施例的再一个方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机指令,指令被处理器执行时实现前述的基于遗传算法的调度方法。
本发明在调度集合之间存在一一映射关系的前提下,采用二维数组的形式对个体进行编码,并基于编码二维数组对父本和母本进行交叉运算,能够快速高效的求得符合预设条件的调度组合,从而提高调度效率,节省调度成本。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明基于遗传算法的调度方法的一个实施例的流程示意图。
图2示出本发明基于遗传算法的调度方法的另一个实施例的流程示意图。
图3示出个体变异过程的一个实施例。
图4示出本发明基于遗传算法的调度装置的一个实施例的结构示意图。
图5示出了本发明基于遗传算法的调度装置的另一个实施例的结构图。
图6示出了本发明基于遗传算法的调度装置的又一个实施例的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明涉及的技术方案所基于的场景,是各个调度集合之间存在一一映射关系。例如,调度集合包括小车集合、托盘集合以及工位集合。存在以下约束条件:
(1)每个托盘至多被指派一辆小车;
(2)每辆车在调度组合中必须被指派一个托盘;
(3)保证托盘被指派车辆和托盘的同步性;
(4)每个工作台至多被指派一个托盘。
例如,小车集合、托盘集合以及工位集合中各存在3个元素。其中,由小车1将托盘1运送至工位1,由小车2将托盘2运送至工位2,由小车3将托盘3运送至工位。本领域普通技术人员应理解,在小车集合、托盘集合以及工位集合之间存在一一映射关系时,小车、托盘、工位的调度组合可以不局限于上述情况。
发明人对现有技术中遗传算法应用于该场景时调度效率较低的原因进行了深入分析。传统的遗传算法采用一维数组来表示一种调度组合,即个体{X11,X12,X13,X21,X22,X23,X31,X32,X33,Y11,Y12,Y13,Y21,Y22,Y23,Y31,Y32,Y33},一维数组中的每个元素都是该个体的基因。其中,基因Xij表示编号为i的小车搬运编号为j的托盘的关系是否存在,Xij取值0或1,0表示不存在1表示存在;基因Yjk表示编号为j的托盘到编号为k的工位的关系是否存在,Yjk取值0或1,0表示不存在1表示存在。那么,个体a={100010001100010001}表示由小车1将托盘1运送至工位1,由小车2将托盘2运送至工位2,由小车3将托盘3运送至工位。个体b={010100001010100001}表示由小车1将托盘2运送至工位1,由小车2将托盘1运送至工位2,由小车3将托盘3运送至工位。在选择个体a作为母本、个体b作为父本进行交叉运算时,如果将第4至第9号基因进行交叉互换,可能会随机产生子代个体c={010010001010100001}。子代个体中X12=1,X22=1,X33=1,Y12=1,Y21=1,Y33=1,表示由小车1将托盘2运送至工位1,由小车2将托盘2,没有小车将托盘1运送至工位2,由小车3将托盘3运送至工位3。这样的调度组合不满足业务一一映射的约束条件,属于遗传算法产生的无效解。因此,传统的遗传算法应用于本发明讨论的技术场景时产生无效解的概率极大,去掉这些无效解的过程会占用大量的时间成本,降低了调度效率。
基于以上技术分析,发明人对遗传算法进行了改进,应用于一一映射调度集合场景,以提高调度效率。下面结合图1描述本发明提供的基于遗传算法的调度方法的一个实施例。
图1示出本发明基于遗传算法的调度方法的一个实施例的流程示意图。如图1所示,该实施例的基于遗传算法的调度方法包括:
步骤S102,随机产生种群,种群中的个体代表各个调度集合之间的一一映射关系,个体的基因为调度集合中的元素。
例如,调度集合包括小车集合、托盘集合以及工位集合。其中,小车集合中存在4个小车元素,分别为小车1、小车2、小车3以及小车4;托盘集合中存在4个托盘元素,分别为托盘1、托盘2、托盘3以及托盘4;工位集合中存在4个小车元素,分别为工位1、工位2、工位3以及工位4。
表1
Figure BDA0001222053940000071
表1示出了种群中的个体A及个体B。其中,个体A表示的调度组合为:小车1将托盘1运送至工位1,小车2将托盘2运送至工位2,小车3将托盘3运送至工位3,小车4将托盘4运送至工位4。个体B表示的调度组合为:小车1将托盘2运送至工位1,小车2将托盘1运送至工位3,小车3将托盘3运送至工位2,小车4将托盘4运送至工位4。
步骤S104,用二维数组对个体进行编码,二维数组的第二维度表示调度集合,二维数组的第一维度表示调度集合中的元素。
例如,对个体A进行编码得到二维数组A={{1,1,1},{2,2,2},{3,3,3},{4,4,4}},即
A={{1,1,1},
{2,2,2},
{3,3,3},
{4,4,4}}
对个体进行编码得到二维数组B={{1,2,1},{2,1,3},{3,3,2},{4,4,4}},即
B={{1,2,1},
{2,1,3},
{3,3,2},
{4,4,4}}
步骤S106,计算种群中每个个体的适应度。
首先根据个体所代表各个调度集合之间的一一映射关系中,各个调度集合的元素之间是否存在匹配关系,以及各个调度集合的元素之间的匹配成本,计算种群中每个个体的调度成本;然后根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度。
例如,可以通过
Figure BDA0001222053940000081
计算种群中每个个体的调度成本。其中,i表示小车集合中的小车编号,j表示托盘集合中的托盘编号,k表示工位集合中的工位编号,n表示小车集合、托盘集合以及工位集合中所含元素的数量,xij表示编号为i的小车搬运编号为j的托盘的关系是否存在,yjk表示编号为j的托盘到编号为k的工位的关系是否存在,Cij表示编号为i的小车搬运编号为j的托盘的成本,Fjk表示编号为j的托盘到编号为k的工位的成本。然后,通过调度成本的倒数作为适应度函数计算种群中每个个体的适应度:
Figure BDA0001222053940000082
步骤S108,选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因。
仍以表1为例,参考其二维数组的编码形式,在选取个体A和个体B分别作为父本和母本进行交叉运算时,将第一维度相同且第二维度相邻的基因{{*,*,*},{*,*,*},{3,3,*},{4,4,4}},即
{{*,*,*},
{*,*,*},
{3,3,*},
{4,4,4}}
作为子代个体C的部分基因。个体C的其余基因通过如下方式组成:对于小车S集合,除小车3和小车4之外的元素是小车1和小车2,那么子代个体C位于小车集合的基因只能由1或者2随机组成;同理可以依次得到其它调度集合的基因。例如,子代个体C={{1,2,1},{2,1,2},{3,3,3},{4,4,4}},即
C={{1,2,1},
{2,1,2},
{3,3,3},
{4,4,4}}
所表示的调度组合为:小车1将S托盘2运送至工位1,小车2将托盘1运送至工位2,小车3将托盘3运送至工位3,小车4将托盘4运送至工位4。
步骤S110,迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
例如,当种群中存在适应度函数值大于预设值(例如1/100)的个体,或者交叉运算的迭代次数高于预设值(例如100次)时,停止迭代交叉运算。
上述实施例中,采用二维数组的形式对个体进行编码,能够更加直接地反映个体所代表的业务含义。更为重要的是,二维数组的编码形式配合本实施例特有的交叉运算,能够确保产生的子代个体所代表的调度组合满足调度集合之间的一一映射关系,从而提高了调度效率。在种群满足一定条件时结束迭代交叉运算,能够获得调度成本较低的调度组合,节省了调度成本。
优选的,在步骤S108中,可以采用轮盘赌算法选择父本和母本进行交叉运算。
在计算得到种群中所有个体的适应度之后,选取种群中适应度较高的5个个体,并计算这5个个体所对应的总适应度。然后,分别计算这5个个体的适应度与总适应度的比值,并以每个个体各自的比值为概率从这5个个体中选出父本和母本进行交叉运算。
从种群中选择适应度较高的父本和母本进行交叉运算,并保留父本和母本中第一维度相同且第二维度相邻的基因,可以进一步加快遗传算法的收敛速度,提高调度效率。原因是,适应度较高的父本和母本具有较高的概率拥有使得个体适应度较高的基因,直接将使得个体适应度较高的基因保留至子代个体,可以提高新产生的子代个体具有较高适应度的可能性,从而加快遗传算法的收敛速度。
下面结合图2描述本发明提供的基于遗传算法的调度方法的另一个实施例。
图2示出本发明基于遗传算法的调度方法的另一个实施例的流程示意图。如图2所示,本实施例的基于遗传算法的调度方法包括:
步骤S202,随机产生种群。具体实现过程可以参照步骤S102。
步骤S204,用二维数组对个体进行编码。具体实现过程可以参照步骤S104。
步骤S206,计算种群中每个个体的适应度。具体实现过程可以参照步骤S106。
步骤S212,选取种群中的部分个体进行变异,在变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换。
其中,可以选取种群中0.5%至1%的个体进行变异,在变异过程中,将变异个体30%至60%的基因进行随机交换。个体的变异过程可以例如图3所示。将个体A={{1,1,1},{2,2,2},{3,3,3},{4,4,4}},即
A={{1,1,1},
{2,2,2},
{3,3,3},
{4,4,4}}
属于托盘集合的三个基因进行随机交换,产生新的个体D={{1,3,1},{2,1,2},{3,2,3},{4,4,4}},即
D={{1,3,1},
{2,1,2},
{3,2,3},
{4,4,4}}
步骤S214,迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
例如,当种群中存在适应度函数值大于预设值(例如1/100)的个体,或者变异的迭代次数高于预设值(例如100次)时,停止迭代变异运算。
上述实施例中,二维数组的编码形式配合本实施例特有的变异运算,能够确保变异产生的个体所代表的调度组合满足调度集合之间的一一映射关系,避免了传统遗传算法变异过程会产生不符合业务场景的无效解的情况,从而进一步提高了调度效率。另一方面,传统遗传算法的变异过程采用单点变异,种群中个体基因趋同会使得遗传算法得到的解陷入局部极值,而很难获得适应度最大值,这种现象被称为“早熟”现象。上述实施例采用了多元变异策略,完全随机的选择多个基因进行互换,可以提高种群中个体基因的多样性,有效缓解了“早熟”现象,使得调度过程更加快速有效。
此外,从图1和图2所示的实施例中可以看出,交叉和变异可以是相对独立的运算过程。本发明所作出的改进,在交叉和变异中均有体现。本领域普通技术人员应理解,图1和图2所示实施例中的交叉和变异过程还可以结合进行,从而更进一步的提高调度效率,节省调度成本。
下面结合图4描述本发明一个实施例的基于遗传算法的调度装置。
图4示出本发明基于遗传算法的调度装置的一个实施例的结构示意图。如图4所示,该实施例的基于遗传算法的调度装置40包括:
种群产生模块402,用于随机产生种群,所述种群中的个体代表各个调度集合之间的一一映射关系,所述个体的基因为调度集合中的元素。
个体编码模块404,用于用二维数组对所述个体进行编码,二维数组的第二维度表示调度集合,二维数组的第一维度表示调度集合中的元素。
适应度计算模块406,用于计算种群中每个个体的适应度。
在一个实施例中,适应度计算模块406包括:
调度成本计算单元4062,用于根据个体所代表各个调度集合之间的一一映射关系中,各个调度集合的元素之间是否存在匹配关系,以及各个调度集合的元素之间的匹配成本,计算种群中每个个体的调度成本。
适应度计算单元4064,用于根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度。
交叉运算模块408,用于选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在所述交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除所述第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因。
第一迭代运算模块410,用于迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
在一个实施例中,交叉运算模块408包括:
个体选取单元4082,用于选取种群中适应度高于预设值的个体;
适应度计算单元4084,用于计算所述适应度高于预设值的个体所对应的总适应度;
交叉运算单元4086,用于以所述适应度高于预设值的个体的适应度与所述总适应度的比值为概率,选择所述适应度高于预设值的个体作为父本和母本进行交叉运算。
在一个实施例中,基于遗传算法的调度装置40还包括:
变异模块412,用于选取种群中的部分个体进行变异,在所述变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换。其中,变异模块412可以用于选取种群中0.5%至1%的个体进行变异,在所述变异过程中,将变异个体30%至60%的基因进行随机交换。
第二迭代运算模块414,用于迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
图5示出了本发明基于遗传算法的调度装置的另一个实施例的结构图。如图5所示,该实施例的基于遗传算法的调度装置50包括:存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一个实施例中的基于遗传算法的调度方法。
其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
图6示出了本发明基于遗传算法的调度装置的又一个实施例的结构图。如图6所示,该实施例的装置60包括:存储器510以及处理器520,还可以包括输入输出接口630、网络接口640、存储接口650等。这些接口630,640,650以及存储器510和处理器520之间例如可以通过总线650连接。其中,输入输出接口630为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口640为各种联网设备提供连接接口。存储接口650为SD卡、U盘等外置存储设备提供连接接口。
本发明还包括一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意一个实施例中的基于遗传算法的调度方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种基于遗传算法的仓储调度方法,其特征在于,包括:
随机产生种群,所述种群中的个体代表各个调度集合中非空元素之间的一一映射关系,所述个体的基因为调度集合中的元素,所述调度集合包括小车集合、托盘集合以及工位集合;
用二维数组对所述个体进行编码,二维数组的第二维度表示不同调度集合的非空元素之间的一一映射关系,二维数组的第一维度表示调度集合中的元素;
计算种群中每个个体的适应度,包括:根据个体所代表各个调度集合中非空元素之间的一一映射关系中,各个调度集合的非空元素之间是否存在匹配关系,以及各个调度集合的非空元素之间的匹配成本,计算种群中每个个体的调度成本;根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度;
选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在所述交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除所述第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因;
迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
2.如权利要求1所述的仓储调度方法,其特征在于,所述仓储调度方法还包括:
选取种群中的部分个体进行变异,在所述变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换;
迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
3.如权利要求2所述的仓储调度方法,其特征在于,选取种群中0.5%至1%的个体进行变异,在所述变异过程中,将变异个体30%至60%的基因进行随机交换。
4.如权利要求1所述的仓储调度方法,其特征在于,所述选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算包括:
选取种群中适应度高于预设值的个体,并计算所述适应度高于预设值的个体所对应的总适应度;
以所述适应度高于预设值的个体的适应度与所述总适应度的比值为概率,选择所述适应度高于预设值的个体作为父本和母本进行交叉运算。
5.如权利要求1或2所述的仓储调度方法,其特征在于,所述种群满足预设条件包括以下条件中的至少一种:
(1)交叉运算的迭代次数高于预设值;
(2)变异的迭代次数高于预设值;
(3)种群中存在适应度函数值大于预设值的个体。
6.一种基于遗传算法的仓储调度装置,其特征在于,包括:
种群产生模块,用于随机产生种群,所述种群中的个体代表各个调度集合之间的一一映射关系,所述个体的基因为调度集合中的元素,所述调度集合包括小车集合、托盘集合以及工位集合;
个体编码模块,用于用二维数组对所述个体进行编码,二维数组的第二维度表示不同调度集合的非空元素之间的一一映射关系,二维数组的第一维度表示调度集合中的元素;
适应度计算模块,用于计算种群中每个个体的适应度,包括:调度成本计算单元,用于根据个体所代表各个调度集合之间非空元素的一一映射关系中,各个调度集合的非空元素之间是否存在匹配关系,以及各个调度集合的非空元素之间的匹配成本,计算种群中每个个体的调度成本;适应度计算单元,用于根据种群中每个个体的调度成本的倒数计算种群中每个个体的适应度;
交叉运算模块,用于选取种群中满足预设适应度条件的个体作为父本和母本进行交叉运算,在所述交叉运算过程中,将父本和母本第一维度相同且第二维度相邻的基因作为子代个体的部分基因,并由每个调度集合中除所述第一维度相同且第二维度相邻的基因之外的元素随机组成子代个体中该调度集合的其余基因;
第一迭代运算模块,用于迭代地进行交叉运算以产生子代个体,直至种群满足预设条件。
7.如权利要求6所述的仓储调度装置,其特征在于,所述仓储调度装置还包括:
变异模块,用于选取种群中的部分个体进行变异,在所述变异过程中,将变异个体属于同一调度集合的多个元素所对应的基因进行随机交换;
第二迭代运算模块,用于迭代地进行变异运算以产生新的个体,直至种群满足预设条件。
8.如权利要求7所述的仓储调度装置,其特征在于,所述变异模块用于选取种群中0.5%至1%的个体进行变异,在所述变异过程中,将变异个体30%至60%的基因进行随机交换。
9.如权利要求6所述的仓储调度装置,其特征在于,所述交叉运算模块包括:
个体选取单元,用于选取种群中适应度高于预设值的个体;
适应度计算单元,用于计算所述适应度高于预设值的个体所对应的总适应度;
交叉运算单元,用于以所述适应度高于预设值的个体的适应度与所述总适应度的比值为概率,选择所述适应度高于预设值的个体作为父本和母本进行交叉运算。
10.如权利要求6或7所述的仓储调度装置,其特征在于,所述种群满足预设条件包括以下条件中的至少一种:
(1)交叉运算的迭代次数高于预设值;
(2)变异的迭代次数高于预设值;
(3)种群中存在适应度函数值大于预设值的个体。
11.一种基于遗传算法的仓储调度装置,其特征在于,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1至5中任一项所述的基于遗传算法的仓储调度方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述指令被处理器执行时实现如权利要求1至5任一项所述的基于遗传算法的仓储调度方法。
CN201710068910.7A 2017-02-08 2017-02-08 基于遗传算法的调度方法及装置 Active CN108399455B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710068910.7A CN108399455B (zh) 2017-02-08 2017-02-08 基于遗传算法的调度方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710068910.7A CN108399455B (zh) 2017-02-08 2017-02-08 基于遗传算法的调度方法及装置

Publications (2)

Publication Number Publication Date
CN108399455A CN108399455A (zh) 2018-08-14
CN108399455B true CN108399455B (zh) 2021-05-25

Family

ID=63093548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710068910.7A Active CN108399455B (zh) 2017-02-08 2017-02-08 基于遗传算法的调度方法及装置

Country Status (1)

Country Link
CN (1) CN108399455B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109447557A (zh) * 2018-11-05 2019-03-08 安吉汽车物流股份有限公司 物流调度方法及装置、计算机可读存储介质
CN110991706B (zh) * 2019-11-15 2023-05-05 上海电科智能系统股份有限公司 一种自动化编制公交时刻表和车辆排班计划的方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303749A (zh) * 2008-06-19 2008-11-12 上海交通大学 面向客户需求的车间作业调度方法
CN102608916A (zh) * 2012-02-15 2012-07-25 浙江工业大学 一种基于元胞机的大型零件柔性作业车间的动态调度方法
CN103870647A (zh) * 2014-03-14 2014-06-18 西安工业大学 一种基于遗传算法的作业车间调度建模的方法
CN104516785A (zh) * 2014-12-19 2015-04-15 上海电机学院 一种云计算资源调度系统及方法
CN104932938A (zh) * 2015-06-16 2015-09-23 中电科软件信息服务有限公司 一种基于遗传算法的云资源调度方法
CN105512742A (zh) * 2014-09-23 2016-04-20 北大方正集团有限公司 生产作业的配置方法和装置
CN105700495A (zh) * 2016-01-13 2016-06-22 济南大学 基于加工时间等级的柔性作业车间调度机器选择方法
CN106155799A (zh) * 2016-08-03 2016-11-23 上海理工大学 基于遗传算法的Codelet调度方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250007B2 (en) * 2009-10-07 2012-08-21 King Fahd University Of Petroleum & Minerals Method of generating precedence-preserving crossover and mutation operations in genetic algorithms

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303749A (zh) * 2008-06-19 2008-11-12 上海交通大学 面向客户需求的车间作业调度方法
CN102608916A (zh) * 2012-02-15 2012-07-25 浙江工业大学 一种基于元胞机的大型零件柔性作业车间的动态调度方法
CN103870647A (zh) * 2014-03-14 2014-06-18 西安工业大学 一种基于遗传算法的作业车间调度建模的方法
CN105512742A (zh) * 2014-09-23 2016-04-20 北大方正集团有限公司 生产作业的配置方法和装置
CN104516785A (zh) * 2014-12-19 2015-04-15 上海电机学院 一种云计算资源调度系统及方法
CN104932938A (zh) * 2015-06-16 2015-09-23 中电科软件信息服务有限公司 一种基于遗传算法的云资源调度方法
CN105700495A (zh) * 2016-01-13 2016-06-22 济南大学 基于加工时间等级的柔性作业车间调度机器选择方法
CN106155799A (zh) * 2016-08-03 2016-11-23 上海理工大学 基于遗传算法的Codelet调度方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Two-Dimensional Genetic Algorithm and Its Application to Aircraft Scheduling Problem;Ming-Wen Tsai et al.;《Mathematical Problems in Engineering》;20151231;第1-12页 *
军事装备技术区车辆优化调度算法研究与实现;李宏伟;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160915;第4章,第5.2.3节 *

Also Published As

Publication number Publication date
CN108399455A (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
CN107679750B (zh) 一种基于自适应系数遗传算法的云制造服务资源匹配方法
Scrucca GA: A package for genetic algorithms in R
Dao et al. Optimisation of partner selection and collaborative transportation scheduling in Virtual Enterprises using GA
JP5456903B2 (ja) メッシュ・モデルを符号化する方法及び装置、符号化されたメッシュ・モデル、並びに、メッシュ・モデルを復号化する方法及び装置
Zhang et al. The number of spanning trees in Apollonian networks
CN104124980B (zh) 适合连续变量量子密钥分发的高速秘密协商方法
CN108399455B (zh) 基于遗传算法的调度方法及装置
CN104268077A (zh) 基于混沌遗传算法的测试用例集约简算法
CN109815541B (zh) 轨道交通车辆产品零部件模块划分方法、装置与电子设备
Kraus et al. Optimal data compression techniques for smart grid and power quality trend data
CN109193756A (zh) 一种风电接入系统的场景解耦动态经济调度模型求解方法
CN106780283A (zh) 隐写信息编码方法和装置以及隐写信息解码方法和装置
Shang et al. Spatial scheduling optimization algorithm for block assembly in shipbuilding
CN116152611B (zh) 一种多级多尺度点云补全方法、系统、设备及存储介质
CN112667920A (zh) 基于文本感知的社交影响力预测方法、装置及设备
CN101853508B (zh) 基于方向集的泛化置信度传播的双目立体视觉匹配方法
CN114897912A (zh) 一种基于增强循环切片网络的三维点云分割方法及系统
CN112150059B (zh) 一种基于乌鸦算法的计量器具智能仓库调度优化方法
CN111340578B (zh) 一种商品关联关系的生成方法、装置、介质及电子设备
CN107437138A (zh) 基于改进引力搜索算法的生产运输协同调度方法及系统
CN115310209B (zh) 基于vae的气动形状迁移优化方法及相关装置
CN108288114B (zh) 基于原始对偶理论的应急物资调度方法
CN110096739A (zh) 有限状态机的模型生成方法、生成装置及终端设备
Zhao et al. Research and applications of shop scheduling based on genetic algorithms
CN111242803A (zh) 基于多种群遗传算法的风机排布方法及装置

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
TA01 Transfer of patent application right

Effective date of registration: 20200514

Address after: 710100 Building 5, center square, aerospace city, No. 666, East Chang'an Street, national civil aerospace industry base, Xi'an City, Shaanxi Province

Applicant after: Xi'an jingxundi Supply Chain Technology Co., Ltd

Address before: East Building 11, 100195 Beijing city Haidian District xingshikou Road No. 65 west Shan creative garden district 1-4 four layer of 1-4 layer

Applicant before: BEIJING JINGDONG SHANGKE INFORMATION TECHNOLOGY Co.,Ltd.

Applicant before: BEIJING JINGDONG CENTURY TRADING Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant