基于知识关系的离散数学教学内容设计

时间:2022-07-07 11:50:03  阅读:

摘要:根据离散数学在计算机科学与技术专业课程中的地位,分析离散数学与计算机科学与技术专业其他课程的关系,设计适合当前计算机科学与技术专业本科教育的离散数学教学内容,在教学实践中取得良好的效果。

关键词:知识关系;离散数学;教学;设计

离散数学是以有限或可数个元素作为研究对象,并且是以研究离散量的结构和相互之间的关系为主要目标[1]。计算机科学领域中的离散量理论问题,需要用离散数学所涉及的概念、方法和理论做出描述和深化[2]。同时,离散数学中的理论体系结构有益于学生概括抽象能力、逻辑思维能力、归纳构造能力的提高,有益于学生严谨、完整、规范的科学态度的培养[2-3]。因此,研究离散数学在计算机科学和技术专业课程中的地位,分析离散数学与计算机专业其他学科间的关系,构建适合当前计算机专业的离散数学教学内容,对计算机科学与技术的发展,起着极为重要的作用。

1离散数学在计算机科学与技术专业课程中的地位

教育部高等学校计算机科学与技术教学指导委员会在2007年公布了计算机科学与技术(计算机科学方向)专业规范,共指定了15门核心课程,包括计算机导论、程序设计基础、离散数学(结构)、算法与数据结构、计算机组成基础、计算机体系结构、操作系统、数据库系统原理、编译原理、软件工程、计算机图形学、计算机网络、人工智能、数字逻辑、社会与职业道德[4]。其中离散数学的教学内容不仅涉及计算机硬件,而且和计算机软件的研究有着更密切的关系,具有鲜明的基础特点,不仅是学习算法与数据结构、操作系统、数据库原理、软件工程等11门课程之前的必修内容,同时以计算机导论和程序设计基础作为离散数学的先导课程。离散数学在计算机科学与技术专业各课程的地位及其与其他课程的关系,如图1所示。

2计算机科学与技术专业后续课程用到的离散数学知识

离散数学所包括的多个数学分支,如数理逻辑、集合论、图论、自动机理论等,都与计算机科学与技术专业的后续课程有紧密的关系。

算法与数据结构中将操作对象间的关系分为4类:集合、线性结构、树形结构、图状结构或网状结构。其中逻辑结构和基本运算操作来源于离散数学中的离散结构和算法思考。离散数学中的集合论、关系、图论和树等内容就反映了数据结构中四大结构的知识[2]。

数据库系统原理中的关系数据库的逻辑结构是一个由行和列组成的二维关系。在研究实体集中的域和域之间的关系、表结构的确定与设计、关系操作的数据查询和维护功能的实现、关系分解的无损连接性分析、连接依赖等问题时都用到离散数学的关系理论[5]。

编译程序一般由8个模块组成,包括词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序、错误检查和处理程序、各种信息表格的管理程序[6] 。离散数学里的形式语言与自动机所包含的文法、有限状态机和图灵机等知识点为编译原理的词法分析及语法分析等内容奠定了基础。

离散数学中数学推理和布尔代数章节中的知识就为早期的人工智能研究领域打下了良好的数学基础[7-8]。谓词逻辑演算为人工智能学科提供了一种重要的知识表示方法和推理方法。

布尔代数已成功地用于计算机的硬件分析与设计[9-10]。

哈夫曼(Huffman)压缩是一种无损压缩法。这种方法在计算机体系结构的指令系统设计和改进内容占有相当重要的地位[11]。

鉴于篇幅所限,不再一一论述,下面列表给出计算机科学与技术专业的后续课程中所用到的主要知识点,如表1所示。

3离散数学的知识结构设计

基于离散数学在计算机专业具有基础性的地位。从离散数学后续课程所需的离散结构基础理论出发,根据前后课程的知识关系来构建离散数学的知识结构和体系,使所设计的离散数学教学内容适合当前计算机科学与技术专业教学需要,能够支撑后续课程的教学且和后续课程不相互覆盖。本文设计的离散数学知识体系结构如表2所示。

表2所设计的知识体系结构共分为5个单元,分别是集合、关系与函数,基本逻辑,布尔代数,图与树,形式语言与自动机。其中,集合、关系与函数单元包括集合、鸽笼原理、基数性和可数性、关系、函数等内容,是算法与数据结构、数据库系统原理等课程的理论基础;基本逻辑单元包括命题逻辑、谓词逻辑、假言推理、否定式推理等内容,是计算机组成基础、计算机体系结构、软件工程、人工智能、数字逻辑等课程的理论基础;布尔代数单元包括格、布尔代数等内容,是计算机组成基础、计算机体系结构和人工智能等课程的理论基础;图与树单元包括无向图、有向图、树、生成树等内容,是算法与数据结构、操作系统、软件工程、计算机图形学、计算机网络等课程的理论基础;形式语言与自动机单元包括文法、有限状态机和图灵机等内容,是编译原理等课程的理论基础。

