亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? getpar~1.c

?? 遺傳算法工具
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*
SGPC: Simple Genetic Programming in C
(c) 1993 by Walter Alden Tackett and Aviram Carmi
 
 This code and documentation is copyrighted and is not in the public domain.
 All rights reserved. 
 
 - This notice may not be removed or altered.
 
 - You may not try to make money by distributing the package or by using the
   process that the code creates.
 
 - You may not distribute modified versions without clearly documenting your
   changes and notifying the principal author.
 
 - The origin of this software must not be misrepresented, either by
   explicit claim or by omission.  Since few users ever read sources,
   credits must appear in the documentation.
 
 - Altered versions must be plainly marked as such, and must not be
   misrepresented as being the original software.  Since few users ever read
   sources, credits must appear in the documentation.
 
 - The authors are not responsible for the consequences of use of this 
   software, no matter how awful, even if they arise from flaws in it.
 
If you make changes to the code, or have suggestions for changes,
let us know!  (gpc@ipld01.hac.com)
*/

#ifndef lint
static char getparams_c_rcsid[]="$Id: getparams.c,v 2.18 1993/04/23 01:56:25 gpc-avc Exp gpc-avc $";
#endif

/*
 *
 * $Log: getparams.c,v $
 * Revision 2.18  1993/04/23  01:56:25  gpc-avc
 * Added COMPRESS macro so that the compression command for checkpoint
 * files is easily changed in Makefile
 *
 * Revision 2.17  1993/04/22  07:39:12  gpc-avc
 * Removed old log messages
 *
 * Revision 2.16  1993/04/17  03:03:01  gpc-avc
 * Added a test to check if the load_from_file file exists
 *
 *
 */

#include <stdio.h>
#include <malloc.h>
#include <errno.h>
#include "gpc.h"
#include "malloc4.h"

#ifdef ANSI_FUNC

VOID getparams(
  int		argc,
  char		**argv,
  int 		*numpops,
  int		*numgens,
  int		*demes,
  int		*demerows,
  int		*demecols,	       
  int 		*start_gen,
  FILE		**ckpt_file,
  pop_struct 	**pop,
  pop_struct    ****grid
  )
#else

VOID getparams(argc,argv,numpops,numgens,demes,demerows,demecols,start_gen,
	       ckpt_file,pop,grid)
  int		argc;
  char		**argv;
  int 		*numpops;
  int 		*numgens;
  int		*demes;
  int		*demerows;
  int		*demecols;	       
  int 		*start_gen;
  FILE		**ckpt_file;
  pop_struct 	**pop;
  pop_struct    ****grid;
