信息大类专业《线性代数》课程教学改革的研究与实践

2016-10-14 09:28杨文霞彭斯俊
大学数学 2016年3期
关键词:行列式线性代数特征值

杨文霞, 韩 华, 彭斯俊

(武汉理工大学理学院 数学系, 武汉430070)



信息大类专业《线性代数》课程教学改革的研究与实践

杨文霞,韩华,彭斯俊

(武汉理工大学理学院 数学系, 武汉430070)

分析了《线性代数》课程的授课现状与困境,探讨了针对信息大类专业特点的教学内容改革,以及应用案例库建设示范.提出应突出线性代数的思维和方法在信息大类学科中的应用、对概念的几何直观展示,以及加强MATLAB编程训练,以培养和提高学生的线性代数思维,全面提升教学效果和学生素质.

线性代数; 教学改革; 数学实验; MATLAB

1 引  言

《线性代数》的理论和方法,在计算机、电子通信和自动化等信息大类学科中,其重要性和实用性日渐显现.对工科类专业而言,《线性代数》之美,来自它能对实际问题进行简洁而严谨的抽象数学模型表达,而计算的集成化与证明的逻辑严谨性,更是该课程魅力所在.

我国高校近年对《线性代数》课程教学进行了大量探索和实践.相关教学改革和研究主要集中在引入MATLAB软件,增强实践环节[1-2].2009年教育部启动“用MATLAB和建模实践改造《线性代数》课程”项目,各大高校的教学内容和教学形式改革实践,均强调《线性代数》在工科专业的应用[3-5].湖南农业大学计算机学院自2013年以来,《线性代数》的教学改由本院教师授课,突出科学与工程计算的能力培养[6].

笔者除长期担任《线性代数》的本科教学及双语教学以外,亦从事“信息与计算科学”专业中和信息与计算相关的课程教学,长期讲授的课程包括《数学实验与数学软件》、《数字信号处理》、《数字图像处理》、《计算图形学》、《算法与数据结构》等.因此笔者熟悉信息大类专业课程中所蕴含的《线性代数》理论知识和数学模型,并深刻体会到《线性代数》的理论在信息大类学科中的重要性.笔者认为,必须优化信息大类专业的《线性代数》教学内容和教学模式,增强学生利用《线性代数》课程理论和方法解决工程实际问题的能力,引导和调动学生自主学习,培养学生科学思维和创新能力,最终达到培养创新型人才的目的.

2 《线性代数》课程的授课现状及所面临的困境

2.1授课学时与学生思维模式和学习习惯局限

目前国内高校《线性代数》课程约为32-48学时,教学内容包括行列式、矩阵及其运算、线性方程组解的理论、向量组的线性相关性、相似矩阵及二次型.由于课程理论性和逻辑性强,且课程各章的概念和定理交叉融汇,授课内容没有压缩空间.因此,教学时间非常紧张,留给教师讲专业应用背景的展开余地非常少.

此外,我校信息大类专业的《线性代数》课程,多在大一上、下两学期进行.这一阶段的学生学习热情高,对大学学习充满期待,认真、勤奋.但独立思考能力较差,学习中,偏重解题方法与解题技巧的掌握,尚不能站在理论高度理解数学问题,不能深入理解课程的理论精华.教学过程较多理论推导与证明,使学生感觉概念抽象,脱离现实,自我效能感低.课程甚至沦为学生心中的“感觉没什么用,难但不得不学,因为是必修课,且研究生入学考试要考”的理论课程.他们在后续学习中也难以使用本课程作为基本理论工具,课程解决实际问题的价值没有得到充分体现.

2.2教学模式陷入两难

关于黑板板书教学和多媒体教学的优缺点争论已经多年.对于线性代数课程,我校目前并不鼓励使用POWERPOINT教学.原因在于本课程的公式书写占用空间大,单张幻灯片版面放置的内容有限,如果教学使用不当,各种公式、推导一放而过,学生印象不深刻,师生互动更少,教学优势丧失.传统的板书,可以带动学生一起思考和推导,师生互动性强,学生注意力比较集中.但是课程需要经常书写行列式、线性方程组、矩阵等等,耗时多,占用黑板面积大,容易拖延课程的进度,缺乏生动的二维和三维直观表现.传统的板书教学和多媒体教学相结合似乎应该成为常态教学模式,但如何充分发挥和结合各自优势,需要反复实践.

2.3课程的后续应用缺乏跟踪与反馈机制

《线性代数》课程多为数学系的教师承担,各专业的学生在上完数学基础课后,更侧重于和本专业的教师联系,他们在遇到实际的专业问题时也很少和授课教师联系.另一方面,承担线性代数教学的教师面向全校授课,对一些具体的专业应用问题了解有限,因此本课程缺乏后续应用和反馈机制,直接影响教学效果和课程应用程度.

