GIS算法基础课程教学探索

2016-03-21 13:00杨玲阮心玲
计算机时代 2016年3期
关键词:理论教学实践教学

杨玲 阮心玲

摘 要: 综合分析GIS算法基础课程的内容与特点,结合人才培养的需求和GIS算法基础课程的教学经验与体会,探讨GIS算法课程的教学方法以及GIS算法教学过程中存在的一些问题,给出相应的解决办法,以有效促进学生对知识的理解和应用,达到预期的教学效果。

关键词: GIS算法基础; 教学; 理论教学; 实践

中图分类号:P208;G42 文献标志码:A 文章编号:1006-8228(2016)03-53-03

Study on teaching of GIS algorithm fundamentals

Yang Ling, Ruan Xinling

(College of Environment and Planning, Henan University, Kaifeng, Henan 475004, China)

Abstract: Combined the personnel training demand and GIS algorithm fundamentals teaching experience, the teaching methods of GIS algorithm courses and the problems existing in GIS algorithm teaching process are discussed, and the corresponding solutions are given to effectively promote the students' understanding and application of knowledge, to achieve the expected teaching effect.

Key words: GIS algorithm fundamentals; teaching; theoretical teaching; practice

0 引言

地理信息系统(GIS)产生于20世纪60年代初期,经过近半个世纪的发展,GIS已经成为一门新兴的学科,广泛应用于国民经济各个领域,并发挥着重要的作用,取得了良好的经济效益和社会效益。为满足市场需求,国内众多高校纷纷开设GIS专业,每年都有数以万计的毕业生走向人才市场。

在GIS专业的培养方案中,GIS算法基础是一门衔接专业基础课和专业方向课的极为重要的课程[1],该课程是整个地理信息科学的核心,不管是从基本的GIS空间数据结构到空间数据模型,还是从必需的GIS空间关系的表达与描述到各种各样的空间拓扑关系,以及从高级的时态多维GIS到GIS空间数据挖掘与知识发现,GIS算法作为地理信息系统的基石当之无愧[2]。因此,GIS算法基础是整个GIS专业课程中非常重要的一门课。GIS算法基础通常包括理论教学和实践教学,理论教学主要讲解GIS相关算法的基本原理,实践教学重点在于算法的实现,让学生透彻理解算法的原理并进行系统的开发与实现,两个环节缺一不可。GIS算法基础的教学对增强学生的理解能力、实践能力、提高学生系统开发能力发挥重要的作用。

1 现状分析

1.1 GIS算法基础课程特点

GIS算法基础是一门融合算法原理与算法设计的课程,而且包含一些GIS空间数据的分析与处理运算,因此其既具有算法的共性,又有其鲜明的特点。

⑴ 内容复杂

GIS算法种类较多,内容复杂。GIS算法基础课程包括计算机图形学算法、计算几何算法、空间数据组织算法、空间数据转换算法、空间数据索引算法、空间数据内插算法、空间数据分析算法以及空间数据挖掘算法等。同时,由于GIS算法是用于解决地学领域中的问题,需处理海量的地理信息,涉及许多复杂的空间运算,故不仅仅是简单的信息查询与编辑。

⑵ 知识抽象

算法是完成一个任务所需要的基本步骤和方法。在解决问题时,可以使用抽象的数学语言、计算机语言来对算法进行描述。GIS算法基础是对地理空间对象进行描述和处理的过程。地理空间对象自身有明显的特征,即维数多样性,有2维、2.5维、3维、4维等,而且有空间数据和属性数据之分,这使得地理空间对象更难表达和处理,因此与普通的算法相比GIS算法更为抽象化。

⑶ 需要多学科知识作为基础

地理信息科学作为一门综合性学科,涵盖了计算机科学、地理学与测绘学,GIS算法的实践课程涉及多门课程的综合运用,对学生的要求相对较高。既要求学生熟练掌握一门编程语言、掌握数据库的相关知识、熟练的使用软件开发平台,还要求学生掌握相关的算法设计原理,掌握相关的GIS应用方面的知识为后期的专业应用奠定基础。

1.2 教材建设不足

⑴ 理论课教材

GIS算法基础作为一门专业基础课,教材不足的问题非常突出。现阶段可供选择的教材主要有科学出版社出版的《地理信息系统算法基础》、《地理信息系统原理与算法》、《GIS数据结构与算法基础》、《基于几何代数的多维统一GIS:理论、算法与应用》等有限的几本教材,教材选择范围较小。而且这些教材中有一部分内容还与GIS专业中其他课程教材重复。部分高校选择使用计算机专业的算法教材作为该课程教材,这些计算机学科中常用的通用算法对于GIS中的应用而言,针对性不强,同样不合适作为课程教材[3]。

⑵ 实践课教材

实践课没有统一的教材,上课时由教师选择理论课教材中的部分算法进行上机实现,这样学生上机实现的算法可能与其他课程(如计算机图形学)中的某些算法重复。有的高校选择二次开发作为上机实践内容,学生通过调用某个GIS软件的类库或接口来完成算法,而不是从底层写算法,这样只是模块或接口的调用,不需要理解算法的细节,也不需要自己设计算法,容易导致“知其然而不知其所以然”。同时,在实验课中,大部分算法是独立的,学生即使完成了所有实验内容,仍然很难建立起系统性观念。

1.3 课时安排与学生基础问题

各个高校对该课程安排的课时数不尽相同,以本校为例,每学期90课时,其中基础理论课54学时,实践课36学时。理论课的课时数稍多于实践课。这种课时安排方式看似合理,但在实际执行过程中发现,实践课的课时数严重不足,学生能够上机实现的算法不足理论课所讲的1/5。主要原因有:①GIS算法基础课程中部分算法的实现需要学生有一定的程序设计基础,但大部分学生缺乏此方面的知识,动手能力有限;②GIS算法基础课程中有部分算法比较抽象,而且有一定难度,学生实现起来比较困难。这种理论与实践脱节的情况导致学生对基本的GIS算法的理解停留在概念理解的层面上,一旦遇到深层次的应用问题,就束手无策。长期的实践缺失会导致学生的动手能力较差,直接影响其学习能力与工作能力。

2 教学内容构建

2.1 理论课教学内容

理论课教学时,根据学生的基础,选择教材中难度适中的内容进行讲解,舍弃部分较难的内容以及与其他课程中重复的内容。笔者以科学出版社出版的《地理信息系统算法基础》作为教材,在理论课程教学时主要讲解以下内容。

⑴ GIS算法的计算几何基础。主要介绍基础的几何问题的解决方案,这部分内容较为简单,是GIS算法的基础。

⑵ 空间数据的变换算法。介绍地理空间参考坐标系(包括平面坐标系与球面坐标系),坐标系的转换以及地图投影变换。

⑶ 空间数据的转换。主要介绍矢量数据与栅格数据之间的相互转换。

⑷ 空间数据组织算法。包括对数据进行合理抽稀,对矢量坐标数据进行编码以减少存储空间。

⑸ 空间度量算法。涉及空间计算中的常见算法。

⑹ 空间数据索引算法。包括空间数据索引的基本概念以及空间数据索引模型。

⑺ 空间数据内插算法。涉及不同类型的内插算法。

⑻ 空间分析算法。主要介绍空间分析三维相关算法和模型。

2.2 实验课教学内容

实验教学内容应与理论教学内容紧密结合,对理论教学内容中阐述的算法通过程序设计实现。将各个独立的GIS算法组织起来,形成一个较为系统的工程。我们总结的GIS算法基础课程的实验系统包括了GIS算法基础理论课程中的大部分算法,搭建系统平台,实现算法并进行可视化显示。该实验系统主要有以下内容。

⑴ 计算几何基础。包含简单的拓扑空间关系判断以及二维和三维的空间度量计算。其中矢量叉积、折线拐向判断、交点计算、多边形与点(直线、折线、多边形)的位置关系判断、点线距离计算、三角形面积计算、多边形面积计算等,这些都是GIS算法的基础。

⑵ 坐标变换。包括二维、三维空间坐标的平移、旋转、比例、错切等运算以及地图的投影变换。

