◎鄧學(xué)明 (東莞市電子科技學(xué)校,廣東 東莞 523710)
1.人工智能教育的重要性
時代的快速發(fā)展、經(jīng)濟的迅猛提升、科技的不斷進步造就了當(dāng)下的互聯(lián)網(wǎng)+時代,其中,不得不提的就是人工智能與大數(shù)據(jù),這兩者的相互影響正逐步滲透到各行各業(yè)當(dāng)中.可預(yù)知,未來世界格局如何發(fā)展和變化必然與人工智能息息相關(guān).基于此,我國在2017 年7 月就提出了全民人工智能教育,在《國務(wù)院關(guān)于印發(fā)新一代人工智能發(fā)展規(guī)劃的通知(國發(fā)2017[35 號])》中提出在中小學(xué)階段設(shè)置人工智能相關(guān)課程[1].這表明,人工智能教育早已經(jīng)在國家層面提出了明確的規(guī)劃和要求,在中小學(xué)階段滲透人工智能教育為人工智能人才的培養(yǎng)做好鋪墊,人工智能的相關(guān)人才直接關(guān)系到國家的未來發(fā)展.因此,我們必須承認的是實施人工智能教育已經(jīng)成為教育當(dāng)中的一個趨勢.
2.中職數(shù)學(xué)課開展算法教學(xué)的第二課堂的可行性
隨著大數(shù)據(jù)時代的發(fā)展,中職學(xué)生從素質(zhì)到特點都發(fā)生了變化.他們對于時下的各種人工智能產(chǎn)品非常感興趣,比如機器人、智能手機、無人機、無人駕駛等諸多智能產(chǎn)物.以我校為例,無人機專業(yè)的學(xué)生對無人機非常感興趣;電子商務(wù)專業(yè)的學(xué)生在互聯(lián)網(wǎng)+的背景下進行電子商務(wù)創(chuàng)業(yè),很有想法;計算機專業(yè)的學(xué)生對網(wǎng)絡(luò)數(shù)據(jù)結(jié)構(gòu)方面有很好的興趣和認識;體育運動專業(yè)的學(xué)生在健美操、足球、籃球方面取得非常突出的成績;藝術(shù)專業(yè)的同學(xué)在3D 動畫設(shè)計方面很有特色.所有這些實際上都和大數(shù)據(jù)、互聯(lián)網(wǎng)和智能化不可脫節(jié).隨著我校三二分段的專業(yè)設(shè)置,每年都吸引著一批比較優(yōu)秀的學(xué)生入讀,在這批學(xué)生中有相當(dāng)一部分學(xué)生數(shù)學(xué)成績非常好,數(shù)學(xué)思維也很活躍,他們對于數(shù)學(xué)非常感興趣.因此,在中職數(shù)學(xué)課中,結(jié)合我校特色,我校開展算法教學(xué)的第二課堂,吸引對于人工智能、計算機編程及數(shù)學(xué)思維有興趣的同學(xué)參與,以此探索人工智能教育在中職學(xué)校如何開展是可行的.
筆者以我校為例,開設(shè)第二課堂的算法教學(xué),探析中職學(xué)校如何借助數(shù)學(xué)課開展人工智能教育.
1.介紹算法的含義與實例
中職學(xué)生對于算法的概念多數(shù)停留在如何進行加減乘除乘方等運算層面,因此在開展算法教學(xué)的第二課堂,有必要向中職學(xué)生介紹算法的概念.
為了讓同學(xué)們對算法概念有一個初步正確的理解,教師可以讓同學(xué)們從狹義和廣義兩個層面進行認識.廣義上的算法范圍廣泛,比如同學(xué)們練習(xí)廣播操的分解步驟是一個算法,機器的使用說明書是一個算法,具體到數(shù)學(xué)上來,求解方程的根是一個算法,求兩個數(shù)的最大公因數(shù)也是一個算法.狹義的算法概念的表述更為嚴格,不同的學(xué)者對于算法的概念理解略有不同,但是本質(zhì)上基本類似,亦即算法是為解決某一問題的程序或者步驟,必須具有以下幾個特點:確定性、有窮性、可行性、有序性和通用性[2].算法的表達形式通常有三種,分別為自然語言、程序框圖以及代碼或者程序[3].
2.介紹人工智能與算法的關(guān)系
人工智能的本質(zhì)究竟是什么,學(xué)習(xí)算法又是為了什么,回答了這兩個問題,對于中職生來說很有必要,不僅可以讓他們明確人工智能是什么,也可以提升他們學(xué)習(xí)算法、了解人工智能的興趣.為此,在算法教學(xué)的第二課堂,教師有必要向?qū)W生回答上述兩個問題.
人工智能得以實現(xiàn),必須借助的工具就是計算機;而計算機之所以能夠以其強大的運算功能來解決問題,離開不了的是算法及其指導(dǎo)下的操作程序.可以說,人工智能的發(fā)展本質(zhì)上離開不了算法的發(fā)展.因此在培養(yǎng)學(xué)生人工智能素養(yǎng)時,必須重視算法教學(xué)的開展,為學(xué)生理解人工智能乃至未來從事人工智能相關(guān)行業(yè)的工作打下一個良好的基礎(chǔ).
3.中職學(xué)校如何開設(shè)模塊化的算法教學(xué)
根據(jù)中職學(xué)生的數(shù)學(xué)思維水平及其學(xué)習(xí)特點,筆者認為在開展算法教學(xué)這一第二課堂時,對于算法教學(xué)的內(nèi)容必須遵循從具體到抽象,從簡單到復(fù)雜,必須符合中職學(xué)生的認知水平,從而實現(xiàn)中職學(xué)校的人工智能教育的普及和發(fā)展.為此,筆者認為可以把算法教學(xué)進行模塊化,然后以模塊的形式進行教學(xué),并進一步闡述如何實現(xiàn)人工智能在算法教學(xué)中的滲透.
教學(xué)模塊一:實際生活的算法實例教學(xué).這一模塊的主要目的就是讓學(xué)生直觀認識算法,并進行算法自然語言的訓(xùn)練,達到初步學(xué)習(xí)算法的目的.例如,家里燒開水的步驟可以敘述為:
第一步:用燒水壺裝好水;
第二步:把裝好水的燒水壺放好并插電;
第三步:燒水壺跳閘后取水.
通過這樣的訓(xùn)練,讓學(xué)生掌握把一個問題的解決方法進行拆分,寫出若干個可以操作的簡單步驟,達到通過生活實例去感知算法的初步目的.在這樣的教學(xué)中,學(xué)生容易體會算法的基本特點.
教學(xué)模塊二:智力游戲的比拼教學(xué).這一模塊的教學(xué)目的是拓展學(xué)生的思維領(lǐng)域,激發(fā)學(xué)生的潛在天賦.例如:有一個獵人帶著一條獵狗、一只兔子和一筐蔬菜來到大河邊,而河邊只有一艘很小的船,獵人每次只能帶狗、兔子和蔬菜中的一個過河,為了保證兔子不被狗吃掉,菜不被兔子吃掉,那么獵人應(yīng)該如何過河? 回答這一問題,可采用如下的算法步驟:
第一步:獵人把兔子運到河對岸;
第二步:獵人獨自返回;
第三步:獵人把狗運到河對岸;
第四步:獵人放下狗,把兔子帶回;
第五步:獵人放下兔子,把菜運送到河對岸;
第六步:獵人放下菜,獨自返回;
第七步:獵人帶著兔子過河.
這樣的智力游戲,讓學(xué)生主動思考,積極參與到如何解決問題中來,可以很大程度上調(diào)動學(xué)生學(xué)習(xí)的興趣,為算法教學(xué)進一步打下堅實的基礎(chǔ).
教學(xué)模塊三:簡易的純數(shù)學(xué)算法實例教學(xué).這一模塊的教學(xué)目的是讓學(xué)生通過解決數(shù)學(xué)問題,能夠?qū)λ惴ㄔ跀?shù)學(xué)中的體現(xiàn)有更為深刻的認識.例如,寫出求解方程2x-1 =0的算法步驟,它可以表述如下:
第一步:兩邊同時加1 化簡方程為2x=1;
第二步:兩邊同時除以系數(shù)2;
第三步:算出方程的解x 的值.
如常見的判斷一元二次方程ax2+bx+c =0(a≠0)是否有根的算法用自然語言可表述如下:
第一步:輸入系數(shù)a,b,c;
第二步:計算Δ=b2-4ac 的值;
第三步:判斷Δ 與0 的關(guān)系,如果Δ≥0,則輸出“方程有實數(shù)根”,如果Δ<0,則輸出“方程無實數(shù)根”.
通過將解決數(shù)學(xué)問題的方法細化為多個步驟,讓學(xué)生體會算法的可操作性、順序性、有效性,提升算法教學(xué)的專業(yè)化程度.
教學(xué)模塊四:我國古代數(shù)學(xué)問題中的算法教學(xué).在這一模塊,由教師展示我國古代數(shù)學(xué)著作中的經(jīng)典問題,例如《九章算術(shù)》中記載的“今有人共買雞,人出九,盈十一;人出六,不足十六,問人數(shù)和雞價幾何?”《孫子算經(jīng)》中的“韓信點兵”問題等.然后教師幫助學(xué)生理解這些數(shù)學(xué)問題,并轉(zhuǎn)化成現(xiàn)代語言,引導(dǎo)學(xué)生進行思考,如何求解.通過對這些著名問題的求解訓(xùn)練,一方面弘揚我國的數(shù)學(xué)文化,一方面也讓同學(xué)們提升興趣,怎么用現(xiàn)在所學(xué)去解決古代的數(shù)學(xué)問題.可以為算法教學(xué)起到良好的潤滑作用.
教學(xué)模塊五:算法初步即程序框圖的教學(xué).通過把自然算法語言轉(zhuǎn)化成程序框圖的學(xué)習(xí),使得人工智能教育得到進一步升華.如前面提出的判斷一元二次方程ax2+bx+c =0(a≠0)是否有根的算法用程序框圖可表示如下:
通過程序框圖的教學(xué),為數(shù)學(xué)算法轉(zhuǎn)化為計算機程序語言打下基礎(chǔ),也是人工智能得以實現(xiàn)的一個關(guān)鍵環(huán)節(jié),因此筆者認為本模塊的教學(xué)相當(dāng)重要.在這一模塊的教學(xué)中,讓學(xué)生學(xué)會制作程序框圖,內(nèi)容較為困難,因此需要進行深層次的挖掘和研究,以便更加適合中職學(xué)生學(xué)習(xí).
教學(xué)模塊六:計算機語言的程序設(shè)計教學(xué).這一模塊的教學(xué)目的是讓學(xué)生學(xué)會把數(shù)學(xué)算法轉(zhuǎn)化成計算機程序,實現(xiàn)人工智能的轉(zhuǎn)化.如前面提出的判斷一元二次方程ax2+bx+c=0(a≠0)是否有根的算法用計算機語言可表示如下:
計算機語言(basic 語言):
INPUT“a,b,c;”Δ=b2-4ac
IFΔ≥0 THEN
PRINT“有實根”
ELSE PRINT“無實根”
END IF
END
這一模塊的教學(xué)對于中職數(shù)學(xué)教師提出了較高的要求,它首先要求教師對于計算機語言掌握得很好,然后對于算法和計算機語言之間的相互轉(zhuǎn)化要了然于胸,唯有如此才能在教學(xué)中深入淺出讓學(xué)生明白如何書寫計算機程序語言.筆者認為,這一模塊的教學(xué)可以嘗試用數(shù)學(xué)教師和計算機教師結(jié)合的雙師合作教學(xué),這樣的新型合作教方式,可以揚長避短,一方面,克服數(shù)學(xué)教師在計算機語言中存在的困難,另一方面,讓學(xué)生體會數(shù)學(xué)和計算機結(jié)合的人工智能的實現(xiàn)方式,從而提高教學(xué)效果.
筆者通過對學(xué)生的問卷調(diào)查和我校計算機以及數(shù)學(xué)教師的訪談,提出通過以上六個模塊的算法教學(xué),開展我?;谒惴K教學(xué)的第二課堂,達到培養(yǎng)中職學(xué)生人工智能素養(yǎng)的目的.對于各個模塊的內(nèi)容設(shè)置多數(shù)同學(xué)表示非常感興趣,多數(shù)教師也認為可以實現(xiàn).不同于普通高中開展算法教學(xué)的目的更多是應(yīng)付高考,中職學(xué)校完全可以按照學(xué)生興趣加大課時,充分利用三年時間中的第二課堂,逐步推進人工智能教育的開展.因此,筆者認為利用這種方式進行人工智能教育的滲透,在中職學(xué)校是可行的,也期待相關(guān)課題得到進一步完善和研究.