遗传算法优化模糊控制规则

                    单位:东北大学   作者:王文举          

     本文将系统且贯彻分析实现模糊智能控制算法,分别对比分析模糊控制(fuzzy),模糊PID控制(fuzzy_PID),遗传优化模糊控制(GA_fuzzy_PID)三种控制器的性能指标。采用阶跃信号作为输入信号,设计伺服跟踪控制系统,观察响应曲线的变化。

1.模糊控制器

     模糊控制算法属于一种智能控制算法,具有模糊性,非定量。“模糊”是间接地反映定义变量属于某个集合的程度。模糊控制采用模糊数学理论来模仿人脑的模糊推理和决策过程,然后给出准确控制量。模糊控制不需要建立被控对象的数学模型,而且具有一定的鲁棒性,也可以解决非线性系统动态控制问题。
     文中更好的分析响应曲线控制效果的好坏,假定被控对象传递函数形式如下:
G ( s ) = α s + c o n s t a n t s 2 + γ s + c o n s t a n t G(s)=\frac{\alpha s+constant}{s^2+\gamma s+constant} G(s)=s2+γs+constantαs+constant设置好仿真步长T,即系统抽样时间。采用双线性离散逼近法进行离散化处理,在MATLAB中SIMLINK工具箱组件模糊控制所需的模块如下:遗传算法优化模糊控制规则_第1张图片模糊控制器是两输入一输出的形式,通常传感器传来的定值定量信号,不能直接作用于模糊控制器,需要模糊化接口进行处理。 K e K_e Ke K c K_c Kc为量化因子, K u K_u Ku为比例因子。根据经验,两输入的论域分别设置为【-3,3】,模糊控制规则表经验选取,控制效果如下:
遗传算法优化模糊控制规则_第2张图片
     从上图仿真结果分析,采用模糊控制算法,输出信号能大体上跟随输入信号,没有震荡现象,具有良好的稳定性。但没有达到最佳的理想效果,系统存在一定的稳态误差。

2.模糊PID控制器

     模糊PID 控制器根据误差(e)、误差变化率(ec)作为输入,采用模糊推理进行PID参数在线整定,推理出PID控制器的参数修正量分别为 Δ K p \Delta K_p ΔKp Δ K i \Delta K_i ΔKi Δ K d \Delta K_d ΔKd。 系统结构如下。
遗传算法优化模糊控制规则_第3张图片
同样根据经验法,选择模糊控制规则,分别对比PID控制、模糊控制、模糊PID控制的优劣性,模糊PID控制从整体上表现较好。
遗传算法优化模糊控制规则_第4张图片

3.遗传优化模糊控制规则

     上述模糊PID控制具有响应时间快,消除稳态偏差,但仍然具有一定的超调量。故采用经验法选取模糊控制规则具有一定的局限性。采用遗传优化算法,能更好的得到全局最优解。遗传算法流程如下:
遗传算法优化模糊控制规则_第5张图片
(1) 编码
     模糊PID控制器是采用两输入三输出的形式,每个输入输出均与7个模糊子集。用整数7、6、5、4、3、2、1分别代替正大(PB) 、正中(PM) 、正小(PS) 、零(ZO) 、负小(NS) 、负中(NM) 、负大(NB)模糊子集。模糊控制规则表转化二位矩阵,将二维矩阵拉直排列,就形成染色体个体。染色体的基因长度为7x7x3=147 。
(2) 适值函数标定
    目标函数选用ITAE性能指标,它可以综合评价控制系统的快速性,准确性和稳定性等静态和动态性能。
J ( I T A E ) = ∫ 1 ∞ t ∣ ∣ e ( t ) ∣ ∣ d t J(ITAE)=\int_1^\infty t ||e(t)|| dt J(ITAE)=1te(t)dt
(3) 选择、交叉、变异、逆转
    文中在赌轮盘法的基础上进行改进,采用精英策略,从旧种群中选出适应度较高的少数个体,直接复制到子代。这样可以保证子代的个体永远比父代的个体好。
    交叉操作采用凸组合交叉,可以有效的避免有简单操作产生不可行解。亲代样本:
P 1 : X = ( x 1 , x 2 , . . . . . . . . x n ) P1:X =(x_1,x_2,........x_n) P1:X=(x1,x2,........xn) P 2 : Y = ( y 1 , y 2 , . . . . . . . . y n ) P2:Y =(y_1,y_2,........y_n) P2:Y=(y1,y2,........yn)交叉后: Z 1 = α X + ( 1 − α ) Y Z1=\alpha X +(1-\alpha) Y Z1=αX+(1α)Y Z 2 = α Y + ( 1 − α ) X Z2=\alpha Y +(1-\alpha) X Z2=αY+(1α)X     固定变异率 =0.05,当满足变异条件时,随机对第i个体,第j个基因进行变异,其操作运算如下。
遗传算法优化模糊控制规则_第6张图片
(4)结果分析
    迭代过程中目标函数ITAE随迭代次数更替如下。
遗传算法优化模糊控制规则_第7张图片对遗传算法优化模糊规则和人为经验选取模糊规则进行比对,其结果如下。可以看出遗传优化的模糊PID有明显的性能改善。
遗传算法优化模糊控制规则_第8张图片

    (代码为个人成果,不在这里展示,将会上传至Github.)

代码链接: https://github.com/WANGWENJUS/GA_fuzzyPID.

你可能感兴趣的:(东北大学)