999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

計算思維中的抽象是一種怎樣的抽象

2023-10-08 03:29:44陳凱上海市位育中學
中國信息技術教育 2023年19期
關鍵詞:計算機情境思維

陳凱 上海市位育中學

在頭腦中想象有兩頭大象正緩慢而又莊嚴地走過,這似乎并不是什么特別困難的事情,然后,集中注意力,把內心的目光聚焦在大象的腿上,假設將大象邁出任意一側的腿的動作視作1步,并幻想這樣的場景,當一頭大象邁出3步的時候,另一頭大象恰好邁出4步,雖然步數不同,但它們經過的距離是一致的。

要精準地構想出上述場景,的確是有較大困難的,很多人甚至很難想象一頭大象具體行走時腿的動作變化。相信隨便觀看一段大象行走的視頻,都遠勝于下面的文字解釋,但這里還是盡量解釋一下:大象先邁出某一側后腿,當這一側后腿看上去即將要踩到同一側的前腿時—當然這并不會發生,前腿往前邁出,相隔很短的時間,這一側后腿才著地,也就是說,在某一時刻,大象一側的兩條腿是騰空的,接著,這一側前腿著地,以上稱為1步,然后,就是換另一側腿按同樣動作前進。雖然花費了不少文字來描述,但總是不可能由這些文字精準地還原出大象行走的過程,語言文字的抽象難以完整地反映整個客觀事實,只是提供了一些關鍵性特征的描述。

這里有一道簡單的數學題:設有兩只大象A和B,A大象邁出3步的距離與另一只B大象邁出4步的距離均為t,且走過t距離路程所消耗的時間也是一致的,問A大象邁出第n步時,B大象邁出了多少步?考慮A大象每一步的距離是t/3,n步的距離就是n*t/3,B大象每一步的距離是t/4,則可以看出B大象邁的步數是(n*t/3)/(t/4),公式可以進一步簡化為n*(4/3),計算結果自然有可能存在小數,只要取整即可。在做數學題時,不用去考慮大象本身,也不用考慮大象行走的具體過程,這種提取出事物中數量關系并建立數學語言的表征的方法,顯然就是一種數學上的抽象。這里的問題是,假設某人編寫了一段程序,由用戶輸入變量值n,程序自動計算后得出并打印結果,這個過程中有沒有體現出計算思維的抽象?

關于數學抽象,《普通高中數學課程標準(2017年版2020年修訂)》指出:“數學是研究數量關系和空間形式的一門科學。數學源于對現實世界的抽象,基于抽象結構,通過符號運算、形式推理、模型構建等,理解和表達現實世界中事物的本質、關系和規律……數學抽象是指通過對數量關系與空間形式的抽象……獲得數學概念和規則,提出數學命題和模型,形成數學方法與思想,認識數學結構與體系。”[1]我們可以從中很清晰地看出數學學科中抽象的對象、抽象的目標以及作為抽象結果的表征符號。除了數學,其他學科的方法中也涉及抽象,雖然說不同學科中“抽象”的含義本身是相同的,但抽象的對象和目標是不同的。以物理學科為例,關于物理學科的抽象,是“從物理學視角對客觀事物的本質屬性、內在規律及相互關系的認識方式,是基于經驗事實建構物理模型的抽象概括過程”[2],“理想化模型來源于實際的事物,是將實際事物的某些物理性質或物理性質的變化在一定條件下理想化而得到的抽象”[3]。可以看出,雖然說數學和物理的抽象都面向現實世界,但數學關心的是數量關系和空間形式,數學模型可以超越現實、獨立于真實的物理現實而存在(不妨想象一個物理現實與當前世界完全不同的異世界的數學定律是否和當前世界一致)。大衛·呂埃勒(David Ruelle)說:“數學自身構成一個有意義的、自然的結構。”[4]戈丁(LarsGarding)說:“為了理解周圍的世界,人們總是把自己的觀察及思想組織成概念的體系,我們把這些概念體系稱為模型,數學模型在邏輯上是首尾一貫的……數學的對象顯然是抽象的觀念,邏輯是最后判斷正誤的標準。”[5]而物理學關心的是對自然界的最合理描述,也就是尼爾斯·玻爾(Niels Bohr)所說的“我們能對自然說些什么”。

