一种基于改进型SPSA的电机转速控制参数优化方法及系统与流程

文档序号:15454478发布日期:2018-09-15 00:45阅读:567来源:国知局

本发明涉及电机转速控制领域,具体地涉及一种基于改进型spsa的电机转速控制参数优化方法及系统。



背景技术:

控制系统的性能是控制系统设计的关键。而控制系统性能受到多种因素影响,一是控制器的结构,二是过程噪声或扰动,三是控制系统的参数。而一旦控制器的结构确定,则控制系统性能只能通过对控制系统参数的调整来进行改善。因此,控制系统的参数整定是一项重要的工作。

目前最主要的控制参数整定与优化方法可分为四类。第一类是试凑法,该方法是由工程师根据操作经验不断调整控制参数设置并进行试验,直至找到一组可以接受的控制参数组合。该方法严重依赖于工程师个人经验,整定过程耗时费力且整定值的最优性不能得到保证。第二类方法是经验公式法,该方法主要用于pid控制参数整定。例如,ziegler-nichols整定方法和继电反馈方法等。这类方法中,工程师通常需要先通过暂态响应试验、参数估计或频率响应试验等获得对象模型,然后再根据经验整定公式给出参数整定值。该方法的优点在于实施简单。不过,它也存在以下问题:首先,该方法需要依赖于过程模型,但精确模型是难以或不可能获得的;其次,由该方法所获取的控制参数整定值通常并非最优值;再次,经验公式的选取需要依赖于工程师经验和对过程特性的了解。这些问题导致该方法在大多数情况下并不能提供理想的结果。第三类方法是基于模型的优化方法,它是建立在控制性能的模型已知的前提下的一种方法。假定控制性能与控制参数间的模型已知,那么就可以通过基于模型的优化方法实现控制参数的最优化。然而,实际情况下,控制性能与控制参数间的相关关系非常复杂,一般情况下是难以获得的。因此,该方法实际上很难应用于控制参数整定值研究。第四类是在控制系统仿真模型基础上,通过遗传算法、群智能算法等优化算法进行仿真优化,但仿真所获得的控制参数应用于实际过程控制时往往难以达到最优效果。



技术实现要素:

本发明针对电机转速控制系统控制参数整定存在的寻优成本高、依赖专家经验、难以保证最优性等主要问题,提出了一种改进型spsa的电机转速控制参数优化系统及方法,其目的在于实现在尽可能减少质量优化成本的条件下,通过少量在线实验,快速找到控制系统的最优控制参数组合,以提高电机转速控制系统的控制性能。

并行摄动随机逼近方法(spsa)是j.c.spall于1987年在有限差分随机逼近算法的基础上加以改进而提出的。该方法梯度估计只需要两次目标函数评价值而不考虑问题的维度。在适当的前提条件下,给定同样的迭代次数,spsa可以获得与有限差分法梯度逼近同样的统计精度而只需要1/n的函数评价,n为变量维度。因此,本方法具有很高的优化效率。在本发明中,对该方法进行了改进,利用历史迭代过程信息,对该优化过程的效率进行了进一步提升。

为此,本发明采用的具体技术方案如下:

一种基于改进型spsa的电机转速控制参数优化方法,其中,所述方法包括以下步骤:

s1,初始化,人为给定初始控制参数组合并对初始控制参数组合进行标度化,设定优化过程和评估过程所需的相关参数的初始值;

s2,优化过程,根据改进型spsa方法给出新的、待实验的、标度化后的迭代控制参数组合;

s3,预处理过程,将标度化后的迭代控制参数组合预处理成实际可行迭代控制参数组合;

s4,实验测试过程,将实际可行迭代控制参数组合传送给电机的控制系统,并使电机在该控制参数组合下运行,控制系统采集从起始时刻t0开始至测试终止时刻tf之间内的实际转速,构成转速序列,其中在时刻t0,转速为零,在时刻tf,转速为目标设定值vsp;

s5,后处理过程,根据实际转速按公式计算其itae指标以评估电机的控制性能,其中,ti为采样时刻,e(i)为该采样时刻下实际转速与设定转速的偏差,并对实际可行迭代控制参数组合进行标度化;

