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

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

?? ga-1_cpp.htm

?? 幾個C++程序
?? HTM
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0054)http://orsc.edu.cn/~liu/Uncertain_Programming/GA-1.cpp -->
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1528" name=GENERATOR></HEAD>
<BODY><PRE>// Genetic Algorithm for nonlinear programming
// Written by Microsoft Visual C++
// Copyright by UTLab @ Tsinghua University
// http://orsc.edu.cn/UTLab

#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;math.h&gt;
#include "UTLab.h"

static void  initialization(void);
static void  evaluation(int gen);
static void  selection(void);
static void  crossover(void);
static void  mutation(void);
static void  objective_function(void);
static int   constraint_check(double x[]);

#define N 3  // number of variables
#define M 1  // number of objectives
#define TYPE 1 // 1=max;-1=min
#define GEN 400 // maximum generation number
#define POP_SIZE 30
#define P_MUTATION 0.2
#define P_CROSSOVER 0.3

double  CHROMOSOME[POP_SIZE+1][N+1];
double  OBJECTIVE[POP_SIZE+1][M+1];
double  q[POP_SIZE+1];

static void objective_function(void)
{
	double x1,x2,x3;
	int i;
	for(i = 1; i &lt;= POP_SIZE; i++) {
		x1 = CHROMOSOME[i][1];
		x2 = CHROMOSOME[i][2];
		x3 = CHROMOSOME[i][3];
		OBJECTIVE[i][1] = sqrt(x1)+sqrt(x2)+sqrt(x3);
	}
	for(i=1;i&lt;=POP_SIZE;i++)
	  OBJECTIVE[i][0]= OBJECTIVE[i][1];
}

static int constraint_check(double x[])
{
	double a;
	int n; 
	for(n=1;n&lt;=N;n++) if(x[n]&lt;0) return 0;
	a = x[1]*x[1]+2*x[2]*x[2]+3*x[3]*x[3];
	if(a&gt;1) return 0;
	return 1;
}

static void initialization(void)
{
  double x[N+1]; // N is the number of variables
  int i,j;
  for(i=1; i&lt;=POP_SIZE; i++){
	  mark:
	  for(j=1; j&lt;=N; j++) x[j]=myu(0,1);
	  if(constraint_check(x)==0) goto mark;
	  for(j=1; j&lt;=N; j++) CHROMOSOME[i][j]=x[j];
  }
}

main()
{
  int i, j;
  double a;

  q[0]=0.05; a=0.05;
  for(i=1; i&lt;=POP_SIZE; i++) {a=a*0.95; q[i]=q[i-1]+a;}
  initialization();
  evaluation(0);
  for(i=1; i&lt;=GEN; i++) {
	  selection();
	  crossover();
	  mutation();
	  evaluation(i);
	  printf("\nGeneration NO.%d\n", i);
	  printf("x=(");
	  for(j=1; j&lt;=N; j++) {
		  if(j&lt;N) printf("%3.4f,",CHROMOSOME[0][j]);
		  else printf("%3.4f",CHROMOSOME[0][j]);
	  }
	  if(M==1) printf(")\nf=%3.4f\n", OBJECTIVE[0][1]);
	  else {
	      printf(")\nf=(");
	      for(j=1; j&lt;=M; j++) {
		     if(j&lt;M) printf("%3.4f,", OBJECTIVE[0][j]);
		     else printf("%3.4f", OBJECTIVE[0][j]);
		  }
          printf(")  Aggregating Value=%3.4f\n",OBJECTIVE[0][0]);
	  }
  }
  printf("\n");
  return 1;
}

static void evaluation(int gen)
{
  double a;
  int   i, j, k, label;
  objective_function();
  if(gen==0){
	 for(k=0; k&lt;=M; k++) OBJECTIVE[0][k]=OBJECTIVE[1][k];
	 for(j = 1; j &lt;= N; j++) CHROMOSOME[0][j]=CHROMOSOME[1][j];
  }
  for(i=0; i&lt;POP_SIZE; i++){
	  label=0;  a=OBJECTIVE[i][0];
	  for(j=i+1; j&lt;=POP_SIZE; j++)
		 if((TYPE*a)&lt;(TYPE*OBJECTIVE[j][0])) {
			 a=OBJECTIVE[j][0];
			 label=j;
		 }
	  if(label!=0) {
		 for(k=0; k&lt;=M; k++) {
			 a=OBJECTIVE[i][k];
			 OBJECTIVE[i][k]=OBJECTIVE[label][k];
			 OBJECTIVE[label][k]=a;
		 }
		 for(j=1; j&lt;=N; j++) {
			 a=CHROMOSOME[i][j];
			 CHROMOSOME[i][j]=CHROMOSOME[label][j];
			 CHROMOSOME[label][j]=a;
		 }
	  }
  }
}

