第二十三章 商人與隨從的經典建模問題
看著教室裏的兩人,劉向平教授微微愣了下,笑著問道:“隻有兩個人嗎?我聽說還有一個。”
“……我打個電話問一下她。”王曉東表情尷尬,拿著電話去了外麵。
那老師也不著急,擰開保溫杯,抿了口熱水,慢悠悠地走到了陸舟旁邊,笑著問:“你們隊伍的配置是什麽情況?”
陸舟放下手機,笑著回答道:“我負責建模,王曉東負責編程,林雨湘負責撰寫論文和答辯。”
“建模、編程、寫作,標準配置啊,”劉老師笑了笑,繼續說,“說起來,你就是一三屆的那個陸舟吧,你的那篇論文我看了,確實是篇好文章啊。”
陸舟眼睛一亮:“老師您也是搞數學的?”
“算是吧,不過我的研究方向偏向物理,數學論文倒是很少發了。”劉老師眯了眯眼睛,看了眼教室門口,笑著繼續說,“你們這位女同誌,似乎不怎麽靠得住啊。”
陸舟尷尬而不失禮貌地笑了笑。
劉老師也笑了笑,沒在這個問題上多說什麽,停頓了片刻,便繼續說:“關於你們組隊的配置,我建議你們可以稍微調整。建模和論文由同一個人負責,其餘的兩個人負責編程。這樣的好處是,負責建模的人對整個題目在全局上有著較強的把握,行文思路更加流暢。然而壞處當然也有,那就是你的擔子會很重。比賽時間總共隻有三天,這就意味著你在完成建模之後,必須立刻開始論文寫作。”
陸舟若有所思:“……兩個人負責編程嗎?”
劉老師抿了口茶,慢悠悠地說道:“沒錯。”
陸舟笑了笑,沒有立刻給出答複:“我再考慮考慮吧,畢竟這事兒也得和隊友商量下。”
這時候,走廊外傳來小跑的腳步聲,最後一位隊友總算是姍姍來遲。
“不好意思啊,我稍微起晚了點,真的真的很對不起!”和王小東一起走進教室,林雨湘一臉抱歉地向老師低下頭認錯。
“沒事兒,既然人到齊了,咱就趕快開始吧。”劉向平老師隨和地笑了笑,也沒責怪她遲到的問題,轉身走到了講台上,將U盤插進了電腦,並打開了投影儀,放出了他的PPT。
“在開始講課之前,我希望你們先來看一道例題。這道題本身沒什麽難度,不過卻可以作為一道數學建模的案例。我希望通過這套案例,能讓你們先明白數學建模究竟是什麽?”
說著,他按下鼠標,將ppt翻到了下一頁。
“三名商人各帶一個隨從乘船過河,一隻小船隻能容納二人,隨從們秘約,在河的任一岸,一旦隨從的人數比商人多,就殺人越貨,但是如何乘船渡河的大權掌握在商人們手中,問:商人們怎樣才能安全渡河呢?”
確實,這道題沒有任何難度。
即便不憑借係統的力量,陸舟也很快想出了答案,回答道。
“第一輪,兩個隨從過去,一個隨從回來。”
“第二輪,再兩個隨從過去,一個隨從回來。”
“第三輪,兩個商人過去,一個隨從和一個商人回來。”
“第四輪,兩個商人過去,一個隨從回來。”
“第五輪,兩個隨從過去,一個隨從回來。”
“第六輪,最後兩個隨從過去,成功渡河!”
“啪啪啪!”林雨湘拍著小手小聲鼓起掌,臉上滿是崇拜。
王曉東臉上的表情不為所動,一副世外高人的模樣。
在他看來這道題確實沒什麽難度,雖然沒動腦去算,可他相信自己的智商,頂多稍微花點時間同樣解得出來。
“完全正確。”劉老師笑了笑,繼續說,“即便不用到任何數學知識,單純通過邏輯分析也能解決這個問題。可如果將問題推廣到N個商人呢?”
這個問題確實有些難度,不過難卻不是難在數學方麵,而是難在如何將這道題目抽象成數學問題進行解決。
陸舟認真思索了一會兒,腦子裏已經有了一條大致的思路。
“我可以用下黑板嗎?”
“當然可以,”劉向平教授笑著做了個請的手勢。
陸舟走上前去,拿起粉筆開始在黑板上板書。
①記第k次渡河前此岸的商人數為Xk。隨從數為Yk,k=1,2,……,Xk,Yk=0,1,2,3。將二維向量Sk=(Xk,Yk)定義為狀態,安全渡河條件下的狀態集合為允許狀態集合,記做S。
可得S={(X,Y)|X=0,Y=0,1,2,3;X=3,Y=0,1,2,3;X=Y=1,2}
②記第k次渡船上的商人數為Uk,隨從數為Vk。將二維向量Dk=(Uk,Vk)定義為決策。允許決策集合記做D,由小船容量可知:D={(U,V)|1≤U+V≤V,U,V=0,1,2}
③綜合以上結論,狀態Sk隨Dk的變化規律是:S(k+1)=Sk+(-1)^k*Dk
“好厲害……”一臉茫然的看著黑板上的板書,林雨湘微微張著嘴,看著從講台上走下來的陸舟,驚訝地小聲問,“你都不需要打草稿的嗎?”
“在心裏打好了。”陸舟笑了笑說道。
王曉東同樣一如既往很沉默,沒有說話。
不過從他的表情來看,這位高傲的學霸對於陸舟的數學能力,算是徹底服氣了。
看了眼黑板上的過程,劉向平教授笑著點了點頭:“完全正確!不過從數學建模的角度來看,這項工作隻能算完成了一半。在完成了建模之後,我們還需要一個程序,將這個模型進行實現。當然了,這個模型很簡單,我相信以咱們王同學的能力,這種級別的程序肯定是信手拈來,就不在這裏浪費寶貴的時間了。”
王曉東推了推眼鏡,臉上的表情依舊一臉淡漠,一副那是當然的樣子。
雖然沒機會現場展現他的編程技術,讓他有些小遺憾就是了。
停頓了片刻,劉老師繼續說道,“數據建模實際上就是將一個實際的問題簡化為一個可以用數據和很簡短的語言能表示出來的問題,然後通過數學工具解決這個問題的過程。”
“因此,關鍵是你們隊要麵臨的實際問題是什麽?”
“建模既不是考察團隊的編程能力,也不是考察數學能力,而是考察將實際問題轉化成數據語言和求解的能力,這一點你們一定要記住。”
“關於建模本身的話,我並沒有太多建議,這個除了多練和拓寬知識麵之外沒有更多的捷徑。至於編程這方麵,我倒是可以說兩句。”
“常用的軟件主要四種,Matlab、Mathematica、lingo和SAS,不需要你全部掌握,至少能掌握其中一種就行了,關鍵是能夠運用適合自己的軟件來解決實際問題。”說這話的時候,劉向平教授在看著王曉東。
因為這句話,主要就是說給他聽的。
王曉東推了推眼鏡,點頭道:“Matlab和SAS我用過,問題不大。”
劉教授點了點頭:“會這兩個軟件基本夠了。這些東西都需要你們自學,我能做的也就是在你們不懂的時候提供指導。”
“最後是關於參考書,我推薦你們可以看一些數學建模案例等書,比如《數學模型》、《數學建模算法與應用》以及《數學建模基礎教程》這三本。”
“我這裏還有一些學校內部的講義和資料,你們可以拷貝回去看,但記住不得外傳,更不能上傳到網上。明白?”
“明白!”三個人異口同聲道。
劉教授笑了笑,說:“行了,那今天就到這裏,我也沒別的什麽可說的,主要還是靠你們自己。需要資料的來我這下載,下完了就趕緊回去複習英語吧。”