📄 evaluate_objective.c
字号:
# include <stdio.h>
# include <math.h>
# include "global.h"
// 计算群体适应度
void evaluate_pop (population *pop)
{
int i;
for (i=0; i<POPSIZE; i++)
{
evaluate_ind(&(pop->ind[i]));
}
}
// 计算个体适应度
void evaluate_ind (individual *ind)
{
evaluate_objective (ind->x, ind->obj);
}
// 适应度函数
void evaluate_objective (double *x, double *obj)
{
int i;
double f1,f2,sum,g;
sum = 0.0;
f1 = 1 - exp(-4*x[0])*pow(sin(6*PI*x[0]), 6.0);
for(i=1; i<NX; i++)
{
sum = sum + x[i]/4;
}
g = 1 + 9*pow(sum, 0.25);
f2 = g*(1 - pow(f1/g, 2.0));
obj[0] = f1;
obj[1] = f2;
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -