




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、商人過河問題一、三名商人各帶一名隨從的情況1. 問題(略)2. 模型假設 當一邊岸滿足隨從數(shù)大于商人數(shù),但商人數(shù)為0時仍為一種安全狀 態(tài); 小船至多可容納2人,且渡河時由隨從(或者商人)來劃船。3. 分析與建模商人過河需要一步一步實現(xiàn),比如第一步:兩個仆人過河,第二步:一個 仆人駕船回來,第三步:又是兩個仆人過河,第四步:其中每一步都使當前狀態(tài)發(fā)生變化,而且是從一種安全狀態(tài)變?yōu)榱硪环N安 全狀態(tài)。如果我們把每一種安全狀態(tài)看成一個點,又如果存在某種過河方式使 狀態(tài)“變到狀態(tài)幾 則在點和點b之間連一條邊,這樣我們把商人過河問題和 圖聯(lián)系起來,有可能用圖論方法來解決商人過河問題。建模步驟:首先要確定過
2、河過程中的所有安全狀態(tài),我們用二元數(shù)組(刃 表示一個安全狀態(tài)(不管此岸還是彼岸),其中x表示留在此岸的主人數(shù),y表 示留在此岸的隨從數(shù)。兩岸各有十種安全狀態(tài):(0,0),(0,1 ),(0,2),(0,3),(2,2),( 1,1 ),(3,0),(3,1 ),(3,2),(3,3)4在兩岸的安全狀態(tài)之間,如存在一種渡河方法能使一種狀態(tài)變?yōu)榱硪环N 安全狀態(tài),則在這兩種狀態(tài)之間連一條邊。這樣,得到如下一個二部圖(圖1), 其中下方頂點表示此岸狀態(tài),上方頂點表示彼岸狀態(tài)。我們的目的是要找出一 條從此岸(3,3)到彼岸(0.0)的最短路。觀察發(fā)現(xiàn)此岸的狀態(tài)(0,0), (3,0)和彼岸的狀態(tài)(0,3
3、), (3,3)都是孤立點,在求最短路的過程中不涉及這些點,把它們刪去。兩岸的點用1,2,,16重 新標號。(3,3)(3,2)(3,1)(3,0)(1,1) (2,2)(0,3)(0,2)(0,3)(0,0)O O OOOGO(3,3)(3,2)(3,1)(3,0)(1,1)(2,2)(0,3)(0,2)(0,3)(0,0)(圖1)4模型求解求最短路程的matlab程序如下:function route=sroute(G, opt)%求圖的最短路的Dijkstra算法程序,規(guī)定起點為1,頂點連續(xù)編號%G是給定圖的鄰接矩陣或弧表矩陣,程序能夠自動識別%當。20 (或缺省)時求無向圖的最短路,當
4、opt=l時求有向圖的最短路%d標記最短距離%route是一個矩陣,第一行標記頂點,第二行標記1到該點的最短路,第三行標記最短路上 該點的先驅(qū)頂點while 1%此循環(huán)自動識別或由弧表矩陣生成鄰接矩陣if G(l,l)=0A=G;breakelsee=Gn=max(e(:, 1) ;e(: 2);%頂點數(shù)DFsizeCe, 1);M=sum(e(:, 3);A=M*ones(n, n);%邊數(shù)%代表無窮大for k=l:mA(e(k, 1), e(k, 2)=e(k, 3);if opt=0A(e(k, 2),e(k, l)=e(k, 3);%形成無向圖的鄰接矩陣endendA=A-M*eye
5、(n)endbreakendpb (1: length (A)=0;pb (1) =1;%形成圖的鄰接矩陣indcxl=l; index2=ones(1, length(A);d (1: length (A)=M;d (1) =0; temp=l;%標記距離while sum(pb)=2index二index;end%記錄前驅(qū)頂點index2(temp)=index;endroute=1:n;d;index2;在matlab的命令窗口輸入圖(1)的弧表矩陣e:e=l 2;1 4;1 10;3 4;3 6;3 10;5 6;5 8;7 14;7 16;9 8;9 12;11 12;11 14;
6、13 14;13 16;15 16;e=e, ones(17,1);%邊權(quán)都設為 1調(diào)用程序: route=sroute(e, 0)運行結(jié)果:e =121141110134136131015615817141716198191211112111141131411316115161route =1234567891011 121314151601214310561871091211114163145811291411167這表示存在一條從1到16的長度為11的路:14 3 6 51211 14 7 16,此路對應商人成功渡河的一個方案:(3,3)變?yōu)?3,1)變?yōu)?3,2)變?yōu)?3,0)變?yōu)?3
7、,1)變?yōu)?1,1) 變?yōu)?2,2)變?yōu)?0,2)變?yōu)?0,3)變?yōu)?0,1)變?yōu)?1,1)變?yōu)?0,0)即:兩個仆人過河,一個仆人回來;有兩個仆人過河,一個仆人回來;兩 個主人過河,一主一仆回來;有兩個主人過河,一個仆人回來;兩個仆人過河, 一個仆人回來;最后兩個仆人過河。這樣,商人安全過河。若把剛才的最短路上的邊權(quán)全部改大,如取2或3,重新運行程序,得到同 樣的結(jié)果,但實際上還有另外一種安全渡河狀態(tài):(3, 3)變?yōu)?2, 2)變?yōu)?3, 2)變?yōu)?3, 0)變?yōu)?3,1)變?yōu)?1,1)變?yōu)?2, 2)變?yōu)?0, 2)變?yōu)?0, 3)變?yōu)?0,1)變?yōu)?0, 2)變?yōu)?0, 0)5.圖解法
8、將十種安全狀態(tài)的點在直角坐標系中標出,如下圖(0,0), (0,1), (0,2), (0,3), (2,2), (1,1), (3,0), (3,1), (3,2), (3,3) (實線表示才此岸開往彼岸,虛線表示才彼岸開往此岸)Sti圖中4到右給出了商人安全渡河的一條路徑。二、四名商人各帶一名隨從1問題:四名商人各帶一名隨從時,就附加說明條件才能實現(xiàn)安全渡河。2.原模型求解改編程序重新運行,或用遞歸的方法程序運行,結(jié)果運行出現(xiàn)錯誤或死機, 這說明模型無解,即四名商人各帶一名隨從在原條件下無安全狀態(tài)渡河。所以我們需附加一定的條件,使模型有解。由第一問中的條件可知:商人 渡河的限制條件是在任何
9、一邊岸商人數(shù)一定要比隨從數(shù)多且小船最多只能載2 人,而安全狀態(tài)(即商人數(shù)比隨從數(shù)多)是最其本的前提條件,因此我們考慮 更改小船的容量來實現(xiàn)安全渡河。3.新模型及求解當小船的容量為5或大于5時,顯然一種安全渡河方式為:先4名隨從渡 河,1名隨從回來;隨后4名商人與回來的那名隨從一起渡河。當小船容量為4 時,一種渡河方案為:先4名隨從渡河,1名隨從回來;再3名商人渡河,1名 商人和1名隨從回來;最后2名商人和2名隨從一起渡河?,F(xiàn)在我們考慮小船容量為3時的情況:(在這我們用圖解法來完成) 9步渡河方案(如圖所示):01234圖即:第一步先三名隨從過河,一名隨從回來;再兩名商人過河,一名商人 和一名隨從回來;再三名商人過河,一名隨從回來;再三名隨從過河,一名隨 從回來;最后兩名隨從過河。 11步度河方案(如圖所示):01234x圖即:第一步先一名商人和一名隨從過河,一名商人回來;再三名隨從過河, 一名隨從回來;再三名商人過河,一名商人和一名隨從回來;再兩名商人過河, 一名隨從回來;最后
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國時尚服飾行業(yè)市場調(diào)研分析及投資戰(zhàn)略咨詢報告
- 2025年血液凈化器械銷售與臨床支持合同范本
- 2024年賣方行業(yè)市場需求及未來五至十年預測報告
- 2022-2027年中國感特靈膠囊行業(yè)市場全景評估及發(fā)展戰(zhàn)略研究報告
- 2025年金棉褲行業(yè)深度研究分析報告
- 2025年度網(wǎng)絡直播平臺主播合約轉(zhuǎn)讓規(guī)范范本
- 2025年度海洋資源開發(fā)與利用合同集合
- 洗滌劑用三丙二醇甲醚項目節(jié)能評估報告(節(jié)能專)
- Unit 4 My home Part A(教學設計)-2024-2025學年人教PEP版英語四年級上冊
- 2025年中國證券經(jīng)紀行業(yè)市場全景評估及發(fā)展趨勢研究預測報告
- 陳鶴琴傳記和生平課件
- 中考英語模擬試卷(10套)
- 中國新生兒復蘇指南解讀(2021修訂)
- 麻醉藥品與精神藥品不良反應的防治 (1) - 副本課件
- 關(guān)于護士服的調(diào)研課件
- 小學運動傷害事故應急預案
- 安全評價工作程序框圖流程圖
- 臨床血液學檢驗第5講骨髓活檢及細胞生物學實驗技術(shù)
- 空間生產(chǎn)理論
- 網(wǎng)絡營銷教案完整版講義
- 《固體物理學》全冊完整教學課件
評論
0/150
提交評論