how can i formulate this fitness function ?
조회 수: 3 (최근 30일)
이전 댓글 표시
hello everybody...
my problem is : i have matrix consist of 4 columns and 200 rows , the fist column represent the index , the second column contain the values of weights ( in kg) , third column contain the values of length(in meter) , the fourth column contains the values of age(in days) . how i can formulate this problem in genetic algorithm (e.g NSGA-II)in matlab , such that finally i want the number vector or pareto-front that contain (low value of weight, high value of length, less value of age ) simultaneously. for example:
1 : 20 70 45
2: 49 10 67
3: 100 15 46
4: .... and so on .
And what is form of the fitness function? Please help me...
With sincere thanks and appreciation.....
댓글 수: 0
채택된 답변
Star Strider
2018년 3월 10일
I am not certain what you want to do, so I leave the design of the fitness function to you.
Something like this could work:
M = [(1:25)' randi(100, 25, 3)]; % Create Data Matrix
fitfcn = @(x) [x(1).*min(M(2)), x(2).*max(M(3)), x(3).*min(M(4))];
X = gamultiobj(fitfcn, 3)
Mval = [X(:,1).*min(M(:,2)), X(:,2).*max(M(:,3)), X(:,3).*min(M(:,4))];
figure(1)
scatter3(Mval(:,1), Mval(:,2), Mval(:,3), 'p')
grid on
figure(2)
stem3(Mval(:,1), Mval(:,2), Mval(:,3), 'p', 'Filled')
grid on
댓글 수: 6
Star Strider
2018년 3월 10일
There are probably people here on MATLAB Answers who have the expertise you need. That is the reason I suggested that you ask a new Question, this time describing the problem you actually want to solve.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Genetic Algorithm에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!