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

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

?? test_de.c

?? http://gaul.sourceforge.net/ 這里大部分人討論的是在Matlab里實現GA的toolbox.以上為一個GA的C語言的軟件包.如果你想利用GA做優化算法,非常有用.而且有
?? 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);  }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品夜夜嗨av一区二区三区| 国产精品乱码妇女bbbb| 亚洲成人久久影院| 欧美日韩国产天堂| 日韩精品午夜视频| 337p日本欧洲亚洲大胆色噜噜| 九九视频精品免费| 中文字幕av不卡| 中文字幕欧美国产| 91首页免费视频| 亚洲国产视频一区| 精品久久久久久久久久久久久久久久久| 久久精品国产一区二区三区免费看 | 欧美中文字幕一区| 午夜视频在线观看一区二区三区| 日韩免费高清视频| 成人高清伦理免费影院在线观看| 亚洲欧美电影院| 日韩欧美一区在线| 丁香婷婷综合网| 亚洲午夜激情网站| 日韩欧美另类在线| 99久久99久久精品国产片果冻 | 紧缚奴在线一区二区三区| 欧美国产国产综合| 91国产成人在线| 免费一级欧美片在线观看| 国产欧美日本一区二区三区| 一区在线观看免费| 欧美日韩亚洲另类| 国内精品视频666| 亚洲一区国产视频| 久久久精品tv| 欧美三级中文字幕在线观看| 精品一区二区在线观看| 亚洲影院免费观看| 国产日韩欧美亚洲| 欧美区一区二区三区| 成人亚洲一区二区一| 免费看日韩a级影片| 亚洲视频资源在线| 精品第一国产综合精品aⅴ| 色av成人天堂桃色av| 韩国毛片一区二区三区| 亚洲一区二区三区四区五区中文| 久久尤物电影视频在线观看| 91福利视频久久久久| 国产成a人亚洲| 日本不卡高清视频| 亚洲综合免费观看高清完整版在线 | 亚洲精品一区二区三区蜜桃下载| 色丁香久综合在线久综合在线观看 | 久久久久亚洲综合| 欧美一级片在线看| 欧美日韩中文精品| 色综合色综合色综合| 高清不卡一区二区在线| 激情小说亚洲一区| 日本不卡一二三| 三级不卡在线观看| 午夜久久久久久电影| 亚洲综合区在线| 亚洲乱码中文字幕| 国产精品久久久久久久浪潮网站| 精品99一区二区| 日韩欧美你懂的| 欧美一区二区三区四区视频| 欧美日韩在线三区| 欧美三级乱人伦电影| 91高清视频免费看| 在线免费观看日韩欧美| 91蝌蚪porny| 色婷婷精品久久二区二区蜜臀av | 日本不卡的三区四区五区| 天堂久久久久va久久久久| 亚洲国产日产av| 亚洲高清视频在线| 亚洲影视在线播放| 亚洲电影在线播放| 亚洲国产精品欧美一二99| 亚洲一区二区在线观看视频| 亚洲一区二区三区国产| 性做久久久久久免费观看欧美| 亚洲午夜免费视频| 天天综合网天天综合色| 日本午夜一本久久久综合| 蜜芽一区二区三区| 狠狠色丁香婷婷综合| 国产成人精品免费一区二区| 懂色中文一区二区在线播放| gogogo免费视频观看亚洲一| 91女人视频在线观看| 在线中文字幕一区二区| 欧美精品高清视频| 日韩一二三区不卡| 国产亚洲欧美中文| 国产精品成人免费在线| 夜色激情一区二区| 日韩国产成人精品| 激情成人午夜视频| caoporn国产一区二区| 在线国产电影不卡| 日韩欧美国产系列| 国产精品久久久久久久午夜片 | 国产精品一区在线观看你懂的| 国产中文字幕一区| 国产精品亚洲视频| 欧美综合一区二区| 精品粉嫩超白一线天av| 日本一区二区不卡视频| 亚洲与欧洲av电影| 精品一区二区在线看| 色综合久久九月婷婷色综合| 在线播放日韩导航| 国产性天天综合网| 亚洲成a人片综合在线| 国产一区二区h| 欧美视频一区二| 久久久久久电影| 亚洲一级电影视频| 粉嫩欧美一区二区三区高清影视| 在线一区二区三区四区| 精品久久久久99| 亚洲乱码精品一二三四区日韩在线| 青草av.久久免费一区| 一本色道**综合亚洲精品蜜桃冫| 91精品国产色综合久久| 国产精品不卡视频| 裸体歌舞表演一区二区| 色综合夜色一区| 久久久精品蜜桃| 天天操天天干天天综合网| 不卡的av网站| 欧美成人vr18sexvr| 亚洲一区精品在线| 成人免费精品视频| 精品福利一区二区三区免费视频| 亚洲一区二区视频在线观看| 成人福利在线看| 久久亚区不卡日本| 日韩中文字幕区一区有砖一区| 91小视频在线观看| 国产欧美日韩精品一区| 看电视剧不卡顿的网站| 欧美日韩精品久久久| 亚洲码国产岛国毛片在线| 国产精品123区| 日韩欧美aaaaaa| 亚洲国产欧美在线| 色婷婷综合在线| 国产精品久久午夜| 国产成人午夜精品5599| 精品久久久久99| 久久精品国产成人一区二区三区| 精品视频一区二区三区免费| 伊人色综合久久天天人手人婷| 成人av资源在线| 中文字幕 久热精品 视频在线 | 久久精品亚洲乱码伦伦中文| 午夜精品久久久| 精品污污网站免费看| 亚洲综合免费观看高清完整版 | 日韩视频123| 蜜臀精品一区二区三区在线观看| 欧美日韩高清一区| 天堂成人国产精品一区| 欧美日免费三级在线| 天堂在线一区二区| 欧美另类高清zo欧美| 天堂va蜜桃一区二区三区漫画版| 欧美日韩一区三区| 日韩电影免费在线看| 日韩一区二区三区av| 精品在线一区二区| 久久免费美女视频| 成人免费毛片a| 亚洲色图在线看| 欧美性猛片xxxx免费看久爱| 亚洲成人免费av| 欧美成人艳星乳罩| 国产精品一区二区你懂的| 中文字幕av免费专区久久| 91女厕偷拍女厕偷拍高清| 亚洲一区二区三区免费视频| 欧美顶级少妇做爰| 激情深爱一区二区| 中文字幕一区日韩精品欧美| 色呦呦网站一区| 石原莉奈在线亚洲二区| 日韩精品一区二区三区在线观看 | 成人永久aaa| 亚洲精品五月天| 欧美福利电影网| 国产尤物一区二区在线| 1000部国产精品成人观看| 欧美日韩专区在线| 国内精品久久久久影院薰衣草| 国产精品视频线看| 欧美日韩激情一区二区三区| 久久99久久精品欧美|