1.本发明涉及车间调度技术领域,具体涉及一种柔性作业车间分批调度优化方法、装置及电子设备。
背景技术:2.近年来,随着智能优化算法、机器学习等技术的进步,多种先进技术正逐渐被应用于工程领域,“智能制造”被提出。这种把传统制造业与先进技术相结合的生产模式在工业生产中正发挥着不可或缺的作用。在制造业的实际生产中,调度有着十分重要的地位,企业的经营与生产能力很大程度上决定于能否对生产线进行合理的调度。
3.发明专利cn111985672a提出了基于多agent深度强化学习的单件作业车间调度方法,通过建模、状态提取、设计动作选择机制、设计奖励函数等操作解决了柔性作业车间调度问题。发明专利cn112987665a提出了一种基于强化学习的流水车间调度方法,该方法分为处理加工时间矩阵,构建奖励函数,构造神经网络模型,训练模型,模型应用五个阶段进行,解决了流水车间调度问题。其余涉及强化学习的发明均包括以下几个方面的内容:环境空间的生成、动作集的设计、奖励函数的设计以及判定智能体达到最优状态的依据等。
4.但现有技术中对车间调度的方案,均未考虑分批调度这一最常见也是最符合实际的一种调度问题,而由于多种因素的制约,分批调度十分复杂且解空间巨大,使用传统的间调度的方案往往得不到或无法在有限时间内找到理想的解。因此,急需提供一种柔性作业车间分批调度优化方法、装置及电子设备,用以对柔性作业车间分批调度方案进行快速、可靠的求解,提高求解效率。
技术实现要素:5.有鉴于此,有必要提供一种柔性作业车间分批调度优化方法、装置及电子设备,用以解决现有技术中存在的柔性作业车间分批调度优化方案求解效率慢且求解结果不可靠的技术问题。
6.为了解决上述技术问题,本发明提供了一种柔性作业车间分批调度优化方法,包括:
7.获取车间的多种工件、多台机器以及各工件的多道工序;
8.基于预设的批次生成策略确定各种所述工件的多个加工批次;
9.基于所述多种工件、所述多台机器、所述多道工序以及所述多个加工批次构建柔性作业车间分配调度优化目标函数及约束条件;
10.基于强化学习-人工蜂群算法以及所述约束条件对所述柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。
11.在一些可能的实现方式中,所述柔性作业车间分配调度优化目标函数为:
12.f=min(makespan)
[0013][0014]
式中,f为柔性作业车间分配调度优化目标函数;min()为最小值函数;makespan为完工时间;max[]为最大值函数;o
i,j,k
为第i个工件的第k个加工子批的第j道工序;ft(o
i,j,k
)为o
i,j,k
的加工结束时刻;n为工件总数;p为每个工件的工序数量;ni为第i个工件的加工子批数。
[0015]
在一些可能的实现方式中,所述约束条件为:
[0016]
ni={ni∈[1,sublot
ub
]|ni∈n
+
}
[0017][0018]
pt(o
i,j,k
)=pt
i,j,l
·
l
i,k
·
x(o
i,j,k
,m
l
)
[0019]
l=1,2,...,m
[0020]
ft(o
i,j,k
)=tt(o
i,j,k-1
,o
i,j,k
)+st(o
i,j,k
)+pt(o
i,j,k
)
[0021]
ft(o
i,j,1
)=st(o
i,j,1
)+pt(o
i,j,1
)
[0022]
mt
l
=ft(o
i,j,k
)
[0023]
st(o
i,j,k
)≥max{ft(o
i,j-1,k
),mt
l
}
[0024]
st(o
i,1,k
)≥max{0,mt
l
}
[0025][0026][0027]
式中,sublot
ub
为加工子批次的最大值;n
+
为正整数;tli为第i个工件的加工总批数;l
i,k
为第i个工件的第k个加工子批的数量;pt(o
i,j,k
)为o
i,j,k
的加工时间;m为机器总数;pt
i,j,l
为第i个工件的第j道工序在m
l
上的加工时间;m
l
为第l个机器;x(o
i,j,k
,m
l
)为o
i,j,k
和m
l
的决策变量;tt(o
i,j,k-1
,o
i,j,k
)为从o
i,j,k-1
到o
i,j,k
的运输时间;st(o
i,j,k
)为o
i,j,k
的加工开始时刻;mt
l
为第l个机器的加工时间。
[0028]
在一些可能的实现方式中,所述基于强化学习-人工蜂群算法以及所述约束条件对所述柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案,包括:
[0029]
获得初始化人工蜂群参数,所述初始化人工蜂群参数包括初始雇佣蜂、初始侦查蜂、初始围观蜂以及与初始雇佣蜂对应的初始食物源;
[0030]
采用两段式整数编码方式对初始食物源进行编码,生成包括第一段染色体信息和第二段染色体信息的染色体,第一段染色体信息为表示当前工序选择的机器的设备选择段,第二段染色体信息为表示工序排序的工序排序段;
[0031]
基于人工蜂群算法以及所述约束条件确定柔性作业车间调度方案;
[0032]
基于强化学习算法以及所述柔性作业车间调度方案确定所述柔性作业车间分配调度方案。
[0033]
在一些可能的实现方式中,所述基于人工蜂群算法以及所述约束条件确定柔性作业车间调度方案,包括:
[0034]
步骤一、所述初始围观蜂评价所述初始食物源质量,确定最佳食物源,基于轮盘赌方法将所述人工蜂群重新划分为新雇佣蜂和新侦查蜂;
[0035]
步骤二、所述新雇佣蜂利用邻域搜索策略对所述最佳食物源进行更新,获得更新食物源,所述新侦查蜂基于全局搜索策略获得待选食物源,基于局部搜索策略对所述最佳食物源进行优化,获得优化食物源,所述更新食物源、所述待选食物源和所述优化食物源组成新一代食物源;
[0036]
步骤三、基于预设的迭代判断条件判断人工蜂群迭代是否结束,若结束,则所述新一代食物源为柔性作业车间调度方案,若未结束,则返回步骤二,并重复步骤一-步骤三。
[0037]
在一些可能的实现方式中,所述基于强化学习算法以及所述柔性作业车间调度方案确定所述柔性作业车间分配调度方案,包括:
[0038]
步骤五、获得初始强化学习参数,并基于预设的三种环境空间生成策略生成三种初始环境;
[0039]
步骤六、基于所述柔性作业车间分配调度方案以及所述初始环境创建动作集、初始q值表以及状态集;
[0040]
步骤七、随机从所述状态集中选择一个状态,并基于贪心策略从所述动作集中选择期望回报率最好的动作;
[0041]
步骤八、根据q学习公式、所述状态和所述动作更新所述初始q值表,获得更新q值表;
[0042]
步骤九、判断训练次数是否小于预设训练次数,若小于,则返回步骤七,并重复步骤七-步骤九;若大于或等于,则判断训练轮数是否小于预设训练轮数,若小于,则返回步骤七,并重复步骤七-步骤九;若大于或等于,则获得所述柔性作业车间分配调度方案。
[0043]
在一些可能的实现方式中,所述q学习公式为:
[0044]q*
(s,a)
←
q(s,a)+α*[γ(r+max(q(s',a'))-q(s,a)]
[0045]q*
(s,a)
←
q(s,a)+α*[r
t+1
+γ(max(q(s',a'))-q(s,a)]
[0046]
式中,r
t+1
为即时奖惩;γ为折扣因子;α为学习率;s’为下一状态;a’为下一动作;s为当前状态;a为当前动作;q(s,a)为当前状态下执行当前动作的q函数值;q(s’,a’)为下一状态下执行下一动作的q函数值;q*(s,a)为更新q值。
[0047]
在一些可能的实现方式中,所述柔性作业车间分批调度优化方法还包括:
[0048]
基于田口实验确定初始人工蜂群参数和初始化强化学习参数。
[0049]
另一方面,本发明还提供一种柔性作业车间分批调度优化装置,包括:
[0050]
数据获取单元,用于获取车间的多种工件、多台机器以及各工件的多道工序;
[0051]
批次划分单元,用于基于预设的批次生成策略确定各种所述工件的多个加工批次;
[0052]
目标函数构建单元,用于基于所述多种工件、所述多台机器、所述多道工序以及所述多个加工批次构建柔性作业车间分配调度优化目标函数及约束条件;
[0053]
函数求解单元,用于基于强化学习-人工蜂群算法以及所述约束条件对所述柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。
[0054]
另一方面,本发明还提供了一种电子设备,包括存储器和处理器,其中,
[0055]
所述存储器,用于存储程序;
[0056]
所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以实现上述任意一种可能的实现方式中所述的柔性作业车间分批调度优化方法中的步骤。
[0057]
采用上述实现方式的有益效果是:本发明提供的柔性作业车间分批调度优化方法,基于预设的批次生成策略确定各种工件的多个加工批次,并基于强化学习-人工蜂群算法以及约束条件对柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。将加工批次的分配考虑至柔性作业车间分配调度方案中,提高了获得的柔性作业车间分配调度方案的准确性和可靠性。并且,本发明通过强化学习-人工蜂群算法对柔性作业车间分配调度优化目标函数进行求解,可提高求解效率,从而可提高获得柔性作业车间分配调度方案的效率。
附图说明
[0058]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0059]
图1为本发明提供的柔性作业车间分批调度优化方法的一个实施例流程示意图;
[0060]
图2为本发明图1中s104的一个实施例流程示意图;
[0061]
图3为本发明提供的两段式帧数编码方式的一个实施例示意图;
[0062]
图4为本发明图2中s203的一个实施例流程示意图;
[0063]
图5为本发明提供的局部搜索策略的一个实施例示意图;
[0064]
图6为本发明提供的邻域搜索策略的一个实施例示意图;
[0065]
图7为本发明图2中s204的一个实施例流程示意图;
[0066]
图8为本发明提供的田口实验计算结果的一个实施例示意图;
[0067]
图9为本发明提供的柔性作业车间分批调度优化装置的一个实施例结构示意图;
[0068]
图10为本发明提供的电子设备的一个实施例结构示意图。
具体实施方式
[0069]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0070]
在本技术实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0071]
本发明实施例中术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固
有的其它步骤或模块。
[0072]
在本发明实施例中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
[0073]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0074]
本发明提供了一种柔性作业车间分批调度优化方法、装置及电子设备,以下分别进行说明。
[0075]
图1为本发明提供的柔性作业车间分批调度优化方法的一个实施例流程示意图,如图1所示,柔性作业车间分批调度优化方法包括:
[0076]
s101、获取车间的多种工件、多台机器以及各工件的多道工序;
[0077]
s102、基于预设的批次生成策略确定各种工件的多个加工批次;
[0078]
s103、基于多种工件、多台机器、多道工序以及多个加工批次构建柔性作业车间分配调度优化目标函数及约束条件;
[0079]
s104、基于强化学习-人工蜂群算法以及约束条件对柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。
[0080]
与现有技术相比,本发明实施例提供的柔性作业车间分批调度优化方法,基于预设的批次生成策略确定各种工件的多个加工批次,并基于强化学习-人工蜂群算法以及约束条件对柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。将加工批次的分配考虑至柔性作业车间分配调度方案中,提高了获得的柔性作业车间分配调度方案的准确性和可靠性。并且,本发明实施例通过强化学习-人工蜂群算法对柔性作业车间分配调度优化目标函数进行求解,可提高求解效率,从而可提高获得柔性作业车间分配调度方案的效率。
[0081]
在本发明的一些实施例中,步骤s102中的批次生成策略可为均等批策略或一致批策略。
[0082]
为了简化函数求解过程,在本发明的一些实施例中,做出如下假设:
[0083]
(1)在t=0时刻,可以对所有工件进行调度;
[0084]
(2)对于所有工件,当且仅在当前工序完成后,才能对下一道工序进行加工;
[0085]
(3)如果同一子加工批次的工序需要在不同的机器上加工,则需要考虑运输时间;
[0086]
(4)对于所有机器,在任何时候最多只能对一道工序进行加工;
[0087]
(5)对于所有机器,一旦加工开始则无法停止或中断;
[0088]
(6)所有工件的优先级一致。
[0089]
在本发明的一些实施例中,柔性作业车间分配调度优化目标函数为:
[0090]
f=min(makespan)
[0091][0092]
式中,f为柔性作业车间分配调度优化目标函数;min()为最小值函数;makespan为完工时间;max[]为最大值函数;o
i,j,k
为第i个工件的第k个加工子批的第j道工序;ft(o
i,j,k
)为o
i,j,k
的加工结束时刻;n为工件总数;p为每个工件的工序数量;ni为第i个工件的加工子批数。
[0093]
其中,约束条件为:
[0094]
ni={ni∈[1,sublot
ub
]|ni∈n
+
}
[0095][0096]
pt(o
i,j,k
)=pt
i,j,l
·
l
i,k
·
x(o
i,j,k
,m
l
)
[0097]
l=1,2,...,m
[0098]
ft(o
i,j,k
)=tt(o
i,j,k-1
,o
i,j,k
)+st(o
i,j,k
)+pt(o
i,j,k
)
[0099]
ft(o
i,j,1
)=st(o
i,j,1
)+pt(o
i,j,1
)
[0100]
mt
l
=ft(o
i,j,k
)
[0101]
st(o
i,j,k
)≥max{ft(o
i,j-1,k
),mt
l
}
[0102]
st(o
i,1,k
)≥max{0,mt
l
}
[0103][0104][0105]
式中,sublot
ub
为加工子批次的最大值;n
+
为正整数;tli为第i个工件的加工总批数;l
i,k
为第i个工件的第k个加工子批的数量;pt(o
i,j,k
)为o
i,j,k
的加工时间;m为机器总数;pt
i,j,l
为第i个工件的第j道工序在m
l
上的加工时间;m
l
为第l个机器;x(o
i,j,k
,m
l
)为o
i,j,k
和m
l
的决策变量,如果o
i,j,k
被安排在m
l
上,则x(o
i,j,k
,m
l
)为1,否则x(o
i,j,k
,m
l
)为0;tt(o
i,j,k-1
,o
i,j,k
)为从o
i,j,k-1
到o
i,j,k
的运输时间;st(o
i,j,k
)为o
i,j,k
的加工开始时刻;mt
l
为第l个机器的加工时间。
[0106]
在本发明的一些实施例中,如图2所示,步骤s104包括:
[0107]
s201、获得初始化人工蜂群参数,初始化人工蜂群参数包括初始雇佣蜂、初始侦查蜂、初始围观蜂以及与初始雇佣蜂对应的初始食物源;
[0108]
s202、采用两段式整数编码方式对初始食物源进行编码,生成包括第一段染色体信息和第二段染色体信息的染色体,第一段染色体信息为表示当前工序选择的机器的设备选择(machines selection,ms)段,第二段染色体信息为表示工序排序的工序排序(operations sequencing,os)段;
[0109]
s203、基于人工蜂群算法以及约束条件确定柔性作业车间调度方案;
[0110]
s204、基于强化学习算法以及柔性作业车间调度方案确定柔性作业车间分配调度方案。
[0111]
本发明实施例将柔性作业车间分配调度方案拆分为两个子问题,分别为求解调度方案和求解子加工批次划分方案,并对应的采用两式整数编码方式对人工蜂群中的个体进行编码,生成包括第一段染色体信息和第二段染色体信息的个体染色体,第一段染色体信息为表示当前工序选择的机器的设备选择段,第二段染色体信息为表示工序排序的工序排序段,并且对应的基于人工蜂群算法确定柔性作业车间调度方案,基于强化学习算法确定柔性作业车间分配调度方案,提高了求解效率,从而提高了获得柔性作业车间分配调度方案的确定效率。
[0112]
在本发明的一些实施例中,两段式整数编码方式如图3所示,第一段染色体信息和第二段染色体信息遵循不同的编码规则,在ms段,每个基因代表为当前工序选择的机器。如果当前工序无法由机器处理,则不会在基因中填写相应的机器编号,从而确保生成的染色体ms段是合法的。在os段,需要在基因中填写工件编号。os中每种工件填写的总数等于总工序数,以确保生成的染色体是合法的。图3中的编码表示的含义是:第1个工件的第1道工序由第1个机器处理,第1个工件的第2道工序、第1个工件的第3道工序由第2个机器处理,第2个工件的第1道工序由第2个机器处理,第2个工件的第2道工序由第3个机器处理,第2个工件的第3道工序由第1个机器处理,工序排序为依次执行第1个工件的第1道工序,第2个工件的第1道工序,第1个工件的第2道工序,第1个工件的第3道工序,第2个工件的第2道工序,第2个工件的第3道工序。
[0113]
在本发明的一些实施例中,如图4所示,步骤s203包括:
[0114]
s401、初始围观蜂评价初始食物源质量,确定最佳食物源,基于轮盘赌方法将人工蜂群重新划分为新雇佣蜂和新侦查蜂;
[0115]
s402、新雇佣蜂利用邻域搜索策略对最佳食物源进行更新,获得更新食物源,新侦查蜂基于全局搜索策略获得待选食物源,基于局部搜索策略对最佳食物源进行优化,获得优化食物源,更新食物源、待选食物源和优化食物源组成新一代食物源;
[0116]
s403、基于预设的迭代判断条件判断人工蜂群迭代是否结束,若结束,则新一代食物源为柔性作业车间调度方案,若未结束,则返回步骤二,并重复步骤s401-步骤s402。
[0117]
本发明实施例通过对人工蜂群算法的新雇佣蜂更新最佳食物源的过程设置为邻域搜索策略,可提高对局部最优解的进一步寻优能力,对新侦查蜂获得待选食物源设置为全局搜索策略,可提高跳脱局部最优解的能力,对最佳食物源的优化设置为局部搜索策略,可提高对当代最优解的学习能力,从而可提高生成结果的可靠性和合理性。
[0118]
应当理解的是:迭代判断条件可为最大迭代次数。
[0119]
在本发明的一些实施例中,如图5所示,局部搜索策略可包括三种交换策略、插入策略和突变策略。
[0120]
在本发明的具体实施例中,交换策略具体为:随机选择os段中的两个基因位并交换其内容。如图5中旧食物源的编码为122231j1j2j1j1j2j2,经过交换策略(将染色体的第9位和第12位进行交换)后,新食物源的编码为122231j1j2j2j1j2j1。
[0121]
在本发明的具体实施例中,插入策略具体为:随机选择os段中的两个基因作为起始基因和终止基因。首先,起始基因移动到终止基因的位置,然后起始基因以后的每个基因
依次向前移动一个位置。如图5中旧食物源的编码为122231j1j2j1j1j2j2,经过插入策略(将第9位作为起始基因,将第12位作为终止基因)后,新食物源的编码为122231j1j2j2j1j1j2。
[0122]
在本发明的具体实施例中,突变策略具体为:随机选择一个基因进行突变。如图5中旧食物源的编码为122231j1j2j1j1j2j2,经过突变策略(将染色体的第三位由2突变至3)后,新食物源的编码为123231j1j2j2j1j1j2。
[0123]
在本发明的一些实施例中,如图6所示,邻域搜索策略具体为:将新雇佣蜂随机分为两个组。其中,第一个组的个体将与组内另一个体进行互换,第二个组的个体将与当前最佳的个体进行互换,两个组的所有个体在进行了邻域搜索后,将会组成新的种群。两个组同时进行邻域搜索,以便高效地找到更好的食物源。
[0124]
在本发明的一些实施例中,如图7所示,步骤s204包括:
[0125]
s701、获得初始强化学习参数,并基于预设的三种环境空间生成策略生成三种初始环境;
[0126]
s702、基于柔性作业车间分配调度方案以及初始环境创建动作集、初始q值表以及状态集;
[0127]
s703、随机从状态集中选择一个状态,并基于贪心策略从动作集中选择期望回报率最好的动作;
[0128]
s704、根据q学习公式、状态和动作更新初始q值表,获得更新q值表;
[0129]
s705、判断训练次数是否小于预设训练次数,若小于,则返回步骤s703,并重复步骤s703-步骤s705;若大于或等于,则判断训练轮数是否小于预设训练轮数,若小于,则返回步骤s703,并重复步骤s703-步骤s705;若大于或等于,则获得柔性作业车间分配调度方案。
[0130]
本发明实施例通过基于预设的三种环境空间生成策略生成三种初始环境,可提高解空间的丰富程度,从而可提高获得的柔性作业车间分配调度方案的可靠性和合理性。
[0131]
需要说明的是:状态表示子加工批次划分方案,环境表示方案集,反馈表示完工时间,如下一状态的反馈大于当前状态的反馈,则反馈值为1,如下一状态的反馈小于当前状态的反馈,则反馈值为-1,如下一状态的反馈等于当前状态的反馈,则反馈值为0;动作表示不同方案之间的跳转。
[0132]
应当理解的是:q值表中包括多个q值,q值为负值时,可以认为该动作不利于优化。如果为0或正,则允许在此状态下执行操作。q值越大,执行操作的可能性越大,这更有利于优化。通过组合3个动作的q值,可以判断状态。如果其中一个明显大于其他两个,则选择相应的操作,代理执行该操作并转移到下一个状态。根据上述方法,利用q值表进行状态间的跳转,最终找到反馈值最大的方案作为分批方案。
[0133]
还需要说明的是:预设的三种环境空间生成策略分别为一致批生成策略(cs-rl)、均等批生成策略(es-rl)和混合生成策略(hrl)。在进行实际求解时,分别使用三种策略执行三遍算法。当采用前两种策略时,环境将分别根据一致子批和均等子批的原则进行随机生成;当采用第三种策略时,环境空间将结合一定数量的前两种策略中表现较好的环境进行生成,并使动作空间发生变化,由所有工件共享同一种分批方案向使用不同分批方案进行转变。
[0134]
在本发明的一些实施例中,q学习公式为:
[0135]q*
(s,a)
←
q(s,a)+α*[γ(r+max(q(s',a'))-q(s,a)]
[0136]q*
(s,a)
←
q(s,a)+α*[r
t+1
+γ(max(q(s',a'))-q(s,a)]
[0137]
式中,r
t+1
为即时奖惩;γ为折扣因子;α为学习率;s’为下一状态;a’为下一动作;s为当前状态;a为当前动作;q(s,a)为当前状态下执行当前动作的q函数值;q(s’,a’)为下一状态下执行下一动作的q函数值;q*(s,a)为更新q值。
[0138]
由于目标函数的求解效率和求解结果与初始参数(初始人工蜂群参数和初始化强化学习参数)的设置息息相关,为了提高求解效率和求解结果的可靠性,在本发明的一些实施例中,柔性作业车间分批调度优化方法还包括:
[0139]
基于田口实验确定初始人工蜂群参数和初始化强化学习参数。
[0140]
其中,田口实验包括两个因素:可控因素和噪声因素。可控因素是指可以控制的过程或设计参数,在算法中指轮盘赌次数、划分为侦查蜂的概率、以当前最佳食物源为邻域的搜索概率、强化学习的贪婪度、学习率和折扣因子。噪声因子是指在生产过程中难以控制的参数,在算法中指的是makespan。
[0141]
为了分析实验数控并找到可控因素组合的最佳水平,在此定义了一个信噪比公式:
[0142][0143]
式中,s/n为信噪比;w为运行次数;yi为第i次运行的makespan。
[0144]
其中,可控因素的取值和级别如表1所示:
[0145]
表1可控因素的取值和级别
[0146][0147]
根据上述参数取值,计算结果如图8所示,根据图8将参数设置为具有最大信噪比的级别,即:轮盘赌次数为1500次,划分为侦查蜂的概率为0.3,以当前最佳食物源为邻域的搜索概率为0.7,强化学习的贪婪度为0.8,学习率为0.1,折扣因子为1。
[0148]
为了验证本发明实施例提出的强化学习-人工蜂群算法的优越性,与传统人工蜂群算法、禁忌搜索算法、基于强化学习的遗传算法、改进的人工蜂群算法和离散进化杂草优化算法进行了比较,本发明实施例的算法由于其他现有的算法,具有高效性和较高的鲁棒性。
[0149]
为了更好实施本发明实施例中的柔性作业车间分批调度优化方法,在柔性作业车间分批调度优化方法基础之上,对应的,如图9所示,本发明实施例还提供了一种柔性作业车间分批调度优化装置900,包括:
[0150]
数据获取单元901,用于获取车间的多种工件、多台机器以及各工件的多道工序;
[0151]
批次划分单元902,用于基于预设的批次生成策略确定各种工件的多个加工批次;
[0152]
目标函数构建单元903,用于基于多种工件、多台机器、多道工序以及多个加工批次构建柔性作业车间分配调度优化目标函数及约束条件;
[0153]
函数求解单元904,用于基于强化学习-人工蜂群算法以及约束条件对柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。
[0154]
上述实施例提供的柔性作业车间分批调度优化装置900可实现上述柔性作业车间分批调度优化方法实施例中描述的技术方案,上述各模块或单元具体实现的原理可参见上述柔性作业车间分批调度优化方法实施例中的相应内容,此处不再赘述。
[0155]
如图10所示,本发明还相应提供了一种电子设备1000。该电子设备1000包括处理器1001、存储器1002及显示器1003。图10仅示出了电子设备1000的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0156]
存储器1002在一些实施例中可以是电子设备1000的内部存储单元,例如电子设备1000的硬盘或内存。存储器1002在另一些实施例中也可以是电子设备1000的外部存储设备,例如电子设备1000上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。
[0157]
进一步地,存储器1002还可既包括电子设备1000的内部储存单元也包括外部存储设备。存储器1002用于存储安装电子设备1000的应用软件及各类数据。
[0158]
处理器1001在一些实施例中可以是一中央处理器(central processing unit,cpu),微处理器或其他数据处理芯片,用于运行存储器1002中存储的程序代码或处理数据,例如本发明中的柔性作业车间分批调度优化方法。
[0159]
显示器1003在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。显示器1003用于显示在电子设备1000的信息以及用于显示可视化的用户界面。电子设备1000的部件1001-1003通过系统总线相互通信。
[0160]
在本发明的一些实施例中,当处理器1001执行存储器1002中的柔性作业车间分批调度优化程序时,可实现以下步骤:
[0161]
获取车间的多种工件、多台机器以及各工件的多道工序;
[0162]
基于预设的批次生成策略确定各种工件的多个加工批次;
[0163]
基于多种工件、多台机器、多道工序以及多个加工批次构建柔性作业车间分配调度优化目标函数及约束条件;
[0164]
基于强化学习-人工蜂群算法以及约束条件对柔性作业车间分配调度优化目标函数进行求解,获得柔性作业车间分配调度方案。
[0165]
应当理解的是:处理器1001在执行存储器1002中的柔性作业车间分批调度优化程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面相应方法实施例的描述。
[0166]
进一步地,本发明实施例对提及的电子设备1000的类型不做具体限定,电子设备1000可以为手机、平板电脑、个人数字助理(personal digitalassistant,pda)、可穿戴设备、膝上型计算机(laptop)等便携式电子设备。便携式电子设备的示例性实施例包括但不限于搭载ios、android、microsoft或者其他操作系统的便携式电子设备。上述便携式电子设备也可以是其他便携式电子设备,诸如具有触敏表面(例如触控面板)的膝上型计算机
(laptop)等。还应当理解的是,在本发明其他一些实施例中,电子设备1000也可以不是便携式电子设备,而是具有触敏表面(例如触控面板)的台式计算机。
[0167]
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,程序可存储于计算机可读存储介质中。其中,计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
[0168]
以上对本发明所提供的柔性作业车间分批调度优化方法、装置及电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。