●談論計算思維的抽象需要錨定情境

關于數學或物理學的抽象,對于抽象的對象、目標以及作為抽象結果的表征符號,各家觀點還是比較清晰和一致的。那么,計算思維的抽象到底有怎樣的獨特性?周以真教授倡導的培養計算思維的課程的一項目標是“像計算機科學家那樣思考”,她認為“計算思維是利用計算機科學的基本概念,進行的問題解決、系統設計、人類行為理解等一系列涵蓋計算機科學之廣度的思維活動……像計算機科學家一樣思考不僅僅意味著能夠為計算機編程,它需要在多個抽象層次上進行思考”。[6]董榮勝認為“計算思維的重點在于計算機科學中的不同抽象層次的‘自動有效進行’”。[7]這些說法提示了抽象具有層次性,同時也存在讓人困惑的地方,如數學問題的解決也往往需要在多個或不同的抽象層次上進行思考,所以說僅僅看“在多個抽象層次上進行思考”這一點,未必體現計算思維的特點。這里需要弄清楚的問題是,所謂的抽象層次到底是什么層次,抽象層次間的關系又可能是怎樣的。

盧西亞諾·弗洛里迪(Luciano Floridi)給出過一個簡單卻值得深思的例子:“你詢問一輛二手車的價格,得到的回復是5000,那么你是否能知道車的價格呢?”在不同語境下,是否能成功判斷價格的情況有所不同,原因是數字后沒有單位,在某些特定的語境下,數字的單位作為不必要的細節被舍棄掉了。而在更復雜的情況下,就需要在數字后加上單位,比如英鎊,于是抽象的層次就發生了變化。[8]盧西亞諾·弗洛里迪認為,數字加上單位后到達了“正確的抽象層次”(筆者認為不加單位也不能視為錯誤的抽象層次,而是一種更加抽象的抽象),這個層次錨定了一個基于規則的、易于執行和控制的情境。這個例子的啟發是,當談論計算思維的抽象是什么的時候,需要問其錨定的是什么樣的情境。

●大象漫步問題解決中的抽象

回到先前的問題,問當A大象邁出第n步時,B大象邁出了多少步?假設直接將原始的數學公式轉換為Python程序代碼來解決大象漫步的步數問題,程序因變量t未被賦值而無法運行,如圖1所示。

圖1

顯然,變量t的值是多少,絲毫也不影響計算結果,但既然表達式中有t,計算機就會追問t到底是什么。為了解決這個問題,有兩個辦法,比較常見的是在列出表達式時就將t約掉,但這樣其實就是人工地進行了公式的變換。另一個不太常見的辦法是,隨便給t賦一個值(只要不是零),程序就能正常運行了,如圖2所示。這個例子其實顯現出計算機科學中的一種抽象所對應的情境是如何使自動化過程能行。

圖2

所以,從大象漫步問題的提出到數學公式的列出,這個過程主要體現數學上的抽象,而編寫成可執行的程序語言,是對數學抽象層次上的又一次抽象。然而問題是,由于高級語言與日常及數學語言過于接近,所以當數學的表征符號和計算機的表征符號具有相當程度的相似性時,反而難以顯著地體現出計算思維抽象的特點。來看這樣的表述:“計算思維就是將所研究的問題抽象表示為形式化、程序化和機械化的對象,成為可以用于機器做批處理的對象,這種抽象也就是計算思維的精髓。”[9]將數學表達式轉化為程序語言表達式,雖說的確也算是將問題抽象成為可以用于機器做批處理的對象,但這個過程中所做的主要是數學表征符號向程序語言表征符號的變換,那個機械化的對象本身是在場的,除此以外,我們在許多情況下還需要考慮那個機械化對象本身并不在場且等待著將要被構建成為具有實施批處理能力的機械(或虛擬的機械)的狀況。這里試著舉一個更容易理解的例子,借助枚舉算法編寫程序解決一個可以用枚舉法來解決的問題,與綜合運用循環結構、分支結構、變量等構建出一個枚舉算法的程序來解決一個可以用枚舉法來解決的問題,這兩者抽象的對象和目標是不同的。

