基于遗传算法的PID控制器参数优化与仿真研究
步骤2、个体评价 根据适应度函数计算种群P(0)各个个体适应度值。 步骤3、选择运算 选择合适的选择算子并作用于种群。 步骤4、交叉运算 选择合适的交叉算子并作用于种群。
步骤5、变异运算 选择合适的变异方法并作用于种群。群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t+1)。
步骤6、终止条件判断 若t?G,则t?t?1,转到步骤2;若.t?G,则以进化过程所得的具有最大适应度的个体作为最优解输出,终止计算。其计算框架如下图所示
开始群体P(t)个体评价选择运算交叉运算变异运算群体P(t+1)是否满足终止条件Y结束N
图4—1 遗传算法的框架
Fig.4-1 The framework of genetic algorithm
4.3 遗传算法的特点和应用
遗传算法是一类可用于复杂系统优化计算的鲁棒搜索算法,具有以下特点:
1) 遗传算法以决策变量的编码作为运算对象,使得我们在优化计算过程中可以借鉴生物学中染色体和基因等概念,可以模仿自然界中生物的遗传和进化等机理,也使得我们方便
20
辽宁工程技术大学毕业设计(论文)
使用遗传操作算子。
2) 遗传算法直接以目标函数数值作为搜索信息。只需要适应度函数值就可确定进一步的搜索方向和搜索范围,无需目标函数的导数值等其他信息,可以提高搜索效率。 3) 遗传算法同时使用多个搜索点的搜索信息,具有隐含的并行性。
4) 遗传算法使用概率搜索技术,从而增加了搜索过程的灵活性,虽然概率性会产生适应度不高的个体,但是实践和理论都已经证明了在一定条件下遗传算法总是收敛的。
遗传算法提供了一种求解复杂系统优化问题的通用框架,具有很强的鲁棒性,广泛应用于很多学科,如函数优化、组合优化、生产调度、自动控制、机器人学、图像处理、人工生命、遗传编程、机器学习等。
21
基于遗传算法的PID控制器参数优化与仿真研究
5 基于遗传算法的PID参数优化
本章节中,将通过对一阶滞后系统、二阶滞后系统和三阶系统的PID控制器参数进行优化与仿真,用以说明遗传算法在PID参数优化方面应用的有效性。
5.1 常规PID参数整定
自从Z-N法在1942年被提出后,经过多年的发展,在系统控制事件中被接受为标准
[18]
。
针对于一阶滞后系统的模型
G(s)?Ke??sTs?1,Z-N法给出了经验公式,我们可以按照经验
公式进行PID参数的设置,而后只需微调即可得到较好的控制效果。经验公式如下表所示:
表5-1 经验公式 Tab.5-1 Empirical formula
控制器类型 P PI PID
Kp
Ti
?
Td 0 0
T?
0.9T?
1.2T K?? 0.32?
0.5?
对于阶跃响应可以出现等幅振荡的系统来说,可按照下面的步骤进行PID参数整定: 1)将积分增益和微分增益减少到0,只使用比例调节;
2)从0开始逐渐增大Kp到阶跃响应出现等幅振荡,记下此时的比例增益Kcr; 3)通过图形,记下此时的等幅振荡的周期长度Pcr;
在得出以上参数后,用下表所示经验公式用来整定PID参数。
表5-2 经验公式 Tab.5-2 Empirical formula
控制器类型 P PI PID
Kp
Ti ?
Td 0 0
0.5Kcr 0.45Kcr
0.6Kcr
Pcr 1.2Pcr 2Pcr 8其中 Kcr是出现等幅振荡时的比例调节器的增益
22
辽宁工程技术大学毕业设计(论文)
Pcr是出现等幅振荡时的振荡周期
5.2 基于遗传算法的PID参数优化介绍
5.2.1 参数优化原理
PID控制器参数优化是基于控制策略
u(t)?Kpe(t)?Kdtde(t)?Ki?e(t)dt (5-1)
0dt下,利用遗传算法对PID参数[Kp,Kd,Ki]进行寻优操作,并找到最优参数[Kp,Kd,Ki]使得设定的指标函数
J?f(Kp,Kd,Ki)到达最优解。
5.2.2 参数优化步骤
PID参数寻优过程总体上是根据遗传算法的算法框架来的,主要包括: 1)确定参数与编码方式
首先根据实际情况确定[Kp,Kd,Ki]参数的大概范围,然后根据实际问题进行编码。若使用二进制编码,则进一步建立二进制数与每个参数之间的对应关系,然后再将二进制数连接起来,形成的长二进制串即为可进行操作运算的对象。
2)初始种群的建立
由于要通过编程实现整个过程的参数选取与整定,故而需要使用计算机来随机生成初始种群。若使用二进制编码,则使用二进制编码在0-1之间随机生成一定规模的随机数,然后按照四舍五入的规则规定生成随机数0—0.500之间的数代表0,而0.500—1.000之间的数代表1,并且需根据系统复杂程度定义种群规模。
3)确定适应度函数
适应度是指优化计算中群体中各个个体接近最优解的优良程度。遗传算法在搜索时基本不利用外部信息,仅以适应度函数为依据,利用种群中每个个体的适应度值来进行搜索。因此,适应度函数的选取至关重要,直接影响到遗传算法的收敛速度以及能否找到最优解。 常用的性能指标[19]:
a 误差积分
IE??e(t)dt0? (5-2)
b 绝对误差积分
IAE??e(t)dt0? (5-3)
23
基于遗传算法的PID控制器参数优化与仿真研究
该性能指标是一种容易应用的指标,达到其最佳性能时,表明系统具有适当的阻尼和令人满意的瞬态响应,因此系统将有较快的输出响应,但是超调量略大。
c 平方误差积分
(5-4) 这种性能指标着重权衡大的偏差,在大的起始偏差时有迅速减小偏差的倾向,因此系统响应速度快,有振荡,超调量大,稳定性较差。
d 时间乘绝对误差积分
0ISE??e2(t)dt? (5-5)
这是绝对误差积分指标的一种改进,它对阶跃响应的起始的大的偏差考虑较少,而是着重权衡瞬间响应后期的偏差,该指标的特点是瞬态响应超调量小,振荡有足够阻尼
e 时间乘平方误差积分
0ITAE??te(t)dt? (5-6)
这种性能指标是着重考虑瞬态响应后期出现的误差,较少考虑响应中大的起始误差。
0ITSE??te2(t)dt?对抑制大的误差,ISE比IAE好;而抑制小误差,IAE比ISE好;ITAE能够较好的抑制长时间存在的误差。因此,ISE指标对应的系统响应,其最大动态偏差较小,调节时间较长;与ITAE指标对应的系统响应调节时间短,但最大动态偏差大。误差积分指标往往与其他积分指标并用,很少作为系统整定的单一指标。选择不同的指标表示对系统不同的性能要求侧重。
4)选择遗传算子
选择算子一般采用比例选择算子:通过适应度函数来求各个个体的适应度,然后计算每个个体的复制概率,下代复制个体的个数即为复制概率与上代群体数相乘。复制概率大的个体将会以更大的概率被保留下来,而复制概率小的个体则逐渐将被淘汰。交叉操作和变异操作是影响遗传算法行为和性能的重要因素。在遗传算法中,交叉操作是新个体产生的主要原因,一般要求交叉算子适量的大。而变异算子可以提高局部寻优能力,但是过高有可能会破坏接近最优的个体,一般要求变异算子要适当地小一些。 综上所述,利用遗传算法的进行PID参数优化的具体步骤如下: 1)确定每个参数的大致范围,编码; 2)随机产生M个个体构成初始种群P(0);
3)将种群中的各个个体解码成相对应的参数值,用此参数来求适应度函数; 4)应用复制、交叉和变异算子对种群P(t)进行遗传操作,产生下一代群体。 5)重复步骤3)、4),直至满足收敛条件。
24