导航:首页 > 五金知识 > ga工具箱遗传算法

ga工具箱遗传算法

发布时间:2022-05-19 16:52:05

A. 遗传算法GA工具箱 的二进制bitstring相关选项怎么设置

  1. 既然你用工具箱算,是二进制还是bit string没啥区别,你也看不到。

  2. bounds指的是变量的版取值范围,比如y = x1 +x2,
    其中权1<x1<5,3<x2<4,那lower就该填1,3,upper填5,4.

  3. integer variable indices用于整形变量,比如你的x1范围是从[1,9],但是是1.2.3.4.5.6.7.8.9,而不是2.36,3.36这样的浮点值。

B. 如何提高matlab的GA工具箱(遗传算法)的运算精度

options.TolFun=1e-10

C. 如何调用MATLAB遗传算法工具箱

1、打开MATLAB软件。

D. 用遗传算法工具箱怎么求解线性约束函数

Matlab遗传算法工具箱是可以施加的非线性隐性约束条件的。例如:
min z= 3050*x1³+0.25*x2;
其中x1定义域[-0.381,0.381],x2定义域[-100,100]
求目标函数值为10时的x1、x2值。
求解结果
x1=0.14169943480903302 x2=5.289387991237991
function [c,ceq]=ga_con(x) %非线性约束条件函数
c=10-(3050*x(1)^3+0.25*x(2));
ceq=[];

E. 遗传算法工具箱的具体使用

matlab遗传算法工具箱函数及实例讲解 核心函数:
(1)function [pop]=initializega(num,bounds,eevalFN,eevalOps,options)--初始种群的生成函数
【输出参数】
pop--生成的初始种群
【输入参数】
num--种群中的个体数目
bounds--代表变量的上下界的矩阵
eevalFN--适应度函数
eevalOps--传递给适应度函数的参数
options--选择编码形式(浮点编码或是二进制编码)[precision F_or_B],如
precision--变量进行二进制编码时指定的精度
F_or_B--为1时选择浮点编码,否则为二进制编码,由precision指定精度)
(2)function [x,endPop,bPop,traceInfo] = ga(bounds,evalFN,evalOps,startPop,opts,...
termFN,termOps,selectFN,selectOps,xOverFNs,xOverOps,mutFNs,mutOps)--遗传算法函数
【输出参数】
x--求得的最优解
endPop--最终得到的种群
bPop--最优种群的一个搜索轨迹
【输入参数】
bounds--代表变量上下界的矩阵
evalFN--适应度函数
evalOps--传递给适应度函数的参数
startPop-初始种群
opts[epsilon prob_ops display]--opts(1:2)等同于initializega的options参数,第三个参数控制是否输出,一般为0。如[1e-6 1 0]
termFN--终止函数的名称,如['maxGenTerm']
termOps--传递个终止函数的参数,如[100]
selectFN--选择函数的名称,如['normGeomSelect']
selectOps--传递个选择函数的参数,如[0.08]
xOverFNs--交叉函数名称表,以空格分开,如['arithXover heuristicXover simpleXover']
xOverOps--传递给交叉函数的参数表,如[2 0;2 3;2 0]
mutFNs--变异函数表,如['boundaryMutation multiNonUnifMutation nonUnifMutation unifMutation']
mutOps--传递给交叉函数的参数表,如[4 0 0;6 100 3;4 100 3;4 0 0]
【问题】求f(x)=x+10*sin(5x)+7*cos(4x)的最大值,其中0<=x<=9
【分析】选择二进制编码,种群中的个体数目为10,二进制编码长度为20,交叉概率为0.95,变异概率为0.08
【程序清单】
%编写目标函数
function[sol,eval]=fitness(sol,options)
x=sol(1);
eval=x+10*sin(5*x)+7*cos(4*x);
%把上述函数存储为fitness.m文件并放在工作目录下
initPop=initializega(10,[0 9],'fitness');%生成初始种群,大小为10
[x endPop,bPop,trace]=ga([0 9],'fitness',[],initPop,[1e-6 1 1],'maxGenTerm',25,'normGeomSelect',...
[0.08],['arithXover'],[2],'nonUnifMutation',[2 25 3]) %25次遗传迭代
运算借过为:x =
7.8562 24.8553(当x为7.8562时,f(x)取最大值24.8553)
注:遗传算法一般用来取得近似最优解,而不是最优解。
遗传算法实例2
【问题】在-5<=Xi<=5,i=1,2区间内,求解
f(x1,x2)=-20*exp(-0.2*sqrt(0.5*(x1.^2+x2.^2)))-exp(0.5*(cos(2*pi*x1)+cos(2*pi*x2)))+22.71282的最小值。
【分析】种群大小10,最大代数1000,变异率0.1,交叉率0.3
【程序清单】
%源函数的matlab代码
function [eval]=f(sol)
numv=size(sol,2);
x=sol(1:numv);
eval=-20*exp(-0.2*sqrt(sum(x.^2)/numv)))-exp(sum(cos(2*pi*x))/numv)+22.71282;
%适应度函数的matlab代码
function [sol,eval]=fitness(sol,options)
numv=size(sol,2)-1;
x=sol(1:numv);
eval=f(x);
eval=-eval;
%遗传算法的matlab代码
bounds=ones(2,1)*[-5 5];
[p,endPop,bestSols,trace]=ga(bounds,'fitness')
注:前两个文件存储为m文件并放在工作目录下,运行结果为
p =
0.0000 -0.0000 0.0055
大家可以直接绘出f(x)的图形来大概看看f(x)的最值是多少,也可是使用优化函数来验证。matlab命令行执行命令:
fplot('x+10*sin(5*x)+7*cos(4*x)',[0,9])

