2007年大學(xué)生數(shù)學(xué)建模B題優(yōu)秀論文-公共交通網(wǎng)絡(luò)模型_第1頁
2007年大學(xué)生數(shù)學(xué)建模B題優(yōu)秀論文-公共交通網(wǎng)絡(luò)模型_第2頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、,word ,完美整理版 ,專業(yè)資料參考分享 摘要: 明年8月第29屆奧運(yùn)會將在北京舉行,屆時有大量觀眾到現(xiàn)場觀看奧運(yùn)比賽,這將對北京的交通帶來 巨大的影響。本文以給岀的北京地區(qū)公交路線為參考資料,根據(jù)公交網(wǎng)絡(luò)換乘問題構(gòu)建了公共交通網(wǎng)絡(luò)模 型。對三個問題的解決方案如下: (1 )針對問題1,本文首先利用 MATLAB編程將公交線路讀出,求出各站點(diǎn)間的鄰接矩陣。再根據(jù)所求 的鄰接矩陣。對求得的鄰接矩陣進(jìn)行處理;判斷起點(diǎn)和終點(diǎn)之間有沒有直達(dá)的線路,如有就確定為最優(yōu)線 路,沒有就在通過程序?qū)ふ乙粋€合適的數(shù)值(記為 M)作為限制(即找岀鄰接點(diǎn)最多的那部分站點(diǎn)),找 出通過次數(shù)超過這個數(shù)值的站點(diǎn)。 下一

2、步則尋找換乘站點(diǎn)。通過把求得的站點(diǎn)與要求的起點(diǎn)和終點(diǎn),建立循環(huán)逐個修改開始站點(diǎn)與最終站點(diǎn) 的值可求岀通過各站點(diǎn)的路線,再將經(jīng)過所求得的站點(diǎn)的路線與經(jīng)過起點(diǎn)和終點(diǎn)的路線進(jìn)行比較,尋找相 同的路線,若存在,則這個站點(diǎn)可以作為所給的這對起點(diǎn)與終點(diǎn)的中轉(zhuǎn)站(但根據(jù)人們乘車的習(xí)慣,假設(shè) 中轉(zhuǎn)的次數(shù)不超過2次)。如果的站點(diǎn)中無法找到中轉(zhuǎn)站,則調(diào)整 M的值,直到可以找到可行的乘車路線 為止。 根據(jù)得到的可行乘車線路, 利用路過分別與費(fèi)用和時間的函數(shù)關(guān)系, 計(jì)算岀按照吸收較小轉(zhuǎn)車次數(shù)的原則, 比較用錢少、費(fèi)時少的線路,最終得到最優(yōu)的乘車方案。 (2) 針對問題2,將換乘地鐵站和公汽站視為對等的,與問題 1相似

3、,利用相同的方法求出最優(yōu)線路,但 是情況比問題1更復(fù)雜,特別是地鐵與地鐵之間還可以換乘,這需要單獨(dú)進(jìn)行考慮。此時,站點(diǎn)數(shù)、費(fèi)用 和時間的函數(shù)發(fā)生了變化,因此,利用新的函數(shù)表達(dá)式求解再比較得到最優(yōu)線路。 (3) 針對問題3,考慮步行時,可先利用圖論中的 Floyd算法求岀任意兩站點(diǎn)間的最短道路,并在此基礎(chǔ) 上求岀這段路步行所需要的時間。再在第二問的基礎(chǔ)上,對時間加一個閾值 T。當(dāng)計(jì)算岀的兩點(diǎn)間最短路 的步行時間 閾值T時,就選擇步行,否則,選擇問題 2中求得的最優(yōu)線路。 本文所考慮的算法,可以查詢?nèi)我鈨蓚€站點(diǎn)間的乘車最優(yōu)路徑。 關(guān)鍵詞:MATLAB程序、公交換乘、限制求解、 Floyd算法、最優(yōu)

