遗传算法(二变量)

上传人:suij****uang 文档编号:173500032 上传时间:2022-12-11 格式:DOCX 页数:3 大小:11.37KB
返回 下载 相关 举报
遗传算法(二变量)_第1页
第1页 / 共3页
遗传算法(二变量)_第2页
第2页 / 共3页
遗传算法(二变量)_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述
function ga_main()% 遗传算法% GA main program% Edited by Tan % Revision: 1.1 % Date: 2009/07/09% n- 种群规模% ger- 迭代次数% pc- 交叉概率 % pm- 变异概率% v- 初始种群(规模为 n )% f- 目标函数值 % fit- 适应度向量% vx- 最优适应度值向量% vmfit- 平均适应度值向量clear all;close all;clc;%清屏tic;%计时器开始计时n=20;ger=100;pc=0.65;pm=0.05;% 初始化参数%以上为经验值,可以更改。% 生成初始种群v=init_population(n,44); %得到初始种群,22串长,生成20*22的0-1矩阵 N,L=size(v);%得到初始规模行,列disp(sprintf(Number of generations:%d,ger);disp(sprintf(Population size:%d,N);disp(sprintf(Crossover probability:%.3f,pc);disp(sprintf(Mutation probability:%.3f,pm); %sprintf 可以控制输出格式% 待优化问题xmin=-3;xmax=3;ymin=-2;ymax=2; %变量 X 范围f=(x.A2-2*x).*exp(-(x42+y.A2+x.*y);% 计算适应度,并画出初始种群图形figure(1);%打开第一个窗口 x,y=meshgrid(-3:0.1:3,-2:0.1:2);fit=eval(f);mesh(x,y,fit);% 作图grid on;hold on; x=decode(v(:,1:22),xmin,xmax);y=decode(v(:,23:44),ymin,ymax);%22 位二进制换成十进制,%冒号表示对所有行进行操作 %x,y=meshgrid(x,y)fit=eval(f)%eval 转化成数值型的 %计算适应度plot3(x,y,fit,*);% 作图title(a)染色体的初始位置);标题xlabel(x);ylabel(y);% 标记轴% 迭代前的初始化vmfit=;%平均适应度vx=; %最优适应度it=1; % 迭代计数器% 开始进化while it=size (I)%奇数个处理break;endsite=fix(1+L*rand(1);%fix 向零取整,L=22.%site 属于 1-22. temp=vtemp(I(i,1),:);%交换的暂存变量。T vtemp(I(i,1),site:end)=vtemp(I(i+1,1),site:end);% 交换后面的数值 vtemp(I(i+1,1),site:end)=temp(:,site:end);%交换endv=vtemp;%复制返回end%Function init_populationfunction v=init_population(n1,s1) v=round(rand(n1,s1);%rand 产生随机数, %round 四舍五入取整 end%function vtemp=roulette(v,fit)N=size(v); %N 向量fitmin=abs(min(fit);% 最小值和绝对值 fit=fitmin+fit; %最小值加上步长,保证 fit=0.%fitS=sum(fit);%求向量的和for i=1:NSI=S*rand(1);%rand随机数。0-s之间的一个随机数for j=1:Nif SI=sum(fit(1:j) %累加列值vtemp(i,:)=v(j,:);% 选中此样本breakendendendend
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!