⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sga.h

📁 遗传算法的简单程序
💻 H
字号:
//头文件sga.h 

/*----------------------------------------------------------------------------*/ 
/* sga.h - global declarations for main(), all variable declared herein must  */
/*         also be defined as extern variables in external.h !!!              */ 
/*----------------------------------------------------------------------------*/ 

#define LINELENGTH 80                                    /* width of printout */ 
#define BITS_PER_BYTE 8            /* number of bits per byte on this machine */
#define UINTSIZE (BITS_PER_BYTE*sizeof(unsigned))    /* # of bits in unsigned */
#include <stdio.h>

/* file pointers */ 
FILE *outfp, *infp;

/* Global structures and variables */
struct individual 
{ 

    unsigned *chrom;                  /* chromosome string for the individual */
    double   fitness;                            /* fitness of the individual */
    int      xsite;                               /* crossover site at mating */
    int      parent[2];                  /* who the parents of offspring were */
    int      *utility;            /* utility field can be used as pointer toa */
                   /*namically allocated, application-specific data structure */ 
}; 

struct bestever
{ 
    unsigned *chrom;        /* chromosome string for the best-ever individual */ 
    double   fitness;                  /* fitness of the best-ever individual */
    int      generation;                      /* generation which produced it */ 
}; 

struct individual *oldpop;                  /* last generation of individuals */
struct individual *newpop;                  /* next generation of individuals */
struct bestever bestfit;                         /* fittest individual so far */
double sumfitness;                    /* summed fitness for entire population */
double max;                                  /* maximum fitness of population */
double avg;                                  /* average fitness of population */
double min;                                  /* minumum fitness of population */
float  pcross;                                    /* probability of crossover */
float  pmutation;                                  /* probability of mutation */
int    numfiles;                                      /* number of open files */
int    popsize;                                            /* population size */
int    lchrom;                     /* length of the chromosome per individual */
int    chromsize;            /* number of bytes needed to store lchrom string */
int    gen;                                      /* current generation number */
int    maxgen;                                   /* maximum generation number */
int    run;                                             /* current run number */
int    maxruns;                             /* maximum number of runs to make */
int    printstrings = 1;     /* flag to print chromosome strings (default on) */
int    nmutation;                             /* number of mutations */
int    ncross;                               /* number of crossovers */ 
/* Application-dependent declarations go after here... */ 

⌨️ 快捷键说明

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