不插電的計算思維之“為對話而搜索”(上)

培養(yǎng)計算思維的難點在于如何設(shè)計好的教學(xué)課程,特別是入門級課程。創(chuàng)客類課程和少兒編程類課程都有很豐富的選擇椎镣,計算思維的課程卻很少杂曲,國內(nèi)能自行設(shè)計計算思維課程的老師也是少之又少庶艾。

既然國內(nèi)缺乏好的計算思維課程,索性我們還是先向國外大牛們?nèi)∪〗?jīng)吧擎勘。在推進(jìn)計算思維教育這條路上咱揍,英國是先行者之一,他們組織專業(yè)人士設(shè)計了Unplugged Computational Thinking(不插電的計算思維) 系列課程棚饵。

該系列課程由倫敦瑪麗王后大學(xué)設(shè)計煤裙,易上手掩完,啟發(fā)性強(qiáng),而且很關(guān)鍵的一點是課程中并不需要使用電腦等計算設(shè)備硼砰,也不需要具備任何編程基礎(chǔ)且蓬,只需具備一定的邏輯思維能力即可,所以非常的大眾化题翰。

這篇文章小編為大家介紹該系列課程的第一課《為對話而搜索》恶阴,該課程的設(shè)計靈感來源于暢銷書作者多米尼克?鮑比的真實經(jīng)歷。鮑比在身患閉鎖綜合癥后豹障,在助手的幫助下存淫,靠一只眼睛眨眼來拼讀單詞,完成了暢銷書《潛水鐘與蝴蝶》的寫作沼填。該課程模擬類似場景桅咆,啟發(fā)學(xué)員設(shè)法找到助手和患者高效溝通的方法。在游戲過程中坞笙,參與者可以體驗到編程岩饼、算法、迭代薛夜、糾錯等概念籍茧,非常直觀的體驗到運用這些思維的神奇效果。

面臨的問題

計算思維是用來幫我們解決問題的梯澜,在這里寞冯,待解決的問題是“助手如何快速知道鮑比想說什么”。

患病的鮑比只有一只眼睛可以活動晚伙,他聽的見吮龄,也看的見,但是無法用語言和外界溝通咆疗,唯一可用的就是他的這只眼睛漓帚。也就是說,眼睛是鮑比唯一可用的與外界進(jìn)行溝通的工具了午磁。

一個可能的解決辦法

讓助手從成千上萬的單詞中直接猜測鮑比想說的單詞(我們稱之為目標(biāo)單詞)顯然是個幾乎不可能完成的任務(wù)尝抖,但是從26個英文字母中猜測目標(biāo)單詞的首字母、第二個字母等卻簡單的多迅皇。

一個很容易想到的方法是用眨眼次數(shù)來代表不同的字母昧辽,眨一次代表A,眨兩次代表B登颓,其他字母依此類推搅荞。這樣的話,助手要做的就是數(shù)鮑比的眨眼次數(shù),再將對應(yīng)的字母寫下來取具。按照這種方法脖隶,從目標(biāo)單詞的首字母開始一個個猜下去,就能完整地拼出目標(biāo)單詞了暇检。

想出這個辦法的過程中我們就用到了一種“計算思維“产阱,我們把這種計算思維叫”算法思維“。算法就是一種約定好的運算方式块仆,按照這個約定好的規(guī)則一步步地做下去就能完成某種目標(biāo)构蹬,在這里,目標(biāo)是傳達(dá)字母和單詞悔据。算法思維是指如何想出一個算法去解決問題庄敛。

算法之美

算法的美妙之處是相關(guān)對象不需要理解他們在做什么以及為什么這么做。在算法的幫助下科汗,助手即便不理解自己所做的事情藻烤,書依然能被寫出來。助手只需要數(shù)清楚鮑比的眨眼次數(shù)并把相應(yīng)的字母寫下來就可以了头滔。我們可以給鮑比和助手準(zhǔn)備一個眨眼次數(shù)和字母對照表怖亭,這樣他們就能完全不需要思考地按照算法去做了。

算法的美妙就在于它使得人們能夠“機(jī)械化”做事情坤检,這意味著計算機(jī)也可以不加思考地按照指令做事情兴猩。