4、線路 一、 問題重述 北京申奧的成功,對北京市的交通系統(tǒng)提岀了更高的要求。 依據(jù)國外舉辦奧運(yùn)會的經(jīng)驗(yàn)教訓(xùn)來看, 奧運(yùn) 期間交通狀況是否良好,交通管理是否高效,是關(guān)系奧運(yùn)盛會能否圓滿成功舉辦的舉足輕重的條件之一。 因此,必須在全面調(diào)研基礎(chǔ)上,制定切實(shí)可行的交通規(guī)劃及管理策略,為奧運(yùn)會的成功保駕護(hù)航。 在觀眾的交通行為中,軌道站點(diǎn)、外圍停車場和專用巴士的換乘,是整個交通鏈的重要環(huán)節(jié),一旦岀現(xiàn)交 通瓶頸,其向上游反饋形成的阻塞波 (或者稱為交通擾動)會溯源而上并且影響加劇,最終造成主會場人員 疏散的延誤和交通設(shè)施服務(wù)水平的降低以及一定程度上的混亂和連帶的不可估量的經(jīng)濟(jì)損失、負(fù)面的社會 影響。因此應(yīng)從

5、系統(tǒng)全局考慮進(jìn)行換乘系統(tǒng)規(guī)劃,保證觀眾岀行全過程的流暢。 二、 模型假設(shè) 1、 乘客到起始站可以直接選擇公汽或地鐵班次上車,即不記在起始站的等待時間。 2、 在實(shí)際過程中,對于公交(包括公汽與地鐵)可能要換車 2次以上,用戶已無法容忍,視為無法到達(dá)。 (因?yàn)槿绻麄冎g換乘就使得費(fèi)用增大了很多,這是人們不愿意看到的,且一般只坐地鐵是無法到達(dá)終 點(diǎn)站的,所以還要再換乘其他的工具,換乘次數(shù)太大我們也不再將其納入考慮的范圍)。 3、 相鄰地鐵站平均行駛時間(包括停站時間):2.5分鐘。 4、 相鄰公汽站平均行駛時間(包括停站時間):3分鐘。,word ,完美整理版 ,專業(yè)資料參考分享 5分鐘(其中步

6、行時間2分鐘)。 4分鐘(其中步行時間2分鐘)。 7分鐘(其中步行時間4分鐘)。 9、公汽票價:分為單一票價與分段計(jì)價兩種,標(biāo)記于線路后;其中分段計(jì)價票價為: 40站:2元;40站以上:3元 10、 地鐵票價:3元(無論地鐵線路間是否換乘) 11、 已知所有站點(diǎn)之間的步行時間。 12、 同一地鐵站對應(yīng)的任意兩個公汽站之間可以通過地鐵站換乘 (無需支付地鐵費(fèi)) 13、 郊縣和繁華地區(qū)公交車站的間隔大概一致。 三、 符號說明 1、 表示第一問中從起點(diǎn)站到終點(diǎn)站所用的總時間。 2、 表示表示第一問中從起點(diǎn)站到終點(diǎn)站經(jīng)過的總站點(diǎn)數(shù)。 3、 M表示求取局部最優(yōu)解的限制值。 4、 T表示判斷是坐車還是步行

7、的閾值,但這個值因人而易。 四、 問題的分析 文獻(xiàn)2對公交乘客的岀行心理進(jìn)行了研究,其結(jié)果表明, 換乘次數(shù)”是大部分公交乘客在選擇岀行路線時 首先考慮的因素,其次是岀行耗時和距離長短。而岀行耗費(fèi)的時間與換乘的次數(shù),及等車的時間以及距離 的長短密切相關(guān)。因此,對于岀行耗時和距離長短,轉(zhuǎn)化為換乘次數(shù)最少的基礎(chǔ)上岀行距離最短的問題。 對公交換乘的問題進(jìn)行 研究,首先就是要解決公共交通網(wǎng)絡(luò)模型如何合理地表述;其次是公交換乘問題的解決思想。公共交通網(wǎng) 絡(luò)不同于一般的道路交通網(wǎng)絡(luò),在許多書籍文獻(xiàn)中都對公共交通網(wǎng)絡(luò)的特點(diǎn)進(jìn)行了闡述,如網(wǎng)絡(luò)的連通性 不同于普通道路網(wǎng),結(jié)點(diǎn)有其空間位置特性和一對多的屬性等,并分

