




免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
自适应遗传算法一.主要流程:1. 参数的初始化。设定遗传种群规模N,阵元数M,信源数P等。2. 编码。采用十进制编码方法。3. 初始种群的产生。随机数生成。4. 适应度函数的评价。选取 (1) 其中, (2)PA是A的投影矩阵,A是阵列流型。 (3)是数据协方差矩阵的最大似然估计。5. 选择。比例选择方法与精英选择方法结合使用,在当代种群中选择优良个体遗传到下一代。既保证了种群的多样性,也使最优个体得以保留。1) 比例选择方法(赌轮盘法):每个个体被选中的概率与它的适应度函数值大小成正比,即适应度函数越高的个体被选中的概率也就越高。2)精英选择方法:让种群中适应度函数值最高的个体不进行配对交叉,直接复制到下一代中。但是容易陷入局部最优解,全局搜索能力差。6. 交叉。按照概率Pc对种群中个体两两配对,进行交叉操作。本文中选取算数交叉的方式。 算数交叉:是由两个个体的线性组合来产生新的个体,假设第t代的两个个体为A(t)、B(t),则算数交叉后产生的新个体是 (4) (5)其中,选取(0,1)之间的随机数。 交叉概率:使交叉概率随着遗传代数的增长,逐渐减小,目的是进化前期注重交叉运算,全局搜索能力强。 (6)其中,T是进化代数,K是总进化次数。7. 变异。按照概率Pm对种群个体进行变异。本文中选取均匀变异的方式。 均匀变异:如某基因座上的基因值为Xk,其取值范围为Umin,Umax,对其进行变异后的值为 (7) 其中,r选取0,1之间的随机数。 变异概率:使变异概率随着遗传代数的增长,逐渐增加,目的是进化后期注重变异运算,局部搜索能力强。 (8)其中,T是进化代数,K是总进化次数。8. 终止条件判断。若已达到设定的最大遗传代数,则迭代终止,输出最优解;若不满足终止条件,则返回第4步,进行迭代寻优过程。 图1 遗传算运算流程图二.仿真实验1.种群容量对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的波达方向分别为-20和60,快拍数取值128,信噪比取值20dB。种群容量范围50,400,间隔50取值,循环代数200,交叉概率取值,变异概率取值。蒙特卡洛实验次数200。图2 种群容量对角度均方根误差的影响通过图2可知,当循环代数一定时,随着种群容量的增加,角度均方根误差逐渐减小。2. 循环代数对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的波达方向分别为-20和60,快拍数取值128,信噪比取值20dB。种群容量200,循环代数范围50,400,间隔50取值,交叉概率取值,变异概率取值。蒙特卡洛实验次数200。图3 循环代数对角度均方根误差的影响通过图3可知,当种群容量一定,随着循环代数的增加,角度均方根误差曲线平稳,角度测量准确度无改善。3. 信噪比对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的波达方向分别为-20和60,快拍数取值128,信噪比取值-10,20dB,步进4dB。种群容量200,循环代数200,交叉概率取值,变异概率取值。蒙特卡洛实验次数200。图4 信噪比对角度均方根误差的影响通过图4可知,随着信噪比的增加,角度均方根误差逐渐减小,并趋于平稳,小于1。4. 小快拍数下角度差值对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的入射角相差5,35,步进5,快拍数取值20,信噪比取值20dB。种群容量200,循环代数200,交叉概率取值,变异概率取值。蒙特卡洛实验次数100。图5 小快拍条件下入射角度差值对均方根误差的影响通过图5可知,在相同条件下,随着入射角度之间差值增大,对角度测量的误差减小。5. 低信噪比下快拍数对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的入射角分别为-20、50,快拍数取值25,150,步进5,信噪比取值-10dB。种群容量200,循环代数200,交叉概率取值,变异概率取值。蒙特卡洛实验次数100。图6 低信噪比下快拍数对角度均方根误差的影响通过图6可知,低信噪比情况下,随着快拍数的增长,角度均方根误差的逐渐减小,但是角度估计的准确度低。6. 高信噪比下快拍数对角度均方根误差的影响实验条件:由8个阵元构成均匀线性阵列,阵元间距为半个波长,空间中有2个互不相关的窄带信号源,存在于该阵列的远场区域内。两个信号源的入射角分别为-20、50,快拍数取值25,150,步进5,信噪比取值20dB。种群容量200,循环代数200,交叉概率取值,变异概率取值。蒙特卡洛实验次数100。图7 高信噪比下快拍数对角度均方根误差的影响通过图7可知,在信噪比较大的情况下,在不同的快拍数下,角度均方根误差变化趋于平稳,波动小。3 仿真程序1.基于自适应遗传算法的最大似然估计% 下面举例说明遗传算法 % 求下列函数的最大值 % 适应值函数:maxtrace(PA*R), theta-90,90 %十进制种群 均匀线阵 赌轮盘法 精英选择法% 编程%-clear allclcticM=8;doa=-20 50;f=1000;%中心频率c=1500;%速度lambda=c/f;%波长d=lambda/2;%阵元间距%SNR=-10:2:20;SNR=20;%信噪比N=128;%快拍数K=10;%试验次数%Iterations=50:50:400;循环次数%popsize=51:50:401;种群容量popsize=201;for g=1:length(SNR)%可以在这里修改循环条件%阵列流型Afor i=1:P A(:,i)=exp(-j*2*pi*d*0:M-1/lambda*sin(doa(i)/180*pi);%均匀线性阵的阵列流型矢量。 end%信源模型建立S=zeros(P,N(g);for k=1:P S(k,:)=sqrt(10.(SNR/10)*(randn(1,N(g)+j*randn(1,N(g);%sqrt(10.(snr/10)使信号符合该信噪比。end%接收信号模型建立X=A*S+1/sqrt(2)*(randn(M,N(g)+j*randn(M,N(g);%1/sqrt(2)使高斯白噪声的能量为1。R=X*X/N(g);V,D=eig(R);% V,D=eig(A):求矩阵R的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。 Y,I=sort(diag(D);%diag是将对角阵的对角元素提取成一个向量.如果A是向量,sort(A) 对A中元素按照升序排列。% 如果A是矩阵sort(A) 对A按每一列元素按照升序排列。Y为排列后矩阵,I是原矩阵中各元素位置所组成的新矩阵。 Un=V(:,I(1:M-P);%把原矩阵第1到M-P列中的数对应到V矩阵中的列数,建立新的矩阵赋值给Un。Us=V(:,I(M-P+1:M);%信号子空间 for k=1:K %试验次数%popsize=201; %群体大小chromlength=2; %字符串长度(个体长度)pop=initpop(popsize,chromlength);%随机产生初始群体for i=1: 200 %200为迭代次数 pc=0.4*cos(i*pi/(2*200)+0.2; %交叉概率,进行自适应改变,随着代数增加,逐渐减小。pm=0.045*sin(i*pi/(2*200)+0.05; %变异概率,随着代数增加,逐渐变大。objvalue=calobjvalue(pop,M,d,lambda,R);%计算目标函数newpop1=selection(pop,objvalue);%复制newpop2=crossover(newpop1,pc); %交叉newpop3=mutation(newpop2,pm);%变异pop=newpop3;endobjvalue=calobjvalue(newpop3,M,d,lambda,R);%计算目标函数bestindividual,bestfit=best(newpop3,objvalue); %求出群体中适应值最大的个体及其适应值y(k,:)=bestindividual;%最优个体y(k,:)=sort(y(k,:),2);%测得角度按顺序排列mistake(g,2*k-1:2*k)=y(k,:)-sort(doa);%每次实验的误差矩阵endRMSE(g,:)=sqrt(sum(mistake(g,:).2,2)/2/K);%均方根误差endToc2. 种群生成初始化(编码)% initpop.m函数的功能是实现群体的初始化,popsize表示群体的大小,chromlength表示染色体的长度.%遗传算法子程序%Name: initpop.m%初始化function pop=initpop(popsize,chromlength) pop=(rand(popsize,chromlength)-0.5*ones(popsize,chromlength)*180; %行数为popsize,列数为chromlength的矩阵,%这样产生的初始种群。3. 计算目标函数值% 计算目标函数值% calobjvalue.m函数的功能是实现目标函数的计算,其公式采用本文示例仿真,可根据不同优化问题予以修改。%遗传算法子程序%Name: calobjvalue.m%实现目标函数的计算function objvalue=calobjvalue(pop,M,d,lambda,R)px=size(pop,1);for i=1:pxA1(:,i)=exp(-j*2*pi*d*0:M-1/lambda*sin(pi*pop(i,1)/180);%导向矢量A2(:,i)=exp(-j*2*pi*d*0:M-1/lambda*sin(pi*pop(i,2)/180);%导向矢量objvalue(i,:)=(trace(A1(:,i) A2(:,i)*pinv(A1(:,i) A2(:,i)*A1(:,i) A2(:,i)*A1(:,i) A2(:,i)*R);%计算目标函数值(最大似然法)%objvalue(i,:)=(trace(A1(:,i) A2(:,i)*pinv(A1(:,i) A2(:,i)*A1(:,i) A2(:,i)*A1(:,i) A2(:,i)*Us*Us);%计算目标函数值(子空间拟合算法)End4. 选择% 选择复制% 选择或复制操作是决定哪些个体可以进入下一代。程序中采用赌轮盘选择法选择,这种方法较易实现。% 根据方程 pi=fi/fi=fi/fsum ,选择步骤:% 1) 在第 t 代,由(1)式计算 fsum 和 pi % 2) 产生 0,1 的随机数 rand( .),求 s=rand( .)*fsum% 3) 求 fis 中最小的 k ,则第 k 个个体被选中% 4) 进行 N 次2)、3)操作,得到 N 个个体,成为第 t=t+1 代种群%遗传算法子程序%Name: selection.m%选择复制function newpop=selection(pop,objvalue)totalfit=sum(objvalue); %求适应值之和objvalue1=objvalue/totalfit;%单个个体被选择的概率objvalue2=cumsum(objvalue1); %如 fitvalue=1 2 3 4,则 cumsum(fitvalue)=1 3 6 10 px=size(pop,1);ms=sort(rand(px,1); %从小到大排列fitin=1;newin=1;while newin=pxif(ms(newin)objvalue2(fitin)newpop(newin,:)=pop(fitin,:);newin=newin+1;elsefitin=fitin+1;endenda,b=max(objvalue);newpop(1,:)=pop(b,:);%选出最优的个体,插入到新种群的第一行。 5. 交叉%交叉% 交叉(crossover),群体中的每个个体之间都以一定的概率 pc 交叉,即两个个体从各自字符串的某一位置% (一般是随机确定)开始互相交换,这类似生物进化过程中的基因分裂与重组。例如,假设2个父代个体x1,x2为:% x1=49.67% x2=30.-20% 交又后得到2个新的子代个体y1,y2分别为:% y149.-20% y230.67% 这样2个子代个体就分别具有了2个父代个体的某些特征。利用交叉我们有可能由父代个体在子代组合成具有更高适合度的个体。%遗传算法子程序%Name: crossover.m%交叉function newpop=crossover(pop,pc)px,py=size(pop);newpop=ones(size(pop);for i=2:2:px%第一行最优个体不进行算数交叉if(randpc)alpha=rand;newpop(i,:)=alpha*pop(i+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 经济学微观经济学原理测试题及答案解析
- 心理学行为分析试题集及答案
- 以文学作品提高语言理解能力的教学方案
- 村道公路塌方清理施工方案
- 人工智能图像识别技术知识点总结与测试卷
- 2025年医师知识考试题及答案
- 六楼露台防水施工方案
- 2025年口腔科学试题及答案
- 2025年直播小作坊面试题及答案
- 本学期工作计划范文10篇
- 中外室内设计史全套教学课件
- 油浸式变压器状态监测装置
- 02章 电催化过程
- 中建办公、生活区临时设施施工方案
- (完整版)ExcelVBA编程实例(150例)
- 小学软笔书法教案
- 施工及质量自检记录表
- 地下室顶板支撑回顶方案
- 《汽车电气设备构造与维修中职版》课程标准
- 肾病专业医疗质量控制指标(2020年版)
- 《Wallpaper Engine》随时间变化壁纸怎么设置
评论
0/150
提交评论