我們想出的這個算法分為兩個部分,一部分是鮑比用來執(zhí)行的(根據(jù)字母對應(yīng)的次數(shù)眨眼)早歇,一部分是助手用來執(zhí)行的(數(shù)清鮑比的眨眼次數(shù)并寫下相應(yīng)字母)倾芝。對于這種兩個人之間或者兩臺電腦之間用來傳遞信息的算法,計算科學(xué)家管它們叫協(xié)議箭跳。

雙方都要按照協(xié)議中關(guān)于自己的那部分去做晨另,假如任何一方出錯(假如數(shù)錯了次數(shù)),信息傳遞都會失敗衅码。而計算機(jī)的厲害之處就是它每一次都會完完全全地按照協(xié)議去做拯刁,不會犯類似錯誤。

算法思維是一種特殊的問題解決方式逝段,它不需要你給出一個問題的具體答案,比如“42”割捅,而是要你給出一種有步驟的解決方案奶躯,其他人(也包括計算機(jī))只要按照這個步驟做就能得出答案。比如我們給鮑比提出的這個辦法亿驾,辦法本身并不能告訴我們鮑比想說什么嘹黔,但是我們能它算出鮑比想說的話。雖然很慢,但至少能幫鮑比和助手實現(xiàn)溝通了儡蔓。也許有更好的方法郭蕉,尋找更好的方法也是算法思想的一部分。

鮑比是怎么做的

鮑比的確有更好的辦法喂江,別忘了召锈,助手是可以說話的,而鮑比的聽力也沒問題获询,因此我們可以利用這一點涨岁。鮑比用了這樣的一個算法,讓助手從“A-Z”按順序的讀字母表吉嚣,當(dāng)鮑比聽到他想要的字母后就眨眼示意梢薪,這時助手停止讀字母并將讀過的最后一個字母寫下來。然后重復(fù)這樣做尝哆,把字母一個個寫下來秉撇。和朋友一起試試這種交流方式,試想一下這是你僅有的和外界溝通的方法秋泄。希望你的名字不是“Zebedee? Zacharius ?Zog or Zara Zootle”畜疾。


一但你試過了這種方法,就會發(fā)現(xiàn)真要想讓它發(fā)揮作用還有一些問題印衔。試過之后啡捶,也許你還能想出別的辦法來改善這個算法,試一試你能想出什么辦法奸焙。

細(xì)節(jié)優(yōu)化

你可能會發(fā)現(xiàn)的一件事兒是你需要處理的不只是26個英文字母瞎暑,還有空格、阿拉伯?dāng)?shù)字与帆、句號等等信息了赌,你需要把這些也添加到要使用的表格里。還有一個要解決的問題是如果錯眨了眼睛怎么辦玄糟,我們要想個辦法讓鮑比表達(dá)“剛才眨錯了勿她,忽略它,重新開始”阵翎,用快速連眨兩次眼睛來代表這個意思似乎不錯逢并。


算法思維是關(guān)于尋找解決辦法以及處理解決辦法中的細(xì)節(jié)的,是關(guān)于認(rèn)識到做事情的方式有很多種郭卫,而我們要想出針對這個情景的最佳方法的砍聊。我們要意識到算法中人去做的那部分事情是我們要解決的問題之一。理論上贰军,我們的算法這樣就能起作用:在正確的時間眨眼玻蝌。我們可以傲慢地說人應(yīng)該把事情做對,做錯了,那是人的錯俯树,跟我無關(guān)帘腹。但不要忘了我們的目的,我們的目的是幫鮑比和助手實現(xiàn)溝通许饿,所以我們要考慮如果人出了錯該怎么辦阳欲,我們設(shè)計的算法要能夠允許人犯錯并能夠?qū)⑵浼m正過來,所以說米辐,算法思想和理解人也有關(guān)胸完。

如何做得更好

在單詞拼寫到一半的時候,通過直接猜測目標(biāo)單詞的方式我們可以加快速度翘贮。假如你已經(jīng)知道了“a-n-t-e-l”,那么很容易猜測目標(biāo)單詞是“antelope”赊窥。所以你可以改編算法的規(guī)則,讓助手去做類似的猜測狸页。那么我們就需要一種方法讓助手知道他的猜測是否正確锨能,也許方法就是猜對了就眨眼,沒猜對就什么也不做芍耘。


