上海大学毕业设计(论文)
系统时变、敏感误差等,这些不可知因素的作用常会导致受控对象参数的改变。在一个PID反馈控制回路中,受控对象参数的变化就会造成原来的PID参数控制性能的降低,为了克服这个问题人们提出了PID参数自整定,也就是随着受控对象的变化PID调节器自我调整和重新设定PID参数,科研人员根据古典控制理论和现代控制理论提出了许多种PID参数的在线自整定的方法。至今仍有人在这方面继续作研究。PID参数在线自整定方法比较典型的有改进型Ziegler-Nichols临界比例度法、基于过程模型辨识的参数自整定、基于经验的专家法参数自整定、模糊型PID调节器等。
②PID参数优化。PID参数优化是指依据一定的控制目标和给定的生产过程的模型通过理论计算得到最优的PID参数,PID参数优化在PID控制应用之初人们就开始作了大量研究工作,已经提出了许多种方法,如粒子群优化算法,免疫算法,单纯形法,差分进化算法,神经网络算法,遗传算法等。
本文就是应用遗传算法对柴油机调速系统统的PID参数进行优化,使系统具有更好的性能。
1.2 PID参数调整方法综述
为了更好的完成本论文,我查阅了一些其他调整PID参数的方法。下面我就对这些调整方法做一个简要的综述。
方法一:Ziegler-Nichols设定方法
Ziegler与Nichols(1942)提出了调节PID控制器的参数的经验公式[1],这一调节器可根据带有时滞环节的一阶近似模型的阶跃响应或频率响应数据来设定。假设对象模型为
G(s)?K1?Tse??s
其中一阶响应的特征参数K、T、和?可以由图1-1构成的示意图提取出来,或者已知频率响应数据,即从Nyquist图形上直接得出剪切频率?c和该点处的幅值A(或增益Kc?1/A),由表1-1中的经验公式求取控制器的参数。
6
上海大学毕业设计(论文)
图1-1用作图法确定参数
表1-1 Ziegler-Nichols参数整定算法
控制器 类 型 根据模型设定 根据频率响应设定 Tc?2??c Td ??K?T Kp Ti Kp 0.5Kc 0.4Kc 0.6Kc Ti Td P PI PID 1? 3? 2? 0.8Tc 0.5Tc 0.9? 1.2? ?2 0.12Tc 方法二:临界比例度法
当已知系统的临界比例增益KC和振荡周期TC时,也可以用经验整定公式来确定PID控制器的参数,例如:
?KP?0.6KC? ?TI?0.5TC?T?0.125TC?D特征参数TC和KC,一般由系统整定实验确定,或者用频率特性分析算法根据受控过程G(s)直接算得,即由增益裕量gm确定KC,由相位剪切频率?c确定TC。
2??T??C?C ??K?10(gm?C
20)以上两种传统方法都是根据大量的实验计算或实际工程经验所得到的数据整理汇总所得到的公式而得来的,在实际的工程应用中有很大的弊端。
7
上海大学毕业设计(论文)
方法三:单纯形法
单纯形[2,3]是美国数学家G.B.丹齐克于1947年首先提出来的。它的理论根据是:线性规划问题的可行域是n维向量空间Rn中的多面凸集,其最优值如果存在必在该凸集的某顶点处达到。顶点所对应的可行解称为基本可行解。单纯形法的基本思想是:先找出一个基本可行解,对它进行鉴别,看是否是最优解;若不是,则按照一定法则转换到另一改进的基本可行解,再鉴别;若仍不是,则再转换,按此重复进行。因基本可行解的个数有限,故经有限次转换必能得出问题的最优解。如果问题无最优解也可用此法判别。
根据单纯形法的原理,在线性规划问题中,决策变量(控制变量)x1,x2,…xn的值称为一个解,满足所有的约束条件的解称为可行解。使目标函数达到最大值(或最小值)的可行解称为最优解。这样,一个最优解能在整个由约束条件所确定的可行区域内使目标函数达到最大值(或最小值)。求解线性规划问题的目的就是要找出最优解。
最优解可能出现下列情况之一: ① 存在着一个最优解; ② 存在着无穷多个最优解;
③ 不存在最优解,这只在两种情况下发生,即没有可行解或各项约束条件不阻止目标函数的值无限增大(或向负的方向无限增大)。
单纯形法的一般解题步骤可归纳如下:
① 把线性规划问题的约束方程组表达成典范型方程组,找出基本可行解作为初始基本可行解。
② 若基本可行解不存在,即约束条件有矛盾,则问题无解。 ③ 若基本可行解存在,从初始基本可行解作为起点,根据最优性条件和可行性条件,引入非基变量取代某一基变量,找出目标函数值更优的另一基本可行解。 ④ 按步骤3进行迭代,直到对应检验数满足最优性条件(这时目标函数值不能再改善),即得到问题的最优解。
⑤ 若迭代过程中发现问题的目标函数值无界,则终止迭代。
用单纯形法求解线性规划问题所需的迭代次数主要取决于约束条件的个
8
上海大学毕业设计(论文)
数。现在一般的线性规划问题都是应用单纯形法标准软件在计算机上求解,对于具有106个决策变量和104个约束条件的线性规划问题已能在计算机上解得。
方法四:粒子群优化算法
粒子群优化(Particle Swarm Optimization - PSO) 算法是近年来发展起来的一种新的进化算法( Evolutionary Algorithm - EA) 。PSO 算法属于进化算法的一种,和遗传算法相似,它也是从随机解出发,通过迭代寻找最优解,它也是通过适应度来评价解的品质。但是它比遗传算法规则更为简单,它没有遗传算法的“交叉”(Crossover) 和“变异”(Mutation) 操作。 它通过追随当前搜索到的最优值来寻找全局最优。
PSO算法[4]和其它演化算法相似,也是基于群体的,根据对环境的适应度将群体中的个体移动到好的区域,然而它不象其它演化算法一样对个体使用演化算子,而是将每个个体看作是D维搜索空间中的一个没有体积的微粒,在搜索空间中以一定的速度飞行,这个速度根据它本身的飞行经验和同伴的飞行经验来动态调整。第i个微粒表示为Xi=(xi1,xi2,?,xiD),它经历过的最好位置(最好的适应值)记为Pi=(pi1,pi2,?,piD),记作Pbest。在群体所有微粒经历过的最好位置记作Gbest。微粒i的速度用Vi=(vi1,vi2,?,viD)表示。对每一代,它的第d维(1≤d≤D)根据如下方程进行变化:
Vk+1i=w·Vki+c1·rand1·(Pbesti-ski)+c2·rand2·(Gbest-ski)
其中,Vki为第i个粒子在第k迭代中的速度;w为权函数; c1、c2为权因子;
rand为随机数,取值0~1之间;
ski为第i个粒子在第k次迭代中的当前位置。 粒子i经过飞行将出现一个新的位置,如图1-2所示。
9
上海大学毕业设计(论文)
Y Sk+1 Vk Vk+1 Vgbest S kVpbest O X
图1-2 PSO算法方向示意图
sk+1i=ski+vk+1i
此外,微粒的速度Vi被一个最大速度Vmax所限制。如果当前微粒的速度Vi超过该维的最大速度Vmax,则该维的速度被限制为该维最大速度Vmax。PSO算法有些类似于人的思维方式:在寻求一致的认知过程中,个体往往记住它们自己的信念,同时考虑同事们的信念。当个体察觉同事的信念较好的时候,它将进行适应性地调整。
方法五:差分进化算法
差分进化(DE)算法是一种采用浮点矢量编码的在连续空间中进行随机搜索的优化算法[5]。在差分进化算法中,首先由父代个体间的差分矢量构成变异算子;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一个试验个体;然后在父代个体和试验个体之间根据适应度的大小进行选择操作,适应度小的保存到下一代群体中去。DE算法的
实现步骤如下:
a.初始化。DE算法采用M个D维的浮点矢量作为初始种群,个体矢量表示为xi,G(i=1,2,?,M),其中i表示种群中个体的序数,G为当前种群进化代数,在整个寻优过程中种群规模M保持不变,初始种群通常在给定约束边界
10