How do i minimze my fuzzy logic controller using genetic algorithm?
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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.
0 commentaires
Réponses (1)
Stephan
le 22 Sep 2018
Modifié(e) : Stephan
le 22 Sep 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 commentaires
Voir également
Catégories
En savoir plus sur Genetic Algorithm dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!