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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? test_de.c

?? 關(guān)于遺傳算法的一些見地。特別是關(guān)于簡單遺傳程序設(shè)計的實現(xiàn)。
?? C
字號:
/**********************************************************************  test_de.c **********************************************************************  test_de - Test program for GAUL.  Copyright ?2002-2005, Stewart Adcock <stewart@linux-domain.com>  All rights reserved.  The latest version of this program should be available at:  http://gaul.sourceforge.net/  This program is free software; you can redistribute it and/or modify  it under the terms of the GNU General Public License as published by  the Free Software Foundation; either version 2 of the License, or  (at your option) any later version.  Alternatively, if your project  is incompatible with the GPL, I will probably agree to requests  for permission to use the terms of any other license.  This program is distributed in the hope that it will be useful, but  WITHOUT ANY WARRANTY WHATSOEVER.  A full copy of the GNU General Public License should be in the file  "COPYING" provided with this distribution; if not, see:  http://www.gnu.org/ **********************************************************************  Synopsis:	Test program for GAUL's differential evolution algorithm.		This program aims to solve a function of the form		(0.75-A)+(0.95-B)^2+(0.23-C)^3+(0.71-D)^4 = 0 **********************************************************************/#include "gaul.h"struct strategies_t  {  char			*label;   ga_de_strategy_type	strategy;  ga_de_crossover_type	crossover;  int			num_perturbed;  double		crossover_factor;  double		weighting_factor;  double		weighting_factor2;  };static struct strategies_t strategy[]={        { "DE/best/1/exp (DE0)",     GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 0.5, 0.5 },        { "DE/best/1/exp (DE0)",     GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 2.0, 0.0 },        { "DE/best/2/exp",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 0.5, 0.5 },        { "DE/best/2/exp",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 2.0, 0.0 },        { "'DE/best/3/exp'",         GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 3, 0.8, 0.5, 0.5 },        { "'DE/best/3/exp'",         GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_EXPONENTIAL, 3, 0.8, 2.0, 0.0 },        { "DE/rand/1/exp (DE1)",     GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 0.5, 0.5 },        { "DE/rand/1/exp (DE1)",     GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 2.0, 0.0 },        { "DE/rand/2/exp",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 0.5, 0.5 },        { "DE/rand/2/exp",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 2.0, 0.0 },        { "'DE/rand/3/exp'",         GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 3, 0.8, 0.5, 0.5 },        { "'DE/rand/3/exp'",         GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_EXPONENTIAL, 3, 0.8, 2.0, 0.0 },        { "DE/rand-to-best/1/exp",   GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 0.5, 0.5 },        { "DE/rand-to-best/1/exp",   GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_EXPONENTIAL, 1, 0.8, 2.0, 0.0 },        { "'DE/rand-to-best/2/exp'", GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 0.5, 0.5 },        { "'DE/rand-to-best/2/exp'", GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_EXPONENTIAL, 2, 0.8, 2.0, 0.0 },        { "DE/best/1/bin",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 0.5, 0.5 },        { "DE/best/1/bin",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 2.0, 0.0 },        { "DE/best/2/bin",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 0.5, 0.5 },        { "DE/best/2/bin",           GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 2.0, 0.0 },        { "'DE/best/3/bin'",         GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    3, 0.8, 0.5, 0.5 },        { "'DE/best/3/bin'",         GA_DE_STRATEGY_BEST,       GA_DE_CROSSOVER_BINOMIAL,    3, 0.8, 2.0, 0.0 },        { "DE/rand/1/bin",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 0.5, 0.5 },        { "DE/rand/1/bin",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 2.0, 0.0 },        { "DE/rand/2/bin",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 0.5, 0.5 },        { "DE/rand/2/bin",           GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 2.0, 0.0 },        { "'DE/rand/3/bin'",         GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    3, 0.8, 0.5, 0.5 },        { "'DE/rand/3/bin'",         GA_DE_STRATEGY_RAND,       GA_DE_CROSSOVER_BINOMIAL,    3, 0.8, 2.0, 0.0 },        { "DE/rand-to-best/1/bin",   GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 0.5, 0.5 },        { "DE/rand-to-best/1/bin",   GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_BINOMIAL,    1, 0.8, 2.0, 0.0 },        { "'DE/rand-to-best/2/bin'", GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 0.5, 0.5 },        { "'DE/rand-to-best/2/bin'", GA_DE_STRATEGY_RANDTOBEST, GA_DE_CROSSOVER_BINOMIAL,    2, 0.8, 2.0, 0.0 },        { NULL, 0, 0, 0, 0.0, 0.0 } };/**********************************************************************  test_score()  synopsis:	Fitness function.  parameters:  return:  updated:	25 Nov 2002 **********************************************************************/boolean test_score(population *pop, entity *entity)  {  double		A, B, C, D;	/* Parameters. */  A = ((double *)entity->chromosome[0])[0];  B = ((double *)entity->chromosome[0])[1];  C = ((double *)entity->chromosome[0])[2];  D = ((double *)entity->chromosome[0])[3];  entity->fitness = -(fabs(0.75-A)+SQU(0.95-B)+fabs(CUBE(0.23-C))+FOURTH_POW(0.71-D));  return TRUE;  }/**********************************************************************  test_generation_callback()  synopsis:	Generation callback  parameters:  return:  updated:	21 Mar 2005 **********************************************************************/boolean test_generation_callback(int generation, population *pop)  {/* * This is a easy method for implementing randomly selected * scaling factor (F in original paper) for each generation, as * suggested in: * * Karaboga D., Okdem, S. "A simple and global optimization algorithm * for engineering problems: differential evolution algorithm", * Elec. Engin. 12:53-60 (2004). * * Uncomment, if desired. *//*  pop->de_params->weighting_factor = random_double_range(-2.0, 2.0);*//* * Write rank 1 solution every tenth generation.  Note, that this is * not neccesarily the best solution because DE doesn't require the * population to be sorted, as genetic algorithms usually do. */  if ( generation%10 == 0)    printf( "%d: A = %f B = %f C = %f D = %f (fitness = %f)\n",            generation,            ((double *)pop->entity_iarray[0]->chromosome[0])[0],            ((double *)pop->entity_iarray[0]->chromosome[0])[1],            ((double *)pop->entity_iarray[0]->chromosome[0])[2],            ((double *)pop->entity_iarray[0]->chromosome[0])[3],            pop->entity_iarray[0]->fitness );  return TRUE;  }/**********************************************************************  test_seed()  synopsis:	Seed genetic data.  parameters:	population *pop		entity *adam  return:	success  last updated: 25 Nov 2002 **********************************************************************/boolean test_seed(population *pop, entity *adam)  {/* Checks. */  if (!pop) die("Null pointer to population structure passed.");  if (!adam) die("Null pointer to entity structure passed.");/* Seeding. */  ((double *)adam->chromosome[0])[0] = random_double(2.0);  ((double *)adam->chromosome[0])[1] = random_double(2.0);  ((double *)adam->chromosome[0])[2] = random_double(2.0);  ((double *)adam->chromosome[0])[3] = random_double(2.0);  return TRUE;  }/**********************************************************************  main()  synopsis:	Main function.  parameters:  return:  updated:	21 Mar 2005 **********************************************************************/int main(int argc, char **argv)  {  population		*pop;		/* Population of solutions. */  int			i=0;		/* Loop variable over strategies. */  random_seed(23091975);  log_init(LOG_NORMAL, NULL, NULL, FALSE);  while ( strategy[i].label != NULL )    {    if ( strategy[i].weighting_factor != strategy[i].weighting_factor2 )      {      printf( "Strategy %s ; C = %f ; F = rand( %f, %f )\n",            strategy[i].label,            strategy[i].crossover_factor,            strategy[i].weighting_factor, strategy[i].weighting_factor2 );      }    else      {      printf( "Strategy %s ; C = %f ; F = %f\n",              strategy[i].label,              strategy[i].crossover_factor,              strategy[i].weighting_factor );      }    pop = ga_genesis_double(         40,			/* const int              population_size */         1,			/* const int              num_chromo */         4,			/* const int              len_chromo */         test_generation_callback,/* GAgeneration_hook      generation_hook */         NULL,			/* GAiteration_hook       iteration_hook */         NULL,			/* GAdata_destructor      data_destructor */         NULL,			/* GAdata_ref_incrementor data_ref_incrementor */         test_score,		/* GAevaluate             evaluate */         test_seed,		/* GAseed                 seed */         NULL,			/* GAadapt                adapt */         NULL,			/* GAselect_one           select_one */         NULL,			/* GAselect_two           select_two */         NULL,			/* GAmutate               mutate */         NULL,			/* GAcrossover            crossover */         NULL,			/* GAreplace              replace */         NULL			/* vpointer               User data */            );    ga_population_set_differentialevolution_parameters(        pop, strategy[i].strategy, strategy[i].crossover,        strategy[i].num_perturbed, strategy[i].weighting_factor, strategy[i].weighting_factor2,        strategy[i].crossover_factor        );    ga_differentialevolution(         pop,				/* population	*pop */         50				/* const int	max_generations */              );    printf( "Final: A = %f B = %f C = %f D = %f (fitness = %f)\n",            ((double *)pop->entity_iarray[0]->chromosome[0])[0],            ((double *)pop->entity_iarray[0]->chromosome[0])[1],            ((double *)pop->entity_iarray[0]->chromosome[0])[2],            ((double *)pop->entity_iarray[0]->chromosome[0])[3],            pop->entity_iarray[0]->fitness );    ga_extinction(pop);    i++;    }  exit(EXIT_SUCCESS);  }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产色一区| 久久精品日产第一区二区三区高清版| 日韩美女精品在线| 色呦呦日韩精品| 亚洲一级二级在线| 日韩三级中文字幕| 国产精品自在在线| 国产午夜精品福利| 99久久精品99国产精品| 一区二区三区精品在线观看| 欧美日韩成人综合天天影院 | 国产成人午夜99999| 中文av一区二区| 在线亚洲一区二区| 蜜桃免费网站一区二区三区| 久久久精品免费免费| 91蝌蚪porny九色| 奇米色777欧美一区二区| 久久久噜噜噜久久中文字幕色伊伊| 粉嫩av亚洲一区二区图片| 一区二区三区日韩| 日韩午夜激情视频| 岛国av在线一区| 亚洲丶国产丶欧美一区二区三区| 欧美一区永久视频免费观看| 国产精品一卡二| 亚洲最新视频在线观看| 精品久久人人做人人爽| 97久久久精品综合88久久| 丝袜诱惑制服诱惑色一区在线观看 | 亚洲免费大片在线观看| 欧美一区二区三区四区五区| 成人黄色在线视频| 日韩福利视频导航| 亚洲三级在线免费| 日韩免费观看2025年上映的电影| av在线一区二区| 久久成人久久爱| 亚洲精品成人天堂一二三| 精品国产成人在线影院| 91精品办公室少妇高潮对白| 国产在线播放一区| 亚洲国产综合在线| 国产精品久久久爽爽爽麻豆色哟哟| 欧美日韩小视频| 99re热这里只有精品视频| 久久国产精品露脸对白| 亚洲香肠在线观看| 国产精品久久精品日日| 精品国产一区二区三区久久久蜜月 | 三级久久三级久久| 亚洲一区视频在线| 国产校园另类小说区| 欧美妇女性影城| 在线视频中文字幕一区二区| 成人免费黄色在线| 国产一区二区中文字幕| 免费不卡在线视频| 午夜精品福利久久久| 亚洲伊人色欲综合网| 国产精品不卡在线| 国产校园另类小说区| 精品动漫一区二区三区在线观看| 欧美日韩国产综合一区二区| 欧洲精品一区二区三区在线观看| 成人的网站免费观看| 国产高清亚洲一区| 国产综合色在线| 精品一区二区三区久久久| 人妖欧美一区二区| 日韩有码一区二区三区| 视频一区在线播放| 婷婷国产v国产偷v亚洲高清| 亚洲bt欧美bt精品777| 亚洲电影一区二区三区| 亚洲午夜久久久久久久久久久 | 国产亚洲欧美在线| 亚洲精品一区二区三区香蕉| 亚洲精品一区在线观看| 精品av综合导航| 国产色一区二区| 亚洲国产激情av| 国产精品久久久久久久浪潮网站| 日本一区二区三区四区在线视频| 国产日韩精品一区二区浪潮av| 久久看人人爽人人| 日本一区二区视频在线| 亚洲欧洲制服丝袜| 亚洲国产精品综合小说图片区| 一区二区久久久久| 日精品一区二区三区| 理论电影国产精品| 国产剧情一区二区三区| 波多野结衣在线一区| 91在线视频播放| 欧美日韩成人综合在线一区二区 | 国产在线播放一区二区三区| 国产精品一二三四| 成人激情视频网站| 欧美日韩亚洲综合一区二区三区| 欧美一区二区三区视频在线 | 国产不卡在线一区| 成人h动漫精品一区二| 在线影视一区二区三区| 欧美日韩高清不卡| 久久久久一区二区三区四区| 中文字幕中文字幕中文字幕亚洲无线| 亚洲一线二线三线视频| 美脚の诱脚舐め脚责91| 成人丝袜高跟foot| 欧美视频中文字幕| 26uuu亚洲综合色| 亚洲天堂av一区| 麻豆成人av在线| 99精品视频在线观看| 欧美一区二区女人| 国产精品无遮挡| 日韩激情一区二区| 成人网在线播放| 欧美视频你懂的| 日本一区二区三区视频视频| 亚洲国产一区二区视频| 国产精品一区在线观看乱码 | 日韩一区二区免费视频| 国产精品系列在线| 亚洲电影一级片| av在线不卡观看免费观看| 91精品久久久久久久99蜜桃| 国产欧美一区二区精品忘忧草| 亚洲小说春色综合另类电影| 国产高清视频一区| 正在播放亚洲一区| 亚洲天堂2014| 国产精品99久久久久| 91精品久久久久久蜜臀| 亚洲美女电影在线| 国产经典欧美精品| 91精品麻豆日日躁夜夜躁| 亚洲美女在线一区| 高清av一区二区| 精品久久久久久久久久久久久久久久久 | 国产成人激情av| 欧美一区二区三区在线看| 一区二区三区中文字幕精品精品| 国产精品香蕉一区二区三区| 日韩欧美国产系列| 亚洲电影你懂得| 色哟哟精品一区| 中文字幕二三区不卡| 国产最新精品精品你懂的| 91精品一区二区三区久久久久久 | 国产精品欧美精品| 国产一区二区三区免费播放| 91精品欧美综合在线观看最新| 亚洲成av人在线观看| 色欲综合视频天天天| 国产精品高潮呻吟| 成人激情视频网站| 欧美国产一区二区| 丁香婷婷综合网| 国产三级欧美三级| 高清在线不卡av| 日本一区二区三区四区| 国产成人av电影免费在线观看| 欧美精品一区二区蜜臀亚洲| 久久97超碰色| 精品粉嫩超白一线天av| 韩国精品免费视频| 久久视频一区二区| 国产传媒久久文化传媒| 国产视频一区在线观看| 国产裸体歌舞团一区二区| 国产亚洲综合在线| 成人免费视频一区二区| 中文字幕亚洲在| 一本色道久久综合精品竹菊| 亚洲黄色片在线观看| 欧美日韩专区在线| 日韩电影在线免费看| 日韩免费视频线观看| 国产精品亚洲第一区在线暖暖韩国| 国产视频视频一区| av中文字幕一区| 亚洲高清不卡在线观看| 69av一区二区三区| 韩国成人在线视频| 中文字幕成人av| 在线观看一区不卡| 日本欧美一区二区三区乱码| 欧美精品一区男女天堂| 国产精品白丝jk黑袜喷水| 日韩理论片中文av| 欧美猛男gaygay网站| 经典三级视频一区| 国产精品毛片久久久久久| 91久久精品日日躁夜夜躁欧美| 手机精品视频在线观看| 国产三级一区二区三区| 日本韩国欧美三级| 日韩电影在线观看一区|