楊逍 黃文濤 李家祺 譚洪宇 張文 張宇思 汪濤
關(guān)鍵詞:國(guó)產(chǎn)計(jì)算;數(shù)值分析;工程應(yīng)用;課程設(shè)計(jì);教學(xué)實(shí)踐
能源電力、交通運(yùn)輸、國(guó)防建設(shè)等基礎(chǔ)行業(yè)關(guān)系著國(guó)計(jì)民生,這些行業(yè)常須依賴計(jì)算平臺(tái)與專業(yè)仿真工具,來(lái)監(jiān)督評(píng)估日常系統(tǒng)狀態(tài)、設(shè)計(jì)經(jīng)濟(jì)可靠的運(yùn)維方案。而現(xiàn)有仿真工具主要是由歐美發(fā)達(dá)國(guó)家開發(fā)的商業(yè)閉源軟件,且近年來(lái)國(guó)際形勢(shì)復(fù)雜多變,我國(guó)也時(shí)刻面臨斷供、禁售核心軟硬件與技術(shù)的風(fēng)險(xiǎn)。為此,響應(yīng)國(guó)家發(fā)展戰(zhàn)略,聚焦基礎(chǔ)行業(yè)仿真需求及安全考量,借助國(guó)產(chǎn)計(jì)算開放環(huán)境,從數(shù)值計(jì)算等核心仿真技術(shù)人手,本文設(shè)計(jì)在線課程與實(shí)踐任務(wù),發(fā)掘吸引更多潛在用戶,培養(yǎng)面向國(guó)產(chǎn)計(jì)算的人才隊(duì)伍,加強(qiáng)國(guó)產(chǎn)計(jì)算生態(tài)建設(shè)。
1國(guó)產(chǎn)計(jì)算發(fā)展現(xiàn)狀與特點(diǎn)
1.1基礎(chǔ)行業(yè)發(fā)展需求
能源電力、交通運(yùn)輸、國(guó)防建設(shè)等基礎(chǔ)行業(yè)時(shí)刻影響著居民生活、經(jīng)濟(jì)生產(chǎn)、社會(huì)穩(wěn)定等,是關(guān)系到國(guó)計(jì)民生的重要基礎(chǔ)產(chǎn)業(yè)和公用事業(yè),而這些行業(yè)須依賴相關(guān)計(jì)算平臺(tái)和專業(yè)仿真工具完成日常系統(tǒng)分析與控制決策。以電力行業(yè)為例,電力安全、穩(wěn)定和充足供應(yīng)是國(guó)民經(jīng)濟(jì)全面協(xié)調(diào)且可持續(xù)發(fā)展的重要保障,事關(guān)經(jīng)濟(jì)發(fā)展和國(guó)家安全。在安全可靠的計(jì)算平臺(tái)上,結(jié)合前沿、高效的仿真技術(shù),有效地開展電力系統(tǒng)仿真分析、及時(shí)掌握系統(tǒng)狀態(tài)、設(shè)計(jì)優(yōu)化系統(tǒng)控制與調(diào)度策略等,是保障電力系統(tǒng)經(jīng)濟(jì)安全運(yùn)行的重要途徑之一[1]。目前,主流電力系統(tǒng)仿真工具主要有美國(guó)EPRI開發(fā)的PSAPAC,加拿大曼尼托巴水電局開發(fā)的PSCAD/EMTDC,美國(guó)PTI推出的PSS/E,主要面向研究者的Matpower和PSAT等MATLAB工具包,以及國(guó)產(chǎn)仿真軟件PSASP,PSModel、仿真裝置ADPSS等。上述多是由國(guó)外開發(fā)的商業(yè)閉源軟件,而且它們主要適用于“Windows+lntel”和“Linux+x86”等傳統(tǒng)組合的國(guó)外商用計(jì)算平臺(tái)。這些計(jì)算平臺(tái)的核心部件與仿真技術(shù)面臨斷供和禁售的風(fēng)險(xiǎn),因此,我們迫切需要發(fā)展自主可控的國(guó)產(chǎn)化計(jì)算平臺(tái)與仿真工具。
1.2國(guó)產(chǎn)計(jì)算生態(tài)贏弱
現(xiàn)階段,國(guó)產(chǎn)計(jì)算平臺(tái)主要由鯤鵬、飛騰等系列國(guó)產(chǎn)處理器以及麒麟、openEuler等國(guó)產(chǎn)操作系統(tǒng)搭建。一般而言,計(jì)算平臺(tái)生態(tài)成熟和健全的主要標(biāo)志是在該平臺(tái)上有豐富的開發(fā)及應(yīng)用軟件。不過(guò),目前國(guó)產(chǎn)計(jì)算平臺(tái)軟件種類與數(shù)量有限,而且如上文所述,關(guān)鍵基礎(chǔ)行業(yè)所需的仿真工具普遍不能直接在國(guó)產(chǎn)計(jì)算平臺(tái)上高效運(yùn)行。為此,亟須面向國(guó)產(chǎn)計(jì)算針對(duì)關(guān)鍵基礎(chǔ)行業(yè)研發(fā)相關(guān)工具。值得注意的是,為達(dá)成以上目標(biāo),其重要環(huán)節(jié)之一在于培養(yǎng)面向國(guó)產(chǎn)計(jì)算及相關(guān)基礎(chǔ)行業(yè)仿真技術(shù)與工具的開發(fā)者以及使用者群體,尤其是掌握數(shù)值計(jì)算專業(yè)知識(shí)以及具備仿真核心算法庫(kù)設(shè)計(jì)能力的研究人員。但目前該群體及相關(guān)人才隊(duì)伍尚未形成規(guī)模,這將阻礙國(guó)產(chǎn)計(jì)算和自主可控工業(yè)仿真等領(lǐng)域的長(zhǎng)足健康發(fā)展。所以,在研發(fā)國(guó)產(chǎn)仿真工具的過(guò)程中,除關(guān)注軟件開發(fā)本身之外,也亟須培養(yǎng)并壯大面向國(guó)產(chǎn)計(jì)算及基礎(chǔ)行業(yè)仿真需求的人才隊(duì)伍??紤]到目前國(guó)產(chǎn)計(jì)算缺乏系統(tǒng)性的培訓(xùn)資料、課程、實(shí)踐機(jī)會(huì)等,本文結(jié)合數(shù)值計(jì)算及工程應(yīng)用來(lái)設(shè)置在線課程與實(shí)踐方案。
2課程教學(xué)總體設(shè)計(jì)
2.1教學(xué)目的與課程設(shè)計(jì)思路
本課程的主要目的是引導(dǎo)國(guó)產(chǎn)計(jì)算平臺(tái)的潛在開發(fā)者和應(yīng)用者,讓他們熟悉并使用國(guó)產(chǎn)計(jì)算平臺(tái),提升嘗試國(guó)產(chǎn)計(jì)算平臺(tái)的興趣,進(jìn)而在國(guó)產(chǎn)計(jì)算平臺(tái)上開展相應(yīng)開發(fā)與研究工作。具體而言,本課程以擁有基礎(chǔ)程序設(shè)計(jì)經(jīng)驗(yàn)的學(xué)員為目標(biāo)群體,讓他們了解國(guó)產(chǎn)計(jì)算平臺(tái)與傳統(tǒng)“Windows+lntel”和“Linux+x86”等組合的國(guó)外商用計(jì)算平臺(tái)之間的差異,熟悉國(guó)產(chǎn)計(jì)算平臺(tái)資源的獲取途徑與步驟,掌握在國(guó)產(chǎn)計(jì)算平臺(tái)上搭建與配置開發(fā)環(huán)境的方法,利用國(guó)產(chǎn)計(jì)算平臺(tái)開展數(shù)值計(jì)算.工程應(yīng)用等實(shí)戰(zhàn)項(xiàng)目,且對(duì)國(guó)產(chǎn)計(jì)算平臺(tái)與傳統(tǒng)計(jì)算平臺(tái)的優(yōu)劣表現(xiàn)有基本認(rèn)識(shí)。為實(shí)現(xiàn)這些目的,首先,該課程通過(guò)網(wǎng)絡(luò)公開課、線上直播等方式,介紹我國(guó)國(guó)產(chǎn)計(jì)算平臺(tái)軟硬件發(fā)展現(xiàn)狀和基礎(chǔ)知識(shí)。通過(guò)可操作的具體步驟,介紹獲取國(guó)產(chǎn)計(jì)算資源的途徑,在國(guó)產(chǎn)計(jì)算平臺(tái)上搭建與配置開發(fā)環(huán)境,完成機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、科學(xué)計(jì)算(電力仿真)等實(shí)戰(zhàn)任務(wù)。其次,該課程也提供面向公眾開放的國(guó)產(chǎn)計(jì)算資源和豐富的學(xué)習(xí)資料,在掌握理論知識(shí)的基礎(chǔ)上,學(xué)員可以根據(jù)指導(dǎo)手冊(cè)在國(guó)產(chǎn)計(jì)算平臺(tái)上進(jìn)行項(xiàng)目實(shí)踐。通過(guò)實(shí)踐環(huán)節(jié),學(xué)員可以動(dòng)手嘗試國(guó)產(chǎn)計(jì)算平臺(tái)和獨(dú)立開發(fā),比較且反饋國(guó)產(chǎn)計(jì)算平臺(tái)與常見商用平臺(tái)的使用體驗(yàn),強(qiáng)化對(duì)國(guó)產(chǎn)計(jì)算的認(rèn)識(shí)和理解。課程設(shè)計(jì)與實(shí)踐的組織結(jié)構(gòu)如圖1所示。
2.2課程教學(xué)的主要內(nèi)容
課程教學(xué)內(nèi)容主要包括四部分:一是現(xiàn)狀簡(jiǎn)介,包括介紹我國(guó)國(guó)產(chǎn)計(jì)算生態(tài)發(fā)展現(xiàn)狀和基礎(chǔ)知識(shí)、面向公眾開放的國(guó)產(chǎn)計(jì)算資源信息、以及國(guó)產(chǎn)計(jì)算資源的詳細(xì)申請(qǐng)步驟;二是Octave適配及應(yīng)用案例展示,包括介紹Octave計(jì)算環(huán)境及其在國(guó)產(chǎn)計(jì)算平臺(tái)上的適配過(guò)程,以及機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)、數(shù)據(jù)分析等相關(guān)工具包的移植方案,進(jìn)而在國(guó)產(chǎn)計(jì)算平臺(tái)上展示服務(wù)器異常檢測(cè)、垃圾郵件分類、手寫數(shù)字識(shí)別等應(yīng)用案例的實(shí)現(xiàn)過(guò)程和效果:三是Python適配及深度學(xué)習(xí)案例展示,包括介紹Python計(jì)算環(huán)境及其在國(guó)產(chǎn)計(jì)算平臺(tái)上的適配過(guò)程,介紹深度學(xué)習(xí)常用工具PyTorch等的移植方案,進(jìn)而在國(guó)產(chǎn)計(jì)算平臺(tái)上構(gòu)建和訓(xùn)練深度學(xué)習(xí)網(wǎng)絡(luò)、展示手寫數(shù)字識(shí)別以及動(dòng)物圖像識(shí)別等應(yīng)用案例的實(shí)現(xiàn)過(guò)程與效果;四是電力系統(tǒng)仿真計(jì)算,包括介紹在國(guó)產(chǎn)計(jì)算平臺(tái)上實(shí)現(xiàn)潮流計(jì)算、靜態(tài)電壓穩(wěn)定、最優(yōu)潮流、暫態(tài)穩(wěn)定等電力系統(tǒng)仿真基本任務(wù)所須的計(jì)算方法,對(duì)標(biāo)MATLAB等常用計(jì)算環(huán)境,詳述開源且易學(xué)易用的“Octave+Matpower”“Python+PyPower”等組合的仿真環(huán)境搭建方案,高效完成上至數(shù)萬(wàn)節(jié)點(diǎn)的大規(guī)模系統(tǒng)仿真分析任務(wù)。課程安排細(xì)節(jié)如圖2所示。
3課程教學(xué)實(shí)踐設(shè)計(jì)
3.1教學(xué)實(shí)踐的意義
教學(xué)實(shí)踐是本課程設(shè)計(jì)的重要環(huán)節(jié),首先,根據(jù)以往教學(xué)經(jīng)驗(yàn),如果僅是講述理論知識(shí)或由教師進(jìn)行實(shí)踐示范,學(xué)員很難牢固掌握且融會(huì)貫通教學(xué)內(nèi)容,也難以充分調(diào)動(dòng)學(xué)員的學(xué)習(xí)熱情,這與真正掌握、熟練使用國(guó)產(chǎn)計(jì)算平臺(tái)的培養(yǎng)目標(biāo)尚有距離[2];其次,國(guó)產(chǎn)計(jì)算平臺(tái)不同于生態(tài)成熟且豐富的傳統(tǒng)計(jì)算平臺(tái),現(xiàn)階段學(xué)員對(duì)國(guó)產(chǎn)計(jì)算平臺(tái)的具體適用場(chǎng)景了解有限,需要通過(guò)實(shí)踐環(huán)節(jié)引導(dǎo)學(xué)員加深對(duì)國(guó)產(chǎn)計(jì)算的認(rèn)識(shí)。
3.2課程實(shí)踐配套方案
盡管學(xué)員通過(guò)學(xué)習(xí)在線課程對(duì)國(guó)產(chǎn)計(jì)算已有基本了解,但是在短暫的課程教學(xué)期間內(nèi),通常難以培養(yǎng)學(xué)員對(duì)國(guó)產(chǎn)計(jì)算的使用意愿以及在國(guó)產(chǎn)計(jì)算平臺(tái)上開展基礎(chǔ)行業(yè)仿真技術(shù)與工具研發(fā)的興趣。因此,需要設(shè)計(jì)貼合學(xué)員共性需求的實(shí)踐方案,幫助學(xué)員快速上手國(guó)產(chǎn)計(jì)算平臺(tái)。為此,課程將國(guó)產(chǎn)計(jì)算培訓(xùn)內(nèi)容作為思政元素,與“數(shù)值計(jì)算方法”“數(shù)值分析”等本科生專業(yè)必修課的線下課堂教學(xué)進(jìn)行深度融合,要求學(xué)員在系統(tǒng)地學(xué)習(xí)相關(guān)教學(xué)內(nèi)容后,在國(guó)產(chǎn)計(jì)算平臺(tái)上搭建計(jì)算環(huán)境、完成課程大作業(yè)等項(xiàng)目實(shí)踐任務(wù),整理實(shí)踐報(bào)告且提供反饋建議,從而達(dá)到強(qiáng)化學(xué)員實(shí)踐能力、提高學(xué)員對(duì)國(guó)產(chǎn)計(jì)算平臺(tái)認(rèn)識(shí)的目標(biāo)。線上教學(xué)資源如圖3所示。學(xué)生作業(yè)展示及意見反饋如圖4所示。
3.2.1課程實(shí)踐配套方案
目前,國(guó)產(chǎn)計(jì)算平臺(tái)還未在公眾中普及使用,學(xué)員也難自費(fèi)獲取符合要求的國(guó)產(chǎn)計(jì)算軟硬件資源。為此,本課程與深圳鵬城實(shí)驗(yàn)室合作,向公眾免費(fèi)提供云計(jì)算資源:同日寸,本文詳細(xì)介紹了在鵬城生態(tài)門戶一開發(fā)者云申請(qǐng)計(jì)算資源的流程:在該云平臺(tái)申請(qǐng)計(jì)算資源且經(jīng)審核通過(guò)后,即可在云主機(jī)列表界面查看獲批的計(jì)算資源信息,通過(guò)遠(yuǎn)程終端訪問計(jì)算資源。根據(jù)課程指引,學(xué)員自行在云平臺(tái)申請(qǐng)計(jì)算資源且為后續(xù)實(shí)踐環(huán)節(jié)做好準(zhǔn)備。
3.2.2數(shù)值計(jì)算實(shí)踐環(huán)節(jié)設(shè)計(jì)
為使國(guó)產(chǎn)計(jì)算相關(guān)培訓(xùn)更加貼近學(xué)員日常關(guān)注內(nèi)容,幫助學(xué)員增強(qiáng)實(shí)踐能力,了解分析國(guó)產(chǎn)計(jì)算平臺(tái)與常見商用計(jì)算平臺(tái)(如蘋果、戴爾、惠普、聯(lián)想等個(gè)人電腦品牌)之間的優(yōu)劣,本課程與“數(shù)值計(jì)算方法”“數(shù)值分析”等專業(yè)必修課的課堂教學(xué)活動(dòng)融合,設(shè)計(jì)課程大作業(yè)等任務(wù),要求學(xué)員在國(guó)產(chǎn)平臺(tái)與商用平臺(tái)上分別完成插值逼近、數(shù)值積分、線性方程求解等專題的數(shù)值分析實(shí)踐任務(wù)。具體而言,要求學(xué)員在國(guó)產(chǎn)與商用平臺(tái)上分別編程,實(shí)現(xiàn)樣條插值、高斯積分、牛頓迭代等數(shù)值計(jì)算方法,在不同平臺(tái)上統(tǒng)計(jì)結(jié)果精度、計(jì)算耗時(shí)等評(píng)價(jià)指標(biāo)的表現(xiàn),分析相同算法在不同計(jì)算平臺(tái)上的性能差異與原因,完成課程報(bào)告,并且針對(duì)國(guó)產(chǎn)計(jì)算平臺(tái)提供使用感受與反饋建議。此環(huán)節(jié)也是后續(xù)相關(guān)基礎(chǔ)行業(yè)仿真技術(shù)與工具(特別是涉及仿真核心算法庫(kù))分析及研發(fā)的基礎(chǔ)。
3.2.3工程應(yīng)用實(shí)踐環(huán)節(jié)設(shè)計(jì)
為方便展示國(guó)產(chǎn)計(jì)算平臺(tái)的適用場(chǎng)景且強(qiáng)化學(xué)員實(shí)際操作能力,已面向國(guó)產(chǎn)計(jì)算設(shè)計(jì)以下實(shí)踐環(huán)節(jié),從而幫助學(xué)員加深對(duì)國(guó)產(chǎn)計(jì)算的認(rèn)識(shí)與理解,培養(yǎng)學(xué)員實(shí)際操作能力和在國(guó)產(chǎn)計(jì)算平臺(tái)上從事相關(guān)基礎(chǔ)行業(yè)仿真技術(shù)及工具研發(fā)的興趣。
(1) Octave與SK-learn機(jī)器學(xué)習(xí)實(shí)踐環(huán)節(jié):指導(dǎo)學(xué)員遠(yuǎn)程訪問所申請(qǐng)的國(guó)產(chǎn)計(jì)算資源,安裝Octave計(jì)算環(huán)境和SK-learn工具包等,且使用Octave完成房?jī)r(jià)預(yù)測(cè)、芯片適應(yīng)性檢測(cè)、檢測(cè)過(guò)載服務(wù)器、手寫數(shù)字識(shí)別等有監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)的多項(xiàng)實(shí)踐任務(wù);使用SK-learn工具包完成文本文檔分類、人臉數(shù)據(jù)集分解等機(jī)器學(xué)習(xí)實(shí)踐任務(wù)。
(2) Python深度學(xué)習(xí)實(shí)踐環(huán)節(jié):指導(dǎo)學(xué)員訪問上述國(guó)產(chǎn)計(jì)算資源,安裝Pytorch工具包且進(jìn)行Minist手寫數(shù)字識(shí)別、貓狗圖像識(shí)別等任務(wù)實(shí)踐:利用Matplotlib工具包實(shí)現(xiàn)數(shù)據(jù)可視化。
(3) Matpower電力系統(tǒng)仿真實(shí)踐環(huán)節(jié):指導(dǎo)學(xué)員訪問國(guó)產(chǎn)計(jì)算資源;安裝Matpower工具包且利用它完成求解潮流問題、連續(xù)潮流計(jì)算、最優(yōu)潮流等電力系統(tǒng)仿真任務(wù)。
(4) Pypower電力系統(tǒng)仿真實(shí)踐環(huán)節(jié):指導(dǎo)學(xué)員在國(guó)產(chǎn)計(jì)算平臺(tái)上安裝PyPower工具包,完成暫態(tài)穩(wěn)定評(píng)估等仿真實(shí)踐任務(wù)并繪制仿真結(jié)果。
4結(jié)束語(yǔ)
國(guó)內(nèi)外形勢(shì)正經(jīng)歷巨大變化,我國(guó)迫切需要發(fā)展自主可控的國(guó)產(chǎn)計(jì)算生態(tài)、培育并壯大開發(fā)者與應(yīng)用者群體。如今,相關(guān)課程內(nèi)容已通過(guò)“超算習(xí)堂”等在線學(xué)習(xí)平臺(tái)[3]免費(fèi)向公眾開放,大大降低了學(xué)員獲取國(guó)產(chǎn)計(jì)算相關(guān)知識(shí)與技能的門檻,并開展多種線上線下培訓(xùn)活動(dòng),完成超8000人次的培訓(xùn)記錄;本課程也已在嗶哩嗶哩(Bilibili)等在線分享平臺(tái)公開相關(guān)教學(xué)視頻,播放量超24000人次。此外,經(jīng)過(guò)兩年多與線下課堂教學(xué)融合的實(shí)踐活動(dòng),已收集課程項(xiàng)目總結(jié)和反饋建議報(bào)告超160余頁(yè)。下一步,根據(jù)國(guó)產(chǎn)計(jì)算發(fā)展需求,課程內(nèi)容及推廣活動(dòng)將不斷迭代優(yōu)化、抱薪拾柴,為持續(xù)建設(shè)國(guó)產(chǎn)計(jì)算生態(tài)貢獻(xiàn)一份力量。