当前位置: 首页 > 专利查询>上海大学专利>正文

基于变换函数和填充函数的智能控制系统优化算法技术方案

技术编号:14662864 阅读:73 留言:0更新日期:2017-02-17 10:11
本发明专利技术公开了一种基于变换函数与填充函数的智能控制系统优化算法,本方法的操作步骤为:一,对各个参数进行初始化;二,判断是否结束算法流程:k>MN或L>TT;三,判断是否进入填充函数:abs(gi(x)‑fi(x))<d1且k≤FMN且fi(x)≥f_allbest。若是,进入填充函数,更新自变量Xnxd和T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn],然后转回步骤三;否则,跳转至步骤四;四,更新各个参数;五,更新相关误差量E,ΔE,Δ2E,调整惯性因子w,PID算法的参数ki,kp,kd,然后跳转至步骤二。本发明专利技术的创新之处是在多回路反馈智能控制系统中采用了变换函数法和填充函数法实现优化,从而减少了陷入局部最优的可能,提高了寻优精度与速度。

【技术实现步骤摘要】

本专利技术提出了一种基于变换函数和填充函数的智能控制系统优化算法,其中智能控制系统是多回路反馈控制系统,它使每一个子回路的控制对象为被优化的函数,通过各子回路的反馈和多子回路的分布,实现控制对象优化;变换函数简化目标函数,从而使其全局最小点与其它局部最小值分离;填充函数具有使智能控制系统从一个局部最优点跳到另一个更小的局部最优点的功能,如此反复若干次可以得到更加精确的全局最优点。
技术介绍
反馈控制系统优化算法的基本思路来源于单回路控制系统的反馈思想,具体的框图模型如下图5所示。其中,输入给定值R一般是一个小于目标函数最小值的常数;从图5不难看出,反馈控制系统主要通过输出反馈产生误差,经过控制器控制被控对象(被优化的函数),从而实现寻优,即作为控制对象的被优化函数通过反馈和控制器使其输出越来越小。在图5中,f(k)是第k次迭代时目标函数值;控制器采用增量式PID控制策略,单回路反馈控制系统优化算法的迭代公式定义为:x(k+1)=x(k)+kpΔE(k)+kiE(k)+kdΔ2E(k)(1)上式中的kp,ki和kd分别是PID三个自适应调整参数。该算法对一些复杂的多极值点的函数,有时达到一定的精度后,就很难再找到更好的极值点,或者无法达到目标要求,为此,某个变换函数被用于简化目标函数(控制对象)使之尽可能地成为简单的凸函数。当目标函数的值远离零时,将其值映射到1或-1,而当目标函数的值接近零时,则将其值尽可能映射到零。另外,由于转换函数在零附近变化非常大,因此,通过函数变换,可以使目标函数的全局最小点与其它靠近零点的局部最小值分离。结合具有被简化的控制对象的智能控制系统,我们可以得到目标函数的更加精确的全局最小点。如果函数T(x)满足以下两个性质,我们就把它叫做目标函数f(x)的一个函数变换:1)T(x)(其中x>0)是一个连续、可导的一维函数并且在(0,1)或(-1,0)上是单调的。2)|(T(±10)-T(0))|/T(∞)≥98%注1:性质1保证了变换后的函数T(x)和目标函数f(x)有着相同的全局最优点。性质2是给出T(x)的有效区间。该算法面临两个问题的考验。第一个问题是:如何判断当前的极小值点是全局最优值点;第二个问题是:怎样从当前局部极小点跳出,移向目标函数更小的局部极小值点。填充函数法是一种能较好的解决陷入局部极小点的方法,通过构造填充函数能有效地跳出局部极小点,找到另一个比它更小的局部极小点。为了更好地理解填充函数,下面给出三个假设。假设1:函数f(x)的一个包含最小点的连通域B1,在其内部任意一点x出发,用速降法都收敛于但B1外面的部分任意点都不能收敛于则B1叫做f(X)的一个盆域。假设2:如果是f(x)的最大点,则f(x)包含的谷域是-f(x)的盆域。假设3:包含局部最小值点的盆域B2是高于包含局部最小值的盆域B1当且仅当如果一个函数P(x,x*)满足以下四个条件,则它被称为是f(x)在局部最小值点的填充函数:1)是函数P(x,x*)的一个严格的局部最大点。2)在任意一个高于盆浴B1的f(x)的盆浴,P(x,x*)没有最小点或者鞍点。3)如果f(x)有一个在局部最小点比盆域B1小的盆域B2,则存在一点x′使得P(x,x*)最小,且它在和x″的连接线上(它是某一个邻域)。4)对于属于Ω域的任意x、y,满足和当且仅当P(x)≤(<)P(y)。
技术实现思路
本专利技术的目的在于针对已有技术存在的不足,提供一种基于变换函数和填充函数的智能控制系统优化算法,其智能控制系统是多回路反馈控制系统,它使每一个子回路的控制对象为被优化的函数,通过各子回路的反馈和多子回路的分布,实现控制对象优化。因多极值点的优化函数易陷入局部极值点,引入变换函数简化控制对象,使被优化的函数的全局最小点能够与其它靠近零点的局部最小值分离。变换函数是单调一维函数,不影响目标函数的极值点的个数。基于被优化的函数构造的填充函数使控制系统跳出当前局部最小点,并能够在新的位置重新开始寻找比当前最小值更小的局部最小点,从而避免使系统陷入局部最小点。为达到上述目的,本专利技术的构思是:智能控制系统采用多回路反馈控制系统,每一个子回路的控制对象为被优化的函数,利用变换函数对控制对象进行T变换,使被优化函数的全局最小点(接近零点的最小值)能够与其它靠近零点的局部最小值分离,用自适应PID控制器寻找被优化函数的最优值。当被判断为陷入局部最小值时(即相邻两次迭代后的被优化函数值之差很小时),此时进入填充函数迭代,直到跳出局部最小值并找到一个更小的最小点,在此基础上继续用自适应PID控制器寻找系统最优值。根据上述专利技术构思,本专利技术采用下述技术方案:第一步:对各个参数进行初始化:在可行域内利用随机分布确定初始点Xn×d的初值,其中n为并行控制系统个数,d为实际自变量的维数,给各个参数局部最小点x_best,全局最小点x_allbest,局部最小值f_best,全局最小值f_allbest,惯性因子w,PID算法的参数ki,kp,kd,[0,2]之间的常数c1,c2,随机数r1,r2区间的初值,并确定算法总循环次数MN,进入填充函数子程序的最大次数TT以及填充函数内迭代的最大次数ND,令k=1,L=1.m=1;第二步:判断是否结束算法流程:k>MN或L>TT,若是,则输出目标函数的全局最优值f_allbest,程序结束;否则,k=k+1,gi(x)=fi(x),i=1,2,3...n;根据下列的式(3)更新自变量Xn×d和T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn]并判断向量x是否超出可行域;第三步:判断是否进入填充函数:abs(gi(x)-fi(x))<d1且m≤ND且fi(x)≥f_allbest,若是,则x(i,k)=x(i,k)+d2×(rand(1,1)-0.5)×exp(d3(k-1)/ND)x(i,k)=x(i,k)+d4×rand(1,1)×exp(d5(k-1)/ND)×(x(i,k)-x_allbest)/||x(i,k)-x_allbest||进入填充函数,更新f(x),T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn],gi(x)=fi(x),i=1,2,3...n,然后转回第三步;否则,跳转至第四步;第四步:更新x_best,x_allbest,f_best,f_allbest;第五步:根据式(4)更新相关误差量E,ΔE,Δ2E。根据式(5)调整惯性因子w,PID算法的参数ki,kp,kd,然后跳转至第二步。上述第二步中,对目标函数f(x)进行T变换的具体方法:目标函数f(x)的T变换为这里T变换函数为更新自变量Xn×d的迭代方程式为:其中x(i,k)表示第i个子系统的第k次迭代向量,ki,kp,kd是PID算法的参数向量,w是惯性因子。r1,r2是初值设定区间的随机数。c1,c2是常数,一般取值范围是[0,2]。x_best(i)是第i个子系统在迭代过程中的最好位置向量,x_allbest是所有系统在迭代过程的最好位置向量。判断向量x是否超出可行域:x<s1或x>s2,若是,则超出可行域,x(i,k+1)=x_allbest(k),更新f(X)=[f1,f2..本文档来自技高网
...
基于变换函数和填充函数的智能控制系统优化算法

【技术保护点】
一种基于变换函数和填充函数的智能控制系统优化算法,其特征在于操作步骤如下:1)对各个参数进行初始化:在可行域内利用随机分布确定初始点Xn×d的初值,其中n为并行控制系统个数,d为实际自变量的维数,给各个参数局部最小点x_best,全局最小点x_allbest,局部最小值f_best,全局最小值f_allbest,惯性因子w,PID算法的参数ki,kp,kd,[0,2]之间的常数c1,c2,随机数r1,r2区间的初值,并确定算法总循环次数MN,进入填充函数子程序的最大次数TT以及填充函数内迭代的最大次数ND,给定d1,d2,d3,d4,d5.令k=1,L=1,m=1;2)判断是否结束算法流程:k>MN或L>TT,若是,则输出目标函数的全局最优值f_allbest,程序结束;否则,k=k+1,gi(x)=fi(x),i=1,2,3...n;更新自变量Xn×d和T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn]并判断向量x是否超出可行域;3)判断是否进入填充函数:abs(gi(x)‑fi(x))<d1且m≤ND且fi(x)≥f_allbest,若是,则x(i,k)=x(i,k)+d2×(rand(1,1)‑0.5)×exp(d3(k‑1)/ND)x(i,k)=x(i,k)+d4×rand(1,1)×exp(d5(k‑1)/ND)×(x(i,k)‑x_allbest)/||x(i,k)‑x_allbest||进入填充函数,更新f(x),T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn],gi(x)=fi(x),i=1,2,3...n,然后转回步骤3);否则,跳转至步骤4);4)更新x_best,x_allbest,f_best,f_allbest;5)更新相关误差量E,ΔE,Δ2E;调整惯性因子w,PID算法的参数ki,kp,kd,然后跳转至步骤2)。...

