版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)學(xué)建模——渡口問(wèn)題數(shù)學(xué)建?!煽趩?wèn)題數(shù)學(xué)建?!煽趩?wèn)題資料僅供參考文件編號(hào):2022年4月數(shù)學(xué)建?!煽趩?wèn)題版本號(hào):A修改號(hào):1頁(yè)次:1.0審核:批準(zhǔn):發(fā)布日期:建模問(wèn)題(渡口問(wèn)題)摘要本文建立了一個(gè)關(guān)于如何安排過(guò)河車輛位置問(wèn)題的模型本文首先對(duì)各種車輛達(dá)到情況作統(tǒng)計(jì),并對(duì)車輛之間得特性進(jìn)行分析,得出以下安排車輛位置方案:摩托車少而且站位小,以插空的方式進(jìn)入車隊(duì)列,這樣安排明顯減少了空間浪費(fèi)。本文重概率論角度,引進(jìn)均勻分部函數(shù)已經(jīng)隨機(jī)數(shù),對(duì)來(lái)的車輛先后進(jìn)行描述,隨后通過(guò)若干組數(shù)據(jù)統(tǒng)計(jì),最后得出一般規(guī)律并解決安排車輛問(wèn)題。問(wèn)題重述與分析:一個(gè)渡口的渡船營(yíng)運(yùn)者擁有一只甲板長(zhǎng)32米,可以并排停放兩列車輛的渡船。他正在考慮怎樣在甲板上安排過(guò)河車輛的位置,才能安全地運(yùn)過(guò)最多數(shù)量的車輛,并關(guān)心一次可以運(yùn)多少輛車,其中有多少小汽車,多少卡車,多少摩托車,他觀察了數(shù)日,發(fā)現(xiàn)每次情況不盡相同,但他得到下列數(shù)據(jù)和情況:(1)車輛隨機(jī)到達(dá),形成一個(gè)等待上船的車列。(2)來(lái)到渡口的車輛中,轎車占40%,卡車占55%,摩托車占5%(3)轎車車身長(zhǎng)為~米,卡車車身長(zhǎng)為8~10米。請(qǐng)考慮以下問(wèn)題:(1)應(yīng)該怎樣安排摩托車?
(2)怎樣描述一輛車的車身長(zhǎng)度?
(3)到達(dá)的車要加入甲板上兩列車隊(duì)的哪一列中去?
(4)如何考慮“安全”問(wèn)題?
請(qǐng)就以上問(wèn)題建立數(shù)學(xué)模型,最終保證安全,并運(yùn)用計(jì)算機(jī)進(jìn)行模擬車輛到達(dá)、安排停車過(guò)程。模型假設(shè)與建立:營(yíng)運(yùn)者需要在安全情況下運(yùn)過(guò)最多數(shù)量的車,摩托車如果橫著放的話會(huì)節(jié)省很多空間,所以我們假定把摩托車橫著放置在兩輛車的中間,這時(shí)就要考慮摩托車的寬度而不是長(zhǎng)度了。我們假定摩托車的寬度是~米(為方便起見(jiàn),后文中摩托車的“寬度”都說(shuō)成“長(zhǎng)度”)。一共有三種車:轎車、卡車和摩托車。三種車的出現(xiàn)概率不同,每輛車的車身長(zhǎng)度也不相同,我們想到可以用隨機(jī)數(shù)來(lái)確定每一輛車的類型和長(zhǎng)度。0卡車轎車摩托車圖1如圖1所示,用一個(gè)0到1之間的隨機(jī)數(shù)的分布來(lái)確定車的所屬類型。當(dāng)random=0~時(shí),為卡車;當(dāng)random=~時(shí),為轎車;當(dāng)random=~時(shí),為摩托車。車身的長(zhǎng)度問(wèn)題也應(yīng)用這個(gè)思路。題中給出轎車的長(zhǎng)度為~,重新定義一個(gè)0~1之間的隨機(jī)數(shù)random。和之間的差值是2,即:random*2,所以轎車的車身長(zhǎng)度為:Length=(+random*2)。同理得出:卡車的車身長(zhǎng)度為:length=8+random*2,摩托車的車身長(zhǎng)度為:length=+random*2。(圖2)2轎車82卡車摩托車圖2(3)由于甲板上一共可以停放兩列車,所以車上甲板的順序就不確定。通過(guò)我們的研究發(fā)現(xiàn),如果將這一問(wèn)題考慮的過(guò)于復(fù)雜會(huì)導(dǎo)致算法過(guò)于復(fù)雜,問(wèn)題復(fù)雜化。所以我們?cè)O(shè)定先來(lái)的車先都上同一個(gè)甲板,當(dāng)?shù)谝粋€(gè)甲板排滿之后再排第二個(gè)甲板。(4)船在海上行駛的時(shí)候會(huì)有搖晃,為了保證安全,車輛之間應(yīng)該留有一定的空間,我們假定為米。首輛車距離甲板頭我們定為米。最后一輛車通常情況下一定會(huì)和船尾有一定距離,所以不需再空出距離了。具體解決問(wèn)題:經(jīng)過(guò)討論決定使用java語(yǔ)言來(lái)編譯一個(gè)模擬環(huán)境,模擬出兩個(gè)甲板和每個(gè)甲板上停車的數(shù)量、類型。首先我們編寫(xiě)了3個(gè)車的類:Car、Truck和Motorcycle。接著是假定每個(gè)相同車類組成的隊(duì)列類:CarDateBase、TruckDateBase、MotorcycleDateBase。最后是模擬類:Demo。(詳見(jiàn)附錄)最后用這幾個(gè)類組成一個(gè)完整的模擬程序。測(cè)試出來(lái)的結(jié)果如下。測(cè)試結(jié)果:(1)隨機(jī)出來(lái)的車的長(zhǎng)度:車的類型長(zhǎng)度1轎車2轎車3轎車4轎車5轎車6轎車7摩托車8摩托車9摩托車10摩托車11摩托車12摩托車13卡車14卡車15卡車16卡車17卡車18卡車………………轎車數(shù)量卡車數(shù)量摩托車數(shù)量總長(zhǎng)度測(cè)試1130測(cè)試203031測(cè)試3032測(cè)試4031測(cè)試5600…………測(cè)試出來(lái)的每個(gè)板上的車的種類和數(shù)量:總結(jié):以上只是一部分測(cè)試數(shù)據(jù),總體上來(lái)看,我們完成了題目中的要求。由于是第一次參賽而且時(shí)間比較緊,我們的這個(gè)建模做得還不是很完美,有幾個(gè)細(xì)節(jié)的地方只能是假定一種情況,而不能將所有的情況都寫(xiě)出來(lái)。希望下次能將我們所想的全部都表達(dá)出來(lái)。最重要的是我們通過(guò)這次活動(dòng)學(xué)到很多,為我們的專業(yè)學(xué)習(xí)也帶來(lái)了很大的幫助,以后一定會(huì)繼續(xù)努力,爭(zhēng)取在建模和編程上有所成就!附錄模擬停車的java程序:(1)Car類:publicclassCar{ privatedoublelength; publicCar(doubled) { =d; } publicdoublegetLength() { returnlength; }}(2)Truck類:classTruck{ privatedoublelength; publicTruck(doublel) { =l; } publicdoublegetLength() { returnlength; }}(3)Motorcycle類:classMotorcycle{ privatedoublelength; publicMotorcycle(doublel) { =l; } publicdoublegetLength() { returnlength; }}(4)CarDataBase類:import.*;classCarDataBase{ privateVectorcars; publicCarDataBase() { cars=newVector(); } publicvoidaddCar(Carinitialcar) { } publicIteratorgetCarIterator(){ return(); } publicCargetCar(floatlength){ for(Iteratori=();();){ Cartemp=(Car)(); if()==length) returntemp; } returnnull; } publicintgetNumberOfCars(){ return }}(5)TruckDataBase類:import.*;classTruckDataBase{ privateVectortrucks; publicTruckDataBase() { trucks=newVector(); } publicvoidaddTruck(Truckinitialcar) { } publicIteratorgetTruckIterator(){ return(); } publicTruckgetTruck(floatlength){ for(Iteratori=();();){ Trucktemp=(Truck)(); if()==length) returntemp; } returnnull; } publicintgetNumberOfTrucks(){ return }}(6)MotorcycleDataBase類:import.*;classMotorcycleDataBase{ privateVectormotorcycles; publicMotorcycleDataBase() { motorcycles=newVector(); } publicvoidaddMotorcycle(Motorcycleinitialmotorcycle) { } publicIteratorgetMotorcycleIterator(){ return(); } publicMotorcyclegetMotorcycle(floatlength){ for(Iteratori=();();){ Motorcycletemp=(Motorcycle)(); if()==length) returntemp; } returnnull; } publicintgetNumberOfMotorcycle(){ return }}(7)Dome類:import.*;publicclassDome{ privateCarDataBasecardatabase; privateTruckDataBasetruckdatabase; privateMotorcycleDataBasemotorcycledatabase; privateintNUMBEROFCARS=0; privateintNUMBEROFTRUCKS=0; privateintNUMBEROFMOTORCYCLES=0; privatedoubleTOTLELENGTH=0; privatestaticintRAN;publicDome() { cardatabase=loadCar(); truckdatabase=loadTruck(); motorcycledatabase=loadMotorcycle(); } publicstaticvoidmain(String[]args) { Domea=newDome(); Domeb=newDome(); for(inti=0;i<10;i++){ RAN=(int)()*1000); (); } "NUMBEROFCARSare"+; "NUMBEROFTRUCKSare"+; "NUMBEROFMOTORCYCLESare"+; "TOTLELENGTHis"+(double)(((int)*100))/100)); for(intj=0;j<10;j++){ RAN=(int)()*1000); (); } "NUMBEROFCARSare"+; "NUMBEROFTRUCKSare"+; "NUMBEROFMOTORCYCLESare"+; "TOTLELENGTHis"+(double)(((int)*100))/100)); } privateCarDataBaseloadCar() {// "loadCar!"); CarDataBasecardatabase=newCarDataBase(); for(inti=0;i<10;i++){ doubleran=(double)()*2); (newCar+ran)); } returncardatabase; } privateTruckDataBaseloadTruck() { TruckDataBasetruckdatabase=newTruckDataBase(); for(inti=0;i<4;i++){ doubleran=(double)()*2); (newTruck+ran)); } returntruckdatabase; } privateMotorcycleDataBaseloadMotorcycle() { MotorcycleDataBasemotorcycledatabase=newMotorcycleDataBase(); for(inti=0;i<100;i++){ doubleran=(double)()*; (newMotorcycle+ran)); } returnmotorcycledatabase; } privatebooleanJudge(){ if(TOTLELENGTH<=32){ returntrue; }else{ returnfalse; } } publicvoidrun(){ if(RAN>=0&&RAN<450){ for(Iteratori=();();){ Carcars=(Car)(); if(TOTLELENGTH==0){ TOTLELENGTH+=; }else if(TOTLELENGTH<={ TOTLELENGTH+=; } TOTLELENGTH+=(); if(Judge()){ "Thiscar'lengthis"+(double)((int)()*1000))/1000); NUMBEROFCARS++; }else{ TOTLELENGTH-=(); } } }else if(RAN>=450&&RAN<=950){ for(Iteratori=();();){ Trucktrucks=(Truck)(); if(TOTLELENGTH==0){ TOTLELENGTH+=; }el
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貨幣金融學(xué)寫(xiě)作課程設(shè)計(jì)
- 年度動(dòng)態(tài)心電圖監(jiān)測(cè)系統(tǒng)設(shè)備市場(chǎng)分析及競(jìng)爭(zhēng)策略分析報(bào)告
- 2025年度綠色建材木糠原料采購(gòu)合同2篇
- 市政施工方案優(yōu)化
- 飲品制作與服務(wù)課程設(shè)計(jì)
- 超強(qiáng)資料-臨床麻醉學(xué)課件嚴(yán)重創(chuàng)傷病人的麻醉
- 2025年度個(gè)人沙石行業(yè)合作與資源共享合同3篇
- 2025年度旅游度假村廣告合作與綜合服務(wù)合同4篇
- 二零二五年度2025版互聯(lián)網(wǎng)醫(yī)療合伙人合作合同模板3篇
- 二零二五年酒店特色餐飲品牌授權(quán)合同3篇
- 2024年全國(guó)體育專業(yè)單獨(dú)招生考試數(shù)學(xué)試卷試題真題(含答案)
- 北師大版小學(xué)三年級(jí)上冊(cè)數(shù)學(xué)第五單元《周長(zhǎng)》測(cè)試卷(含答案)
- DB45T 1950-2019 對(duì)葉百部生產(chǎn)技術(shù)規(guī)程
- 新修訂《保密法》知識(shí)考試題及答案
- 電工基礎(chǔ)知識(shí)培訓(xùn)課程
- 住宅樓安全性檢測(cè)鑒定方案
- 廣東省潮州市潮安區(qū)2023-2024學(xué)年五年級(jí)上學(xué)期期末考試數(shù)學(xué)試題
- 市政道路及設(shè)施零星養(yǎng)護(hù)服務(wù)技術(shù)方案(技術(shù)標(biāo))
- 《論語(yǔ)》學(xué)而篇-第一課件
- 《寫(xiě)美食有方法》課件
- (完整word版)申論寫(xiě)作格子紙模板
評(píng)論
0/150
提交評(píng)論