要运行遗传算法默认选项,通话GA
与语法
[X,FVAL] = GA(@fitnessfun,nvars)
输入参数GA
是
@fitnessfun
-计算适应度函数的文件的函数句柄。计算目标函数说明了如何编写此文件。
nvars
- 为适应度函数的自变量的数量。
输出参数是
X
- 最后一点
FVAL
- 适应度函数的值X
对于附加的输入和输出参数的描述,请参见参考页GA
。
您可以运行中所描述的例子最大限度地减少Rastrigin的功能从通过输入命令行
RNG(1, '捻线机')%的再现性[X,FVAL] = GA(@ rastriginsfcn,2)
这将返回
优化终止:在健身值小于options.FunctionTolerance平均变化。X = -1.0421 -1.0018 FVAL = 2.4385
您可以指定任何可用的选项GA
通过传递选项
作为输入参数,以GA
使用语法
[X,FVAL] = GA(@ fitnessfun,nvars,[],[],[],[],[],[],[],选项)
此语法不指定任何线性等式,线性不等式,或非线性约束。
创建选项
使用功能optimoptions
。
选项= optimoptions(@ga);
这将返回选项
与它的字段的默认值。GA
使用这些默认值,如果你不选择作为输入参数传递。
每个选项的值被存储在的场选项
, 如options.PopulationSize
。您可以通过输入显示的任何值选项
随后一段和字段的名称。例如,为了显示布居的遗传算法的大小,输入
options.PopulationSize ANS = '50时numberOfVariables <= 5,其他200'
去创造选项
与字段值,该值是从默认不同 - 例如,以组族群大小
至One hundred.
而不是它的默认值50
- 进入
选项= optimoptions( 'GA', '族群大小',100);
这将创建选项
与所有值设置为默认值,除了族群大小
,它被设置为One hundred.
。
如果现在进入,
GA(@ fitnessfun,nvars,[],[],[],[],[],[],[],选项)
GA
运行遗传算法的人口规模One hundred.
。
如果随后决定改变在另一个领域选项
如设定PlotFcn
至@gaplotbestf
,它在每一代,电话绘制最好的适应度函数值optimoptions
与语法
选项= optimoptions(选项 'PlotFcn',@ plotbestf);
这保留的所有字段的当前值选项
除了PlotFcn
,其被改变为@plotbestf
。需要注意的是,如果你省略输入参数选项
,optimoptions
重置族群大小
它的默认值。
您还可以设置两种族群大小
和PlotFcn
与单个命令
选项= optimoptions( 'GA', '族群大小',100 'PlotFcn',@ plotbestf);
要获得有关遗传算法的性能的更多信息,你可以调用GA
与语法
[X,FVAL,exitflag,输出,人口,分数] = GA(@fitnessfcn,nvars)
除了X
和FVAL
,此函数返回以下附加输出参数:
exitflag
- 对应于该算法终止的原因的整数值
产量
- 关于算法的每一代的性能含有结构信息
人口
- 最后的人群
分数
- 最后得分
查看GA
参考页有关这些参数的更多信息。