遗传算法工具箱识别(GA)Bouc-Wen模型参数辨识-识别
遗传算法遗传算法

(5)遗传算法在解空间进行高效启发式搜索,而非盲 目地穷举或完全随机搜索;
(6)遗传算法对于待寻优的函数基本无限制,它既不 要求函数连续,也不要求函数可微,既可以是数学解 析式所表示的显函数,又可以是映射矩阵甚至是神经 网络的隐函数,因而应用范围较广;
(7)遗传算法具有并行计算的特点,因而可通过大规 模并行计算来提高计算速度,适合大规模复杂问题的 优化。
26
(4)基本遗传算法的运行参数 有下述4个运行参数需要提前设定:
M:群体大小,即群体中所含个体的数量,一般取为 20~100; G:遗传算法的终止进化代数,一般取为100~500; Pc:交叉概率,一般取为0.4~0.99;
Pm:变异概率,一般取为0.0001~0.1。
27
10.4.2 遗传算法的应用步骤
遗传算法简称GA(Genetic Algorithms)是1962年 由美国Michigan大学的Holland教授提出的模拟自然 界遗传机制和生物进化论而成的一种并行随机搜索最 优化方法。
遗传算法是以达尔文的自然选择学说为基础发展起 来的。自然选择学说包括以下三个方面:
1
(1)遗传:这是生物的普遍特征,亲代把生物信息交 给子代,子代总是和亲代具有相同或相似的性状。生 物有了这个特征,物种才能稳定存在。
18
(3)生产调度问题 在很多情况下,采用建立数学模型的方法难以对生
产调度问题进行精确求解。在现实生产中多采用一些 经验进行调度。遗传算法是解决复杂调度问题的有效 工具,在单件生产车间调度、流水线生产车间调度、 生产规划、任务分配等方面遗传算法都得到了有效的 应用。
19
(4)自动控制。 在自动控制领域中有很多与优化相关的问题需要求
10
基于遗传算法的磁流变阻尼器Bouc-Wen模型参数辨识

