數(shù)學(xué)建模-渡口問題_第1頁
數(shù)學(xué)建模-渡口問題_第2頁
數(shù)學(xué)建模-渡口問題_第3頁
數(shù)學(xué)建模-渡口問題_第4頁
數(shù)學(xué)建模-渡口問題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)學(xué)建?!煽趩栴}數(shù)學(xué)建?!煽趩栴}數(shù)學(xué)建?!煽趩栴}資料僅供參考文件編號:2022年4月數(shù)學(xué)建模——渡口問題版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:建模問題(渡口問題)摘要本文建立了一個關(guān)于如何安排過河車輛位置問題的模型本文首先對各種車輛達(dá)到情況作統(tǒng)計(jì),并對車輛之間得特性進(jìn)行分析,得出以下安排車輛位置方案:摩托車少而且站位小,以插空的方式進(jìn)入車隊(duì)列,這樣安排明顯減少了空間浪費(fèi)。本文重概率論角度,引進(jìn)均勻分部函數(shù)已經(jīng)隨機(jī)數(shù),對來的車輛先后進(jìn)行描述,隨后通過若干組數(shù)據(jù)統(tǒng)計(jì),最后得出一般規(guī)律并解決安排車輛問題。問題重述與分析:一個渡口的渡船營運(yùn)者擁有一只甲板長32米,可以并排停放兩列車輛的渡船。他正在考慮怎樣在甲板上安排過河車輛的位置,才能安全地運(yùn)過最多數(shù)量的車輛,并關(guān)心一次可以運(yùn)多少輛車,其中有多少小汽車,多少卡車,多少摩托車,他觀察了數(shù)日,發(fā)現(xiàn)每次情況不盡相同,但他得到下列數(shù)據(jù)和情況:(1)車輛隨機(jī)到達(dá),形成一個等待上船的車列。(2)來到渡口的車輛中,轎車占40%,卡車占55%,摩托車占5%(3)轎車車身長為~米,卡車車身長為8~10米。請考慮以下問題:(1)應(yīng)該怎樣安排摩托車?

(2)怎樣描述一輛車的車身長度?

(3)到達(dá)的車要加入甲板上兩列車隊(duì)的哪一列中去?

(4)如何考慮“安全”問題?

請就以上問題建立數(shù)學(xué)模型,最終保證安全,并運(yùn)用計(jì)算機(jī)進(jìn)行模擬車輛到達(dá)、安排停車過程。模型假設(shè)與建立:營運(yùn)者需要在安全情況下運(yùn)過最多數(shù)量的車,摩托車如果橫著放的話會節(jié)省很多空間,所以我們假定把摩托車橫著放置在兩輛車的中間,這時就要考慮摩托車的寬度而不是長度了。我們假定摩托車的寬度是~米(為方便起見,后文中摩托車的“寬度”都說成“長度”)。一共有三種車:轎車、卡車和摩托車。三種車的出現(xiàn)概率不同,每輛車的車身長度也不相同,我們想到可以用隨機(jī)數(shù)來確定每一輛車的類型和長度。0卡車轎車摩托車圖1如圖1所示,用一個0到1之間的隨機(jī)數(shù)的分布來確定車的所屬類型。當(dāng)random=0~時,為卡車;當(dāng)random=~時,為轎車;當(dāng)random=~時,為摩托車。車身的長度問題也應(yīng)用這個思路。題中給出轎車的長度為~,重新定義一個0~1之間的隨機(jī)數(shù)random。和之間的差值是2,即:random*2,所以轎車的車身長度為:Length=(+random*2)。同理得出:卡車的車身長度為:length=8+random*2,摩托車的車身長度為:length=+random*2。(圖2)2轎車82卡車摩托車圖2(3)由于甲板上一共可以停放兩列車,所以車上甲板的順序就不確定。通過我們的研究發(fā)現(xiàn),如果將這一問題考慮的過于復(fù)雜會導(dǎo)致算法過于復(fù)雜,問題復(fù)雜化。所以我們設(shè)定先來的車先都上同一個甲板,當(dāng)?shù)谝粋€甲板排滿之后再排第二個甲板。(4)船在海上行駛的時候會有搖晃,為了保證安全,車輛之間應(yīng)該留有一定的空間,我們假定為米。首輛車距離甲板頭我們定為米。最后一輛車通常情況下一定會和船尾有一定距離,所以不需再空出距離了。具體解決問題:經(jīng)過討論決定使用java語言來編譯一個模擬環(huán)境,模擬出兩個甲板和每個甲板上停車的數(shù)量、類型。首先我們編寫了3個車的類:Car、Truck和Motorcycle。接著是假定每個相同車類組成的隊(duì)列類:CarDateBase、TruckDateBase、MotorcycleDateBase。最后是模擬類:Demo。(詳見附錄)最后用這幾個類組成一個完整的模擬程序。測試出來的結(jié)果如下。測試結(jié)果:(1)隨機(jī)出來的車的長度:車的類型長度1轎車2轎車3轎車4轎車5轎車6轎車7摩托車8摩托車9摩托車10摩托車11摩托車12摩托車13卡車14卡車15卡車16卡車17卡車18卡車………………轎車數(shù)量卡車數(shù)量摩托車數(shù)量總長度測試1130測試203031測試3032測試4031測試5600…………測試出來的每個板上的車的種類和數(shù)量:總結(jié):以上只是一部分測試數(shù)據(jù),總體上來看,我們完成了題目中的要求。由于是第一次參賽而且時間比較緊,我們的這個建模做得還不是很完美,有幾個細(xì)節(jié)的地方只能是假定一種情況,而不能將所有的情況都寫出來。希望下次能將我們所想的全部都表達(dá)出來。最重要的是我們通過這次活動學(xué)到很多,為我們的專業(yè)學(xué)習(xí)也帶來了很大的幫助,以后一定會繼續(xù)努力,爭取在建模和編程上有所成就!附錄模擬停車的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. 本站所有資源如無特殊說明,都需要本地電腦安裝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

提交評論