我正在使用MATLAB优化工具进行遗传算法优化。
我要打开一个名为“m_0a4”的新脚本
FitnessFunction = @m_0b4;
NumberOfVariables = 1;
[x,fval] = ga(FitnessFunction, numberOfVariables);%Here I minimize the difference y
我要打开第二个新脚本,命名为“m_0b4”
function y = m_0b4(x)
prompt = 'write it down';
i = input(prompt) %the input value
y = x - i
我有一个可执行的fortran代码,我想从MATLAB运行。
我尝试使用以下两个选项,但得到了错误:
!/home/atrac/code case172.jcl
error:- ls: cannot access ./id: No such file or directory
ls: cannot access ./id: No such file or directory
!gnome-terminal --command "./home/myhome/code case12.jcl"
error: There was an error creating child pro
我有以下适应度函数:
function f = objfun(x,t)
f = x.*(t-x);
end
当我尝试使用MATLAB的优化工具和遗传算法(ga)求解器将此代码用作适应度函数时,我得到以下错误:
Error running optimization. Not enough input arguments.
我知道函数只有两个变量,我传递给它的是这几个变量,所以我不知道为什么我会得到这个错误。
有人能帮我解决这个问题吗?
我使用ga MATLAB优化工具来最小化目标函数。
我在同一个脚本main.m中创建了两个函数。如果我不使用变量a,那么遗传算法工作得很好。当我引入变量a,在main.m中的每个迭代a = fcn( a );中调用它时,就会得到一个错误,输入参数不够。(第5行)
%% main function
function [x,fval,a] = main()
nvars = 1; a = 0; % assign the number of values and the variable a
a = fcn( a,t ); % call the fitness fcn
[x,fval] = g