?

“去粗取精”與“循規蹈矩”

2020-10-30 10:03秦曉蘭
關鍵詞:抽象自動化

秦曉蘭

摘要:計算思維是一種能夠把問題及其解決方案表述成通過計算工具進行信息處理的形式化思維過程。它是每個人在日常生活中都可以運用的一種思考方式,同“閱讀、寫作、算術”一樣,是一種普適思維。計算思維的培養,要讓學生體驗“去粗取精”的抽象和“循規蹈矩”的自動化。以《機器人沿線走》一課為例具體說明。

關鍵詞:計算思維 抽象 自動化 《機器人沿線走》

計算思維是一種能夠把問題及其解決方案表述成通過計算工具進行信息處理的形式化思維過程。它是每個人在日常生活中都可以運用的一種思考方式,同“閱讀、寫作、算術”一樣,是一種普適思維。個人認為,計算思維的培養首先要讓學生體驗“去粗取精”的抽象和“循規蹈矩”的自動化。下面,以《機器人沿線走》一課為例具體說明。

一、體驗“去粗取精”的抽象

抽象是計算思維的本質,也是計算思維教育的重要內容。所謂“去粗取精”的抽象,即去除與問題解決不相關的非本質細節,提取出與問題解決相關的本質屬性和關鍵要素。

從個體心理發生、發展規律的角度看,中學階段學生的思維方式正由形象思維向抽象思維轉變,抽象思維能力尚未達到成熟水平。因此,問題解決中容易受到非本質屬性和特征的干擾。面對現實世界中紛繁復雜的真實問題,如何“去粗取精”,提取出“本質屬性”和“關鍵要素”,進而構建計算機可以解決的問題模型?類比、分解、數學表達等方式方法,可以引發高質量的抽象,發展計算思維。

(一)類比

類比是一種推理方法,是由兩個對象的某些相同或相似的性質,推斷出這兩個對象在其他性質上也有可能相同或相似的一種推理形式。在機器人編程教學中,最簡單、最直接的類比就是與人的類比。

課始,教師依據機器人行走的現象,提出問題:“在軟、硬件條件都近乎相同的情況下,不同的機器人設備行走的路線各不一樣,都或多或少發生了偏移。那么,如何解決偏移問題,讓機器人沿直線行走呢?”學生陷入沉思。偏移問題的解決需要學生抽象出“添加傳感器來獲取信息”這一關鍵要素,即機器人需要借助傳感器獲得地面路線信息來修正運動偏移。很顯然,對缺少問題界定、模型建構等經驗的學生來說,這一步抽象難度很大。

對此,教師組織學生開展模擬游戲:邀請兩個學生分別扮演機器人,一個學生閉著眼睛向前走,另一個學生睜著眼睛向前走。學生發現,閉著眼睛的同學走著走著就走歪了,而睜著眼睛的同學因為能看到地面直線,可以很輕松地沿直線行走。通過類比,學生恍然大悟:原來機器人缺少“眼睛”,需要加裝,使其也能“看到”地上的直線。

這里,通過類比調動學生的形象感知基礎,使他們迅速提煉出問題的本質屬性和特征,推進問題建模的進程。至于“機器人的眼睛——循跡傳感器”的相關陳述性知識,包括循跡傳感器的外觀、功能、原理、位置等,則可以在接下來的教學中組織學生自主探究解決。

(二)分解

分解即分離、拆解。分解可以是把一件事情分解為起因、經過、結果等要素,也可以是將一個物品的整體分解為各個組成部分,如將計算機的硬件分解為輸入/輸出設備、存儲器和CPU等。學生在抽象問題模型的過程中,為便于后續的形式化表達,可以將研究對象分解為彼此區別但又相互關聯的多個狀態,各個擊破。

學生通過上述類比過程,認識到“循跡傳感器可以幫助機器人獲取路面信息從而修正行走方向”。那么,是怎樣“修正”的呢?學生再次陷入沉思,然后提出了“往哪邊修正?”“什么時候往左邊修正,什么時候往右邊修正?”等一連串問題,但卻找不到出路,抽象不出關鍵要素。

這時,教師引導學生畫圖——畫出某一時刻機器人與地面路線的位置關系圖。學生大致畫出了如圖1所示的五種位置關系,即五種狀態。

