楊豐秋



摘 ?要 深圳已普及機器人教學課堂,配備了專業教材和設備,形成常規教育教學。從教學中搜集部分知識亮點,結合學校教學模式,記錄將探究性學習融入課堂教學實踐過程。
關鍵詞 人工智能;機器人教學;循環
中圖分類號:G633.67 ? ?文獻標識碼:B
文章編號:1671-489X(2015)01-0042-04
人工智能的出現是科學發展史上的一個必然。機器人教學是從認識生活中的智能機器人開始的,了解機器人的系統,探秘機器人的工作原理,感受人工智能,學習程序算法設計,培養邏輯思維,同時引導學生養成細致全面思考問題的好習慣。
1 開啟學生探索人工智能的奧秘之門
現實生活中,人們處處可以感受到人工智能帶來的舒適和便捷。如:學習外語時用到的翻譯軟件,手機的手寫輸入功能,洗手時用到的自動感應水龍頭,樓道里的自動感應燈,汽車里的倒車雷達,等等[1]。這些設備是如何制作出來的?為什么這些設備具備了人類才有的智慧和能力呢?
機器人教學中首先引入了“人工智能”這個專業術語,是指由人類制造出來的“機器”所表現出來的智慧和能力,它具備人類智能具有的感知、思維和行為能力,具備這三種能力的機器就被稱為“智能機器人”,這個具有前瞻性的科技領域給學生帶來了莫大的興趣和探索熱情。課堂上,有學生首先分享了家里的掃地機器人,說掃地機器人很聰明,家人早上把門一關,放心地去上班上學了,晚上回到家里,家里已變得干干凈凈了,那都是它的功勞。接著又有學生說在科技節展館門口看到一款機器人,見到有人進來了,就過來跟你握手,然后說:“你好!請進!”孩子們交流熱烈,急切地想尋求答案來解釋為什么機器人具有人類智慧,具備感應和判斷行為的能力。
接下來,課堂里展開主題為“人工智能和機器人”的教育教學內容,向他們講解機器人的大腦也如同人的大腦一樣的工作,先利用傳感器對外界接收信息(感覺),運用知識進行判斷(分析),然后輸出反應(運動),這一工作過程就是機器人智能的體現。以避障機器人行動步驟流程圖(圖1)為例,流程圖分析:要讓避障機器人擁有躲避障礙物的判斷智能,首先必須讓它能聽懂語言——計算機程序,判斷前面是否有障礙物,并執行它轉向或直行動作。目前,人工智能領域的研究方向有很多,突出表現在傳感器技術和人機交互等領域,相信隨著時代的進步和科技的發展,在未來社會里,人工智能的研究成果將能夠創造出更多更高級產品,人工智能將為發展經濟和改善人類生活做出更大的貢獻。
2 理解并運用變量和賦值語句
在教學過程中,筆者發現同學們對變量和賦值語句的理解是有困難的,大部分學生不能深切理解到變量的作用,變量和賦值語句的關系。在課堂上,有學生就經常舉手提問:“老師,變量究竟有什么作用?為什么要引出變量?什么叫賦值?兩者之間有什么聯系呢?”筆者以制作聲控燈為例,詳細說明變量和賦值語句的作用和關系。
變量[2]
1)概念:變量是為程序中可能改變的數據提供的臨時存儲空間,通過對應的變量名來使用其中存儲的數據。
2)變量包括兩個重要元素:變量名和存儲的數據。
賦值語句
1)功能:通過賦值語句可以給某個變量賦予一個具體的值。
2)舉例:a=1表示將數值1賦予給變量a。
3)格式:變量名=表達式,需強調的是:這里的“=”號稱為賦值號,而不能讀等號,表示將計算右邊表達式的值賦予給左邊的變量。
變量和賦值語句的關系 ?通過賦值語句給變量賦值,變量就不再是一個單純的符號了,而是有對應的數值和意義,而不同的數值就可以記錄某個設備不同的狀態了。例:用數值“0”記錄燈滅的狀態,用數值“1”記錄燈開狀態。
在圖形化編程中使用變量和賦值語句 ?以諾寶RC圖形化編程系統以例,每一種傳感器都相應地有預設的變量供使用,如圖2所示。
條件表達式含義:表示將數值“0”賦予給光感變量,即光感傳感器檢測沒有光線的條件成立。
除了對應傳感器的變量,圖形化編程系統中還內置了10個通用變量,供編寫程序時靈活選用,如圖3所示。
通過數字化傳感器的“變量賦值”模塊來實現對通用變量的賦值。圖3表示將數值“1”賦予給“通用變量1”。
在編程中,經常會同時需要給傳感器變量和通用變量賦予具體的數值。舉例:使用變量賦值制作聲控燈(圖4)。
程序算法分析:首先通過變量賦值給通用變量1賦予數值“0”來記錄燈滅的狀態,然后通過聲音傳感器條件判斷外界是否有聲音傳過來,如果檢測有聲音,則馬上開燈,而這種燈開的狀態則恰好需要通用變量1被賦予“1”來記錄,所以在“發光”模塊下面增加一個變量賦值模塊來記錄燈已經打開了。此程序就充分地把變量賦值的功能和價值體現出來了。
3 巧妙使用循環語句
通過編寫使用變量賦值制作聲控燈的程序,在程序中應用了變量賦值,在算法分析時加深了學生對變量和賦值語句的理解。但很快又碰到新問題了,在平臺上仿真程序運行過程中,有學生發現機器人檢測到外界有聲音時,重復切換開關燈狀態,在仿真平臺上不停地“眨眼睛”,根本不是算法分析時所得出的聽到聲音就開燈的狀態,難道是我們的程序編寫錯了?怎么會出現這種結果呢?看來,新的問題又激發他們進一步探究新知識的興趣了,這樣又把學生帶入分析和思考中了。
我讓他們先自學了教材,大部分學生說知識點很抽象,不好理解,好像還缺個什么循環,至于為什么要用到這個循環,他們完全沒有建立清晰的算法思維,這時候就需要老師的引導和分析了。
我首先從機器人常用輸入設備聲音傳感器開始講,講它的工作原理和對聲音捕獲的特點。聲音傳感器對聲音的捕獲,是每隔一段規定的時間采集一次,而這個間隔時間非常短,人所聽到的“一次”聲音,被它卻“聽”成了“很多”次。例如:一次拍手掌的動作,人只聽到一次擊掌聲,而聲音傳感器卻聽到了很多次擊掌聲,于是它在一次普通的拍手掌聲音傳遞的過程中,完成了多次的開與關的動作,最后是停留在開上還是關上,就很難確定了,所以,就出現了頻繁“眨眼睛”的現象了。endprint
原來是“聲音傳感器”這個怪東西惹的禍!它的工作原理我們沒辦法改變了,那總得有辦法對付它吧?我們需要解決的就是讓聲音在傳感器首次聽到擊掌聲后不馬上傳遞開燈信息,而是繼續不斷地捕獲聲音,直到一次擊掌聲徹底停止后,再發出“現在可以開燈了”的信號。
這時,“直到型循環”就閃亮登場了!直到型循環又簡稱為“do條件循環”,學生們太想知道這個循環的執行過程和關鍵作用了,它為什么在程序中能穩住聲音傳感器對聲音的捕獲呢?
接著我來分析直到型循環在程序中執行的重要任務。在這個任務中,我們設置了“do條件循環”的條件判斷語句為“聲音變量==1”,不斷地去采集聲音,直到條件不成立,即聲音停止了,才認為是聽完了“一次”聲音,然后才執行程序后面的聽到聲音就開燈的條件判斷和指令,如圖5所示。
直到型循環的執行過程是:首先執行一次循環體內的程序序列,執行完畢后,再判斷條件選項,當條件滿足要求,即條件表達式的結果為真時則回到前面,再次執行循環體內的程序序列,如此反復,直到判斷條件選項不滿足要求時,即條件表達式的結果為假時才結束循環,執行循環體外后續的程序序列。
這樣,通過在程序中加入直到型循環,就輕松解決了機器人聽到聲音不停地“眨眼睛”問題了。
編寫程序離不開流程控制模塊中的循環模塊。我發現學生容易接受條件判斷、條件循環、多次循環的概念和應用,但對在程序中總要用到永久循環就不理解了,永久循環模塊中不能加入條件判斷,不能將循環的次數和要求體現出來,為什么在程序中首先要加入這個模塊呢?
這時,如果只是給他們講解永久循環模塊的功能,他們肯定是懂非懂的,不能完全理解這個循環的作用。這時不妨從修改程序入手,要學生把已做好的拍手聲控燈程序中的永久循環去掉,再通過仿真平臺測試程序運行效果。結果,他們發現機器人聽到聲音也不亮燈了,缺了永久循環還真不行。
永久循環模塊的功能描述很簡單,只是強調循環體永遠在里面循環,如圖6所示[3]。
我們需要把永久循環的理論與聲控燈的實際運行過程結合起來講解,才能體現這個模塊的真正作用。如果在程序中增加了永久循環模塊,就相當于給機器人加了一個實時檢測的“監聽器”,它每時每刻都在監測外界的狀態,一旦接收到聲音信號,就馬上開燈,實際上就是在執行循環體內的程序序列。所以說,永久循環是沒有循環次數限制的,而是永遠保持實時監測的狀態,隨時為執行循環體的程序序列做準備。
4 結語
機器人教育普及到課堂的時間不長,各級各類的拼裝設備和競賽形式層出不窮,這說明大家對新事物總是處于不斷地探索和發現中。問題是科學研究的出發點,是開啟學生思維大門的金鑰匙,引導學生發現問題和提出問題的研究和思考是我的教育出發點,孩子們在探索機器人領域的過程中,接受了教育,提高了綜合分析能力和實踐操作能力,體驗了過程中的快樂和愉悅。機器人教育還處在探索階段,期待同行的溝通交流與協作共進。
參考文獻
[1]吳良輝,楊青.人工智能與機器人[M].廣東:深圳市教育科學研究院,哈爾濱工業大學深圳研究院,2011:4.
[2]李文郁,要志東.信息技術[M].廣州:廣東高等教育出版社,2013:59.
[3]諾寶RC編程軟件使用手冊[M].廣東:哈工大(深圳)教育機器人研究中心,2010:17.endprint