這其實就是“預(yù)測性文本”的工作方式址遇,手機(jī)里用的就是這種算法,也許手機(jī)也是你想到“猜詞”這種方法的來源斋竞。如果你想到了這種猜詞的辦法倔约,那么你就運用了另一種計算思維——問題轉(zhuǎn)化。

通常坝初,我們遇到的問題會變得和我們在另一個不同情景下見過的問題很相似浸剩。如果對于另一個不同情景下的問題我們有解決辦法,那這個辦法就可以拿來用鳄袍。和助手在看到幾個字母后需要猜測鮑比想說什么一樣绢要,手機(jī)也有同樣的問題需要解決,手機(jī)需要在人們打字過程中弄清人們想要打什么字拗小。一旦意識到了這一點重罪,對于這兩個問題,有了解決任何一個問題的辦法哀九,都可以拿去解決另一個問題剿配。

鮑比的助手的確使用了一種“預(yù)測性文本”。鮑比也意識到“拼讀字母的算法”可以用一種不同的方式來改進(jìn)勾栗。在他患病前惨篱,他曾是法國女性雜志 ELLA 的編輯,因此熟知語言围俘。他知道在語言里,一些字母比其他字母更常見,比如界牡,字母E 在英語和法語中都是最常見的簿寂。因此他讓助手按照字母的常見程度(在單詞中出現(xiàn)的頻率)讀字母,在英語中是這個順序“E…T…A…O…”在法語中是這個順序“E…S…A…R…”宿亡。這樣常遂,他的助手可以更快得到常見字母。

很久以來挽荠,類似的技巧也被用于破解密碼克胳。一千多年前,穆斯林學(xué)者發(fā)明了使用字母頻率的方法圈匆。鮑比利用頻率分析的主意也是一個問題轉(zhuǎn)化的例子漠另,只要我們意識到破解密碼和猜字母是類似的問題,那么為其中一個問題發(fā)明的方法就可以用于解決另一個問題跃赚。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末笆搓,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子纬傲,更是在濱河造成了極大的恐慌满败,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叹括,死亡現(xiàn)場離奇詭異算墨,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)汁雷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進(jìn)店門净嘀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人摔竿,你說我怎么就攤上這事面粮。” “怎么了继低?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵熬苍,是天一觀的道長。 經(jīng)常有香客問我袁翁,道長柴底,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任粱胜,我火速辦了婚禮柄驻,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘焙压。我一直安慰自己鸿脓,他們只是感情好抑钟,可當(dāng)我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著野哭,像睡著了一般在塔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拨黔,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天蛔溃,我揣著相機(jī)與錄音,去河邊找鬼篱蝇。 笑死贺待,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的零截。 我是一名探鬼主播麸塞,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瞻润!你這毒婦竟也來了喘垂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤绍撞,失蹤者是張志新(化名)和其女友劉穎正勒,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體傻铣,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡章贞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了非洲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鸭限。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖两踏,靈堂內(nèi)的尸體忽然破棺而出败京,到底是詐尸還是另有隱情,我是刑警寧澤梦染,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布赡麦,位于F島的核電站,受9級特大地震影響帕识,放射性物質(zhì)發(fā)生泄漏泛粹。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一肮疗、第九天 我趴在偏房一處隱蔽的房頂上張望晶姊。 院中可真熱鬧,春花似錦伪货、人聲如沸们衙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽砍艾。三九已至蒂教,卻和暖如春巍举,著一層夾襖步出監(jiān)牢的瞬間脆荷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工懊悯, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留蜓谋,地道東北人。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓炭分,卻偏偏與公主長得像桃焕,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子捧毛,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 品人生的淡滋味 淡观堂,是淡然 淡,是淡泊 淡呀忧,是淡雅 人生百味师痕,唯有品味 人生酸甜苦辣 是不可或缺的經(jīng)歷 心淡之后,...
    來喜wzf閱讀 178評論 0 1
  • 難得今天兒子起床后而账,給兒子穿好衣服胰坟,走著去學(xué)校,生命在于運動泞辐。 難得一個人帶兒子一個下午笔横,和兒子一塊吃零食,陪兒子...
    鬧鬧小乖乖閱讀 146評論 0 0