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

📄 7.htm

📁 遗传算法的详细描述文档,文档中附带一定的代码解释
💻 HTM
📖 第 1 页 / 共 5 页
字号:
  print_population(pop_size,x2_vari+tot_eq,print_pop); <br>

} <br>

int find_parent(live,pop_size) <br>

int pop_size; <br>

IVECTOR live; <br>

{ <br>

  int i,temp,t1,t2=0,tot=0; <br>

  for(i=1; i<=pop_size; i++) <br>

    tot = tot + live[i]; <br>

  if(tot==0) <br>

    { <br>

      printf("No agents to select\n"); <br>

      exit(1); <br>

    } <br>

  temp = irange_ran(1,tot); <br>

  tot = 0; <br>

  i = 1; <br>

  do{ <br>

  do{ <br>

    if(live[i]!=0) <br>

      t1 = i; <br>

    tot = tot + live[i++]; <br>

  }while(tot<temp); <br>

  live[t1]--; <br>

  return(t1); <br>

} <br>

void sort(MinMax,eval,population,pop_size,x2_vari) <br>

int MinMax, <br>

    x2_vari, <br>

    pop_size; <br>

VECTOR eval; <br>

MATRIX population; <br>

{ <br>

  int i,j,k; <br>

  switch(MinMax) <br>

    { <br>

    case 0 : <br>

      for(i=1; i<=pop_size; i++) <br>

 for(j=i+1; j<=pop_size; j++) <br>

   { <br>

     if(eval[i] > eval[j]) <br>



       { <br>

  swap(&eval[i],&eval[j]); <br>

  for(k=1; k<= x2_vari; k++) <br>

    swap(&population[i][k],&population[j][k]); <br>

       } <br>

   } <br>

      break; <br>

    case 1 : <br>

      for(i=1; i<=pop_size; i++) <br>

 for(j=i+1; j<=pop_size; j++) <br>

   { <br>

     if(eval[i] < eval[j]) <br>

       { <br>

  swap(&eval[i],&eval[j]); <br>

  for(k=1; k<= x2_vari; k++) <br>

    swap(&population[i][k],&population[j][k]); <br>

       } <br>

   } <br>

      break; <br>

    default: <br>

      fprintf(output,"Incorrect data: Must be a 0 or 1"); <br>

      exit(1); <br>

      exit(1); <br>

    } <br>

} <br>

void swap(x,y) <br>

float *x,*y; <br>

{ <br>

  float temp; <br>

  temp = *x; <br>

  *x = *y; <br>

  *y = temp; <br>

} <br>

void assign_probab(probab,pop_size,Q) <br>

int pop_size; <br>

float Q; <br>

VECTOR probab; <br>

{ <br>

  int i; <br>

  for(i=1; i<=pop_size; i++) <br>

    probab[i] = Q * x_pow_y(1-Q,i-1); <br>

⌨️ 快捷键说明

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