#endif
{
  int	i,j;
  int   arg_offset = 0;
  int   argp = 1;
  FILE  *paramfile;
  char ckptfile[255];
  static char usage[] = 
  "%s: Usage: %s [-d rows cols] npops ngens paramfile | 'none'... [seed]\n%s: Usage: %s -r ckpt_filename\n";


  if (argc < 2) {
    fprintf(stderr, usage, argv[0],argv[0],argv[0],argv[0]);
    exit(1);
  }

  if (!strcmp(argv[1],"-r")) {
    if (argc < 3) {
      fprintf(stderr, usage, argv[0],argv[0], argv[0],argv[0]);
      fprintf(stderr, "%s: Missing checkpoint file name.\n",argv[0]);
      exit(1);
    }
    if ((*ckpt_file = fopen(argv[2],"r")) != (FILE *)NULL) {
      recover_params (*ckpt_file,numpops,numgens,demes,demerows,demecols,pop,
		      grid,start_gen);
    }
    else {
      fprintf(stderr, "%s: Checkpoint file not found: '%s'.\n",
	      argv[0],argv[2]);
      exit(1);
    }
  }
  else {
    if (!strcmp(argv[1],"-d")) {
      if (argc < 4) {
	fprintf(stderr, usage, argv[0],argv[0], argv[0],argv[0]);
	fprintf(stderr, "%s: Missing deme rows or cols.\n",argv[0]);
	exit(1);
      }
      if (argc < 7) {
	fprintf(stderr, usage,  argv[0],argv[0], argv[0],argv[0]);
	if (argc < 6) {
	  fprintf(stderr, "%s: Missing number of populations or generations.\n",
		  argv[0]);
	}
	else {
	  fprintf(stderr, "%s: Missing parameter file name.\n",argv[0]);
	  fprintf(stderr,
		  "%s: Use 'none' as the file name in order to use defaults.\n",
		  argv[0]);
	}
	exit(1);
      }
      *demes = TRUE;
      arg_offset += 3;
      argp++;
    }
    else {
      if (argc < 4) {
	fprintf(stderr, usage, argv[0],argv[0], argv[0],argv[0]);
	if (argc < 3) {
	  fprintf(stderr, "%s: Missing number of populations or generations.\n",
		  argv[0]);
	}
	else {
	  fprintf(stderr,	"%s: Missing parameter file name.\n",argv[0]);
	  fprintf(stderr,
		  "%s: Use 'none' as the file name in order to use defaults.\n",
		  argv[0]);
	}
	exit(1);
      }
      *demes = FALSE;
      *demerows = 0;
      *demecols = 0;
    }
    
    if (*demes) {
      *demerows = -1;
      sscanf(argv[argp++],"%d",demerows);
      if (*demerows < 1) {
	fprintf(stderr, "%s: Deme rows has to be greater than 1: '%s'.\n",
		argv[0], argv[argp-1]);
	exit(1);
      }
      
      *demecols = -1;
      sscanf(argv[argp++],"%d",demecols);
      if (*demecols < 1) {
	fprintf(stderr, "%s: Deme cols has to be greater than 1: '%s'.\n",
		argv[0], argv[argp-1]);
	exit(1);
      }
    }
    
    *numpops = -1;
    sscanf(argv[argp++],"%d",numpops);
    if (*numpops < 1) {
      fprintf(stderr, 
	      "%s: Number of populations has to be greater than 1: '%s'.\n",
	      argv[0], argv[argp-1]);
      exit(1);
    }
    
    *numgens = -1;
    sscanf(argv[argp++],"%d",numgens);
    if (*numgens < 1) {
      fprintf(stderr, 
	      "%s: Number of generations has to be greater than 1: '%s'.\n",
	      argv[0], argv[argp-1]);
      exit(1);
    }
    
    *pop = (pop_struct *) malloc(*numpops*sizeof(pop_struct));
    if (*demes) {
      *grid = (pop_struct ***) malloc2(*demerows,*demecols*sizeof(pop_struct *));
      for (i=0;i<*demerows;i++) {
	for (j=0;j<*demecols;j++) {
	  (*grid)[i][j] = (pop_struct *) malloc(*numpops*sizeof(pop_struct));
	}
      }
    }
    
    if (argc < *numpops+3+arg_offset) {
      fprintf(stderr, "%s: Missing parameter file name.\n", argv[0]);
      fprintf(stderr,
	      "%s: Use 'none' as the file name in order to use defaults.\n",
	      argv[0]);
      exit(1);
    }
    
    for(i=0;i<*numpops;i++,argp++) {
      defaultparams(*pop,i);
      if (strcasecmp(argv[argp],"none")) {
	if ((paramfile = fopen(argv[argp],"r")) != (FILE *)NULL) {
	  readparams(*pop,i,paramfile);
	  fclose(paramfile);
	}
	else {
	  fprintf(stderr, "%s: Parameter file not found: '%s'.\n",
		  argv[0],argv[argp]);
	  exit(1);
	}
      }
    }
    
    
    if (argc == (j=*numpops+4+arg_offset)) {
      long seed = -1;
      sscanf(argv[j-1],"%d",&seed);
      if (seed < 0) {
	fprintf(stderr, "%s: Bad seed value: '%s'.\n", argv[0], argv[j-1]);
	exit(1);
      }
      set_seed((unsigned long)seed);
    }
    if (argc > (j=*numpops+4+arg_offset)) {
      fprintf(stderr, usage, argv[0],argv[0], argv[0],argv[0]);
      fprintf(stderr, "%s: Too many arguments on command line.\n",argv[0]);
      exit(1);
    }
  }

  if (*demes) {
    for(i=0;i<*numpops;i++) {
      if ((*pop)[i].population_size%((*demerows) * (*demecols))) {
	fprintf(stderr,
		"population %d size (%d) must be evenly divisible by rows*cols (%d)\n",
		i,(*pop)[i].population_size, ((*demerows) * (*demecols)));
	exit(1);
      }
    }
  }
  
  for (i=0;i<argc;i++) {
    printf("%s ",argv[i]);
  }
  printf("\n\n");
  printf("Random seed:            %ld\n",(unsigned long)get_seed());
  printf("Number of populations:  %d\n",*numpops);
  printf("Number of generations:  %d\n",*numgens);
  if (*demes) {
    printf("Number of deme rows:    %d\n",*demerows);
    printf("Number of deme columns: %d\n",*demecols);
  }
  if (CHECKPOINT_FREQUENCY) {
    sprintf(ckptfile,"gpc_%ld_%d.ckpt",gethostid(),getpid());
    printf("Checkpointing to:       %s\n",ckptfile);
  }
  if (*start_gen) {
    printf("Restarting from gen:    %d\n", *start_gen+1);
  }
  printf("\n");

  argp = arg_offset+3;
  for(i=0;i<*numpops;i++,argp++) {
    if (*start_gen) {
      printf("Reading parameters for population %d from: %s\n\n",
	     i,argv[2]);
    }
    else if (strcasecmp(argv[argp],"none")) {
      printf("Reading parameters for population %d from: %s\n\n",
	     i,argv[argp]);
    }
    else {
      printf("Using default parameters for population %d\n\n",i);
    }
    writeparams(*pop,i,stdout);
    printf("\n");
  }

}


