张大坤,史一苇,任淑霞
(天津工业大学 计算机科学与软件学院,天津 300387)
计算机科学与技术的兴起带动了组合数学的发展,组合数学可以说是计算机科学与技术的基础,在国外已成为十分重要的学科。两者的有机结合能在很大程度上解释并运用在一些学科交叉领域。广义上的“组合数学”就是大学离散数学,狭义的“组合数学”则是满足研究一定条件组合的模型的存在、计数和构造等方面的问题[1]。
计算机相关的研究生不了解组合学和其他应用学科之间的关系,非计算机专业的学生也很难把该学科与计算机科学与技术相关联。理解并掌握如何使用组合数学来解决其他学科的问题,以及如何使用其他学科来解决一些组合数学问题将成为学科趋势。一些论文研究了组合数学在某个方向上的应用。一些论文介绍了组合构造算法的设计,但他们还没有发现组合数学在组合数学中的应用。教学改革是“发现问题,解决问题,再发现问题,解决问题”的循环过程。其中,找到问题是关键,解决问题才是关键[2]。
目前,由于互联网的高速发展,各种新型的高效课堂模式运应而生。组合数学在计算机科学与技术学科中的课堂教学模式也有了很大的突破,但是仅仅能满足课堂的教学需求,在学科交叉,特别是优秀的教材安排,课程设计,师资队伍,信息交流,等学科建设等方面还存在很大差距。这一点上到目前还不能满足计算机科学与技术学科教学科研型学生的课业需求。随着计算机科学与技术的课程体系的不断完善,作为公共基础课的组合数学课程,问题不断显现,需要去解决和优化。
组合数学的研究的对象就是离散构形的问题,以组合计数为重点,介绍了组合数学的基本原理和思想方法,包括组合数学基础,母函数及其应用,递推关系,容斥原理,抽屉原理和瑞姆塞(Ramsey)理论,波利亚(Polya)定理等一些基本原理,并对符合一定条件的计数及构造和组态对象等方面的问题进行研究与分析。象构形的构形计数问题、存在性问题、形的最优化问题等等[3]。
组合数学在课程设计中存在很多的定义,复杂的公式概念,难以证明的定理公司,难以理解的问题等。比如最典型的四色猜想问题和船夫过河问题。在一定的程度上,导致教学难点高提高,理论与实际脱轨,学生没有办法真正去理解组合数学中的思想就更不用说与计算机科学与技术的学科交叉。在解决实际问题中就没有办法很好的结合组合数学。
通过查阅前人文献看出,组合数学教学方法都是基于概念,定理,定义,课堂设计的很大部分时间都是用来证明其概念,定义,定理。这主要是由于教学教师的结合主要是数学教师。然而,这种基于概念定理的教学方法并不适用于组合数学课程,这使得学生认为组合数学课堂和研究变的很枯燥乏味。其次,关于学生学习程度的检验方式还是传统的考试。考试的主题主要还是平时的定义定理和一些课堂练习[4]。
我们学校的大量相关的专业的研究生学习组合数学课程。本课程主要是研究组合数学中的各种算法与计算机科学与技术学科贴切,从而来发展他们通过学习组合数学课程来解决计算机类的问题,并且锻炼他们的编程能力和动手操作能力。在教学的内容方面,我校组合数学教学的关键点是引入知识图谱和组合数学的定义定理的证明。在组合数学的前沿与计算机科学与技术的交叉学科引入研究课题相对较少,并且不会激励学生在学习后进行创造性思考。
组合数学课程起源于不同学科的发展,在很大程度上具有跨学科性和相互渗透性的特点。计算机的出现和发展给组合数学带来了新的灵感,组合数学因此得到了快速的发展,改变了传统数学中代数和分析占领导地位的局面。组合数学的研究内容主要是要满足一定条件的组态,因此组合数学的研究对象都是按照某种规则的安排。一切的推理发现,不管是否能用语言描述,都能归纳为如数、声、字、色等这些元素经过某种组合的有序集合。组合数学提供的方法和理论也适应于不同的学科建设,特别是本学校的计算机科学与技术和通信科学工程专业[5]。
这些学科体系的发展和完善为组合数学提供了新的概念,新的课题,新的挑战,新的研究目标和新的研究方法,充分促进了组合数学理论的发展,并且也丰富了其他学科的内容。但由于专业教师定位的局限性(基本上是数学教师讲授),本文的教学主要集中在组合数学的定义概念理论基础,大都是一些枯燥的教学,有的学生不得不为了学分选修这类课程。
到目前为止,我校在教育改革上得到了教育部和学生充分的肯定和认可,我校研究生教育也在高速发展,对综合数学课程知识越来越重视。组合数学课程的重要性不断攀升。但是,由于师范教育基本满足本科教学模式优化的需要,也不利于反思这门课程的教育意义和跨学科,教材的例子已经过时。形式上陈旧固化跟不上时代节奏,并且专业性和学科交叉性不足,很少能解决研究生本专业的问题。
根据学生课堂表现和反馈,组合数学的改革提到了日程。学校也高度重视 “组合数学”课程的学科间的交叉性建设,重点开展“数学及其应用”专业性建设的课程,从而在优化组合数学的课程结构,要有针对性对各类开设本专业课的专业进行调研和适应,从而丰富组合数学在其他学科的应用,最终能实质上解决研究生在本专业的研究生存在的问题[6]。
“算法分析与设计”, “人工智能”,“算法复杂性分析”, “复杂网络优化”,运筹规划与控制,“信号分析”等研究生后续课程预备课程的“组合数学及其应用”等等。为了回应学校的“组合数学及其应用”课程,课程的特点是大量的概念,独特和不断变化的论证方法,加上短时间的课程,这些都是优秀高校本科生课程体系建设中才会涉及到的课程,一些学生由于(本科阶段)基础参差不齐,跨专业性大,导致教学难点加大。
2.1.1求同存异,根据自己的能力教学生
作为研究生一年级必修的公共基础课,面向不同的水平,不同专业的学生,增加学科交叉性,是本文的必然的选择。“寻求学科交叉性”有两层含义:第一,虽然学生有不同的情况,但选修课应该有一个基本的公开要求,有一个最低标准。这是要求学生掌握组合数学的基本概念和结论。第二,找出学生选择课程的共同点。因此,在课堂上,学生最感兴趣的是那些有趣的应用,而更专业的应用则是指学生可以阅读文献以理解和学习的方向。
2.1.2专业要求,课堂教学
组合学作为我们大学研究生共同的基础课程,不同职业对于它的需求和基础是不同的。因此,该研究组试图通过对不同专业开展学科交叉研究丰富组合数学的学科基础,提升学生的学习质量以达到有针对性的目标。具体的想法是通过调查以前学生选修课的情况和毕业生领导班子的调查,了解相关院校“组合数学及其相关专业学生的应用”相关课程的基本要求和专业要求。一位有代表性的大师级导师然后根据不同的专业需求,研究小组将进行小组准备和小组教学,数学知识的整体解读的基本组合,小组教学内容的不同专业需求,最简单的操作方法是要求根据课程和研究需要让学生选择合适的专业。此外,本文试图举办研讨会和研讨会来回答和讨论学生问题。有些学生可以回答问题并提供参考,以满足他们对知识的渴望[7]。
2.2.1结合主题特征和联络边界主题
基于组合数学的性质和发展的趋势,尤其是计算机科学与技术的发展趋势和前沿研究动态,本文主要想介绍与本校的学科相关的组合数学学科建设的最新发展,重点强调了计算机科学与技术中的组合数学。增加了Havermann编码的内容及其应用。以引导学生深入了解和探究,激发学生对创新思维和创新意识的培养,并且把理论运用在自己所研究学科和领域从而解决在研究上遇到的实际问题。
2.2.2渗透学科和加强跨学科交流
由于多年的教学工作经历和科研的总结,研究组发现,市场上的“组合数学及其应用”教科书中介绍组合数学在交叉学科的科研案例还比较少特别是应用程序。本课题在介绍组合数学的方法定义定理和基本理论基础上,本课题还将重点介绍组合数学在计算机科学与技术方面的交叉学科的应用,做出一些介绍和增加学科间的渗透。
2.2.3稀释证明过程,增强实践能力
组合数学虽然是来自实践但它也是服务于实践的。从这个意义上说,本文将把理论和应用放在教科书“数学与应用结合”的重要和平等地位。按照“应用某一应用的定义”的写作模式,每章的第一部分是定义定理和理论基础部分,然后是介绍知识的实际运用,组合数学的学科交叉知识的主要应用解决具体问题。对于高度专业化的应用,如通讯指导,计算机或控制指导;对计算机科学应用中的组合数学感兴趣的学生可以参考“组合数学和算法分析”等。这将使学生能够有针对性地结合自己的专业进行学习和讨论。并弱化定理证明了重点在于组合数学思想的分析,重点在于这些组合数学算法的实现和应用。
组合数学教材编写和建设是课程设计中的一项关键性任务。虽然目前使用的教材内容丰富,但是,有很大部分只是纯粹的理论基础,完全不能联系实际更不要强求学生去解决自己所研究的专业方向上的问题。一定程度上不能满足我校的研究生教学设计的要求。因此,不仅要考虑本校研究生的水平基础也要考虑其专业相关性,并且要结合研究生的强烈的求知的欲望,勇于研究探索学科间的交叉性。同时,考虑到各学科学生的需求从而丰富组合数学在其他学科的应用,本研究组正在制定并撰写适合本学科的教材,内容深度广泛交叉性强。大学生研究生“组合数学及其应用”课程教材。研究小组试图在大学生教学实践的基础上,编写一门名为“组合数学及其应用”的新教材,多年设立离散数学,并为研究生设置数学组合。教材具有以下特色。
2.3.1适应时代发展并引入当下各学科前沿话题
根据组合数学的学科基础和应用,特别是在计算机科学与技术方面的研究和前沿话题等最新研究动态,本文力求介绍研究生开展组合数学课程的专业业界的最新发展状况,然后结合组合数学,结合计算机发展背景,等等制定属于其他学科适应的组合数学学科建设。
2.3.2弱化证明,注重应用分析
理论和应用教科书“组合数学及其应用”处于重要和平等的地位[8-10]。根据“定义,定理和应用”写作模式,每章的第一部分是定义和理论部分,部分知识的应用,主要是组合数学知识在解决具体问题中的应用。对于高度专业化的应用,如通讯指导,计算机或控制指导,本文在本章最后给出阅读指南。有兴趣将组合数学应用于计算机科学的学生可以参考组合数学和算法分析。
组合数学课程具有严谨的基础理论,强大的系统,高度抽象的,灵活的方法,强调算法和经过验证的方法。