判断矩阵的最大特征值

合集下载

判断矩阵的最大特征值

判断矩阵的最大特征值

项目六 矩阵的特征值与特征向量实验1 求矩阵的特征值与特征向量实验目的学习利用Mathematica(4.0以上版本)命令求方阵的特征值和特征向量;能利用软件计算方阵的特征值和特征向量及求二次型的标准形.求方阵的特征值与特征向量.例1.1 (教材 例1.1) 求矩阵.031121201⎪⎪⎪⎭⎫ ⎝⎛--=A 的特征值与特值向量.(1) 求矩阵A 的特征值. 输入 A={{-1,0,2},{1,2,-1},{1,3,0}}MatrixForm[A] Eigenvalues[A]则输出A 的特征值{-1,1,1}(2) 求矩阵A 的特征向量. 输入A={{-1,0,2},{1,2,-1},{1,3,0}} MatrixForm[A] Eigenvectors[A]则输出 {{-3,1,0},{1,0,1},{0,0,0}}即A 的特征向量为.101,013⎪⎪⎪⎭⎫⎝⎛⎪⎪⎪⎭⎫ ⎝⎛-(3) 利用命令Eigensystem 同时矩阵A 的所有特征值与特征向量. 输入A={{-1,0,2},{1,2,-1},{1,3,0}} MatrixForm[A] Eigensystem[A]则输出矩阵A 的特征值及其对应的特征向量.例1.2 求矩阵⎪⎪⎪⎭⎫ ⎝⎛=654543432A 的特征值与特征向量.输入A=T able[i+j,{i,3},{j,3}] MatrixForm[A](1) 计算矩阵A 的全部(准确解)特征值, 输入Eigenvalues[A]则输出{0, 426-,426+}(2) 计算矩阵A 的全部(数值解)特征值, 输入Eigenvalues[N[A]]则输出{12.4807, -0.480741, -1.34831610-⨯}(3) 计算矩阵A 的全部(准确解)特征向量, 输入Eigenvectors[A]//MatrixForm则输出121172422344220342234421172422344220342234421(4) 计算矩阵A 的全部(数值解)特征向量, 输入Eigenvectors[N[A]]//MatrixForm则输出0.4303620.5665420.7027220.805060.111190.5826790.4082480.8164970.408248(5) 同时计算矩阵A 的全部(准确解)特征值和特征向量, 输入 OutputForm[Eigensystem[A]] 则输出所求结果(6) 计算同时矩阵A 的零空间, 输入NullSpace[A]则输出{{1,-2,1}}(7) 调入程序包<<LinearAlgebra`Orthogonalization`后,还可以做以下的运算:GramSchmidt[ ]:用Gram-Schmidt 过程将向量组单位正交化; Normalize[ ]:将向量组单位化;Projection[vect1,vect2]:求从向量组vect1到vect2的正交映射.输入<<LinearAlgebra ’Orthogonalization ’ GramSchmidt[Eigenvectors[N[A]]]//MatrixForm则输出0.4303620.5665420.7027220.805060.111190.5826790.4082480.8164970.408248例1.3 求方阵⎪⎪⎪⎭⎫ ⎝⎛=633312321M 的特征值和特征向量.输入Clear[M];M={{1,2,3,},{2,1,3}{3,3,6}}; Eigenvalues[M] Eigenvectors[M] Eigensystem[M]则分别输出{-1,0,9}{{-1,1,0},{-1,-1,1}{1,1,2}}{{-1,0,9},{{-1,1,0},{-1,-1,1}{1,1,2}}}例1.4 (教材 例1.2) 求矩阵⎪⎪⎪⎭⎫⎝⎛---=2163/115/12/13/13/1A 的特征值和特征向量的近似值.输入A={{1/3,1/3,-1/2},{1/5,1,-1/3},{6,1,-2}}; Eigensystem[A]则屏幕输出的结果很复杂,原因是矩阵A 的特征值中有复数且其精确解太复杂.此时,可采用 近似形式输入矩阵A ,则输出结果也采用近似形式来表达.输入A={{1/3,1/3,-1/2},{1/5,1,-1/3},{6.0,1,-2}}; Eigensystem[A]则输出{{-0.748989+1.27186i,-0.748989-1.27186i,0.831311}, {{0.179905+0.192168i,0.116133+0.062477I,0.955675+0.i}, {0.179905-0.192168i,0.116133-0.062477i,0.955675+0.i}, {-0.0872248,-0.866789,-0.490987}}}从中可以看到A 有两个复特征值与一个实特征值.属于复特征值的特征向量也是复的;属于实 特征值的特征向量是实的.例1.5 (教材 例1.3) 已知2是方阵⎪⎪⎪⎭⎫ ⎝⎛=32131003t A 的特征值,求t .输入Clear[A,q];A={{2-3,0,0},{-1,2-t,-3},{-1,-2,2-3}}; q=Det[A] Solve[q==0,t]则输出{{t →8}}即当8=t 时,2是方阵A 的特征值.例1.6 (教材 例1.4) 已知)1,1,1(-=x 是方阵⎪⎪⎪⎭⎫⎝⎛---=2135212b a A 的一个特征向量,求参数b a ,及特征向量x 所属的特征值. 设所求特征值为t ,输入Clear[A,B,v,a,b,t];A={{t-2,1,-2},{-5,t-a,-3},{1,-b,t+2}}; v={1,1,-1}; B=A.v;Solve[{B[[1]]==0,B[[2]]==0,B[[3]]==0},{a,b,t}]则输出{{a →-3, b →0, t →-1}}即0,3=-=b a 时,向量)1,1,1(-=x 是方阵A 的属于特征值-1和特征向量.矩阵的相似变换例1.7 (教材 例1.5) 设矩阵⎪⎪⎪⎭⎫ ⎝⎛=222222114A ,求一可逆矩阵P ,使AP P 1-为对角矩阵.方法1 输入Clear[A,P];A={{4,1,1},{2,2,2},{2,2,2}}; Eigenvalues[A]P=Eigenvectors[A]//Transpose则输出{0,2,6}{{0,-1,1},{-1,1,1},{1,1,1}}即矩阵A 的特征值为0,2,6.特征向量为⎪⎪⎪⎭⎫ ⎝⎛-110,⎪⎪⎪⎭⎫ ⎝⎛-111与⎪⎪⎪⎭⎫ ⎝⎛111,矩阵⎪⎪⎪⎭⎫ ⎝⎛--=111111110P .可验证AP P 1-为对角阵, 事实上,输入 Inverse[P].A.P则输出{{0,0,0},{0,2,0},{0,0,6}}因此,矩阵A 在相似变换矩阵P 的作用下,可化作对角阵.方法2 直接使用JordanDecomposition 命令, 输入jor=JordanDecomposition[A]则输出{{{0,-1,1},{-1,1,1},{1,1,1}},{{0,0,0},{0,2,0},{0,0,6}}}可取出第一个矩阵S 和第二个矩阵Λ,事实上,输入jor[[1]] jor[[2]]则输出{{0,-1,1},{-1,1,1},{1,1,1}} {{0,0,0},{0,2,0},{0,0,6}}输出结果与方法1的得到的结果完全相同.例1.8 方阵⎪⎪⎭⎫⎝⎛=1201A 是否与对角阵相似?输入Clear[A]; A={{1,0},{2,1}}; Eigensystem[A]输出为{{1,1},{{0,1}{0,0}}}于是,1是二重特征值,但是只有向量{0,1}是特征向量,因此,矩阵A 不与对角阵相似.例1.9 (教材 例1.6) 已知方阵⎪⎪⎪⎭⎫ ⎝⎛-=11322002x A 与⎪⎪⎪⎭⎫⎝⎛-=y B 00020001相似, 求y x ,.注意矩阵B 是对角矩阵,特征值是y ,2,1-.又矩阵A 是分块下三角矩阵,-2是矩阵A 的特 征值.矩阵A 与B 相似,则2-=y ,且-1,2也是矩阵A 的特征值.输入Clear[c,v];v={{4,0,0},{-2,2-x,-2},{-3,-1,1}}; Solve[Det[v]==0,x]则输出{{x →0}}所以,在题设条件,0=x ,2-=y .例1.10 对实对称矩阵⎪⎪⎪⎪⎪⎭⎫⎝⎛=2000001101010110A ,求一个正交阵P ,使AP P 1-为对角阵. 输入<<LinearAlgebra\Orthogonalization Clear[A,P]A={{0,1,1,0 },{1,0,1,0},{1,1,0,0},{0,0,0,2}}; Eigenvalues[A] Eigenvectors[A]输出的特征值与特征向量为{-1,-1,2,2}{{-1,0,1,0},{-1,1,0,0},{0,0,0,1},{1,1,1,0}}再输入P=GramSchmidt[Eigenvectors[A]]//Transpose输出为已经正交化和单位化的特征向量并且经转置后的矩阵P{}}{0,1,0,0,31,0,61,21,31,0,32,0,31,0,61,21⎪⎭⎪⎬⎫-⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧⎪⎭⎪⎬⎫⎪⎭⎪⎬⎫-⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧-为了验证P 是正交阵,以及AP P AP p T=-1是对角阵,输入Transpose[P].PInverse[P].A.P//Simplify Transpose[P].A.P//simplify则输出{{1,0,0,0},{0,1,0,0},{0,0,1,0},{0,0,0,1}} {{-1,0,0,0},{0,-1,0,0},{0,0,2,0},{0,0,0,2}} {{-1,0,0,0},{0,-1,0,0},{0,0,2,0},{0,0,0,2}}第一个结果说明E P P T =,因此P 是正交阵;第二个与第三个结果说明⎪⎪⎪⎪⎪⎭⎫ ⎝⎛--==-22111AP P AP P T例1.11 求一个正交变换,化二次型243231212222x x x x x x x f +++=为标准型.二次型的矩阵为⎪⎪⎪⎪⎪⎭⎫⎝⎛=2000001101010110A这恰好是例1.10的矩阵, 因此,用例1.10中的正交矩阵P ,作正交变换PY X =,即⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛---=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛43214321010031061213103203106121y y y y x x x x将f 化作标准型.输入f=T able[x[j],{j,4}].A.Table[x[j],{j,4}]//Simplify则输出2(x[2]x[3]+x[1](x[2]+x[3])+x[4]2)这是原来的二次型f .把上式中的x[1],x[2],x[3],x[4]用y[1],y[2],y[3],y[4]表示,输入代换命令f/.T able[x[j]→(P .T able[y[j],{j,4}])[[j]],{j,4}]// Simplify则输出-y[1]2-y[2]2 +2(y[3]2 +y[4]2)这就是二次型f 的标准型.例1.12 (教材 例1.7) 已知二次型3231212322213212422),,(x x x x x x x x x x x x f +-++-=(1)求标准形; (2)求正惯性指数; (3)判断二次型是否正定. 输入A={{1,1,-2},{1,-2,1},{-2,1,1}}Eigenvalues[A]则输出矩阵A 的特征值为{-3,0,3}所以二次型的标准形为222133y y f +=;正惯性指数为1;该二次型不是正定的. 例1.13 (教材 例1.8) 求正交变换将二次型43324121242322213212222),,(x x x x x x x x x x x x x x x f -+-++++=化为标准形.输入A={{1,1,0,-1},{1,1,1,0},{0,1,1,-1},{-1,0,-1,1}} MatrixForm[A] X={x1,x2,x3,x4}; Expand[X.A.X]<<LinearAlgebra\Orthogonalization.m P=GramSchmidt[Eigenvectors[A]] P .A.Inverse[P]//MatrixForm则输出所求的正交变换矩阵P 与二次型矩阵A 标准形. 从结果知, 所求二次型的标准型为24232221y y y y g +++-=实验2 层次分析法实验目的通过应用层次分析法解决一个实际问题,学习层次分析法的基本原理与方法;掌握用层次 分析法建立数学模型的基本步骤;学会用Mathematica 解决层次分析法中的数学问题.基本原理层次分析法是系统分析的重要工具之一,其基本思想是把问题层次化、数量化, 并用数学 方法为分析、决策、预报或控制提供定量依据. 它特别适用于难以完全量化, 又相互关联、 相互制约的众多因素构成的复杂问题. 它把人的思维过程层次化、数量化,是系统分析的一中 新型的数学方法.运用层次分析法建立数学模型, 一般可按如下四个基本步骤进行.1.建立层次结构首先对所面临的问题要掌握足够的信息, 搞清楚问题的范围、因素、各因素之间的相互 关系,及所要解决问题的目标. 把问题条理化、层次化, 构造出一个有层次的结构模型. 在这 个模型下,复杂问题被分解为元素的组成部分. 这些元素又按其属性及关系形成若干层次.层 次结构一般分三层:第一层为最高层, 它是分析问题的预定目标和结果, 也称目标层;第二层为中间层, 它是为了实现目标所涉及的中间环节, 如: 准则、子准则, 也称准则 层;第三层为最底层, 它包括了为实现目标可供选择的各种措施、决策方案等, 也称方案层.图2-1决策目标准则1准则2准则n方案1方案2方案m…………注:上述层次结构具有以下特点:(1) 从上到下顺序地存在支配关系, 并用直线段表示;(2) 整个层次结构中层次数不受限制.2.构造判断矩阵构造判断矩阵是建立层次分析模型的关键. 假定以上一层的某元素y 为准则,它所支配 的下一层次的元素为n x x x ,,,21 ,这n 个元素对上一层次的元素y 有影响,要确定它们在y 中的比重. 采用成对比较法. 即每次取两个元素i x 和j x , 用ij a 表示i x 与j x 对y 的影响之比, 全部比较的结果可用矩阵A 表示,即.,,2,1,,)(n j i a A n n ij ==⨯ 称矩阵A 为判断矩阵.根据上述定义,易见判断矩阵的元素ij a 满足下列性质:)(,1),(1j i a j i a a ii ijji ==≠=当0>ij a 时,我们称判断矩阵A 为正互反矩阵.怎样确定判断矩阵A 的元素ij a 的取值呢? 当某层的元素n x x x ,,,21 对于上一层某元素y 的影响可直接定量表示时, i x 与j x 对y的影响之比可以直接确定, ij a 的值也可直接确定. 但对于大多数社会经济问题, 特别是比较 复杂的问题, 元素i x 与j x 对y 的重要性不容易直接获得, 需要通过适当的量化方法来解决. 通常取数字1~9及其倒数作为ij a 的取值范围. 这是因为在进行定性的成对比较时, 通常采用5级制(表1),在每两个等级之间各有一个中间状态, 共1~9个尺度, 另外心理学家认为进行成对比较的因素太多, 将超出人们的判断比较能力, 降低精确. 实践证明, 成对比较的尺度以27±为宜, 故ij a 的取值范围是9,,2,1 及其倒数.表1 比较尺度ij a 的取值97531/ijj i a x x 绝对强很强强较强相等3.计算层次单排序权重并做一致性检验层次单排序是指同一层次各个元素对于上一层次中的某个元素的相对重要性进行排序. 具体做法是: 根据同一层n 个元素n x x x ,,,21 对上一层某元素y 的判断矩阵A ,求出它们对 于元素y 的相对排序权重,记为n w w w ,,,21 ,写成向量形式T n w w w w ),,,(21 =, 称其为A 的层次单排序权重向量, 其中i w 表示第i 个元素对上一层中某元素y 所占的比重, 从而得到层次单排序.层次单排序权重向量有几种求解方法,常用的方法是利用判断矩阵A 的特征值与特征向 量来计算排序权重向量w .关于正互反矩阵A ,我们不加证明地给出下列结果. (1) 如果一个正互反矩阵n n ij a A ⨯=)(满足),,2,1,,(n k j i a a a ik jk ij ==⨯则称矩阵A 具有一致性, 称元素k j i x x x ,,的成对比较是一致的; 并且称A 为一致矩阵.(2) n 阶正互反矩阵A 的最大特征根n ≥max λ, 当n =λ时, A 是一致的. (3) n 阶正互反矩阵是一致矩阵的充分必要条件是最大特征值 n =max λ.计算排序权重向量的方法和步骤设T n w ),,,(21ωωω =是n 阶判断矩阵的排序权重向量, 当A 为一致矩阵时, 根据n阶判断矩阵构成的定义,有⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=n n n n nn A ωωωωωωωωωωωωωωωωωω212221212111 (2.1) 因而满足,nw Aw = 这里n 是矩阵A 的最大特征根, w 是相应的特征向量; 当A 为一般的 判断矩阵时w Aw max λ=, 其中max λ是A 的最大特征值(也称主特征根), w 是相应的特征向 量(也称主特征向量). 经归一化(即11=∑=ni iω)后, 可近似作为排序权重向量, 这种方法称为特征根法.一致性检验在构造判断矩阵时, 我们并没有要求判断矩阵具有一致性, 这是由客观事物的复杂性与人的认识的多样性所决定的. 特别是在规模大、因素多的情况下, 对于判断矩阵的每个元 素来说,不可能求出精确的j i ωω/, 但要求判断矩阵大体上应该是一致的. 一个经不起推敲 的判断矩阵有可能导致决策的失误. 利用上述方法计算排序权重向量, 当判断矩阵过于偏离 一致性时, 其可靠性也有问题. 因此,需要对判断矩阵的一致性进行检验, 检验可按如下步骤 进行: (1) 计算一致性指标CI1max --=n nCI λ (2.2)当,0=CI 即n =max λ时, 判断矩阵A 是一致的. 当CI 的值越大, 判断矩阵A 的不一致的程 度就越严重. (2) 查找相应的平均随机一致性指标RI表2给出了n )11~1(阶正互反矩阵的平均随机一致性指标RI , 其中数据采用了 100~150个随机样本矩阵A 计算得到.(3) 计算一致性比例CRRICICR =(2.3)当10.0<CR 时, 认为判断矩阵的一致性是可以接受的; 否则应对判断矩阵作适当修正.4. 计算层次总排序权重并做一致性检验计算出某层元素对其上一层中某元素的排序权重向量后, 还需要得到各层元素, 特别 是最底层中各方案对于目标层的排序权重, 即层次总排序权重向量, 再进行方案选择. 层次 总排序权重通过自上而下地将层次单排序的权重进行合成而得到. 考虑3个层次的决策问题: 第一层只有1个元素, 第二层有n 个元素, 第三层有m 个元 素.设第二层对第一层的层次单排序的权重向量为 Tn w ),,,()2()2(2)2(1)2(ωωω = 第三层对第二层的层次单排序的权重向量为n k w w w w Tkn k k k ,,2,1,),,,()3()3(2)3(1)3( ==以)3(k w 为列向量构成矩阵:n m nm m mn n n w w w w w w w w w w w w W ⨯⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==)3()3(2)3(1)3(2)3(22)3(12)3(1)3(21)3(11)3()3(2)3(1)3(,,,,,,,,,,,),,,( (2.4)则第三层对第一层的层次总排序权重向量为)2()3()3(w W w =(2.5) 一般地, 若层次模型共有s 层, 则第k 层对第一层的总排序权重向量为s k w W w k k k ,,4,3,)1()()( ==-(2.6)其中)(k W 是以第k 层对第1-k 层的排序权向量为列向量组成的矩阵,)1(-k w 是第1-k 层对第 一层的总排序权重向量. 按照上述递推公式, 可得到最下层(第s 层)对第一层的总排序权重 向量为)2()3()1()()(w W W W w s s s -=(2.7)对层次总排序权重向量也要进行一致性检验. 具体方法是从最高层到最低层逐层进行 检验.如果所考虑的层次分析模型共有s 层. 设第l (s l ≤≤3)层的一致性指标与随机一致性 指标分别为)()(2)(1,,,l n l l CI CI CI (n 是第1-l 层元素的数目)与)()(2)(1,,,l nl l RI RI RI , 令)1()(1)(1)(],,[-=l l l l w CI CI CI(2.8) )1()(1)(1)(],,[-=l l l l w RI RI RI(2.9)则第l 层对第一层的总排序权向量的一致性比率为s l RICI CRCRl l l l ,,4,3,)()()1()( =+=- (2.10)其中)2(CR 为由(2.3)式计算的第二层对第一层的排序权重向量的一致性比率.当最下层对第一层的总排序权重向量的一致性比率1.0)(<s CR 时, 就认为整个层次结构 的比较判断可通过一致性检验.应用举例问题 在选购电脑时, 人们希望花最少的钱买到最理想的电脑. 试通过层次分析法建立 数学模型,并以此确定欲选购的电脑.1. 建立选购电脑的层次结构模型选择的目标性能价格质量外观售后服务品牌1品牌2品牌3目标层准则层方案层图2-2该层次结构模型共有三层:目标层(用符号z 表示最终的选择目标); 准则层(分别用符号 521,,,y y y 表示“性能”、“价格”、“质量”、“外观”、“售后服务”五个判断准则); 方案层(分别用符号321,,x x x 表示品牌1, 品牌2, 品牌3三种选择方案).2.构造成对比较判断矩阵(1) 建立准则层对目标层的成对比较判断矩阵根据表1的定量化尺度, 从建模者的个人观点出发, 设准则层对目标层的成对比较判断矩阵为⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=13123/13/113/12/19/113123/12/122/115/139351A (2.11)(2) 建立方案层对准则层的成对比较判断矩阵,113/1113/1331,123/12/115/13511252/1135/13/11,12/15/1213/1531,1252/1135/13/1154321⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=B B B B B3.计算层次单排序权重向量并做一致性检验先利用Mathematica 计算矩阵A 的最大特征值及特征值所对应的特征向量. 输入<<Miscellaneous\RealOnly.m (*调用只求实数运算的软件包*)A={{1.0,5,3,9,3},{1/5,1,1/2,2,1/2},{1/3,2,1,3,1},{1/9,1/2,1/3,1,1/3},{1/3,2,1,3,1}};(*以小数形式1.0输入进行近似计算, 可避免精确解太长、太复杂*) T=Eigensystem[A]//Chop(*输入//Chop, 把与零非常接近的数换成零*)则输出{{5.00974,Nonreal,Nonreal,0,0},{{0.88126,0.167913,0.304926,0.0960557,0.304926}, {0.742882,Nonreal,Nonreal,Nonreal,Nonreal}, {0.742882,Nonreal,Nonreal,Nonreal,Nonreal}, {-0.993398,0,0.0673976,0.0662265,0.0650555}, {-0.65676,0,0.57431,0.043784,-0.486742}}} (输出中的Nonreal 表示复数)从中得到A 的最大特征值,00974.5max =λ及其对应的特征向量T x )304926.0,0960557.0,304926.0,167913.0,88126.0(=输入Clear[x]; x=T[[2,1]];ww2=x/Apply[Plus,x]则得到归一化后的特征向量T w )173739.0,0547301.0,173739.0,0956728.0,502119.0()2(=计算一致性指标1max --=n nCI λ,其中,00974.5,5max ==λn 故.002435.0=CI查表得到相应的随机一致性指标 12.1=RI 从而得到一致性比率002174.0)2(==RICICR 因,1.0)2(<CR 通过了一致性检验,即认为A 的一致性程度在容许的范围之内, 可以用归一 化后的特征向量)2(w 作为排序权重向量. 下面再求矩阵)5,,2,1( =j B j 的最大特征值及特征值所对应的特征向量, 输入B1=B3={{1.0,1/3,1/5},{3,1,1/2},{5,2,1}}; B2=Transpose[B1];B4={{1.0,5,3},{1/5,1,1/2},{1/3,2,1}}; B5={{1.0,3,3},{1/3,1,1},{1/3,1,1}}; T1=Eigensystem[B1]//ChopT2=Eigensystem[B2]//Chop T3=Eigensystem[B3]//Chop T4=Eigensystem[B4]//Chop T5=Eigensystem[B5]//Chop则输出 {{3.00369,Nonreal, Nonreal}, {{0.163954,0.46286,0.871137},{ Nonreal, Nonreal,0.871137}, { Nonreal, Nonreal, 0.871137}}};{{3.00369,Nonreal, Nonreal}, {{0.928119,0.328758,0.174679}, {0.928119, Nonreal, Nonreal}, {0.928119, Nonreal, Nonreal}}}{{3.00369, Nonreal, Nonreal}, {{0.163954,0.46286,0.871137}, { Nonreal, Nonreal,0.871137}, { Nonreal, Nonreal,0.871137}}}{{3.00369, Nonreal, Nonreal}, {{0.928119,0.174679,0.328758}, {0.928119, Nonreal, Nonreal}, {0.928119, Nonreal, Nonreal}}} {{3,0,0},{{0.904534,0.301511,0.301511}, {-0.973329,0.162221,0.162221}, {-0.170182,-0.667851,0.724578}}从上面的输出可以分别得到)5,,2,1( =j B j 的最大特征值000.3,00369.3,00369.3,00369.3,00369.354321=====λλλλλ以及上述特征值所对应的特征向量TT T TT x x x x x )301511.0,301511.0,904534.0()328758.0,174679.0,928119.0()871137.0,46286.0,163954.0()174679.0,328758.0,928119.0()871137.0,46286.0,163954.0(54321=====其中.5,,2,1),,,(321 ==i x x x x i i i i 为求出归一化后的特征向量, 输入Clear[x1,x2,x3,x4,x5]; x1=T1[[2,1]];w1=x1/Apply[Plus,x1] x2=T2[[2,1]];w2=x2/Apply[Plus,x2] x3=T3[[2,1]];w3=x3/Apply[Plus,x3] x4=T4[[2,1]];w4=x4/Apply[Plus,x4] x5=T5[[2,1]];w5=x5/Apply[Plus,x5]则输出TT T TT w w w w w )200000.0,200000.0,600000.0()229651.0,12202.0,648329.0()581552.0,308996.0,109452.0()12202.0,229651.0,648329.0()581552.0,308996.0,109452.0(54321===== 计算一致性指标)5,,2,1(1=--=i n nCI i i λ,其中,3=n 输入lamda={T1[[1,1]],T2[[1,1]],T3[[1,1]],T4[[1,1]],T5[[1,1]]} CI=(lamda-3)/(3-1)//Chop则输出0,0018473.0,0018473.0,0018473.0,0018473.054321=====CI CI CI CI CI查表得到相应的随机一致性指标)5,,2,1(58.0 ==i RI i计算一致性比率5,,2,1, ==i RI CI CR iii ,输入CR=CI/0.58则输出.0,003185.0,003185.0,003185.0,003185.054321=====CR CR CR CR CR因),5,,2,1(,1.0 =<i CR i 通过了一致性检验. 即认为)5,,2,1( =j B j 的一致性程度在容许 的范围之内, 可以用归一化后的特征向量作为其排序权重向量.4. 计算层次总排序权重向量并做一致性检验购买个人电脑问题的第三层对第二层的排序权重计算结果列于表3.以矩阵表示第三层对第二层的排序权重计算结果为⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=2.0229651.0581552.012202.0581552.02.012202.0308996.0229651.0308996.06.0648329.0109452.0648329.0109452.0)3(W )3(W 即是第三层对第二层的权重向量为列向量组成的矩阵. 最下层(第三层)对最上层(第一层)的总排序权向量为)2()3()3(w W w =为了计算上式, 输入W3=Transpose[{w1,w2,w3,w4,w5}]; ww3=W3.ww2则从输出结果得到T w )452037.0,272235.0,275728.0()3(=为了对总排序权向量进行一致性检验, 计算)2(521)3().,,.,.(w I C I C I C CI =输入CI.ww2则从输出结果得到00152635.0)3(=CI 再计算)2(51)3(],,[w RI RI RI =,输入RI=T able[0.58,{j,5}]; RI.ww2则从输出结果得到 58.0.)3(=I R 最后计算 )3()3()2()3(./...I R I C R C R C +=,可得00480575.0.)3(=R C因为,1.0.)3(<R C 所以总排序权重向量符合一致性要求的范围.根据总排序权重向量的分量取值, 品牌3的电脑是建模者对这三种品牌机的首选. 实验报告1.根据你的设想购置一台计算机, 需考虑什么样的判断准则? 利用层次分析法及数学 软件做出最佳的决策.2.根据你的经历设想如何报考大学, 需要什么样的判断准则? 利用层次分析法及数学 软件做出最佳的决策.3.假期到了, 某学生打算做一次旅游, 有四个地点可供选择, 假定他要考虑5个因素: 费用、景色、居住条件、饮食以及旅游条件. 由于该学生没有固定收入, 他对费用最为看重, 其次是旅游点的景色, 至于旅游条件、饮食, 差不多就行, 住什么地方就更无所谓了. 这四个旅游点没有一个具有明显的优势, 而是各有优劣. 该同学拿不定主意, 请用层次分析法帮助他找出最佳旅游点.4. 假设你马上就要从大学毕业, 正面临择业的问题, 你对工作的选择着重考虑下面几个因素: (1)单位的声誉; (2)收入; (3)专业是否对口; (4)是否有机会深造或晋升; (5)工作地点; (6)休闲时间. 对上述各种因素你可以根据自己的具体情况排序,也可以增加或减少所考虑的因素. 现在有四个单位打算你, 但如果用上述标准来衡量,没有一个单位具有明显的优势,请用层次分析法为你自己做一个合理的选择.。