3 信息大类专业《线性代数》课程教学内容改革与实践研究

信息大类专业有一些共同的后续课程,包括电路原理、信号与系统、数字信号处理、计算机图形学、计算机网络、数字图像处理、控制论等.这些课程最需要的是矩阵计算、线性方程组求解、向量空间与线性变换、特征值和特征向量等理论做支撑.我校目前理工科专业的《线性代数》课程学时为40学时,针对目前的课程教学困境,以及信息大类专业背景,我们有针对性的进行教学内容改革,调整《线性代数》课程的知识点和详略侧重.具体如下:

3.1精简行列式教学,强调展开法则的递归思想与编程实现

目前现有的国内教材的章节安排,均从排列的逆序数开始,高阶行列式的定义(n!项的代数和)非常繁琐,而且在后续各章节没有运用.行列式概念的引入,是在整个《线性代数》教学的初始阶段,容易使学生产生《线性代数》课程太难的畏惧心理,误以为能计算复杂的高阶行列式才是学习目标.实际上,在将来的学习和工作中,基本不需要动手计算高阶行列式.反之,行列式的按行(列)展开法则是一种递归思想,容易从计算机编程的角度实现,也可以推导出行列式的全部性质.由于对数学软件和编程软件的掌握,是信息大类专业学生所必须具备的基本能力,因此我们着重讲解行列式的按行(列)展开公式,分析这个展开公式所蕴含的递归思想,引导、鼓励学生编写递归程序来计算行列式.而将排列的逆序数及n!项的代数和的内容,安排成自学环节.笔者编写的一个行列式的按第1行展开的递归定义函数,函数代码如下

function detA=mydet(A)

[X,Y]=size(A);

if X~=Yerror(′输入矩阵必须是方阵!′);

else

if X==1

detA=A;%当方阵为1个元素时,输出它自身;

else%按照第1行展开

detA=0;%初始化

for j=1:X

submatrix=A(2:end,[1:j-1,j+1:end]);

%submatrix为A去掉第1行和第j列后剩下的(n-1)阶矩阵.

detA=detA+A(1,j)*(-1)^(1+j)*mydet(submatrix); %行列式按照第1行展开的计%算公式;

mydet(submatrix)即元素a1j的余子式,此处为mydet即为递归.

end

end

在实际教学中,笔者引导学生使用MATLAB软件进行编程,设计按任意行或任意列展开的递归函数.通过以上讲解及实践环节学生的自我实现,学生对行列式的定义有了深刻的认识,而编程和动手能力也全面得到提升,学以致用,极大的提高学习热情和成就感.

3.2以实例为驱动的矩阵概念的引入和矩阵运算,强化线性变换和正交变换理论讲解

对信息大类专业的学生而言,傅里叶变换(包括连续信号和离散信号)、Z变换和拉普拉斯变换、仿射变换等,都需要用到“线性变换、正交变换”的理论,而我校目前的教学内容中对此涉及甚少,也很少说明它的意义.因此我们对信息大类专业的《线性代数》课程教学内容进行论证与改革,强化线性变换的定义及实际意义、正交变换性质和作用的讲解,并以需求为动力,先提出实际应用实例,激励学生的兴趣和好奇,然后展开问题,介绍了信息大类领域的应用实例.例如:在数字信号处理中的应用——离散信号的傅里叶变换的矩阵表示形式及正交变换的意义;在计算机图形学中的应用——仿射变换、齐次坐标系所体现的《线性代数》思维;在文献检索技术中的应用、在图论和网络分析中的应用——邻接矩阵和状态转移矩阵;在信息保密中的应用——希尔密码等.

3.3加强二维和三维空间中的《线性代数》理论可视化研究,重视信息大类专业线性课程教学实践环节设计

如前所述,《线性代数》课程的学习难点,普遍集中在向量的线性关系与线性表示、向量空间的抽象概念、特征值与特征向量的实际含义、正交变换的性质与意义等.将抽象概念形象化,以空间点、线、面的图形展现,可以加强在理论学习中对抽象概念的理解.我们使用多媒体教室授课,但不仅仅局限于播放幻灯片,而是利用MATLAB强大的图形显示和动画制作功能,在课堂上给学生进行几何直观展示,增强了学生对很多抽象概念的具体认识.如引入计算机图形学的齐次坐标系和仿射变换思想,推导出图形旋转、平移、拉升、错切变换的矩阵表示形式及变换结果的图形演示.图形的直观性,有助于充分理解线性变换和正交变换的作用、联系与区别.