F. MATLAB的遗传算法工具箱GA是怎么用的

把这些文件装载工具箱的文件夹路径下,在把MATLAB读的路径设置在那里,直接输入文件名和需要输入的内容就行了。

G. 遗传算法时是用GA工具箱还是直接写源代码好

用GA工具箱比较受制约,直接编代码更自由,且能锻炼编码能力

H. 用遗传算法工具箱求解一个多目标优化问题,现在需要一个matlab程序,求高人指点

用遗传算法工具箱求解一个多目标优化问题的步骤:

1、根据题意,建立自定专义目标函数,ga_fun1(x)

2、在命令窗属口中,输入

>> optimtool %调用遗传算法工具箱

3、在遗传算法工具箱界面中,分别对Fitnessfunction框内输入@ga_fun1();A框内输入[1,1,1];b框内输入16;Aeq框内输入[];beq框内输入[];Lower框内输入[0,0,0];Upper框内输入[];

4、单击Start。得到x=4.508 y=2.513 z=1.912值。

I. matlab优化工具箱中遗传算法的问题

ga就是在穷举不可能完成时,用一种方式找到最优解
ga工具的完整形式如下表示
[X,FVAL,EXITFLAG,OUTPUT,POPULATION,SCORES] =
GA(FITNESSFCN,NVARS,A,b,Aeq,beq,lb,ub,NONLCON,options)
X是最优自变量
FVAL是求得的最优值
其他以此是推出标志,结构体,终止时的总群,终止时种群函数值
后半部分以此是目标函数,目标函数自变量个数
A和b是线性约束不等式AX〈b
Aeq和beq是一对线性等式约束,AeqX=beq
lb是X值下限,ub是X值下限
NONLCON是非线性约束函数 options是运行方式。这两个可以写函数自己完成,也可默认
函数默认计算最小值,计算最大值要加负号

非线性约束条件的写法
function [c,ceq]=nonlcon(x) 定义函数自变量是x,x可以是一列矩阵
c=[]; c表示非线性等式约束,以为没有,所以为空
ceq=[x(1)-2*(x(2))^2;
x(1)+X(2) ] ceq是非线性不等式约束,默认ceq<=0,ceq可以为一列矩阵.
>>

阅读全文

与ga工具箱遗传算法相关的资料

热点内容
尼尔机械纪元6o战术刀怎么获得 浏览:887
温州地区最大的阀门厂 浏览:76
冷库制冷机电流偏低是什么原因 浏览:985
阀门膜头是什么材质 浏览:81
踏板车后轮轴承垫片怎么取下来 浏览:213
机床结构示意图怎么画 浏览:380
暖气片阀门儿向左是开向右是开 浏览:527
无锡军青机械制造有限公司怎么样 浏览:776
仪表如何隔离 浏览:618
对开门冷藏柜不制冷怎么办 浏览:282
根据图1实验装置图回答 浏览:349
铜与浓硝酸反应实验装置 浏览:564
滚子轴承两个轴怎么接 浏览:129
玉器雕刻用什么机械设备 浏览:311
小丸工具箱提取字幕 浏览:860
机床各部分静刚度曲线怎么绘制 浏览:482
淋浴阀门有点漏水怎么办 浏览:638
仓库小五金件的摆放要求 浏览:48
消防管道阀门用明杆阀门 浏览:917
检查阀门不正确的方法是什么意思 浏览:429