The concept of "multi-objective optimization" Pareto winning
Source: Internet
Author: User
To verify that my view of Pareto is correct, I've also read a lot of source code, where non-dominated sorting genetic algorithm II developed by Kalyanmoy Deb et Al. Nsgaii--professorkalyan source code is the most reference value, it is clear that I Pareto the concept of the winner is correct, but how the Pareto front end of the group is obviously in the Professor Xiaolan Paper analysis of the deviation, Obviously if according to Pareto Superior concept to produce the front end, of course, the front end can not be many, this problem how to solve, I still depressed, below is today read the source code, for everyone reference
/**//*routine Comparing the individuals*/
/**//* Comparison of dominant relationships among individuals */
int Indcmp3 (FLOAT * ptr1, float * ptr2)
... {
float Fit1[maxfun],fit2[maxfun];
int i,value,m,n;
for (i = 0;i < Nfunc; i++)
... {
Fit1[i] = *ptr1++;
Fit2[i] = *ptr2++;
}
Initialize the fitness function of two individuals on each target
m = 0;
n = 0;
while (M < Nfunc && Fit1[m] <= fit2[m])
... {
if (fit1[m]== fit2[m]) n++;
m++;
}
if (m = = Nfunc)//Loop down all targets meet constraints fit1[m] <= Fit2[m]
... {
if (n = = nfunc) value = 3;//if all equals then. There is no relationship between the two individuals.
else value = 1;//has a better-than-so-individual 1 dominant individual 2 understood correctly/*value = 1 for dominationg*/
}
Else
... {
m = 0;
n = 0;
while (M < Nfunc && Fit1[m] >= fit2[m])//Turn it Over
... {
if (fit1[m]== fit2[m]) n++;
m++;
}
if (m = = Nfunc)
... {
if (n! = nfunc)
Value = 2; Individual 1 is dominated by individual 2/*value = 2 for dominated */
else value = 3;
}
else value = 3; /**//*value = 3 for incomparable*/
}
return value;
}
If you could just mention something, of course I'm the happiest.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.