f5.c
来自「压缩包内内容有:《遗传算法——理论、应用与软件实现》中所附源程序C或C++代码文」· C语言 代码 · 共 48 行
C
48 行
/************************************************ file f5.c ****/
static int a[2][25] ={
{
-32, -16, 0, 16, 32, -32, -16, 0, 16, 32, -32, -16, 0, 16, 32,
-32, -16, 0, 16, 32, -32, -16, 0, 16, 32 },
{
-32, -32, -32, -32, -32, -16, -16, -16, -16, -16,
16, 16, 16, 16, 16, 32, 32, 32, 32, 32 }
};
static int K = 500;
double eval(str, length, vect, genes)
char str[]; /* string representation */
int length; /* length of bit string */
double vect[]; /* floating point representation */
int genes; /* number of elements in vect */
{
register int i, j;
register int n;
double ans;
double fj;
double cj;
double prod;
double diff;
ans = 1.0/K;
for (j=0; j<25; j++)
{
fj = cj = j+1;
for (i=0; i<genes; i++)
{
diff = vect[i] - a[i][j];
for ( prod=1, n=0; n<6; n++)
prod *= diff;
fj += prod;
}
ans += 1.0 / fj;
}
return (1.0 / ans);
}
/** end of file **/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?