本发明属于仿真优化技术领域,具体的说是一种非泊松工件流csps系统优化控制及仿真测试方法。
背景技术:
智能制造技术已经成为人工智能领域发展的重要方向。csps系统作为柔性单元化生产加工站的一种,被广泛应用在各大智能制造企业的生产线上。在csps系统中,生产中心中配有一个可以代替人类的体力劳动的智能体,该智能体作为生产线的大脑,在生产过程中作出决策。如何提高csps系统的智能化水平,提升生产线的工作效率,是系统优化领域所研究的重要问题。
现有技术中,在csps系统建模过程中,是将工件的到达过程假设为泊松分布到达,其优化过程都是将csps系统建立为smdp模型后,通过理论算法如数值迭代和策略迭代或是仿真统计算法如q学习来获得最优或次优控制策略。然而在实际生产中,受生产过程中原材料供应改变以及生产计划发生变化等条件的影响,工件到达过程会呈现出不规律性。因此当工件并不是严格按照泊松分布到达,csps系统无法建立为smdp模型时,csps系统的最优或次优控制策略无法通过策略迭代或q学习获得。
技术实现要素:
本发明是为解决上述现有技术存在的不足之处,提出一种非泊松工件流csps系统优化控制及仿真测试方法,以便能在工件非泊松到达,csps系统无法建立为smdp模型情况下,获得系统优化控制策略并测试q学习算法的适用性。
本发明为解决技术问题采用如下技术方案:
本发明非泊松工件流csps系统优化控制,所述系统为单站点csps系统,包括:匀速运动的传送带、缓存库、加工站、成品库、前视摄像头、机械臂以及工件;由传送带传送的工件为非泊松工件流;其特征是:按如下步骤获得非泊松工件流csps系统的优化控制策略:
在所述单站点csps系统中,以mmpp模拟所述工件的非泊松工件流到达过程,所述工件的到达率随着马尔可夫markov的状态转移而改变,在上一到达率状态转移时刻以下一到达率产生新工件;
在每个决策时刻,若缓存库为空,由所述机械臂实施捡取动作;若缓存库为满,由所述机械臂实施加工动作;若所述缓存库为非空非满,此时前视距离vs内若存在有工件,所述机械臂则等待其中的第一个工件到达捡取点并捡取工件,随后进入下一决策时刻;前视距离内若无工件,所述机械臂则选择为加工动作,加工时间为τ,在经过max(vs,τ)的时间后,系统进入下一决策时刻,在机械臂的加工动作过程中,若仍有工件到达,则任由工件流失;
针对以mmpp到达的工件流,按如下过程获得工件的平均到达率:
到达率状态转移过程服从markov过程,mmpp到达率状态空间φ为:φ={1,2,…n},n为到达率的个数,状态转移矩阵p如式(1):
pij是到达率λn从状态i转移到状态j的概率,n∈φ,i,j∈φ;
逗留时间函数f(λn,t)为服从参数为
到达率λn在状态n的转移率λn为:
矩阵a满足:
连续时间markov过程的稳态分布π为:π=(π1,π2,…πn),且由式(4)获得:
则:工件的平均到达率
根据q学习算法按如下方式获得系统控制策略:
设置mmpp的到达率参数、状态转移矩阵和逗留时间函数参数,产生非泊松到达的工件流;初始化q值表并设置初始温度t、boltzmann常数k和温度衰减因子ξ;
采用基于模拟退火的q学习算法学习系统控制策略,并在系统决策时刻调用当前工件到达时刻;在学习过程中判断系统应该选择随机行动还是贪婪行动,不停更新q值表,每学习r步后根据衰减因子ξ降低温度t,当满足算法终止条件时结束学习,获得系统控制策略。
针对本发明中非泊松工件流csps系统优化控制的仿真测试方法一:按以下步骤进行:
步骤2.1、设置mmpp的平均到达率
步骤2.2:分别设置mmpp和smmpp的到达率参数、状态转移矩阵和逗留时间函数参数,产生非泊松到达的工件流;
按权利要求1所述的q学习算法获得系统控制策略,并仿真统计系统代价和系统性能值,获得非泊松到达情况下q学习结果,记为:q学习结果一;所述系统性能值为生产率和生产效率;
步骤2.3、以mmpp的平均到达率
步骤2.4、以mmpp的平均到达率
步骤2.5、将工件泊松到达情况下的q学习结果一与非泊松到达情况下q学习结果二进行对比,获得差值δ1;将工件非泊松到达情况下的q学习结果二与工件泊松到达情况下策略迭代结果三进行对比,获得差值δ2;若|δ1|<0.04ψ且|δ2|<0.04ψ,则判断
步骤2.6、分别设置mmpp的理论平均到达率为
步骤2.7、当
针对本发明中非泊松工件流csps系统优化控制的仿真测试方法二:按以下步骤进行:
步骤3.1、定义[0,t]时间段内工件到达个数为h(t);统计平均到达率λ(t)为:
步骤3.2、将系统建立为smdp模型后,通过策略迭代算法理论求解t时刻的最优控制策略和系统代价,此系统代价记为理论代价;
步骤3.3、将步骤3.2中获得的最优控制策略作用于原非泊松到达情况下的系统,仿真统计对应的系统代价,此系统代价记为最优策略评估代价;
步骤3.4、将权利要求1所述的控制策略作用于非泊松工件流csps系统,仿真统计工件非泊松到达情况下的系统代价η;
步骤3.5、将所述理论代价结果与系统代价η进行比较,获得差值δ1,并将所述最优策略代价结果与系统代价η进行比较,获得差值δ2;若|δ1|<0.04η且|δ2|<0.04η,则判断当工件非泊松到达时,q学习能学到较好的控制策略;否则,判断工件非泊松到达情况下,q学习无法学到较好的控制策略。
针对本发明中非泊松工件流csps系统优化控制的仿真测试方法三:分别按方法一和方法二的仿真测试方法进行仿真测试,若方法一和方法二所述的仿真测试方法均判断为在工件非泊松到达情况下,q学习能学到较好的控制策略,则判断q学习能适用于非泊松到达csps系统的优化控制;否则,则判断q学习不能适用于非泊松到达csps系统的优化控制。
与现有技术相比,本发明的有益效果在于:
1、本发明以马尔可夫调制泊松过程mmpp来代表工件非泊松到达过程,以描述单站点csps系统中非泊松到达的工件流信息。相比传统单站点csps系统中工件以泊松分布这种标准数学分布到达,本发明中的工件到达过程更为随机;
2、本发明通过q学习算法对非泊松工件流csps系统进行优化控制,相比在工件泊松到达情况下需要将系统建立为smdp模型获得系统的最优或次优控制策略,本发明不需要建立系统模型,只需根据实际的样本轨道在线学习以统计系统的控制策略;
3、本发明以mmpp的理论平均到达率作为工件泊松到达率,将单站点csps系统建立为smdp模型后通过理论方法或仿真方法获得系统最优或次优控制策略;本发明能有效对比工件非泊松和标准泊松两种到达情况下的q学习优化效果;
4、本发明在工件非泊松到达时,统计t时刻工件的统计平均到达率,并获得不同t时刻理论代价与最优策略评估代价,能有效观测的λ(t)的理论学习情况;
5、本发明给出的非泊松工件流csps系统优化控制仿真测试方法,能在工件非泊松到达情况下,测试q学习适用性,实现简单且效果明显,也可用于在其它非泊松数据流无法建模的情况下,测试算法的性能。
附图说明
图1为本发明单站点csps系统示意图;
具体实施方式
实施例1:
参见图1,本实施例中非泊松工件流csps系统优化控制,其系统为单站点csps系统,包括:匀速运动的传送带1、缓存库2、加工站3、成品库4、前视摄像头5、机械臂6以及工件7;由传送带1传送的工件7为非泊松工件流。
按如下步骤获得非泊松工件流csps系统的优化控制策略:
在单站点csps系统中,以mmpp模拟工件7的非泊松工件流到达过程,工件7的到达率随着马尔可夫markov的状态转移而改变,在上一到达率状态转移时刻以下一到达率产生新工件。
在每个决策时刻,若缓存库2为空,由机械臂6实施捡取动作;若缓存库2为满,由机械臂6实施加工动作;若缓存库2为非空非满,此时前视距离vs内若存在有工件,机械臂6则等待其中的第一个工件到达捡取点并捡取工件7,随后进入下一决策时刻;前视距离内若无工件,机械臂6则选择为加工动作,加工时间为τ,在经过max(vs,τ)的时间后,系统进入下一决策时刻,在机械臂6的加工动作过程中,若仍有工件到达,则任由工件流失,前视距离vs以时间表示。
针对以mmpp到达的工件流,按如下过程获得工件的平均到达率:
到达率状态转移过程服从markov过程,mmpp到达率状态空间φ为:φ={1,2,…n},n为到达率的个数,状态转移矩阵p如式(1):
pij是到达率λn从状态i转移到状态j的概率,n∈φ,i,j∈φ;
逗留时间函数f(λn,t)为服从参数为
到达率λn在状态n的转移率λn为:
矩阵a满足:
连续时间markov过程的稳态分布π为:π=(π1,π2,…πn),且由式(4)获得:
则:工件的平均到达率
根据q学习算法按如下方式获得系统控制策略:
设置mmpp的到达率参数、状态转移矩阵和逗留时间函数参数,产生非泊松到达的工件流;初始化q值表并设置初始温度t、boltzmann常数k和温度衰减因子ξ。
采用基于模拟退火的q学习算法学习系统控制策略,并在系统决策时刻调用当前工件到达时刻;在学习过程中判断系统应该选择随机行动还是贪婪行动,不停更新q值表,每学习r步后根据衰减因子ξ降低温度t,当满足算法终止条件时结束学习,获得系统控制策略。
实施例2:
按如下步骤对于实施例1中所获得的系统控制进行仿真测试:
步骤2.1、设置mmpp的平均到达率
步骤2.2:分别设置mmpp和smmpp的到达率参数、状态转移矩阵和逗留时间函数参数,产生非泊松到达的工件流;
按实施例1的q学习算法获得系统控制策略,并仿真统计系统代价和系统性能值,获得非泊松到达情况下q学习结果,记为:q学习结果一;系统性能值为生产率和生产效率。
步骤2.3、以mmpp的平均到达率
步骤2.4、以mmpp的平均到达率
步骤2.5、将工件泊松到达情况下的q学习结果一与非泊松到达情况下q学习结果二进行对比,获得差值δ1;将工件非泊松到达情况下的q学习结果二与工件泊松到达情况下策略迭代结果三进行对比,获得差值δ2;若|δ1|<0.04ψ且|δ2|<0.04ψ,则判断
步骤2.6、分别设置mmpp的理论平均到达率为
步骤2.7、当
本实施例2中是考虑到系统的服务率为1,因此首先选取工件的平均到达率为
实施例3:
本实施例3针对系统工件到达率参数未知的情况,以统计平均到达率作为泊松到达率,测试非泊松工件流csps系统控制策略;具体按如下步骤进行:
步骤3.1、定义[0,t]时间段内工件到达个数为h(t);统计平均到达率λ(t)为:
步骤3.2、将系统建立为smdp模型后,通过策略迭代算法理论求解t时刻的最优控制策略和系统代价,此系统代价记为理论代价;
步骤3.3、将步骤3.2中获得的最优控制策略作用于原非泊松到达情况下的系统,仿真统计对应的系统代价,此系统代价记为最优策略评估代价;
步骤3.4、将实施例1所获得系统控制策略作用于非泊松工件流csps系统,仿真统计工件非泊松到达情况下的系统代价η;
步骤3.5、将理论代价结果与系统代价η进行比较,获得差值δ1,并将最优策略代价结果与系统代价η进行比较,获得差值δ2;若|δ1|<0.04η且|δ2|<0.04η,则判断当工件非泊松到达时,q学习能学到较好的控制策略;否则,判断工件非泊松到达情况下,q学习无法学到较好的控制策略。
实施例4:
分别按实施例2和实施例3的仿真测试方法进行仿真测试,若实施例2和实施例3的仿真测试方法均判断为在工件非泊松到达情况下,q学习能学到较好的控制策略,则判断q学习能适用于非泊松到达csps系统的优化控制;否则,则判断q学习不能适用于非泊松到达csps系统的优化控制。