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

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

?? generation.cpp

?? 遺傳算法,何不錯的代碼哦,歡迎下載了,不要登陸的
?? CPP
字號:
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <math.h>
using namespace std;

#define POPSIZE 50							//最大種群數(shù)
#define CHROMLENGTH 22				//染色體長度
#define PI 3.1415926535					//PI

int maxgeneration=200;			        //最大代數(shù)
double pc=0.25;							    //交叉概率
double pm=0.01;							    //變異概率
double xmin=-1,xmax=2;

struct Individual
{
	char chrom[CHROMLENGTH+1];		//編碼串
	double value;									//函數(shù)值
	double fitness;								    //適應度
};

int     generation;								 //代數(shù)
Individual currentbest;						 //當前種群中的最佳個體(即函數(shù)值最大者)
Individual population[POPSIZE];		 // 種群

long DecodeChromosome(char *string ,int length) //給染色體解碼
{
	int i;
	long value=0;
	for(i = 0 ;i < length ;i ++)
	{
		if(string[i] - '0' == 1)
			value += (long)pow((double)2,i);
	}
	return (value);
}

void CalculateFitnessValue()				//計算適應度
{
	int i;
	
	for(i=0;i<POPSIZE;i++)
	{
		population[i].fitness = population[i].value;
	}
}

void CalculateFunctionValue()				 //計算函數(shù)值
{
	int i;
	long temp;
	double x;
	
	for (i=0; i<POPSIZE; i++)
	{
		temp = DecodeChromosome(population[i].chrom,CHROMLENGTH);
		x = -1 + (xmax-xmin)*temp/(pow((double)2,CHROMLENGTH)-1);
		population[i].value=x*sin(10*PI*x)+1.0;
	}
}

void Select()						//比例選擇算法
{
	int i,index;
	double p,sum=0.0;
	double cfitness[POPSIZE];		//存每個個體的概率
	Individual newpopulation[POPSIZE];
	
	for(i=0;i<POPSIZE;i++)
		sum+=population[i].fitness;
	for(i=0;i<POPSIZE; i++)
		cfitness[i]=population[i].fitness/sum;
	for(i=1;i<POPSIZE; i++)			//計算累計概率
		cfitness[i]=cfitness[i-1]+cfitness[i];
	
	for (i=0;i<POPSIZE;i++)
	{
		p=rand()%1000/1000.0;
		index=0;
		while (p>cfitness[index])
			index++;
		newpopulation[i]=population[index];
	}								//輪盤賭選擇
	for(i=0;i<POPSIZE; i++)
		population[i]=newpopulation[i];
}

void Mutate()				 //變異操作
{
	int i,j;
	double p;
	
	for(i=0;i<POPSIZE;i++)
	{
		for(j=0;j<CHROMLENGTH;j++)
		{
			p=(rand()%1000)/1000.0;
			if (p<pm)
			{
				population[i].chrom[j]=(population[i].chrom[j]=='0')?'1':'0';
			}
		}
	}
}

void Cross() //交叉算法
{
	int i,j;
	int index[POPSIZE];
	int point,temp;
	double p;
	char ch;
	
	for(i=0;i<POPSIZE;i++)
		index[i]=i;
	for(i=0;i<POPSIZE;i++)
	{
		point=rand()%(POPSIZE-i);
		temp=index[i];
		index[i]=index[point+i];
		index[point+i]=temp;
	}//對當前個體進行隨機排序
	
	for(i=0;i<POPSIZE-1;i+=2)
	{
		p=rand()%1000/1000.0;
		if (p<pc)
		{
			point=rand()%(CHROMLENGTH-1)+1;
			for (j=point; j<CHROMLENGTH;j++)
			{
				ch=population[index[i]].chrom[j];
				population[index[i]].chrom[j]=population[index[i+1]].chrom[j];
				population[index[i+1]].chrom[j]=ch;
			}
		}
	}
}



void FindBestIndividual()  //求當前種群中的最佳個體
{
	int i;
	int best_index;

	Individual bestIndividual=population[0];
	for (i=1;i<POPSIZE; i++)
	{
		if (population[i].fitness>bestIndividual.fitness)
		{
			bestIndividual=population[i];
			best_index=i;
		}
	}

	if (generation==0)
	{
		currentbest=bestIndividual;
	}
	else
	{
		if(bestIndividual.fitness>=currentbest.fitness)
		{
			currentbest=bestIndividual;
		}
	}
}

