如何应用随机交叉(算术/分散/两点)在使用自动生成的文件从优化遗传算法工具箱?
7视图(30天)
显示旧的评论
我准备了一个代码在MATLAB优化工具箱似乎给予公平的结果不同的优化函数,但目前,准确性是高度依赖于交叉选择的类型。
利用不同的交叉和提高效率,我想申请一个随机交叉每次迭代后即算术,分散或两点。我怎么能这样做呢?
7评论
沃尔特·罗伯森
2020年8月11日
选择= optimoptions(选项,“CrossoverFcn”@MyCustomCrossover)
函数varargout = MyCustomCrossover(变长度输入宗量)
crossfcns = {@crossoverarithmetic, @crossoverheuristic、@crossoveritnermediate @crossoverscattered, @crossoversinglepoint, @crossovertwopoint};
选择= crossfcns{兰迪(长度(crossfcns))};
[varargout{}): =选择(变长度输入宗量{:});
结束
接受的答案
沃尔特·罗伯森
2021年1月25日
选择= optimoptions(选项,“CrossoverFcn”@MyCustomCrossover)
函数varargout = MyCustomCrossover(变长度输入宗量)
crossfcns = {@crossoverarithmetic, @crossoverheuristic、@crossoveritnermediate @crossoverscattered, @crossoversinglepoint, @crossovertwopoint};
选择= crossfcns{兰迪(长度(crossfcns))};
[varargout{}): =选择(变长度输入宗量{:});
结束