【技术特征摘要】
1.一种基于变换函数和填充函数的智能控制系统优化算法,其特征在于操作步骤如下:1)对各个参数进行初始化:在可行域内利用随机分布确定初始点Xn×d的初值,其中n为并行控制系统个数,d为实际自变量的维数,给各个参数局部最小点x_best,全局最小点x_allbest,局部最小值f_best,全局最小值f_allbest,惯性因子w,PID算法的参数ki,kp,kd,[0,2]之间的常数c1,c2,随机数r1,r2区间的初值,并确定算法总循环次数MN,进入填充函数子程序的最大次数TT以及填充函数内迭代的最大次数ND,给定d1,d2,d3,d4,d5.令k=1,L=1,m=1;2)判断是否结束算法流程:k>MN或L>TT,若是,则输出目标函数的全局最优值f_allbest,程序结束;否则,k=k+1,gi(x)=fi(x),i=1,2,3...n;更新自变量Xn×d和T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn]并判断向量x是否超出可行域;3)判断是否进入填充函数:abs(gi(x)-fi(x))<d1且m≤ND且fi(x)≥f_allbest,若是,则x(i,k)=x(i,k)+d2×(rand(1,1)-0.5)×exp(d3(k-1)/ND)x(i,k)=x(i,k)+d4×rand(1,1)×exp(d5(k-1)/ND)×(x(i,k)-x_allbest)/||x(i,k)-x_allbest||进入填充函数,更新f(x),T变换后的目标函数n个子系统的值f(X)=[f1,f2...fn],gi(x)=fi(x),i=1,2,3...n,然后转回步骤3);否则,跳转至步骤4);4)更新x_best,x_allbest,f_best,f_allbest;5)更新相关误差量E,ΔE,Δ2E;调整惯性因子w,PID算法的参数ki,kp,kd,然后跳转至步骤2)。2.根据权利要求1所述的基于变换函数和填充函数的智能控制系统优化算法,其特征在于:所述操作步骤2)中,对目标函数f(x)进行T变换的具体方法:目标函数f(x)的T变换为这里T变换函数为更新自变量Xn×d的迭代方程式为:x(i,k+1)=w(i)·x(i,k)+kp(i)·ΔE(i,k)+ki(i)·E(i,j)+kd(i)·Δ2E(i,k)+r1(i)·c1(i)·(x_best(i)-x(i,k))+r2(i)·c2(i)·(x_allbest-x(i,k))---(1)]]>其中x(i,k)表示第i个子系统的第k次迭代向量,ki,kp,kd是PID算法的参数向量,w是惯性因子;r1,r2是初值设定区间的随机数;c1,c2是常数,一般取值范围是[0,2];x_best(i)是第i个子系统在迭代过程中的最好位置向量,x_allbest是所有系统在迭代过程的最好位置向量;判断x(i,k+1)是否超出可行域:x<s1或x>s...

【专利技术属性】
技术研发人员:张静静吕柏权
申请(专利权)人:上海大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1