| 基于非线性控制系统优化的遗传算法研究 |
| 类别:传感与控制 |
| 作者:北京航空航天大学电子工程系(100083)
甘俊英
广东省江门市五邑大学(529020) 张有为 来源:《电子技术应用》
基于非线性控制系统优化的遗传算法研究 摘 要: 针对非线性控制系统参数优化问题,结合非线性控制系统理论、最优化理论及遗传算法,提出了一种新的仿真优化方法,该方法利用遗传算法来求解非线性控制系统参数优化问题。 关键词: 遗传算法 参数优化方法 非线性控制系统 控制系统参数优化方法已有许多文献作了论述 遗传算法是最新兴起的智能计算技术,是一种借鉴生物界自然选择和自然遗传机制的高度并行、随机自适应搜索算法,具有能快速有效地搜索复杂、高度非线性的多维空间的特点,通过反复迭代,最终能够找到全局最优。由于遗传算法是在解空间的多个区域内进行搜索,能以较大的概率跳出局部最优,因此可找到整体最优解。仿真结果表明,该方法是一种有效的方法。它主要用于处理最优化问题和机器学习。隐含并行性和有效利用全局信息是遗传算法的两大显著特点,前者使遗传算法只须检测少量的结构就能反映搜索空间的大量区域;后者使遗传算法具有稳健性。遗传算法尤其适于处理传统搜索方法解决不了的复杂的非线性问题。 本文提出的仿真优化方法采用了实数编码方案,确定了适应值函数的度量,选择了群体规模、代数、遗传算子及其概率参数、停止准则等控制参数初始值,并给出了仿真实例。结果表明,该方法是一种有效的非线性控制系统参数优化方法。 1 问题的描述 1.1 函数优化问题的描述 函数优化问题可以描述为: 这里 定义1 对最优化问题(1)式,设x·∈S,若存在δ>0,使得当x∈S∩{x:‖x-x·‖<δ}时有 则称x是f在S上的一个局部最优点,解f(x·)称为一个局部最优值。若(3)式中的严格不等式成立,则x·和f(x·)分别称为严格局部最优点和严格局部最优值。 定义2 对最优化问题(1)式,设x·∈S,若存在δ>0,使得对任意x·∈S都有 则称x·是f在S上的一个全局极大点或整体最优点,f(x·)称为整体最优值。若(4)式中的严格不等式成立,则x·和f(x·)分别称为严格整体最优点和严格整体最优值。 1.2 遗传算法的描述
遗传算法是从任一初始化的群体出发,通过随机选择、杂交和变异等遗传操作,使群体一代一代地进化到搜索空间中越来越好的区域,直至抵达最优解点,即高适应值点。该算法可表述为:
表示适应值越大的个体进入子代且机会越多,执行选择的概率就越高。 遗传操作的杂交可描述为: 如果随机实数小于杂交率 遗传操作的变异可描述为 如果随机实数小于变异率 2 基于非线性控制系统优化的遗传算法
非线性控制系统参数优化问题属于非线性优化问题。对于非线性优化问题,只有在函数性质比较好(可微、驻点能解析地计算等)的情况下,才能获得满意的结果。对于复杂的函数优化问题,一般只能采用基于迭代原理的数值解法,但这些解法通常难以找到全局最优解,而且仍然要对求解函数的性质作诸多的限制。而遗传算法在解决这类问题时通常能发挥它的优势。 当遗传算法用于求解非线性控制系统参数优化问题时,需要解决两个问题:非线性控制系统的模型仿真和遗传算法的设计。两者联系的纽带是目标函数的获取以及目标函数转换成适应值函数。在非线性控制系统参数优化方法中,目标函数可采用多种定义,如误差平方积分、时间乘误差平方积分、误差绝对值积分及加权二次型性能指标等,它取决于非线性控制系统的误差。非线性控制系统参数优化的前提是希望产生的误差最小,求解目标很自然地被表示成某个目标函数f(x)的极小化,而不是某个适应值函数F(x)的极大化。因此,常常需要通过一次或多次变换把目标函数f(x)转化为适应值函数F(x)。目前经常用到的适应值函数变换方法有:线性比例变换、幂比例变换、指数比例变换及引入某一比例参数等。一旦获得了适应值函数,即可进行遗传操作,所以,非线性控制系统的模型仿真是不能独立于遗传算法的设计的,两者应统一起来考虑。其程序流程图如图1所示。 首先随机生成一初始群体,并确定编码方案及遗传算法初始化参数接着对群体中的个体进行译码,该译码值即为非线性控制系统的寻优参数,这样就可对非线性控制系统进行动态仿真,获得误差目标函数再通过一函数变换,目标函数即可转化成适应值函数最后根据适应值的大小,执行选择、杂交和变异等遗传操作,直到满足终止条件为止。 对于非线性控制系统的模型仿真,本文采用的是MATLAB的SIMULINK软件,由于寻优参数是变量,因此对不同的问题要设计不同的S函数,可参阅文献[4][5][6]。对于遗传算法的设计,需要考虑下面几方面的问题 (1)确定编码方案:编码方案的选择对算法的性能、效率等产生很大的影响。遗传算法在求解高维或复杂问题时常常使用实数编码。实数编码表示比较自然,而且较易引入非线性控制系统领域内的知识。搜索空间S上的每个点x可表示为一个n维实向量,其中n表示遗传算法优化参数的个数。 (2)控制参数初始化的确定:选择一个整数M作为群体规模的参数,然后从S上随机地选取M个点x(i,0),i=1…,M,这些点组成初始群体P(0)={x(1,0)…,x(M,0)},。群体规模影响遗传算法的最终性能和效率。群体规模的经验取值一般为M=20~100。
杂交概率是控制杂交算子的应用频率,杂交率越高,群体中串的更新就越快,这样高性能的串被破坏得也就越快;而杂交率过低,搜索可能会停滞不前。杂交率的经验取值一般为 (3)确定适应值函数:适应值用来区分群体中个体的好坏,适应值越大的个体性能越好,反之,适应值越小的个体性能越差。遗传算法正是基于适应值对个体进行选择,以保证适应值好的个体有机会在下一代中产生更多的子个体。 设f(x)为非线性控制系统的目标函数, (4)确定选择策略:优胜劣汰的选择机制使得适应值大的解有较高的存活概率,这是遗传算法与一般搜索算法的主要区别之一。对每个个体x(i,k),其生存概率为: 其中k表示代数,则每个个体的繁殖量为 (5)设计遗传算子:遗传算子包括繁殖算子、杂交算子和变异算子。杂交算子是模拟生物界的有性繁殖,它的引入是遗传算法区别于其它所有优化算法的根本所在,同时也是遗传算法中最重要的部分。变异算子可视为与繁殖算子或杂交算子一起连续发生的操作,故一个给定个体可以在一代内进行繁殖和变异,或进行杂交和变异。 在非线性控制系统参数优化中,由于采用了实数编码方案,设计遗传算子时就应以实数编码方案为前提。在实数编码时,杂交算子有离散杂交和算术杂交两种方式,本文采用离散杂交方式。在实数编码时,变异算子有均匀性变异、正态性变异、非一致性变异、自适应性变异和多级变异几种方式,本文采用均匀性变异算子。 3 仿真实例 设PID调节器的传递函数为: 其中, 从图4可知,误差信号为e(t)=r(t)-y(t),取目标函数为误差平方积分,即
仿真实现时,设PID调节器给定最优化初始值为 从上述仿真结果可以看出,采用遗传算法进行非线性控制系统参数优化时,系统的超调量较低、上升时间较短、调节时间较短,反映了系统的稳定性和快速性都较好。而采用文献[6]所述的常规方法进行优化时,由于系统包含非线性环节,寻优时有时容易陷入局部最优,而且占用CPU时间较长、迭代次数较多,运行速度也就较慢。因此,对于非线性控制系统参数优化问题,要想获得全局最优,宜采用遗传算法来求解。 本文针对非线性控制系统参数优化问题,采用遗传算法来求全局最优解。遗传算法是利用参变量的某种编码,从一个点的群体开始搜索,依据适应值函数信息,无须导数或其它辅助信息,使用概率转移规则,因此能够找到全局最优。而常规优化方法则是采用启发式策略,在单个猜测解的邻域内探寻,即使算法中允许跳到解空间中更远的部分,这些启发式算法也往往容易陷入局部最优。另外,遗传算法的本质并行性使得它非常适合大规模并行计算机。因此,遗传算法在计算机科学的领域内必将展示巨大的潜力。
|
- 气体传感器系统在气..
- 2008-1-9
- 气体传感器系统在气..
- 2008-1-9
- pic16单片机应..
- 2008-1-9
- 控制与监测的线缆位..
- 2007-12-20
- 固态压阻压力传感器..
- 2007-12-13
- 用于控制与监测的线..
- 2007-12-10
- 用CAN/LIN总..
- 2007-11-30
- 基于JGF051A..
- 2007-11-30
- MSP430的卫星..
- 2007-11-22
- 基于MSP430的..
- 2007-11-8
- 气体传感器应用在石..
- 2007-9-7
- 集散控制系统的维护
- 2007-9-7
- 用电容传感器按钮设..
- 2007-8-9
- 自动功率控制
- 2007-8-7
- 基于PC机的通用家..
- 2007-8-7
- 电机控制应用方案
- 2007-8-7
- H型桥式电机驱动器..
- 2007-8-9
- PWM电磁阀/阀驱..
- 2007-8-7
- 微机电系统技术
- 2007-8-9
- 单片DSP实现马达..
- 2007-7-29




(6)确定算法的终止准则:由于遗传算法没有利用目标函数的梯度等信息,所以无法确定个体在解空间的位置,从而无法用传统的方法来判定算法的收敛与否以终止算法。通常是预先规定一个最大代数或算法在连续多少代以后解的适应值没有明显改进时,即终止。
已知一非线性控制系统,由饱和非线性环节、速率限制非线性环节和三阶系统组成,系统参数及其结构框图如图2所示。这是工业控制系统中存在较多的一种典型控制过程,该系统的单位阶跃响应如图3所示。从系统的单位阶跃响应可以看出,这是一不稳定的振荡非线性系统。对这一不稳定的非线性控制系统,通常采用PID调节器进行校正,校正后其结构框图
3.6232,