8、析了弧段的特性及有向線的性質(zhì)。對 于公交網(wǎng)絡(luò)的特點(diǎn)不再贅述。在 GIS網(wǎng)絡(luò)分析中,公共交通網(wǎng)絡(luò)可以映射為一個有向圖。根據(jù)公共交通網(wǎng) 絡(luò)的特點(diǎn),把公交網(wǎng)絡(luò)模型映射為,其中, G為有向賦權(quán)圖;V表示網(wǎng)絡(luò)上所有結(jié)點(diǎn)即公交站點(diǎn)的集合, 一個公交站點(diǎn)可能是多條公交線路的上下客站點(diǎn);表示網(wǎng)絡(luò)邊 (連接公交線路上兩個公交站點(diǎn)之間的弧段 ) 的集合,若A站點(diǎn)與B站點(diǎn)是n條線路的相鄰上下客站點(diǎn),那么 A與B之間至多有2n條連接邊:R表示 網(wǎng)絡(luò)上連接起始點(diǎn)和目標(biāo)點(diǎn)間所有結(jié)點(diǎn)的公交線路的集合; 是結(jié)點(diǎn)的非負(fù)權(quán)值;是邊的非負(fù)權(quán)值4。最優(yōu) 岀行路徑就是指乘客從起始點(diǎn)到目標(biāo)點(diǎn)所選擇的一系列連通結(jié)點(diǎn)組成的距離最短的路段及最

9、少換乘的公交 線路的集合。3 在GIS中道路網(wǎng)絡(luò)的基本框架是 結(jié)點(diǎn)一弧段”模型。但對于弧段包含的屬性是一對多的關(guān)系、 弧段使用 線型系統(tǒng)而不是二維坐標(biāo)確定點(diǎn)的位置、弧段中的屬性需要分段處理等情況,這種模型顯得無能為力。這 里將交通網(wǎng)絡(luò)模型采用 結(jié)點(diǎn)一弧段(可有多條弧段)一有向線”的數(shù)據(jù)結(jié)構(gòu)(如圖1)來存儲網(wǎng)絡(luò)圖。按照公 共汽車線路選擇所經(jīng)過的站點(diǎn)一路線一站點(diǎn)”形成路徑分析中的有向線。所以以分支多的站點(diǎn)作為求解換 乘站點(diǎn)的突破點(diǎn)。 由對與各站點(diǎn)鄰接的站點(diǎn)的個數(shù)的統(tǒng)計(jì), 如圖2所示(其中14表示的是含有鄰接點(diǎn)個數(shù)為 16的情況), 可以斷定鄰接點(diǎn)個數(shù)較小的站點(diǎn)的比列較大,在大部分站點(diǎn)處換乘機(jī)會存在

10、的可能性很小,所以我們并沒 有必要多所有的站點(diǎn)進(jìn)行搜索,找尋換乘點(diǎn);而只需在含有鄰接點(diǎn)個數(shù)較大的站點(diǎn)中找尋,從而產(chǎn)生了限 制性的搜索方法。 5、 公汽換乘公汽平均耗時: 6、 地鐵換乘地鐵平均耗時: 7、 地鐵換乘公汽平均耗時: 8、公汽換乘地鐵平均耗時: 6分鐘(其中步行時間4分鐘)。 0 20 站: 1 元;21 ,word ,完美整理版 ,專業(yè)資料參考分享 五、模型的建立 5.1只考慮公汽的情形: 由于公交車站的間隔大概在 1000m左右(郊縣和繁華地區(qū)可能略有差別,所以忽略這種差別),因此在換 乘次數(shù)盡量最少的原則之下,以從岀發(fā)地點(diǎn)到達(dá)目的地點(diǎn)的總乘車站數(shù)為基準(zhǔn),找岀換乘車前后總乘車站