⑶ 空间数据的转换。主要包括矢量数据栅格化与栅格数据矢量化。

⑷ 空间数据的组织。主要包括矢量数据的压缩算法(垂距法、偏角法、达格拉斯扑克法以及光栏法)与栅格数据的压缩算法(链式编码、游程长度编码)以及拓扑关系的生成。

⑸ 空间数据的索引算法。主要包括四叉树索引算法、B树的构建、查询、插入与删除等。

⑹ 空间数据的插值。包括分段圆弧法、分段三次多项式等方法。

⑺ 空间数据分析。包括缓冲区分析、DEM分析等。

⑻ 可视化。利用可视化工具,对运算结果进项显示以及部分图形的绘制,这部分内容是比较直观的显示,也是上机实践内容中必不可少的一步。

以上所列内容基本包括了理论教材中的大部分算法,在实际上机实践中,由于时间有限,并没要求学生完成所有的算法实践,而是由老师根据学生基础,在每一大类中选择一两种算法实现。

3 教学方法探索

3.1 理论课教学方法探索

GIS算法基础课程既有基础性的知识,又有面向应用的开发。因其数学方面内容较多,有些学生认为这门课程难度大、枯燥。笔者认为应该在理论课教学时以老师讲授为主,同时积极引导学生进行思考,不仅让学生理解算法的原理,而且了解此算法可以解决什么问题,此算法与其他算法相比优势所在,鼓励学生敢于对算法做出评价,敢于质疑,带着问题去思考,最后通过实例分析、验证算法的正确性以及与同类算法相比的优势。

3.2 实践课教学方法探索

实践课不仅能让学生更好的理解算法,而且能让学生学会应用算法解决实际问题。由于大部分学生编程基础较弱,上机实现算法的速度较慢,完成一个算法往往耗费较长时间,这样就需要老师选择合适的内容进行上机实验,先实现简单的算法,再实现复杂的算法;从教师带领学生编程,逐渐过渡到由学生自己完成编程。实践课前,应该加强准备工作,要求学生预习,设计实验方案或者绘制流程图,交由老师审核以保证学生对算法思想和步骤理解的正确性[4]。实践过程中应及时总结,对上机过程中出现的共性问题进行分析,少走弯路。

另外,还应该加强其他辅助课程的建设,如编程语言课,这样学生的编程能力和算法实现的效率会得到大幅提高。

4 结束语

地理信息系统是一个交叉性学科,其实践性极强,既要有深厚的理论知识,又要有过硬的动手能力。本文针对GIS算法基础课程的特点,结合实际教学,对理论课和实践课的内容选择、教学方法进行探讨。在理论课中选择合适的内容,引导学生思考,举一反三,加强课堂的趣味性,提高学生学习的积极性,学生对GIS算法原理的理解以及GIS算法的应用能力得到明显提高。实践课中循序渐进,逐步加强学生的程序开发能力,提高学生对编程的兴趣,实践课的效率明显得以提高。未来的教学内容选择和教学方案设计上,还需要进一步探索,以达到因材施教的目的。

参考文献(References):

[1] 刘民士,王春,何桂芳.GIS算法基础实验教学探索[J].测绘与

空间地理信息,2012:1672-5867

[2] 张宏,温永宁,刘爱利.地理信息系统算法基础[M].科学出版

社,2006.

[3] 周侗.高校本科GIS专业《GIS算法基础》课程建设刍议[J].管

理观察,2009:182-182

[4] 王丽.GIS算法课程教学探讨[J].气象教育与科技,2007:

32-35

猜你喜欢
理论教学实践教学
微课让高中数学教学更高效
“自我诊断表”在高中数学教学中的应用
对外汉语教学中“想”和“要”的比较
和谐教学法在高校思想政治理论教学中的实践与探索
谈外科学教学的几点体会
嵌入式系统课程“中断、异常与事件”教学实践及启示
初中政治教学中强化新八德教育探讨
体验式学习在数学教学中的应用研究
生物专业师范生教学实习的问题与对策研究
校企协同实施高职专业课程改革的实践研究