CN109711701A - 装备研发制造过程中的协同调度方法、系统和存储介质 - Google Patents
装备研发制造过程中的协同调度方法、系统和存储介质 Download PDFInfo
- Publication number
- CN109711701A CN109711701A CN201811564314.9A CN201811564314A CN109711701A CN 109711701 A CN109711701 A CN 109711701A CN 201811564314 A CN201811564314 A CN 201811564314A CN 109711701 A CN109711701 A CN 109711701A
- Authority
- CN
- China
- Prior art keywords
- individual
- workpiece
- batch
- population
- current
- 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.)
- Granted
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种面向工业互联网的装备研发制造过程中的协同调度方法、系统和存储介质,涉及工业调度技术领域。该方法包括:S100、设置算法参数;S200、生成初始种群,将初始种群中适应度值最低的个体作为全局最优解;S300、针对当前种群中每一个个体,构建对应的邻域结构;S400、根据每一个个体的邻域结构,对该个体进行更新;S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作;S600、在当前种群中选择适应度值最低的个体,对全局最优解进行更新;S700、判断当前迭代次数是否小于最大迭代次数:若是,则返回S300;否则,根据全局最优解,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。本发明能够提供一种合理的调度方案。
Description
技术领域
本发明涉及工业调度技术领域,具体涉及一种面向工业互联网的装备研发制造过程中的协同调度方法、系统和存储介质。
背景技术
物联网、大数据、云计算等新型信息技术的不断发展,催生制造业研发模式和生产制造模式的不断变革。目前在航天、船舶、军事等高端装备领域中,多数企业已开展以“工业+互联网”为核心的智能研发和智能制造,因此在工业互联网环境下,如何利用全面互联的技术,高效实现高端装备研发制造过程的协同化,是目前亟需解决的问题。高端装备研发制造过程往往需要多个代理协同化管理,例如,在部分飞机铝制品零件的生产过程中,半成铝产品被放入时效炉进行加工,加工得到的铝成品一部分外包给合作商,另一部分铝成品留在铝厂以供其生产需求,因此在半成铝产品加工成铝成品时需要考虑到两个代理的不同需求,该铝产品工艺流程的加工调度问题是一类典型的two-agent问题。铝产品不仅可以用来冶炼稀有金属,还可以应用在高端装备的零部件中,如航空硬铝7075。由于铝产品的应用范围广,且生产成本较低的特点,使得优化铝产品工艺流程的生产制造过程,对国防的建设,经济的提升和综合国力的增强具有重要的意义。
发明内容
(一)针对现有技术的不足,本发明提供了一种面向工业互联网的装备研发制造过程中的协同调度方法、系统和存储介质,能够提供一种合理的调度方案。
(二)为实现以上目的,本发明通过以下技术方案予以实现:
第一方面,本发明提供了一种面向工业互联网的装备研发制造过程中的协同调度方法,该方法包括:
S100、设置算法参数,所述算法参数中至少包括预设的最大迭代次数;
S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
S300、针对当前种群中的每一个个体,构建对应的邻域结构;
S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
S700、判断当前迭代次数是否小于所述最大迭代次数:
若是,则返回S300;
否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
第二方面,本发明提供一种面向工业互联网的装备研发制造过程中的协同调度系统,该系统包括:
参数设置模块,用于执行S100、设置算法参数,所述算法参数中至少包括预设的最大迭代次数;
种群生成模块,用于执行S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
邻域构建模块,用于执行S300、针对当前种群中的每一个个体,构建对应的邻域结构;
第一更新模块,用于执行S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
第二更新模块,用于执行S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
最优解更新模块,用于执行S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
终止判断模块,用于执行S700、判断当前迭代次数是否小于所述最大迭代次数:若是,则返回邻域构建模块中执行S300;否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可实现上述调度方法。
(三)本发明实施例提供了一种面向工业互联网的装备研发制造过程中的协同调度方法、系统和存储介质,首先通过邻域结构搜索,避免陷入局部最优,然后对种群进行趋化、复制和驱逐等操作,不断提高种群质量;通过迭代多个步骤,在解空间内不断搜索,最终求得较好的全局最优解;最后采用启发式算法对全局最优解进行优化,以使得到的目标协同调度方案更加合理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中面向工业互联网的装备研发制造过程中的协同调度方法的流程示意图;
图2是本发明一实施例中步骤S500的具体流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
第一方面,本发明提供一种面向工业互联网的装备研发制造过程中的协同调度方法,如图1所示,该方法包括:
S100、设置算法参数;
其中,所述算法参数中至少包括预设的最大迭代次数。
在实际应用中,算法参数还可以包括工件总数、第一代理A的工件数量、第二代理B的工件数量、加工机器的数量M、工件的普通加工时间、各个工件自个的恶化率、最大迭代次数、最大趋化操作次数、预设的最大复制操作次数、预设的最大驱逐操作次数、每一次趋化操作中预设的最大游动次数、预设的驱逐概率、种群的规模即种群中个体的数量、个体的初始位置、第一预设值即给定值U等。其中,个体的初始位置可以用趋化操作次数yc、复制操作次数yre和驱逐操作次数yed表示,例如,第j个个体的初始位置为θj=(yc,yre,yed)。
S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
每一个个体的生成过程可以包括如下步骤:
生成N个取值在[1,M]范围内的整数,得到由N个取值在[1,M]范围内的整数构成的随机整数序列;其中,N为工件的总数,M为机器的数量,所述机器为有界平行批处理机;
这里,生成N个取值在[1,M]范围内的整数,实际上是将N个工件分配到M台机器上。假如随机整数序列为若g=1,则工件放至第1台机器上加工,若g=2,则工件放至第2台机器上加工。
可见,个体和解并不是同一概念,个体中包括N个取值在[1,M]范围内的整数,表示N个工件分配到M台机器上。而解不仅是将N个工件分配到M个机器上,还要将每一台机器上的各个工件进行组批,即还要确定每一台机器上的各个批次中所包含的工件,各个批次的顺序。
在实际应用中,每一个个体的适应度值计算过程如下:
S201、根据该个体中N个取值在[1,M]范围内的整数,确定每一台机器需处理的所有工件;其中,N为工件的总数,N个工件中包括多个第一代理的工件和多个第二代理的工件;
可理解的是,在个体中有10个整数6,则在N个工件中有10个工件会被分配到第6台机器上。按照这种方式,可以找到每一台机器上处理的所有工件。S202、对每一台机器需处理的所有工件执行FBLDR算法,以确定该台机器需处理的所有工件所分成的各个批次;
S202、采用启发式算法对各台机器上的各个批次进行调整,确定在批次调整后第一代理的所有工件的制造时间跨度,并将该制造时间跨度作为该个体的适应度值。
可见,通过步骤S202~S203可根据个体,利用启发式算法对工件进行组批以及各个批次进行调整,进而将第一代理的工件的制造时间跨度作为个体的适应度值。
S300、针对当前种群中的每一个个体,构建对应的邻域结构;
在实际应用中,邻域结构可以有单个个体置换邻域结构、多个个体置换邻域结构、插入型学习邻域结构、变异型学习邻域结构。由于需要执行多次迭代过程,例如,最大迭代次数为10,在第1、5、9次迭代过程中生成的邻域结构是单个个体置换邻域结构、在第2、6、10次迭代过程中生成的邻域结构为多个个体置换邻域结构、第3、7次迭代过程中生成的邻域结构为插入型学习邻域结构、第4、8次迭代过程生成的邻域结构为变异型学习邻域结构。采用多种邻域结构,有利于在搜索过程中跳出局部最优,避免算法过早收敛。同时,在邻域搜索时,利用了置换、变异、插入、学习等方式进行更新,既保证了种群的多样性,也遗传了优秀个体,始终保证种群中个体的质量,有效的改进了搜索效果。
S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
在实际应用中,针对种群中的第j个个体,在其邻域结构中进行搜索,搜索邻域结构中适应度最低的个体p,若个体p的适应度值比第j个个体的适应度值更低,则将第j个个体替换为个体p,否则保持第j个个体不变。通过这种方式实现对种群中的每一个个体的更新,从而实现对整个种群的更新。
S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
这里,对每一个个体执行趋化操作、复制操作和驱逐操作,从而实现对整个种群的更新。
可理解的是,这里的当前种群是步骤S400中更新完之后的种群。
在实际应用中,如图2所示,对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作的过程可以包括:
S501、设置趋化操作的初始次数为1、复制操作的初始次数为1以及驱逐操作的初始次数为1;
S502、判断当前驱逐操作次数是否小于所述最大驱逐操作次数;
S503、若当前驱逐操作次数小于所述最大驱逐操作次数,则执行S504;否则,输出当前种群;
S504、判断当前复制操作次数是否小于所述最大复制操作次数;
S505、若当前复制操作次数小于所述最大复制操作次数,则执行S506;否则,将当前复制操作次数置为0,对当前种群中的每一个个体执行一次驱逐操作,将当前驱逐操作次数加1,并返回S502;
S506、判断当前趋化操作次数是否小于所述最大趋化操作次数;
S507、若当前趋化操作次数小于所述最大趋化操作次数,则对当前种群中的每一个个体执行一次趋化操作,将当前趋化操作次数加1,并返回S506;否则,对当前趋化操作次数置为0,对当前种群中的每一个个体执行一次复制操作,将当前复制操作次数加1,并返回S504。
从上述过程可知,每次趋化操作次数达到最大趋化操作次数,才执行一次复制操作;每次复制操作次数达到最大复制操作次数时,才执行一次驱逐操作。例如,最大趋化操作次数为3,最大复制操作次数为4,最大驱逐操作次数为5,当趋化操作次数为3次时,执行一次复制操作;当执行12次趋化操作时,执行了4次复制操作,执行了一次驱逐操作。
其中,对当前种群中的各个个体执行一次趋化操作的过程可以包括:
A1、计算每一个个体在初始位置的适应度值,并将该初始位置作为该个体的当前最佳位置;
例如,针对第j个个体,其初始位置为θj=(yc,yre,yed),则令θj作为第j个个体的当前最佳位置。
A2、随机生成一个取值在[-1,1]范围内的N维方向向量;
针对第j个个体,生成的N维随机向量可以表示为Δ(j)。
A3、根据所述N维方向向量和所述游动步长,将该个体在所述N维方向向量的方向上行进所述游动步长;
具体可以采用如下公式计算第j个个体游动后位置即更新后的位置:
式中,C(j)为第j个个体的步长,
从上式可知,对第j个个体的位置更新是将第j个个体沿着N维方向向量Δ(j)的方向行进游动步长C(j),行进一次,可以称为游动一次。
A4、将当前游动次数置为0;
A5、计算该个体在游动后位置上的适应度值;
A6、判断该个体的当前游动次数是否小于所述最大游动次数:
若是,将当前游动次数加1,并执行A7;
否则,输出该个体在本次趋化操作过程中的当前最佳位置,根据当前最佳位置对该个体进行更新,结束对该个体的本次趋化操作,并返回A1,以执行对下一个个体的趋化操作;
A7、判断该个体在游动后位置的适应度值是否低于该个体的当前最佳位置的适应度值:
若是,则将该个体的当前最佳位置替换为所述游动后位置,并在所述N维方向向量上继续进行所述游动步长,并返回A5;
否则,输出该个体在本次趋化操作过程中的当前最佳位置,根据当前最佳位置对该个体进行更新,结束该个体的本次趋化操作,并返回A1,以执行对下一个个体的趋化操作。
根据上述步骤,遍历完所有个体,实现对每一个个体的适应度值的趋化操作。
可理解的是,在对第j个个体执行一次趋化过程中,需要进行几次游动,选择这几次游动后位置中适应度值最低的位置作为第j个个体的最佳位置,并将第j个个体的位置更新为其最佳位置,从而实现对第j个个体的更新。同时,将第j个个体在该次趋化过程中最佳位置处的适应度值输出,以用于后续的复制操作。
这里,对种群中的每一个个体都执行上述趋化操作,从而实现对种群的更新。
其中,对当前种群中的每一个个体执行一次复制操作的过程可以包括:
B1、计算每一个个体在上一次复制操作之后的各次趋化操作过程中的各个最佳位置处的适应度值的和,并将该和作为该个体的健康值;
若当前执行的是第一次复制操作,则将每一个个体在所执行的各次趋化操作时的各个最佳位置处的适应度值的和作为该个体的健康值;若当前执行的是非第一次复制操作,则将每一个个体在上一次复制操作之后的各次趋化过程中的各个最佳位置处的适应度值之和作为该个体的健康值。
B2、根据种群中各个个体的健康值,对种群中各个个体进行排序;
例如,按照健康值从高到低的顺序进行排序,位置越靠前,健康值越高。
B3、将种群中健康值较高的Q/2个个体淘汰,并根据种群中健康值较低的Q/2个个体,生成Q/2个新个体,所述健康值较低的Q/2个个体和所述Q/2个新个体形成新的种群;其中,Q为种群中个体的数量。
例如,按照健康值从高到低的顺序进行排序,将前面的Q/2个个体淘汰,保留后面的Q/2个个体。然后再复制所保留的Q/2个个体,得到新的Q/2个个体,从而得到Q个个体,形成新的种群。
其中,对当前种群中每一个个体执行一次驱逐操作的过程可以包括:
C1、对每一个个体随机生成一个概率值;
C2、判断该概率值是否小于所述驱逐概率:
若是,则将该个体与种群中的适应度值最低的个体进行多点交叉变换,以实现对该个体的更新;
否则,保留该个体。
可见,在驱逐操作过程中,采用多点交叉变换的方式产生的个体替代被驱逐的个体,保证种群中最优个体不会被淘汰。
通过上述步骤C1和C2,可以实现对每一个个体的驱逐操作,进而实现对种群的更新。
可见,通过上述趋化操作、复制操作、驱逐操作可以实现对种群的更新。
S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
由于经过步骤S500和S600,种群已经被更新,原来的全局最优解的适应度值未必是当前种群中的最低值,因此需要对全局最优解进行更新。具体可以包括:在当前种群中适应度值最低的个体为q,若原来全局最优解的适应度值高于个体q的适应度值,则将全局最优解替换为个体q,否则保持全局最优解不变。
可见,通过步骤S600,实现对全局最优解的更新,以保证全局最优解为当前种群中的最优个体,即适应度值最低的个体。
S700、判断当前迭代次数是否小于所述最大迭代次数:
若是,则返回S300;
否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
当迭代次数达到最大迭代次数后,得到的全局最优解为这些迭代过程中的最优解,然后再采用启发式算法对其调整优化,使得到的目标协同调度方案更加合理。
可理解的是,所谓的批次调整,可以是对每一批中包含的工件进行调整,例如,将一批中的某些工件调至另一批中即改变某些工件所属的批次,还可以是对各个批次的加工顺序进行调整等。
下面对上述过程中提到的启发式算法的具体过程进行说明:
采用启发式算法对各台机器上的各个批次和每个批中各个工件的顺序进行调整,包括:
D1、按照FBLDR算法将所有机器上的所有工件进行组批,得到的各个批次形成第一批次序列;
D2、根据所有批次、批次顺序和每一批次中每一工件的恶化率,计算所有工件的制造时间跨度;
D3、判断所有工件的制造时间跨度与第一预设值的大小关系;
D4、若所有工件的制造时间跨度等于所述第一预设值,则输出所述第一批次序列,并跳到D14;
D5、若所有工件的制造时间跨度大于所述第一预设值,则将各个机器上第一代理的所有工件和第二代理的所有工件分别按照FBLDR算法进行组批,并将第二代理的各个批次设置在第一代理的各个批次之前,得到第二批次序列,并计算所述第二批次序列中第二代理的所有工件的制造时间跨度;
D6、判断第二代理的所有工件的制造时间跨度与所述第一预设值的大小关系;
D7、若第二代理的所有工件的制造时间跨度等于所述第一预设值,则查找包含第二代理的工件的所有批次中的最后一批b1,并确定该最后一批b1中工件的最大恶化率;在该最后一批b1之后加工的第一代理的所有工件中查找恶化率小于或等于所述最大恶化率的工件,并将恶化率小于或等于所述最大恶化率的工件按照恶化率非递增的顺序进行排序,形成第一集合;将所述第一集合中的前vg个工件移至该最后一批b1中,并将所述第一集合中的剩余工件按照FBLDR算法进行组批,将所述剩余工件组成的批次均置于该最后一批b1之后,得到第三批次序列,跳到D14;
其中, 为第g台机器上第二代理的工件的数量;
D8、若第二代理的所有工件的制造时间跨度小于所述第一预设值,则找到满足预设条件的批数K;其中,所述预设条件为第一预设值大于或等于第K-1批的完工时间并小于第K批的完工时间;
D9、按照FBLDR算法对前K批工件重新进行组批,得到的各个批次形成第四批次序列,并计算新的第K批的完工时间;
D10、判断所述完工时间是否小于或等于所述第一预设值,若是,则将K更新为K+1,并对第K批的工件进行更新,并返回D9;否则执行D11;
D11、判断第K批中是否包含第二代理的工件,若不包含第二代理的工件,则输出所述第四批次序列,并跳到D14;若包含第二代理工件,则输出第二批次序列,按照FBLDR算法对前K-1批工件重新进行工件组批,返回D6;
D12、若所有工件的制造时间跨度小于所述第一预设值,则查找包含第一代理工件的所有批中的最后一批b2,将该最后一批b2加工的所有第二代理工件按照恶化率非递减的顺序重新排序,形成第二集合;将所述第二集合中的前q个工件与该最后一批b2中所有第一代理工件置换,得到第五批次序列,并输出所述第五批次序列,跳至D14;其中,q与该最后一批b2中所有第一代理工件的数量相同;
D13、按照FBLDR算法对该最后一批b2前的所有工件重新进行组批,保持该最后一批b2后的批次不变,得到第六批次序列,并计算所有工件的制造时间跨度,并返回D12;
D14、计算第一代理的所有工件的制造跨度时间。
从启发式算法的上述过程可知,本发明解决在考虑具有恶化效应的相容代理工件和有界平行批的情况下的协同调度问题。本发明的优化目标为在第二代理的工件的制造时间跨度不超过第一预设值的情形下,对第一代理的工件的制造时间跨度最小化。
其中,所谓的恶化效应是在一台机器上越早处理的工件的处理时间越短,越晚处理的工件的处理时间越长。例如,在一台机器上第一个处理的工件的处理时间较短,而该台机器上第二个处理的工件的处理时间则会变长。在该台机器上工件的实际处理时间t1=普通处理时间t0+恶化率*加工次序,所谓的加工次序是指工件在该台机器上是第几个加工处理。
其中,所谓的相容代理工件,是指不同代理的工件可以同时处理,例如代理A的工件可以和代理B的工件在一台机器上同时加工处理。
其中,所谓的有界平行批,是指多个工件可以在一台机器上同时加工处理。
本发明中一共包括两个代理,第一代理A和第二代理B,总工件数量为N,两个代理的工件数分别为NA、NB,NA+NB=N。
在上述过程中,用到多次FBLDR算法,下面对每一台机器上的所有工件执行FBLDR算法的过程进行说明:
E1、按照恶化率非递增的方式将该台机器上的所有工件进行排序,得到该台机器的有序工件列表;
可理解的是,所谓的恶化率,是由工件本身的材质、工艺等决定,是工件本身的属性之一。这里按照恶化率非递增的方式排序,得到的有序工件列表中,越靠前的工件,其恶化率越高;越靠后的工件,其恶化率越低。
E2、将当前的有序工件列表中的前c个工件组成一批,并将该批组件从有序工件列表中删除,依次类推,将最后剩余的个工件组成一批,以实现对该台机器上所有工件进行组批和每批中的工件排序;其中c为该台机器能同时处理的工件数量,Ng为该台机器上所有工件的数量。
可理解的是,表示不小于的最小整数。
例如,在一台机器上处理的工件一共有21个,将这21个工件按照恶化率非递增排序后,得到一个有序工件列表。该机器可以同时处理的工件的数量即机器的容量为10,则将有序工件列表中的前10个组成第一批后从有序工件列表中删除,在将当前有序工件列表中的前10个工件组成第二批,最后剩余1个工件组成第三批。
可理解的是,加工机器为M台相同的平行批处理机,即加工处理效果相同,工件可自由组批,在机器上以平行批的形式加工,每批的工件数不能超过机器容量c。每一批的完工时间等于该批中所有工件的最大完成时间,特定的批一旦形成,不能将该批中的工件移出,且不可在该批中添加新工件。
本发明提供的协同调度方法,首先通过邻域结构搜索,避免陷入局部最优,然后对种群进行趋化、复制和驱逐等操作,不断提高种群质量;通过迭代多个步骤,在解空间内不断搜索,最终求得较好的全局最优解;最后采用启发式算法对全局最优解进行优化,以使得到的目标协同方案更加合理。
通过实验,本发明在收敛速度和搜索的解质量方面表现出了良好的性能,解决了在考虑具有恶化效应的相容代理工件和有界平行批的情况下的协同调度问题,提升企业在生产过程中的管理水平,从而提高企业的整体效益。使得在生产铝产品的过程中能最大限度上充分利用其生产资源,降低生产成本,并提高铝产品生产管理水平和生产能力。当将本发明提供的方法应用在铝产品工艺流程的two-agent问题中,求得目标协同调度方案,从而使得在生产铝产品的过程中能最大限度上充分利用其生产资源,降低生产成本,并提高铝产品生产管理水平和生产能力。
第二方面,本发明提供一种面向工业互联网的装备研发制造过程中的协同调度系统,该系统包括:
参数设置模块,用于执行S100、设置算法参数,所述算法参数中至少包括预设的最大迭代次数;
种群生成模块,用于执行S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
邻域构建模块,用于执行S300、针对当前种群中的每一个个体,构建对应的邻域结构;
第一更新模块,用于执行S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
第二更新模块,用于执行S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
最优解更新模块,用于执行S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
终止判断模块,用于执行S700、判断当前迭代次数是否小于所述最大迭代次数:若是,则返回邻域构建模块中执行S300;否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可实现第一方面提供的调度方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种面向工业互联网的装备研发制造过程中的协同调度方法,其特征在于,包括:
S100、设置算法参数,所述算法参数中至少包括预设的最大迭代次数;
S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
S300、针对当前种群中的每一个个体,构建对应的邻域结构;
S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
S700、判断当前迭代次数是否小于所述最大迭代次数:
若是,则返回S300;
否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
2.根据权利要求1所述的方法,其特征在于,每一个个体的适应度值的计算过程包括:
S201、根据该个体中N个取值在[1,M]范围内的整数,确定每一台机器需处理的所有工件;其中,N为工件的总数,N个工件中包括多个第一代理的工件和多个第二代理的工件;
S202、采用启发式算法对各台机器上的各个批次进行调整,确定在批次调整后第一代理的所有工件的制造时间跨度,并将该制造时间跨度作为该个体的适应度值。
3.根据权利要求1所述的方法,其特征在于,所述算法参数中还包括预设的最大趋化操作次数、预设的最大复制操作次数和预设的最大驱逐操作次数;所述对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,包括:
S501、设置趋化操作的初始次数为1、复制操作的初始次数为1以及驱逐操作的初始次数为1;
S502、判断当前驱逐操作次数是否小于所述最大驱逐操作次数;
S503、若当前驱逐操作次数小于所述最大驱逐操作次数,则执行S504;否则,输出当前种群;
S504、判断当前复制操作次数是否小于所述最大复制操作次数;
S505、若当前复制操作次数小于所述最大复制操作次数,则执行S506;否则,将当前复制操作次数置为0,对当前种群中的每一个个体执行一次驱逐操作,将当前驱逐操作次数加1,并返回S502;
S506、判断当前趋化操作次数是否小于所述最大趋化操作次数;
S507、若当前趋化操作次数小于所述最大趋化操作次数,则对当前种群中的每一个个体执行一次趋化操作,将当前趋化操作次数加1,并返回S506;否则,对当前趋化操作次数置为0,对当前种群中的每一个个体执行一次复制操作,将当前复制操作次数加1,并返回S504。
4.根据权利要求3所述的方法,其特征在于,所述算法参数中还包括每一次趋化操作中预设的最大游动次数和每次游动的步长;对当前种群中的各个个体执行一次趋化操作的过程包括:
A1、计算每一个个体在初始位置的适应度值,并将该初始位置作为该个体的当前最佳位置;
A2、随机生成一个取值在[-1,1]范围内的N维方向向量;
A3、根据所述N维方向向量和所述游动步长,将该个体在所述N维方向向量的方向上行进所述游动步长;
A4、将当前游动次数置为0;
A5、计算该个体在游动后位置上的适应度值;
A6、判断该个体的当前游动次数是否小于所述最大游动次数:
若是,将当前游动次数加1,并执行A7;
否则,输出该个体在本次趋化操作过程中的当前最佳位置,根据当前最佳位置对该个体进行更新,结束对该个体的本次趋化操作,并返回A1,以执行对下一个个体的趋化操作;
A7、判断该个体在游动后位置的适应度值是否低于该个体的当前最佳位置的适应度值:
若是,则将该个体的当前最佳位置替换为所述游动后位置,并在所述N维方向向量上继续进行所述游动步长,并返回A5;
否则,输出该个体在本次趋化操作过程中的当前最佳位置,根据当前最佳位置对该个体进行更新;结束该个体的本次趋化操作,并返回A1,以执行对下一个个体的趋化操作。
5.根据权利要求3所述的方法,其特征在于,对当前种群中的每一个个体执行一次复制操作的过程包括:
B1、计算每一个个体在上一次复制操作之后的各次趋化操作过程中的各个最佳位置处的适应度值的和,并将该和作为该个体的健康值;
B2、根据种群中各个个体的健康值,对种群中各个个体进行排序;
B3、将种群中健康值较高的Q/2个个体淘汰,并根据种群中健康值较低的Q/2个个体,生成Q/2个新个体,所述健康值较低的Q/2个个体和所述Q/2个新个体形成新的种群;其中,Q为种群中个体的数量。
6.根据权利要求3所述的方法,其特征在于,所述算法参数中还包括预设的驱逐概率;对当前种群中每一个个体执行一次驱逐操作的过程包括:
C1、对每一个个体随机生成一个概率值;
C2、判断该概率值是否小于所述驱逐概率:
若是,则将该个体与种群中的适应度值最低的个体进行多点交叉变换,以实现对该个体的更新;
否则,保留该个体。
7.如权利要求1~6任一项所述的方法,其特征在于,采用启发式算法对各台机器上的各个批次进行调整,包括:
D1、按照FBLDR算法将所有机器上的所有工件进行组批,得到的各个批次形成第一批次序列;
D2、根据所述第一批次序列,和每一批次中每一工件的恶化率,计算所有工件的制造时间跨度;
D3、判断所有工件的制造时间跨度与第一预设值的大小关系;
D4、若所有工件的制造时间跨度等于所述第一预设值,则输出所述第一批次序列,并跳到D14;
D5、若所有工件的制造时间跨度大于所述第一预设值,则将各个机器上第一代理的所有工件和第二代理的所有工件分别按照FBLDR算法进行组批,并将第二代理的各个批次设置在第一代理的各个批次之前,得到第二批次序列,并计算所述第二批次序列中第二代理的所有工件的制造时间跨度;
D6、判断第二代理的所有工件的制造时间跨度与所述第一预设值的大小关系;
D7、若第二代理的所有工件的制造时间跨度等于所述第一预设值,则查找包含第二代理的工件的所有批次中的最后一批b1,并确定该最后一批b1中工件的最大恶化率;在该最后一批b1之后加工的第一代理的所有工件中查找恶化率小于或等于所述最大恶化率的工件,并将恶化率小于或等于所述最大恶化率的工件按照恶化率非递增的顺序进行排序,形成第一集合;将所述第一集合中的前vg个工件移至该最后一批b1中,并将所述第一集合中的剩余工件按照FBLDR算法进行组批,将所述剩余工件组成的批次均置于该最后一批b1之后,得到第三批次序列,跳到D14;
其中, 为第g台机器上第二代理的工件的数量;
D8、若第二代理的所有工件的制造时间跨度小于所述第一预设值,则找到满足预设条件的批数K;其中,所述预设条件为第一预设值大于或等于第K-1批的完工时间并小于第K批的完工时间;
D9、按照FBLDR算法对前K批工件重新进行组批,K批之后(包括K批)的批次不变,得到的各个批次形成第四批次序列,并计算新的第K批的完工时间;
D10、判断所述完工时间是否小于或等于所述第一预设值,若是,则将K更新为K+1,并对第K批的工件进行更新,并返回D9;否则执行D11;
D11、判断第K批中是否包含第二代理的工件,若不包含第二代理的工件,则输出所述第四批次序列,并跳到D14;若包含第二代理工件,则输出第二批次序列,按照FBLDR算法对前K-1批工件重新进行工件组批,返回D6;
D12、若所有工件的制造时间跨度小于所述第一预设值,则查找包含第一代理工件的所有批中的最后一批b2,将该最后一批b2加工的所有第二代理工件按照恶化率非递减的顺序重新排序,形成第二集合;将所述第二集合中的前q个工件与该最后一批b2中所有第一代理工件置换,得到第五批次序列,并输出所述第五批次序列,跳至D14;其中,q与该最后一批b2中所有第一代理工件的数量相同;
D13、按照FBLDR算法对该最后一批b2前的所有工件重新进行组批,保持该最后一批b2以及之后的批次不变,得到第六批次序列,并计算所有工件的制造时间跨度,并返回D12;
D14、计算第一代理的所有工件的制造跨度时间。
8.根据权利要求7所述的方法,其特征在于,对每一台机器上的所有工件执行FBLDR算法的过程包括:
E1、按照恶化率非递增的方式将该台机器上的所有工件进行排序,得到该台机器的有序工件列表;
E2、将当前的有序工件列表中的前c个工件组成一批,并将该批组件从有序工件列表中删除,依次类推,将最后剩余的个工件组成一批,以实现对该台机器上所有工件进行组批和每批中的工件排序;其中c为该台机器能同时处理的工件数量,Ng为该台机器上所有工件的数量。
9.一种面向工业互联网的装备研发制造过程中的协同调度系统,其特征在于,包括:
参数设置模块,用于执行S100、设置算法参数,所述算法参数中至少包括预设的最大迭代次数;
种群生成模块,用于执行S200、生成初始种群,将所述初始种群中适应度值最低的个体作为全局最优解;
邻域构建模块,用于执行S300、针对当前种群中的每一个个体,构建对应的邻域结构;
第一更新模块,用于执行S400、根据当前种群中各个个体各自对应的邻域结构,对对应的个体进行更新,以实现对种群的更新;
第二更新模块,用于执行S500、对当前种群中的每一个个体执行多次的趋化操作、复制操作和驱逐操作,以实现对种群的再次更新;
最优解更新模块,用于执行S600、在当前种群中选择适应度值最低的个体,并根据该适应度值最低的个体,对全局最优解进行更新;
终止判断模块,用于执行S700、判断当前迭代次数是否小于所述最大迭代次数:若是,则返回邻域构建模块中执行S300;否则,采用启发式算法对全局最优解进行批次调整,得到目标协同调度方案。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时可实现权利要求1~8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811564314.9A CN109711701B (zh) | 2018-12-20 | 2018-12-20 | 装备研发制造过程中的协同调度方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811564314.9A CN109711701B (zh) | 2018-12-20 | 2018-12-20 | 装备研发制造过程中的协同调度方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109711701A true CN109711701A (zh) | 2019-05-03 |
CN109711701B CN109711701B (zh) | 2020-11-10 |
Family
ID=66256874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811564314.9A Active CN109711701B (zh) | 2018-12-20 | 2018-12-20 | 装备研发制造过程中的协同调度方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109711701B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117575581A (zh) * | 2024-01-16 | 2024-02-20 | 江苏中凯金属科技有限公司 | 一种用于废旧铝材回收的铝棒生产方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103942419A (zh) * | 2014-04-04 | 2014-07-23 | 南京邮电大学 | 一种混合智能优化方法 |
US20160307136A1 (en) * | 2015-04-17 | 2016-10-20 | Camelot ITLab GmbH | System and method for high-mix wheels for capacity planning resource planning and material resource planning |
CN106682355A (zh) * | 2017-01-12 | 2017-05-17 | 中国水利水电科学研究院 | 一种基于pso‑ga混合算法的水文模型参数率定方法 |
CN107590603A (zh) * | 2017-09-11 | 2018-01-16 | 合肥工业大学 | 基于改进变邻域搜索和差分进化算法的调度方法及系统 |
CN107944558A (zh) * | 2017-11-23 | 2018-04-20 | 中国地质大学(武汉) | 一种参数可控的多智能体遗传寻优方法、设备及存储设备 |
CN107945045A (zh) * | 2017-11-29 | 2018-04-20 | 沈阳工业大学 | 一种基于粒子群遗传算法的再制造装配过程的选配方法 |
-
2018
- 2018-12-20 CN CN201811564314.9A patent/CN109711701B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103942419A (zh) * | 2014-04-04 | 2014-07-23 | 南京邮电大学 | 一种混合智能优化方法 |
US20160307136A1 (en) * | 2015-04-17 | 2016-10-20 | Camelot ITLab GmbH | System and method for high-mix wheels for capacity planning resource planning and material resource planning |
CN106682355A (zh) * | 2017-01-12 | 2017-05-17 | 中国水利水电科学研究院 | 一种基于pso‑ga混合算法的水文模型参数率定方法 |
CN107590603A (zh) * | 2017-09-11 | 2018-01-16 | 合肥工业大学 | 基于改进变邻域搜索和差分进化算法的调度方法及系统 |
CN107944558A (zh) * | 2017-11-23 | 2018-04-20 | 中国地质大学(武汉) | 一种参数可控的多智能体遗传寻优方法、设备及存储设备 |
CN107945045A (zh) * | 2017-11-29 | 2018-04-20 | 沈阳工业大学 | 一种基于粒子群遗传算法的再制造装配过程的选配方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117575581A (zh) * | 2024-01-16 | 2024-02-20 | 江苏中凯金属科技有限公司 | 一种用于废旧铝材回收的铝棒生产方法 |
CN117575581B (zh) * | 2024-01-16 | 2024-04-26 | 江苏中凯金属科技有限公司 | 一种用于废旧铝材回收的铝棒生产方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109711701B (zh) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107590603B (zh) | 基于改进变邻域搜索和差分进化算法的调度方法及系统 | |
CN110632907A (zh) | 一种分布式装配式置换流水车间调度优化方法及系统 | |
TWI633504B (zh) | 基於樹狀搜尋的排程方法與使用此方法的電子裝置 | |
CN110969362B (zh) | 一种云计算系统下多目标任务调度方法及系统 | |
CN110738365B (zh) | 一种基于粒子群算法的柔性作业车间生产调度方法 | |
CN113011612B (zh) | 基于改进灰狼算法的生产与维修调度方法及系统 | |
CN106610656A (zh) | 一种改进的布谷鸟搜索算法求解作业车间调度问题 | |
CN110458326B (zh) | 一种分布式阻塞型流水线调度的混合群智能优化方法 | |
CN113805545A (zh) | 一种考虑批处理的柔性流水车间组合调度规则生成方法 | |
CN112462704A (zh) | 一种面向传感器车间生产的混流批调度优化方法 | |
CN116933939A (zh) | 基于改进浣熊优化算法的柔性车间协同生产方法及系统 | |
CN109711701A (zh) | 装备研发制造过程中的协同调度方法、系统和存储介质 | |
CN116466659A (zh) | 一种基于深度强化学习的分布式装配流水车间调度方法 | |
CN117455222B (zh) | 基于分布式异构流水车间组调度问题的求解方法 | |
CN111008745A (zh) | 混合启发式与智能算法的多模资源受限项目调度优化方法 | |
CN103763302B (zh) | 一种web服务组合生成方法 | |
CN116774657A (zh) | 一种基于鲁棒优化的再制造车间动态调度方法 | |
CN110689216B (zh) | 一种基于混合果蝇算法的机器人装配单元混合产品jit节能生产优化方法 | |
CN114037361A (zh) | 一种用于分布式作业车间调度的超启发式差分进化方法 | |
CN110928670B (zh) | 云计算环境下基于偏序自适应遗传算法的工作流优化方法 | |
CN113723695A (zh) | 一种基于场景的再制造调度优化方法 | |
CN109491344B (zh) | 面向航天发动机研制过程的智能协同调度方法和系统 | |
CN115685920B (zh) | 基于改进布谷鸟算法的铸造混合流水车间调度方法及系统 | |
CN114254721A (zh) | 具有区间灰色处理时间的柔性作业车间调度方法及设备 | |
CN111027856B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |