个人介绍
算法与程序的奥秘

主讲教师:田新芳 宋伦继

教师团队:共1

  • 宋伦继
学分: 2
课时: 36
教师团队

宋伦继

职称:副教授

单位:兰州大学

部门:数学与统计学院

课程简介

《算法与程序的奥秘》课程分成六个部分,绪论、古典数学中的美、Matlab程序设计、特色数值算法、实验精讲与实现、数据算法。课程按理论与实践相结合的原则,一方面通过讲述数学与计算算法的发展历史与基础内容,提高学生对数学、算法的认识与兴趣,另一方面介绍Matlab应用软件,提升学生编程水平。

在绪论和古典数学中的美的章节中,从数学的三大危机开始,介绍算法的在最新科技中的作用。追本溯源,讲述中国古代数学中的体现中华民族智慧的洛书、幻方、八卦。

对于Matlab程序设计篇,分成两个章节进行讲解:基础篇和提高篇。基础篇介绍基本的Matlab命令和符号,掌握基本的Matlab语言;提高篇介绍Matlab结构化程序的编写,自下而上的程序设计,分支和循环以及绘图功能的实现。

在特色数值算法中,主要讲解两个部分,插值函数和微积分逼近。插值函数中,重点介绍在数值计算中几个重要的插值逼近多项式,包括拉格朗日多项式、Neville多项式、样条函数和Chebyshev多项式,分析其误差估计,同时给出Matlab程序和实现算例。数值微积分中,介绍重要的数值微分和数值积分公式,包括向前差商、向后差商公式、中心差商公式、外推算法等数值微分算法以及梯形法则、辛普生法则等数值积分算法,并分析主要误差的来源。

在实验精讲与实验章节中,给出几个高精度算法可实现的例子,首先给出算法的计算原理和计算终止条件,并在Matlab中进行实现。例如Hamming级数的接近机器精度计算、迭代算法的实现、预处理技术在大规模线性代数系统求解中的应用等。

在数据算法中,介绍在大数据时代,数据的收集、存储和处理及算法的重要性,对不同类型的数据(例如表格、点集、时间序列、图像、视频、网页报纸、网络数据等),给出数据分析的过程(建立模型)、讲解数据处理的算法,例如: EM算法、组合类型算法等。

由简到繁,结合实际生活中的应用,加入算例,培养学生对数学的兴趣;同时分成层次,加入习题,培养学生的动手能力,满足不同基础的学生学习,使数学专业和非数学专业的学生都可以在本课程中找到适合自己的学习内容。
参考教材

[1]黄云清,舒适,陈艳萍等,数值计算方法,湖南科技出版社,2009。

[2]许波等,Matlab工程数学应用,清华大学出版社,2000。

[3]吴兆金,王国英,范红军译,Greenbaum, A., Chartier, T. P.著,数值方法:设计、分析和算法实现,北京机械工业出版社,2016。

[4]Chapman, S. J., Matlab Programming for Engineers (Fifth Edition), CengageLearning,2015。

[5]赵国栋、易欢欢、糜万军、鄂维南著,大数据时代的历史机遇,清华大学出版社,2013。

[6]李文林,数学史教程,高等教育出版社,2000。


课程收获
通过这门课程的学习,可以认识到数学算法的发展过程和重要作用,了解生活中数学美的存在,和中华古典数学中的美。掌握Matlab语言,进行算法实现。掌握数值计算中的一些基本方法的理论和误差分析,数值逼近、数值微分、数值积分、组合算法等。同时,作为基础算法的延伸,还能学到如何让数值具备高精度、迭代求解、预处理技术等高级算法以及实现过程,让Matlab程序与算法完美融合,而真正了解到算法与程序的奥妙所在。
学习人群

算法与程序的奥秘这门课程适合于具备微积分基础知识的人群学习,尤其适合以下几类学习对象:

(一)学习算法与编程的初学者。

(二)参加数学建模或算法类型竞赛的本科、专科以及高职专业的大学生。

(三)学习Matlab编程软件的人员。

(四)需要获得算法与程序类课程学分的学生。

(五)渴望了解计算科学基础的预科生。

课程评价

提示框
提示框
确定要报名此课程吗?
确定取消

京ICP备10040544号-2

京公网安备 11010802021885号