I am getting error Not enough input arguments..

조회 수: 4 (최근 30일)
Don Alexander
Don Alexander 2015년 5월 29일
답변: Walter Roberson 2015년 5월 29일
function q = simple_sa(x)
z1 = xlsread('staad.xlsx','A:A');
z2= xlsread('staad.xlsx','B:B');
z1_new=z1(2)
z2_new=z2(2)
q = z1_new* (x(1)^2 + x(2)) ^2 + (z2_new + x(1))^2
FitnessFunction = @simple_sa;
numberOfVariables = 2;
[x,fval] = ga(FitnessFunction,numberOfVariables)
I am getting error Not enough input arguments..
Above code was a trial...
My problem is to use ga code in such a wat that the matlab reads values from an excel sheet , the it passes it(like values of z above) to the objective and constraint func, the running ga code for each value taken and returns the output untill all the cells are read.... help......most wanted........
  댓글 수: 2
Salaheddin Hosseinzadeh
Salaheddin Hosseinzadeh 2015년 5월 29일
Dear Don,
Please have a look at this link first to see how you have to format your question. It's so annoying to follow it that I didn't even bother to do so!
Muhammad Usman Saleem
Muhammad Usman Saleem 2015년 5월 29일
Firstly format your codes then i shall gives you answer

댓글을 달려면 로그인하십시오.

답변 (1개)

Walter Roberson
Walter Roberson 2015년 5월 29일
function do_my_fittings
z1 = xlsread('staad.xlsx','A:A');
z2 = xlsread('staad.xlsx','B:B');
L = min(length(z1), length(z2));
xvals = zeros(L, 2);
for K = 1 : L
xvals(K, :) = simple_fitness(z1(K), z2(K));
end
end
function x = simple_fitness(z1i, z2i)
q = @(x) z1i .* (x(1)^2 - x(2)).^2 + (z2i - x(1)).^2;
FitnessFunction = q;
numberOfVariables = 2;
[x,fval] = ga(FitnessFunction,numberOfVariables)
end

카테고리

Help CenterFile Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by