11、 數(shù)為最少的作為系統(tǒng)的推薦線路,這樣即符合常規(guī),也可能是最優(yōu)線路 2。 對于任意的起點(diǎn)和終點(diǎn),可能存在以下四種情況: (1 )、起點(diǎn)與終點(diǎn)在同一線路上,不需要換車(即存在直達(dá)路線); (2) 、起點(diǎn)與終點(diǎn)不在同一線路上,需要換車 1次; (3) 、起點(diǎn)與終點(diǎn)不在同一線路上,需要換車 2次; (4) 、起點(diǎn)與終點(diǎn)不在同一線路上,需要換車次數(shù)大于 2次,視為通過換車無法達(dá)到(見模型假設(shè) 2) 為盡量滿足使換乘次數(shù)達(dá)到最少,首先利用遞歸的方式,判斷起點(diǎn)和終點(diǎn)之間是否有直達(dá)路線,如有就比 較其用時與費(fèi)用,選擇花費(fèi)時間與金錢都最少的路線作為最優(yōu)路線;否則,就確定 M的值,選擇含有鄰接 站點(diǎn)個數(shù)大于M的那

12、些站點(diǎn)進(jìn)行考慮(即采取限制求解的方法),在他們中間尋找換乘站點(diǎn),而不是對所 有的路線進(jìn)行考慮。 具體方法是:把求得的站點(diǎn)與要求的起點(diǎn)和終點(diǎn),利用附錄:(三),建立循環(huán)諑個修改 begin_s與 end_s的值可求岀通過各站點(diǎn)的路線,再將經(jīng)過所求得的站點(diǎn)的路線與經(jīng)過起點(diǎn)和終點(diǎn)的路線進(jìn)行比較, 尋找相同的路線,若存在,則這個站點(diǎn)可以作為所給的這對起點(diǎn)與終點(diǎn)的中轉(zhuǎn)站 (但根據(jù)人們乘車的習(xí)慣, 假設(shè)中轉(zhuǎn)的次數(shù)不超過 2次。如果求得的站點(diǎn)中無法找到中轉(zhuǎn)站, 就調(diào)整M的值,依上面的步驟繼續(xù)進(jìn)行, 直到可以找到可行的乘車路線為止。 根據(jù)得到的可行乘車線路,利用路過分別與費(fèi)用和時間的函數(shù)關(guān)系, 計(jì)算岀按照吸較

13、小轉(zhuǎn)車次數(shù)的原則, 比較用錢少、費(fèi)時少的線路,最終得到最優(yōu)的乘車方案。如所走線路與時間的函數(shù)關(guān)系為: 5.1同時考慮公汽與地鐵線路的情形: 因?yàn)楣c地鐵之間可以換乘,所以當(dāng)同時考慮公汽與地鐵線路時,可以將可換乘的地鐵站和公汽站 視為對等的,這樣就與第一小問相同了,可利用相同的方法來解決。雖然仍只是先求岀可行線路,但情況 要更復(fù)雜了,特別是地鐵與地鐵之間的換乘,這還需要單獨(dú)進(jìn)行考慮。此外,此時站數(shù)分別與費(fèi)用和時間 的函數(shù)卻發(fā)生了變化,需利用新的函數(shù)表達(dá)式求解再比較得到最優(yōu)線路。 新的站數(shù)與時間的函數(shù)如下: ,word ,完美整理版 ,專業(yè)資料參考分享 設(shè)n表示走地鐵所經(jīng)過的站數(shù) 其中:a式表示

14、從起點(diǎn)經(jīng)過地鐵直達(dá)終點(diǎn)所費(fèi)時間; b式表示從起點(diǎn)經(jīng)過公交和地鐵到達(dá)終點(diǎn)所費(fèi)時間; c 式表示從起點(diǎn)經(jīng)過公交和地鐵,再經(jīng)過公交到達(dá)終點(diǎn)所費(fèi)時間。 由條件可知,T1是上行,下行站完全相同的一條地鐵,而 T2是一條環(huán)路,且他們之間在 D12站點(diǎn)可以 相互換乘,即是說兩條地鐵的結(jié)構(gòu)圖可能為螃蟹型。 5.3、當(dāng)已知所有站點(diǎn)之間的步行時間時的情形: 可先利用圖論中的Floyd算法1求出任意兩站點(diǎn)間的最短道路,并在此基礎(chǔ)上求出這段路步行所需要 的時間。再在第二問的基礎(chǔ)上,對時間加一個閾值 T o 、當(dāng)計(jì)算岀的兩點(diǎn)間最短路的步行時間 閾值T時,就選擇步行,走得到的最短道路; 、當(dāng)計(jì)算岀的兩點(diǎn)間最短路的步行時間

