Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Not enough input arguments

조회 수: 2 (최근 30일)
tevzia
tevzia 2013년 6월 21일
마감: MATLAB Answer Bot 2021년 8월 20일
Hi, I try to create a genetic algorithm model and i try to create a fitness function to calculate fitness of every child. However, Matlab gives a function input error.
Here is the code that I wrote so far,
_
function [ fitness ] = calcfitness( breedingpop, nbreeding, penalty )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
for i=1:nbreeding
fitness = (breedingpop(nbreeding).penalty - breedingpop(i).penalty) / (breedingpop(nbreeding).penalty - breedingpop(1).penaltybreedingpop)
end
i know "penalty" is not the correct way to add as an argument. Does anyone have any idea how I could add penalty as an argument. Thanks

답변 (1개)

Azzi Abdelmalek
Azzi Abdelmalek 2013년 6월 21일
편집: Azzi Abdelmalek 2013년 6월 21일
function [ fitness ] = calcfitness( breedingpop, nbreeding, penalty )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
for i=1:nbreeding
fitness = (breedingpop(nbreeding).(penalty) - breedingpop(i).penalty) / (breedingpop(nbreeding).(penalty) - breedingpop(1).penaltybreedingpop)
end
penalty should be a strindg
  댓글 수: 6
tevzia
tevzia 2013년 6월 21일
in the main code
childfitness = calcfitness(breedingpop, nbreeding, penalty )
Azzi Abdelmalek
Azzi Abdelmalek 2013년 6월 21일
penalty should be a string
childfitness = calcfitness(breedingpop, nbreeding, 'penalty' )

이 질문은 마감되었습니다.

태그

Community Treasure Hunt

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

Start Hunting!

Translated by