基于GA的PID参数调整(9)

2020-02-21 23:19

上海大学毕业设计(论文)

格式:newchrix=sus(fitnv,nsel) 描述:

sus选择nsel中的个体为了根据它们的适应值重新产生,fitnv在当前种群中。

newchrix=rws(fitnv,nsel)从种群中使用随机全局采样来选择nsel个体。Fitnv是一个包含着种群中每一个个体的表示方法的列向量。用函数ranking或者scaling取给每一个个体分配适应值也可以达到上面的目的。返回值newchrix是一个用来繁殖而被选择的个体的索引。在它们被选择的规则下,被选择的个体可以通过评价chrom(newchrix,:)而被恢复。 7.recint

功能:中间重组。 格式:

newchrom=recint(oldchrom) 描述:

recint操作是对当前种群中的个体进行中间重组,oldchrom,之后在一个新的种群中返回newchrom,chrom中的每一行和newchrom与一个个体相对应。recint只适用于实值变量的种群。染色体成对进行交叉,奇数列和下一个偶数列进行交叉,如果旧的染色体矩阵中的列是奇数的话,那么最后一列将不进行交叉操作,而把旧的染色体中的最后一列加在新染色体中。 8.Xovdp 功能:双点交叉。 格式:

newchrom=xovsp(oldchrom,xovr) 描述:

xovdp操作是在当前种群中的一对个体上进行双点交叉,oldchrom,根据交叉的可能性,xovr返回一个变异之后的新的种群。Newchrom,oldchrom包含了当前种群中的染色体,每一行与一个个体相对应。染色体的各种表示方法都可以应用。

41

上海大学毕业设计(论文)

xovr是指定了交叉概率的参数。一般取0.7交配是由规则决定的:奇数行和下一个偶数行,如果矩阵是奇数行的话,最后一行就不能交配。因此种群组织成临近的需要交配的一对。

xovdp是一个低位交叉函数通常也把它叫做recombin。 9、mutate

功能:离散变异操作。 格式:

newchrom=mutate(mut_f,oldchrom,fielddr) newchrom=mutate(mut_f,oldchrom,fielddr,mutopt) newchrom=mutate(mut_f,oldchrom,fielddr,mutopt,subpop) 描述:

mutate是对当前种群的个体进行变异操作。之后返回一个新的个体。旧种群和新种 群的每一列都对应一个个体。

mut_f是低位变异函数的名称。 fielddr是变量的上下限。 mutopt是变异概率。

subpop是一个随机参数,表示的是旧染色体中子代的个数。 10、reins

功能:在种群中重新插入后代。 格式:

chrom=reins(chrom,selch) chrom=reins(chrom,selch,subpop)

chrom=reins(chrom,selch,subpop,insopt,objvch)

[chrom,objvch]=reins(chrom,selch,subpop,insopt,objvch,objvsel) 描述:

这个函数是往当前种群中重新插入后代,后代被包含在矩阵selch,父代被包含在矩阵chrom中。Selch和chrom中的每一行都对应了一个个体。

Subpop是在chrom和selch中指定后代数目的函数。如果subpop被忽略或

42

上海大学毕业设计(论文)

者nan,则subpop=1。chrom和selch中所有的后代必须由相同的大小。

insopt是一个任意的向量,两个参数中的最大值。 insopt(1):数值指定用后代代替父代的选择方法

0-统一选择,统一用任意的后代来替换父代

1-适应度为基础的选择,后代替换最小适应度的父代

如果忽略或者nan,则insopt(1)=0。

insopt(2):数值包含了在[0 1]之间当作一个片断的每一个子代后代的重新插入率。

objvch是一个包含了chrom中的个体目标函数值的行向量,objvch需要以适应度为基础重新插入。

objvsel是一个包含了selch中的个体目标函数值的行向量,objvsel是必须的如果后代的数目大于将要被重新插入的后代的数目,在这种情况下,将根据后代的适应度来选择将要被重新插入的后代。

如果objvch是一个输出参数,objvch和objvsel组要输入参数。目标函数值会根据插入的后代被复制,保留整个种群的经过验算的目标函数值。

基于Matlab的遗传算法工具箱提供了一个标准的、可扩展的、简单的算法,其利用Matlab的强大的函数运算能力,使使用者可以避免维护遗传算法种群和染色体的数据结构的繁重编程工作,将精力集中在遗传算法的改进和具体问题的应用中去。

4.4 小结

遗传算法工具箱使用MATLAB矩阵函数为实现广泛领域的遗传算法建立了一套通用工具,这个遗传算法工具是用M文件写成的命令行形式的函数,是完成遗传算法大部分重要功能的程序的集合。相关人员即使对遗传算法认知不深,也可通过这些命令行函数,根据实际分析的需要,编写出实现遗传算法的MATLAB程序,大大地拓展了遗传算法的应用。本章详细阐述了遗传算法工具箱结构及常用函数,为下章做仿真和编程做了充足的准备。

43

上海大学毕业设计(论文)

第五章 基于GA算法参数调整的PID控制系统

5.1引言

基于前几章的介绍,可以知道PID控制虽然应用广泛,但常规的PID却越来越不适应工业生产的需要。然而,智能控制与PID控制相结合的新型PID控制却有巨大的潜力。基于GA算法参数调整的PID控制是新型PID控制的重要内容。GA算法是基于自然选择和遗传变异等生物机制的全局并行随机搜索算法。与其他一些优化算法相比,它具有不需要辅助信息、并行概率搜索、简单易行、鲁棒性强以及高效等特点。运用GA算法对PID参数进行优化,具有很好的效果,本章将对这种新型的PID控制进行探讨。

5.2基于GA算法参数调整的PID控制系统的结构

基于GA算法参数调整的PID控制系统主要由三大模块构成:GA算法模块、PID控制器和被控对象模型。图5.1为基于GA算法参数调整的PID控制系统的结构图。

三大模块中,GA算法模块是关键,其作用有三点:

1)产生一个关于PID三参数的种群,其中包括多组参数;

44

上海大学毕业设计(论文)

2)根据期望输出与被控对象输出之间的偏差等特征量,计算每一组参数对应的适应度值;

3)若没有达到GA算法的终止条件,则通过遗传操作产生新种群,即更新PID控制器的参数。

由上可知,基于GA算法参数调整的PID控制系统结构并不复。,其实,它们的工作也很容易理解,下面给出此类系统的具体工作流程,如图5.2所示。

在参数调整过程中,首先,GA算法模块随机产生一个初始种群(初始种群

也可以由经验给出);随后,GA算法模块将种群中的每组参数依次送入PID控制器,从而得到每组参数的操纵输入;然后,操纵输入作用于被控对象模型,得到系统的输出;最后,GA算法模块根据系统期望输出与实际输出之间的关系

45


基于GA的PID参数调整(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:动物的行为 习题(含答案)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: