18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码.doc_第1页
18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码.doc_第2页
18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码.doc_第3页
18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码.doc_第4页
18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

欢迎访问GreenSim团队主页/greensim 邮箱:基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码投影寻踪是一种处理多因素复杂问题的统计方法,其基本思路是将高维数据向低维空间进行投影,通过低维投影数据的散布结构来研究高维数据特征,可用于聚类、分类、综合评价、预测等。投影寻踪模型最终可归结为一个非线性连续函数优化模型,可以采用遗传算法、粒子群算法、人工鱼群算法或人工免疫克隆优化算法等进行求解,得到最优的投影向量。% 第一步:仿真参数设置clcclearclose allload data1.txtD=data1;%导入D矩阵n,p=size(D);K=300;%迭代次数N=100;%种群规模Pm=0.3;%变异概率LB=-ones(1,p);%决策变量的下界UB=ones(1,p);%决策变量的上界Alpha=0.1;%窗口半径系数,典型取值0.1b% 调用遗传算法BESTX,BESTY,ALLX,ALLY=GAUCP(K,N,Pm,LB,UB,D,Alpha);% GreenSim团队专业级算法设计&代写程序% 欢迎访问GreenSim团队主页/greensim% 整理输出结果Best_a=(BESTXK);%方向向量d=zeros(n,p);Djmax=max(D);Djmin=min(D);for i=1:n d(i,:)=(D(i,:)-Djmin)./(Djmax-Djmin);endZ=zeros(n,1);for i=1:n Z(i)=abs(sum(Best_a.*d(i,:);endZ=abs(Z);figure%投影散布图plot(abs(Z),bd,LineWidth,1,MarkerEdgeColor,k,MarkerFaceColor,b,MarkerSize,5);%axis(1,12,0,2.5);%图形边界根据需要显示grid onxlabel( ,FontName,TimesNewRoman,FontSize,12);ylabel(Projective Value,FontName,Times New Roman,Fontsize,12);figurenewZ,I=sort(Z);plot(abs(newZ),bd,LineWidth,1,MarkerEdgeColor,k,MarkerFaceColor,b,MarkerSize,5);%axis(1,12,0,2.5);%图形边界根据需要显示grid onxlabel( ,FontName,TimesNewRoman,FontSize,12);ylabel(Projective Value,FontName,Times New Roman,Fontsize,12);%disp(最佳投影向量为)disp(Best_a);function BESTX,BESTY,ALLX,ALLY=IGAUCP(K,N,Pm,LB,UB,D,Alpha)%遗传算法求解投影寻踪模型% GreenSim团队专业级算法设计&代写程序% 欢迎访问GreenSim团队主页/greensim% 输入参数列表% K 迭代次数% N 种群规模,要求是偶数% Pm 变异概率% LB 决策变量的下界,M1的向量% UB 决策变量的上界,M1的向量% D 原始样本数据,np的矩阵% Alpha 窗口半径系数,典型取值0.1% 输出参数列表% BESTX K1细胞结构,每一个元素是M1向量,记录每一代的最优个体% BESTY K1矩阵,记录每一代的最优个体的评价函数值% ALLX K1细胞结构,每一个元素是MN矩阵,记录全部个体% ALLY KN矩阵,记录全部个体的评价函数值% 第一步:M=length(LB);%决策变量的个数%种群初始化,每一列是一个样本farm=zeros(M,N);for i=1:M x=unifrnd(LB(i),UB(i),1,N); farm(i,:)=x;end%输出变量初始化ALLX=cell(K,1);%细胞结构,每一个元素是MN矩阵,记录每一代的个体ALLY=zeros(K,N);%KN矩阵,记录每一代评价函数值BESTX=cell(K,1);%细胞结构,每一个元素是M1向量,记录每一代的最优个体BESTY=zeros(K,1);%K1矩阵,记录每一代的最优个体的评价函数值k=1;%迭代计数器初始化% 第二步:迭代过程while k=K% 以下是交叉过程 newfarm=zeros(M,2*N); Ser=randperm(N);%两两随机配对的配对表 A=farm(:,Ser(1); B=farm(:,Ser(2); P0=unidrnd(M-1); a=A(1:P0,:);B(P0+1):end,:);%产生子代a b=B(1:P0,:);A(P0+1):end,:);%产生子代b newfarm(:,2*N-1)=a;%加入子代种群 newfarm(:,2*N)=b; for i=1:(N-1) A=farm(:,Ser(i); B=farm(:,Ser(i+1); P0=unidrnd(M-1); a=A(1:P0,:);B(P0+1):end,:); b=B(1:P0,:);A(P0+1):end,:); newfarm(:,2*i-1)=a; newfarm(:,2*i)=b; end FARM=farm,newfarm; % 选择复制 SER=randperm(3*N); FITNESS=zeros(1,3*N); fitness=zeros(1,N); for i=1:(3*N) Beta=FARM(:,i); FITNESS(i)=FIT(Beta,D,Alpha); end for i=1:N f1=FITNESS(SER(3*i-2); f2=FITNESS(SER(3*i-1); f3=FITNESS(SER(3*i); if f1=f2&f1=f3 farm(:,i)=FARM(:,SER(3*i-2); fitness(:,i)=FITNESS(:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论