s6,评估过程,根据实际可行迭代控制参数组合及其对应的itae值,并根据历史信息计算得相对最优性序列,并根据该序列的轨迹特征,对实际可行迭代控制参数组合是否符合最优性进行实时评估,若符合最优性,则输出最优控制参数组合,否则转至s2进行迭代。

进一步地,s1中的标度化通过公式

进行,其中,为初始控制参数组合,(xt)l=inf(xt)为下界,(xt)h=sup(xt)为上界,n为优化的控制参数个数,表示第i个控制参数的初值,t=1,2,…,n。

进一步地,在s1中对改进型spsa方法的参数{a,a,c,α,γ}进行赋值,并设定改进型spsa迭代算子v=1;并对评估过程的相关参数进行设定,设置终止状态系数初值κ=0,下限阈值κf,终止因子下限阈值ξγ,滑动平滑系数λ,滑动终止系数η。

更进一步地,在一个优选实施例中,参数{a,a,c,α,γ}为{α=0.602,γ=0.101,a=50,a=30,c=8},下限阈值κf=3,终止因子下限阈值ξγ=0.05,滑动平滑系数λ=1,滑动终止系数η=1。

更进一步地,s2的具体步骤为:

s21,算法增益更新:as=a/(a+s)α,cs=c/sγ

s22,摄动向量产生:通过蒙特卡洛方式产生一个n维随机向量(摄动向量)δs,其中该向量的每一维都是由伯努利±1分布随机产生,其中产生+1、-1的概率均为0.5;

s23,正向摄动点产生:令k=k+1,经实验得到其对应控制参数下的itae值

s24,逆向摄动点产生:令k=k+1,经实验得到其对应控制参数下的itae值

s25,梯度逼近:根据摄动点估计在点处的近似梯度因为优化操作区间有约束存在,所以梯度估计公式修正为:

s26,迭代控制参数组合点搜索:利用近似梯度和迭代最优解的差值逼近下一迭代点,迭代控制参数组合点按照公式计算;令k=k+1,s=s+1。

更进一步地,s3的具体步骤为:

s31,根据将相应的迭代控制参数组合还原为实际迭代控制参数,其中,为还原后的迭代控制参数组合;的各个维度表征与原相对应的实际物理参数;

s32,如果则实际可行的迭代控制参数否则,选取一个满足可行域内距离的欧氏距离最近的点来代替并令实际可行的迭代控制参数选取近似可行点的规则如其中,为空间中某点到的欧氏距离,φ为满足最小欧式距离的解集。

更进一步地,s6的具体步骤如下:

s61,产生或更新相对最优性序列:设前一批次的迭代控制参数组合序列为mk-1={(x1,y1),(x2,y2),…(xk-1,yk-1)},其中xi为实际可行迭代控制参数组合,yi为该控制参数组合下的itae计算值,(xi,yi)构成一个迭代控制参数组合信息集。新迭代控制参数组合信息集为(xk,yk),将其更新入迭代点序列后,形成当前迭代组合序列mk;再将各控制参数组合信息集基于迭代控制参数组合itae的大小进行重新排序,形成一组按itae值递增的序列其中为当前迭代点控制参数组合序列中itae值最小、控制性能最优的迭代控制参数组合;并将该迭代控制参数组合信息集写入相对最优性序列其中当前最优序列的新增点即为

s62,产生或更新平滑轨迹:以n+1作为滑动轨迹的计算基数,λ为滑动平滑系数(取整数1,2…),滑动窗口大小则为λ(n+1),滑动轨迹形成的计算规则如下:

采用该计算规则对相对最优性序列进行平滑,产生滑动轨迹

s63,产生或更新终止轨迹:在滑动轨迹的基础上,进一步滑动平均计算得终止轨迹其计算规则如下:

其中,η为滑动终止系数;

s64,产生或更新差值序列及终止因子:根据终止轨迹可以获得其差值序列δyt,该序列表征在不同迭代控制参数组合处的目标值增长趋势,差值序列δyt的产生规则如下:

基于差值序列和终止轨迹可计算得到优化进程的终止因子该因子的数学含义是当前迭代控制参数组合点的改进相对于当前迭代点的itae值的比率,反映了优化进程的相对进展,ξ越大,表示在当前迭代控制参数组合点处的改进程度越大;反之,则表示在该点处的改进程度越小,该因子的下限阈值ξγ,标志系统优化接近停滞;

