第八章使用matlab遗传算法工具
Ⅰ 如何使用matlab自带遗传算法工具箱就是这
直接在命令窗口里边输入gatool就行了,用遗传算法还可以使用ga函数,具体使用格式可以在help系统里看ga,
Ⅱ 怎么使用matlab遗传算法工具箱GUI
恩
有的
你只要在matlab的command中输入gatool就会出现遗传工具箱的gui界面所有通过命令行实现的options都可以内通过这个界面设置,很容方便也很傻瓜,挺好用的如果需要,还可以使用菜单中的file将gui文件保存为m代码,这样就不需要自己写程序,却得到了m代码
Ⅲ 怎么调用matlab遗传算法工具箱啊
工具箱要安装到指来定的路径,好久源没有用了,具体我也记不住了,你可以
网络搜索
一下。路径安装不对就会出问题。如果安装对了,你用help命令显示一下函数.
函数的m文件不用运行,直接调用就可以。eval=-eval;
以后eval变为负的了,而ga函数要求参数必须是正的。
Ⅳ 使用matlab遗传算法工具箱如何加入目标函数中变量的约束条件啊,可否在M文件中加
首先回答你第一个问题:怎么加入变量的约束条件?
打开遗传算法工具箱的窗体中会有下图所示的选项,即是约束条件的编辑
至于添加的方式,这里要重点的提一下,首先将问题抽象成规划问题的标准形式(如果你不懂什么是标准形式的话,建议你去翻阅运筹学那本书,上告诉你什么是标准形式),然后用矩阵语言写出来,最后将矩阵的系数填写到线性不等约束和线性相等约束中,同时定义所求变量x的上界和下界(记住有多少个变量就有多少列,如果你发现有些条件中没有出现某些变量,那么就应该用0补足,这个是matlab解决规划问题与lingo想比较麻烦的一个地方,)。
然后回答你第二个问题:可否在M文件中添加约束条件?
当然可以,界面的东西是为了方便不熟悉matlab编程的人而设计出来的,但是其底层的算法和接口肯定是有的。
碰到不懂的函数,请记得:help函数名
helpga之后会得到一下一些函数
ga
//这个是定义
Syntax //这个是语法也即是调用的规则
x=ga(fitnessfcn,nvars)
x=ga(fitnessfcn,nvars,A,b)
x=ga(fitnessfcn,nvars,A,b,Aeq,beq)
x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB)
x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon)
x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)
x=ga(problem)
[x,fval]=ga(...)
[x,fval,exitflag]=ga(...)直接给你将最长的那个吧
x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)
X是返回所求的解
fitnessfcn是适应度函数
nvars是适应度函数中所含变量的维数
A是不等式约束中变量的系数矩阵,b是不等式约束中不含变量的值矩阵
Aeq是等式约束中变量的系数矩阵,beq是等式约束中不含变量的值矩阵
LB是下界,UB是上界
nonlcon是非线性约束条件
至于options嘛 我也木有用过,其实你也可以不用管的。
懂了木有呢,亲?
Ⅳ 如何调用MATLAB遗传算法工具箱
直接在命令窗口里边抄输入gatool就行了,用遗传算法还可以使用ga函数,具体使用格式可以在help系统里看ga,你还可以按照如下步骤打开遗传算法工具箱:1,打开MATLAB,2点击左下方的START按钮
3,点toolboxes,打开后选择Genetic
Algorithm
and
Direct
Search
然后就可以进入gatool了,然后就会弹出ga工具箱(注:我的版本是7.7的,不同版本可能不同),希望对你有用哈!
Ⅵ 如何调用matlab遗传算法工具箱中的bs2rv、crtbase、crtbp等函数
网上下载遗传工具箱(网上主要有三类,基本差不多都有你说的这几个函数)。然后加入路径就可以使用了。
Ⅶ 雷英杰编著的《MATLAB遗传算法工具箱及应用》第七章的第一个例子
程序倒数第六行应该是variable',还有注释掉倒数12行。把hold on的分号都去掉。
figure(1);
fplot('variable.*sin(10*pi*variable)+2.0',[-1,2]);
nind=40;
maxgen=25;
preci=20;
ggap=0.9;
trace=zeros(2,maxgen);
fieldd=[20;-1;2;1;0;1;1];
chrom=crtbp(nind, preci);
gen=0;
variable=bs2rv(chrom,fieldd);
objv=variable.*sin(10*pi*variable)+2.0
while gen<maxgen
fitnv=ranking(-objv);
selch=select('sus',chrom,fitnv,ggap);
selch=recombin('xovsp',selch,0.7);
selch=mut(selch);
variable=bs2rv(selch,fieldd);
objvsel=variable.*sin(10*pi*variable)+2.0;
[chrom objv]=reins(chrom,selch,1,1,objv,objvsel);
gen=gen+1;
[y,i]=max(objv);
hold on;
%plot(variable(i),y,'bo')
trace(1,gen)=max(objv);
trace(2,gen)=sum(objv)/length(objv);
end
variable=bs2rv(chrom,fieldd);
hold on
grid;
plot(variable',objv','b*');
figure(2)
plot(trace(1,:)');
hold on
plot(trace(2,:)','-.');grid;
legend('解的变化','种群均值的变化')
Ⅷ 求雷英杰《Matlab遗传算法工具箱及应用》高清版.pdf
MATLAB遗传算法工具箱及应用.pdf 文件大小:9.58 M
http://vdisk.weibo.com/s/v5Um8CGqbhhd
MATLAB遗传算法工具箱及应用.pdf 文件大小:9.57 M
http://vdisk.weibo.com/s/uaKaXz7OfNCIm
资源已上传网络云回盘或微盘 提问者下载无需答财富值
请及时采纳,谢谢
Ⅸ matlab 遗传算法工具箱怎么用
推荐用shefiled的GA工具箱,里面的子函数写的很好,调用很方便。 配合一本gA的书 学的很快;
另外 关于你这个问题, 你的目标函数和约束函数是否在工作目录下,还有 在调用的时候 在函数名前面加@试试, 希望能帮到你