基于遗传算的pid参数优化及matlab实现内容摘要:
PID 控制器 .2020 [7] 侯宏霞 ,王涛杨 ,国清 ,王德意 .影响 PID 算法 PID 参数优化性能的主要因素 . 西北水利发电 . [8] 许春华 ,皮道映 .基于遗传算法的模糊及不对称优化自校正 PID 控制 .杭州 :浙江大学工业控制技术研究所 . 附录 程序清单: 基于实数编码遗传算法的 PID 整定 二阶传递函数 2 400() 50Gs ss 采样时间为 1ms,输入指令为一阶跃信号。 仿真程序: 主程序: %GA(Generic Algorithm) Program to optimize PID Parameters clear all。 close all。 global rin yout timef Size=30。 ClodeL=3。 MinX(1)=zeros(1)。 MaxX(1)=20*ones(1)。 MinX(2)=zeros(1)。 MaxX(2)=*ones(1)。 MinX(3)=zeros(1)。 MaxX(3)=*ones(1)。 Kpid(:,1)= MinX(1)+( MaxX(1)MinX(1))*rand(Size,1)。 Kpid(:,2)= MinX(2)+( MaxX(2)MinX(2))*rand(Size,1)。 Kpid(:,3)= MinX(3)+( MaxX(3)MinX(3))*rand(Size,1)。 G=100。 BsJ=0。 %*******************Start Running************** for kg=1:1:Size time(kg)=kg。 %****************** Step 1:Evaluate BestJ ********* for I=1:1:Size Kpidi=Kpid(i,:)。 [Kpidi, BsJ]=chap5_2f(Kpidi,BsJ)。 BsJi(i)=BsJ。 End [OderJi,IndexJi]=sort(BsJi)。 BestJ(kg)=OderJi(1)。 BJ=BestJ(kg)。 Ji=BsJi+1e10。 %Avoiding deviding zero Fi=1./Ji。 % Cm=max(Ji)。 % fi=CmJi。 [OderJi,IndexJi]=sort(fi)。 %Arranging fi small to bigger Bestfi=Oderfi(Size)。 BestfS=Kpid(Indexfi(size),:)。 %Let BestS=E(m),mis the Indexfi belong to max(fi) Kg BJ Bests %************* step 2: select and Reproduct Operation ***** fi_sum=sum(fi)。 fi_Size=(Oderfi/fi_sum)*Size。 fi_S=floor(fi_Size)。 r=Size_sum(fi_S)。 Rest=fi_Size_fi_S。 [RestValue, Index]=sort(Rest)。 for i=Size:1:Sizer+1 fi_S(Index(i))=fi_S(Index(i))+1。 %Adding rest to equal Size end K=1。 for i=Size:1:1 % Select the Sizeth and Reproduce firstly for j=1:1:fi_S(i) TempE(k.:)=Kpid(Indexfi(i),:)。 % Select and Reproduce k=k+1。 end end %************* Step 3 : Crossover Operation ********* Pc=。 Fro i=1:2:(Size1) temp=rand。 if Pctemp % Crossover Condition alfa=rand。 TempE(i,:)=alfa*Kpid(i+1,:)+(1alfa)*Kpid(i,1)。 TempE(i+1,:)=alfa*Kpid(i,:)+(1alfa)*Kpid(i+1,1)。 end end TempE(Size.:) =BestS。 Kpid=TempE。 %***************** Step 4: Mutation Operation ********** Pm=[1:1:Size]*()/Size。 %Bigger fi, smaller Pm Pm_rand=rand()。 Mean=(MaxX + MinX) /2。 Dif=(MaxXMinX)。 For i=1:1:Size For j=1:1:Codel If Pm(i)Pm_rand(i, j) % Mutation Condition TempE(i, j)=Mean(j)+Dif(j)*()。 end end end %************ Guarantee TempE(Size,:) belong to the best individual TempE(Size,:) =BestS。 Kpid =TempE。 End Bestfi BestS Best_J=BestJ(G) Figure(1)。 Plot(time, BestJ)。 Xlabel(‘times’)。 ylabel (‘Best J’)。 figure(2)。 plot(time , rin , ‘r’ ,timef , yout , ‘b’ )。 xlabel (‘ Time(s) ’)。 ylabel( ‘rin , yout’ )。 子程序: function [Kpidi , BsJ]=pid_gaf(Kpidi , BsJ) global rin yout timef ts=。 sys =tf(400, [1, 50, 0] )。 days=c2d(sys, ts , ‘z’)。 [num , den] =tfdata(days , ‘v’)。 rin=。 u_1=。 u_2=。 y_1=。 y_2=。 x=[0 , 0 , 0]。 B=0。 P=100。 for k=1:1:P time(k)=k*ts。 r(k)=rin。 u(k)=Kpidi(1)*x(1)+Kpidi(2)*x(2)+Kpidi(3)*x(3)。 if u(k)=10 u(k)= 10。 end if u(k)=10 u(k)=10。 end yout(k)=den(2)*y_1den(3)*y_2+num(2)*u_1+num(3)*u_2。 error(k)= r(k)yout(k)。 %************* Return of PID parameters************* u_2=u_1。 u_1=u(k)。 y_2=y_1。 y_1=yout(k)。 x(1)=error(k)。 x(2)=(error(k)error_1)/ts。 x(3)=x(3)+error(k)*ts。 error_2=error_1。 error_1=error(k)。 if s==0 if yout(k)amp。 yout(k) tu=time(k)。 s=1。 end end end for i=1:1:P Ji(i)=*abs(error(i)) +*u(i)^2*。 B=B+Ji(i)。 if i1 erry(i) =yout(i)yout(i1)。 if erry(i)0 B=B+100*abs(erry(i))。 end end end BsJ=B+*tu*10。 基于二进制编码遗传算法的 PID 的整定 主程序: %GA(Generic Algorithm) Program to optimize PID Parameters clear all。 close all。 global rin yout timef G=100。 Size=30。 ClodeL=3。 MinX(1)=zeros(1)。 MaxX(1)=20*ones(1)。 MinX(2)=zeros(1)。 MaxX(2)=*ones(1)。 MinX(3)=zeros(1)。 MaxX(3)=*ones(1)。 E=round(rand(Size, 3*Codel) )。 % Initial Code! BsJ=0。 for kg=1:1:G time(kg)=kg。 for s=1:1:Size m=E(s,:)。 y1=0。 y2=0。 y3=0。 m1=m(1:1:Codel) for i=1:1:Codel y1=y1+m1(i)*2^(i1)。 end Kpid(s,1)=(MaxX(1)MinX(1))*y1/1023+MinX(1)。 M2=m(Codel+1:1:2*Codel) for i=1:1:Codel y2=y2+m2(i)*2^(。基于遗传算的pid参数优化及matlab实现
相关推荐
统结构 第二类就是闭环控制系统。 图 即为整个闭环系统的组成,与开环相比最明显的区别就是多了反馈。 这就说明闭环中必须对比一下输出和输入的信号。 并且可以发现误差主要产生于输出和开始输入间,然后我们要对比误差并且改变其中的一些东西,尽量让误差变小并最终在之前我们规定的误差范围内。 闭环虽然多了反馈,但是它的稳定性也提高了很多。 8 图 典型的闭环运动控制系统结构 GT 系列运动控制器
感器的特点 , 所以 本 课题 选择超声波测距传感器 , 3m是 最大 能够 探测 的 距离。 本章回顾 本章主要讲述了超声波的产生电路,超声波回波检测电路和超声波中央控制模块的方 案选择比较,介绍了超声波的探测范围。 3 系统硬件设计 硬件电路和软件程序共同构成了系统设计的主要两个部分。 由电源电路、 显示电路 、 单片机电路 、 发射电路 、 接收电路 组建了硬件电路的主要部分
原理 .视频测速原理 不难看出,光流方程法和相位相关法的运算量非常大,而且光流方程法对图像光线的分布 有一定要求,实用起来效果也并不好。 内江师范 学院本科毕业设计 8 车辆图像采集 牌照识别 车辆数据查询 牌照区域提取 牌照字符切分 牌照字符识别 CCD 摄像头,视频采集卡 卫星通信,联网数据库 小波 变换字符识别快速算法 垂直直方图,轮廓分析 图像预处理,纹理分析,二值化 视频测速 图 3
MOV DPTR,DHTABLE9 CALL DHZ MOV ADDR1,10H MOV N1,08H MOV DPTR,DHTABLE10 CALL DHZ MOV ADDR1,08H MOV N1,08H MOV DPTR,DHTABLE11 CALL DHZ MOV ADDR1,18H MOV N1,08H MOV DPTR,DHTABLE12 CALL DHZ RET。 测量界面子程序。
容易把握,因所以要对定义一些标准和指标,优化检索结果的有效性。 一般地,图像检索分为两种主要类型:图像匹配和相似性查询。 设图像库有 N 幅图像。 对匹配问题,理想情况是正确图像是检索结果中的第一个。 通常用下面的式子评价匹配效果:匹配比率=检索性能的评价一般采用查准率-查全率(Precision-Recall)的相似检索评价准则,通过执行检索集合中的各个查询
utonChangeWorkPartlD)。 ClosePartCallbackFunction=(OnCloseP 68 现代制造技术与装备 2020第 1期总第 194期 art)。 (CallbackReason ClosePartReason, ClosePartCallbackFuncfion,outonClosePartlD)。 J pubhcstaticvoidMain()f