APP下载

基于单级倒立摆的遗传神经网络控制研究*

2022-05-24

机械工程与自动化 2022年2期
关键词:适应度交叉遗传算法

周 勇

(荆州学院 信息工程学院,湖北 荆州 434020)

0 引言

倒立摆是一个高阶次、多变量、非线性、自然不稳定的快速系统,其控制目的是实现各摆杆之间的稳定平衡,它是检验各种新的控制理论和方法的理想模型。RBF(径向基函数)神经网络是具有单隐层的一种三层前向神经网络,其网络结构简单、学习速度快、逼近能力强,在系统辨识、模式识别等领域得到了广泛应用。RBF神经网络在学习过程中,其性能主要取决于隐层神经元基函数中心、宽度和隐层节点到输出层之间连接权值的整定,许多学者对其优化整定方法进行了研究,如Bishop[1]提出的期望最大法、Chen等[2]提出的正交最小二乘法、基于敏感度分析和混合优化策略的RBF神经网络训练方法、粒子群算法[3]、蚁群算法和遗传算法等优化算法。其中遗传算法是一种高度并行的随机优化方法,具有很好的全局搜索能力和鲁棒性,非常适用于RBF神经网络参数的优化,也能较好地应用于RBF参数优化中[4]。但是,传统遗传算法在RBF神经网络参数优化时,由于其随机搜索的特点,常容易产生早熟(局部收敛),存在进化速度慢和局部收敛等问题。本文设计了一种基于改进遗传算法的RBF神经网络控制器,并结合单级倒立摆系统进行仿真实验,以验证其有效性。

1 单级倒立摆模型

单级(一级)倒立摆系统在忽略空气阻力和各种摩擦之后,可将其抽象成由一个小车和匀质杆组成,其系统结构如图1所示,参数如表1所示。

图1 单级倒立摆系统

表1 单级倒立摆参数

倒立摆系统建模主要有拉格朗日和牛顿-欧拉两种方法。由于单级倒立摆系统模型比较简单,故本文采用牛顿-欧拉方法建模。

对小车水平方向所受的合力以及摆杆水平方向的受力进行分析,系统线性化后的动力学方程组为:

(1)

其中:x为小车相对初始位置的位移;θ为摆杆与垂直方向的夹角;u为系统输入。

(2)

其中:F(t)为输入外力;Y为系统输出;A为系统的状态矩阵;B为系统的控制矩阵;C为系统的输出矩阵。

取平衡位置,进行泰勒级数展开,线性化处理后得到的系统状态方程为:

(3)

(4)

2 改进遗传算法优化RBF神经网络的实现

2.1 RBF神经网络

RBF神经网络一般由三层构成,即输入层、隐含层和输出层,如图2所示。RBF神经网络的学习包括两部分:一是高斯函数中心和宽度的确定;另一个是输出层权值的确定。给定网络输入X=(x1,x2,…,xn)T为n维向量,RBF神经网络的输入层到隐含层实现x→h(x)的非线性映射,即隐含层的变换函数h(x)为一个径向基函数,其径向基函数最常采用高斯函数,则RBF神经网络隐含层第j个节点的输出为:

(5)

其中:cj和bj分别为第j个隐含层节点的高斯函数中心和基宽参数,bj为大于零的数,它决定了该基函数曲线围绕中心点的宽度;q为隐含层节点的个数。

图2 RBF神经网络结构

假设wj为第j个隐含层节点到输出层的加权系数(权值),则RBF神经网络的隐含层到输出层实现h(x)→yk的线性映射,即:

(6)

其中:p为输出层的节点数;yk为第k个节点的输出。

RBF神经网络的学习过程是将采集到的数据样本对神经网络进行训练,不断调整基函数中心c、宽度b和权值w使网络总均方误差为最小,即对于N个训练样本,RBF神经网络的希望输出为d,则总均方误差函数为:

(7)

其中:dlk为第k个输出节点在第l个样本的希望输出;ylk为第k个输出节点在第l个样本的实际输出。

2.2 基于改进遗传算法的RBF神经网络参数优化

