发明名称 一种PID控制器参数优化方法
摘要 本发明公开了一种PID控制器参数优化方法,属于自动控制技术领域。本发明利用一种改进的粒子群优化算法—梯度修正粒子群优化算法搜索最优的PID控制器参数,并进一步将该PID控制器参数优化方法应用于无人机鲁棒PID控制器。所述梯度修正粒子群优化算法的基本思想是在粒子群优化过程中,利用约束条件中的梯度信息对不满足约束条件的解进行修正并将其拉回到满足约束条件的解空间中。利用本发明PID控制器参数优化方法对无人机PID控制器进行优化,所得到的无人机PID控制器能够在满足传统时域指标的同时也能满足多变量鲁棒性指标。
申请公布号 CN103645636A 申请公布日期 2014.03.19
申请号 CN201310606746.2 申请日期 2013.11.25
申请人 南京航空航天大学 发明人 张民;应巧萍
分类号 G05B13/04(2006.01)I 主分类号 G05B13/04(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 杨楠
主权项 1.一种PID控制器参数优化方法,其特征在于,以每一组可行的PID控制参数作为一个粒子,利用梯度修正粒子群优化算法搜索出最优的PID控制器参数;所述梯度修正粒子群优化算法具体包括以下步骤:步骤A、确定粒子种群数量N和优化最大代数k<sub>max</sub>;步骤B、在粒子的取值范围内初始化粒子种群每一个粒子的位置和速度;步骤C、判断每个粒子的位置是否违反预设的不等式约束条件,对于违反不等式约束条件的粒子,则使用梯度修正方法将违反不等式约束条件的粒子的位置进行修正,使修正后的粒子的位置满足不等式约束条件;对于任意一个位置为x的违反了不等式约束条件的粒子,按照以下梯度修正方法修正其位置:步骤1、以所要修正的粒子位置x作为初始值x<sup>0</sup>;步骤2、按下式修正所述粒子的位置:<![CDATA[<math><mrow><msup><mi>x</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msup><mo>=</mo><msup><mi>x</mi><mi>t</mi></msup><mo>+</mo><msup><mrow><mo>(</mo><msub><mo>&dtri;</mo><mi>x</mi></msub><msup><mi>v</mi><mi>t</mi></msup><mo>)</mo></mrow><mo>+</mo></msup><mo>&times;</mo><mi>&Delta;</mi><msup><mi>v</mi><mi>t</mi></msup></mrow></math>]]></maths>式中,x<sup>t</sup>、x<sup>t+1</sup>分别表示第t次、第t+1次修正后的粒子位置,t=0,1,2,3…;Δv<sup>t</sup>=Min{0,-g(x<sup>t</sup>)}为第t次修正后粒子位置的约束违反变量,g(·)表示括号中粒子位置的不等式约束条件函数值;<img file="FDA0000421959020000013.GIF" wi="131" he="61" />表示第t次修正后粒子位置的约束函数变化率变量<img file="FDA0000421959020000014.GIF" wi="80" he="58" />的伪逆,<![CDATA[<math><mrow><msub><mo>&dtri;</mo><mi>x</mi></msub><msup><mi>v</mi><mi>t</mi></msup><mo>=</mo><mfrac><mn>1</mn><mi>e</mi></mfrac><mo>&CenterDot;</mo><mi>g</mi><mrow><mo>(</mo><msup><mi>x</mi><mi>t</mi></msup><mo>+</mo><mi>e</mi><mo>)</mo></mrow><mo>-</mo><mi>g</mi><mrow><mo>(</mo><msup><mi>x</mi><mi>t</mi></msup><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>e为预设的扰动小量;步骤3、判断x<sup>t+1</sup>是否违反所述不等式约束条件,如是,则转至步骤2;如否,则以当前的x<sup>t+1</sup>作为最终的粒子位置修正值并退出;步骤D、计算每一个粒子的性能指标函数值;步骤E、计算每个粒子的个体最优值p<sub>i</sub>和当前粒子种群最优值p<sub>g</sub>,如粒子当前值优于p<sub>i</sub>,则将粒子当前值设置为p<sub>i</sub>,如全部粒子当前值中有优于p<sub>g</sub>的粒子,则将该粒子当前值设置为p<sub>g</sub>;步骤F、判断当前最优值是否满足性能指标停止条件或达到最大优化代数,如满足二者之一即停止算法并转到步骤H;步骤G、更新每个粒子的位置并转到步骤C;.步骤H、输出最优粒子的位置和对应的性能指标函数值。
地址 210016 江苏省南京市御道街29号