版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
TSP問題的遺傳算法實驗報告一實驗題目TSP問題的遺傳算法實現(xiàn)二實驗目的熟悉和掌握遺傳算法的基本概念和基本思想;加深對遺傳算法的理解,理解和掌握遺傳算法的各個操作算子;理解和掌握運用遺傳算法進行問題求解的基本技能。三實驗規(guī)定1以10/30個結(jié)點的TSP問題為例,用遺傳算法加以求解;2掌握遺傳算法的基本原理、各個遺傳操作和算法環(huán)節(jié);3能求出問題最優(yōu)解,若得不出最優(yōu)解,請分析因素;4規(guī)定界面顯示每次迭代求出的局部最優(yōu)解和最終求出的全局最優(yōu)解。四數(shù)據(jù)結(jié)構(gòu)請說明染色體個體和群體的定義方法。typedefstruct{?intcolony[POPSIZE][CITY_NUM+1];//城市種群,默認出發(fā)城市編號為0,則城市編號的最后一個城市還應當為0每CITY_NUM個城市的排列組合為一個染色體 doublefitness[POPSIZE];//途徑適應值 doubleDistance[POPSIZE];//途徑實際長度 intBestRooting[CITY_NUM+1];//最優(yōu)城市途徑序列 doubleBestFitness;//最優(yōu)途徑適應值 doubleBestValue;//最優(yōu)途徑長度}TSP,*PTSP;五實驗算法1說明算法中對染色體的編碼方法,適應度函數(shù)定義方法;染色體的編碼方法:0~9一個排列組合為一條染色體。適應度函數(shù)的定義方法:取途徑長度的倒數(shù)。voidCalFitness(PTSPcity,intm){?inti,j,t=0; intstart,end;?for(i=0;i<POPSIZE;i++){//求適應值 ?city->Distance[i]=0;??for(j=1;j<=CITY_NUM;j++){???start=city->colony[i][j-1];end=city->colony[i][j]; ?city->Distance[i]=city->Distance[i]+CityDistance[start][end];??} city->fitness[i]=N/(city->Distance[i]);?}}2采用的選擇、交叉、變異操作算子的具體操作;voidSelect(PTSPcity){//選擇算子?inti,j;?doublesum=0,r,t; doublep[POPSIZE],q[POPSIZE+1];?intcopey[POPSIZE][CITY_NUM+1];?q[0]=0;?for(i=0;i<POPSIZE;i++)? sum+=city->fitness[i]; for(i=0;i<POPSIZE;i++)?{??p[i]=city->fitness[i]/sum;? q[i+1]=q[i]+p[i]; } for(i=0;i<POPSIZE;i++) { ?t=rand()%(10000); ?r=t/10000; for(j=0;j<POPSIZE;j++) ??if(r<=q[j+1]) ??{ ??*copey[i]=*city->colony[j];?? ?break;?? } }?for(i=0;i<POPSIZE;i++) *city->colony[i]=*copey[i];}voidAOX(PTSPcity,intn,intm)//改善啟發(fā)式算法{?intA[CITY_NUM-1],B[CITY_NUM-1];?inti,j; intk=1+CROSS_NUM,t=1+CROSS_NUM; for(i=0;i<CITY_NUM-1;i++)?{??A[i]=city->colony[n][i+1]; ?B[i]=city->colony[m][i+1];?} for(i=3;i<CROSS_NUM+3;i++) { ?city->colony[n][i-2]=B[i]; ?city->colony[m][i-2]=A[i];?} for(i=0;i<CITY_NUM-1;i++) { ?for(j=0;j<CROSS_NUM;j++)? ?if(A[i]==B[j+3])? break; ?if(j==CROSS_NUM)???city->colony[n][k++]=A[i];? for(j=0;j<CROSS_NUM;j++)?? if(B[i]==A[j+3])? ?break;??if(j==CROSS_NUM) ??city->colony[m][t++]=B[i];?}}intcheck1(intr[],intn)//判重{?inti; for(i=0;i<n;i++) if(r[i]==r[n])??{???returntrue; ?}?returnfalse;}voidCross(PTSPcity,doublepc){//交叉概率是p?inti; intr[20];?for(i=0;i<POPSIZE*pc;i++)?{??r[i]=rand()%(POPSIZE);? while(check1(r,i))? r[i]=rand()%(POPSIZE); }?for(i=0;i<POPSIZE*pc;i=i+2)??AOX(city,r[i],r[i+1]);}voidXCH(PTSPcity,intn)//對換變異{?intr,t;?intc; r=rand()%(CITY_NUM-1)+1; t=rand()%(CITY_NUM-1)+1;?while(r==t) t=rand()%(CITY_NUM-1)+1;?c=city->colony[n][r];?city->colony[n][r]=city->colony[n][t]; city->colony[n][t]=c;}voidMutation(PTSPcity,doublepm){//變異概率是pm?inti; intr[20]; for(i=0;i<POPSIZE*pm;i++) { ?r[i]=rand()%(POPSIZE); while(check1(r,i)) r[i]=rand()%(POPSIZE); ?XCH(city,r[i]);?}}3實驗中采用的算法參數(shù)的最佳選擇
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 招投標項目供應鏈管理優(yōu)化
- 商業(yè)廣場樓面耐磨施工合同
- 籃球場水電布線施工協(xié)議
- 石油開采挖機計時租賃合同
- 商務(wù)樓宇治安管理規(guī)則
- 生物科技項目跟投管理
- 舞臺座位分配指南
- 藝術(shù)展覽設(shè)計審查策略
- 言語康復治療師年終總結(jié)
- 2024-2030年中國汽車凸輪軸行業(yè)需求狀況及未來發(fā)展策略研究報告版
- 2024年企業(yè)合并協(xié)議與合同
- 天津市2024-2025學年高一上學期11月期中考試 化學試題(無答案)
- 養(yǎng)老院膳食營養(yǎng)保障方案
- 教師資格考試初級中學數(shù)學面試試題及解答參考(2024年)
- 陜西省漢中市勉縣第二中學2024-2025學年高二上學期11月期中考試政治試題
- 2024年中國醬香型習酒市場調(diào)查研究報告
- 質(zhì)量管理工程師(QA工程師)崗位招聘筆試題與參考答案
- 河北省邢臺市2023-2024學年八年級上學期期中數(shù)學試題(解析版)
- 《算法設(shè)計與分析基礎(chǔ)》(Python語言描述) 課件 第7章貪心法1
- 安全生產(chǎn)治本攻堅三年行動方案(2024-2026)
評論
0/150
提交評論