Azzera filtri
Azzera filtri

How do i minimze my fuzzy logic controller using genetic algorithm?

4 visualizzazioni (ultimi 30 giorni)
I am trying to minimize the function of my fuzzy logic controller using the genetic algorithm. Please find attached the code for the fuzzy logic controller. The error I keep getting is shown below when I use my call function ;
M=[14000,15555,16000,17000,18000,19000; 14555,15555,16000,17555,18530,19000] options = gaoptimset('InitialPopulation',M) [x fval] = ga(@FuzzyForecast,6, options)
Error using FuzzyForecast (line 9) Not enough input arguments.
Error in createAnonymousFcn>@(x)fcn(x,FcnArgs{:}) (line 11) fcn_handle = @(x) fcn(x,FcnArgs{:});
Error in makeState (line 47) firstMemberScore = FitnessFcn(state.Population(initScoreProvided+1,:));
Error in gaunc (line 40) state = makeState(GenomeLength,FitnessFcn,Iterate,output.problemtype,options);
Error in ga (line 356) [x,fval,exitFlag,output,population,scores] = gaunc(FitnessFcn,nvars, ...
Caused by: Failure in initial user-supplied fitness function evaluation. GA cannot continue.

Risposte (1)

Stephan
Stephan il 22 Set 2018
Modificato: Stephan il 22 Set 2018
Hi,
ga passes only one x with 6 entries to the objective function. Try the attached version. I could not test, since i do not have Fuzzy Logic Toolbox. The change are these lines at the beginning:
function z=FuzzyForecast(x)
x1 = x(1);
x2 = x(2);
x3 = x(3);
x4 = x(4);
x5 = x(5);
x6 = x(6);
The other lines are kept as they were.
Best regards
Stephan
  3 Commenti
Stephan
Stephan il 22 Set 2018
Modificato: Stephan il 22 Set 2018
As i said i can not help solving this new error, due to missing toolbox for fuzzy.
Perhaps it is a good idea to ask this in a new question. Maybe someone other reads it here and can help.
The problem regarding ga seems to be solved.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by