CN108776461A - 一种柔性作业车间调度方法及系统 - Google Patents
一种柔性作业车间调度方法及系统 Download PDFInfo
- Publication number
- CN108776461A CN108776461A CN201810489708.6A CN201810489708A CN108776461A CN 108776461 A CN108776461 A CN 108776461A CN 201810489708 A CN201810489708 A CN 201810489708A CN 108776461 A CN108776461 A CN 108776461A
- Authority
- CN
- China
- Prior art keywords
- population
- individual
- fjsp
- progeny
- interim
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 134
- 230000035772 mutation Effects 0.000 claims abstract description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 abstract description 11
- 238000004422 calculation algorithm Methods 0.000 description 17
- 230000002068 genetic effect Effects 0.000 description 11
- 238000005457 optimization Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 108090000623 proteins and genes Proteins 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 238000010187 selection method Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种柔性作业车间调度方法及系统,该方法包括:步骤1、基于柔性作业车间调度问题FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P;步骤2、对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;步骤3、基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;步骤4、计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;步骤5、基于所述最优解,对所述FJSP对应的作业车间进行调度。本发明提供的柔性作业车间调度方法可使得解的搜索空间能够保持种群多样性,从而可保证求得的解可收敛于全局最优,进而能够提高车间调度效果。
Description
技术领域
本发明涉及作业车间调度技术领域,尤其涉及一种柔性作业车间调度方法及系统。
背景技术
柔性作业车间调度问题(Flexible Job Scheduling Problem,FJSP)是经典作业车间调度问题的延伸,调度的目标是为每项作业的每道工序分配适当的机器,并确定各机器上工序的加工顺序,使作业的完工时间最短或其他指标达到最优。由于柔性作业车间的灵活性较高,使得FJSP问题的求解需要非常大的组合搜索空间,且问题的复杂度较高。
目前,已有很多应用于求解FJSP问题的算法,如禁忌搜索算法、粒子群算法、遗传算法和蜂群优化算法等,还有将两种算法进行结合后的混合算法,如遗传算法与蚁群算法相结合,其中,遗传算法是一类借鉴生物界的进化规律演化而来的随机化搜索方法,也是计算机科学人工智能领域中用于解决最优化的一种搜索启发式算法。
然而,由于遗传算法在求解的过程中,新生成的个体容易趋向于某一个体,该个体通常是适应度值很高的局部最优个体,并且该个体极易变成超级个体占满整个种群,从而使得解的搜索空间越来越狭隘。
可见,在使用遗传算法求解FJSP问题时,求得的解易收敛于局部最优,从而导致车间调度效果较差。
发明内容
本发明实施例提供一种柔性作业车间调度方法及系统,以车间调度效果较差的问题。
为解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种柔性作业车间调度方法,包括以下步骤:
步骤1、基于FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间;
步骤2、对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;
步骤3、基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;
步骤4、计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;
步骤5、基于所述最优解,对所述FJSP对应的作业车间进行调度。
第二方面,本发明实施例提供一种柔性作业车间调度系统,包括:
生成模块,用于基于FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间;
遗传模块,用于对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;
选择模块,用于基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;
计算模块,用于计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;
调度模块,用于基于所述最优解,对所述FJSP对应的作业车间进行调度。
第三方面,本发明实施例提供一种柔性作业车间调度系统,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述柔性作业车间调度方法中的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述柔性作业车间调度方法中的步骤。
本发明实施例中,通过加入小生境预选择机制来改进现有基本遗传算法在求解FJSP问题时存在的问题,使得解的搜索空间能够保持种群多样性,从而可保证求得的解可收敛于全局最优,进而能够提高车间调度效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种柔性作业车间调度方法的流程图;
图2是本发明实施例提供的一种FJSP编码方式示意图;
图3是使用本发明实施例提供的方法求解实际案例得到的调度甘特图;
图4是使用本发明实施例提供的方法求解实际案例得到的最优解的变化曲线图;
图5是使用现有遗传算法求解实际案例得到的调度甘特图;
图6是本发明实施例提供的一种柔性作业车间调度系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的一种柔性作业车间调度方法的流程图,如图1所示,包括以下步骤:
步骤1、基于FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间。
上述FJSP可以描述为:m台机器需要加工n个工件,第j个工件的工序数为h(j),而每个工件的任何工序可以在m台机器集的子集中的任意一台机器上加工,并且对应的加工时间随着加工机器的不同而不同。柔性作业车间调度问题的目标是在工序约束和设备能力约束的前提下,对所有工序进行机器分配和排序组合,使得某种性能指标最优。由此可见,对于FJSP问题,其基本参数至少包括:工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间。
例如:某FJSP为4台机器需要加工3个工件,工件J1包括3道工序,工件J2包括2道工序,工件J3包括3道工序,共8道工序,其原始数据可以如表1所示,其中,Oij表示第i个工件的第j道工序,“-”表示机器不能加工该工序,表中的数字表示加工时间,单位为分钟,如机器M4不能加工工序O11,O11在机器M2上的加工时间为3分钟。
表1某FJSP原始数据
基于所述FJSP给定的基本参数,可以生成初始种群S,例如:可以先产生N个所述FJSP的初始解,得到N个个体,然后由所述N个个体组成初始种群S,这样,初始种群S中的每个个体分别对应所述FJSP的一个初始解,其中,所述N可以是预设的参数值,如50、100或150等,每个初始解即为一种对所有工序进行机器分配和排序组合的方法。
具体地,可以先确定种群的编码方式,即确定初始种群S中每个个体的表达形式,例如:采用集成编码或分段编码方式,其中,分段编码中每个个体可以由机器选择部分(Machine Selection,简称MS)和工序排序部分(Operation Sequencing,简称OS)组成。然后可以采用全局选择、局部选择或随机选择方式生成初始种群S,例如:采用全局随机选择初始化方法,具体可以是基于堆栈的思想,将所有工序依次存放在n个数组中,每个数组表示一个工件,并从上至下依次存放第一道工序至最后一道工序。随机选择一类工件,选取该数组当前存放的第一道工序,对该工序进行机器选择,并存放在MS相应的基因位置处,随后删除该工序。循环进行,直至所有工序的机器选择完毕为止。最后可以根据每台机器上分配的工序,确定工序的加工顺序,并存放在OS相应的基因位置处,从而生成初始种群S,并可将初始种群S作为父代种群P。
可选的,每个种群中的个体均采用的形式进行编码;
其中,Xi表示种群中的第i个个体,To表示所有工件的工序数之和,表示第一个工件所需依次加工的工序至最后一个工件所需依次加工的工序所分别分配的机器号,表示各工序的加工顺序。
该实施方式中,初始种群S可以采用分段编码的方式进行编码,即每个个体可以由MS和OS组成,相应地,其他种群中的个体也将由MS和OS组成,即每个种群中的个体均可采用的形式进行编码,这样,初始种群S可以表达为S={X1,X2,…,Xi,…,XN},其中,Xi表示种群中的第i个个体,To表示所有工件的工序数之和,为机器选择部分,表示第一个工件所需依次加工的工序至最后一个工件所需依次加工的工序所分别分配的机器号,为工序排序部分,表示各工序的加工顺序。
具体地,MS段的值可表示某工件的某道工序所分配的机器号在其可选的机器子集中所处的位置号,例如:针对表1中描述的FJSP,的值为2,由于O11可选的机器子集为(M1,M2,M3),因此,的值为2表示O11分配的机器M2,OS段的值可表示某工序对应的工件号。这样,一个可行解的编码方式可以如图2所示,其编码后可表示为(1,2,3,1,3,1,4,2,1,2,3,1,1,3,2,3)。
该实施方式中,分段编码方式对工序可选机器的个数的多少没有要求,长度确定,操作方便,计算效率较高,且能保证编码的柔性较高,可满足调度规模变化,工件工序不定等各种复杂工况。
步骤2、对父代种群P进行选择、交叉和变异操作,得到临时子代种群T。
本发明实施例中,可以基于现有基本遗传算法对父代种群P进行选择、交叉和变异操作,例如:选择操作可以采用轮盘赌选择法、随机遍历抽样法或锦标赛选择法等,交叉操作可以采用单点交叉、两点交叉、多点交叉、均匀交叉或基于工件优先顺序的交叉(Precedence Preserving Oder-based Crossover,简称POX交叉)等方式,变异操作可以采用基本位变异、均匀变异、边界变异、单点变异或基于邻域搜索变异等方式。在对父代种群P进行选择、交叉和变异操作之后,可以生成新的种群,新生成的种群即为临时子代种群T。
优选地,本方案可采用锦标赛选择法对父代种群P进行选择操作,以从父代种群P中选择最好的个体进入子代种群;MS段可以采用均匀交叉方式,以保证每位基因的先后顺序不变,OS段可以采用POX交叉方式,以保证子代种群能够较好地继承父代个体的优良特征;MS段可以采用单点变异方式,以较好的保持优良个体的信息和机器顺序不被破坏,OS段可以采用基于邻域搜索变异方式,以更好地通过局部范围内的搜索找到合适MS的工序排序,改善子代性能。
步骤3、基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C。
在得到临时子代种群T后,便可以基于小生境预选择机制,对父代种群P进行小生境预选择操作,以得到子代种群C,其中,小生境预选择机制的基本理论是:可以将父代种群P中的N个个体当作N类小生境,针对父代个体和新生成的子代个体,进行适应度大小比较,若子代个体的适应度高于父代个体的适应度,则将子代个体替换父代个体,否则保持父代个体不变。通过对父代种群P进行小生境预选择操作,可以有效维持种群的多样性,进而有助于找到所述FJSP的全局最优解。
该步骤中,具体地,可以对于临时子代种群T的每个子代个体,分别与其对应的直系父代个体进行适应度大小比较,若临时子代种群T中的某子代个体的适应度高于其直系父代个体的适应度,则将该子代个体替换其直系父代个体,否则保持其直系父代个体不变,这样,经比较替换之后得到的新的种群即为子代种群C。
或者,对于临时子代种群T的每个子代个体,不仅仅可以替换适应度较低的直系父代个体,也可以在满足一定条件下替换其他父代个体。例如:所述步骤3可以包括:
步骤31、分别计算父代种群P中的N个个体与临时子代种群T中的第i个个体的海明距离H,其中,i的初始值为1。
步骤32、确定父代种群P中与临时子代种群T中的第i个个体的海明距离最小的目标个体。
步骤33、分别计算临时子代种群T中的第i个个体和所述目标个体的适应度值。
步骤34、若临时子代种群T中的第i个个体的适应度值大于所述目标个体的适应度值,则使用临时子代种群T中的第i个个体替换父代种群P中的所述目标个体。
步骤35、重复执行步骤31至步骤34,直至i的值等于N,其中,每执行一次步骤31至步骤34,i的值加1。
步骤36、将替换后的父代种群P作为子代种群C。
该实施方式中,可以先分别计算父代种群P中的N个个体与临时子代种群T中的第i个个体的海明距离H,具体地,可以按照公式进行计算,其中,i的初始值为1,j表示父代种群P中的第j个个体,即可以先分别计算H11、H12、…、H1N的值。
然后,可以确定H11、H12、…、H1N中的最小值,并记录该最小值对应父代种群P中的目标个体,例如:若H1j的值最小,则可以确定父代种群P中的第j个个体Xj为目标个体。
在确定目标个体后,可以分别计算临时子代种群T中的第1个个体和所述目标个体的适应度值,并比较临时子代种群T中的第1个个体与所述目标个体的适应度值的大小,其中,适应度值的计算方式可以根据所述FJSP的目标优化性能指标确定,所述目标优化性能指标可以是最大完工时间、机器最大负荷或总机器负荷等。
例如:若以最大完工时间最小为目标优化性能指标,则可以分别计算以临时子代种群T中的第1个个体作为所述FJSP的解时所需的最大完工时间和以所述目标个体作为所述FJSP的解时所需的最大完工时间,其中,最大完工时间越小,适应度值越高。
若临时子代种群T中的第1个个体的适应度值大于所述目标个体的适应度值,则使用临时子代种群T中的第1个个体替换父代种群P中的所述目标个体,否则保持所述目标个体不变。例如:所述目标个体为父代种群P中的第j个个体,若临时子代种群T中的第1个个体的适应度值大于父代种群P中的第j个个体的适应度值,则使用临时子代种群T中的第1个个体替换父代种群P中的第j个个体。
接着,可以将i的值加1,并重复执行步骤31至步骤34,直至i的值等于N,即在比较临时子代种群T中的第N个个体与父代种群P的N个个体中与其海明距离最小的个体的适应度值,且作相应处理之后,便可以停止执行步骤31至步骤34,并将替换后的父代种群P作为子代种群C。
这样,该实施方式中,通过采用步骤31至步骤36的方式来对父代种群P进行小生境预选择操作,可以进一步提高所述柔性作业车间调度方法的寻优性能,进而提高车间调度效果。
可选的,所述步骤3之后,所述步骤4之前,所述方法还包括:
将子代种群C作为下一次迭代操作的父代种群P,并重复执行步骤2和步骤3,直至迭代次数Gm达到预设迭代次数,其中,Gm的初始值为0,每执行一次步骤2和步骤3,Gm的值加1。
该实施方式中,还可以预先设定迭代次数,以将步骤2和步骤3重复执行预先设定的迭代次数,具体地,可以将执行步骤3之后得到的子代种群C作为下一次迭代操作的父代种群P,并重复执行步骤2和步骤3,直至迭代次数Gm达到预设迭代次数,其中,所述预设迭代次数可以为100、200或500等,具体可以根据所述FJSP的复杂度设定,复杂度越高,预设迭代次数可以相应设定得较大。
这样,通过多次迭代操作,可以不断更新子代种群C,使其中的个体不断趋向于最优个体,进而可提高所述FJSP的目标优化性能指标。
步骤4、计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解。
在得到子代种群C后,便可以计算子代种群C中每个个体的适应度值,具体计算方式可以参见前述实施方式中的介绍,为避免重复,这里不再赘述。基于计算出的子代种群C中每个个体的适应度值,可以确定其中适应度值最高的个体,例如:若以最大完工时间作为所述FJSP的目标优化性能指标,则可以确定子代种群C中最大完工时间最小的个体。子代种群C中适应度值最高的个体即可作为所述FJSP的最优解。
可选的,所述步骤4包括:
计算子代种群C中每个个体的最大完工时间,并将子代种群C中最大完工时间最短的个体作为所述FJSP的最优解。
该实施方式中,可以将最大完工时间作为所述FJSP的目标优化性能指标,其中,所述最大完工时间是指每台机器结束加工工序的最晚时间,因此,可以按照公式T=max1≤l≤m(MT(l)),计算子代种群C中每个个体的最大完工时间,其中,m表示机器总数,MT(l)表示第l台机器结束加工工序的时间。并可以将F=min(max1≤l≤m(MT(l)))作为所述FJSP的目标函数,确定出子代种群C中最大完工时间最短的个体,从而得到所述FJSP的最优解。
这样,该实施方式中,通过将子代种群C中最大完工时间最短的个体作为所述FJSP的最优解,可使基于所述最优解进行调度后的作业车间的生产效率能够达到最优。
可选的,所述步骤4之后,所述方法还包括:
基于所述最优解,输出调度甘特图。
该实施方式中,可以基于所述最优解,输出调度甘特图,以方便用户能够直观地通过所述调度甘特图获知到每个工件的每道工序所选择的机器,以及各道工序在机器上的加工顺序,从而可以依据所述调度甘特图对作业车间进行快速调度,且能方便地获知到该调度方案的最大完工时间。
步骤5、基于所述最优解,对所述FJSP对应的作业车间进行调度。
在确定最优解后,便可基于所述最优解,对所述FJSP对应的作业车间进行调度,具体地,可以对所述最优解进行解码,以得到所述最优解对应的调度信息,即确定每个工件的每道工序所选择的机器,以及各道工序在机器上的加工顺序,然后可以依据该调度信息,对每个工件的每道工序分配机器,并确定每台机器上各工序的加工顺序和开始加工时间,完成对所述FJSP对应的作业车间的调度。
可选的,所述步骤4之后,所述步骤5之前,所述方法还包括:
重复执行步骤1至步骤4,直至连续运行次数COT达到预设次数k,其中,COT的初始值为0,每执行一次步骤1至步骤4,COT的值加1;
将连续运行k次后得到的k个最优解中适应度值最高的最优解确定为目标最优解。
所述步骤5包括:
基于所述目标最优解,对所述FJSP对应的作业车间进行调度。
由于算法存在一定的随机性,因此,该实施方式中,还可以预先设定连续运行次数,以将步骤1至步骤4连续运行预先设定的次数,从而保证求解出的目标最优解具备较高的可信度。具体地,可以在运行一次得到一个最优解后,重复执行步骤1至步骤4,直至连续运行次数COT达到预设次数k,其中,k的值可以为5、8、10或15等。
在连续运行k次后,将得到k个最优解,该实施方式中,可以选取其中适应度值最高的最优解确定为目标最优解,以保证所述FJSP的调度效果最佳。
下面结合一实际案例的实验分析结果,对本发明实施例中提供的柔性作业车间调度方法的有效性进行验证:
该实际案例对应的FJSP为6个工件在10台机器上选择加工并且每个工件有6道加工工序,共36道工序,工件可选加工机器和加工时间如表2所示,其目标优化性能指标为最大完工时间。
表2车间加工信息
在求解该实际案例时,可以预先设置各参数值为:N=100,Gm=50,Pc=0.8,Pm=0.1,COT=30,其中,N表示种群大小,Gm表示迭代次数,Pc表示交叉概率,Pm表示变异概率,COT表示连续运行次数。
基于以上参数,采用本发明实施例中提供的基于小生境预选择机制的柔性作业车间调度方法对该实际案例的最优解进行求解,可得最优解为51,平均最优解为51.9,其中,最优解51对应的调度甘特图如图3所示,其中,格子中的数字表示该工序对应的工件号,随着迭代次数的增加,最优解的变化曲线可如图4所示,且由图可见,随着迭代次数的增加,求得的解逐渐趋于最优解51。由图3可见,所有工序在加工机器上均匀分布,加工时间紧凑,可缩短柔性作业车间的加工时间,进而有效地提高加工机器的设备利用率,而使用现有基本遗传算法求解得到的最优解为60,其对应的调度甘特图如图5所示。
由此可见,本发明实施例提供的基于小生境预选择机制的柔性作业车间调度方法相对于基于现有遗传算法的柔性作业车间调度方法的确具备更佳的调度效果。
本发明实施例中的柔性作业车间调度方法,通过加入小生境预选择机制来改进现有基本遗传算法在求解FJSP问题时存在的问题,使得解的搜索空间能够保持种群多样性,从而可保证求得的解可收敛于全局最优,进而能够提高车间调度效果。
参见图6,图6是本发明实施例提供的一种柔性作业车间调度系统的结构示意图,如图6所示,柔性作业车间调度系统600包括:
生成模块601,用于基于FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间;
遗传模块602,用于对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;
预选择模块603,用于基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;
计算模块604,用于计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;
调度模块605,用于基于所述最优解,对所述FJSP对应的作业车间进行调度。
可选的,所述计算模块604包括:
第一计算单元,用于分别计算父代种群P中的N个个体与临时子代种群T中的第i个个体的海明距离H,其中,i的初始值为1;
第一确定单元,用于确定父代种群P中与临时子代种群T中的第i个个体的海明距离最小的目标个体;
第二计算单元,用于分别计算临时子代种群T中的第i个个体和所述目标个体的适应度值;
替换单元,用于若临时子代种群T中的第i个个体的适应度值大于所述目标个体的适应度值,则使用临时子代种群T中的第i个个体替换父代种群P中的所述目标个体;
重复执行单元,用于重复执行步骤31至步骤34,直至i的值等于N,其中,每执行一次步骤31至步骤34,i的值加1;
第二确定单元,用于将替换后的父代种群P作为子代种群C。
可选的,所述柔性作业车间调度系统600还包括:
迭代模块,用于将子代种群C作为下一次迭代操作的父代种群P,并重复执行步骤2和步骤3,直至迭代次数Gm达到预设迭代次数,其中,Gm的初始值为0,每执行一次步骤2和步骤3,Gm的值加1。
可选的,所述柔性作业车间调度系统600还包括:
连续运行模块,用于重复执行步骤1至步骤4,直至连续运行次数COT达到预设次数k,其中,COT的初始值为0,每执行一次步骤1至步骤4,COT的值加1;
确定模块,用于将连续运行k次后得到的k个最优解中适应度值最高的最优解确定为目标最优解;
所述调度模块605用于基于所述目标最优解,对所述FJSP对应的作业车间进行调度。
可选的,每个种群中的个体均采用的形式进行编码;
其中,Xi表示种群中的第i个个体,To表示所有工件的工序数之和,表示第一个工件所需依次加工的工序至最后一个工件所需依次加工的工序所分别分配的机器号,表示各工序的加工顺序。
可选的,所述计算模块604用于计算子代种群C中每个个体的最大完工时间,并将子代种群C中最大完工时间最短的个体作为所述FJSP的最优解。
可选的,所述柔性作业车间调度系统600还包括:
输出模块,用于基于所述最优解,输出调度甘特图。
柔性作业车间调度系统600能够实现图1的方法实施例中的各个过程,为避免重复,这里不再赘述。本发明实施例的性作业车间调度系统通过加入小生境预选择机制来改进现有基本遗传算法在求解FJSP时存在的问题,使得解的搜索空间能够保持种群多样性,从而可保证求得的解可收敛于全局最优,进而能够提高车间调度效果。
本发明实施例还提供另一种柔性作业车间调度系统,包括处理器,存储器,存储在存储器上并可在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述柔性作业车间调度方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述柔性作业车间调度方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (10)
1.一种柔性作业车间调度方法,其特征在于,包括以下步骤:
步骤1、基于柔性作业车间调度问题FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间;
步骤2、对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;
步骤3、基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;
步骤4、计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;
步骤5、基于所述最优解,对所述FJSP对应的作业车间进行调度。
2.根据权利要求1所述的方法,其特征在于,所述步骤3包括:
步骤31、分别计算父代种群P中的N个个体与临时子代种群T中的第i个个体的海明距离H,其中,i的初始值为1;
步骤32、确定父代种群P中与临时子代种群T中的第i个个体的海明距离最小的目标个体;
步骤33、分别计算临时子代种群T中的第i个个体和所述目标个体的适应度值;
步骤34、若临时子代种群T中的第i个个体的适应度值大于所述目标个体的适应度值,则使用临时子代种群T中的第i个个体替换父代种群P中的所述目标个体;
步骤35、重复执行步骤31至步骤34,直至i的值等于N,其中,每执行一次步骤31至步骤34,i的值加1;
步骤36、将替换后的父代种群P作为子代种群C。
3.根据权利要求1或2所述的方法,其特征在于,所述步骤3之后,所述步骤4之前,所述方法还包括:
将子代种群C作为下一次迭代操作的父代种群P,并重复执行步骤2和步骤3,直至迭代次数Gm达到预设迭代次数,其中,Gm的初始值为0,每执行一次步骤2和步骤3,Gm的值加1。
4.根据权利要求1或2所述的方法,其特征在于,所述步骤4之后,所述步骤5之前,所述方法还包括:
重复执行步骤1至步骤4,直至连续运行次数COT达到预设次数k,其中,COT的初始值为0,每执行一次步骤1至步骤4,COT的值加1;
将连续运行k次后得到的k个最优解中适应度值最高的最优解确定为目标最优解;
所述步骤5包括:
基于所述目标最优解,对所述FJSP对应的作业车间进行调度。
5.根据权利要求1或2所述的方法,其特征在于,每个种群中的个体均采用
的形式进行编码;
其中,Xi表示种群中的第i个个体,To表示所有工件的工序数之和,表示第一个工件所需依次加工的工序至最后一个工件所需依次加工的工序所分别分配的机器号,表示各工序的加工顺序。
6.根据权利要求1所述的方法,其特征在于,所述步骤4包括:
计算子代种群C中每个个体的最大完工时间,并将子代种群C中最大完工时间最短的个体作为所述FJSP的最优解。
7.根据权利要求1或2所述的方法,其特征在于,所述步骤4之后,所述方法还包括:
基于所述最优解,输出调度甘特图。
8.一种柔性作业车间调度系统,其特征在于,包括:
生成模块,用于基于柔性作业车间调度问题FJSP的基本参数,生成初始种群S,并将初始种群S作为父代种群P,其中,初始种群S包括N个个体,每个个体分别对应所述FJSP的一个初始解,所述基本参数包括工件数、每个工件所包含的工序和每道工序可选择的机器及在该机器上的加工时间;
遗传模块,用于对父代种群P进行选择、交叉和变异操作,得到临时子代种群T;
选择模块,用于基于临时子代种群T,对父代种群P进行小生境预选择操作,得到子代种群C;
计算模块,用于计算子代种群C中每个个体的适应度值,并将子代种群C中适应度值最高的个体作为所述FJSP的最优解;
调度模块,用于基于所述最优解,对所述FJSP对应的作业车间进行调度。
9.一种柔性作业车间调度系统,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的柔性作业车间调度方法中的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的柔性作业车间调度方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810489708.6A CN108776461A (zh) | 2018-05-21 | 2018-05-21 | 一种柔性作业车间调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810489708.6A CN108776461A (zh) | 2018-05-21 | 2018-05-21 | 一种柔性作业车间调度方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108776461A true CN108776461A (zh) | 2018-11-09 |
Family
ID=64027388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810489708.6A Pending CN108776461A (zh) | 2018-05-21 | 2018-05-21 | 一种柔性作业车间调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108776461A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109709916A (zh) * | 2018-12-20 | 2019-05-03 | 宁波大学 | 一种基于Gibbs取样法的调度方法 |
CN109784603A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于混合鲸鱼群算法求解柔性作业车间调度的方法 |
CN110632907A (zh) * | 2019-10-30 | 2019-12-31 | 山东师范大学 | 一种分布式装配式置换流水车间调度优化方法及系统 |
CN111123869A (zh) * | 2019-12-24 | 2020-05-08 | 北京理工大学 | 一种基于工人操作经验的柔性作业车间调度方法及装置 |
CN111178529A (zh) * | 2019-12-31 | 2020-05-19 | 中科曙光国际信息产业有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
CN111222642A (zh) * | 2020-01-03 | 2020-06-02 | 浙江大学 | 基于改进小生境遗传算法的多目标柔性作业车间调度方法 |
CN112785407A (zh) * | 2021-02-10 | 2021-05-11 | 中国工商银行股份有限公司 | 一种基于多种群遗传算法的网点分配比例寻优方法及装置 |
CN113887083A (zh) * | 2021-10-29 | 2022-01-04 | 北京明略软件系统有限公司 | 一种空调调度优化方法、系统、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305921A (ja) * | 1999-04-26 | 2000-11-02 | Toyo Electric Mfg Co Ltd | 遺伝的アルゴリズムを用いた水運用計画処理方法 |
CN106610654A (zh) * | 2015-12-29 | 2017-05-03 | 四川用联信息技术有限公司 | 针对柔性作业车间调度的改进遗传算法 |
CN106933200A (zh) * | 2015-12-31 | 2017-07-07 | 中国科学院沈阳计算技术研究所有限公司 | 基于遗传算法的解决柔性作业车间调度问题的控制方法 |
-
2018
- 2018-05-21 CN CN201810489708.6A patent/CN108776461A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305921A (ja) * | 1999-04-26 | 2000-11-02 | Toyo Electric Mfg Co Ltd | 遺伝的アルゴリズムを用いた水運用計画処理方法 |
CN106610654A (zh) * | 2015-12-29 | 2017-05-03 | 四川用联信息技术有限公司 | 针对柔性作业车间调度的改进遗传算法 |
CN106933200A (zh) * | 2015-12-31 | 2017-07-07 | 中国科学院沈阳计算技术研究所有限公司 | 基于遗传算法的解决柔性作业车间调度问题的控制方法 |
Non-Patent Citations (2)
Title |
---|
杨立熙 等: "考虑运输时间的柔性作业车间调度问题研究", 《武汉理工大学学报( 信息与管理工程版)》 * |
郑敏 等: "一种多模态优化的小生境遗传算法", 《计算机系统应用》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784603A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于混合鲸鱼群算法求解柔性作业车间调度的方法 |
CN109784603B (zh) * | 2018-11-15 | 2024-02-02 | 长安大学 | 一种基于混合鲸鱼群算法求解柔性作业车间调度的方法 |
CN109709916A (zh) * | 2018-12-20 | 2019-05-03 | 宁波大学 | 一种基于Gibbs取样法的调度方法 |
CN110632907A (zh) * | 2019-10-30 | 2019-12-31 | 山东师范大学 | 一种分布式装配式置换流水车间调度优化方法及系统 |
CN111123869A (zh) * | 2019-12-24 | 2020-05-08 | 北京理工大学 | 一种基于工人操作经验的柔性作业车间调度方法及装置 |
CN111178529A (zh) * | 2019-12-31 | 2020-05-19 | 中科曙光国际信息产业有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
CN111178529B (zh) * | 2019-12-31 | 2023-01-20 | 中科曙光国际信息产业有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
CN111222642A (zh) * | 2020-01-03 | 2020-06-02 | 浙江大学 | 基于改进小生境遗传算法的多目标柔性作业车间调度方法 |
CN111222642B (zh) * | 2020-01-03 | 2022-07-19 | 浙江大学 | 基于改进小生境遗传算法的多目标柔性作业车间调度方法 |
CN112785407A (zh) * | 2021-02-10 | 2021-05-11 | 中国工商银行股份有限公司 | 一种基于多种群遗传算法的网点分配比例寻优方法及装置 |
CN112785407B (zh) * | 2021-02-10 | 2024-02-06 | 中国工商银行股份有限公司 | 一种基于多种群遗传算法的网点分配比例寻优方法及装置 |
CN113887083A (zh) * | 2021-10-29 | 2022-01-04 | 北京明略软件系统有限公司 | 一种空调调度优化方法、系统、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108776461A (zh) | 一种柔性作业车间调度方法及系统 | |
Mei et al. | An efficient feature selection algorithm for evolving job shop scheduling rules with genetic programming | |
Wang et al. | Gaussian bare-bones differential evolution | |
CN107977740A (zh) | 一种现场运维智能调度方法 | |
CN104268722B (zh) | 基于多目标进化算法的动态柔性作业车间调度方法 | |
CN111507641A (zh) | 一种批处理设备调度方法及其装置 | |
CN104700160B (zh) | 一种车辆路径优化方法 | |
CN101901425A (zh) | 一种基于多种群协同进化的柔性作业车间调度方法 | |
CN111144710B (zh) | 一种可持续性混合流水车间的构建和动态调度方法 | |
CN112053002B (zh) | 一种基于效用感知的云制造多任务调度方法 | |
CN101118611A (zh) | 基于遗传算法的业务过程模型资源配置优化方法 | |
CN111062535A (zh) | 一种实现含能材料生产过程动态排产的方法及系统 | |
US8671066B2 (en) | Medical data prediction method using genetic algorithms | |
CN109523178A (zh) | 一种面向电力通信现场的运维方法及装置 | |
CN108182518A (zh) | 一种基于改进遗传算法的在制状态人员调度方法 | |
Teekeng et al. | A combination of shuffled frog leaping and fuzzy logic for flexible job-shop scheduling problems | |
Gu et al. | A discrete particle swarm optimization algorithm with adaptive inertia weight for solving multiobjective flexible job-shop scheduling problem | |
CN112348323A (zh) | 一种多目标的能源供应与作业柔性排程方法 | |
CN115271130B (zh) | 面向船舶主动力设备维修订单的动态调度方法及系统 | |
CN116401037B (zh) | 一种基于遗传算法的多任务调度方法和系统 | |
CN112686474A (zh) | 一种基于改进的水波优化算法的可并行装配线平衡方法 | |
CN116736803A (zh) | 一种生产任务与资源匹配方法及装置 | |
CN104281917A (zh) | 基于自适应遗传和克隆选择算法的模糊作业车间调度方法 | |
Yang et al. | Cultural‐Based Genetic Tabu Algorithm for Multiobjective Job Shop Scheduling | |
Michelakos et al. | A hybrid classification algorithm evaluated on medical data |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181109 |
|
RJ01 | Rejection of invention patent application after publication |