merge.c

来自「多目标算法的DSP实现。可以直接在DSP平台上进行多目标优化」· C语言 代码 · 共 38 行

C
38
字号
# include <stdio.h># include <math.h>

# include "malloc.h"# include "global.h"// 把两个群体合并成一个群体void merge (population *pop1, population *pop2, population *pop3){    int i, j;    for (i=0; i<POPSIZE; i++)    {        copy_ind (&(pop1->ind[i]), &(pop3->ind[i]));    }    for (i=0, j=POPSIZE; i<POPSIZE; i++, j++)    {        copy_ind (&(pop2->ind[i]), &(pop3->ind[j]));    }    return;}// 把个体 'ind1' 拷贝到个体 'ind2'void copy_ind (individual *ind1, individual *ind2){    int i;
	for (i=0; i<NX; i++)
	{
		ind2->x[i] = ind1->x[i];
	}
	for (i=0; i<NOBJ; i++)
	{
		ind2->obj[i] = ind1->obj[i];
	}    ind2->rank = ind1->rank;    ind2->crowd_dist = ind1->crowd_dist;    return;}

⌨️ 快捷键说明

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