矩阵特征值及其计算方法的应用

矩阵特征值及其计算方法的应用

矩阵特征值及其计算方法的应用矩阵特征值是线性代数中的重要概念,它在各个学科领域都有着广泛的应用,如物理学、工程学、计算机科学等。

本篇文章将针对矩阵特征值及其计算方法的应用进行探讨,以期帮助读者更好地理解和应用这一概念。

一、矩阵特征值的定义矩阵特征值是指一个矩阵在行列式中的解,也称为特征根。

对于给定的矩阵A,如果存在一个实数λ和非零向量v,使得:Av=λv,则称λ为矩阵A的特征值,v为相应的特征向量。

二、矩阵特征值的计算方法计算矩阵特征值的方法有很多种,其中比较常用的有特征值分解法、幂法、反迭代法等。

下面我们就来简单介绍一下这几种方法:1、特征值分解法:通过求解矩阵的特征值和特征向量,可以将任何一个n阶方阵A表示为:A=QΛQ^(-1),其中Λ是一个对角线矩阵,其对角线上的元素为矩阵A的特征值,Q是由矩阵A的n个特征向量组成的矩阵,并满足Q^(-1)Q=I。

2、幂法:幂法是求解矩阵最大特征值的一种方法。

具体步骤为:首先选择一个非零向量v0作为初始向量,然后进行迭代计算,直至收敛为止。

每次迭代时,都将向量v0乘以矩阵A,并将结果归一化得到下一个向量v1,即:v1=A·v0/||A·v0||。

重复这个步骤直到v1和v0之间的距离小于一定的阈值。

3、反迭代法:反迭代法是幂法的一种改进方法,用于求解矩阵的近似特征值及其对应的特征向量。

该方法的思想是对原问题进行转化,将求解矩阵最大特征值的问题转化为求解矩阵最小特征值的问题。

具体实现时,需要对矩阵A进行平移,使得新矩阵B=μI-A的特征值与B的特征值相互对应,在这个基础上再进行幂法的计算即可。

三、矩阵特征值的应用矩阵特征值由于具有很好的数学性质和广泛的应用场景,因此在各个领域都有着深入的研究和广泛的应用。

下面我们就针对几个具体场景来介绍一下矩阵特征值的应用。

1、图像处理:矩阵特征值在图像处理中有着重要的应用,通过分解一张图像对应的矩阵的特征值和特征向量,可以将原图像进行降维处理,从而达到图像压缩和图像增强的目的。

计算方法之计算矩阵的特征值和特征量

计算方法之计算矩阵的特征值和特征量

4
1 取对应于1=4的基础解向量 P1 1 则对应于1=4的全部特征向量为:kP1 (k 0)
(2)2=2 将1=2代入(A-E)X=0得(A-2E)X=0
3 2 1 x1 1 3 2 x 0 2

总可以用 Xi 的线性组合来表示: V(0)=1X1+ 2X2+...+ nXn(其中10) 取 V(1)=AV(0) V(2)=AV(1)=A2V(0) ……
10
V(k+1)=AV(k) =Ak+1V(0) 以构成向量迭代序列。 由矩阵特征值的定义有: AXi=iXi (i=1,2,...,n) 则有

k 1 1
i [ 1 X 1 i i2 1
n
k 1
Xi ]
11
V 同理可得:
(k )
i [ 1 X 1 i X i ] i2 1
n k 1 n k 1
k
V(k+1)的第j个分量:
16
(二)按模最大特征值是互为反号的实根 设n 阶方阵A有 n 个线性无关的特征向量 Xi , 其对应的特征值为i (i=1,2,...,n),且满足: |1| = |2|>|3| … |n|,设其中1>0, 1=- 2
由迭代变换: V ( k ) Ak V ( 0 )
3 1 求矩阵 A 1 3 的特征值与特征向量
3
解:计算特征多项式方程,即 3 1 A E ( 3 )2 1 0 1 3 解得A的两个特征值:1=4, 2=2。 (1)1=4 将1=4代入 (A-E)X=0得(A-4E)X=0

矩阵特征值的计算

矩阵特征值的计算

矩阵特征值的计算一、特征值的定义和性质矩阵A的特征值是指满足下列条件的数λ:存在一个非零向量x,使得Ax=λx,即为矩阵A作用在向量x上的结果是该向量的数量倍,其中λ为特征值。

定义特征值之后,可以证明如下性质:1.相似矩阵具有相同的特征值;2.矩阵的特征值个数等于矩阵的阶数;3.特征值可以是实数也可以是复数;4.如果一个矩阵的特征向量独立,则该矩阵可对角化。

二、特征值的计算方法特征值的计算方法有多种,包括直接计算、特征向量迭代法等。

以下介绍两种常用的方法,分别是雅可比法和幂法。

1.雅可比法雅可比法是最基本和最直接的求解特征值和特征向量的方法。

首先,构造一个对称阵J,使其主对角线元素等于矩阵A的主对角线元素,非对角线元素等于矩阵A的非对角线元素的平方和的负数。

然后,对J进行迭代计算,直到满足迭代终止条件。

最终得到的J的对角线元素就是矩阵A 的特征值。

雅可比法的优点是计算量相对较小,算法比较简单,可以直接计算特征值和特征向量。

但是,雅可比法的收敛速度较慢,对于大规模矩阵的计算效率较低。

2.幂法幂法是一种迭代算法,用于计算矩阵的最大特征值和对应的特征向量。

首先,随机选择一个非零向量b作为初值。

然后,迭代计算序列b,A*b,A^2*b,...,直到序列趋向于收敛。

最终,特征值是序列收敛时的特征向量的模长,特征向量是序列收敛时的向量。

幂法的优点是可以计算矩阵的最大特征值和对应的特征向量。

此外,幂法对于大规模矩阵的计算效率较高。

然而,幂法只能计算最大特征值,对于其他特征值的计算不适用。

三、特征值的应用1.特征值分解特征值分解是将一个矩阵分解为特征值和特征向量构成的对角矩阵的乘积。

特征值分解是一种重要的矩阵分解方法,它在信号处理、图像压缩、最优化等领域有广泛应用。

通过特征值分解,可以对矩阵进行降维处理、数据压缩和特征提取等操作。

2.矩阵的谱半径矩阵的谱半径是指矩阵的所有特征值的模的最大值。

谱半径在控制系统、网络分析和量子力学等领域有广泛的应用。

判断矩阵的公式

判断矩阵的公式

判断矩阵的公式
判断矩阵是用于判断或评估多个标准或因素之间相对重要性的一种工具。

判断矩阵的公式是用来计算矩阵的数值的。

下面是判断矩阵常用的计算公式:
1.极大特征值法(Maximum Eigenvalue Method):
o标准化特征向量法(Normalized Eigenvector Method):判断矩阵A的主特征向量的计算公式为:v = (1/n) *
A * w,其中n为矩阵的阶数,w为单位特征值对应
的特征向量。

o平均特征向量法(Average Eigenvector Method):判断矩阵A的每一列的平均特征向量的计算公式为:v
= (1/n) * Σ(A * w),其中n为矩阵的阶数,Σ表示对所
有特征值对应的特征向量进行求和,w为对应的特
征向量。

2.离差平均法(Average Deviation Method):公式为:v =
(1/n) * Σ(A * w),其中n为矩阵的阶数,Σ表示对所有特征
值对应的特征向量进行求和,w为对应的特征向量。

判断矩阵的计算公式根据不同的方法和理论有所差异,但都涉及计算特征值和特征向量,并进行归一化或平均化等处理。

具体应用时,可以根据实际情况和所采用的方法选择适合的计算公式。

幂法反幂法求解矩阵最大最小特征值及其对应的特征向量

幂法反幂法求解矩阵最大最小特征值及其对应的特征向量

幂法反幂法求解矩阵最大最小特征值及其对应的特征向量幂法和反幂法是求解矩阵最大最小特征值及其对应特征向量的常用方法。

在本文中,我们将详细介绍这两种方法的原理和具体实现。

一、幂法(Power Method)幂法是一种迭代算法,用于求解矩阵的最大特征值及其对应的特征向量。

其基本思想是通过多次迭代得到矩阵的一个特征值和特征向量的近似值,并使其逼近真实值。

幂法的原理如下:1.初始化一个非零向量b0作为初始特征向量;2.计算b0的归一化向量b0/,b0,得到新的向量b1;3.计算矩阵A和向量b1的乘积Ab1,得到新的向量b2;4.对b2进行归一化,得到新的向量b3;5.重复步骤3和步骤4,直到b的变化趋于稳定;6.计算矩阵A和向量b的乘积Ab,得到新的向量b;7.特征值的近似值λ=,Ab,/,b。

具体实现如下:1.初始化一个非零向量b0;2.迭代n次进行如下操作:a. 计算bn=A*bn-1;b. 将bn进行归一化,得到bn=bn/,bn;3. 计算特征值的近似值lambda=,A*bn,/,bn;4. 特征向量的近似值vbn=bn。

幂法的优点是计算简单、迭代次数少,但对于含有多个特征值接近的矩阵,可能会收敛到次大特征值。

二、反幂法(Inverse Power Method)反幂法是幂法的拓展,用于求解矩阵的最小特征值及其对应的特征向量。

其基本思想是通过多次迭代得到矩阵的一个特征值和特征向量的近似值,并使其逼近真实值。

反幂法的原理如下:1.初始化一个非零向量b0作为初始特征向量;2.计算b0的归一化向量b0/,b0,得到新的向量b1;3.计算矩阵A的逆矩阵Ai和向量b1的乘积Ai*b1,得到新的向量b2;4.对b2进行归一化,得到新的向量b3;5.重复步骤3和步骤4,直到b的变化趋于稳定;6.计算矩阵A的逆矩阵Ai和向量b的乘积Ai*b,得到新的向量b;7.特征值的近似值λ=,Ai*b,/,b。

具体实现如下:1.初始化一个非零向量b0;2.迭代n次进行如下操作:a. 计算bn=inv(A)*bn-1;b. 将bn进行归一化,得到bn=bn/,bn;3. 计算特征值的近似值lambda=,inv(A)*bn,/,bn;4. 特征向量的近似值vbn=bn。

最大特征值计算公式

最大特征值计算公式

最大特征值计算公式
最大特征值是矩阵特征值中最大的一个,它在数学、物理、工程、经济学等多个领域中都有广泛应用。

最大特征值的计算方法有多种,其中一种常见的是幂法求解法。

幂法求解法是一种基于迭代的方法,它通过不断对矩阵进行重复乘法来逼近最大特征值。

具体而言,该方法首先需要选择一个随机向量x作为初始向量,然后对矩阵A进行多次乘法,
得到一系列向量{x, Ax, A^2x, A^3x, ...},其中向量的长度可能
会发生变化。

在每次计算中,都需要将当前向量除以其范数,使其成为单位向量,然后用新向量与旧向量进行比较以判断算法是否已经收敛。

当新向量与旧向量的差值小于一个给定的容差时,算法即停止,此时新向量的方向即为最大特征值所对应的特征向量。

具体来说,幂法计算最大特征值的公式为:
λ = lim(k→∞) (Akx_k · x_k)/(x_k · x_k)
其中,λ为最大特征值,x_k为第k次迭代得到的向量,A为
待求解矩阵,k为迭代次数。

由于幂法计算的复杂度较低且具有较好的数值稳定性,在实际应用中得到了广泛的应用。

同时,该方法也存在一些限制,如会受到矩阵特征值分布的影响,可能会在某些情况下收敛缓慢,因此需要在实际应用中结合具体问题进行调优。

和法求矩阵最大特征值

和法求矩阵最大特征值

和法求矩阵最大特征值是一种常用的算法,用于求解大规模矩阵的最大特征值及其对应的特征向量。

这种方法的基本思想是将矩阵分解为若干个子矩阵,并将这些子矩阵的和作为输入,通过求解子矩阵的最大特征值来逐步逼近原矩阵的最大特征值。

具体来说,和法求矩阵最大特征值的基本步骤如下:
1. 将原矩阵分解为若干个子矩阵,通常选择主对角线上的子矩阵作为基本子矩阵。

2. 对于每个基本子矩阵,使用适当的算法(如Jacobi方法、SOR方法等)求解其最大特征值。

3. 将所有基本子矩阵的最大特征值相加得到一个近似值,该值即为原矩阵的最大特征值的近似值。

4. 重复步骤2和3,直到达到预定的精度要求或达到最大迭代次数。

在求解过程中,需要注意以下几点:
* 算法的收敛性:和法求矩阵最大特征值算法需要保证收敛到真实解,因此需要选择合适的算法和参数设置。

* 算法的稳定性:算法需要保证稳定运行,避免出现数值不稳定的情况。

* 矩阵分解的精度:分解的子矩阵大小和数量会影响到求解的精度和速度,需要根据实际情况进行选择。

总体来说,和法求矩阵最大特征值是一种常用的算法,适用于大规模矩阵的特征值求解问题。

通过将矩阵分解为若干个子矩阵并逐步逼近原矩阵的最大特征值,可以获得相对准确的解。

但是,该方法需要较长时间和计算资源,因此在处理大规模问题时需要权衡精度和效率。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

项目六 矩阵的特征值与特征向量实验1 求矩阵的特征值与特征向量实验目的学习利用Mathematica(4.0以上版本)命令求方阵的特征值和特征向量;能利用软件计算方 阵的特征值和特征向量及求二次型的标准形.求方阵的特征值与特征向量.例1.1 (教材 例1.1) 求矩阵.031121201⎪⎪⎪⎭⎫ ⎝⎛--=A 的特征值与特值向量.(1) 求矩阵A 的特征值. 输入A={{-1,0,2},{1,2,-1},{1,3,0}}MatrixForm[A]Eigenvalues[A]则输出A 的特征值{-1,1,1}(2) 求矩阵A 的特征向量. 输入A={{-1,0,2},{1,2,-1},{1,3,0}}MatrixForm[A]Eigenvectors[A]则输出 {{-3,1,0},{1,0,1},{0,0,0}}即A 的特征向量为.101,013⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎭⎫ ⎝⎛-(3) 利用命令Eigensystem 同时矩阵A 的所有特征值与特征向量. 输入A={{-1,0,2},{1,2,-1},{1,3,0}}MatrixForm[A]Eigensystem[A]则输出矩阵A 的特征值及其对应的特征向量.例1.2 求矩阵⎪⎪⎪⎭⎫ ⎝⎛=654543432A 的特征值与特征向量.输入A=Table[i+j,{i,3},{j,3}]MatrixForm[A](1) 计算矩阵A 的全部(准确解)特征值, 输入Eigenvalues[A]则输出{0, 426-,426+}(2) 计算矩阵A 的全部(数值解)特征值, 输入Eigenvalues[N[A]]则输出{12.4807, -0.480741, -1.34831610-⨯}(3) 计算矩阵A 的全部(准确解)特征向量, 输入Eigenvectors[A]//MatrixForm则输出(4) 计算矩阵A 的全部(数值解)特征向量, 输入Eigenvectors[N[A]]//MatrixForm则输出(5) 同时计算矩阵A 的全部(准确解)特征值和特征向量, 输入OutputForm[Eigensystem[A]]则输出所求结果(6) 计算同时矩阵A 的零空间, 输入NullSpace[A]则输出{{1,-2,1}}(7) 调入程序包<<LinearAlgebra`Orthogonalization`后,还可以做以下的运算:GramSchmidt[ ]:用Gram-Schmidt 过程将向量组单位正交化;Normalize[ ]:将向量组单位化;Projection[vect1,vect2]:求从向量组vect1到vect2的正交映射.输入<<LinearAlgebra ’Orthogonalization ’GramSchmidt[Eigenvectors[N[A]]]//MatrixForm则输出例1.3 求方阵⎪⎪⎪⎭⎫ ⎝⎛=633312321M 的特征值和特征向量.输入Clear[M];M={{1,2,3,},{2,1,3}{3,3,6}};Eigenvalues[M]Eigenvectors[M]Eigensystem[M]则分别输出{-1,0,9}{{-1,1,0},{-1,-1,1}{1,1,2}}{{-1,0,9},{{-1,1,0},{-1,-1,1}{1,1,2}}}例1.4 (教材 例1.2) 求矩阵⎪⎪⎪⎭⎫ ⎝⎛---=2163/115/12/13/13/1A 的特征值和特征向量的近似值.输入A={{1/3,1/3,-1/2},{1/5,1,-1/3},{6,1,-2}};Eigensystem[A]则屏幕输出的结果很复杂,原因是矩阵A 的特征值中有复数且其精确解太复杂.此时,可采用 近似形式输入矩阵A ,则输出结果也采用近似形式来表达.输入A={{1/3,1/3,-1/2},{1/5,1,-1/3},{6.0,1,-2}};Eigensystem[A]则输出{{-0.748989+1.27186i,-0.748989-1.27186i,0.831311},{{0.179905+0.192168i,0.116133+0.062477I,0.955675+0.i},{0.179905-0.192168i,0.116133-0.062477i,0.955675+0.i},{-0.0872248,-0.866789,-0.490987}}}从中可以看到A 有两个复特征值与一个实特征值.属于复特征值的特征向量也是复的;属于实 特征值的特征向量是实的.例1.5 (教材 例1.3) 已知2是方阵⎪⎪⎪⎭⎫ ⎝⎛=32131003t A 的特征值,求t .输入Clear[A,q];A={{2-3,0,0},{-1,2-t,-3},{-1,-2,2-3}};q=Det[A]Solve[q==0,t]则输出{{t →8}}即当8=t 时,2是方阵A 的特征值.例1.6 (教材 例1.4) 已知)1,1,1(-=x 是方阵⎪⎪⎪⎭⎫ ⎝⎛---=2135212b a A 的一个特征向量,求参数b a ,及特征向量x 所属的特征值.设所求特征值为t ,输入Clear[A,B,v,a,b,t];A={{t-2,1,-2},{-5,t-a,-3},{1,-b,t+2}};v={1,1,-1};B=A.v;Solve[{B[[1]]==0,B[[2]]==0,B[[3]]==0},{a,b,t}]则输出{{a →-3, b →0, t →-1}}即0,3=-=b a 时,向量)1,1,1(-=x 是方阵A 的属于特征值-1和特征向量.矩阵的相似变换例1.7 (教材 例1.5) 设矩阵⎪⎪⎪⎭⎫ ⎝⎛=222222114A ,求一可逆矩阵P ,使AP P 1-为对角矩阵.方法1 输入Clear[A,P];A={{4,1,1},{2,2,2},{2,2,2}};Eigenvalues[A]P=Eigenvectors[A]//Transpose则输出{0,2,6}{{0,-1,1},{-1,1,1},{1,1,1}}即矩阵A 的特征值为0,2,6.特征向量为⎪⎪⎪⎭⎫ ⎝⎛-110,⎪⎪⎪⎭⎫ ⎝⎛-111与⎪⎪⎪⎭⎫ ⎝⎛111,矩阵⎪⎪⎪⎭⎫ ⎝⎛--=111111110P .可验证AP P 1-为对角阵, 事实上,输入Inverse[P].A.P则输出{{0,0,0},{0,2,0},{0,0,6}}因此,矩阵A 在相似变换矩阵P 的作用下,可化作对角阵.方法2 直接使用JordanDecomposition 命令, 输入jor=JordanDecomposition[A]则输出{{{0,-1,1},{-1,1,1},{1,1,1}},{{0,0,0},{0,2,0},{0,0,6}}}可取出第一个矩阵S 和第二个矩阵Λ,事实上,输入jor[[1]]jor[[2]]则输出{{0,-1,1},{-1,1,1},{1,1,1}}{{0,0,0},{0,2,0},{0,0,6}}输出结果与方法1的得到的结果完全相同.例1.8 方阵⎪⎪⎭⎫ ⎝⎛=1201A 是否与对角阵相似? 输入Clear[A];A={{1,0},{2,1}};Eigensystem[A]输出为{{1,1},{{0,1}{0,0}}}于是,1是二重特征值,但是只有向量{0,1}是特征向量,因此,矩阵A 不与对角阵相似.例1.9 (教材 例1.6) 已知方阵⎪⎪⎪⎭⎫ ⎝⎛-=11322002x A 与⎪⎪⎪⎭⎫ ⎝⎛-=y B 00020001相似, 求y x ,.注意矩阵B 是对角矩阵,特征值是y ,2,1-.又矩阵A 是分块下三角矩阵,-2是矩阵A 的特 征值.矩阵A 与B 相似,则2-=y ,且-1,2也是矩阵A 的特征值.输入Clear[c,v];v={{4,0,0},{-2,2-x,-2},{-3,-1,1}};Solve[Det[v]==0,x]则输出{{x →0}}所以,在题设条件,0=x ,2-=y .例1.10 对实对称矩阵⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=2000001101010110A ,求一个正交阵P ,使AP P 1-为对角阵. 输入<<LinearAlgebra\OrthogonalizationClear[A,P]A={{0,1,1,0 },{1,0,1,0},{1,1,0,0},{0,0,0,2}};Eigenvalues[A]Eigenvectors[A]输出的特征值与特征向量为{-1,-1,2,2}{{-1,0,1,0},{-1,1,0,0},{0,0,0,1},{1,1,1,0}}再输入P=GramSchmidt[Eigenvectors[A]]//Transpose输出为已经正交化和单位化的特征向量并且经转置后的矩阵P为了验证P 是正交阵,以及AP P AP p T =-1是对角阵,输入Transpose[P].PInverse[P].A.P//SimplifyTranspose[P].A.P//simplify则输出{{1,0,0,0},{0,1,0,0},{0,0,1,0},{0,0,0,1}}{{-1,0,0,0},{0,-1,0,0},{0,0,2,0},{0,0,0,2}}{{-1,0,0,0},{0,-1,0,0},{0,0,2,0},{0,0,0,2}}第一个结果说明E P P T =,因此P 是正交阵;第二个与第三个结果说明例1.11 求一个正交变换,化二次型243231212222x x x x x x x f +++=为标准型.二次型的矩阵为这恰好是例1.10的矩阵, 因此,用例1.10中的正交矩阵P ,作正交变换PY X =,即将f 化作标准型.输入f=Table[x[j],{j,4}].A.Table[x[j],{j,4}]//Simplify则输出2(x[2]x[3]+x[1](x[2]+x[3])+x[4]2)这是原来的二次型f .把上式中的x[1],x[2],x[3],x[4]用y[1],y[2],y[3],y[4]表示,输入代换命令f/.Table[x[j]→(P.Table[y[j],{j,4}])[[j]],{j,4}]//Simplify则输出-y[1]2-y[2]2 +2(y[3]2 +y[4]2)这就是二次型f 的标准型.例1.12 (教材 例1.7) 已知二次型(1)求标准形; (2)求正惯性指数; (3)判断二次型是否正定.输入A={{1,1,-2},{1,-2,1},{-2,1,1}}Eigenvalues[A]则输出矩阵A 的特征值为{-3,0,3}所以二次型的标准形为222133y y f +=;正惯性指数为1;该二次型不是正定的. 例1.13 (教材 例1.8) 求正交变换将二次型化为标准形.输入A={{1,1,0,-1},{1,1,1,0},{0,1,1,-1},{-1,0,-1,1}}MatrixForm[A]X={x1,x2,x3,x4};Expand[<<LinearAlgebra\Orthogonalization.mP=GramSchmidt[Eigenvectors[A]]则输出所求的正交变换矩阵P 与二次型矩阵A 标准形. 从结果知, 所求二次型的标准型为实验2 层次分析法实验目的通过应用层次分析法解决一个实际问题,学习层次分析法的基本原理与方法;掌握用层次 分析法建立数学模型的基本步骤;学会用Mathematica 解决层次分析法中的数学问题.基本原理层次分析法是系统分析的重要工具之一,其基本思想是把问题层次化、数量化, 并用数学 方法为分析、决策、预报或控制提供定量依据. 它特别适用于难以完全量化, 又相互关联、 相互制约的众多因素构成的复杂问题. 它把人的思维过程层次化、数量化,是系统分析的一中 新型的数学方法.运用层次分析法建立数学模型, 一般可按如下四个基本步骤进行.1.建立层次结构首先对所面临的问题要掌握足够的信息, 搞清楚问题的范围、因素、各因素之间的相互 关系,及所要解决问题的目标. 把问题条理化、层次化, 构造出一个有层次的结构模型. 在这 个模型下,复杂问题被分解为元素的组成部分. 这些元素又按其属性及关系形成若干层次.层 次结构一般分三层:第一层为最高层, 它是分析问题的预定目标和结果, 也称目标层;第二层为中间层, 它是为了实现目标所涉及的中间环节, 如: 准则、子准则, 也称准则 层;第三层为最底层, 它包括了为实现目标可供选择的各种措施、决策方案等, 也称方案层. 注:上述层次结构具有以下特点:(1) 从上到下顺序地存在支配关系, 并用直线段表示;(2) 整个层次结构中层次数不受限制.2.构造判断矩阵构造判断矩阵是建立层次分析模型的关键. 假定以上一层的某元素y 为准则,它所支配 的下一层次的元素为n x x x ,,,21 ,这n 个元素对上一层次的元素y 有影响,要确定它们在y 中的比重. 采用成对比较法. 即每次取两个元素i x 和j x , 用ij a 表示i x 与j x 对y 的影响之比, 全部比较的结果可用矩阵A 表示,即称矩阵A 为判断矩阵.根据上述定义,易见判断矩阵的元素ij a 满足下列性质:当0 ij a 时,我们称判断矩阵A 为正互反矩阵.怎样确定判断矩阵A 的元素ij a 的取值呢?当某层的元素n x x x ,,,21 对于上一层某元素y 的影响可直接定量表示时, i x 与j x 对y 的影响之比可以直接确定, ij a 的值也可直接确定. 但对于大多数社会经济问题, 特别是比较 复杂的问题, 元素i x 与j x 对y 的重要性不容易直接获得, 需要通过适当的量化方法来解决. 通常取数字1~9及其倒数作为ij a 的取值范围. 这是因为在进行定性的成对比较时, 通常采用5级制(表1),在每两个等级之间各有一个中间状态, 共1~9个尺度, 另外心理学家认为进行成 对比较的因素太多, 将超出人们的判断比较能力, 降低精确. 实践证明, 成对比较的尺度以 27±为宜, 故ij a 的取值范围是9,,2,1 及其倒数.表1 比较尺度ij a 的取值3.计算层次单排序权重并做一致性检验层次单排序是指同一层次各个元素对于上一层次中的某个元素的相对重要性进行排序. 具体做法是: 根据同一层n 个元素n x x x ,,,21 对上一层某元素y 的判断矩阵A ,求出它们对 于元素y 的相对排序权重,记为n w w w ,,,21 ,写成向量形式T n w w w w ),,,(21 =, 称其为A 的层次单排序权重向量, 其中i w 表示第i 个元素对上一层中某元素y 所占的比重, 从而得到层次单排序.层次单排序权重向量有几种求解方法,常用的方法是利用判断矩阵A 的特征值与特征向 量来计算排序权重向量w .关于正互反矩阵A ,我们不加证明地给出下列结果.(1) 如果一个正互反矩阵n n ij a A ⨯=)(满足则称矩阵A 具有一致性, 称元素k j i x x x ,,的成对比较是一致的; 并且称A 为一致矩阵.(2) n 阶正互反矩阵A 的最大特征根n ≥max λ, 当n =λ时, A 是一致的.(3) n 阶正互反矩阵是一致矩阵的充分必要条件是最大特征值 n =max λ.计算排序权重向量的方法和步骤设T n w ),,,(21ωωω =是n 阶判断矩阵的排序权重向量, 当A 为一致矩阵时, 根据n 阶判断矩阵构成的定义,有⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=n n n n n n A ωωωωωωωωωωωωωωωωωω212221212111 (2.1) 因而满足,nw Aw = 这里n 是矩阵A 的最大特征根, w 是相应的特征向量; 当A 为一般的 判断矩阵时w Aw max λ=, 其中max λ是A 的最大特征值(也称主特征根), w 是相应的特征向 量(也称主特征向量). 经归一化(即11=∑=n i i ω)后, 可近似作为排序权重向量, 这种方法称为特征根法.一致性检验在构造判断矩阵时, 我们并没有要求判断矩阵具有一致性, 这是由客观事物的复杂性 与人的认识的多样性所决定的. 特别是在规模大、因素多的情况下, 对于判断矩阵的每个元 素来说,不可能求出精确的j i ωω/, 但要求判断矩阵大体上应该是一致的. 一个经不起推敲 的判断矩阵有可能导致决策的失误. 利用上述方法计算排序权重向量, 当判断矩阵过于偏离 一致性时, 其可靠性也有问题. 因此,需要对判断矩阵的一致性进行检验, 检验可按如下步骤 进行:(1) 计算一致性指标CI 1max --=n n CI λ (2.2) 当,0=CI 即n =maxλ时, 判断矩阵A 是一致的. 当CI 的值越大, 判断矩阵A 的不一致的程 度就越严重.(2) 查找相应的平均随机一致性指标RI表2给出了n )11~1(阶正互反矩阵的平均随机一致性指标RI , 其中数据采用了 100~150个随机样本矩阵A 计算得到.RICI CR =(2.3) 当10.0<CR 时, 认为判断矩阵的一致性是可以接受的; 否则应对判断矩阵作适当修正.4. 计算层次总排序权重并做一致性检验计算出某层元素对其上一层中某元素的排序权重向量后, 还需要得到各层元素, 特别 是最底层中各方案对于目标层的排序权重, 即层次总排序权重向量, 再进行方案选择. 层次 总排序权重通过自上而下地将层次单排序的权重进行合成而得到.考虑3个层次的决策问题: 第一层只有1个元素, 第二层有n 个元素, 第三层有m 个元 素.设第二层对第一层的层次单排序的权重向量为第三层对第二层的层次单排序的权重向量为 以)3(k w 为列向量构成矩阵:n m nm m mn n n w w w w w w w w w w w w W ⨯⎪⎪⎪⎪⎪⎭⎫ ⎝⎛==)3()3(2)3(1)3(2)3(22)3(12)3(1)3(21)3(11)3()3(2)3(1)3(,,,,,,,,,,,),,,( (2.4) 则第三层对第一层的层次总排序权重向量为)2()3()3(w W w = (2.5)一般地, 若层次模型共有s 层, 则第k 层对第一层的总排序权重向量为 s k w W w k k k ,,4,3,)1()()( ==- (2.6) 其中)(k W 是以第k 层对第1-k 层的排序权向量为列向量组成的矩阵,)1(-k w 是第1-k 层对第 一层的总排序权重向量. 按照上述递推公式, 可得到最下层(第s 层)对第一层的总排序权重 向量为)2()3()1()()(w W W W w s s s -=(2.7) 对层次总排序权重向量也要进行一致性检验. 具体方法是从最高层到最低层逐层进行 检验.如果所考虑的层次分析模型共有s 层. 设第l (s l ≤≤3)层的一致性指标与随机一致性指标分别为)()(2)(1,,,l n l l CI CI CI (n 是第1-l 层元素的数目)与)()(2)(1,,,l n l l RI RI RI , 令)1()(1)(1)(],,[-=l l l l w CI CI CI (2.8))1()(1)(1)(],,[-=l l l l w RI RI RI(2.9)则第l 层对第一层的总排序权向量的一致性比率为s l RI CI CR CR l l l l ,,4,3,)()()1()( =+=- (2.10)其中)2(CR 为由(2.3)式计算的第二层对第一层的排序权重向量的一致性比率.当最下层对第一层的总排序权重向量的一致性比率1.0)(<s CR 时, 就认为整个层次结构 的比较判断可通过一致性检验.应用举例问题 在选购电脑时, 人们希望花最少的钱买到最理想的电脑. 试通过层次分析法建立 数学模型,并以此确定欲选购的电脑.1. 建立选购电脑的层次结构模型图2-2该层次结构模型共有三层:目标层(用符号z 表示最终的选择目标); 准则层(分别用符号521,,,y y y 表示“性能”、“价格”、“质量”、“外观”、“售后服务”五个判断准则); 方案层(分别用符号321,,x x x 表示品牌1, 品牌2, 品牌3三种选择方案).2.构造成对比较判断矩阵(1) 建立准则层对目标层的成对比较判断矩阵根据表1的定量化尺度, 从建模者的个人观点出发, 设准则层对目标层的成对比较判断矩阵为⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=13123/13/113/12/19/113123/12/122/115/139351A(2.11) (2) 建立方案层对准则层的成对比较判断矩阵3.计算层次单排序权重向量并做一致性检验先利用Mathematica 计算矩阵A 的最大特征值及特征值所对应的特征向量. 输入<<Miscellaneous\RealOnly.m(*调用只求实数运算的软件包*)A={{1.0,5,3,9,3},{1/5,1,1/2,2,1/2},{1/3,2,1,3,1},{1/9,1/2,1/3,1,1/3},{1/3,2,1,3,1}};(*以小数形式1.0输入进行近似计算, 可避免精确解太长、太复杂*) T=Eigensystem[A]//Chop(*输入//Chop, 把与零非常接近的数换成零*)则输出{{5.00974,Nonreal,Nonreal,0,0},{{0.88126,0.167913,0.304926,0.0960557,0.304926}, {0.742882,Nonreal,Nonreal,Nonreal,Nonreal}, {0.742882,Nonreal,Nonreal,Nonreal,Nonreal}, {-0.993398,0,0.0673976,0.0662265,0.0650555}, {-0.65676,0,0.57431,0.043784,-0.486742}}} (输出中的Nonreal 表示复数)从中得到A 的最大特征值,00974.5max =λ及其对应的特征向量输入Clear[x]; x=T[[2,1]];ww2=x/Apply[Plus,x]则得到归一化后的特征向量计算一致性指标1max --=n nCI λ,其中,00974.5,5max ==λn 故查表得到相应的随机一致性指标 从而得到一致性比率因,1.0)2(<CR 通过了一致性检验,即认为A 的一致性程度在容许的范围之内, 可以用归一 化后的特征向量)2(w 作为排序权重向量. 下面再求矩阵)5,,2,1( =j B j 的最大特征值及特征值所对应的特征向量, 输入B1=B3={{1.0,1/3,1/5},{3,1,1/2},{5,2,1}};B2=Transpose[B1];B4={{1.0,5,3},{1/5,1,1/2},{1/3,2,1}}; B5={{1.0,3,3},{1/3,1,1},{1/3,1,1}}; T1=Eigensystem[B1]//Chop T2=Eigensystem[B2]//Chop T3=Eigensystem[B3]//Chop T4=Eigensystem[B4]//Chop T5=Eigensystem[B5]//Chop则输出 {{3.00369,Nonreal, Nonreal}, {{0.163954,0.46286,0.871137},{ Nonreal, Nonreal,0.871137}, { Nonreal, Nonreal, 0.871137}}}; {{3.00369,Nonreal, Nonreal}, {{0.928119,0.328758,0.174679}, {0.928119, Nonreal, Nonreal}, {0.928119, Nonreal, Nonreal}}} {{3.00369, Nonreal, Nonreal}, {{0.163954,0.46286,0.871137}, { Nonreal, Nonreal,0.871137}, { Nonreal, Nonreal,0.871137}}} {{3.00369, Nonreal, Nonreal},{{0.928119,0.174679,0.328758}, {0.928119, Nonreal, Nonreal}, {0.928119, Nonreal, Nonreal}}} {{3,0,0},{{0.904534,0.301511,0.301511}, {-0.973329,0.162221,0.162221}, {-0.170182,-0.667851,0.724578}}从上面的输出可以分别得到)5,,2,1( =j B j 的最大特征值 以及上述特征值所对应的特征向量其中.5,,2,1),,,(321 ==i x x x x i i i i 为求出归一化后的特征向量, 输入Clear[x1,x2,x3,x4,x5]; x1=T1[[2,1]]; w1=x1/Apply[Plus,x1] x2=T2[[2,1]]; w2=x2/Apply[Plus,x2] x3=T3[[2,1]]; w3=x3/Apply[Plus,x3] x4=T4[[2,1]]; w4=x4/Apply[Plus,x4] x5=T5[[2,1]]; w5=x5/Apply[Plus,x5]则输出计算一致性指标)5,,2,1(1=--=i n nCI i i λ,其中,3=n 输入lamda={T1[[1,1]],T2[[1,1]],T3[[1,1]],T4[[1,1]],T5[[1,1]]} CI=(lamda-3)/(3-1)//Chop则输出查表得到相应的随机一致性指标计算一致性比率5,,2,1, ==i RI CI CR iii ,输入CR=CI/0.58则输出因),5,,2,1(,1.0 =<i CR i 通过了一致性检验. 即认为)5,,2,1( =j B j 的一致性程度在容许的范围之内, 可以用归一化后的特征向量作为其排序权重向量.4. 计算层次总排序权重向量并做一致性检验 购买个人电脑问题的第三层对第二层的排序权重计算结果列于表3.表3以矩阵表示第三层对第二层的排序权重计算结果为)3(W 即是第三层对第二层的权重向量为列向量组成的矩阵. 最下层(第三层)对最上层(第一层)的总排序权向量为 为了计算上式, 输入W3=Transpose[{w1,w2,w3,w4,w5}]; ww3=W3.ww2则从输出结果得到 为了对总排序权向量进行一致性检验, 计算 输入CI.ww2 则从输出结果得到再计算)2(51)3(],,[w RI RI RI =,输入RI=Table[0.58,{j,5}]; RI.ww2则从输出结果得到最后计算 )3()3()2()3(./...I R I C R C R C +=,可得因为,1.0.)3(<R C 所以总排序权重向量符合一致性要求的范围.根据总排序权重向量的分量取值, 品牌3的电脑是建模者对这三种品牌机的首选. 实验报告1.根据你的设想购置一台计算机, 需考虑什么样的判断准则? 利用层次分析法及数学 软件做出最佳的决策.2.根据你的经历设想如何报考大学, 需要什么样的判断准则? 利用层次分析法及数学软件做出最佳的决策.3.假期到了, 某学生打算做一次旅游, 有四个地点可供选择, 假定他要考虑5个因素: 费用、景色、居住条件、饮食以及旅游条件. 由于该学生没有固定收入, 他对费用最为看重, 其次是旅游点的景色, 至于旅游条件、饮食, 差不多就行, 住什么地方就更无所谓了. 这四个旅游点没有一个具有明显的优势, 而是各有优劣. 该同学拿不定主意, 请用层次分析法帮助他找出最佳旅游点.4. 假设你马上就要从大学毕业, 正面临择业的问题, 你对工作的选择着重考虑下面几个因素: (1)单位的声誉; (2)收入; (3)专业是否对口; (4)是否有机会深造或晋升; (5)工作地点;(6)休闲时间. 对上述各种因素你可以根据自己的具体情况排序,也可以增加或减少所考虑的因素. 现在有四个单位打算你, 但如果用上述标准来衡量,没有一个单位具有明显的优势,请用层次分析法为你自己做一个合理的选择.。

相关文档
最新文档