sel_d.c

来自「遗传算法的一个源码集成」· C语言 代码 · 共 36 行

C
36
字号
#define TEST 0# include "genet.h"/* ver 2 21 Jan 89 */double random_fr();select_dead(){	int no_of_dead;	int selected[POP];	double prob1[POP];	int p;	double q;		for (p=0; p<pop; ++p)	   prob1[pop - p-1] = prob[p];	  #if TEST	printf("prob1:\n");	print_darray(prob1);#endif	for (p=0; p< pop; ++p) dead[p] = 0;	no_of_dead = 0;	while (no_of_dead < reprod)		/* mod 1 Jan 89 to use same array as for parents */	{		q = random_fr();		p = 0;		while (q > prob[p] && p < pop) p++;#if TEST		printf("chosen prob = %f: p = %d: dead[pop - p-1] = %d\n",q,pop - p-1,dead[pop - p-1]);#endif	   	   if ((dead[pop - p-1] == 0)&&(p < pop-1)) {dead[pop - p-1] = 1; no_of_dead++;}   	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?