由于信息大类专业对算法与程序设计、科学计算要求非常高,我们针对以上大类专业,增加《线性代数》课程中MATLAB实验教学的探索与实践,构建实验教学平台,实施实践创新训练计划,并进行网络化管理.在8个学时的实践环节,不仅满足于使用MATLAB现成的函数如det(求行列式),inv(求矩阵的逆),rref(求行最简形)等,而是对其中所蕴含的计算方法进行分析与实现.引导学生编程实现高斯消元法的算法、行列式的三角化算法,引导同学们思考这些算法所需要的计算量,和信息大类的后续课程,如“数据结构与算法”、“数值分析”等实现无缝衔接,让学生掌握了一个科学计算工具,在后续课程的学习中发挥更大的作用.

4 基于《线性代数》理论的信息大类专业后续课程的数学模型求解案例库研究

为培养学生的数学思维及学术研究动力,我们对信息大类的后续课程及工程实际中的问题,制作数学模型案例库,展现该课程在各自领域的精彩应用,这一部分研究内容不局限于《线性代数》的课堂教学,而是通过建立课程长效反馈与讨论机制,使学生在后续学习专业内容时,不断运用《线性代数》知识进行求解.限于篇幅,现仅列举三个案例如下.

案例1餐厅就餐人员流动问题

假设我校南湖校区、鉴湖校区、马房山校区各有1间餐厅,这3间餐厅在竞争中求发展.我校就餐人员在这三间餐厅流动.假设在一个学期内,就餐总人数不变.请同学们根据自己的实际调查,大致得出:上一周在某校区就餐的同学,下一周分别在以上三校区餐厅就餐的流动情况,并要求:

(i) 试用矩阵运算,构造数学模型,描述每周在各餐厅的就餐人数的流动关系;

(ii) 是否存在初始学生用餐人数,使得每周在各校区用餐的人数比例稳定不变?若有,请求出该比例.它是线性代数中的什么知识点的应用?

(iii) 请列出MATLAB代码求解,并给出对问题2的求解答案;

(iv) 在构造就餐流动情况时,你们考虑了哪些因素?请分析原因和合理性.

那么可以写成矩阵相乘的形式xn=Axn-1=AAxn-2=…=Anx0,此处矩阵

对第2问的求解,假设存在初始用餐比例x,则有x=Ax,根据特征值和特征向量的定义,即说明此时A有一个特征值为1,而用餐人员比例即属于特征值1的特征向量.矩阵A一定有特征值1吗?我们当然可以求出该矩阵的所有特征值.但通过观察不难发现,A矩阵的每一列之和为1,即

这说明AT有特征值1,根据特征值的性质,AT和A具有相同的特征值,故A必有特征值1.

对于第3问,可以使用MATLAB指令eig求出A的特征值和特征向量.

案例1和同学们的学习生活息息相关,本案例能激发学生学习数学,使用数学的热情.对于问题1的求解,同学们在构造模型时,能充分体会到矩阵乘法运算的定义,以及以矩阵作为计算工具的整体性和简洁性.而构造餐厅流动关系,让同学们知道了方阵的幂的含义;第2问能加深对方阵的特征值和特征向量的性质与含义的理解,而第4问属于开放性讨论题目,有助于学生自主学习,培养分析问题的能力.

案例2希尔密码问题

1929年,希尔(Lester S. Hill)提出以矩阵变换的方法,建立数字和字母间的对应关系,使得密码学进入以数学方法处理问题的阶段.假定每一字母对应一个非负整数,以英文字母为例,首字母a对应数字1,倒数第二个字母y对应数字25,最后一个字母z对应数字0.希尔密码的基本思想是:将明文用相应的数字代替,变成了一个n维列向量x,并确定一个n阶的可逆矩阵A(此矩阵称为密钥),用A左乘向量x,即可得到加密后的报文y=Ax.解密时,只需用A-1左乘向量y,即得到解密后的报文x=A-1y.例如:设明文为our marshal was shot,密钥矩阵为

明文17个字符,将明文形成对应的矩阵为

则加密后的密码为

问题:为了使数字与字符间可以互换,明文和密文必须均使用取自0-25之间的整数.而使用y=Ax计算得到的数字可能超出该范围,那应如何处理?在解密时要用到逆矩阵,在求A的逆矩阵时可能会出现分数,如何解决?

分析希尔密码的加密和解密,可以让我们更好地理解矩阵乘法、逆矩阵的意义和用法.但实际使用时,则需对密钥矩阵及加密、解密过程进行特殊处理.针对本案例需要解决的问题,我们布置成课外思考题,同时提供相关文献,让同学们找出能构成密钥矩阵A的元素所必须满足的条件,并使用穷举算法编程,求出A中所有能使用的数字.希尔密码问题使同学们意识到矩阵理论及逆矩阵在信息学、军事通信中均有重要的应用,对信息大类专业中经常需要用到的“求模”和“求余”运算有了更好的理解.

案例3线性方程组的解与空间平面的关系

已知线性方程组

试讨论λ为何值时,方程组有唯一解、无穷多个解、无解,并分别用空间平面的关系表示.

分析通过对含参数线性方程组的分析,得知:

(i) 当λ≠1且λ≠-2时,R(A)=R(B)=3方程组有唯一解;

(ii) 当λ=1时,R(A)=1,R(B)=2,方程组无解;

(iii) 当λ=-2时,R(A)=R(B)=2<3,方程组有无穷多个解.

含参数的方程组的求解问题,是线性代数学习的一个重要组成部分.我们设计程序,分别给出不同的λ时三个空间平面的位置关系,加深了对问题的三维直观和几何理解.通过该例子,让学生理解了方程组的解和空间平面的关系,并学会使用MATLAB来绘制空间曲面,举一反三,学生的学习热情和成就感都有较大上升.图1是λ分别取1,-2,-1时的三个平面方程的图形,图形的空间位置关系一目了然.

(a) λ=1,唯一解; (b) λ= -2,无穷多解; (c)λ= -1,无解图1 方程组的解与三个空间平面的位置关系

MATLAB程序示范如下:

x=-5:0.1:5;

y=x;

[X,Y]=meshgrid(x,y); %生成平面网格数据

lbd=[1 -2 -1];

fori=1:3

lambda=lbd(i); %三个参数对应于无解 无穷多解和唯一解

Z1=-lambda*X-Y+1; %方程1所对应的平面

Z2=-X-lambda*Y-2; %方程2所对应的平面

Z3=(-X-Y+lambda+3)/lambda;%方程3所对应的平面

figure;mesh(X,Y,Z1);holdon;

mesh(X,Y,Z2);holdon;mesh(X,Y,Z3) %在同一个坐标系中绘出三个平面的图形

end

5 结  论

对信息大类专业《线性代数》的教学改革与实践,一方面是为了提高《线性代数》的教学质量和教学效果,引导和调动学生自主学习,增强学生利用该课程理论和方法解决工程实际问题的能力,培养创新型人才.另一方面,本改革对授课教师提出更高的要求,避免年复一年的重复以往《线性代数》课程相对固定的授课内容,提升教师队伍的综合素质,真正实现教学相长.实践旨在建立“授课、数学实验探索、科学计算与专业案例分析的一体化“教学体系,并建立课程长效反馈机制与调整策略,为培养全面发展高素质本科生提供有效支撑和借鉴.此外,本研究的课件、程序集、专业数学模型案例库等,可推广到全校非数学专业的《线性代数》课程教学,并且可为其他工科数学课程的实践研究提供思路和基础.

[1]赵小艳,李继成.MOOC环境下大学数学教学方法思考[J].大学数学,2015,31(3):46-48.

[2]但琦,杨廷鸿,吴松林,等.论大学数学实验课的教学设计[J].大学数学,2010,26(5):1-5.

[3]黄玉梅. 非数学专业线性代数实践性教学研究[J]. 西南师范大学学报(自然科学版), 2010,35(6):201-205.

[4]李绍刚,段复建,陈利霞.《线性代数》中Matlab实验教学的探索与实践[J].长春大学学报,2010,20(6):21-24.

[5]刘波,戴小鹏,沈岳,王奕. MATLAB融入《线性代数》的教学改革与实践[J].软件, 2014,35(2):150-152.

Research and Practice on Teaching Reform in Linear Algebra Course for Information Majors

YANGWen-Xia,HANHua,PENGSi-Jun

(Department of Mathematics, School of Science, Wuhan University of Technology, Wuhan 430070, China)

We analyze the current teaching situation and difficulties in linear algebra course, and carry out the reforms on teaching contents and application cases in information majors. Our innovation put emphasis on practical applications to information majors. By stressing geometric visual interpretation of concepts and programming training with MATLAB, we aim to culture the students’ ability of using linear algebra and enhance the teaching effect concurrently.

linear algebra; teaching reform; mathematical experiment; MATLAB

2015-11-06;[修改日期]2016-04-08

武汉理工大学教学研究课题(w2015055);湖北省教学研究项目(2015109)

杨文霞(1978-),女,博士,副教授,从事图像处理与智能计算研究.Email:wenxiayang@163.com

O151; G642

C

1672-1454(2016)03-0065-06

猜你喜欢
行列式线性代数特征值
一类内部具有不连续性的不定Strum-Liouville算子的非实特征值问题
一类带强制位势的p-Laplace特征值问题
基于一类特殊特征值集的扩散算子逆谱问题
单圈图关联矩阵的特征值
范德蒙德行列式在行列式计算中的应用
行列式解法的探讨
三阶行列式计算的新方法
加项行列式的计算技巧
翻转课堂在独立院校线性代数教学中的应用研究
在线性代数课程教学中引入MATLAB的简单介绍