王 宏 吳文虎
在信息技術飛速發展的今天,如何改革傳統的教育教學理念與方法,將理論與實踐有機結合,有效推進素質教育和高水平人才培養,是新時期計算機教育面臨的新課題。本文根據作者多年來在信息學奧林匹克競賽以及相關競賽技術組織與培訓方面的經驗,結合在清華大學計算機系的實踐與嘗試,從一個側面總結摸索出一些初見成效的具體做法。其主要內容是鼓勵學生在掌握課堂教學內容的同時,積極參與各類重大賽事,并通過參賽,開拓學生的視野,因材施教,增強團隊合作意識,促進創新性人才的培養。文中對這種賽課結合方式的核心內容和鮮明特色作了初步的總結和歸納,并介紹了作者在探索過程中的部分思考和體會。
清華大學在人才培養方面,一貫倡導學生在掌握扎實的基礎理論的前提下,注重強調學生分析問題與解決問題的能力培養,實踐動手能力與創新能力的培養。在學生課程負擔較重的情況下,如何進行上述能力的培養,我們在引導學生將參加競賽與課堂學習相結合上進行了初步的探索。清華大學始終鼓勵學生在完成課堂教學計劃的同時,積極參與諸如SRT(大學生研究訓練計劃)和各類課外科技活動。我們結合多年來從事信息學奧林匹克競賽以及相關競賽技術組織與培訓的便利條件,引導鼓勵學生積極參加各類重大賽事,其中包括參加競賽中的命題、技術組織與培訓等活動,并通過參賽,開拓學生的視野,因材施教,促進創新型人才的培養。多年來的探索不但讓我們在指導或率隊參加的多項國際性大賽(如ACM國際大學生程序設計競賽、國際信息學奧林匹克競賽,兩岸清華計算機程序設計對抗賽)中取得了優異成績,為祖國和學校贏得了榮譽,同時也為計算機拔尖人才的培養探索了新的途徑。
ACM/ICPC和IOI簡介
由美國計算機協會于1977年發起并組織的ACM國際大學生程序設計競賽(簡稱ACM/ICPC)是世界上歷史最悠久、規模最大、影響最深遠的全球性程序設計競賽,其基本宗旨是為高校的大學生提供一個展示自己在計算機編程解題方面才能的機會,并為信息學科的發展不斷注入新的活力。這項每年一屆的賽事吸引了世界上幾乎所有知名的高等學府。2004年參賽隊伍多達3150支。ACM/ICPC的比賽方式有其獨到的特點,采取三人一組共用一臺計算機解若干道難題,因而選手之間必須默契配合,強調協作攻關。在以吳文虎教授為首的教練組的指導下,由我系學生組成的清華大學代表隊從1997年開始參賽,連續9年通過預賽獲得參加總決賽資格(大約60~70支隊伍),2000年在美國舉辦的第24屆大賽中獲總排名第四,亞洲第一。2002年第26屆競賽中又一次獲得總排名第四、亞洲第一的可喜成績,并且每一屆都取得令人矚目的成績。最近幾年,國內上海交大、復旦、北大、中山大學等學校在這一賽事中都先后取得過優異成績。
國際信息學奧林匹克競賽(International Olympiad in Informatics, 簡稱IOI)是與數學、物理、化學和生物齊名的五大國際學科奧林匹克競賽之一。1987年,保加利亞的Sendov教授在聯合國教科文組織(UNESCO)第24屆全體會議上,倡議舉辦國際信息學奧林匹克競賽。首屆IOI競賽于1989年5月舉行。此后每年舉辦一屆,到2005年已連續舉辦了17屆。IOI2005有大約80個國家和地區參加,由于每個國家限派4名選手參加,所以參賽選手約300多人。
IOI和ACM/ICPC競賽同屬智力與應用計算機解題能力的比賽。競賽試題是從現實生活中抽象出來的,往往包含對不同書本知識的高度綜合與凝練,有些題目并無固定的最優解法,內容涉及數據結構、人工智能、組合數學、圖論與集合論、計算幾何、密碼學、算法復雜性等多學科領域。如IOI競賽要求選手在限定的時間內(共兩試、每試5個小時)綜合運用所學知識對問題進行抽象化、模型化,最后通過編程將問題求解。分數的評定是采用苛刻的測試數據對程序進行嚴格的測試。因而是對選手理解力、分析力、想象力、創造力等綜合能力的全面考核。
創新探索與具體嘗試
綜上介紹不難得出,要想在ACM或IOI競賽中取得優異成績,必須經過嚴格特殊的訓練。經過多年的探索和實踐,我們總結出一些行之有效的方法,并建立了一套多層選拔、綜合擇優的遴選機制。
能夠進入ACM/ICPC或IOI國際大賽中國代表隊集訓的學生,全部是計算機算法與程序設計方面的佼佼者,通過集訓和參賽前后的接觸,使得這些學生構成了志趣一致的“智力群體”,通過指導他們在參賽和訓練過程中彼此切磋、互相交流、取長補短,讓他們在一個更高的視野和氛圍中得到鍛煉和提高。這本身就是對拔尖學生的一種十分有效的因材施教。
由于信息學競賽可以在網絡環境下同步進行,我們充分利用這一特點,引導學生廣泛參加通過網絡環境公開進行的程序設計競賽,與國際上的優秀選手在網絡上同場競技,展開激烈較量。通過參加這類競賽,使許多選手增強了信心,同時也看到了自己的差距。一些素不相識的競爭對手通過競賽彼此交流,共同提高。同時我們還引導學生有效利用網絡上提供的各種資源,如一些國際區域賽、多國對抗賽后公布的試題、模擬訓練題等,促進競賽水平不斷提高。
此外,我們還通過組織學生進行一題多解、最優算法討論、論文報告等多種方式調動選手探索式學習的鉆研熱情,激勵選手在綜合素質和創新能力方面得到提高。同時,通過指導學生進行相關競賽的命題和培訓,讓學生多方面的能力都得到鍛煉。
由于ACM/ICPC比賽方式獨具的協作特點,通過訓練和比賽,參賽選手集體協同的團隊精神和協作攻關能力也得到很好的培養和鍛煉。
通過參與競賽小組的工作,許多同學從編程技巧到數據結構,以及算法設計與分析的水平與能力都有了明顯的提高。有的同學在多方面取得了獨具特色的創新進展,這段研究經歷也為他們后來的發展創造了條件。許多奧賽選手畢業后被國外著名大學計算機系錄取繼續攻讀博士學位。有的同學在清華大學計算機系碩士畢業后,進入微軟研究院從事研究工作。
IOI從1989年至2005年共舉辦17屆國際大賽,中國代表隊共獲金牌38枚、銀牌17枚、銅牌13枚。吳文虎教授一直擔任中國代表隊總教練,王宏博士、北京航空航天大學的尹寶林教授、北京大學計算機系的李文新博士也連續多年擔任教練和技術培訓工作。特別是在最近兩屆的IOI大賽(2004年和2005年)中,中國隊取得參賽四名選手全獲金牌,團體總分第一的優異成績。
全國信息學奧林匹克競賽(NOI)至今已舉行22屆。王宏博士作為中國計算機學會信息學奧林匹克競賽科學委員會的主要成員和技術負責,先后指導數十名學生為全國信息學奧林匹克競賽、IOI選拔賽的命題和培訓做了大量的技術組織工作。
目前全國每年參加與NOI相關的比賽選手已達數萬人,直接參加NOI和IOI大賽而受到專門訓練的選手累計也已有數千人。信息學競賽除了在計算機程序設計方面具有深遠的意義,同時也是一個很好的教學平臺。通過它可以讓學生將理論與實踐緊密地結合起來,提高學生的動手能力、創造能力、協作能力和綜合能力。目前國家所提倡的素質教育中,能力培養是核心。信息學競賽提供了一個對學生能力進行培養的大舞臺。
基本理念與鮮明特色
通過參加各種國際大賽開拓學生視野,因材施教,促進創新性人才培養,是賽課結合的核心內容和鮮明特色。這種方式和做法與普通的課堂教學和實驗環節截然不同,其特色與創新之處主要體現在以下幾方面:
1.因材施教的有效途徑
參加高水平競賽乃至國際大賽的學生大多是學有余力的佼佼者,通過參賽,使得這些拔尖學生構成了志趣一致的“智力群體”,指導他們在參賽過程中彼此切磋、取長補短,為他們構造或營建一個更高層次的探索空間和研究氛圍。這是對拔尖學生的一種十分有效的因材施教。
2.創新能力的激勵培養
競賽試題往往包含對不同書本知識的高度綜合與凝練,有些題目更是極富挑戰的世界難題,需要靈活運用多門學科知識,在已有工作基礎上發展創新,因而是對學生綜合素質特別是創新能力的激勵培養。
3.學習理念與模式的改革嘗試
參加各類賽事本身就是一種研究性、探索性的學習過程,它充分調動了選手自主學習的鉆研熱情,使之主動探索發現并解決問題,因此它是對傳統學習理念與模式的改革嘗試。
4.爭創一流的陶冶訓練
讓學生與國內和國際上最優秀的學者展開競爭,使他們始終處于勇攀高峰、追求卓越的狀態之下,這無疑是對爭創一流的特殊陶冶與訓練。
5.團隊精神的特殊鍛造
這里涉及的多數賽事需要多人組隊完成,強調組內成員協同攻關、默契配合,因而是對集體協同的團隊精神的特殊鍛造。
6.網絡環境的充分利用
由于一些計算機類的競賽可以在網絡環境下進行,通過參賽拓寬視野的另一個突出特點就在于充分利用現代網絡環境,放眼世界去發現并參加一些在計算機領域里很有影響,而且不需要很大的投資,又使學生們有機會與國際高水平同行交流、或與同領域的佼佼者同步較量的競賽活動。
7.榜樣力量的輻射作用
參賽選手的優異成績和拼搏精神還產生了很好的榜樣力量和輻射作用,帶動和促進了周圍學生更加自覺地努力鉆研,在更大的范圍內形成一種積極進取、奮發向上的良好風氣。
相關成果與應用實例
1.精品課建設與學科發展
許多競賽一方面是很好的研究平臺,另一方面也對新的課程建設和學科發展起到積極的促進作用。
吳文虎教授在長期指導信息學奧賽和ACM大賽的基礎上,于2001年開始為本科生開設“程序設計基礎”課程,經過短暫三年的建設已成為首批“國家精品課程”之一。
2.教材建設
在參加各項賽事之后,指導教師和同學還將競賽的算法進行系統總結出版成書。以吳文虎教授主編的信息學奧賽與算法程序設計方面的教材已達十余本。劉汝佳、黃亮兩位奧賽選手于2004年結合自身體會,出版了《算法藝術與信息學競賽》的專門教材,深受讀者的歡迎和好評,出版后現已多次重印。
3.課題研究與論文成果
指導參賽同學將其中的算法和軟件設計方法總結撰寫成高水平的論文在期刊或國際會議上發表。有的同學在參賽基礎上進行的課題研究已發表多篇國際會議論文。更多的同學通過參賽開始或深入進行了相關的課題和學位論文研究。
4.引導學生積極參加競賽的技術組織工作
如命題、評測、輔導與培訓等,王宏于2000年指導學生提交完成的3道試題經過多輪篩選,在有多個國家提交的眾多候選題目中脫穎而出,全部被國際科學委員會采納,最終作為IOI2000的競賽試題,為第12屆國際信息學奧林匹克賽在北京的成功舉辦作出了貢獻。
總之,通過參加各種國際大賽,獲得的絕不僅僅是獎牌和獎杯,它在人才培養、教育創新等方面所進行的有益探索和實踐,取得了比競賽成績更有價值的豐碩成果。參加大賽的選手絕大多數品學兼優,繼續保持領先勢頭。許多金牌獲得者無論是做人還是做學問都堪稱一流。因此,可以毫不夸張地說,各類國際大賽的代表隊是信息學后備拔尖人才的搖籃。參加此類競賽是創新性人才培養的有效途徑。
目前我們正在進行參賽選手所學課程的改革嘗試,以便更好地發揮和調動這部分同學的積極性,解決賽課結合實施中的具體問題,將這種新的教學模式的改革不斷推向深入。