一關于國賽
此外,在學習建模的過程中多問自己幾個問題。
第一:這個模型是什么?這個問題對于初學者而言是最難的,很難用系統語言來描述一個模型,但這個過程是必須的,因為你只有把它用自己的話表達出來,才能真正的理解這個模型,在比賽過程中快速與隊友、指導老師交流。提供一個小方法:每看完一章節,給隊友講一講你對這章節內容的看法,你學到了什么,你覺得什么有價值,它的創新點在哪里。如果你能把這一點表達清楚,這一步你就做的非常棒了。
第二:它能夠解決哪些問題。這個問題是最重要的,很多人學完很多資料但是看到題目后還是沒有什么思路,很可能就是因為這一點。多想、多練、多看、多做總結,經驗是最好的老師。
第三:模型的具體操作步驟怎么實現?也就是操作層面上的問題,這個模型可以用什么軟件實現?參數怎么調?有沒有現成的代碼?每一步的操作是否清楚?要做到什么程度呢——我們無需記憶模型具體的步驟但是要對它很熟悉,保證在需要用到這個模型時能很快把它融入到自己的題目中。融會貫通是很難的,這個過程里會遇到很多意想不到的、紙上談兵時看不到的困難,具體的操作要受你的系統環境、軟件版本、時間限制等各種方面的現實考驗,沒有什么捷徑,只有平時多練,多做,才能臨場時最快地找到解決的辦法。
看論文,看往屆優秀的獲獎論文——國賽二等獎及以上,美賽O、F獎。(這里不推薦看美賽M獎論文是因為M獎中論文質量參差不齊,很大概率會遇到帶有誤導性質的文章,得不償失)。
拿到論文,首先看對應的題目,時間充裕的話不妨自己先去拿著做著試試看,大概一天左右就會遇到瓶頸,發現這道題的難點在哪里,這時候再去看看別人的論文時如何解決這個問題的,就會有一種恍然大悟的感覺。
看論文一是看思路,而是看行文結構,例如圖表如何做如何數據可視化,文章邏輯如何安排,問題結論如何表示,摘要如何書寫等。
魔鬼藏在細節中,要努力使得論文盡善盡美,更好地表達自己的思想。
2、代碼要整齊易讀,寫好注釋:
除了方便自己讀和修改,也方便隊友對程序進行了解。需要注釋的地方如:開頭可以寫一下程序的作用、所需數據格式、程序仍存在的問題等;重要的變量假設、Flag、累積量;每個模塊的作用;關鍵的步驟和函數;常常要進行修改調整的語句……變量假設、函數名稱也要易于識別。
3、利用好程序資源,在已有的程序上進行修改可以提高效率:
常用算法的源程序是很好找的,從代碼網站、博客或者算法書上總能找到相關的編程案例,自己以前編寫的程序也能拿來用而且用起來更順手,所以不用執著于一定要自己從頭到尾地編代碼。平時多看一些案例,看到好的代碼就收藏起來,分類保存好。
4、函數和工具箱的使用:
軟件中常內置有功能豐富的函數和工具箱。有時我們會發現軟件中意想不到地剛好存在能實現所需功能的函數,因此編程前可以先在網上搜一搜有沒有這樣的函數,沒有的話再自己寫,寫好以后也能存起來以后用。工具箱的使用要看情況。有的算法不用工具箱實現比較好,用自己寫的代碼更靈活和利于修改,而且對于算法的原理也更清楚;依賴工具箱而對算法的解釋不清楚的話可能會讓論文失色,而且工具箱可能不利于大量數據的反復運算;有時候用工具箱可能更好,主要是對一些算法原理比較簡單的運算過程可以減少編程、提高效率,而且有時候用工具箱求解出的數據格式或圖表樣式也比自己編程做出來的更整齊好看、看起來更專業。
5、積累程序調試的技巧:
對于自己的程序自己要做到完全把握,清楚來龍去脈,出現問題時快速找出問題所在。以MATLAB為例,利用好Workspace和Debug,對于代碼節點和每個變量的數值變化能清楚了解。程序運行出岔子常常是因為以下一些原因:數據讀取格式不對;變量行列數不匹配;循環出錯,在“有些命令放在循環內還是外?”“從什么地方開始循環?”“什么時候停止循環?”“行列式循環時數據怎么對應?”這樣的地方出問題;調用函數時變量格式不對;運算式寫錯,如括號丟失;畫圖時數據讀取出錯,如xy搞反。
6、通過編程制作好看的圖表:
用excel能做一些圖表。編程實現雖然麻煩一點,但能做出很多excel不能做的圖。有時候在編程做圖的過程中也會為了使圖表更好看而不斷調試。要熟練掌握一些通過編程畫圖的常用函數,包括二維圖、三維圖。除了折線圖、直方圖、擬合曲線圖等一些常用數據統計圖以外,還有聚類分析圖、樹狀圖、有限元分析圖等一些和具體算法相關的圖。把代碼積累起來,方便展示數據時使用。推薦幾款繪圖軟件:R、億圖(網站)、Eviews等。
總的來說,編程不是很麻煩的事情,主要就是要熟悉:基本語句,數據格式、調用和輸出,基本運算符號,基本函數,軟件常用視窗和命令。在此基礎上能不斷研究和積累新函數、新算法。關鍵還是要建好模型,在假設好變量和確定好要用的公式或算法后,編程就是用代碼語言把它重述的過程,是自然而然的后續工作,是建模和論文的中間過渡且與兩方都有重疊。
寫作
論文寫作是比賽獲獎至關重要的一步,建模和編程都需要論文來表達,能不能把內容思想結論準確的傳達給評委就是寫作的同學需要做的事情。
寫作中要注重兩點。一是要保證論文整體的邏輯性很強,保持前后貫通:論文的各部分的應當是順接或相互照應的關系,而不是毫無關聯的獨立部分。國賽題目會有幾個小問引導論文展開,而美賽則是一個大問題整體,要做到論文脈絡清晰,就要對題目做合理的拆解。二是令人信服,模型結果可以不理想,但是呈現于論文上的一定是有理有據、能夠自圓其說的建模過程與模型結果。除了寫作的這兩點外,論文的排版與插圖也很重要,這兩個是論文中最直觀的。排版大多數推崇用latex,但是latex的弊端就是論文只有一個人可以進行排版,隊友只能圍觀,而word可以隊友一起做。至于是不是latex得獎率更高,wps一樣拿獎。(更推薦三個人都用office同一版進行寫作排版,并且公式采用mathtype)
寫論文一定要要深入理解模型。不要因為自己負責寫論文就把建模和求解的任務全交給隊友來做,造成寫論文者初期很閑、后期趕時間的情況。要盡可能地解放發展生產力,團隊中的每個成員都要有大局觀。
關于寫作,推薦比較好的準備方式是多閱讀優秀論文,學習別人的行文結構,然后寫作的同學一定要記得多學點圖表制作方面的內容,非常重要。

? 2026. All Rights Reserved. 滬ICP備2023009024號-1