s65,优化进程终止判断:当ξ<ξγ条件满足时,κ由0置1,然后,在后续迭代批次中,当迭代控制参数组合再次满足ξ<ξγ,κ递增1;而当κ≠0时,如果发生ξ>ξγ,标志优化进程跳出停滞状态,重新将κ置0,仅当κ等于其下限阈值κf时,认为优化进程满足终止条件,迭代终止准则条件为(ξ<ξγ)∩(κ=κf);

s66,当优化进程终止时,输出优化进程控制状态标志ψ=1,系统输出最优控制参数组合(x*,y*);如尚未满足终止条件,则跳转至s2继续迭代执行。

更进一步地,控制参数包括比例系数p,积分系数i和微分系数d。

一种基于改进型spsa的电机转速控制参数优化系统,其中,所述电机转速控制参数优化系统包括包括初始化模块、优化模块、预处理模块、实验测试模块、后处理模块和评估模块,其中,初始化模块用于接收来自于工程师或操作人员所提供的初始控制参数组合及各控制参数的上下限,并对初始控制参数组合进行标度化,对优化模块和评估模块的相关参数进行设定;优化模块用于接收经标度化后的控制参数组合,根据改进型spsa方法搜索给出新的、待实验的、标度化后的迭代控制参数组合;预处理模块用于将标度化后的迭代控制参数组合预处理成实际可行迭代控制参数组合;实验测试模块用于将实际可行迭代控制参数组合传送给电机的控制系统,并使电机在该控制参数组合下运行,控制系统采集从起始时刻t0开始至测试终止时刻tf之间内的实际转速,构成转速序列并将其发送至后处理模块,其中在时刻t0,转速为零,在时刻tf,转速为目标设定值vsp;后处理模块用于根据实际转速按公式计算其itae指标以评估电机的控制性能,其中,ti为采样时刻,e(i)为该采样时刻下实际转速与设定转速的偏差,并对实际可行迭代控制参数组合进行标度化;评估模块用于根据实际可行迭代控制参数组合及其对应的itae值,并根据历史信息计算得相对最优性序列,并根据该序列的轨迹特征,对实际可行迭代控制参数组合是否符合最优性进行实时评估,若符合最优性,则输出最优控制参数组合,否则转至优化模块进行迭代。

本发明采用上述技术方案,具有的有益效果是:

1、实施成本小,节省优化时间和实验耗费;

2、不依赖专家经验,易于实施;

3、可以在最低优化成本下,高效给出优化控制参数组合。

附图说明

图1是本发明的系统结构示意图;

图2是本发明的方法的总体流程步骤示意图;

图3是本发明的方法中的改进型spsa方法的步骤示意图;

图4是评估过程的步骤示意图。

具体实施方式

为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。

现结合附图和具体实施方式对本发明进一步说明。

图1为本发明所提出的基于改进型spsa的电机转速控制参数优化系统的结构图,图2是本发明所提出的基于改进型spsa的电机转速控制参数优化方法的总体步骤图。所述电机转速控制参数优化系统包括包括初始化模块1、优化模块2、预处理模块3、实验测试模块4、后处理模块5和评估模块6,其中,初始化模块1用于接收来自于工程师或操作人员所提供的初始控制参数组合及各控制参数的上下限,并对初始控制参数组合进行标度化,对优化模块和评估模块的相关参数进行设定。优化模块2用于接收经标度化后的控制参数组合,根据改进型spsa方法搜索给出新的、待实验的、标度化后的迭代控制参数组合。预处理模块3用于将标度化后的迭代控制参数组合预处理成实际可行迭代控制参数组合。实验测试模块4用于将实际可行迭代控制参数组合传送给电机的控制系统,并使电机在该控制参数组合下运行,控制系统采集从起始时刻t0开始至测试终止时刻tf之间内的实际转速,构成转速序列并将其发送至后处理模块,其中在时刻t0,转速为零,在时刻tf,转速为目标设定值vsp。后处理模块5用于根据实际转速按公式计算其itae指标以评估电机的控制性能,其中,ti为采样时刻,e(i)为该采样时刻下实际转速与设定转速的偏差,并对实际可行迭代控制参数组合进行标度化。评估模块6用于根据实际可行迭代控制参数组合及其对应的itae值,并根据历史信息计算得相对最优性序列,并根据该序列的轨迹特征,对实际可行迭代控制参数组合是否符合最优性进行实时评估,若符合最优性,则输出最优控制参数组合,否则转至优化模块2进行迭代。