该设计体现了“实用、管用、够用”、“易教易学”的原则,具有以下特点:

1)5个单元由浅入深、层层递进,并具有相对的独立性,便于学生学习和教师授课。

2) 具有针对性,能够支撑教育部高等学校计算机科学与技术教学指导委员会于2007年指定的11门后续课程。

3) 符合计算机科学的发展趋势和高等院校计算机教学改革的需要。

4) 紧扣离散数学和其他计算机专业课程的知识联系,实用性强。

4离散数学的实验设计

由于离散数学课程理论性强、高度抽象,学生难于理解掌握。为此,在离散数学的教学过程中引入一些实验,既对离散数学的基本理论的很好验证,也巩固了先导课程的学习内容,同时为后续课程的学习打下了基础。不但能够激发学生的学习积极性和主动性,也培养了学生的创新意识和创新能力。实验选题既要反映理论的实质内容与思路(理论背景),又要与实际应用结合,选题不宜过多,针对不同的知识点设计了如下实验内容:

实验1 集合运算;

实验2 等价关系的判定;

实验3 用warshall算法求闭包;

实验4 偏序集性质;

实验5 求解范式;

实验6 形式化证明;

实验7 哈密尔顿图与旅行商人问题;

实验8 树的遍历、求解生成树;

实验9 有限自动机的运行。

实验报告要求列出实验目的、实验内容、实验步骤、源程序和实验结果。

对源程序的设计要做到如下两个方面的描述,其一是描述该程序具有什么功能?其二是描述程序结构,包括函数调用格式、参数含义、返回值描述、函数功能;函数之间的调用关系图、程序总体执行流程图。

对实验结果要求记录:出错次数、出错严重程度、错误的性质、解决办法。还要进行简单的实验总结:如编程时间、设计时间、上机调试时间等;遇到了哪些难题,是怎么克服的,对程序的评价?

5结语

离散数学不仅是学习计算机科学、研究计算机科学的理论工具,也是提高学生逻辑思维能力、创造性思维能力以及形式化表述能力工具,在现代计算机科学中,对离散数学教学内容做科学合理的设计,使离散数学更好的为计算机科学服务,具有非常重要的意义。

注:河南科技学院精品课程建设项目。

参考文献:

[1] 王蕾,李永. 浅析离散数学在计算机科学中的应用[J]. 平顶山师专学报,2003,18(5):63-64.

[2] 陈敏,李泽军. 离散数学在计算机学科中的应用[J]. 电脑知识与技术,2009,5(1):251-252.

[3] 王玉红. 离散数学在计算机教学中的作用[J]. 赤峰学院学报:自然科学版,2008,24(1):90-91.

[4] 教育部高等学校计算机科学与技术教学指导委员会. 高等学校计算机科学与技术发展战略研究报告暨专业规范(试行)[M].北京:高等教育出版社,2006:35.

[5] Patrick O"Neil,Elizabeth O"Neil. 数据库原理、编程与性能[M]. 周傲英,俞荣华,译. 北京:机械工业出版社,2003:16-46,239-288.

[6] 蒋立源,康慕宁. 编译原理[M]. 2版. 西安:西北工业大学出版社,2001:3-15.

[7] 谢晋. 试谈离散数学在计算机学科中的重要性[J]. 黄石理工学院学报,2006,22(1):90-93.

[8] 蔡自兴,徐光佑. 人工智能及其应用[M]. 北京:清华大学出版社,2003:10-20.

[9] 白中英. 数字逻辑与数字系统[M]. 北京:科学出版社,2002:6-15.

[10] Richard Johnson Baugh. 离散数学[M]. 6版. 石纯一,等译. 北京:电子工业出版社,2005:515-550.

[11] Rosen K H.离散数学及其应用[M]. 袁崇义,屈婉玲,译. 北京:机械工业出版社,2002:725-744.

推荐访问:离散 数学教学 关系 知识 内容

版权所有:汇朗范文网 2010-2024 未经授权禁止复制或建立镜像[汇朗范文网]所有资源完全免费共享

Powered by 汇朗范文网 © All Rights Reserved.。鲁ICP备12023014号