王先傳,王 浩,陳秀明,王先超
(阜陽師范大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,安徽 阜陽236037)
不斷提高高等教育的教育教學(xué)質(zhì)量是人才培養(yǎng)追求的永恒“不動(dòng)點(diǎn)”。當(dāng)前,以新工科建[1-4]設(shè)為橋梁,實(shí)現(xiàn)高等教育內(nèi)涵式發(fā)展的過程中,這個(gè)“不動(dòng)點(diǎn)”的地位更加突出。在新工科背景下的工程教育要求高校應(yīng)全面落實(shí)包括以學(xué)生為中心、面向產(chǎn)出(outcomes-based education,OBE)、持續(xù)改進(jìn)(continuous quality improvement,CQI)在內(nèi)的三大先進(jìn)教育理念,以提升人才培養(yǎng)質(zhì)量。工程教育的基本定位是培養(yǎng)學(xué)生利用深入的原理解決復(fù)雜工程問題的能力[5]。2016 年6 月我國正式加入的《華盛頓協(xié)議》、我國2015 版《工程教育認(rèn)證標(biāo)準(zhǔn)》[6]和2017 年11 月修訂的《工程教育認(rèn)證標(biāo)準(zhǔn)》(以下簡稱標(biāo)準(zhǔn))均用了7 個(gè)特征來刻畫復(fù)雜工程問題[7],其中的第3 條就強(qiáng)調(diào)“需要通過建立合適的抽象模型才能解決,在建模過程中需要體現(xiàn)出創(chuàng)造性”??梢姅?shù)學(xué)建模能力的培養(yǎng)對(duì)解決復(fù)雜工程問題的重要性。為此,本文將探討如何培養(yǎng)計(jì)算機(jī)類專業(yè)人才的數(shù)學(xué)建模能力。
數(shù)學(xué)特別是其兩個(gè)重要分支即應(yīng)用數(shù)學(xué)和運(yùn)籌學(xué),已從純粹的理論研究發(fā)展成為一種具有時(shí)代潮流的新技術(shù)——數(shù)學(xué)技術(shù),并成為高新技術(shù)的重要組成部分[8]。已有研究表明發(fā)明專利能否成功申請(qǐng)與申請(qǐng)人的數(shù)學(xué)建模能力有著密不可分的關(guān)系。因此,數(shù)學(xué)建模不僅是產(chǎn)教研用的典范,更是啟迪創(chuàng)新意識(shí)、培養(yǎng)創(chuàng)新思維、錘煉創(chuàng)新能力以培養(yǎng)新工科人才的一條重要途徑。在大數(shù)據(jù)與人工智能時(shí)代,其作用和意義更加凸顯。因?yàn)閿?shù)學(xué)建模不但可以鞏固和擴(kuò)大學(xué)生課內(nèi)所學(xué)的知識(shí),而且能夠充分考察學(xué)生的直覺思維、抽象能力、數(shù)學(xué)語言“翻譯”能力、表達(dá)能力、溝通能力、設(shè)計(jì)能力、編程能力、使用最新科技成果的能力、團(tuán)隊(duì)意識(shí)和自主學(xué)習(xí)能力,從而提升其利用深入工程原理分析和解決復(fù)雜問題的能力,等等。
Scott Page 對(duì)數(shù)學(xué)模型的功能進(jìn)行總結(jié),提出模型的7 大用途:推理(reason)、解釋(explain)、設(shè)計(jì)(design)、溝 通(communicate)、行 動(dòng)(act)、預(yù) 測(cè)(predict)和探索(explore)[9]。其首字母構(gòu)成了一件“紅色披風(fēng)”(REDCAPE),旨在提醒我們數(shù)學(xué)模型及其思維可賦予我們強(qiáng)大的力量。
數(shù)學(xué)建模比賽,特別是以創(chuàng)新意識(shí)、團(tuán)隊(duì)精神、重在參與、公平競爭為宗旨的全國大學(xué)生數(shù)學(xué)建模競賽,是培養(yǎng)創(chuàng)新能力的一個(gè)極好載體,其目的在于激發(fā)學(xué)生學(xué)習(xí)數(shù)學(xué)的興趣,培養(yǎng)學(xué)生綜合利用所需知識(shí)和計(jì)算機(jī)技術(shù)解決實(shí)際問題的能力。比賽過程可以培塑學(xué)生同舟共濟(jì)的團(tuán)隊(duì)精神和協(xié)調(diào)組織能力。特別值得一提的是,近年來,作為全國大學(xué)生數(shù)學(xué)建模比賽的發(fā)起者,中國工業(yè)與應(yīng)用數(shù)學(xué)學(xué)會(huì)牽頭整治了比賽過程中出現(xiàn)的一些弊端,如抄襲學(xué)術(shù)論文、找別人代寫論文等。這些舉措不僅保障了比賽的公平競爭,更進(jìn)一步培養(yǎng)了學(xué)生的誠信意識(shí)和自律精神。
《標(biāo)準(zhǔn)》中對(duì)工程教育認(rèn)證提出的12 條具體的畢業(yè)要求指標(biāo)[7],其中前5 條為工程技術(shù)指標(biāo),其他為非工程技術(shù)指標(biāo)。這些指標(biāo)中有7 條與建模能力有較強(qiáng)的關(guān)系,其中工程技術(shù)指標(biāo)4 條,非工程技術(shù)指標(biāo)3 條。例如:
第1 條“工程知識(shí)”要求學(xué)生“能夠?qū)?shù)學(xué)、自然科學(xué)、工程基礎(chǔ)和專業(yè)知識(shí)用于解決復(fù)雜工程問題”。學(xué)生如何才能將數(shù)學(xué)用于解決復(fù)雜工程問題呢?就要求他們不但要學(xué)好數(shù)學(xué)相關(guān)課程,如高等數(shù)學(xué)、概率統(tǒng)計(jì)等,還要至少能夠?qū)?fù)雜工程問題進(jìn)行抽象即用數(shù)學(xué)語言描述。這個(gè)描述其實(shí)就是建立相關(guān)的數(shù)學(xué)模型。只描述還遠(yuǎn)不夠,還要運(yùn)用數(shù)學(xué)解決該問題,即進(jìn)行模型的求解。
第2 條“問題分析”要求學(xué)生“能夠應(yīng)用數(shù)學(xué)、自然科學(xué)和工程科學(xué)的基本原理,識(shí)別、表達(dá)、并通過文獻(xiàn)研究分析復(fù)雜工程問題,以獲得有效結(jié)論”。其中的應(yīng)用數(shù)學(xué)的基本原理表達(dá)、分析復(fù)雜工程問題以獲得有效結(jié)論就是要求學(xué)生先選擇適當(dāng)?shù)某橄竽P蛯?fù)雜工程問題形式化,即用數(shù)學(xué)語言把其“翻譯”成數(shù)學(xué)問題,從而構(gòu)建抽象模型,模型求解后再將數(shù)學(xué)語言“翻譯”成自然語言,從而獲得有效結(jié)論。
第4 條“研究”要求學(xué)生“能夠基于科學(xué)原理并采用科學(xué)方法對(duì)復(fù)雜工程問題進(jìn)行研究,包括設(shè)計(jì)實(shí)驗(yàn)、分析與解釋數(shù)據(jù)、并通過信息綜合得到合理有效的結(jié)論”。數(shù)學(xué)建模在本質(zhì)上就是培養(yǎng)學(xué)生的科研能力,在建模過程中查閱資料,分析與解釋數(shù)據(jù)是必不可缺的。模型求解后,對(duì)信息進(jìn)行綜合得到合理有效結(jié)論,以便進(jìn)行基于模型的工程實(shí)施,即實(shí)現(xiàn)模型的應(yīng)用。
第5 條“使用現(xiàn)代工具”要求學(xué)生“能夠針對(duì)復(fù)雜工程問題,開發(fā)、選擇與使用恰當(dāng)?shù)募夹g(shù)、資源、現(xiàn)代工程工具和信息技術(shù)工具,包括對(duì)復(fù)雜工程問題的預(yù)測(cè)與模擬,并能夠理解其局限性”。該條與模型求解時(shí)所要做的工作非常吻合。在模型求解時(shí),要求學(xué)生能夠使用恰當(dāng)?shù)募夹g(shù)如遺傳算法[10]、機(jī)器學(xué)習(xí)[11]、排隊(duì)論[12]、人工神經(jīng)網(wǎng)絡(luò)[13]、元胞自動(dòng)機(jī)[14]等,并使用合適的現(xiàn)代軟件如Visio、Matlab、Lingo、Python 及其常用庫編寫相關(guān)程序?qū)δP瓦M(jìn)行模擬、求解,并對(duì)結(jié)果進(jìn)行可視化,最后給出模型的優(yōu)缺點(diǎn)。
第9 條“個(gè)人和團(tuán)隊(duì)”要求學(xué)生“能夠在多學(xué)科背景下的團(tuán)隊(duì)中承擔(dān)個(gè)體、團(tuán)隊(duì)成員以及負(fù)責(zé)人的角色”。數(shù)學(xué)建模所要解決的通常都是金融、交通、環(huán)境、控制、社會(huì)等不同領(lǐng)域的新問題。因此,在數(shù)學(xué)建模比賽有助于培養(yǎng)學(xué)生的團(tuán)隊(duì)意識(shí)和責(zé)任擔(dān)當(dāng)。
第10 條“溝通”要求學(xué)生“能夠就復(fù)雜工程問題與業(yè)界同行及社會(huì)公眾進(jìn)行有效溝通和交流,包括撰寫報(bào)告和設(shè)計(jì)文稿、陳述發(fā)言、清晰表達(dá)或回應(yīng)指令。并具備一定的國際視野,能夠在跨文化背景下進(jìn)行溝通和交流”。他們3 個(gè)人組成一個(gè)隊(duì),為了一個(gè)共同的目標(biāo),比賽過程中可能會(huì)為了做哪一道題、采用哪種方法與技術(shù)等而爭吵得面紅耳赤,但最終要做出最后決定,這樣有人就要學(xué)會(huì)了妥協(xié)與寬容。在比賽過程中不但要進(jìn)行有效的溝通和交流,還要一定的形成文字材料即一篇建模論文。特別地,美國大學(xué)生數(shù)學(xué)建模比賽,其競賽試題不但具有一定的國際視野,而且用英文展示,并要求學(xué)生也要提交一篇英文數(shù)學(xué)建模論文。這些對(duì)“溝通”素質(zhì)的培養(yǎng)與提升起到至關(guān)重要的作用。
第12 條“終身學(xué)習(xí)”要求學(xué)生“具有自主學(xué)習(xí)和終身學(xué)習(xí)的意識(shí),有不斷學(xué)習(xí)和適應(yīng)發(fā)展的能力”。在建模和比賽過程會(huì)遇到不同領(lǐng)域的復(fù)雜科學(xué)問題,他們要從網(wǎng)上或書籍中查閱相關(guān)資料、弄懂相關(guān)概念,并搜尋有效的原理與方法以解決問題??梢姅?shù)學(xué)建模有助于培養(yǎng)學(xué)生的自主學(xué)習(xí)和終身學(xué)習(xí)意識(shí),提升其可持續(xù)競爭力。
根據(jù)《普通高等學(xué)校本科專業(yè)目錄(2020 版)》計(jì)算機(jī)類專業(yè)有17 個(gè)[15],我校計(jì)算機(jī)與信息工程學(xué)院現(xiàn)有計(jì)算機(jī)科學(xué)與技術(shù)、數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)、軟件工程、物聯(lián)網(wǎng)工程、信息工程、智能科學(xué)與技術(shù)6 個(gè)本科專業(yè)。其中信息工程專業(yè)不在17個(gè)計(jì)算機(jī)類專業(yè)之列。
如上所述,數(shù)學(xué)建模對(duì)學(xué)生能力培養(yǎng),特別是《標(biāo)準(zhǔn)》中對(duì)工程教育認(rèn)證提出的12 條具體的畢業(yè)要求的達(dá)成具有舉足輕重的作用。按理說,應(yīng)該把數(shù)學(xué)建?;驍?shù)學(xué)模型課程作為計(jì)算機(jī)類專業(yè)的數(shù)學(xué)與自然科學(xué)類課程。目前,已有不少高校把數(shù)學(xué)建模納入計(jì)算機(jī)類專業(yè)的課程體系,但仍有許多高校并沒有把它列入課程體系。例如,筆者所在高校最新修訂的計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)人才培養(yǎng)方案中數(shù)學(xué)與自然科學(xué)類課程如表1 所示。人才培養(yǎng)方案總學(xué)分168.5,其中數(shù)學(xué)與自然科學(xué)類課程25.5,占15.13%>15%,達(dá)到《標(biāo)準(zhǔn)》要求。同時(shí),沒有包括數(shù)學(xué)模型課程。
究其原因,雖然數(shù)學(xué)建模課程對(duì)工程教育認(rèn)證中的7 條都可以很好地支撐,但那7 條并非只能用數(shù)學(xué)模型一門課程做支撐,即可以用其他多門課程,如高等數(shù)學(xué)、數(shù)值分析、數(shù)據(jù)結(jié)構(gòu)等來解決[16]。另一方面,數(shù)學(xué)模型一般由數(shù)學(xué)學(xué)院來承擔(dān),在現(xiàn)在的績效考核下,為保障本學(xué)院教師的工作量,各學(xué)院都不樂意把自己學(xué)院可解決的課程讓其他學(xué)院來承擔(dān),即只能因人設(shè)課。
這種做法不能使學(xué)生得到系統(tǒng)的數(shù)學(xué)建模訓(xùn)練,只能零散地、片面地接受數(shù)學(xué)建模相關(guān)知識(shí)。最終傷害的還是學(xué)生,導(dǎo)致他們對(duì)數(shù)學(xué)建模不了解、缺乏應(yīng)有的興趣,不肯參加相關(guān)的數(shù)學(xué)建模比賽。最終導(dǎo)致他們?nèi)狈γ鎸?duì)復(fù)雜問題的勇氣,這一點(diǎn)可從畢業(yè)論文的選題中可以看出。近年來,每年都有相當(dāng)一部分同學(xué)以簡單地網(wǎng)站和管理系統(tǒng)設(shè)計(jì)作為畢業(yè)設(shè)計(jì)選題。2020 年畢業(yè)的336 名同學(xué),其中248 篇為管理軟件選題,占73.8%。在這些選題主要涉及酒店管理、人事管理、購物網(wǎng)站、考試系統(tǒng),等等。這些選題的設(shè)計(jì)和實(shí)現(xiàn)模型基本一樣,不同選題之間的參考和借鑒程度比較嚴(yán)重,創(chuàng)新性比較低。今年筆者在評(píng)閱時(shí)遇到兩篇畢業(yè)設(shè)計(jì),題目和內(nèi)容包括實(shí)驗(yàn)部分幾乎都一樣。與沒參加過數(shù)學(xué)建模比賽的同學(xué)相比,參加過數(shù)學(xué)建模比賽的同學(xué)基本都能較好地完成一篇畢業(yè)設(shè)計(jì),不少還被評(píng)為優(yōu)秀畢設(shè)。因此,當(dāng)前這種教育模式和質(zhì)量監(jiān)控體系不能從整體上培養(yǎng)和提升學(xué)生的綜合素質(zhì)和可持續(xù)發(fā)展能力。
雖然我校每年都組織學(xué)生參加全國大學(xué)生數(shù)學(xué)建模比賽和美國大學(xué)生數(shù)學(xué)建模比賽,但總體參數(shù)隊(duì)比較少,計(jì)算機(jī)類各專業(yè)參加比賽的學(xué)生就更少,每年3~5 個(gè)隊(duì)。雖然學(xué)校制定了相關(guān)的激勵(lì)措施,但近年來取得省一等獎(jiǎng)越來越難。這樣賽前指導(dǎo)老師不肯下功夫和時(shí)間培訓(xùn)學(xué)生,導(dǎo)致比賽過后老師和學(xué)生都感覺很累,而且還不能取得好成績,形成了惡性循環(huán)。因此,數(shù)學(xué)建模比賽的受眾面小,效果很不理想。
基于學(xué)生為中心[16-17]和OBE 教學(xué)理念[16,18]培養(yǎng)和提升學(xué)生的數(shù)學(xué)建模能力。具體做法如下。
不同的課程可以向?qū)W生滲透不同的數(shù)學(xué)建模思想。將數(shù)學(xué)建模思想融入到現(xiàn)有數(shù)學(xué)與自然科學(xué)類課程,主要可以完成“問題”到“形式化”的轉(zhuǎn)化,培養(yǎng)創(chuàng)新意識(shí)、學(xué)生抽象和推理能力;程序設(shè)計(jì)類課程主要可以完成“形式化”到“計(jì)算機(jī)化”的轉(zhuǎn)化,培養(yǎng)學(xué)生計(jì)算思維、編程能力和實(shí)踐能力。特別地,數(shù)值分析和算法類課程可進(jìn)一步提升學(xué)生算法設(shè)計(jì)與分析能力。
下面以算法設(shè)計(jì)與分析課程中經(jīng)典的0-1 背包問題為例,探討如何向?qū)W生有效滲透數(shù)學(xué)建模思想。0-1 背包問題是指給定若干個(gè)物品和1 個(gè)背包,每個(gè)物品的質(zhì)量和價(jià)值以及背包容量均已知,對(duì)每個(gè)物品只有裝入和不裝。如何選擇物品,使裝入背包中的物品價(jià)值最大?
通過對(duì)該問題學(xué)習(xí)和解決,我們不能只使學(xué)生能夠理解和掌握動(dòng)態(tài)規(guī)劃算法、回溯法和分支限界法,并能應(yīng)用它們解決一些實(shí)際問題,還應(yīng)通過該問題培養(yǎng)學(xué)生的模型思維和建模能力。
首先,引入變量。假設(shè)共有n 個(gè)物品,每個(gè)物品質(zhì)量和價(jià)值分別為mi和vi(i=1,2,…,n),且wi>0,且vi>0,背包容量為C>0,并用xi∈{0,1}表示第i 個(gè)物品的狀態(tài),1 和0 分別表示物品裝入和不裝入背包。這一步看似很簡單,即給出每個(gè)變量的含義,而經(jīng)常被忽略。
再次,模型求解。需要一個(gè)具體實(shí)例,如n=3, C=30, m={16, 15, 15}, v={45, 25, 25}。為了培養(yǎng)學(xué)生算法設(shè)計(jì)與分析能力和軟件開發(fā)能力,在向?qū)W生詳細(xì)講解動(dòng)態(tài)規(guī)劃算法、回溯法和分支限界法的同時(shí),應(yīng)告訴學(xué)生還可以使用現(xiàn)有軟件Lingo 或Lindo 來解決該問題,即讓學(xué)生使用恰當(dāng)?shù)默F(xiàn)代工具解決問題。用Lingo 可解得該問題的最優(yōu)解為(0,1,1),最優(yōu)值為50。即將第2 和3 個(gè)物品裝入背包時(shí),所求價(jià)值最大,達(dá)50。
最后,模型評(píng)價(jià)。主要分析和總結(jié)不同方法求解該問題時(shí)的時(shí)間復(fù)雜度。
該例子雖然不能使學(xué)生了解所有建模方法,但可以使他們能夠了解不少關(guān)于數(shù)學(xué)建模的知識(shí)如建模步驟、相關(guān)數(shù)學(xué)概念以及Lingo 軟件的編程、使用和求解報(bào)告分析。同時(shí),還有助于他們克服畏難情緒,培養(yǎng)其建模興趣。
在相關(guān)課程中融入數(shù)學(xué)建模思想雖然有助于培養(yǎng)學(xué)生的建模思維和建模能力,但基本上是片面的、零散的,不具有系統(tǒng)性。在新常態(tài)下,利用暑假開展建模培訓(xùn),培訓(xùn)老師沒有任何報(bào)酬。為使學(xué)生能夠較好地掌握常用數(shù)學(xué)建模方法,我們強(qiáng)化教師奉獻(xiàn)精神,搞好暑期建模培訓(xùn)工作。10天左右時(shí)間的培訓(xùn)使他們能夠掌握數(shù)學(xué)建模常用思想、方法、原理和技術(shù),而后要求他們組隊(duì)并把近3 年全國大學(xué)生數(shù)學(xué)建模競賽試題作為真題進(jìn)行訓(xùn)練。同時(shí),邀請(qǐng)指導(dǎo)老師對(duì)其建模論文進(jìn)行評(píng)閱,以達(dá)到漸漸提升其建模能力的目的。作為培訓(xùn)工作的前奏,要求擬參加培訓(xùn)同學(xué)首先參加中國工業(yè)與應(yīng)用數(shù)學(xué)學(xué)會(huì)和中國知網(wǎng)聯(lián)合主辦的“數(shù)學(xué)的重要性及其應(yīng)用”公益講座,使其感悟數(shù)學(xué)建模之美,提升其參與建模比賽的興趣。
為了更好地培養(yǎng)和提升計(jì)算機(jī)類各專業(yè)人才的數(shù)學(xué)建模能力,給出兩條建議:第一,建議越來越多的專業(yè)課教師將越來越多的數(shù)學(xué)建模思想融入到越來越多的課程,并宣傳數(shù)學(xué)建模比賽,以激發(fā)學(xué)生學(xué)習(xí)數(shù)學(xué)建模興趣,并全身心地投入到數(shù)學(xué)建模比賽。第二,在持續(xù)改進(jìn)教學(xué)理念下,我們建議和期待相關(guān)專業(yè)負(fù)責(zé)人在下一次人才培養(yǎng)方案時(shí)將數(shù)學(xué)模型作為選修課納入某一個(gè)專業(yè)的課程體系,并進(jìn)行3 年左右嘗試。如果有助于人才培養(yǎng)質(zhì)量的提升,再將其作為必修課,并將其推廣至計(jì)算機(jī)類各專業(yè)。
數(shù)學(xué)之用是無用之用,才最有價(jià)值。在新工科建設(shè)背景下,提升學(xué)生數(shù)學(xué)建模能力不但使學(xué)生體會(huì)到數(shù)學(xué)“作為模型,它是一種語言,大道至簡;作為理論,它是一種財(cái)富,博大精深;作為算法,它是一種力量,改變世界”,而且可以增強(qiáng)學(xué)生分析和解決復(fù)雜工程問題的能力。