下面参照图1至4并结合一个具体实例来描述基于改进型spsa的电机转速控制参数优化方法,该优化方法包括以下步骤:

s1:操作人员根据控制系统设计方案确定控制系统参数,选取比例系数kp、积分系数ti、微分系数td等参数作为优化控制参数。设x1表示比例系数kp、x2表示积分系数ti、x3表示微分系数td。由操作人员给定初始控制参数组合设定值x0=[1,0.1,0.51]t;由操作人员根据经验设定各控制参数的下限值与上限值,得到严格限定的控制参数优化区间,比例系数kp、积分系数ti、微分系数td的上限值记为本实施例中取:xmax=[30,10,5]t,其下限值记为:本实施例中取:xmin=[0,0,0]t;由操作人员设置最大优化迭代次数为100次。工程师或操作人员根据各控制参数的上下限确定优化问题可行域,表示为d={x|(xt)l≤xt≤(xt)h,t=1,…,n},其中(xt)l=inf(xt)为下界,(xt)h=sup(xt)为上界。调用初始化模块1录入上述信息,并按公式(1)将x0=[1,0.1,0.51]t标度化为

标度化后,每个维度的控制参数变量都有统一的标度,每个控制参数都被标度化在[0,100]区间。对改进型spsa方法的参数{a,a,c,α,γ}进行赋值,取{α=0.602,γ=0.101,a=50,a=30,c=8},并设定改进型spsa迭代算子s=1。同时对优化进程评估模块参数进行设定,设置终止状态系数初值κ=0,其下限阈值κf=3,终止因子下限阈值ξγ=0.05,滑动平滑系数λ=1,滑动终止系数η=1。

s2:优化模块2接收经标度化后的控制参数组合根据改进型spsa方法搜索给出新的、待实验的、标度化后的迭代控制参数组合令i=i+1。如图3所示,其给定方法与步骤如下:

s21:算法增益更新:as=a/(a+s)α,cs=c/sγ

s22:摄动向量产生:通过蒙特卡洛方式产生一个n维随机向量(摄动向量)δs,其中该向量的每一维都是由伯努利±1分布随机产生,其中产生+1、-1的概率均为0.5。

s23:正向摄动点产生:令k=k+1。经实验得到其对应控制参数的itae值

s24:逆向摄动点产生:令k=k+1。经实验得到其对应控制参数的itae值

s25:梯度逼近:根据摄动点估计在点处的近似梯度因为优化操作区间有约束存在,所以梯度估计公式修正为:

s26:迭代控制参数组合点搜索:利用近似梯度和迭代最优解的差值逼近下一迭代点。迭代控制参数组合点按照公式计算。令k=k+1,s=s+1。

s3:将由改进型spsa优化模块给出的标度化后的迭代控制参数组合传送至预处理模块。标度化后的迭代控制参数组合通过预处理模块按公式(2)还原为实际迭代控制参数。

其中,为还原后的迭代控制参数组合;的各个维度表征与原相对应的实际控制参数。

如果迭代控制参数组合可行点否则,选取一个满足可行域内距离的欧氏距离最近的点来代替并令新的迭代控制参数组合可行点选取近似可行点的规则如下式(3)。

其中,为空间中某点到的欧氏距离,φ为满足最小欧式距离的解集。

实际可行迭代控制参数组合xi传输给控制系统模块。

s4:实验测试模块4将实际可行迭代控制参数组合xi传送给电机的控制系统,并使电机在该控制参数组合下运行。该模块采集电机实际转速,并按增量式pid控制算法实现对电机转速的控制。其控制量的计算公式如下式(4)所示。

其中,u(n)为n时刻控制系统输出的控制量,e(n)表征n时刻转速偏差值。其中,kp,ti,td由控制参数组合xi确定。

