• 大小: 3.2MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-30
  • 语言: C/C++
  • 标签:

资源简介

这是主要的遗传算法代码之一,可以VC++6.0下运行。

资源截图

代码片段和文件信息

/* Memory allocation and deallocation routines */

# include 
# include 
# include 

# include “global.h“
# include “rand.h“

/* Function to allocate memory to a population */
void allocate_memory_pop (population *pop int size)
{
    int i;
    pop->ind = (individual *)malloc(size*sizeof(individual));
    for (i=0; i    {
        allocate_memory_ind (&(pop->ind[i]));
    }
    return;
}
void allocate_memory_pop_rediv (population *pop int size int obj_num)
{
int i;
    pop->ind = (individual *)malloc(size*sizeof(individual));
    for (i=0; i    {
        allocate_memory_ind (&(pop->ind[i]) obj_num);
    }
    return;

}

/* Function to allocate memory to an individual */
void allocate_memory_ind (individual *ind)
{
    int j;
    if (nreal != 0)
    {
        ind->xreal = (double *)malloc(nreal*sizeof(double));
    }
    if (nbin != 0)
    {
        ind->xbin = (double *)malloc(nbin*sizeof(double));
        ind->gene = (int **)malloc(nbin*sizeof(int));
        for (j=0; j        {
            ind->gene[j] = (int *)malloc(nbits[j]*sizeof(int));
        }
    }
    ind->obj = (double *)malloc(nobj*sizeof(double));
    if (ncon != 0)
    {
        ind->constr = (double *)malloc(ncon*sizeof(double));
    }
    return;
}

void allocate_memory_ind_rediv (individual *ind int obj_num)
{
    int j;
    if (nreal != 0)
    {
        ind->xreal = (double *)malloc(nreal*sizeof(double));
    }
    if (nbin != 0)
    {
        ind->xbin = (double *)malloc(nbin*sizeof(double));
        ind->gene = (int **)malloc(nbin*sizeof(int));
        for (j=0; j        {
            ind->gene[j] = (int *)malloc(nbits[j]*sizeof(int));
        }
    }
    ind->obj = (double *)malloc(obj_num*sizeof(double));
    if (ncon != 0)
    {
        ind->constr = (double *)malloc(ncon*sizeof(double));
    }
    return;
}

/* Function to deallocate memory to a population */
void deallocate_memory_pop (population *pop int size)
{
    int i;
    for (i=0; i    {
        deallocate_memory_ind (&(pop->ind[i]));
    }
    free (pop->ind);
    return;
}

/* Function to deallocate memory to an individual */
void deallocate_memory_ind (individual *ind)
{
    int j;
    if (nreal != 0)
    {
        free(ind->xreal);
    }
    if (nbin != 0)
    {
        for (j=0; j        {
            free(ind->gene[j]);
        }
        free(ind->xbin);
        free(ind->gene);
    }
    free(ind->obj);
    if (ncon != 0)
    {
        free(ind->constr);
    }
    return;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        246  2009-12-06 09:57  基本nsga2\nsga2r.plg

     文件       2606  2008-05-20 05:16  基本nsga2\allocate.c

     文件      10124  2006-11-15 11:00  基本nsga2\all_pop.out

     文件      99328  2009-12-06 21:23  基本nsga2\nsga2r.ncb

     文件        470  2005-03-24 15:36  基本nsga2\auxiliary.c

     文件      21432  2006-11-15 11:00  基本nsga2\best_pop.out

     文件       8395  2009-12-06 09:56  基本nsga2\gd.c

     文件       1092  2009-12-02 15:40  基本nsga2\eval.c

     文件      41984  2005-12-07 17:59  基本nsga2\crossover.ncb

     文件      48640  2005-12-07 17:59  基本nsga2\crossover.opt

     文件       1602  2005-11-06 15:21  基本nsga2\crossover.plg

     文件      10110  2009-11-24 20:50  基本nsga2\score.c

     文件       5222  2009-11-28 19:53  基本nsga2\global.h

     文件       1017  2005-03-24 09:40  基本nsga2\decode.c

     文件      19430  2009-12-03 11:19  基本nsga2\gd_wfg.c

     文件       4878  2009-08-28 22:43  基本nsga2\crowddist.c

     文件     263452  2009-09-04 16:35  基本nsga2\POF_data\paretoDTLZ7.dat

     文件      51371  2009-08-29 09:15  基本nsga2\POF_data\zdt3_PF.txt

     文件     174019  2009-06-25 21:05  基本nsga2\POF_data\wfg3_PF.txt

     文件     170449  2009-06-25 21:05  基本nsga2\POF_data\wfg9_PF.txt

     文件     176566  2009-06-25 21:05  基本nsga2\POF_data\wfg1_PF.txt

     文件     172691  2009-06-25 21:05  基本nsga2\POF_data\wfg4_PF.txt

     文件     170217  2009-06-25 21:05  基本nsga2\POF_data\wfg6_PF.txt

     文件     169487  2009-06-25 21:05  基本nsga2\POF_data\wfg7_PF.txt

     文件     170480  2009-06-25 21:05  基本nsga2\POF_data\wfg8_PF.txt

     文件      43966  2009-06-25 21:06  基本nsga2\POF_data\wfg2_PF.txt

     文件     170186  2009-06-25 21:06  基本nsga2\POF_data\wfg5_PF.txt

     文件     530000  2008-09-09 19:23  基本nsga2\POF_data\UF10.dat

     文件      36000  2008-09-09 19:23  基本nsga2\POF_data\UF1.dat

     文件      36000  2008-09-09 19:23  基本nsga2\POF_data\UF2.dat

............此处省略188个文件信息

评论

共有 条评论

相关资源