static void selection()
{
  double r, temp[POP_SIZE+1][N+1];
  int   i, j, k;
  for(i=1; i&lt;=POP_SIZE; i++) {
	  r=myu(0, q[POP_SIZE]);
	  for(j=0; j&lt;=POP_SIZE; j++) {
		  if(r&lt;=q[j]) {
			  for(k=1; k&lt;=N; k++) temp[i][k]=CHROMOSOME[j][k];
			  break;
		  }
	  }
  }
  for(i=1; i&lt;=POP_SIZE; i++)
	 for(k=1; k&lt;=N; k++)
		 CHROMOSOME[i][k]=temp[i][k];
}

static void crossover()
{
  int   i, j, jj, k, pop;
  double r, x[N+1], y[N+1];
  pop=POP_SIZE/2;
  for(i=1; i&lt;=pop; i++) {
	 if(myu(0,1)&gt;P_CROSSOVER) continue;
	 j=(int)myu(1,POP_SIZE);
	 jj=(int)myu(1,POP_SIZE);
	 r=myu(0,1);
	 for(k=1; k&lt;=N; k++) {
		 x[k]=r*CHROMOSOME[j][k]+(1-r)*CHROMOSOME[jj][k];
		 y[k]=r*CHROMOSOME[jj][k]+(1-r)*CHROMOSOME[j][k];
	 }
	 if(constraint_check(x)==1)
		 for(k=1; k&lt;=N; k++) CHROMOSOME[j][k]=x[k];
	 if(constraint_check(y)==1)
		 for(k=1; k&lt;=N; k++) CHROMOSOME[jj][k]=y[k];
  }
}

