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

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

?? gs.cc-old

?? c++編寫的并行拉馬克遺傳算法的程序。實現分析對接程序
?? CC-OLD
?? 第 1 頁 / 共 3 頁
字號:
   for (J=0;  J < original_pop.num_individuals();  J++) {//debug       allzero = allzero & (alloc[J] == (float)0.0);//debug   }//debug   if (allzero) {//debug       (void)fprintf(logFile, "gs.cc:  W A R N I N G !  all alloc variables are zero!\n"); //debug   }//debug#endif   //  Permute the individuals#ifdef DEBUG2   (void)fprintf(logFile, "gs.cc:  Permuting beginning: original_pop.num_individuals()= %d\n", original_pop.num_individuals()); //debug#endif   for (i=0;  i < original_pop.num_individuals();  i++) {      temp_ordering = ordering[i];      assert(ordering[i] < original_pop.num_individuals());//debug      temp_index = ignlgi()%(original_pop.num_individuals());      assert(ordering[temp_index] < original_pop.num_individuals());//debug      ordering[i] = ordering[temp_index];      ordering[temp_index] = temp_ordering;#ifdef DEBUG2      //(void)fprintf(logFile, "gs.cc: permuting in sel_prop: ordering check: ordering[i=%d]= %d, ordering[temp_index=%d]= %d\n", ordering[i],i, ordering[temp_index], temp_index);//debug#endif   }// endfor i   //  We might get some savings here if we sorted the individuals before calling   //  this routine   for (i=0; (i < original_pop.num_individuals()) && (start_index < original_pop.num_individuals()); i++) {      for (; (alloc[i] >= 1.0) && (start_index < original_pop.num_individuals());  alloc[i]-= 1.0) {         new_pop[start_index] = original_pop[i];                //         //new_pop[start_index].incrementAge();                        //         ++start_index;                                                //      }   }#ifdef DEBUG2   (void)fprintf(stderr, "gs.cc/void Genetic_Algorithm::"); //debug   (void)fprintf(stderr, "selection_proportional(Population &original_pop, Individual *new_pop)\n"); //debug#endif   i = 0;                                                        //#ifdef DEBUG2   int count = 0;//debug   (void)fprintf(stderr, "gs.cc/beginning \"while(start_index < original_pop.num_individuals()) {\" loop\n"); //debug#endif   // ??? start_index = 0; // gmm, 1998-07-13 ???   while (start_index < original_pop.num_individuals()) {        //#ifdef DEBUG2      (void)fprintf(stderr, "gs.cc:596/inside \"while(start_index(=%d) < original_pop.num_individuals()(=%d)) \" loop:  count= %d\n", start_index, original_pop.num_individuals(), ++count); //debug#endif      assert(ordering[i] < original_pop.num_individuals());//debug#ifdef DEBUG2      debug_ranf = ranf();      (void)fprintf(stderr, "gs.cc:599/inside debug_ranf= %.3f, alloc[ordering[i]]= %.3e, ordering[i]= %d,  i= %d\n", debug_ranf, alloc[ordering[i]], ordering[i], i); // debug      if (debug_ranf < alloc[ordering[i]]) {#else      if (ranf() < alloc[ordering[i]]) {                        // non-debug#endif //  not DEBUG2#ifdef DEBUG2         (void)fprintf(stderr, "gs.cc:603/inside (debug_ranf < alloc[ordering[i]]) is true!\n"); //debug         (void)fprintf(stderr, "gs.cc:604/inside about to increment start_index in:  \"new_pop[start_index++] = original_pop[ordering[i]];\"; right now, start_index= %d\n", start_index); //debug#endif         new_pop[start_index] = original_pop[ordering[i]];        //         //new_pop[start_index].incrementAge();                        //         start_index++;                                                //#ifdef DEBUG2         (void)fprintf(stderr, "gs.cc:605/inside just incremented start_index, now start_index= %d\n", start_index); //debug#endif      }// endif (ranf() < alloc[ordering[i]])                        //#ifdef DEBUG2      (void)fprintf(stderr, "gs.cc:608/inside i= %d, original_pop.num_individuals()= %d\n", i, original_pop.num_individuals()); //debug      (void)fprintf(stderr, "gs.cc:609/inside about to \"i = (i+1)%%original_pop.num_individuals();\"\n"); //debug#endif      i = (i+1)%original_pop.num_individuals();                        //#ifdef DEBUG2      (void)fprintf(stderr, "gs.cc:611/inside just done \"i = (i+1)%%original_pop.num_individuals();\"\n"); //debug      (void)fprintf(stderr, "gs.cc:612/inside i= %d  _____________________________________________________\n\n", i); //debug       allzero = 1;//debug       for (J=0;  J < original_pop.num_individuals();  J++) {//debug           allzero = allzero & (alloc[J] == (float)0.0);//debug       }//debug       if (allzero) {//debug           (void)fprintf(logFile, "gs.cc:  W A R N I N G !  all alloc variables are zero!\n"); //debug       }//debug#endif   }// endwhile (start_index < original_pop.num_individuals())         //#ifdef DEBUG2  (void)fprintf(stderr, "gs.cc/finished \"while(start_index < original_pop.num_individuals()) \" loop\n"); //debug#endif}/* Probabilistic Binary Tournament Selection * * This type of tournament selection was described in Goldberg and Deb (1991), * and performs the same type of selection as is seen in linear rank * selection.  Two individuals are chosen at random, and the better individual * is selected with probability P, 0.5 <= P <= 1.  If we let 2P = C, then * we see that the expected number of samples generated by rank r_i is * *      N * [2P - 2(2P-1) r_i]            , 1 >= P >= 0.5 * * We can again parameterize this ranking with K, the relative probability * between the best and worst individual.  Since 2P = C, * P = K/(1+K). */void Genetic_Algorithm::selection_tournament(Population &original, Individual *new_pop){   register int i = 0, start_index = 0;   int temp_ordering, temp_index;#ifdef DEBUG   (void)fprintf(logFile, "gs.cc/void Genetic_Algorithm::");   (void)fprintf(logFile, "selection_tournament(Population &original, Individual *new_pop)\n");#endif /* DEBUG */   original.msort(original.num_individuals());   for (i=0; i<original.num_individuals(); i++) {      alloc[i] = original.num_individuals()*(2*tournament_prob - i*(4*tournament_prob - 2));   }   for (i=0;  (i < original.num_individuals()) && (start_index < original.num_individuals());  i++) {      for (; (alloc[i] >= 1.0) && (start_index < original.num_individuals());  alloc[i] -= 1.0) {         new_pop[start_index++] = original[i];      }   }   for (i=0; i < original.num_individuals(); i++) {      temp_ordering = ordering[i];      temp_index = ignlgi()%original.num_individuals();      ordering[i] = ordering[temp_index];      ordering[temp_index] = temp_ordering;   }   i = 0;   while (start_index < original.num_individuals()) {      if (ranf() < alloc[ordering[i]]) {         new_pop[start_index++] = original[ordering[i]];      }      i = (i+1)%original.num_individuals();   }}Individual *Genetic_Algorithm::selection(Population &solutions){   Individual *next_generation;#ifdef DEBUG   (void)fprintf(logFile, "gs.cc/Individual *Genetic_Algorithm::selection(Population &solutions)\n");#endif /* DEBUG */   next_generation = new Individual[solutions.num_individuals()];      set_worst(solutions);   switch(s_mode)   {      case Proportional:         selection_proportional(solutions, next_generation);         break;      case Tournament:         selection_tournament(solutions, next_generation);         break;      case Boltzmann:         (void)fprintf(logFile,"gs.cc/Unimplemented Selection Method - using proportional\n");         selection_proportional(solutions, next_generation);         break;      default:         (void)fprintf(logFile,"gs.cc/Unknown Selection Mode!\n");   }   return(next_generation);}//  For right now global search is taken to be a GAint Genetic_Algorithm::search(Population &solutions){   int i, outputEveryNgens = 1;   unsigned int oldest = 0, oldestIndividual = 0, fittestIndividual = 0;   double fittest = BIG;   struct tms tms_genStart;   struct tms tms_genEnd;   Clock genStart;   Clock genEnd;#ifdef DEBUG   (void)fprintf(logFile, "gs.cc/int Genetic_Algorithm::search(Population &solutions)\n");#endif /* DEBUG */   genStart = times( &tms_genStart );#ifdef DEBUG3   (void)fprintf(logFile,"[Pre-Mapping] (solutions)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%d ", solutions[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   for (i=0; i<solutions.num_individuals(); i++) {      solutions[i].mapping();   }   #ifdef DEBUG3   (void)fprintf(logFile,"[Pre-Selection] (solutions)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%ld ", solutions[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   //  Perform selection   Population newPop(solutions.num_individuals(), selection(solutions));#ifdef DEBUG3   (void)fprintf(logFile,"[Pre-Crossover] (newPop)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%ld ", newPop[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   //  Perform crossover   crossover(newPop);#ifdef DEBUG3   (void)fprintf(logFile,"[Pre-Mutation] (newPop)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%ld ", newPop[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   //  Perform mutation   mutation(newPop);#ifdef DEBUG3   (void)fprintf(logFile,"[Pre-Elitism] (newPop)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%ld ", newPop[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   //  Copy the n best individuals to the next population, if the elitist flag is set.   if (elitism>0) {      solutions.msort(elitism);      for (i=0; i<elitism; i++) {         newPop[solutions.num_individuals()-1-i] = solutions[i];      }   }#ifdef DEBUG3   (void)fprintf(logFile,"[Pre-UpdateCurrentGeneration] (newPop)\n");   for (i=0; i<solutions.num_individuals(); i++) {       (void)fprintf(logFile,"%ld ", newPop[i].age);   }   (void)fprintf(logFile,"\n");#endif /* DEBUG3 */   // Update current generation...   solutions = newPop;   generations++;   // Increment age of surviving individuals...   for (i=0; i<solutions.num_individuals(); i++) {       solutions[i].incrementAge();   }   if (generations%outputEveryNgens == 0) {       oldest  = 0L;       fittest = BIG;       for (i=0; i<solutions.num_individuals(); i++) {          if (solutions[i].age >= oldest) {              oldest = solutions[i].age;              oldestIndividual = i;          }          if (solutions[i].value(Normal_Eval) <= fittest) {              fittest = solutions[i].value(Normal_Eval);              fittestIndividual = i;          }       }       if (outputEveryNgens > 1) {#ifndef DEBUG3           (void)fprintf(logFile,"Generation: %3u,  Oldest individual's energy: %.3f;   Lowest energy: %.3f;   Time taken for last %d generations: ",            generations, solutions[oldestIndividual].value(Normal_Eval), solutions[fittestIndividual].value(Normal_Eval),            outputEveryNgens);#else           (void)fprintf(logFile,"Generation: %3u,  Oldest individual: %u/%u, age: %uld, energy: %.3f;   Lowest energy individual: %u/%u, age: %uld, energy: %.3f;   Time taken for last %d generations: ",            generations, oldestIndividual+1L, solutions.num_individuals(), solutions[oldestIndividual].age,            solutions[oldestIndividual].value(Normal_Eval), fittestIndividual+1L, solutions.num_individuals(),            solutions[fittestIndividual].age, solutions[fittestIndividual].value(Normal_Eval), outputEveryNgens);#endif /* DEBUG3 */       } else {#ifndef DEBUG3           (void)fprintf(logFile,"Generation: %3u,  Oldest individual's energy: %.3f;   Lowest energy: %.3f;   Time taken: ",            generations, solutions[oldestIndividual].value(Normal_Eval), solutions[fittestIndividual].value(Normal_Eval));#else           (void)fprintf(logFile,"Generation: %3u,  Oldest individual: %u/%u, age: %uld, energy: %.3f;   Lowest energy individual: %u/%u, age: %uld, energy: %.3f;   Time taken: ",            generations, oldestIndividual+1L, solutions.num_individuals(), solutions[oldestIndividual].age,            solutions[oldestIndividual].value(Normal_Eval), fittestIndividual+1L, solutions.num_individuals(),            solutions[fittestIndividual].age, solutions[fittestIndividual].value(Normal_Eval));#endif /* DEBUG3 */       }       genEnd = times( &tms_genEnd );       timesyshms( genEnd - genStart, &tms_genStart, &tms_genEnd );       //genStart = times( &tms_genStart );   }   return(0);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人官网二区| 午夜视频在线观看一区二区| 亚洲乱码国产乱码精品精的特点 | 精品一区二区在线视频| 国产一区二区三区精品视频| 欧美伊人久久大香线蕉综合69| 久久噜噜亚洲综合| 奇米一区二区三区| 欧美日韩一区二区在线观看| 国产精品入口麻豆原神| 精品一区二区国语对白| 在线播放一区二区三区| 亚洲色大成网站www久久九九| 国产在线精品一区二区不卡了| 91国偷自产一区二区使用方法| 国产精品理论片| 懂色av中文一区二区三区 | 奇米777欧美一区二区| 欧美日韩专区在线| 亚洲三级在线观看| 99精品欧美一区二区三区小说 | 欧美高清在线一区| 国产美女视频91| 亚洲精品一区二区精华| 久久精品国产亚洲a| 日韩一区二区在线观看视频播放| 天天影视色香欲综合网老头| 欧美日本国产视频| 日韩精品一级中文字幕精品视频免费观看 | 日韩制服丝袜先锋影音| 色美美综合视频| 一区二区免费看| 欧美系列亚洲系列| 国产乱码精品1区2区3区| 久久综合999| 国产成人av福利| 中文无字幕一区二区三区| 成人免费av在线| 中文字幕一区二区三区在线不卡| 不卡影院免费观看| 中文字幕一区二区三区av| 色综合亚洲欧洲| 亚洲亚洲精品在线观看| 91精品国产综合久久久久久漫画| 久久99久久久欧美国产| 国产日韩综合av| 97精品视频在线观看自产线路二| 亚洲综合清纯丝袜自拍| 欧美一区二区网站| 国产精品一区一区| 亚洲人吸女人奶水| 69堂亚洲精品首页| 国产一区二区日韩精品| 中文字幕在线不卡| 欧美肥妇free| 国产电影一区在线| 亚洲人成网站色在线观看| 欧美区一区二区三区| 国产综合色产在线精品| 中文字幕视频一区| 欧美精品日韩一区| 国产河南妇女毛片精品久久久| 亚洲日本va在线观看| 这里只有精品99re| 成人黄色大片在线观看| 日韩综合小视频| 国产精品伦一区二区三级视频| 欧美午夜视频网站| 国产福利一区二区三区视频| 一区二区三区日韩| 久久综合久久综合久久| 91黄色激情网站| 国产一区在线精品| 亚洲一区视频在线观看视频| 精品国产91乱码一区二区三区| 9i看片成人免费高清| 日本怡春院一区二区| 国产精品天天摸av网| 欧美高清视频不卡网| 成人爱爱电影网址| 美女视频一区二区| 亚洲制服丝袜一区| 国产精品久久久久久久久久久免费看| 欧美美女直播网站| 91免费观看在线| 国产一区二区久久| 日本不卡中文字幕| 亚洲国产日日夜夜| 亚洲天堂精品视频| 中日韩免费视频中文字幕| 欧美成人精品高清在线播放| 欧美丝袜丝交足nylons图片| 丁香婷婷深情五月亚洲| 蜜臀国产一区二区三区在线播放| 亚洲国产中文字幕在线视频综合| 国产精品第五页| 欧美国产丝袜视频| 精品国产91乱码一区二区三区| 91精品国产综合久久福利| 精品视频资源站| 99视频精品免费视频| 国产成人综合网站| 国产精品自拍av| 国产一区二区看久久| 狠狠色综合播放一区二区| 毛片av中文字幕一区二区| 丝袜美腿亚洲色图| 五月开心婷婷久久| 天天操天天综合网| 亚瑟在线精品视频| 日韩黄色一级片| 欧美96一区二区免费视频| 日韩精品成人一区二区三区| 午夜精品在线视频一区| 亚洲图片欧美色图| 日韩高清中文字幕一区| 蜜臀av一区二区在线免费观看| 日本一道高清亚洲日美韩| 日韩国产欧美在线视频| 久久99热99| 国产成人福利片| 成人av网站在线| 日本国产一区二区| 欧美日韩精品欧美日韩精品一 | 激情五月婷婷综合| 国产裸体歌舞团一区二区| 国产91精品在线观看| jlzzjlzz亚洲日本少妇| 91视视频在线观看入口直接观看www | 97久久精品人人澡人人爽| 91麻豆成人久久精品二区三区| 欧美在线小视频| 日韩一区二区电影网| 国产日韩综合av| 一区二区三区不卡视频| 日韩福利视频导航| 国产一区二区三区免费看| av在线播放不卡| 在线成人午夜影院| 久久久久99精品国产片| 亚洲视频 欧洲视频| 日韩精品久久久久久| 国产精品一二三在| 在线亚洲人成电影网站色www| 欧美一区二区三区思思人| 国产日产欧产精品推荐色 | 1024精品合集| 午夜一区二区三区视频| 韩日av一区二区| 色噜噜偷拍精品综合在线| 91精品国产aⅴ一区二区| 国产片一区二区| 天堂一区二区在线| 成人午夜碰碰视频| 欧美理论在线播放| 亚洲国产精品v| 免费成人深夜小野草| 91视频91自| 国产亚洲自拍一区| 爽好多水快深点欧美视频| 国产成人亚洲综合a∨猫咪| 在线不卡免费av| 亚洲嫩草精品久久| 国产一二三精品| 欧美老肥妇做.爰bbww视频| 国产欧美一区二区精品性色| 日精品一区二区| 91久久精品国产91性色tv| 欧美激情中文不卡| 久久成人免费网站| 欧美日韩精品免费| 亚洲美女屁股眼交3| 高清不卡在线观看| 日韩精品一区二区三区视频播放| 亚洲国产一区二区视频| 成人h精品动漫一区二区三区| 日韩欧美国产系列| 日本人妖一区二区| 欧美少妇bbb| 一区二区三区在线播| 99r国产精品| 国产精品美女久久福利网站| 紧缚奴在线一区二区三区| 91精品欧美一区二区三区综合在 | 亚洲综合小说图片| 91在线免费播放| 一区视频在线播放| 99久免费精品视频在线观看| 中文字幕av一区二区三区高| 国产精品18久久久久| 精品成人在线观看| 国内精品伊人久久久久av一坑| 日韩欧美视频在线| 亚洲va韩国va欧美va精品| 欧美亚洲国产怡红院影院| 一区二区三区在线影院| 日本道色综合久久| 亚洲成人午夜电影| 91精品国产一区二区三区 | 91视频一区二区三区|