15、 閾值T時,就選擇第二問中求得的最優(yōu)線路。 六、模型的求解 6.1、只考慮公汽的情形求解結(jié)果得: 針對問題1,運(yùn)用本文所述算法,求得 6條線路的乘車公交線路如下: (1 )、S3354S1828 換乘一次起點(diǎn)站 班次 中轉(zhuǎn)站 班次 終點(diǎn)站 時間 總費(fèi)用 S3359 L436 S2606 L217 S1828 130 3 ,word ,完美整理版 ,專業(yè)資料參考分享 S3359 L436 S1784 L167 S1828 101 3 (其中粗線條的行表示求得的最優(yōu)公汽線路) (2) 、S1557S0481 換乘兩次 起點(diǎn)站 班次 中轉(zhuǎn)站一 班次 中轉(zhuǎn)站二 班次 終點(diǎn)站 時間 總費(fèi)用 S1557

16、L84 S0028 L348 S2361 L312 S0481 157 4 S1557 L84 S0055 L348 S2361 L312 S0481 160 3 ,word ,完美整理版 ,專業(yè)資料參考分享 S1557 L84 S0978 L206 S1511 L460 S0481 162 4 S1557 L84 S0978 L212 S3409 L460 S0481 133 3 S1557 L84 S1919 L189 S3186 L460 S0481 106 3 S1557 L84 S1921 L279 S0618 L72 S0481 169 4 S1557 L84 S1921 L279

17、 S0327 ,word ,完美整理版 ,專業(yè)資料參考分享 L72 S0481 160 3 S1557 L84 S1921 L80 S0618 L72 S0481 169 4 S1557 L84 S1921 L58 S3878 L239 S0481 196 4 S1557 L84 S1921 L58 S3878 L514 S0481 193 4 S1557 L84 S1921 L80 S1327 L72 S0481 160 3 S1557 ,word ,完美整理版 ,專業(yè)資料參考分享 L84 S1919 L80 S0618 L72 S0481 160 4 S1557 L84 S1919 L80

