Greaf 发表于 2009-3-23 11:13

[求助]遗传算法执行

参考文献及百度上列举出来的遗传算法实例,将initializega.m和ga.m导入工作目录后,完全按文献上的程序写出函数为
function=fitness(sol,options)
x=sol(1);
val=1/[(x-0.2)^2+0.01]+1/[(x-0.8)^2+0.04]-4;


fplot('1/[(x-0.2)^2+0.01]+1/[(x-0.8)^2+0.04]-4',[-1 2])
hold on
initPop=initializega(10,[-1 2],'fitness');
plot(initPop(:,1),initPop(:,2),'b*')
xlabel('x');ylabel('f(x)');
hold on
=ga([-1 2],'fitness',[],initPop,,'maxGenTerm',80,'normGeomSelect',,['arithXover'],,'nonUnifMutation',);
plot(endPop(:,1),endPop(:,2),'y*')
figure(2)
plot(trace(:,1),trace(:,3),'y-')
hold on
plot(trace(:,1),trace(:,2),'r-')
xlabel('generation');ylabel('Fitness')
legend('解的变化','种群平均值的变化');


为何在执行的过程中提示
??? Error using ==> ga
Too many input arguments.
Error in ==> Untitled3 at 7
=ga([-1 2],'fitness',[],initPop,,'maxGenTerm',80,'normGeomSelect',,['arithXover'],,'nonUnifMutation',);

首次接触遗传算法,请大家多多指教,谢谢

ChaChing 发表于 2009-3-23 13:56

建议楼主再help ga!

shenzhouxuan 发表于 2009-3-23 17:36

你好~你的程序通了么?

Greaf 发表于 2009-3-23 18:20

暂未,还在研究中...

shenzhouxuan 发表于 2009-3-23 19:06

你的initializega.m没问题么
能运行么?

给我看看initializega.m的程序好么?我的运行有问题

[ 本帖最后由 ChaChing 于 2009-3-23 21:36 编辑 ]

shenzhouxuan 发表于 2009-3-23 19:07

给我看看initializega.m的程序好么?我的运行有问题

ydlcsu 发表于 2009-3-23 19:30

回复 楼主 Greaf 的帖子

ga的调用方式是这样的吗??

ChaChing 发表于 2009-3-23 22:46

ga没学过, 刚刚help下 (r2006a)
x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)
好像与楼主调用方式不同!?

yufeng 发表于 2009-3-24 10:16

ga是自己编的? 检查一下各变量的维数

Greaf 发表于 2009-3-24 10:55

ga.m是复制toolbox里的到工作目录
initializega.m是复制这个论坛里happy发的代码
ga的调用方式是按照文献中写法弄的,本想模仿着来学习研究下的...

leei8210 发表于 2009-3-25 15:52

遗传算法程序=ga(,'opt'[],initPop,,'maxGenTerm', 25, 'normGeomSelect',,['arithXover'],,'nonUnifMutation',);各部分的意思,特别是'normGeomSelect',,是用的什么选择法?网上说是函数实现归一化几何选择,我没有找到可供参考的东西,请讲解,谢谢!
页: [1]
查看完整版本: [求助]遗传算法执行