版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
TSP問題的遺傳算法實驗報告一實驗題目TSP問題的遺傳算法實現(xiàn)二實驗目的熟悉和掌握遺傳算法的基本概念和基本思想;加深對遺傳算法的理解,理解和掌握遺傳算法的各個操作算子;理解和掌握運用遺傳算法進行問題求解的基本技能。三實驗規(guī)定1以10/30個結點的TSP問題為例,用遺傳算法加以求解;2掌握遺傳算法的基本原理、各個遺傳操作和算法環(huán)節(jié);3能求出問題最優(yōu)解,若得不出最優(yōu)解,請分析因素;4規(guī)定界面顯示每次迭代求出的局部最優(yōu)解和最終求出的全局最優(yōu)解。四數(shù)據(jù)結構請說明染色體個體和群體的定義方法。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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國壽福祿雙喜亮點賣點分析及成功銷售四部曲
- 危險吊裝安全經(jīng)驗分享
- 齒輪科技:過去與未來-探究工業(yè)機械齒輪的歷史與前景
- 室內設計入門教程
- 甘肅省蘭州市2020年中考語文真題試卷(含答案)
- 二年級上冊心理健康教育教案
- 七彩管弦(三)-.a小調鋼琴三重奏 課件 2024-2025學年湘教版初中音樂八年級上冊
- 高壓氧艙事故應急救援預案
- 2014-2019年中國松花粉市場調研及投資發(fā)展趨勢預測報告
- 2010年中國催化劑行業(yè)市場研究及競爭力分析報告
- 期中模擬檢測(試題) 2024-2025學年五年級上冊數(shù)學北師大版
- 安全生產(chǎn)治本攻堅三年行動方案(2024-2026)
- 統(tǒng)編版(2024新版)七年級上冊歷史第三單元 秦漢時期:復習課件
- 2024年家裝家居行業(yè)解決方案-淘天集團
- 體格檢查神經(jīng)系統(tǒng)檢查課件
- 糧油食材配送投標方案(大米食用油食材配送服務投標方案)(技術方案)
- 【核心素養(yǎng)目標】13.3.1.2 等腰三角形的判定教案人教版數(shù)學八年級上冊
- 2024年中國北方工業(yè)限公司校園招聘易考易錯模擬試題(共200題)試卷后附參考答案
- 北京版小學英語1至6年級詞匯
- 2024-2030年中國超超臨界發(fā)電機組行業(yè)現(xiàn)狀動態(tài)與未來前景預測報告
- 市場營銷學的題庫
評論
0/150
提交評論