static void mutation(void)
{
  int i, j, k;
  double x[N+1], y[N+1], infty, direction[N+1];
  double INFTY=10, precision=0.0001;
  for(i=1; i&lt;=POP_SIZE; i++) {
	  if(myu(0,1)&gt;P_MUTATION) continue;
	  for(k=1; k&lt;=N; k++) x[k] = CHROMOSOME[i][k];
	  for(k=1; k&lt;=N; k++)
		  if(myu(0,1)&lt;0.5) direction[k]=myu(-1,1);
		  else direction[k]=0;
	  infty=myu(0,INFTY);
	  while(infty&gt;precision) {
		  for(j=1; j&lt;=N; j++) y[j]=x[j]+infty*direction[j];
		  if(constraint_check(y)==1) {
			 for(k=1; k&lt;=N; k++) CHROMOSOME[i][k]=y[k];
			 break;
		  }
		  infty=myu(0,infty);
	  }
  }
}
</PRE></BODY></HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品久久久久久久久老牛影院 | 亚洲国产中文字幕| eeuss鲁片一区二区三区在线看| 欧美激情一区二区在线| 国产成都精品91一区二区三| 久久九九99视频| 99精品国产热久久91蜜凸| 亚洲靠逼com| 91精品国产一区二区三区香蕉| 免费欧美在线视频| 国产农村妇女毛片精品久久麻豆 | 99久久亚洲一区二区三区青草| 国产精品久久久久国产精品日日| 色婷婷久久99综合精品jk白丝| 亚洲一线二线三线久久久| 欧美丰满嫩嫩电影| 国产乱码精品一区二区三区忘忧草 | 欧美极品xxx| 在线精品亚洲一区二区不卡| 天堂影院一区二区| 精品国产99国产精品| 99亚偷拍自图区亚洲| 婷婷综合另类小说色区| 欧美精品一区二区精品网| 99v久久综合狠狠综合久久| 一区二区三区中文字幕精品精品 | 看国产成人h片视频| 国产精品伦理一区二区| 欧美日本韩国一区二区三区视频| 激情久久久久久久久久久久久久久久 | 国产精品系列在线播放| 亚洲第一av色| 中文字幕精品三区| 欧美一级淫片007| av激情成人网| 国产一区二区三区四区五区入口| 亚洲欧美日韩综合aⅴ视频| 欧美一区二区日韩| 97久久人人超碰| 精品一区二区在线看| 亚洲视频狠狠干| 久久老女人爱爱| 欧美日韩免费观看一区三区| 蜜臀av一区二区三区| 椎名由奈av一区二区三区| 精品少妇一区二区三区在线视频| 在线日韩一区二区| 成人免费视频国产在线观看| 日韩av二区在线播放| 亚洲精品免费电影| 国产精品久久久久影院| 精品精品欲导航| 欧美日韩1234| 在线视频欧美精品| 成人av网站在线观看免费| 麻豆精品视频在线观看| 亚洲福利一区二区| 亚洲美女在线一区| 国产精品久久久久久久久免费樱桃 | 亚洲一区欧美一区| 18涩涩午夜精品.www| 久久九九国产精品| 欧美精品一区二区精品网| 欧美三级在线视频| 在线观看av不卡| 色av成人天堂桃色av| 91一区一区三区| av在线不卡电影| 成人av在线资源| 不卡一区中文字幕| 波多野结衣中文一区| 成人av在线一区二区三区| 丁香婷婷综合色啪| 成人涩涩免费视频| 99久久精品99国产精品| 91无套直看片红桃| 91久久人澡人人添人人爽欧美| 不卡视频在线看| caoporn国产一区二区| 成人午夜免费av| 成人黄动漫网站免费app| 不卡电影一区二区三区| 99久久99久久久精品齐齐| 99re在线精品| 91美女蜜桃在线| 欧美日韩一区二区三区高清 | 99久久精品免费观看| 99国产精品久久久久久久久久久 | 欧美日韩亚洲综合一区二区三区| 色哟哟亚洲精品| 欧美日韩免费观看一区三区| 6080午夜不卡| 精品久久久久久最新网址| 久久精品日韩一区二区三区| 欧美激情在线看| 亚洲精品欧美激情| 日韩中文欧美在线| 国产一区二区免费在线| 成人a级免费电影| 欧美系列一区二区| 日韩精品一区二区三区老鸭窝| 久久免费看少妇高潮| 国产精品国产自产拍高清av | 亚洲天堂精品视频| 亚洲午夜私人影院| 免费观看成人av| 国产999精品久久久久久| jlzzjlzz国产精品久久| 欧美日韩国产大片| 国产欧美在线观看一区| 偷拍亚洲欧洲综合| 国产在线精品免费| 在线中文字幕一区二区| 91精品国产欧美一区二区18| 国产午夜精品久久久久久久| 一区二区三区精品久久久| 开心九九激情九九欧美日韩精美视频电影 | 日韩欧美一区二区久久婷婷| 国产精品欧美一级免费| 亚洲国产精品自拍| 成人丝袜高跟foot| 欧美一区二区三区爱爱| 中文字幕一区二区视频| 免费成人性网站| 91成人看片片| 国产日韩欧美精品电影三级在线| 亚洲一区二区四区蜜桃| 国产精品911| 欧美一区二区精品| 亚洲情趣在线观看| 国产高清精品网站| 7878成人国产在线观看| 1区2区3区欧美| 国产一区二区剧情av在线| 欧美性受xxxx黑人xyx| 国产欧美视频一区二区三区| 日本欧美加勒比视频| 日本精品视频一区二区三区| 精品电影一区二区三区| 午夜亚洲福利老司机| 91麻豆精品在线观看| 日本一区二区在线不卡| 狂野欧美性猛交blacked| 欧美日本一道本在线视频| 亚洲欧美日韩国产手机在线| 国产高清在线精品| 精品免费国产二区三区 | 蜜桃视频一区二区三区在线观看| 91亚洲资源网| 欧美国产精品中文字幕| 国产一区二区三区电影在线观看| 欧美日韩精品一区二区三区四区| 最新国产成人在线观看| 国产精品一区在线观看乱码| 欧美一级爆毛片| 午夜视频在线观看一区二区| 色吧成人激情小说| 日韩毛片高清在线播放| 成人av小说网| 中文字幕中文在线不卡住| 国产成人精品aa毛片| 久久婷婷国产综合国色天香| 卡一卡二国产精品| 精品日韩欧美一区二区| 精品中文av资源站在线观看| 日韩欧美国产午夜精品| 蜜臀va亚洲va欧美va天堂| 91精品国产高清一区二区三区蜜臀 | 美女尤物国产一区| 欧美va亚洲va国产综合| 久久se精品一区二区| 欧美不卡在线视频| 国产成人无遮挡在线视频| 国产亚洲精品bt天堂精选| 国产精选一区二区三区| 国产欧美一区二区精品性色| 国模套图日韩精品一区二区| 久久亚洲影视婷婷| 成人一区在线观看| 国产精品高潮久久久久无| 色综合一区二区三区| 亚洲主播在线观看| 日韩三级高清在线| 国产精品18久久久久久久久| 国产欧美一区二区三区在线看蜜臀| 欧美日韩一区二区三区在线看| 日本亚洲电影天堂| 久久久久久免费毛片精品| 成人精品鲁一区一区二区| 亚洲精品精品亚洲| 6080国产精品一区二区| 精品午夜一区二区三区在线观看| 久久精品视频在线看| 91蜜桃视频在线| 丝袜美腿亚洲色图| 国产欧美日韩麻豆91| 欧美三级资源在线| 国产在线乱码一区二区三区| 国产精品福利一区| 91精品国产高清一区二区三区蜜臀|