計算思維是運用計算機科學的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計、以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。 中文名
計算思維 提出時間
2006年3月 提出者
周以真Jeannette M. Wing 提出雜志
Communications of the ACM》 特 點
抽象,自動化 思 維
遞歸思維 目錄1總定義編輯概述2006年3月,美國卡內(nèi)基·梅隆大學計算機科學系主任周以真(Jeannette M. Wing)教授在美國計算機權(quán)威期刊《Communications of the ACM》雜志上給出,并定義的計算思維(Computational Thinking)。周教授認為:計算思維是運用計算機科學的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計、以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。
以上是關(guān)于計算思維的一個總定義,周教授為了讓人們更易于理解,又將它更進一步地定義為:通過約簡、
嵌入、轉(zhuǎn)化和仿真等方法,把一個看來困難的問題重新闡釋成一個我們知道問題怎樣解決的方法;是一種遞歸思維,是一種并行處理,是一種把代碼譯成數(shù)據(jù)又能把數(shù)據(jù)譯成代碼,是一種多維分析推廣的類型檢查方法;是一種采用抽象和分解來控制龐雜的任務(wù)或進行巨大復雜系統(tǒng)設(shè)計的方法,是基于關(guān)注分離的方法(SoC方法);是一種選擇合適的方式去陳述一個問題,或?qū)σ粋€問題的相關(guān)方面建模使其易于處理的思維方法;是按照預(yù)防、保護及通過冗余、容錯、糾錯的方式,并從最壞情況進行系統(tǒng)恢復的一種思維方法;是利用啟發(fā)式推理尋求解答,也即在不確定情況下的規(guī)劃、學習和調(diào)度的思維方法;是利用海量數(shù)據(jù)來加快計算,在時間和空間之間,在處理能力和存儲容量之間進行折衷的思維方法。
優(yōu)點內(nèi)容計算思維吸取了問題解決所采用的一般數(shù)學思維方法,現(xiàn)實世界中巨大復雜系統(tǒng)的設(shè)計與評估的一般工程思
維方法,以及復雜性、智能、心理、人類行為的理解等的一般科學思維方法。
優(yōu)點
計算思維建立在計算過程的能力和限制之上,由人由機器執(zhí)行。計算方法和模型使我們敢于去處理那些原本無法由個人獨立完成的問題求解和系統(tǒng)設(shè)計。
內(nèi)容
計算思維中的抽象完全超越物理的時空觀,并完全用符號來表示,其中,數(shù)字抽象只是一類特例。
與數(shù)學和物理科學相比,計算思維中的抽象顯得更為豐富,也更為復雜。數(shù)學抽象的最大特點是拋開現(xiàn)實事物的物理、化學和生物學等特性,而僅保留其量的關(guān)系和空間的形式,而計算思維中的抽象卻不僅僅如此。
2計算思維編輯操作模式 計算思維建立在計算過程的能力和限制之上,由人由機器執(zhí)行。計算方法和模型使我們敢于去處理那些原本無法由任何個人獨自完成的問題求解和系統(tǒng)設(shè)計。計算思維直面機器智能的不解之謎:什么人類比計算機做得好?什么計算機比人類做得好?最基本的問題是:什么是可計算的?迄今為止我們對這些問題仍是一知半解。
計算思維用途 計算思維是每個人的基本技能,不僅僅屬于計算機科學家。我們應(yīng)當使每個孩子在培養(yǎng)解析能力時不僅掌握閱讀、寫作和算術(shù)(Reading, wRiting, and aRithmetic——3R),還要學會計算思維。正如印刷出版促進了3R的普及,計算和計算機也以類似的正反饋促進了計算思維的傳播。
計算思維是運用計算機科學的基礎(chǔ)概念去求解問題、設(shè)計系統(tǒng)和理解人類的行為。它包括了涵蓋計算機科學之廣度的一系列思維活動。
當我們必須求解一個特定的問題時,首先會問:解決這個問題有多么困難?怎樣才是最佳的解決方法?計算機科學根據(jù)堅實的理論基礎(chǔ)來準確地回答這些問題。表述問題的難度就是工具的基本能力,必須考慮的因素包括機器的指令系統(tǒng)、資源約束和操作環(huán)境。
為了有效地求解一個問題,我們可能要進一步問:一個近似解是否就夠了,是否可以利用一下隨機化,以及是否允許誤報(false positive)和漏報(false negative)。計算思維就是通過約簡、嵌入、轉(zhuǎn)化和仿真等方法,把一個看來困難的問題重新闡釋成一個我們知道怎樣解決的問題。
計算思維是一種遞歸思維 它是并行處理。它是把代碼譯成數(shù)據(jù)又把數(shù)據(jù)譯成代碼。它是由廣義量綱分析進行的類型檢查。對于別名或賦予人與物多個名字的做法,它既知道其益處又了解其害處。對于間接尋址和程序調(diào)用的方法,它既知道其威力又了解其代價。它評價一個程序時,不僅僅根據(jù)其準確性和效率,還有美學的考量,而對于系統(tǒng)的設(shè)計,還考慮簡潔和優(yōu)雅。
抽象和分解 來迎接龐雜的任務(wù)或者設(shè)計巨大復雜的系統(tǒng)。它是關(guān)注的分離(SOC方法)。它是選擇合適的方式去陳述一個問題,或者是選擇合適的方式對一個問題的相關(guān)方面建模使其易于處理。它是利用不變量簡明扼要且表述性地刻畫系統(tǒng)的行為。它使我們在不必理解每一個細節(jié)的情況下就能夠安全地使用、調(diào)整和影響一個大型復雜系統(tǒng)的信息。它就是為預(yù)期的未來應(yīng)用而進行的預(yù)取和緩存。
計算思維是按照預(yù)防、保護及通過冗余、容錯、糾錯的方式從最壞情形恢復的一種思維。它稱堵塞為“死鎖”,稱約定為“界面”。計算思維就是學習在同步相互會合時如何避免“競爭條件”(亦稱“競態(tài)條件”)的情形。
計算思維利用啟發(fā)式推理來尋求解答,就是在不確定情況下的規(guī)劃、學習和調(diào)度。它就是搜索、搜索、再搜索,結(jié)果是一系列的網(wǎng)頁,一個贏得游戲的策略,或者一個反例。計算思維利用海量數(shù)據(jù)來加快計算,在時間和空間之間,在處理能力和存儲容量之間進行權(quán)衡。
考慮下面日常生活中的事例:當你女兒早晨去學校時,她把當天需要的東西放進背包,這就是預(yù)置和緩存;當你兒子弄丟他的手套時,你建議他沿走過的路尋找,這就是回推;在什么時候停止租用滑雪板而為自己買一付呢?這就是在線算法;在超市付帳時,你應(yīng)當去排哪個隊呢?這就是多服務(wù)器系統(tǒng)的性能模型;為什么停電時你的電話仍然可用?這就是失敗的無關(guān)性和設(shè)計的冗余性;完全自動的大眾圖靈測試如何區(qū)分計算機和人類,即CAPTCHA[注1]程序是怎樣鑒別人類的?這就是充分利用求解人工智能難題之艱難來挫敗計算代理程序。
計算思維將滲透到我們每個人的生活之中,到那時諸如算法和前提條件這些詞匯將成為每個人日常語言的一部分,對“非確定論”和“垃圾收集”這些詞的理解會和計算機科學里的含義驅(qū)近,而樹已常常被倒過來畫了。
我們已見證了計算思維在其他學科中的影響。例如,機器學習已經(jīng)改變了統(tǒng)計學。就數(shù)學尺度和維數(shù)而言,統(tǒng)計學習用于各類問題的規(guī)模僅在幾年前還是不可想象的。各種組織的統(tǒng)計部門都聘請了計算機科學家。計算機學院(系)正在與已有或新開設(shè)的統(tǒng)計學系聯(lián)姻。
計算機學家們對生物科學越來越感興趣,因為他們堅信生物學家能夠從計算思維中獲益。計算機科學對生物學的貢獻決不限于其能夠在海量序列數(shù)據(jù)中搜索尋找模式規(guī)律的本領(lǐng)。最終希望是數(shù)據(jù)結(jié)構(gòu)和算法(我們自身的計算抽象和方法)能夠以其體現(xiàn)自身功能的方式來表示蛋白質(zhì)的結(jié)構(gòu)。計算生物學正在改變著生物學家的思考方式。類似地,計算博弈理論正改變著經(jīng)濟學家的思考方式,納米計算改變著化學家的思考方式,量子計算改變著物理學家的思考方式。
這種思維將成為每一個人的技能組合成分,而不僅僅限于科學家。普適計算之于今天就如計算思維之于明天。普適計算是已成為今日現(xiàn)實的昨日之夢,而計算思維就是明日現(xiàn)實。
3特性編輯概念化,不是程序化
計算機科學不是計算機編程。像計算機科學家那樣去思維意味著遠不止能為計算機編程,還要求能夠在抽象的多個層次上思維。
根本的,不是刻板的技能
根本技能是每一個人為了在現(xiàn)代社會中發(fā)揮職能所必須掌握的??贪寮寄芤馕吨鴻C械的重復。具有諷刺意味的是,當計算機像人類一樣思考之后,思維可就真的變成機械的了。
計算思維是人類求解問題的一條途徑,但決非要使人類像計算機那樣地思考。計算機枯燥且沉悶,人類聰穎且富有想象力。是人類賦予計算機激情。配置了計算設(shè)備,我們就能用自己的智慧去解決那些在計算時代之前不敢嘗試的問題,實現(xiàn)“只有想不到,沒有做不到”的境界。
數(shù)學和工程思維的互補與融合
計算機科學在本質(zhì)上源自數(shù)學思維,因為像所有的科學一樣,其形式化基礎(chǔ)建筑于數(shù)學之上。計算機科學又從本質(zhì)上源自工程思維,因為我們建造的是能夠與實際世界互動的系統(tǒng),基本計算設(shè)備的限制迫使計算機學家必須計算性地思考,不能只是數(shù)學性地思考。構(gòu)建虛擬世界的自由使我們能夠設(shè)計超越物理世界的各種系統(tǒng)。
是思想,不是人造物
不只是我們生產(chǎn)的軟件硬件等人造物將以物理形式到處呈現(xiàn)并時時刻刻觸及我們的生活,更重要的是還將有我們用以接近和求解問題、管理日常生活、與他人交流和互動的計算概念;而且,面向所有的人,所有地方。 當計算思維真正融入人類活動的整體以致不再表現(xiàn)為一種顯式之哲學的時候,它就將成為一種現(xiàn)實。
4總結(jié)編輯許多人將計算機科學等同于計算機編程。有些家長為他們主修計算機科學的孩子看到的只是一個狹窄的就業(yè)范圍。許多人認為計算機科學的基礎(chǔ)研究已經(jīng)完成,剩下的只是工程問題。當我們行動起來去改變這一領(lǐng)域的社會形象時,計算思維就是一個引導著計算機教育家、研究者和實踐者的宏大愿景。我們特別需要抓住尚未進入大學之前的聽眾,包括老師、父母和學生,向他們傳送下面兩個主要信息:
智力上的挑戰(zhàn)和引人入勝的科學問題依舊亟待理解和解決。這些問題和解答僅僅受限于我們自己的好奇心和創(chuàng)造力;同時一個人可以主修計算機科學而從事任何行業(yè)。一個人可以主修英語或者數(shù)學,接著從事各種各樣的職業(yè)。計算機科學也一樣。一個人可以主修計算機科學,接著從事醫(yī)學、法律、商業(yè)、政治,以及任何類型的科學和工程,甚至藝術(shù)工作。
|
|