- function y=f1(x)
- y=sum(x.^2)
- endfunction
- PopSize=100;
- Proba_cross=0.7;
- Proba_mut=0.1;
- NbGen=5;
- Log =%T;
- ga_params =init_param();
- ga_params = add_param(ga_params,"dimension",2);
- ga_params = add_param(ga_params,"minbound",[-100;-100]);
- ga_params= add_param(ga_params,"maxbound",[100;100]);
- PlotNumber=1;
- errors=[];
- popSizes=[];
- i=1;
- N=30;
- MaxNEval=500;
- for PopSize =10:1:50
- ANbGen =MaxNEval/PopSize;
- errors(i)=0;
- for n=1:N
- [pop_opt, fobj_pop_opt] = ..
- optim_ga(f1,PopSize,ANbGen,Proba_mut,Proba_cross,Log,ga_params);
- errors(i)=errors(i)+fobj_pop_opt(1);
- end
- popSizes(i)=PopSize;
- errors(1)=errors(i)/N;
- i=i+1;
- end
- plot(popSizes,log(errors));
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- function y=f1(x)
- y=sum(x.^2)
- endfunction
- PopSize=26;
- Proba_cross=0.7;
- Proba_mut=0.07;
- NbGen=5;
- Log =%T;
- ga_params =init_param();
- ga_params = add_param(ga_params,"dimension",2);
- ga_params = add_param(ga_params,"minbound",[-100;-100]);
- ga_params= add_param(ga_params,"maxbound",[100;100]);
- PlotNumber=1;
- errors=[];
- probacross=[];
- i=1;
- N=30;
- MaxNEval=500;
- for Proba_cross =0.3:0.1:0.9
- ANbGen =MaxNEval/PopSize;
- errors(i)=0;
- for n=1:N
- [pop_opt, fobj_pop_opt] = ..
- optim_ga(f1,PopSize,ANbGen,Proba_mut,Proba_cross,Log,ga_params);
- errors(i)=errors(i)+fobj_pop_opt(1);
- end
- probacross(i)=Proba_cross;
- errors(1)=errors(i)/N;
- i=i+1;
- end
- plot(probacross,log(errors));
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- function y=f1(x)
- y=sum(x.^2)
- endfunction
- PopSize=100;
- Proba_cross=0.7;
- Proba_mut=0.1;
- NbGen=5;
- Log =%T;
- ga_params =init_param();
- ga_params = add_param(ga_params,"dimension",2);
- ga_params = add_param(ga_params,"minbound",[-100;-100]);
- ga_params= add_param(ga_params,"maxbound",[100;100]);
- PlotNumber=1;
- errors=[];
- popSizes=[];
- i=1;
- N=30;
- MaxNEval=500;
- for PopSize =10:1:50
- ANbGen =MaxNEval/PopSize;
- errors(i)=0;
- for n=1:N
- [pop_opt, fobj_pop_opt] = ..
- optim_ga(f1,PopSize,ANbGen,Proba_mut,Proba_cross,Log,ga_params);
- errors(i)=errors(i)+fobj_pop_opt(1);
- end
- popSizes(i)=PopSize;
- errors(1)=errors(i)/N;
- i=i+1;
- end
- plot(popSizes,log(errors));
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- /
- function y=f1(x)
- y=sum(x.^2)
- endfunction
- PopSize=32;
- Proba_cross=0.7;
- Proba_mut=0.1;
- NbGen=5;
- Log =%T;
- ga_params =init_param();
- ga_params = add_param(ga_params,"dimension",2);
- ga_params = add_param(ga_params,"minbound",[-100;-100]);
- ga_params= add_param(ga_params,"maxbound",[100;100]);
- PlotNumber=1;
- errors=[];
- popSizes=[];
- i=1;
- N=30;
- MaxNEval=500;
- for PopSize =10:1:50
- ANbGen =MaxNEval/PopSize;
- errors(i)=0;
- for n=1:N
- [pop_opt, fobj_pop_opt] = ..
- optim_ga(f1,PopSize,ANbGen,Proba_mut,Proba_cross,Log,ga_params);
- errors(i)=errors(i)+fobj_pop_opt(1);
- end
- popSizes(i)=PopSize;
- errors(1)=errors(i)/N;
- i=i+1;
- end
- plot(popSizes,log(errors));