吳暾華 王萍 白寶鋼
摘 要:面向醫(yī)學(xué)的計算機(jī)基礎(chǔ)教學(xué)不應(yīng)拘泥于編程技術(shù)細(xì)節(jié),而應(yīng)在“授人以漁”的方向下將計算思維自然地融入教學(xué)內(nèi)容,使學(xué)生掌握利用計算機(jī)分析和解決實際問題的能力。為此提出了一個全新的教學(xué)方案。首先通過建立計算思維案例庫闡明計算機(jī)對醫(yī)學(xué)的促進(jìn)作用,進(jìn)而揭示計算思維的內(nèi)涵。同時注重與純數(shù)學(xué)或?qū)嶒炈季S的對比并依此引導(dǎo)學(xué)生轉(zhuǎn)變思路。最后引入軟計算思維,指明智能醫(yī)療的發(fā)展前景和途徑。實踐結(jié)果表明所提出的教學(xué)方案是有效的。
關(guān)鍵詞:計算思維;數(shù)學(xué)思維;醫(yī)學(xué);軟計算
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:2096-000X(2017)17-0131-04
Abstract: Basic computer education towards medical science should not rigidly adhere to the technical or operational details of the programming language, but should naturally merge computational thinking into teaching content so that students can master the ability to use computer analysis and solve practical problems. To this end, a new teaching scheme was put forward. First of all, through the establishment of computational thinking case database, the important role of computer knowledge and programming technology promoting medicine was clarified, and then the content of computational thinking was revealed. At the same time, the comparison to pure mathematics or experimental thinking was conducted, which may guide students to change thinking pattern and increase the method for solving new problems. Finally, the introduction of soft computing thinking can indicate the development of intelligent medical prospects and ways. The results of the practice show that the proposed teaching program is effective.
Keywords: computational thinking; mathematical thinking; medical science; soft computing
一、概述
計算思維是指運(yùn)用計算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計以及人類行為理解的一系列思維活動[1,2]。計算思維與數(shù)學(xué)建模的思想非常相似,即遇到實際科學(xué)或工程問題,首先應(yīng)該類似于程序設(shè)計第一步——需求分析,對問題進(jìn)行抽象、轉(zhuǎn)化,并給出各種假設(shè)或定義;然后,根據(jù)各種數(shù)學(xué)方法結(jié)合計算機(jī)科學(xué)特有的、無法用公式精確、完整描述的算法設(shè)計出可計算模型;最后得到模型的近似解。非計算機(jī)專業(yè)人員只需大概清楚計算機(jī)算法能夠做什么、怎么結(jié)合,而具體的實現(xiàn)過程可交由計算機(jī)專業(yè)人員完成。
自計算思維被提出后,國內(nèi)外眾多研究者對其進(jìn)行了廣泛而深入的研究,明確了計算機(jī)不僅是一種工具,而且還是一種獨(dú)特的分析問題和解決問題的思維方式,而計算機(jī)基礎(chǔ)教學(xué)是培養(yǎng)大學(xué)生基本的計算機(jī)應(yīng)用能力和計算思維能力的重要基礎(chǔ)教學(xué)環(huán)節(jié)。國內(nèi)很多高校的教師已經(jīng)紛紛基于計算思維的培養(yǎng)對相關(guān)課程進(jìn)行改革和研究,目前也取得了一系列的教學(xué)成果[2-5]。
雖然計算思維的培養(yǎng)已經(jīng)成為大學(xué)計算機(jī)基礎(chǔ)教育的共識,并且強(qiáng)調(diào)計算思維是人類應(yīng)該具有的三種思維能力之一[1,2],但是從目前來看,對計算思維的研究主要還是在理工科領(lǐng)域,原因主要有以下幾個方面:
1. 醫(yī)學(xué)類計算機(jī)課程的課時分配較少,一般只要求掌握基本知識和應(yīng)用技能,而很少開展基于計算機(jī)的創(chuàng)造性思維培養(yǎng)。
2. 計算思維起源于計算機(jī)科學(xué)研究,目前國內(nèi)外計算思維研究的主導(dǎo)者主要來自計算機(jī)科學(xué)專業(yè),所以目前提出的計算思維課程改革模式主要面向理工科[6,7]。
3. 受計算思維研究者的專業(yè)背景所限以及與醫(yī)學(xué)專業(yè)之間的鴻溝,計算機(jī)專業(yè)的教師較難理解醫(yī)學(xué)專業(yè)的特點,因此提出的改革模式并不十分適應(yīng)醫(yī)學(xué)計算機(jī)教育的需求。
但是對醫(yī)科類學(xué)生進(jìn)行計算思維的培養(yǎng)十分必要,一是因為計算科學(xué)不僅在材料、化學(xué)和生物等理工科領(lǐng)域有重要應(yīng)用,在醫(yī)藥領(lǐng)域同樣具有重要作用;二是雖然醫(yī)科學(xué)生將來不一定直接從事計算機(jī)科學(xué)工作,但卻常常需要跟計算機(jī)科學(xué)工作者或其他專業(yè)人員合作,有時還要進(jìn)行重要任務(wù)的決策,因此其計算思維的意識和運(yùn)用顯得尤為重要。而隨著信息技術(shù)的發(fā)展,醫(yī)科學(xué)生可以接觸到的計算機(jī)科學(xué)知識越來越多,計算機(jī)應(yīng)用能力也有了大幅度的增強(qiáng),伴隨著邏輯能力也有所增強(qiáng),這使醫(yī)科學(xué)生較好地理解和掌握計算思維能力成為了可能。
為了讓醫(yī)科類專業(yè)學(xué)生更好地理解和掌握計算思維,不能將計算思維的概念直接灌輸給他們,而需要找到更適合醫(yī)科專業(yè)特點的方式方法。為此,我們提出以計算機(jī)在醫(yī)科專業(yè)中的應(yīng)用為落腳點,在醫(yī)科類計算機(jī)基礎(chǔ)教學(xué)課程中進(jìn)行計算思維的培養(yǎng)模式。
二、教學(xué)方案設(shè)計
本教學(xué)方案面向醫(yī)學(xué)等非計算機(jī)專業(yè),相比傳統(tǒng)教學(xué)方案更重視興趣的培養(yǎng)和思維方法的引導(dǎo),通過與具體專業(yè)相關(guān)案例緊密結(jié)合,將計算思維具體化、實用化,以此激發(fā)學(xué)生的創(chuàng)造力、提高他們運(yùn)用計算機(jī)進(jìn)行學(xué)術(shù)探索和創(chuàng)新的能力。本方案的主要模塊如下:
(一)建立能體現(xiàn)計算思維獨(dú)特性的案例庫(尤其是醫(yī)學(xué)相關(guān)案例),不刻板介紹計算思維的概念
首先解釋計算機(jī)能做什么、能解決什么問題,結(jié)合醫(yī)療信息系統(tǒng)、醫(yī)學(xué)影像系統(tǒng)、醫(yī)學(xué)專家系統(tǒng)等與醫(yī)學(xué)專業(yè)密切相關(guān)的例子闡明計算機(jī)知識與編程技術(shù)對醫(yī)學(xué)的促進(jìn)作用,理清計算機(jī)專業(yè)人員和非計算機(jī)專業(yè)研究人員之間的關(guān)聯(lián),進(jìn)而揭示計算思維的內(nèi)涵。例如,根據(jù)本人在基于幾何活動輪廓模型的醫(yī)學(xué)圖像分割方面的研究,先綜合分析物體輪廓提取所涉及的輪廓長度、輪廓內(nèi)面積、輪廓內(nèi)外灰度或顏色的一致性等不同影響因素,設(shè)計出與輪廓提取有關(guān)的能量模型,然后最小化該模型得到可計算的、隨時間演化的曲線方程。這個例子說明計算思維與數(shù)學(xué)建模的思想非常相似,即遇到實際科學(xué)或工程問題,首先應(yīng)該類似于程序設(shè)計第一步——需求分析,對問題進(jìn)行抽象、轉(zhuǎn)化,并給出各種假設(shè)或定義;然后,根據(jù)各種數(shù)學(xué)方法結(jié)合計算機(jī)科學(xué)特有的、無法用公式完整描述的算法設(shè)計出可計算模型;最后得到模型的近似解。非計算機(jī)專業(yè)人員只需大概清楚計算機(jī)算法能夠做什么、怎么結(jié)合,而具體的實現(xiàn)過程可交由計算機(jī)專業(yè)人員完成。通過上述案例,學(xué)生將更加明確程序設(shè)計的角色和重要性,掌握軟件開發(fā)的基本方法。
(二)注重與純數(shù)學(xué)或?qū)嵺`思維的對比,對現(xiàn)有例題庫進(jìn)行清理,發(fā)現(xiàn)有代表性的反映思維差別的例子
計算思維既不同于純實踐思維,也不同于純數(shù)學(xué)抽象推理分析,而是類似于數(shù)學(xué)建模,既要有歸納、抽象問題本質(zhì)、轉(zhuǎn)化為可計算的能力,也要有建立基于計算機(jī)技術(shù)的解決思路,充分利用計算機(jī)快速、非線性、自動化等優(yōu)點得出令人滿意但可能只是近似最優(yōu)的結(jié)果。
假設(shè)有a只雞,b只兔子,滿足:動物總數(shù)為m(由用戶輸入),動物腿的總數(shù)為n(也由用戶輸入),求a和b。
1. 按照純數(shù)學(xué)思維可得唯一解
3. 分析
不難發(fā)現(xiàn),采用計算思維中的遍歷搜索法(類似于湊答案的最原始想法),看似很簡單但具有較強(qiáng)的適應(yīng)性和拓展性,對于具有相似性的問題有很好的重現(xiàn)性,其算法往往無法用公式直接表達(dá)。而純數(shù)學(xué)思維解題思路往往較為復(fù)雜,根據(jù)定義、定理、推理、公理得到精確解,其算法須嚴(yán)密地通過數(shù)學(xué)公式表達(dá),例如上述例子中采用了線性代數(shù)中的求解方法,對于沒有學(xué)過線性代數(shù)的人來說上述問題將變得難以解決,且計算復(fù)雜度隨著變量的增加顯著增大。
因此,計算思維對算法的表述與數(shù)學(xué)思維往往具有較大的差別,有時是近似解與精確解的差別,計算思維無法用公式表達(dá)的算法[8,9]。遇到實際應(yīng)用問題時,數(shù)學(xué)思維和計算思維互為補(bǔ)充、相輔相成:首先利用數(shù)學(xué)思維對問題進(jìn)行抽象、歸納,進(jìn)而利用某些物理特性構(gòu)造數(shù)學(xué)物理方程,然后求解得到連續(xù)解;接著,利用計算思維將連續(xù)解離散化,利用遞推、迭代方法得到一定精度的近似解。因此,數(shù)學(xué)思維是計算思維的前奏、基礎(chǔ)。
(三)引入軟計算、非線性思維拓展視野,指明智能醫(yī)療的發(fā)展前景和途徑
目前所有醫(yī)療設(shè)備、軟件都將走向智能化,由此必將帶來產(chǎn)業(yè)的大升級、大變革[10]。智能醫(yī)學(xué)專家系統(tǒng)可更客觀、更準(zhǔn)確地獲取診斷特征并自動給出診斷結(jié)論以輔助醫(yī)師確診。利用人工智能技術(shù)還可從海量臨床數(shù)據(jù)中自動抽取出有價值的規(guī)律,從而建立非線性的疾病預(yù)測模型,提高診斷的準(zhǔn)確性。此外,智能化的人機(jī)接口技術(shù)有助于提高康復(fù)醫(yī)療水平,如通過腦機(jī)接口、聲控、眼控技術(shù)幫助漸凍人或其他殘疾人使用電腦與外界溝通,提高生存質(zhì)量??偠灾?,現(xiàn)代醫(yī)學(xué)的發(fā)展趨勢是智能化,而且必將帶來巨大的效益。因此,教學(xué)內(nèi)容中少量增加將人工神經(jīng)網(wǎng)絡(luò)、遺傳算法等經(jīng)典軟計算方法的關(guān)鍵思想,簡要介紹應(yīng)用范圍,對于醫(yī)學(xué)專業(yè)學(xué)生開展非線性數(shù)據(jù)分析與智能診斷研究將具有一定的指導(dǎo)作用。
(四)運(yùn)用“化繁為簡”、“抽象歸納”思想將編程設(shè)計的重要知識點貫穿起來
具體體現(xiàn)在:1.循環(huán),如計算1到100的整數(shù)和,需要101條順序執(zhí)行的語句來實現(xiàn),因此采用循環(huán)表達(dá)規(guī)律,解決了繁瑣的規(guī)律性問題;2.數(shù)組的定義,若要存儲班上所有同學(xué)的數(shù)學(xué)成績,需要定義120個變量,因此想到將類型和作用相同的變量歸并為一個有序集合統(tǒng)一存儲和處理,便于循環(huán)處理;3.模塊化設(shè)計思想,類似于微軟提供的標(biāo)準(zhǔn)內(nèi)部函數(shù),也可將具有公共作用、通用價值的代碼抽象、歸納為自定義函數(shù)或過程,然后將工程范圍內(nèi)公共函數(shù)或過程移入公共場所——標(biāo)準(zhǔn)模塊,方便各模塊共享;4.框架控件,將類型和作用相同的控件對象放入其中,將對象分類管理,以Caption標(biāo)題標(biāo)識該組對象的作用,使得界面清晰化;5.列表框和組合框,如界面上提供選擇的選項太多,采用復(fù)選框或單選按鈕顯得繁雜,因此可將所有選項集合到統(tǒng)一的對象中,即列表框或組合框,而組合框相比列表框更加簡潔——所有選項疊加為一行;6.控件數(shù)組:可將界面上類型和作用相同的控件對象合并為一個數(shù)組,如此可將代碼中高度相似的、處理過程幾乎相同的事件響應(yīng)過程合并為一個事件響應(yīng)過程,即實現(xiàn)處理的統(tǒng)一化、代碼簡潔化,采用控件數(shù)組后冗余的事件響應(yīng)過程將被剔除。
三、實踐效果及分析
項目組成員已連續(xù)兩年面向本校臨床專業(yè)新生開展了基于計算思維的《計算機(jī)程序設(shè)計基礎(chǔ)》教學(xué)改革探索并取得了良好的教學(xué)效果。
(一)實踐方法設(shè)計
1. 對比數(shù)據(jù)中“試點班”指的是采用計算思維教學(xué)方案的臨床專業(yè)班級。而“普通班”指的是未采用計算思維教學(xué)方案的其它專業(yè)班級。
2. “試點班”和“普通班”學(xué)生入學(xué)成績相當(dāng)(普通班來自眼視光七年制、眼視光五年制、口腔、檢驗醫(yī)學(xué)),被隨機(jī)抽取的班級數(shù)量相同,均為8個教學(xué)班(30人/班)。
3. 遵循本校規(guī)定,期末考卷成績等級劃分標(biāo)準(zhǔn)為:百分制85分以上為“優(yōu)秀”,不低于75且低于85分為“良好”,不低于65且低于75分為“中等”,不低于60且低于65分為“及格”,低于60分為“不及格”。
4. 采用的期末考卷相同,試卷采用統(tǒng)考、統(tǒng)改,計分標(biāo)準(zhǔn)相同。
5. 分別抽取2014年秋季和2015年秋季的期末考成績進(jìn)行對比。
(二)實踐結(jié)果分析
由于采用的期末考試卷相同、學(xué)生入學(xué)成績相當(dāng)、任課教師組成相似,基于計算思維的試點班與普通班具有較高的可比性。從圖1和圖2可見,經(jīng)過兩年實踐,試點班的平均分顯著高于普通班(約5%),尤其當(dāng)試卷難度提高時(2015年的試卷難度高于2014年),優(yōu)勢更加明顯。同樣地,試點班的成績分布顯著優(yōu)于普通班,優(yōu)秀比例明顯高于普通班(約12%)而不及格率明顯低于普通班,特別是當(dāng)試卷難度提高時,優(yōu)勢同樣更加明顯。因此,從實踐結(jié)果可見這篇文章提出的面向醫(yī)科大學(xué)的基于計算思維培養(yǎng)的計算機(jī)基礎(chǔ)教學(xué)方案是有效的,有助于提高學(xué)生分析、解決問題的能力。
當(dāng)然,這里所提出的教學(xué)方案也存在不足。眾所周知,慕課、翻轉(zhuǎn)教學(xué)是近年教育發(fā)展的新動向,如果能讓學(xué)生自主地圍繞這某個與計算思維和醫(yī)學(xué)相關(guān)的主題開展學(xué)習(xí)報告,學(xué)習(xí)效果將會有更大的提升[11]。
四、結(jié)束語
通過分離、提取科研或?qū)W科競賽中的成功案例具體地將計算思維呈現(xiàn)給醫(yī)科類學(xué)生,使得計算思維不再抽象刻板,而是具有實用性。非計算機(jī)專業(yè)學(xué)生只需大概清楚計算機(jī)算法能夠做什么、怎么結(jié)合,而具體的實現(xiàn)過程可交由計算機(jī)專業(yè)人員完成。有助于提高了學(xué)生的學(xué)習(xí)興趣,激發(fā)學(xué)習(xí)計算機(jī)技術(shù)的熱情,更加明確程序設(shè)計的方法論,同時提高他們運(yùn)用計算機(jī)進(jìn)行學(xué)術(shù)探索和創(chuàng)新的能力。實踐結(jié)果表明所提出的教學(xué)方案顯著提高了學(xué)習(xí)成績、優(yōu)化了成績分布,該方案是有效的。接下來將著重研究如何將該方案與慕課、翻轉(zhuǎn)教學(xué)結(jié)合,以及如何更加合理地調(diào)控教學(xué)內(nèi)容的比例和進(jìn)度。
參考文獻(xiàn):
[1]Jeannette M. Wing. Computational Thinking[J]. Communications of the ACM,2006,49(3):33-35.
[2]戰(zhàn)德臣,聶蘭順,徐曉飛.“大學(xué)計算機(jī)”——所有大學(xué)生都應(yīng)學(xué)習(xí)的一門計算思維基礎(chǔ)教育課程[J].中國大學(xué)教學(xué),2011(4):15-20.
[3]陳國良,董榮勝.計算思維與大學(xué)計算機(jī)基礎(chǔ)教育[J].中國大學(xué)教學(xué),2011(1):7-11.
[4]譚浩強(qiáng).面向計算機(jī)應(yīng)用與科學(xué)思維能力培養(yǎng)——關(guān)于計算機(jī)基礎(chǔ)教育深化改革的思考[J].計算機(jī)教育,2014(7):4-8.
[5]袁同山,陽小華,白寶鋼.醫(yī)學(xué)計算機(jī)應(yīng)用(第5版)[M].北京:人民衛(wèi)生出版社,2013.
[6]劉志敏,唐大仕,錢麗艷,等.北京大學(xué)文科計算機(jī)基礎(chǔ)課程改革的新進(jìn)展[J].計算機(jī)教育,2013(17):130-132.
[7]吳旭,牛少彰,頡夏青.計算思維與理科專業(yè)“大學(xué)計算機(jī)基礎(chǔ)”實踐教學(xué)研究[J].北京郵電大學(xué)學(xué)報(社會科學(xué)版),2015,17(1):88-93.
[8]徐奕奕,唐培和,唐新來.計算文化視角下“大學(xué)計算機(jī)基礎(chǔ)”課程改革初探[J].高教探索,2016(8):71-74.
[9]鄭麗坤,關(guān)紹云,郭丹.計算思維引導(dǎo)的高校計算機(jī)基礎(chǔ)教學(xué)實踐研究[J].黑龍江高教研究,2016(2):174-176.
[10]李廉.方法論視野下的計算思維[J].中國大學(xué)教學(xué),2016(7):16-21.
[11]魯強(qiáng).計算思維導(dǎo)引新生研討課的實施與認(rèn)識[J].計算機(jī)教育,2016(10):133-135.