有很多來自基礎教育階段的一線教師對計算思維中抽象作用的看法是相似的(這里暫且將筆者的看法排除在外),如認為“學生根據老師的引導,把問題模型抽象成算法描述,然后形成程序達到自動化”[10]“把具體問題進行抽象,轉換成計算機能夠識別的符號或對象”。[11]值得一提的是,許憬對數學解題過程中的抽象與運用計算機解題過程中的抽象的區別做了比較詳細的分析,關于計算機解題過程中的抽象,認為“在解決問題過程中,我們需要從事物的描述中梳理和抽象出可以控制執行的若干條規則,并且將這些規則轉換成計算機可以理解的表達形式”。[12]不過與此形成對照的,是根據文獻資料,來自一些大學教師關于計算思維中抽象的作用的討論,往往集中在對計算機硬件或軟件系統的構建上,如“抽象思維的本質是運用分析、判斷、推理、比較等方式抽取事物本質或共性的思維。對計算機系統資源的抽象,使用戶不必了解下層實現細節……”[13]“計算機系統的運行過程,將動態電子事件組合,用程序設計語言文本化表示,常見的各種形式化程序設計語言都是類似的抽象工具……”[14]“形式化表達有不同的層次……從外向內,從人向計算機,每一層次的形式化表達都可以向內層轉換,每一層向內層的轉換都需要經歷抽象和形式化”。[15]可見,即便都提及計算思維的抽象,錨定的情境往往是不同的,情境之一是將現實問題抽象成以計算機系統可實現的方法,在現有的抽象層次上解決自動化問題,更關心的是計算機系統的能行的問題。情境之二是某個可執行計算的環境本身是需要等待被構建,計算系統本身是其他層次的軟硬件系統抽象的結果,抽象層次本身的架構需要經歷抽象和形式化的過程,其更關心的是如何使系統能行的問題。例如,一段含有乘法和除法的表達式可以是數學表達式在計算機程序語言環境中抽象的結果,同時,這個語言環境也是更底層更復雜的機器指令抽象的結果。筆者注意到,2010年7月在西安交通大學舉辦的首屆“九校聯盟(C9)計算機基礎課程研討會”發文提出,“計算機科學基礎理論研究實際上是基于抽象級環境(如圖靈機)的問題求解,計算機硬件體系的設計與研究則是一種指令級的問題求解,程序設計是基于語言級的問題求解活動,系統軟件設計與應用軟件設計則是一種系統級的問題求解……計算思維的本質特征是基于不同層次計算環境的問題求解……是基于計算模型(環境)和約束的問題求解”。[16]這其實就闡述了抽象具有多樣性,某些問題的解決涉及抽象級環境本身架構的問題。這對基礎教育階段的計算思維培養的教學設計給出了一條值得關注的線索,不同層次抽象的共同情境是基于計算模型(環境)和約束的問題求解。

●約束問題設立的一種嘗試

到目前為止,基礎教育階段的教學案例的資料在提及計算思維的抽象時,所引用的案例絕大部分都屬于在現有的抽象層次上解決自動化問題,對抽象級環境本身架構的問題的討論是相當有限的。為了讓教學設計更能體現出計算思維方面的抽象能力的培養,可以從有意設定約束條件,改造抽象級環境入手,之所以是改造而不是直接利用某些知名的抽象級環境如圖靈機,是為了便于學生能夠借助已有的知識和能力實現相對平滑的遷移。仍然以大象漫步問題為例,給出一個不甚成熟的改造,規定學生在使用程序語言表達式時,不能運用乘法和除法運算,在這樣受到限制的環境中,思考如何解決計算大象步數的問題。

