我有以下健身功能:
function f = objfun(x,t)
f = x.*(t-x);
end
当我尝试使用MATLAB的优化工具和遗传算法(ga)求解器将此代码用作适应度函数时,我收到以下错误:
Error running optimization. Not enough input arguments.
我知道该函数只有2个变量而且我传递了那几个变量所以我不知道为什么会出现这个错误。
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
我从未在Matlab工作,因为我听说这很慢(参见例如这个帖子:Performance Tradeoff - When is MATLAB better/slower than C/C++)。
对于遗传算法,您需要尽可能高的速度,因为对于复杂的问题,您需要非常大的人口...
我建议使用C / C ++。这是我为解决函数优化问题而做的遗传算法的一个非常简单的C实现:http://create-technology.blogspot.ro/2015/03/a-genetic-algorithm-for-solving.html