資源描述:
《動(dòng)態(tài)規(guī)劃算法分析實(shí)驗(yàn)報(bào)告.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、動(dòng)態(tài)規(guī)劃算法設(shè)計(jì)一、實(shí)驗(yàn)內(nèi)容編程實(shí)現(xiàn)圖示多段圖的最短路徑問(wèn)題的動(dòng)態(tài)規(guī)劃算法。(源代碼見(jiàn)附錄A)12345678111009129732811116535524644211127二、實(shí)驗(yàn)?zāi)康募碍h(huán)境實(shí)驗(yàn)?zāi)康模?、理解動(dòng)態(tài)規(guī)劃算法的概念;2、掌握動(dòng)態(tài)規(guī)劃算法的基本要素;3、掌握設(shè)計(jì)動(dòng)態(tài)規(guī)劃算法的步驟;4、通過(guò)應(yīng)用范例學(xué)習(xí)動(dòng)態(tài)規(guī)劃算法的設(shè)計(jì)技巧與策略。實(shí)驗(yàn)環(huán)境:WIN7系統(tǒng)下VC++6.0環(huán)境第6頁(yè)共6頁(yè)三、實(shí)驗(yàn)分析與設(shè)計(jì)采用動(dòng)態(tài)規(guī)劃算法的兩個(gè)基本要素:最優(yōu)子結(jié)構(gòu)性質(zhì):原問(wèn)題的最優(yōu)解包含了其子問(wèn)題的最優(yōu)解。子問(wèn)題的重疊性質(zhì):每次產(chǎn)生的子問(wèn)題并不總是新問(wèn)題,有些子問(wèn)題被反復(fù)計(jì)算多次
2、。實(shí)驗(yàn)定義:#definen12/*定義頂點(diǎn)數(shù)*/#definek5/*定義段數(shù)*/voidinit(intcost[])//初始化圖voidfgraph(intcost[],intpath[],intd[])向前遞推算法求最短路徑voidbgraph(intbcost[],intpath1[],intd[])向后遞推算法求最短路徑向前遞推算法實(shí)現(xiàn):{intr,j,temp,min;for(j=0;j<=n;j++)cost[j]=0;for(j=n-1;j>=1;j--){temp=0;min=c[j][temp]+cost[temp];//初始化最小值for(r=0;
3、r<=n;r++){if(c[j][r]!=MAX){if((c[j][r]+cost[r])4、的決策最優(yōu),最后構(gòu)造一個(gè)最優(yōu)解。經(jīng)過(guò)反復(fù)的調(diào)試操作,程序運(yùn)行才得出結(jié)果。第6頁(yè)共6頁(yè)三、附錄A#include#include#include#include#defineMAX100#definen12#definek5intc[n][n];voidinit(intcost[]){inti,j;for(i=0;i<13;i++){for(j=0;j<13;j++){c[i][j]=MAX;}}c[1][2]=9;c[1][3]=7;c[1][4]=3;c[1][5]=2;c[2][6]=4;
5、c[2][7]=2;c[2][8]=1;c[3][6]=2;c[3][7]=7;c[4][8]=11;c[5][7]=11;c[5][8]=8;c[6][9]=6;c[6][10]=5;c[7][9]=4;c[7][10]=3;c[8][10]=5;c[8][11]=6;c[9][12]=4;c[10][12]=2;c[11][12]=5;}voidfgraph(intcost[],intpath[],intd[]){intr,j,temp,min;for(j=0;j<=n;j++)cost[j]=0;for(j=n-1;j>=1;j--){temp=0;min=c[j]
6、[temp]+cost[temp];for(r=0;r<=n;r++){if(c[j][r]!=MAX)第6頁(yè)共6頁(yè){if((c[j][r]+cost[r])7、cost[j]=0;for(j=2;j<=n;j++){temp=12;min=c[temp][j]+bcost[temp];for(r=0;r<=n;r++){if(c[r][j]!=MAX){if((c[r][j]+bcost[r])=2;i--){path1[i]=d[path1[i+1]];}