#ifdef ANSI_FUNC

VOID defaultparams(
  pop_struct 	*pop,
  int		i
  )
#else

VOID defaultparams(pop,i)
  pop_struct 	*pop;
  int		i;
#endif
{
  FILE	*paramfile;

  set_seed((unsigned long)11287);
  CHECKPOINT_FREQUENCY			= 0;
  START_GEN				= 0;

  pop[i].population_size 		= 100;
  pop[i].steady_state			= FALSE;
  pop[i].load_from_file 		= (char *) malloc(132*sizeof(char));
  pop[i].load_from_file[0] 		= '\0';
  pop[i].max_depth_for_new_trees 	= 6;
  pop[i].max_depth_after_crossover 	= 17; 
  pop[i].max_mutant_depth 		= 4;
  pop[i].grow_method 			= GROW;
  pop[i].selection_method 		= FITNESSPROP;
  pop[i].tournament_K 			= 7;
  pop[i].deme_search_radius_sigma	= 1.0;
  pop[i].crossover_func_pt_fraction 	= 0.695;
  pop[i].crossover_any_pt_fraction 	= 0.195;
  pop[i].fitness_prop_repro_fraction	= 0.095;
  pop[i].parsimony_factor 		= 0.0;

  if ((paramfile = fopen("default.in","r")) != (FILE *)NULL) {
    readparams(pop,i,paramfile);
    fclose(paramfile);
  }
}

#ifdef ANSI_FUNC

VOID readparams(
  pop_struct 	*pop,
  int		i,
  FILE 		*f
  )
#else

VOID readparams(pop,i,f)
  pop_struct 	*pop;
  int		i;
  FILE		*f;
