?? 遺傳算法.cpp
字號:
#include "CgaQueen.h"
using namespace std;
void p()
{
cout<<rand()%100<<' ';
}
void main()
{
clock_t start,end;
//這里是程序部分
int iGroup = 0;
CgaQueen *Queen;
int n = 10;
float totaltime = 0;
int number = 0;
do{
cout<<"請輸入皇后的個數(shù):";
cin>>n;
number = 0;
totaltime = 0;
do
{
number++;
start = clock();
iGroup = 0;
do
{
Queen = new CgaQueen;
//Queen->CgaQueens(0.7,0.01,n,n);
Queen->CgaQueens(0.75,0.1,n,n);
//Queen->ShowChromo();
do
{
/*
cout<<"代數(shù):"<<Queen->m_iGeneration<<endl;
Queen->ShowChromo();
cout<<"分數(shù):"<<Queen->m_dTotalFitnessScore<<endl;
//*/
Queen->Epoach();
}while(Queen->m_bBusy);
//Queen->ShowChromo();
iGroup++;
/*
if(!Queen->m_bSolved)
{
cout<<"未找到解!"<<endl;
}
else
{
cout<<"找到解了!"<<endl;
}
cout<<endl;
//*/
if(Queen->m_bSolved)
{
break;
}
delete Queen;
}while(1 == 1);
//Queen->ShowChromo();
//cout<<endl;
Queen->m_CSolve.ShowBits();
Queen->m_CSolve.UpdateFitnessScore();
//cout<<"適應性分數(shù):"<<Queen->m_CSolve.dFitness<<endl;
cout<<"number = "<<number<<endl;
cout<<"種群:"<<iGroup<<endl;
cout<<"代數(shù):"<<Queen->m_iGeneration<<endl;
delete Queen;
end = clock();
cout<<"start = "<<start<<endl;
cout<<"end = "<<end<<endl;
cout<< float(end-start)<<"ms"<<endl;
totaltime+=float(end-start);
}
//
while(number < 1);
cout<<"平均時間:"<<totaltime/number<<endl;
}while(n >= 4);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -