《线性代数实践(教师班第四讲).ppt》由会员分享,可在线阅读,更多相关《线性代数实践(教师班第四讲).ppt(44页珍藏版)》请在金锄头文库上搜索。
1、线性代数实践(第四讲)第9章 线性变换及其特征9.1 平面上线性变换的几何意义 例9.1 设x为二维平面上第一象限中的一个单位方块,其四个顶点的数据可写成把不同的A矩阵作用于此组数据,可以得到多种多样的结果yi=Ai*x。用程序ag911进行变换计算,并画出x及yi图形: x0,1,1,0;0,0,1,1; subplot(2,3,1), fill(x(1,:),0,x(2,:),0,r)A11,0;0,1, y1A1*xsubplot(2,3,2), fill(y1(1,:),0,y1(2,:),0,g) 几种变换的行列式与特征值看出的基本关系可以看出,矩阵A1使原图对纵轴生成镜像,矩阵A2
2、使原图在横轴方向膨胀,矩阵A3使原图在纵轴方向压缩,矩阵A4使原图向右方剪切变形,矩阵A5使原图沿反时针方向旋转tpi/6。分别计算出这五个矩阵的行列式和特征值,对二维空间(平面),行列式的几何意义实际上是两个向量所构成的平行四边形的面积。一个变换所造成的图形的面积变化,取决于该变换的行列式。A1,A4和A5的行列式绝对值都是1,所以它们不会使变换后图形的面积发生改变。而A2和A3的行列式分别为1.5和0.2, 9.2 二维矩阵特征值的几何意义 二维矩阵的特征值表示该变换在原图形的特征向量的方向上的放大量。例如矩阵A1在第一特征向 量 方向的特征值为,即横轴 正方向的增益为1,其结果是把原图中
3、横轴正方向的部分变换到新图的负方向去了;A1在第二特 征向量 的方向的特征值为1(2)=1, 即纵轴正方向的增益为1,因而保持了新图和原图在纵轴方向尺度不变。 用eigshow函数看特征值对于比较复杂的情况,完全凭简单的几何关系去想像是困难的,应当用eigshow函数,联系x和Ax的向量图来思考。键入eigshow(A4) 。绿色的x表示原坐标系中的单位向量,可以用鼠标左键点住x并拖动它围绕原点转动。图中同时出现以蓝色表示的Ax向量,它表示变换后的新向量。当两个向量处在同一条直线上时(包括同向和反向),表示两者相位相同,只存在一个(可正可负的)实数乘子, Axx Eigshow(A4)产生的图
4、形eigshow(1,2; 2,2)的图形A是对称实矩阵的情况特别要注意A是对称实矩阵的情况,所谓对称矩阵是满足ATA的矩阵。,对22矩阵,只要求A(1,2)A(2,1)。例如令,A=1,2;2,2 再键入eigshow(A),这时的特点是:Axx出现在Ax椭圆轨迹的主轴上,所以两个特征值分别对应于单位圆映射的椭圆轨迹的长轴和短轴。此时A的特征值为 -0.5616和 3.5616,可以和图形对照起来看。例9.2 斜体字的生成数据矩阵表示英文大写空心字母N的各个节点(1)用plot语句在子图1中画出其形状;(2)取 作为变换矩阵对x进行变换,并在子图2中画出其图形;画图的要点是要在给定的数据右方
5、,补上第一点的坐标,使画出的图形封闭。 程序与图形结果x00,0.5,0.5,6,6,5.5,5.5,0;0,0,6.42,0,8,8,1.58,8;xx0,x0(:,1); % 把首顶点坐标补到末顶点后A1,0.25;0,1; yA*x;subplot(1,2,1),plot(x(1,:),x(2,:)subplot(1,2,2),plot(y(1,:),y(2,:)画出的两个图形如右:平移运动不能用二维变换实现刚体在平面上的运动要用两个平移和一个转动来描述,转动可以从上面的线性变换A5得到,但平移yxc却不是一个线性变换。因为:(1)设yaxac;ybxbc;则它们的和为yyaybxaxb
6、2cxc,可见,它对加法不封闭;(2)设yaxac;将它乘以常数k,ykyak(xac)kxakckxacxc,可见,它对乘法也不封闭;就是说,这不符合线性变换的规则,x和y 不属于同一个向量空间,无法用矩阵乘法来实现平移变换yxc。 平面运动模型的齐次坐标系把平面问题映射到高维的空间来建立方程,有可能把x和y由扩展了的向量空间来覆盖。把原来通过原点的平面沿垂直方向提高一个单位,与原平面保持平行,于是原来的x就用三维向量来表示为: 这样的坐标系称为齐次坐标系。刚体平面运动用线性变换描述此时可以把平移矩阵写成:因而平移运动y就可用x经线性变换实现了。这个方法在研究刚体平面运动时非常有用。同时有旋
7、转和平移的情况对象若同时有旋转和平移,则可以分别列出旋转矩阵和平移矩阵。不过此时的旋转矩阵也要改为33维,这可以把上述A5中增加第三行和第三列,置A(3,3)1,其余新增元素为零。这就是既包括平移,又包括转动的平面齐次坐标系内的变换矩阵。例9.3 刚体平面运动描述 设三角形的三个顶点坐标为(1,1),(1,1),(0,2),今要使它旋转30度,右移2,上移3,以试设计变换矩阵A,并画出变换前后的图形。 解:程序的要点是:1。列出三角形的数据矩阵2。扩展为齐次坐标(第三行加1)3。平移和转动变换矩阵也要用三维的变换矩阵4。按变换次序左乘5。绘图9.3 空间线性变换的几何意义 三维空间线性变换最直
8、接的几何意义和应用价值可以从飞行器的三维转动坐标中得到解释。飞行器在空中可以围绕三个轴旋转。假如它在向北飞行,机头正对北方,则它围绕铅垂轴的旋转角称为偏航角(Yaw),它描述了飞机左右的偏转,用u表示;围绕翼展轴的旋转角称为倾斜角(Pitch),它描述了飞机俯仰姿态,用v表示;围绕机身轴的旋转角称为滚动角(Roll),用w表示;u,v和w三个变量统称为欧拉角,它们完全地描述了飞机的姿态。演示程序quatdemo 演示画面的说明画面中。左方为飞行器在三维空间中的模型,其中红色的是飞行器。右上方为三个姿态角u,v,w的设定标尺和显示窗,右下方为在地面坐标系中的另外的三个姿态角:方位角、俯仰角和倾侧
9、角。左下方还有【静态】和【动态】两个复选钮,我们只介绍【静态】,读者可自行试用【动态】进行演示。用键入参数或移动标尺的方法分别给u,v,w赋值并回车后,就可以得出相应的飞行器姿态,同时出现一根蓝色的线表示合成旋转的转轴。例9.4 程序的实现方法。 把飞行器的三维图像用N个顶点描述,写成一个3N的数据矩阵G。用plot3命令时按顶点连线能绘制出飞行器的外观。例如以下的程序ag904a即可画出一个最简单的飞行器立体图。 Gw=4,3,0;4,3,0;0,7,0;4,3,0; % 主翼的顶点坐标 Gt=0,3,0;0,3,3;0,2,0;0,3,0; % 尾翼的顶点坐标 G=Gw,Gt % 整个飞行
10、器外形的数据集 plot3(Gw(1,:),Gw(2,:),Gw(3,:),r),hold on plot3(Gt(1,:),Gt(2,:),Gt(3,:),g), axis equal 围绕各个轴的旋转变换矩阵飞行器围绕各个轴的旋转的结果,表现为各个顶点坐标发生变化,也就是G的变化。只要把三种姿态的变换矩阵Y,P和R乘以图形数据矩阵G即可。其中综合旋转的变换矩阵单独变化某个姿态角所生成的图形由G1Y*G,G2P*G,G3R*G算出,如果同时变化三个姿态角,则最后的图像数据成为GfY*P*R*GQ*G。这里假定转动的次序为:先滚动R,再倾斜P,最后偏航Y,由于矩阵乘法不服从交换律,转动次序不同
11、时结果也不同。 用MATLAB实现的程序ag904b如下:syms u w vY=cos(u),sin(u),0;sin(u cos(u),0;0,0,1)R=1,0,0;0,cos(w),sin(w);0,sin(w),cos(w)P=cos(v),0,sin(v);0,1,0;sin(v),0,cos(v)Q=Y*P*R 空间的齐次坐标系三维空间考虑了平移运动后,如同二维情况那样,也必须扩展一维,成为4N数据集G4,成为空间的齐次坐标系:在四维空间的44变换矩阵为:其中c1,c2,c3为在三个轴x1,x2,x3方向上的平移距离。这种方法在机器人运动学研究中很有用处。 9.4 基变换与坐标变
12、换 在线性空间中常常需要进行坐标变换。用下图可以形象地说明这点。按照左图的笛卡儿坐标 ,x向量应该表为(1,6),这是x按标准基e1,e2度量的结果,在斜坐标纸上的x点坐标就成为沿b1方向为2个单位而沿b2方向3个单位,即(-2,3)了。这反映了不同的基对坐标值的影响。 基坐标变换的公式设线性空间Rn中的两组基向量u 和v都是n维列向量,它们在基准坐标系中的n个分量都是已知的,因此u和v都可表示为nn矩阵。如果Rn中的一个向量w在以u为基的坐标系内的坐标为wu(n1数组),在以v为基的坐标系内的坐标为wv(n1数组),它们在基准坐标系内的坐标应分别为u*wu和v*wv,这两者应该相等。u* w
13、u v*wv (9.18)所谓基坐标的变换就是已知wu,求出wv。将上式左右均左乘以inv(v),得到(9.19)可见,坐标变换矩阵P可由u和v求得: P(uv)v u (9.20)基变换的算例9. 5已知R4空间的两组基向量u,v如下:试求把u变换为v的坐标变换矩阵P(uv)。解的方法为:输入u和v矩阵后 键入uv ,得到给出某点w的u坐标wu,即可求其v坐标wv=P*wu9.5 对称矩阵与二次型主轴 对称矩阵的特点是所有元素关于主对角线对称,即AA。所以对称矩阵一定是方阵。前面曾要求读者特别注意A是对称矩阵时x与Ax的对应关系,其特点就是Ax呈椭圆形状,在椭圆的两个主轴方向,Ax与x在一条
14、直线上长度差倍,即Axx。当Ax与x方向相同时,为正数;当Ax与x方向相反时,为负数;22变换有两个特征值,在相互正交的两个主轴方向,各有一个。作为22正交变换的一个应用,我们来看看它对二次型图形的影响。二次型本身已经不是线性范围,不属于线性代数的范畴。现在要研究的是基坐标的线性变换对二次型图形发生何种影响。 例9.6 二次型例设A=5,-2;-2,5,则令A的二次型xT*A*x等于常数得到的是一个椭圆方程,其图形如下图(a)所示。如果做一个基坐标的旋转变换,让坐标轴转过45度,此椭圆的主轴就与新的坐标方向y1,y2相同,如图(b)所示,即令y1x1cosx2siny2x1sinx2cos用矩
15、阵乘法表为 线性变换后的二次型其逆变换R为, 因此 用此变换式代入二次型的表达式,有本题中,=45,代入P和R,可得于是得到二次型主轴等价于矩阵对角化所以从几何图形上寻找二次型主轴的问题,在线性代数中就等价于使矩阵经过正交变换或相似变换R(注意这又是一个几何名词,说明被变换的图形的形状和尺寸保持不变),使矩阵A对角化。图中的(c)和(d)表示了对另一种双曲线二次型(它的两个特征值一正一负)的坐标变换,求主轴的方法就是把矩阵A对角化。找其主轴的大小和方向,也就是找它的特征值lamda和特征向量e。 双曲线二次型的算例根据列出程序A=1,-4;-4,-5lamda,e=eig(A) 或R=orth
16、(A)得到把两个特征向量e并列起来,即正交矩阵。landa就是对角化的矩阵D,故标准化的二次型方程为高维空间的算例9.7化二次型为标准型。解:可以看出系数矩阵A,程序ag907为A1,1,3;1,2,1;3,1,5, Rorth(A), Dinv(R)*A*R得知二次型最后的标准型为其中9.6.1 人口迁徙模型 设在一个大城市中的总人口是固定的。人口的分布则因居民在市区和郊区之间迁徙而变化。每年有6%的市区居民搬到郊区去住,而有2%的郊区居民搬到市区。假如开始时有30%的居民住在市区,70%的居民住在郊区,问10年后市区和郊区的居民人口比例是多少?30年、50年后又如何?这个问题可以用矩阵乘法
17、来描述。把人口变量用市区和郊区两个分量表示,一年以后,市区人口为xc1 (10.06) xc00.02xs0,郊区人口xs1 0.06xc0 (10.02)xs0,问题的矩阵描述用矩阵乘法来描述,可写成:从初始到k年,此关系保持不变,因此上述算式可扩展为,故可用程序ag961进行计算:A0.94,0.02;0.06,0.98, x00.3;0.7x1A*x0, x10A10*x0, x30A30*x0, x50A50*x0得到:本题特征值和特征向量的意义无限增加时间k,市区和郊区人口之比将趋向一组常数0.25/0.75。为了弄清为什么这个过程趋向于一个稳态值,我们改变一下坐标系统。在这个坐标系
18、统中可以更清楚地看到乘以矩阵A的效果,先求A的特征值和特征向量,得到令它是特征向量的整数化,得到9.6.2 产品成本的计算 某厂生产三种成品,每件产品的成本及每季度生产件数如表9.1及表9.2所示。试提供该厂每季度在每种产品上的成本表。 解:应当用矩阵来描述此问题,列出成本矩阵为M,季度产量矩阵为P 本例矩阵相乘的变换意义将M和P相乘,得到的矩阵设为Q,Q的第一行第一列元素为Q(1,1)0.140000.320000.1558001870不难看出,Q表示了夏季消耗的原材料总成本。从线性变换的角度来看,Q矩阵把以件数为单位的产品空间映射到了以元为单位的成本空间。 9.6.3 情报检索模型 假如数
19、据库中包括了n个文件,而搜索所用的关键词有m个。可以把数据库表示为mn的矩阵A。比如有7本书,6个关键词x(初等,代数,矩阵,理论,线性,应用):则A就是67的矩阵。书名中有此关键词的就将该对应元素置1。 搜索结果可以表示为乘积yATx,它是n1列向量。于是y的各个分量就表示各书与搜索向量匹配的程度。y值最大的元素对应于匹配最好的书籍,是读者可能最需要的。可见变换有很广泛的意义。在本例中,它是从关键词子空间变换为文献目录的子空间。 结束语顺口溜“一、两、三,三、两、一,还要三句作对比!一、两、三,三、两、一,还要三句作对比!” “一、两、三,一、两、三,”一个中心,两个方向,三种类型一个中心就
20、是消元法生成行阶梯形式:用gauss, rref, lu, rank, inv, det, cond 等函数两个方向是从行向(方程)和列向(变量)分析行阶梯形式;用到rref, 枢轴变量和自由变量三种类型即欠定,适定和超定。 x=Ab的特点:x=inv(A)*b, x=pinv(A)*b, x0=null(A) 。结束语顺口溜(续)“三、两、一,三、两、一,”三个视点,1.解方程x,已如前述2. 向量张成空间,内积xT*y,向量的夹角和模,基向量和正交化等,用到norm(v),qr(A)等3.像空间b的特点,线性变换的特征值和特征向量 ,坐标变换,矩阵的对角化 。用到eig(A),orth(A)等两个动力,需求牵引和技术推动。一个目标,后续课的应用需求为主。结束语顺口溜(续)“还要三句作对比!还要三句作对比!”线性代数抽象吗?解决的办法是?线性代数冗繁吗?解决的办法是?线性代数枯燥吗?解决的办法是?