18、 S1327 L72 S0481 151 3,word ,完美整理版 3 ,專業(yè)資料參考分享 起點(diǎn)站 班次 中轉(zhuǎn)站 班次 終點(diǎn)站 時間 總費(fèi)用 S0971 L13 S0992 L417 S0485 131 3 起點(diǎn)站 班次 中轉(zhuǎn)站 班次 終點(diǎn)站 時間 總費(fèi)用 S0008 L159 S3919 L103 S0073 149 S0008 L198 S1383 L282 S0073 113 3 S0008 L198 S3766 L282 S0073 113 3 S0008 L355 (3)、 S0971S0485 換乘一次 (4八 換乘一次 ,word ,完美整理版 ,專業(yè)資料參考分享 S2302

19、L57 S0073 86 2 S0008 L463 S1383 L282 S0073 113 3 S0008 L463 52083 L170 S0073 92 2 S0008 L463 52084 L170,word ,完美整理版 ,專業(yè)資料參考分享 S0073 92 2 起點(diǎn)站 班次 中轉(zhuǎn)站一 班次 中轉(zhuǎn)站二 班次 終點(diǎn)站 時間 總費(fèi)用 S0148 L308 S0128 L276 S1671 L395 S04-85 232 6 起點(diǎn)站 班次 中轉(zhuǎn)站 班次 終點(diǎn)站 時間 總費(fèi)用S0087 L454 S3496 L209 S3676 100 2 (6八 S0087S3676 換乘一次 (5 八

20、換乘兩次 ,word ,完美整理版 ,專業(yè)資料參考分享 6.2、同時考慮地鐵的情形求解結(jié)果得: 對于問題(1 )、( 2)、( 3)、( 4),加入地鐵后的所有線路,由于需要換乘的次數(shù)較多,超過了人們 可以承受的換乘次數(shù),且如果采納這樣的路線行使,會使金錢上的花費(fèi)巨大,所以不采用這類方案,而直 接采用一種交通工具即公汽。那么在這種情形下,問題( 1)、( 2)、( 3)、( 4)的最優(yōu)路線并沒有改 變,即上面表格統(tǒng)計(jì)的結(jié)果。 針對問題2,與問題1相比,其中的第(5)和(6)的乘車線路有變化: (5 )、S0144S0485 公汽地鐵公汽 起點(diǎn)站 班次 中轉(zhuǎn)站一 中轉(zhuǎn)站二 班次 中轉(zhuǎn)站三 中轉(zhuǎn)站

21、四 班次 終點(diǎn)站 時間 總費(fèi)用 S0148 L24 S1487 D2 T1 D21 S0464 L469 S0485 87.5 5 (6 )、S008&S3676 坐地鐵 T2 直達(dá) 起點(diǎn)站 中轉(zhuǎn)站 班次 中轉(zhuǎn)站 終點(diǎn)站 ,word ,完美整理版 ,專業(yè)資料參考分享 時間 總費(fèi)用 S0087 D27 T2 D36 S3676 29 3 6.3、當(dāng)已知所有站點(diǎn)之間的步行時間時的情形: 1、可先利用圖論中的Floyd算法1求出任意兩站點(diǎn)間的最短道路, 并在此基礎(chǔ)上求出這段路步行所需要的 時間。 2、再在第二問的基礎(chǔ)上,對時間加一個閾值 To 、當(dāng)計(jì)算岀的兩點(diǎn)間最短路的步行時間 閾值T時,就選擇步行

22、,走得到的最短道路; 、當(dāng)計(jì)算岀的兩點(diǎn)間最短路的步行時間 閾值T時,就選擇第二問中求得的最優(yōu)線路。 七、模型的評價 一方面,因?yàn)槲覀儾扇〉拇胧┦窍拗魄蠼猓郧蟮玫慕Y(jié)果不一定是全局最優(yōu)解。但所得結(jié)果一定是 局部最優(yōu)解,且具有較強(qiáng)的適用性,可以緩解計(jì)算機(jī)因?yàn)閿?shù)據(jù)過多而無法運(yùn)行或死機(jī)等問題。除此以外他 還可以節(jié)約計(jì)算機(jī)運(yùn)行的時間。 另一方面,即使說求出來的是全局最優(yōu)解, 那也只是限于對題目中所給的數(shù)據(jù)而已,在實(shí)際生活中, 往 往還有許多影響人們行使路線的因素, 且每個人對金錢和時間的考慮都不同, 所以這也只對大部分人適用。 再者,雖然我們得到的是局部最優(yōu)解,但事實(shí)上在很多時候是不需要采取全局最優(yōu)解

23、的方案的。 原因是 如果這個地區(qū)的人都采取這樣的方案來實(shí)施,那么就會使資源分配不均,造成很多新的現(xiàn)象(如堵車等) 來影響這個措施的實(shí)施過程,使其答不到他預(yù)期的效果,而相反的,局部最優(yōu)解相對而言在資源的配置方 面就更具有可實(shí)施性。 八、模型的改進(jìn)方向 顯然這個模型如上面所提到的,還有一些不足之處,如對不同人群的實(shí)用性的解決,我建議可以設(shè)定兩 個參數(shù):在人們心目中金錢與時間所占的比重。即利用層次分析法的原理,在模型的最后一步,確定最優(yōu) 解時,可根據(jù)人們自己的需求來選擇。使其基本滿足每個人的需求,消除個體差異性對模型結(jié)果實(shí)用性的 影響。 ,word ,完美整理版 ,專業(yè)資料參考分享 參考文獻(xiàn): 1

24、趙靜,但琦,數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn),北京:高等教育岀版社, 2000. 2 城市規(guī)劃學(xué)刊,北京奧運(yùn)交通組織規(guī)劃初探, /topic /olympic/research/200708/1949_2.html ,2007.9.22. 3 蘇愛華,施法中,公交網(wǎng)絡(luò)換乘問題的實(shí)現(xiàn),工程圖學(xué)學(xué)報(bào), 2005年第4期:55,59,2004. 4 翁敏,公交線路網(wǎng)絡(luò)分析的若干關(guān)鍵技術(shù)研究 D,武漢:武漢測繪科技大學(xué), 2000. 附錄 (一) 、求解各個站點(diǎn)間的鄰接矩陣: %function y=sxjm_cs_line_1111(x) clear all %產(chǎn)生上行和下

