博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

信息学奥赛——训练学生什么?

Posted on 2010-10-22 21:39  桃子在路上  阅读(510)  评论(0编辑  收藏  举报
我已经经历23届的信息学奥林匹克(NOI)竞赛了,关于信息学奥林匹克竞赛,我谈一些自己的看法。
  第一,N0I赛什么?
  NOI赛的是学生编程解题能力,以后可能会有变化,但现在还是这样。编程解题就是把具体的问题抽象出来,形成题目以后,让学生运用自己全面的知识,通过思考并借助计算机这样一个智力工具来分析问题和解决问题。要想全面地完成编程解题,就需要具备以下四种能力:
  (1)计算思维能力。计算思维能力是在有了计算机以后,必然要拥有的一种能力,它构建在数学知识之上。数学进入了计算机时代,要用计算机来求解,那么时代要求我们具备这种能力。
  (2)数学建模能力。因为很多的问题要计算,都需要建模。无论题目有多大、多难,都存在一个建模的问题和构建算法的问题。
  (3)程序实现能力。这种能力不是说学几条语句就能实现的。我们在大学课堂上教程序设计时,教了很多语句,教了很多语言,我认为那些没有用,因为这并没有教会他们如何真正去实现程序,所以,有些学生到了博士阶段编程能力还没有过关。解题需要的是全面的知识,我认为应该是数学、物理、化学、语文、历史、地理、音乐、美术等。知识应该是很全面的,我特别反对单科独进。因为如果选手单科独进,他就不能全面发展,我们不拿是否取得金牌来衡量是否取得了成就,我们要培养真正的杰出的人才,最好是大师级别的人才。还有高级语言设计,要对语言精通,要对数据结构精通,这在大学里面也是一些很难学的课程,而我们的选手学得都很精。
  (4)人工智能搜索算法能力。我们从上世纪90年代开始注意到其重要性,所以我就引导落实这方面的工作。很多都是设计到图论和几何论的如识,一般都是在中学时期学不到的知识,那怎么办?只有由学生自己来学自己来做。很多人认为比较难的问题都要通过练习来解决,再者就是进一步抽象可用组合数学。
  第二,NOI需要教什么?怎么教?
  教学的目标是借助程序设计的知识载体,传授基本问题的求解过程和基本思路,建立算法意识,培养良好的习惯和学习习惯。养成教育从习惯抓起,然后从学科方法论上打基础,培养计算思维能力和分析能力、解决问题的能力。这个学科的方法论和其他学科比较有两个最显著的不同点:一是可行性,一是构建性。可行性我们做得是比较好的,我们不主张你想出来的东西一定正确。但我们要把它应用于实践,让实践来检验真理。我想从思维习惯、价值观和做学问上来讲,实践出真知。从内涵上来讲,计算思维能力、抽象思维能力和逻辑思维能力上升到理性思维能力的实践和理性时间的过程中,如果没有理性的思维能力和理性的实践,根本谈不上创新,创新的基础是理性。我认为实践是创新理论的土壤,没有良好的土壤的话,它就不可能创新。下面,我介绍一下教学设计中的几个重点问题:问题驱动、强化实践、探索研究、注重优化、协同合作和总结提升。
  问题驱动。我不主张系统学习,我们的选手没有那么多的时间,也不符合中学生的时间安排。因此,我们就用一个问题来激发他们的学习兴趣。
  强化实践。这是学好一门学科的突破点,也是信息学奥林匹克的突破点,我比较有这方面的经验。学习计算机一定要动手,不动手是学不会的。我在第一堂课上就对学生讲,你不是听会的,也不是看会的,你只有通过自己的思考在机器上动手训练才能掌握,如果不这样,你就会是零分。
  探索研究。这是信息学奥林匹克竞赛的最大的、最重要的特点。我们培养出来的学生应该很主动地学习,富于探索精神,我们的格言是“没有最好,只有更好”。不断地进取,不断地追求,从一道题目、一种方法开始。
  注重优化、协同合作和总结提升。选手们要有一种追求完美的精神。让选手们一起讨论、一起动作,最重要的是要把感性认识上升到理性认识,这是一个质的飞跃。我们也在这方面做了工作。我们在每年的冬令营中,让每个选手写一篇论文,每个人都要在讲台上作报告,且必须在10分钟内讲完,然后接受大家的提问。在这一过程中就训练了选手的总结能力、文字表达能力、口头表达能力和应变能力。
  总之,在竞赛中,一个选手应当具备很强的、全面的综合素质和能力,我们应该培养选手的很多能力。首先是读题能力,英语和语文好的当然要占先,有优势。其次,观察和分析问题的能力。当读完题目一下子就能切入主题,抓住本质。然后将实际问题抽象并转化为数理化模型的能力,这就要求数学的功底强,最好超强。接着是灵活运用各种算法的能力。有时还得自己根据题目来设计新的算法。想好算法后,在某种语言环境下熟练地编写程序,并准确快速地通过调试。最后一条就是根据题目的要求和对边界条件的估计,自己设计并测试数据检测的能力。编程解题竞赛的核心是算法设计。基础好、素养高的人取胜的概率就大。到IOI这个国际大舞台上比,说到底还是比基础,比素养。还有智力因素和非智力因素,健康的心理状态和良好的精神境界是成才的重要条件。成功教育、挫折教育、自省能力和适时“清零”是我们成功的动力。我感觉成功教育是必要的,但是我们还要有挫折教育。我们的孩子在IOI和NOI这样的一个环境里,不但能够享受到成功教育,而且也要他们尝到挫折教育。NOI不相信眼泪,要把心态放平。在田径赛场上,在八个跑道上总有一个撞线的。总结经验,适时“清零”,继续努力。适时“清零”就是去掉我们头上的光环,从零开始,从起点开始。责任感、动力、远大目标这些都是我们成才的因素,自信、自尊、自强是我们的格言。希望大家能培养出优秀的选手。