解決的方法有很多種,如可以用加法和減法來模擬乘法和除法,如圖3代碼所示,或者直接用計數的辦法對兩頭大象的步伐進行模擬,上頁圖4所示的代碼給出了模擬大象步伐計數的計算方法,當然,也可以很方便地擴展代碼使之成為可以任意設定大象步數的更一般性的解法,前者是對數學運算過程進行模擬,后者是對大象步伐行為本身進行模擬。兩種方法都體現出形式化表達向內層轉化的特點,被轉化的結果可以進一步被封裝成為抽象的模塊,供高一層次的系統調用。

圖3

圖4

在現實情況中,基礎教育階段的學生很可能對計算機軟硬件系統底層原理的認識不夠深入,且較難領會諸多抽象的計算模型的運行原理,在這樣的情況下,不僅可以要讓學生體驗特定抽象層次上的自動化的實現,還可以試著讓學生體驗在計算模型(環境)受約束的情境下,抽象層次本身架構的實現需要經歷的抽象和形式化的過程,這可能是一個值得深入探索的方向。

猜你喜歡
計算機情境思維
情境引領追問促深
不同情境中的水
思維跳跳糖
思維跳跳糖
思維跳跳糖
思維跳跳糖
計算機操作系統
基于計算機自然語言處理的機器翻譯技術應用與簡介
科技傳播(2019年22期)2020-01-14 03:06:34
信息系統審計中計算機審計的應用
消費導刊(2017年20期)2018-01-03 06:26:40
護患情境會話
主站蜘蛛池模板: 蜜芽国产尤物av尤物在线看| 国产理论一区| 久久精品无码专区免费| 国产91成人| 国产综合另类小说色区色噜噜| 一级毛片高清| 成人一级免费视频| AV片亚洲国产男人的天堂| yjizz国产在线视频网| 国产美女无遮挡免费视频| 亚洲天堂啪啪| 久久综合色天堂av| 18禁高潮出水呻吟娇喘蜜芽| 国产欧美性爱网| 国产欧美精品一区二区| 亚洲精品中文字幕无乱码| 国产激爽爽爽大片在线观看| 亚洲无码视频喷水| 一本二本三本不卡无码| 亚洲性视频网站| 国产一级无码不卡视频| 国产黑人在线| 欧美国产在线看| 国产欧美在线观看一区 | 久久久久人妻一区精品色奶水| 911亚洲精品| 在线观看国产精美视频| 综合天天色| 国产情精品嫩草影院88av| 亚洲日产2021三区在线| 色天天综合| 成人小视频网| 日韩一级二级三级| 1级黄色毛片| 成年人视频一区二区| 亚洲大尺码专区影院| 99re这里只有国产中文精品国产精品| 精品一区二区三区自慰喷水| 91小视频在线观看| 91娇喘视频| 亚洲国产日韩视频观看| 欧日韩在线不卡视频| 亚洲黄色视频在线观看一区| 激情综合网址| 91国内视频在线观看| 国产91九色在线播放| 中文成人在线| 亚洲成a∧人片在线观看无码| 亚洲精品视频在线观看视频| 在线国产91| 欧美精品在线看| 精品视频在线观看你懂的一区| 久久精品亚洲专区| 欧美五月婷婷| 最新国产在线| 亚洲欧美精品一中文字幕| 国产三级毛片| 日韩欧美在线观看| 免费jjzz在在线播放国产| 亚洲Aⅴ无码专区在线观看q| 波多野结衣一二三| 亚洲久悠悠色悠在线播放| 成人午夜久久| 久久无码av一区二区三区| 亚洲三级视频在线观看| 国产成人禁片在线观看| 国内精品91| 日本黄网在线观看| 日韩无码视频专区| 秘书高跟黑色丝袜国产91在线| 日本成人精品视频| 国产激情国语对白普通话| 精品精品国产高清A毛片| av在线手机播放| 毛片一区二区在线看| 黄色片中文字幕| 亚洲IV视频免费在线光看| 五月丁香在线视频| 2020亚洲精品无码| 国产精品福利社| 91精品国产自产91精品资源| 亚州AV秘 一区二区三区|