起始t0时刻置电机实际转速为0,控制系统从t0时刻开始按上述控制方式调节电机转速至目标设定值vsp,测试时长为tf,本实施例中取tf为10秒。当tf时刻到重置电机转速为0。模块同时记录从起始时刻t0开始至测试终止时刻tf之间内的实际转速,构成转速序列并发送给后处理模块5。

s5:由后处理模块5从实验测试模块4获得电机实际转速序列,根据实际转速按公式(5)计算其itae指标以评估电机的控制性能,itae数值越小,控制性能越好。

其中,ti为采样时刻,e(i)为该采样时刻下实际转速与设定转速的偏差。

对实际迭代控制参数组合进行标度化,每个控制参数都被标度化到[0,100]区间。标度化规则按下式(6)。

其中,优化区间为d={x|(xt)l≤xt≤(xt)h,t=1,…,n},(xt)l=inf(xt),(xt)h=sup(xt)。

s6:优化进程评估模块采集优化过程中的控制参数组合及其对应的itae值,并根据历史信息计算得相对最优性序列,并根据该序列的轨迹特征,对优化进程进行实时评估,根据评估结果及时识别停滞段状态,控制优化进程适时终止,输出最优控制参数组合。如图4所示,其主要步骤如下:

s61:产生或更新相对最优性序列。设前一批次的迭代控制参数组合序列为mk-1={(x1,y1),(x2,y2),…(xk-1,yk-1)},其中xi为实际可行迭代控制参数组合,yi为该控制参数组合下的itae值,(xi,yi)构成一个迭代控制参数组合信息集。新迭代控制参数组合信息集为(xk,yk),将其更新入迭代点序列后,形成当前迭代组合序列mk。再将各控制参数组合信息集基于迭代控制参数组合itae值的大小进行重新排序,形成一组按itae值递增的序列其中为当前迭代点控制参数组合序列中控制性能最优(以极小值问题为例)的迭代控制参数组合。并将该迭代控制参数组合信息集写入相对最优性序列其中当前最优序列的新增点即为

s62:产生或更新平滑轨迹。以n+1作为滑动轨迹的计算基数,λ为滑动平滑系数(取整数1,2…),滑动窗口大小则为λ(n+1)。滑动轨迹形成的计算规则如下式(7)。

采用该计算规则对相对最优性序列进行平滑,产生滑动轨迹

s63:产生或更新终止轨迹。在滑动轨迹的基础上,进一步滑动平均计算得终止轨迹其计算规则如下式(8)。

其中,η为滑动终止系数。

s64:产生或更新差值序列及终止因子。根据终止轨迹可以获得其差值序列δyt,该序列表征在不同迭代控制参数组合处的目标值增长趋势。差值序列δyt的产生规则如下式(9)。

基于差值序列和终止轨迹可计算得到优化进程的终止因子该因子的数学含义是当前迭代控制参数组合点的改进相对于当前迭代点的itae值的比率,反映了优化进程的相对进展。ξ越大,表示在当前迭代控制参数组合点处的改进程度越大;反之,则表示在该点处的改进程度越小。该因子的下限阈值ξγ,标志系统优化接近停滞。

s65:优化进程终止判断。当ξ<ξγ条件满足时,κ由0置1。然后,在后续迭代批次中,当迭代控制参数组合再次满足ξ<ξγ,κ递增1;而当κ≠0时,如果发生ξ>ξγ,标志优化进程跳出停滞状态,重新将κ置0。仅当κ等于其下限阈值κf时,可以认为优化进程满足终止条件。迭代终止准则条件如下式(10)。

(ξ<ξγ)∩(κ=κf)(10)

s66:当优化进程评估模块判定优化进程终止时,即(ξ<0.1)∩(κ=3)时,输出优化进程控制状态标志ψ=1,系统输出最优控制参数组合(x*,y*),优化系统停止运行;如尚未满足终止条件,则优化系统跳转至步骤s2继续迭代执行。

本实施例中,经过32次迭代实验后,本发明所提出的优化系统找到最优工艺参数组合如下:x0=[0.523,0.032,0.158]t。即比例系数为0.523,积分系数为0.032,微分系数为0.158。

尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1