void GenerateInitial( )					//種群初始化
{
	int i,j;
	for (i=0;i<POPSIZE; i++)
	{
		for(j=0;j<CHROMLENGTH;j++)
		{
			population[i].chrom[j]=(rand()%10<5)?'0':'1';
		}
	}
}

void NextGeneration() //生成下一代
{
	Select();
	Cross();
	Mutate();
}

void EvaluatePopulation()
{
	CalculateFunctionValue();
	CalculateFitnessValue();
}

double CalX(char *str)			//將str轉成對應的x的值
{
	long temp;
	double x;
	temp = DecodeChromosome(str,CHROMLENGTH);
	x = -1 + (xmax-xmin)*temp/(pow((double)2,CHROMLENGTH)-1);
	return x;
}

int main()
{
	srand(time(NULL));
	printf("f(x)=x*sin(10*PI*x)+1.0 (-1<=x<=2)\n");
	generation=0;
	GenerateInitial();
	EvaluatePopulation();
	while(generation<maxgeneration)
	{
		generation++;
		NextGeneration();
		EvaluatePopulation();
	}
	FindBestIndividual();
	printf("函數(shù)最大最值等于:%f\n",currentbest.value);
	printf("X的值是:%f\n",CalX(currentbest.chrom));
    printf("染色體的編碼是:");
	for (int i=0;i<CHROMLENGTH;i++)
	{
		printf("%c",currentbest.chrom[i]);
	}
	printf("\n");
	return 0;
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久综合视频| 精品视频在线看| 一卡二卡三卡日韩欧美| 视频一区视频二区中文| 高清不卡一区二区| 日韩色在线观看| 国产婷婷色一区二区三区| 伊人婷婷欧美激情| 国产精品18久久久久久久久久久久 | 国产日韩亚洲欧美综合| 亚洲一级二级三级| aaa欧美日韩| 久久综合久久99| 日本不卡视频在线观看| 欧美天堂亚洲电影院在线播放| 久久久久久久久蜜桃| 日韩国产高清影视| 欧美三级日韩三级国产三级| 国产精品夫妻自拍| 懂色av中文一区二区三区| 精品理论电影在线| 美国一区二区三区在线播放| 在线观看欧美精品| 亚洲精品中文在线观看| av电影在线观看一区| 国产精品视频免费| 成人综合激情网| 欧美激情中文不卡| 懂色av中文字幕一区二区三区 | 国产精品一区二区果冻传媒| 91精品免费在线观看| 亚洲国产一区二区视频| 欧洲亚洲精品在线| 视频一区在线播放| 日韩一卡二卡三卡国产欧美| 午夜精品123| 欧美精品久久99| 免费成人深夜小野草| 日韩欧美成人激情| 黄页视频在线91| 久久精品一区二区三区不卡牛牛| 免费美女久久99| 精品成人一区二区| 国产老女人精品毛片久久| 国产精品日韩精品欧美在线| 成人免费高清在线观看| 亚洲三级视频在线观看| 欧美日韩久久久| 奇米精品一区二区三区在线观看| 日韩午夜精品视频| 丁香天五香天堂综合| 一区视频在线播放| 欧美日韩国产色站一区二区三区| 青青草国产成人av片免费| 欧美大片一区二区三区| 国产激情精品久久久第一区二区 | 日韩**一区毛片| 精品剧情v国产在线观看在线| 国产精品一区在线观看你懂的| 久久久高清一区二区三区| 91免费视频网| 蜜臀久久99精品久久久久久9| 国产亚洲视频系列| 色哟哟国产精品| 裸体歌舞表演一区二区| 亚洲国产高清在线观看视频| 色综合久久久久| 日韩成人伦理电影在线观看| 久久久久97国产精华液好用吗| 91免费看片在线观看| 久久精品国内一区二区三区| 国产精品久久久久久久久免费丝袜| 91成人免费在线视频| 国产一区二区在线观看视频| 亚洲免费在线电影| 精品精品国产高清a毛片牛牛 | 国产精品久久久一本精品| 欧美性欧美巨大黑白大战| 美美哒免费高清在线观看视频一区二区| 国产精品网友自拍| 777午夜精品视频在线播放| 国产精品99久久久| 视频一区二区三区在线| 中文字幕中文字幕一区| 日韩欧美成人一区二区| 91国偷自产一区二区开放时间| 狠狠色丁香九九婷婷综合五月| 伊人色综合久久天天| 欧美国产精品一区二区| 欧美人狂配大交3d怪物一区| 成人h动漫精品一区二区| 开心九九激情九九欧美日韩精美视频电影| 中文字幕一区二区三区不卡在线| 欧美一区二区大片| 欧美性做爰猛烈叫床潮| 91视视频在线观看入口直接观看www | 欧美日韩国产乱码电影| 色美美综合视频| 国产夫妻精品视频| 国内精品视频666| 午夜精品久久久久久久99水蜜桃 | 国产午夜精品一区二区三区四区 | 国产精品人妖ts系列视频| 欧美一区二区不卡视频| 欧美在线一二三四区| 91丨porny丨首页| 成人激情开心网| 成人一二三区视频| 国产成人精品aa毛片| 黄页网站大全一区二区| 国内精品免费**视频| 韩国精品一区二区| 精品制服美女久久| 精品亚洲国产成人av制服丝袜| 欧美bbbbb| 免费高清视频精品| 精品一区二区三区视频| 韩国三级在线一区| 国产精品综合一区二区| 国产一区二区视频在线播放| 国产一区二区伦理片| 国产一区二区免费看| 国产91丝袜在线观看| 成人午夜免费视频| 91亚洲男人天堂| 在线日韩一区二区| 777色狠狠一区二区三区| 日韩美女视频在线| 久久久噜噜噜久噜久久综合| 久久久99免费| 国产精品无码永久免费888| 亚洲精品国产第一综合99久久| 亚洲免费在线观看| 首页综合国产亚洲丝袜| 麻豆成人久久精品二区三区红| 精品无人区卡一卡二卡三乱码免费卡 | 国产精品一色哟哟哟| www.欧美亚洲| 色老综合老女人久久久| 欧美高清视频一二三区 | 欧美日韩在线播放一区| 91麻豆精品国产91久久久资源速度| 日韩一区二区麻豆国产| 国产亚洲精品福利| 亚洲精品国产一区二区精华液 | 色婷婷av一区二区三区大白胸| 欧美在线不卡视频| 日韩欧美一级精品久久| 国产精品人人做人人爽人人添| 一区二区三区精密机械公司| 日韩高清不卡在线| 成人黄色电影在线 | 国产蜜臀97一区二区三区 | 国产女人水真多18毛片18精品视频| 中文字幕一区二区三区在线播放| 亚洲成人在线免费| 国产精华液一区二区三区| 欧美午夜电影网| 久久久99久久| 日韩精品一级二级 | 26uuu亚洲| 亚洲精品菠萝久久久久久久| 日本不卡一区二区三区高清视频| 国产精品一区二区你懂的| 欧美挠脚心视频网站| 中文av一区二区| 久久精品av麻豆的观看方式| 成人激情小说网站| 2023国产精品视频| 午夜电影网一区| 99久久99久久精品国产片果冻| 欧美一区日韩一区| 亚洲免费色视频| 波多野结衣的一区二区三区| 欧美电影免费观看高清完整版在线 | 欧美一区二区三区小说| 成人欧美一区二区三区黑人麻豆| 蜜臂av日日欢夜夜爽一区| 欧洲av在线精品| 国产精品电影院| 国产成人午夜精品影院观看视频 | 亚洲成人资源在线| 欧美日韩不卡视频| 国产精华液一区二区三区| 黄一区二区三区| 在线播放欧美女士性生活| 一区二区在线观看视频| 成人免费视频免费观看| 久久综合色播五月| 九一久久久久久| 日韩女优制服丝袜电影| 日韩vs国产vs欧美| 欧美乱妇20p| 丝瓜av网站精品一区二区| 欧美性色综合网| 五月婷婷欧美视频| 欧美日韩精品一区二区三区蜜桃| 一区二区三区免费看视频| 色偷偷88欧美精品久久久| 亚洲免费观看在线视频|