學生進一步分析:若在狀態2及時修正方向,則狀態4將不會出現;同理,若在狀態3及時修正方向,那么狀態5也將不會出現。因此,刪除兩種冗余狀態,剩下三種有效狀態。至此,學生通過分解,抽象出機器人在某一時刻有且僅有三種狀態——居中(即狀態1)、左傾(即狀態2)、右傾(即狀態3)。在這三種狀態下,對機器人行走路線的修正方法都是唯一的、沒有二義性(在一種環境下會出現兩種或兩種以上的含義)的,即狀態1不修正,狀態2要用“右轉”命令來修正,狀態3要用“左轉”命令來修正。由此,得到狀態判斷與修正流程圖(如圖2)。

將現實世界中的真實問題交由計算機解決,最重要的就是解決二義性問題——計算機是自動執行人類指令的機器,人類給予計算機的指令必須是指向清晰、沒有二義性的,這樣,計算機才能根據指令無差錯地自動化執行。機器人沿線走,從中可以分解出很多屬性,如速率、方向、時間、位置、加速度等。教師通過引導學生畫圖,忽略速率、方向、時間、加速度等與問題解決無關的要素,而保留“機器人相對于地面路線的位置”這一關鍵要素。而由這一關鍵要素分解出來的三種狀態正好解決了修正方向的二義性問題。

(三)數學表達

數學表達表現為由數字、運算符號、括號、變量等組成的式子,包括算術表達式、關系表達式、邏輯表達式等。其中,算術表達式是由算術運算符號(+、-、×、÷等)連接起來的式子,關系表達式是由關系運算符號(>、<、=、≥、≤、≠等)連接起來的式子,邏輯表達式是由邏輯運算符號(或者、非、并且等)連接起來的式子。數學表達式具有唯一的值。通過數學表達來抽象,就是通過對研究對象的“數量關系”進行特征抽取,使得問題簡約化、明確化。

在抽象分解出三種狀態之后,接下來的關鍵問題是“狀態如何判定(表示)”,即要怎樣表示才能區分當前機器人是處在狀態1、狀態2還是狀態3。對此,教師提示學生在狀態圖上標注出每個機器人的3個循跡傳感器的位置(如圖3),引導學生觀察并用自然語言描述“三種狀態下,各機器人3個循跡傳感器的返回值”。很快,學生發現,可以用不同的邏輯表達式唯一地表示三種不同的狀態:狀態1,“循跡傳感器1等于0”并且“循跡傳感器2等于1”并且“循跡傳感器3等于0”;狀態2,“循跡傳感器1等于0”并且“循跡傳感器2等于0”并且“循跡傳感器3等于1”;狀態3,“循跡傳感器1等于1”并且“循跡傳感器2等于0”并且“循跡傳感器3等于0”。這樣,就將生活中的真實問題轉化為可以被“計算”的問題。

二、體驗“循規蹈矩”的自動化

在問題建模過程中,所有的抽象都是為自動化服務的?!把幍妇亍钡淖詣踊械摹耙帯薄熬亍奔础耙巹t”?!把幍妇亍钡淖詣踊?,就是指一旦為計算機預設了規則,計算機就會按照既定的規則自動化執行;如果沒有人為干預修改規則,計算機就只會按部就班地執行原先的規則。換句話說,計算機的自動化是以遵循規則為前提的,如果要求計算機完成更優的任務,則必須人為干預,去修改完善原先的規則。

在“機器人沿線走”的建模過程中,從機器人自動行走,到加入“循跡傳感器”模塊使其沿軌跡線行走,再到加入“超聲波傳感器”模塊使其主動避障,又到加入“舵機和掃把”模塊使其邊掃地邊沿線走……模型越來越復雜,功能越來越完善,學生在不斷迭代加深的優化處理中深切體驗到計算機“循規蹈矩”的自動化。

曾有學生問及“機器人可以超越人類嗎?”的問題,我想,當學生深切體驗了計算機“循規蹈矩”的自動化原理,明白了機器人的自動化是以遵循規則為前提的時候,他們自然會得出否定的答案。

參考文獻:

[1] 王榮良.中小學計算思維教育實踐[M].上海:上??萍冀逃霭嫔?,2019.

[2] 王榮良.計算思維究竟是什么[J].中國信息技術教育,2015(23).

[3] Jeannette M. Wing. Computational Thinking[J]. Communication of the ACM, 2006(3).

猜你喜歡
抽象自動化
小學數學概念形成三部曲
由“抽象”變“具體”
對數學有效教學的思考
淺談門格爾與羅雪爾關于方法論的對比及啟示
AGV小車在白酒行業自動化立體倉庫中的應用
配電室無人職守集控站在京博石化的運用
配電線路運行資料管理自動化的探討
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合