#endif
{
  char	buf[132], name[132], val[132];
  unsigned long seed;
  FILE *tmp;

  while (fgets(buf,132,f) != (char *)NULL) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线国产观看| 久久久久久久久久久久久久久99 | 九九视频精品免费| 成人污视频在线观看| 欧美日韩一区二区电影| 国产人成亚洲第一网站在线播放| 亚洲综合免费观看高清完整版| 国产在线麻豆精品观看| 欧美日韩成人综合| 亚洲天堂福利av| 风间由美一区二区三区在线观看 | 日韩激情中文字幕| 国产精品一二三区在线| 欧美日韩激情一区二区三区| 日韩一区在线看| 国v精品久久久网| 精品欧美一区二区在线观看| 亚洲成人资源在线| 色美美综合视频| 亚洲柠檬福利资源导航| www.综合网.com| 国产日本亚洲高清| 国产美女视频91| 精品精品欲导航| 免费不卡在线观看| 91精品国产综合久久小美女| 亚洲成人av一区二区| 色屁屁一区二区| 亚洲乱码国产乱码精品精98午夜 | www国产成人免费观看视频 深夜成人网| 国产精品久久久久久久久免费桃花| 日本欧美肥老太交大片| 欧美情侣在线播放| 一级日本不卡的影视| 在线免费亚洲电影| 夜夜嗨av一区二区三区| 欧美怡红院视频| 亚洲综合一区在线| 欧美亚洲综合在线| 日韩国产在线观看一区| 欧美一区二区三区四区视频| 蜜桃av一区二区| 精品福利在线导航| 国产99久久久精品| 国产揄拍国内精品对白| 日韩欧美一级二级| 蜜臀久久99精品久久久久久9| 欧美精品一二三区| 极品瑜伽女神91| 国产女人aaa级久久久级| 95精品视频在线| 一区二区三区欧美视频| 欧美日韩视频第一区| 精品在线你懂的| 国产精品天干天干在观线| 99久久久国产精品| 午夜精品久久久久久久久久| 欧美mv日韩mv国产网站| 成人综合婷婷国产精品久久 | 99久久国产综合色|国产精品| 国产精品国产精品国产专区不蜜| 91黄色小视频| 麻豆精品视频在线观看| 国产精品欧美一区喷水| 欧美亚洲愉拍一区二区| 久久av老司机精品网站导航| 中文天堂在线一区| 欧美午夜寂寞影院| 国产乱子轮精品视频| 亚洲女爱视频在线| xfplay精品久久| 一本高清dvd不卡在线观看| 日韩av一级电影| 亚洲欧美怡红院| 欧美xxxxx裸体时装秀| av成人老司机| 美国欧美日韩国产在线播放| 亚洲欧洲三级电影| 欧美一级欧美三级在线观看| 成人一区二区三区视频| 五月天中文字幕一区二区| 中文字幕国产一区二区| 666欧美在线视频| 91免费国产在线| 国内精品在线播放| 婷婷丁香激情综合| 亚洲男帅同性gay1069| 久久先锋影音av| 欧美一区二区高清| 欧美亚洲精品一区| av在线播放不卡| 国产精品亚洲成人| 久久超碰97中文字幕| 亚洲一区二区三区四区不卡| 亚洲国产成人私人影院tom | 欧美成人一区二区| 欧美在线你懂的| 91免费观看在线| 成人性生交大片免费看视频在线| 久久se这里有精品| 日本大胆欧美人术艺术动态| 一区二区三区四区蜜桃| 中文字幕中文乱码欧美一区二区| 精品国产不卡一区二区三区| 欧美高清视频www夜色资源网| 色婷婷综合久色| 99国产精品久久久久| 风间由美中文字幕在线看视频国产欧美 | 国产亚洲婷婷免费| 日韩美一区二区三区| 欧美一区二区在线看| 欧美日韩一区不卡| 欧美日韩视频在线第一区| 欧美日韩一区不卡| 制服.丝袜.亚洲.中文.综合| 欧美日韩国产综合视频在线观看 | 久久国产三级精品| 伦理电影国产精品| 久久99久久久久久久久久久| 美女一区二区三区| 老色鬼精品视频在线观看播放| 久久国产精品色| 国内精品写真在线观看| 国产伦精一区二区三区| 成人午夜视频免费看| 99国产精品视频免费观看| 欧美在线观看一区二区| 欧美日韩夫妻久久| 欧美一区二区三区视频免费| 日韩免费观看高清完整版| 精品999在线播放| 中文字幕精品三区| 亚洲国产三级在线| 免费在线欧美视频| 国产成人精品影视| 色综合久久久久久久久| 精品视频在线免费| 欧美tk丨vk视频| 国产精品久久久久久久久动漫| 亚洲综合清纯丝袜自拍| 免费在线观看成人| 成人午夜在线播放| 欧美喷水一区二区| 久久久精品欧美丰满| 亚洲欧美另类久久久精品2019| 日韩av中文字幕一区二区| 国产传媒日韩欧美成人| 欧美在线免费视屏| 久久美女高清视频| 亚洲午夜视频在线| 黄网站免费久久| 91福利在线观看| 久久亚洲捆绑美女| 亚洲品质自拍视频| 久久99国产精品久久99| 91首页免费视频| 欧美成人bangbros| 亚洲制服丝袜在线| 成人黄色a**站在线观看| 7777女厕盗摄久久久| 亚洲欧美自拍偷拍| 看电视剧不卡顿的网站| 色欧美片视频在线观看在线视频| 欧美不卡视频一区| 亚洲午夜久久久| 成人激情开心网| 2014亚洲片线观看视频免费| 亚洲国产三级在线| eeuss影院一区二区三区| 日韩欧美国产综合一区| 亚洲欧美一区二区在线观看| 国产一区激情在线| 欧美精品v国产精品v日韩精品| 国产精品乱人伦| 国产麻豆9l精品三级站| 日韩区在线观看| 午夜一区二区三区在线观看| 99久久精品国产麻豆演员表| 国产亚洲成av人在线观看导航| 日韩福利电影在线观看| 欧美日韩dvd在线观看| 一区二区三区在线观看动漫| 成人福利视频网站| 国产亚洲精品资源在线26u| 蜜桃av一区二区在线观看| 欧美久久久久久久久中文字幕| 樱桃国产成人精品视频| 91丨porny丨国产| 亚洲乱码国产乱码精品精可以看| 97精品国产97久久久久久久久久久久| 久久蜜臀精品av| 国产成人三级在线观看| 欧美精品一区二区三区蜜臀| 久久电影网电视剧免费观看| 日韩视频在线一区二区| 蜜桃视频在线观看一区| 日韩一区国产二区欧美三区| 蜜桃一区二区三区在线观看| 日韩三级免费观看| 国内精品在线播放|