25、行的兩個 520 * 200的矩陣,行號表示線路號,列號表示線路的每個站點(diǎn),一條線路從第 一列開始放置,后面不足的為 0。 up_line=zeros(520,200);% 保存上行線 down_line=zeros(520,200);% 保存下行線 %讀線路文件, fid=fopen(D:MATLAB6p5work11line.txt,r);% 執(zhí)行時,修改其中的路徑為所讀取的文件 line_num=1; while line_num=0 & A(1,1)0%將上行線中的線路輸入鄰接矩陣 relation_matrix(up_line(i,col-1),up_line(i,col)=rela

26、tion_matrix(upine(i,col-1),up_line(i,col)+1; col=col+1; endcol=2; while down_line(i,col)0% 將下行線中的線路輸入鄰接矩陣 relation_matrix(down_l ine(i,col-1),dowin_l ine(i,col)=relation_matrix(down_l ine(i,col-1),down_l ine(i, col)+1; col=col+1; end end (二) 、對3957 * 3957的鄰接矩陣進(jìn)行處理,用下面標(biāo)記的紅色數(shù)值作為限制,找岀通過次數(shù)超過其的 站點(diǎn): max_s

27、tation=3957; re=zeros(1,3957); for i=1:3957 t=1; for j=1:3957 ,word ,完美整理版 ,專業(yè)資料參考分享 if relation_matrix(i,j)0 t=t+1; end end re(1,i)=t; end max=1; t=1; for i=1:3957 if re(1,i)9 i t=t+1; end end t max; re_dec=zeros(3957,max);%max=16 for i=1:3957 tt=1; for j=1:3957 k=relation_matrix(i,j); if k0 re_dec

28、(i,tt)=j; tt=tt+1; end end end (三) 、把求得的站點(diǎn)和要求的起點(diǎn)和終點(diǎn),利用下面的程序諑個修改標(biāo)記部分,可求岀通過各站點(diǎn)的路 線,再將經(jīng)過所求得的站點(diǎn)的路線與經(jīng)過起點(diǎn)和終點(diǎn)的路線進(jìn)行比較,尋找相同的路線,若存在,則這個 站點(diǎn)可以作為所給的這對起點(diǎn)與終點(diǎn)的中轉(zhuǎn)站。從而就找到了這條線路可能的乘車路線。 clear all %產(chǎn)生上行和下行的兩個 520 * 100的矩陣,行號表示線路號,列號表示線路的每個站點(diǎn),一條線路從第 一列開始放置,后面不足的為 0。 up_line=zeros(520,100);% 保存上行線 down_line=zeros(520,100)

29、;% 保存下行線 %讀線路文件, fid=fopen(C:MATLAB6p5work11line.txt,r);% 執(zhí)行時,修改其中的路徑為所讀取的文件 line_num=1; while line_num=0 & A(1,1)=9 % 下行線是 上行線原路返回”(站點(diǎn)名完全相同),則第四行為空,僅有第 三行有數(shù)據(jù),且直接以始發(fā)站編號開頭。 B=str2num(A); m,n=size(B); for i=1:m%保存第三行,原路返回中的上行線。 up_line(line_num,i)=B(1,i); end tt=1; for i=m:-1:1%保存第四行,原路返回中的下行線。 down_l

30、 ine(line_num,tt)=B(1,i); tt=tt+1; end A=fgetl(fid);%讀第四行:下行線路,為空行,是第三行的反過程。 else %保存上下行線”和環(huán)線” m,n=size(A); BB=A(1,7:n); B=str2num(BB); m,n=size(B); for i=1:m up_line(line_num,i)=B(1,i);% 保存第三行,包括環(huán)線”和 上下行線中的上行線。 end A=fgetl(fid);%讀第四行:如為 環(huán)線”,則第四行為空。此時,下面的 if語句不執(zhí)行。如為 上下行線 則執(zhí)行。 if size(A)%第四行:下行線信息,以 下行:開頭,之后為站點(diǎn)信息。 m,n=size(A);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論