发明名称 时间序列预测与智能控制结合的参数在线整定方法与系统
摘要 本发明提出了一种基于时间序列预测的小波神经网络在线PID整定方法和采用了该方法的系统,方法具体包括参数初始化,计算控制参数并修正在线整定参数,计算控制量,计算或采集系统输出,计算预测结果,系统具体包括控制决策器、在线整定器、控制执行器、被控对象、在线预测器、控制扰动源和预测扰动源,控制决策器实现参数初始化,在线整定器用于计算控制参数并修正在线整定算法参数,控制执行器用于计算控制量,在线预测器用于计算预测结果,控制决策器用于判断算法是否结束。该方法将小波神经网络和经典控制方法结合,解决了控制领域对系统运行前参数配置工作的依赖问题,使得控制系统具有预测、学、参数在线优化、自适应的效果。
申请公布号 CN102902203B 申请公布日期 2015.08.12
申请号 CN201210365314.2 申请日期 2012.09.26
申请人 北京工业大学 发明人 刘经纬;王普;杨蕾
分类号 G05B13/04(2006.01)I 主分类号 G05B13/04(2006.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 吴荫芳
主权项 时间序列预测与智能控制结合的参数在线整定方法,其特征在于:包括以下5个步骤,即步骤1.0至步骤1.5:步骤1.0参数初始化:该步骤为计算过程中涉及到的各变量分别赋予初始值;包括以下12个子步骤,即步骤1.0.1至步骤1.0.12:1.0.1设定算法当前执行次数t、执行总次数T:当算法连续运行有限次的情况时:设当前执行次数初始值t=1;执行和调整总次数T的取值原则是:要保证系统运行总次数0.8T次后控制结果(1300)能够稳定在控制目标(1000)附近;其中能够稳定的含义是:当执行次数达到0.8T以后,控制结果(1300)y<sub>system</sub>(t)与控制目标(1000)r<sub>in</sub>(t)之间的误差在±3%以内,参见公式1:<img file="FDA0000703568090000011.GIF" wi="518" he="156" />公式1执行和调整总次数T的设置方法是:1.0.1.1设执行总次数T=5000;1.0.1.2运行系统,及执行T次本方法全部步骤,再根据运行结果进行调整;1.0.1.3如果运行结果显示算法执行0.8T次以后,控制结果(1300)无法稳定于控制目标(1000),则将T增大10%,并跳转到步骤1.0.1.2;1.0.1.4如果运行结果显示算法过早就可以将控制结果(1300)收敛于控制目标(1000),即当执行次数达到0.5T以前,控制结果(1300)y<sub>system</sub>(t)与控制目标(1000)r<sub>in</sub>(t)之间的误差在±3%以内,则将T减小10%,并跳转到步骤1.0.1.2;上述步骤的结果是:系统运行总次数0.8T次后控制结果(1300)能够稳定在控制目标(1000)附近,至此T的设置工作完成;当算法连续运行从不终止的情况时:设当前执行次数初始值t=1;设执行 总次数T=0,当T=0时该算法不断循环,算法不会终止;1.0.2设定每个时刻的控制目标(1000)值r<sub>in</sub>(t),r<sub>in</sub>(t)可以是一常数r<sub>in</sub>,也可以是以t为自变量的函数;1.0.3设定启动预测时刻T<sub>predict</sub>,T<sub>predict</sub>为正整数,根据工程经验,其取值范围参考为:5%·T≤T<sub>predict</sub>≤10%·T;1.0.4设定在线预测算法(401)需要的历史数据的个数K<sub>predict</sub>,K<sub>predict</sub>为正整数,其取值由在线预测算法的假设检验统计指标决定,根据工程经验,其取值范围参考为:10≤K<sub>predict</sub>≤5%·T;1.0.5设定预测步长为L<sub>predict</sub>,L<sub>predict</sub>为正整数,根据工程经验,其取值范围参考为:1≤L<sub>predict</sub>≤10%·T;1.0.6设定控制结果初始值为零,即y<sub>system</sub>(t)=0;1.0.7设定控制结果预测值为零,即y<sub>predict</sub>(t)=0;1.0.8设定预测结果初始值为零,即y<sub>out</sub>(t)=0;1.0.9设定小波神经网络各层神经元数量M、Q、L,取值范围是M≤10,M≤Q≤5M,L≤M区间内的正整数区间内的;其中M表示小波神经网络的输入层神经元数量,即小波神经网络由M个输入层神经元构成;Q表示小波神经网络的隐含层神经元数量,即小波神经网络由Q个隐含层神经元构成;L表示小波神经网络的输出层神经元数量,即小波神经网络由L个输出层神经元构成;1.0.10设定t=1次计算过程中的输入层、隐含层、输出层各神经元的输入变量<img file="FDA0000703568090000021.GIF" wi="189" he="75" />i=1,2,...,M,<img file="FDA0000703568090000022.GIF" wi="197" he="81" />j=1,2,...,<img file="FDA0000703568090000023.GIF" wi="280" he="75" />k=1,2,...,L,输入层与隐含层的连接权值矩阵<img file="FDA0000703568090000024.GIF" wi="165" he="82" />隐含层输出层各神经元的的连接权值矩阵<img file="FDA0000703568090000025.GIF" wi="163" he="81" />隐含层神经元的活化函数尺度变换参数矩阵a<sub>j</sub>(t)和b<sub>j</sub>(t)中的每个元素为0至1开区间内的随机小数;上述变量右上角标“(1)”表示神经网络的第一层——输入层,隐含层用“(2)”表示,输出层用“(3)”表示,右下角标“i”表示输入层神经元序号, “j”表示隐含层神经元序号,“k”表示输出层神经元序号;1.0.11设定神经网络的学习速率η和惯性系数α:其中η的取值范围是0.01至0.7闭区间内的小数;α的取值范围是0.01‑0.2闭区间内的小数;1.0.12设定控制量u(t)和误差量error(t)的初始值和时间序列值为零:u(t)=0、u(t‑1)=0、u(t‑2)=0、error(t)=0、error(t‑1)=0、error(t‑2)=0;步骤1.1计算控制参数K<sub>C</sub>并修正在线整定算法参数W:该步骤根据控制目标(1000)r<sub>in</sub>(t)和预测结果(1400)y<sub>out</sub>(t‑1),采用在线整定算法(101),计算得出控制参数(1100)K<sub>C</sub>(t),并修正在线整定算法参数W(t+1);在线整定算法(101)采用时间序列预测与智能控制结合的参数在线整定方法中的在线整定算法,或者采用非基于时间序列预测的或非神经网络方法在线整定控制参数的控制参数在线整定方法;其中采用时间序列预测与智能控制结合的参数在线整定方法中的在线整定算法步骤如下,1.1.1计算控制参数K<sub>C</sub>:1.1.1.1计算输入层的输入<img file="FDA0000703568090000031.GIF" wi="198" he="86" />输入层神经元的输入<img file="FDA0000703568090000032.GIF" wi="116" he="87" />的计算参见公式2:<img file="FDA0000703568090000033.GIF" wi="482" he="226" />公式2其中变量<img file="FDA0000703568090000034.GIF" wi="196" he="86" />i=1,2,3,表示输入层3个神经元的输入;输入层3个神经元的输入分别为预测结果(1400)y<sub>out</sub>(t‑1)、控制目标(1000)r<sub>in</sub>(t)、控制误差error(t);1.1.1.2计算输入层的输出<img file="FDA0000703568090000041.GIF" wi="218" he="84" />神经网络输入层的输出<img file="FDA0000703568090000042.GIF" wi="173" he="90" />的计算参见公式3:<img file="FDA0000703568090000043.GIF" wi="675" he="87" />公式3其中,输入层、隐含层、输出层各神经元的输出分别用变量<img file="FDA0000703568090000044.GIF" wi="215" he="89" />i=1,2,...,M,<img file="FDA0000703568090000045.GIF" wi="223" he="94" />j=1,2,...,Q,<img file="FDA0000703568090000046.GIF" wi="182" he="86" />,k=1,2,...,L表示;1.1.1.3计算隐含层的输入<img file="FDA0000703568090000047.GIF" wi="198" he="89" />神经网络隐含层的输入<img file="FDA0000703568090000048.GIF" wi="170" he="83" />的计算参见公式4:<img file="FDA0000703568090000049.GIF" wi="1014" he="156" />公式4其中<img file="FDA00007035680900000410.GIF" wi="86" he="91" />表示输入层第i个神经元与隐含层第j个神经元之间的加权权值;1.1.1.4计算隐含层的输出<img file="FDA00007035680900000411.GIF" wi="164" he="81" />神经网络隐含层的输出<img file="FDA00007035680900000412.GIF" wi="138" he="77" />的计算参见公式5:<img file="FDA00007035680900000413.GIF" wi="1058" he="157" />公式5其中Ψ<sub>a</sub><sub>,</sub><sub>b</sub>(t)为小波函数,即隐含层神经元的活化函数;a<sub>j</sub>(t)、b<sub>j</sub>(t)为小波函数尺度变换参数,即隐含层神经元的活化函数尺度变换参数;取满足框架条件的小波函数Ψ<sub>a</sub><sub>,</sub><sub>b</sub>(t),计算参见公式6:<img file="FDA00007035680900000414.GIF" wi="520" he="103" />公式6Ψ<sub>a</sub><sub>,</sub><sub>b</sub>(t)的一阶导数的计算方法参见公式7:<img file="FDA00007035680900000415.GIF" wi="1070" he="105" />公式7其中sin(t)、cos(t)分别表示x的正弦函数值和余弦函数值;1.1.1.5计算输出层的输入<img file="FDA00007035680900000416.GIF" wi="197" he="84" />神经网络输出层的输入<img file="FDA00007035680900000417.GIF" wi="171" he="76" />的计算参见公式8:<img file="FDA00007035680900000418.GIF" wi="962" he="172" />公式8其中<img file="FDA00007035680900000419.GIF" wi="179" he="83" />表示隐含层第j个神经元与输出层第k个神经元之间的加权权 值;1.1.1.6计算输出层的输出<img file="FDA0000703568090000051.GIF" wi="160" he="90" />神经网络输出层的输出<img file="FDA0000703568090000052.GIF" wi="133" he="80" />的计算参见公式9:<img file="FDA0000703568090000053.GIF" wi="744" he="88" />公式9其中g(x)为输出层神经元的活化函数取非负的Sigmoid函数,g(x)的计算参见公式10:<img file="FDA0000703568090000054.GIF" wi="368" he="126" />公式10g(x)其一阶导数的计算参见公式11:<img file="FDA0000703568090000055.GIF" wi="438" he="128" />公式111.1.1.7计算控制参数(1100)K<sub>p</sub>(t)、K<sub>i</sub>(t)、K<sub>d</sub>(t):控制参数(1100)K<sub>p</sub>(t)、K<sub>i</sub>(t)、K<sub>d</sub>(t)的计算参见公式12:<img file="FDA0000703568090000056.GIF" wi="335" he="225" />公式12其中,K<sub>p</sub>(t)、K<sub>i</sub>(t)、K<sub>d</sub>(t)为输出层神经元的输入分别对应为经典比例微分积分控制方法的控制参数(1100)K<sub>C</sub>(t);1.1.1.8控制参数K<sub>C</sub>(t)计算结束;1.1.2修正在线整定算法参数W(t):小波神经网络在线PID整定方法中的在线整定算法中的在线整定算法参数W(t)包括以下四个参数:输入层第i个神经元与隐含层第j个神经元之间的加权权值<img file="FDA0000703568090000057.GIF" wi="159" he="72" />隐含层第j个神经元与输出层第k个神经元之间的加权权值<img file="FDA0000703568090000058.GIF" wi="157" he="72" />小波函数尺度变换参数a<sub>j</sub>(t)、b<sub>j</sub>(t);即<img file="FDA0000703568090000059.GIF" wi="796" he="80" />步骤1.1.2.1计算误差和性能指标:误差error(t)的计算参见公式13:error(t)=y<sub>out</sub>(t‑1)‑r<sub>in</sub>(t)         公式13性能指标E(t)的计算参见公式14:<img file="FDA0000703568090000061.GIF" wi="878" he="118" />公式14步骤1.1.2.2采用梯度下降法对神经网络隐含层和输出层之间的权值系数<img file="FDA0000703568090000062.GIF" wi="81" he="82" />进行调整:隐含层和输出层之间的权值系数<img file="FDA0000703568090000063.GIF" wi="139" he="81" />的修正量<img file="FDA0000703568090000078.GIF" wi="174" he="90" />的计算参见公式15:<img file="FDA0000703568090000065.GIF" wi="800" he="142" />公式15公式15中,<img file="FDA0000703568090000066.GIF" wi="163" he="139" />的计算公式参见公式16:<img file="FDA0000703568090000067.GIF" wi="1244" he="159" />公式16公式16中,<img file="FDA0000703568090000068.GIF" wi="172" he="113" />的计算参见公式17:<img file="FDA0000703568090000069.GIF" wi="838" he="124" />公式17公式16中,由于<img file="FDA00007035680900000610.GIF" wi="182" he="121" />未知,用近似符号函数<img file="FDA00007035680900000611.GIF" wi="323" he="118" />取代,<img file="FDA00007035680900000612.GIF" wi="188" he="118" />的计算参见公式18;<img file="FDA00007035680900000613.GIF" wi="518" he="120" />公式18其中sgn(x)表示x的符号函数值,即如果x>0则sgn(x)=1,如果x=0则sgn(x)=0如果x<0则sgn(x)=‑1;公式16中,<img file="FDA00007035680900000614.GIF" wi="171" he="131" />的计算参见公式19:<img file="FDA0000703568090000071.GIF" wi="1063" he="409" />公式19公式16中,<img file="FDA0000703568090000072.GIF" wi="215" he="154" />的计算参见公式20:<img file="FDA0000703568090000073.GIF" wi="514" he="163" />公式20公式16中,<img file="FDA0000703568090000074.GIF" wi="216" he="167" />的计算参见公式21:<img file="FDA0000703568090000075.GIF" wi="400" he="168" />公式21综上所述,<img file="FDA0000703568090000076.GIF" wi="160" he="150" />的计算公式可以表示为公式22:<img file="FDA0000703568090000077.GIF" wi="1298" he="142" />公式22综上所述,<img file="2012103653142100001FDA0000703568090000078.GIF" wi="174" he="90" />的计算公式可以表示为公式23:<img file="FDA0000703568090000079.GIF" wi="971" he="90" />公式23其中,<img file="FDA00007035680900000710.GIF" wi="92" he="86" />的计算参见公式24:<img file="FDA00007035680900000711.GIF" wi="1202" he="280" />公式241.1.2.3采用梯度下降法对神经网络输入层和隐含层之间的权值系数<img file="FDA00007035680900000712.GIF" wi="88" he="90" />进行调整:计算输入层和隐含层之间的权值系数<img file="FDA00007035680900000716.GIF" wi="134" he="93" />的修正值<img file="FDA00007035680900000714.GIF" wi="186" he="93" />见公式25:<img file="FDA00007035680900000715.GIF" wi="812" he="153" />公式25公式25中,<img file="FDA0000703568090000081.GIF" wi="166" he="152" />的计算参见公式26:<img file="FDA0000703568090000082.GIF" wi="1252" he="472" />公式26公式26中,<img file="FDA0000703568090000083.GIF" wi="217" he="157" />的计算参见公式27:<img file="FDA0000703568090000084.GIF" wi="407" he="155" />公式27公式26中,<img file="FDA0000703568090000085.GIF" wi="214" he="172" />的计算参见公式28:<img file="FDA0000703568090000086.GIF" wi="823" he="163" />公式28公式26中,<img file="FDA0000703568090000087.GIF" wi="166" he="166" />的计算参见公式29:<img file="FDA0000703568090000088.GIF" wi="405" he="174" />公式29综上所述,<img file="FDA0000703568090000089.GIF" wi="174" he="150" />的计算公式可以表示为公式30:<img file="FDA00007035680900000810.GIF" wi="1345" he="175" />公式30公式30中的<img file="FDA00007035680900000811.GIF" wi="130" he="93" />在公式24中给出;1.1.2.4计算隐含层神经元的活化函数尺度变换参数a<sub>j</sub>(t)的修正值Δa<sub>j</sub>(t):隐含层神经元的活化函数尺度变换参数a<sub>j</sub>(t)的修正值Δa<sub>j</sub>(t)的计算公式可以表示为公式31:<img file="FDA0000703568090000091.GIF" wi="671" he="125" />公式31公式31中,<img file="FDA0000703568090000092.GIF" wi="136" he="126" />的计算参见公式32:<img file="FDA0000703568090000093.GIF" wi="1390" he="162" />公式32公式32中,<img file="FDA0000703568090000094.GIF" wi="855" he="151" />的计算参见公式24:公式32中,<img file="FDA0000703568090000095.GIF" wi="212" he="163" />的计算参见公式27:公式32中,<img file="FDA0000703568090000096.GIF" wi="171" he="151" />的计算参见公式33:<img file="FDA0000703568090000097.GIF" wi="1100" he="150" />公式33综上所述,<img file="FDA0000703568090000098.GIF" wi="138" he="122" />的计算公式可以表示为公式34:<img file="FDA0000703568090000099.GIF" wi="1534" he="166" />公式341.1.2.5计算隐含层神经元的活化函数尺度变换参数b<sub>j</sub>(t)的修正值Δb<sub>j</sub>(t):隐含层神经元的活化函数尺度变换参数b<sub>j</sub>(t)的修正值Δb<sub>j</sub>(t)的计算公式可以表示为公式35:<img file="FDA00007035680900000910.GIF" wi="665" he="124" />公式35公式35中,<img file="FDA00007035680900000911.GIF" wi="134" he="121" />的计算参见公式36:<img file="FDA00007035680900000912.GIF" wi="1378" he="153" />公式36公式35中,<img file="FDA00007035680900000913.GIF" wi="858" he="140" />的计算参见公式24:公式35中,<img file="FDA00007035680900000914.GIF" wi="212" he="153" />的计算参见公式27:公式35中,<img file="FDA0000703568090000101.GIF" wi="166" he="141" />的计算参见公式37:<img file="FDA0000703568090000102.GIF" wi="802" he="134" />公式37综上所述,<img file="FDA0000703568090000103.GIF" wi="129" he="119" />的计算公式可以表示为公式38:<img file="FDA0000703568090000104.GIF" wi="1162" he="148" />公式381.1.2.6修正在线整定算法参数W(t)到W(t+1):当前第t次计算使用到的在线整定算法参数为:<img file="FDA0000703568090000105.GIF" wi="644" he="81" /><img file="FDA0000703568090000106.GIF" wi="138" he="61" />修正后的结果为第t+1次计算将使用到的在线整定算法参数<img file="FDA0000703568090000107.GIF" wi="230" he="56" /><img file="FDA0000703568090000108.GIF" wi="932" he="71" />隐含层第j个神经元与输出层第k个神经元之间的加权权值<img file="FDA00007035680900001012.GIF" wi="138" he="76" />的修正计算参见公式39:<img file="FDA0000703568090000109.GIF" wi="619" he="71" />公式39输入层第i个神经元与隐含层第j个神经元之间的加权权值<img file="FDA00007035680900001010.GIF" wi="140" he="82" />的修正计算参见公式40:<img file="FDA00007035680900001011.GIF" wi="619" he="72" />公式40隐含层神经元的活化函数尺度变换参数a<sub>j</sub>(t)的修正计算参见公式41:a<sub>j</sub>(t+1)=a<sub>j</sub>(t)+Δa<sub>j</sub>(t)       公式41隐含层神经元的活化函数尺度变换参数b<sub>j</sub>(t)的修正计算参见公式42:b<sub>j</sub>(t+1)=b<sub>j</sub>(t)+Δb<sub>j</sub>(t)        公式42步骤1.2计算控制量u(t):该步骤采用控制算法(201),计算得出控制量(1200)u(t);步骤1.3采集或计算系统输出y<sub>system</sub>(t):该步骤计算得到控制结果(1300)y<sub>system</sub>(t)或者直接采集得到控制结果 (1300)y<sub>system</sub>(t):步骤1.4计算预测结果y<sub>out</sub>(t):该步骤采用在线预测算法(401),计算得出预测结果(1400)y<sub>out</sub>(t);步骤1.5判断算法是否结束:算法尚未结束的情况:如果T=0,或者如果T≠0且t<T,则t=t+1,跳转到步骤1.1,至此完成了第t次计算;算法结束的情况:如果T≠0且t≥T,至此完成了全部T次计算。
地址 100124 北京市朝阳区平乐园100号
您可能感兴趣的专利