遗传算法(Genetic Algorithm,GA)是美国Holland教授于1975年首先提出来的一种借鉴生物进化理论和门德尔基因遗传理论的高度并行、随机的优化方法[5]。遗传算法虽然应用广泛,但在解决复杂问题时由于其自身的随机搜索特点也带来了收敛速度慢和算法局部收敛(早熟)等问题[6]。结合文献[7]和文献[8],本文引入一种改进的遗传算法,使算法的适应度值、交叉率Pc和变异率Pm分别按平均适应度、Sigmoid函数和进化代数变化,增加算法种群的多样性,提高算法的全局搜索能力和收敛速度。

改进遗传算法实现步骤如下:

(1) 参数编码及初始化群体生成。由式(5)和式(6)可知,优化参数分别为c、b和w。根据工程实际,优化参数的初始范围均设为[-2,2],采用实数编码,进化代数为G,种群规模为n,并根据种群规模随机产生初始种群。

(2) 解码,计算种群个体适应度,确定适应度函数F,评价是否满足收敛条件。个体适应度反映了个体在不同环境下的生存能力,为防止种群中个体适应度过于偏大或偏小导致算法陷入局部收敛,改进遗传算法采用自适应个体适应度值改善算法性能。改进的个体适应度值调节公式为:

(8)

改进遗传算法的适应度函数为f=1/J,J为均方误差函数E,即f=1/E。

(3) 如果满足要求(精度10-5或进化代数T),输出结果;否则继续步骤(4)。

(4) 设计遗传算子。本设计采用轮盘赌选择、算术交叉和均匀变异的遗传算子。遗传算法中,交叉和变异算子是算法进化的核心,其交叉率和变异率是算法收敛和稳定的关键参数。为了防止遗传算法的早熟和收敛较差的问题出现,采用改进的自适应交叉概率和变异概率,将S曲线变化模式和进化代数用于交叉概率和变异概率,使个体的变异和交叉分别受进化代数和适应度的约束。改进的交叉率和变异率自适应调节公式为:

(9)

(10)

其中:fmax为种群中最大的个体适应度值;f′为要交叉的两个个体中较大的适应度值;k1为曲线平滑参数,用来调节曲线的光滑程度;Pc max、Pc min分别为交叉率的最大和最小值;Gmax为最大进化代数;Pm1、Pm2和Pm3均为正实数。

(5) 根据favg、个体适应度和进化代数,结合自适应调节公式进行交叉和变异操作。

(6) 返回步骤(2),如达到指定要求,算法结束;否则继续执行操作。

3 仿真实验及结果分析

为研究单级倒立摆改进遗传算法RBF神经网络控制系统性能,本文分别用线性二次型控制器(LQR)和改进遗传RBF神经网络对单级倒立摆系统进行仿真分析。

3.1 算法的参数选择

3.2 仿真结果分析

搭建Simulink模块,结合神经网络工具箱,将改进遗传算法得到的RBF神经网络基函数中心、宽度和权值加入到RBF神经网络模块中,与单级倒立摆系统相结合进行仿真,绘制曲线,并与LQR控制器设计的参数矩阵进行对比,其阶跃响应曲线如图3和图4所示。从仿真结果可知:LQR方法在前2.7 s内,倒立摆摆杆在初始位置0 rad发生较大幅度的振荡,2.7 s后达到稳定;改进遗传算法优化后的RBF神经网络控制,摆杆的稳定时间为2.5 s,但超调更小,其超调和稳态误差都小于LQR方法,稳定性能得到了较大的提高。

图3 两种控制方法的小车位置响应曲线

图4 两种控制方法的摆杆角度响应曲线

4 结语

本文依据单级倒立摆的数学模型和RBF神经网络理论,在对一般RBF神经网络进行分析的基础上设计了基于改进遗传算法的RBF神经网络控制器,利用改进遗传算法实现高斯函数的中心、基宽参数和连接权值的优化选择。通过仿真分析,基于单级倒立摆的改进遗传RBF神经网络控制系统能更有效地减小系统超调和稳定时间,较好地提高了单级倒立摆性能。

猜你喜欢

适应度交叉遗传算法
改进的自适应复制、交叉和突变遗传算法
菌类蔬菜交叉种植一地双收
基于遗传算法的高精度事故重建与损伤分析
“六法”巧解分式方程
基于遗传算法的智能交通灯控制研究
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
启发式搜索算法进行乐曲编辑的基本原理分析
连数
连一连
基于人群搜索算法的上市公司的Z—Score模型财务预警研究