w r ba e y uig g nt lo tm ( A) bsd o c a i lcaatr t x e me t o a e. eeo ti d b s e e c a rh G n n i gi ae n mehnc h rc i i ep r ns fa MR d mpr a e sc i
( R M R V B T )0 0— 0 ) S O G ( Ju 2 1 0 1 支持项 目 收稿 日期 : 0 0 0 — 0 修改稿收到 日期 : 1 — 5— 4 21— 3 3 2 0 0 2 0
第 一作者 刘永强 男 , 博士生 ,9 3年 1 18 2月生
问题 的遗传算法对模型 的参数进行辨识 , 并确定 了 , c, 三个参数与电流指令间的函数关系和其余 5 。k 。 个参
摘 要 :在除试验数据外无任何先验知识的条件下如何识别 Bu— n oc We 模型的参数是一个亟待解决的问题。在对
磁流变 阻尼器进行力学特性试 验的基础上 , 用遗 传算法 对磁流 变阻尼 器 Bu — n模 型进 行参数 辨识 , 采 ocWe 并采 用缩 小参
数取值 范围的方 法逐 渐提高遗传算 法的识别精度 。通过分析参数值 与电流间的特征曲线 , 曲线拟合 的方法 确定 它们 采用
( 一 )+0 0
() 1
N __ / I 0 ×R 盟
一
其 中 , 回变 量 z由 滞
下 式决 定
号 = s ( ) Ai 2 n 。共 进 行 了 5组试 验 , 别 为 : = 分 A
5mm、 0 5 H , /= . z A=1 m、 = . z A=2 m、 0 m - 0 5H , 厂 0m -= . , 厂 0 5HzA=1 l =1H , 0i l m、 zA=1 m、 =1 5 H 。 0 m 厂 . z
遗传算法参数辨识

遗传算法参数辨识
遗传算法是一种基于自然遗传和进化原理的优化算法,能够搜索最优解,并通过进化操作不断优化解的质量。
在参数辨识中,遗传算法可以用来辨识模型的各个参数。
具体来说,遗传算法的参数辨识过程可以分为以下几个步骤:
1.编码:将模型的参数表示为遗传算法的基因编码。
这可以通过二进制编码、实数编码等方式实现。
2.初始化种群:随机生成一组初始解,即种群。
每个解都对应一个可能的参数组合。
3.适应度评估:根据模型的输出和实际数据的差异,评估每个解的适应度。
适应度高的解意味着其对应的参数组合更接近实际数据。
4.选择操作:根据适应度评估结果,选择出适应度高的解进行交叉和变异操作。
5.交叉操作:通过两个解的基因部分交换,产生新的解。
6.变异操作:对解的基因进行小幅度修改,以增加解的多样性。
7.终止条件:当达到预设的迭代次数或找到满足要求的解时,算法终止。
在参数辨识中,遗传算法可以用来优化模型的参数,使得模型的输出结果更接近实际数据。
同时,遗传算法具有全局搜索能力,可以避免局部最优解的问题。
但是,遗传算法也存在一些缺点,如计算量大、需要调整参数等。
因此,在使用遗传算法进行参数辨识时,需要根据具体问题选择合适的编码方式、适应度函数、选择策略等参数,并进行充分的测试和验证。
压电执行器的Bouc-Wen模型在线参数辨识

压电执行器的Bouc-Wen模型在线参数辨识朱炜;芮筱亭【期刊名称】《光学精密工程》【年(卷),期】2015(023)001【摘要】现有的定参数Bouc-Wen模型由于无法表征压电执行器迟滞具有的频移和时变性,极易产生较大的模拟误差.为了精确地模拟压电执行器的迟滞特性,本文建立了压电执行器的Bouc-Wen模型,并采用递推最小二乘在线辨识方法来实时辨识Bouc-Wen模型的参数.为了避免出现数据饱和现象,使用限定记忆来限定辨识方法所使用的数据组数.为验证该辨识方法的有效性,建立了相应的实验系统对其进行实验验证.实验结果表明,限定记忆递推最小二乘在线辨识方法能使Bouc-Wen模型也呈现频移和时变特性.以100 Hz的驱动电压为例,其最大绝对模拟误差从1.38 μm 降为0.51 μm.因此,与传统的离线参数辨识方法相比,限定记忆递推最小二乘在线辨识方法能够有效地提高Bouc-Wen模型的模拟精度.【总页数】7页(P110-116)【作者】朱炜;芮筱亭【作者单位】南京理工大学发射动力学研究所,江苏南京210094;南京理工大学发射动力学研究所,江苏南京210094【正文语种】中文【中图分类】TP271;TN384【相关文献】1.基于Bouc-Wen迟滞模型参数辨识的智能悬臂梁自适应控制 [J], 王瑞萍; 张婷2.基于粒子群算法和最小二乘法的磁流变阻尼器Bouc-Wen模型参数辨识方法 [J], 胡国良;林豪;李刚3.磁流变阻尼器Bouc-Wen模型参数辨识研究 [J], 杨永刚;丁有闯4.基于Bouc-Wen模型的压电执行器的前馈线性化控制器 [J], 王代华;严松林;朱炜5.基于改进PSO的非对称Bouc-Wen模型参数辨识 [J], 陈玲星;苏强;赵新龙因版权原因,仅展示原文概要,查看原文内容请购买。
基于遗传算法的磁流变阻尼器Bouc-Wen模型参数辨识

基于遗传算法的磁流变阻尼器Bouc-Wen模型参数辨识刘永强;杨绍普;廖英英;张耕宁【期刊名称】《振动与冲击》【年(卷),期】2011(030)007【摘要】在除试验数据外无任何先验知识的条件下如何识别Bouc-Wen模型的参数是一个亟待解决的问题.在对磁流变阻尼器进行力学特性试验的基础上,采用遗传算法对磁流变阻尼器Bouc-Wen模型进行参数辨识,并采用缩小参数取值范围的方法逐渐提高遗传算法的识别精度.通过分析参数值与电流间的特征曲线,采用曲线拟合的方法确定它们之间的函数关系,再利用遗传算法得到具体的函数表达式.最后用不同幅值和频率的激励试验数据对识别结果和拟合结果进行了验证.结果表明:利用缩小取值范围的方法得到的Bouc-Wen模型参数识别结果在全局最优解的附近,拟合结果和辨识出的模型均能满足要求.【总页数】5页(P261-265)【作者】刘永强;杨绍普;廖英英;张耕宁【作者单位】石家庄铁道大学,石家庄050043;石家庄铁道大学,石家庄050043;石家庄铁道大学,石家庄050043;石家庄铁道大学,石家庄050043【正文语种】中文【中图分类】TB535.1【相关文献】1.基于Matlab磁流变阻尼器Bouc-Wen模型的参数识别 [J], 李耀刚;陈盟;龙海洋;琚立颖2.基于Bouc-Wen迟滞模型参数辨识的智能悬臂梁自适应控制 [J], 王瑞萍; 张婷3.基于粒子群算法和最小二乘法的磁流变阻尼器Bouc-Wen模型参数辨识方法 [J], 胡国良;林豪;李刚4.磁流变阻尼器Bouc-Wen模型参数辨识研究 [J], 杨永刚;丁有闯5.基于改进PSO的非对称Bouc-Wen模型参数辨识 [J], 陈玲星;苏强;赵新龙因版权原因,仅展示原文概要,查看原文内容请购买。
Bouc-Wen模型和反演装置应用在压电传动装置上来补偿非线性磁滞现象

Bouc-Wen模型和反演装置应用在压电传动装置上来补偿非线性磁滞现象摘要——现在提出一个新的方法用来补偿压电陶瓷材料的非线性磁滞现象。
基于反演预算的方法,该方法避免了反演模型用于现有的问题。
因此,补偿易于实施,只要直接模式是可用,就不需要额外的计算。
该补偿技术,对于Bouc-Wen方程组模拟的磁滞现象很有价值实验人员注意——这些来,许多研究人员正在研究微米/ 纳米级压电晶体的非线性迟滞现象。
尽管高分辨率和高速度的材料的磁滞现象受限于准确性,但是如果反馈控制律可以很轻松地提高性能,它们将应用于微米/纳米级和微小型系统方便传感器。
一方面,准确、高带宽传感器不仅昂贵,而且庞大(仪、光学传感器)。
另一方面,可积传感器对噪音高度敏感,并且易碎(应变片)。
传感器、前馈控制技术已被使用。
这些技术代表了包含在一个整合的观点,但现有的方法很难实现复杂的计算和运行。
在本文中有三个明确的目标:(1)在微米/纳米级实现高性能的需要(2)避免使用庞大的传感器,(3)需要的是易于计算和控制的技术因此本文的内容关键在于设计一种前馈补偿控制器,并且它方便计算和操作。
当然,即使我们提出一个应用对应到具体的压电驱动器,提出的方法同样适用于其他的Bouc-Wen的表达建模系统。
关键词——磁滞现象补偿、Bouc-Wen模型、反演的方案、压电传动装置一介绍压电材料,尤其是PZT材料,在微米/纳米级的发展研究很有价值。
这是由于压电陶瓷提供高分辨率,高带宽,低成本,处理简单所致。
不幸的是,压电陶瓷表现出强烈的非线性磁滞现象,最后不得不妥协制动器的精度并且产生不需要的谐波。
反馈控制技术似乎是最好的方式,它能够触及到整体的实质性东西(准确性、重复性、干扰和不确定性影响振动排斥、拒绝,等等)。
(1)(2)然而,反馈给微小系统,如微米/纳米执行机构受限于传感器难以整合,而高带宽和足够精确的传感器过于庞大,并且很难制作和非常昂贵(干涉仪,三角光传感器、cameramicroscopes测量系统,等等)。
遗传算法工具箱识别(GA)Bouc-Wen模型参数辨识-识别

Bouc-Wen模型因数字处理方便简单而得到较为广泛的应用,力可以表示为:利用遗传算法工具箱(GA)对Bouc-Wen模型进行参数识别。
实验数据来源于对磁流变阻尼器(MR damper)进行性能测试,试验获得的数据包括力F,位移x,采用频率已知,速度和加速度可以由位移求导得出。
参数识别出现程序如下:(文件名:Copy_0_of_BoucWen)function j=myfung(x)y0=[0];yy=y0;tspan=[]';s=[]';v=[]';Ft=[]';rr=max(size(s));%计算数据个数i=1;while(i<rr)&(~isnan(y0(1,1)))&(~(max(abs(y0))>1e5))%%判断是否出现奇异点,具体忘了。
[ty]=ode45(@uubird,[tspan(i),tspan(i+1)],y0,[],v(i),x);%参考论坛的y0=y(end,:);yy=[yy;y0];i=i+1;kk=max(size(y));if kk>150 %微分方程计算,停止是有条件的(具体没去研究),这边设置150次,不管有没有收敛,都停止,不然整个程序运行的实际太久,你也可以改成其他的,慢慢研究break;endendif (i==rr)&(~isnan(yy(1,1)))==1%判断是否出现奇异点(就是NAN),如果没有出现,就是正常的F=x(:,4)*yy(:,1)+x(:,5)*(s-ones(size(s)) *x(:,6))+x(:,7)*v;%x(:,4)代表alpha 5代表k0,6代表s0 7代表c0 位移s就是公式中的xj=sum((F-Ft).*(F-Ft));i=i+1;else i<(rr-1)%出现奇异点(NAN)j=1e10;%因为出现奇异值,所以随便给一个目标函数值(这个要足够大),目的是排除这组优化值(也就是这个种群不要)i=rr;endfunction dy=uubird(t,y,v,x)dy=-x(:,1)*abs(v)*y*abs(y)-x(:,2)*(v)*y^2+x(:,3)*v;% 1r 2beita 3A 取n=2运行结果拟合效果对比程序(文件名BoucWenjianyan247):clccleardatasorce=load('247-0.txt');II=1;a=2000;b=3000; %为了拟合。
基于Bouc-Wen模型辨识结合面动态特性研究

L I L i n g , C A I A n - j i a n g ,C A I L i . g a n g , R U A N X i a o . g u a n g , Z H A O Y o n g . s h e n g
( 1 .S c h o o l o f Me c h a n i c a l a n d E l e c t r i c a l E n g i n e e r i n g , X i ’ a n U n i v e r s i t y o f A r c h i t e c t u r e T e c h n o l o g y , X i ’ a n 7 1 0 0 5 5 ,C h i n a ;
Ab s t r a c t : T h e d y n a m i c mo d e l o f j o i n t i n t e r f a c e s i s u s u a l l y c h a r a c t e r i z e d w i t h a n u mb e r o f l i n e a r s p i r n g - d a m p i n g
( 1 . 西安建筑科技 大学 机 电工程学 院 , 西安 7 1 0 0 5 5; 1 0 0 1 2 4 )
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Bouc-Wen模型因数字处理方便简单而得到较为广泛的应用,力可以表示为:
利用遗传算法工具箱(GA)对Bouc-Wen模型进行参数识别。
实验数据来源于对磁流变阻尼器(MR damper)进行性能测试,试验获得的数据包括力F,位移x,采用频率已知,速度和加速度可以由位移求导得出。
参数识别出现程序如下:(文件名:Copy_0_of_BoucWen)
function j=myfung(x)
y0=[0];
yy=y0;
tspan=[]';
s=[]';
v=[]';
Ft=[]';
rr=max(size(s));%计算数据个数
i=1;
while (i<rr)&(~isnan(y0(1,1)))&(~(max(abs(y0))>1e5))%%判断是否出现奇异点,具体忘了。
[t y]=ode45(@uubird,[tspan(i),tspan(i+1)],y0,[],v(i),x);%参考论坛的
y0=y(end,:);
yy=[yy;y0];
i=i+1;
kk=max(size(y));
if kk>150 %微分方程计算,停止是有条件的(具体没去研究),这边设置150次,不管有没有收敛,都停止,不然整个程序运行的实际太久,你也可以改成其他的,慢慢研究
break;
end
end
if (i==rr)&(~isnan(yy(1,1)))==1%判断是否出现奇异点(就是NAN),如果没有出现,就是正常的
F=x(:,4)*yy(:,1)+x(:,5)*(s-ones(size(s))*x(:,6))+x(:,7)*v;%x(:,4)代表alpha 5代表k0,6代表s0 7代表c0 位移s就是公式中的x
j=sum((F-Ft).*(F-Ft));
i=i+1;
else i<(rr-1)%出现奇异点(NAN)
j=1e10;%因为出现奇异值,所以随便给一个目标函数值(这个要足够大),目的是排除这组优化值(也就是这个种群不要)
i=rr;
end
function dy=uubird(t,y,v,x)
dy=-x(:,1)*abs(v)*y*abs(y)-x(:,2)*(v)*y^2+x(:,3)*v;% 1r 2beita 3A 取n=2
运行结果
拟合效果对比程序(文件名BoucWenjianyan247):
clc
clear
datasorce=load('247-0.txt');
II=1;
a=2000;
b=3000; %为了拟合。
datasorce=datasorce(a:b,:);%去一个周期进行对比
s=datasorce(:,1)*0.7857-0.027860;%位移换算(你不用管)
Ft=datasorce(:,4)*1000/3.44; %力换算
sa=(max(s)-min(s))/2-max(s);
s=s+sa;
sFt=(max(Ft)-min(Ft))/2-max(Ft);
Ft=Ft+sFt;
for i=1:(b-a+1)
A(i)=i*0.001;
end
T=A';
p=polyfit(T,s(:),10);%拟合,用于求解
y10=polyval(p,T);
syms x
y= p(1)*x^10 + p(2)*x^9 +p(3)*x^8 + p(4)*x^7 + p(5)*x^6 + p(6)*x^5 + p(7)*x^4 + p(8)*x^3 +p(9)*x^2 + p(10)*x +p(11);
f=diff(y);
ac=diff(y,2);
for i=1:(b-a+1)
x=i*0.001;
v(i)=eval(f);
acc(i)=eval(ac);
vm(i)=(v(i)*v(i)-s(i)*acc(i))^0.5;
I(i)=0;
end
v=v';
T=T';
y0=[0];
yy=y0;
rr=max(size(s));
tspan=0:0.001:(rr-1)*0.001;
i=1;
x=[0.764 -0.7651 2.291 3.108 4.994 2.163925 3.002] ;%%参数识别出出来的结果
while (i<rr)
[t y]=ode45(@uubird,[tspan(i),tspan(i+1)],y0,[],v(i),x);
y0=y(end,:);
yy=[yy;y0];
i=i+1;
end
F=x(:,4)*yy(:,1)+x(:,5)*(s-ones(size(s))*x(:,6))+x(:,7)*v;%4alpha 5k0 6x0 7c0
s=s(100:2:800,:);
v=v(100:2:800,:);
F=F(100:2:800,:);
Ft=Ft(100:2:800,:);
figure(1),plot(v,Ft,'k',v,F,'r--'),hold on
figure(2),plot(s,Ft,'k',s,F,'r--'),hold on
实线是试验测得的结果。
[attach]188480[/attach][attach]188480[/attach][attach]188480[/attach]如果觉得效果不够好,可以增加迭代次数。