判断矩阵的最大特征值
- 格式:doc
- 大小:446.50 KB
- 文档页数:15
项目六 矩阵的特征值与特征向量实验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、图像处理:矩阵特征值在图像处理中有着重要的应用,通过分解一张图像对应的矩阵的特征值和特征向量,可以将原图像进行降维处理,从而达到图像压缩和图像增强的目的。
矩阵特征值的计算一、特征值的定义和性质矩阵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 求矩阵的特征值及特征向量实验目的学习利用Mathematica(4.0以上版本)命令求方阵的特征值和特征向量;能利用软件计算方阵的特征值和特征向量及求二次型的标准形.求方阵的特征值及特征向量.例1.1 (教材例1.1) 求矩阵的特征值及特值向量.(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的特征向量为(3) 利用命令Eigensystem同时矩阵A的所有特征值及特征向量.输入A={{-1,0,2},{1,2,-1},{1,3,0}}MatrixForm[A]Eigensystem[A]则输出矩阵A的特征值及其对应的特征向量.例1.2 求矩阵的特征值及特征向量.输入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则输出12117242 2344220342 23442117242 2344220342 234421(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求方阵的特征值和特征向量.输入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)求矩阵的特征值和特征向量的近似值.输入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是方阵的特征值,求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}}即当8t时,2是方阵A的特征值.=例1.6(教材例1.4)已知)1x是方阵的一个特征向量,求参数ba,及特征向量x所=,1,1(-属的特征值.设所求特征值为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,1,1(-=a时,向量)1x是方阵A的属于特征值-1和特征向量.=b,3=-矩阵的相似变换例1.7(教材例1.5)设矩阵,求一可逆矩阵P,使APP1-为对角矩阵.方法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,矩阵.可验证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 方阵是否及对角阵相似? 输入Clear[A]; A={{1,0},{2,1}}; Eigensystem[A]输出为{{1,1},{{0,1}{0,0}}}于是,1是二重特征值,但是只有向量{0,1}是特征向量,因此,矩阵A 不及对角阵相似.例1.9 (教材 例1.6) 已知方阵及相似, 求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 对实对称矩阵,求一个正交阵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 +++=为标准型.二次型的矩阵为这恰好是例1.10的矩阵, 因此,用例1.10中的正交矩阵P ,作正交变换PY X =,即⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭⎫ ⎝⎛---=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛43214321010031061213103203106121y y y y x x x 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) 已知二次型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阶判断矩阵构成的定义,有 (2.1)因而满足,nw Aw = 这里n 是矩阵A 的最大特征根, w 是相应的特征向量; 当A 为一般的 判断矩阵时w Aw max λ=, 其中max λ是A 的最大特征值(也称主特征根), w 是相应的特征向 量(也称主特征向量). 经归一化(即)后, 可近似作为排序权重向量, 这种方法称为 特征根法.一致性检验 在构造判断矩阵时, 我们并没有要求判断矩阵具有一致性, 这是由客观事物的复杂性 及人的认识的多样性所决定的. 特别是在规模大、因素多的情况下, 对于判断矩阵的每个元 素来说,不可能求出精确的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 T kn 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]//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 的最大特征值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.表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=Table[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)休闲时间. 对上述各种因素你可以根据自己的具体情况排序,也可以增加或减少所考虑的因素. 现在有四个单位打算你, 但如果用上述标准来衡量,没有一个单位具有明显的优势,请用层次分析法为你自己做一个合理的选择.。
矩阵的特征向量及最大特征值
当我们涉及矩阵的特征向量和最大特征值时,我们进入了数学的神奇世界。
矩阵的特征向量是指矩阵在一定变换下保持方向不变的向量,而最大特征值则代表了这个变换的最大放大倍数。
这些概念虽然抽象,但却蕴含着数学的美和深刻的意义。
特征向量和最大特征值可以帮助我们理解矩阵的性质和行为。
它们在各个领域都有广泛的应用,例如在物理学中,用于描述物体的旋转和振动;在工程学中,用于分析电路和结构的稳定性;甚至在计算机科学中,用于图像处理和数据压缩等领域。
特征向量是矩阵的重要属性,它们具有与矩阵的变换性质密切相关的信息。
通过找到矩阵的特征向量,我们可以了解矩阵的变换效果和特点。
特征向量可以是实数向量,也可以是复数向量,它们对应着不同的变换效果。
而最大特征值则是这些变换中最重要的指标,它决定了变换的放大倍数,从而影响了矩阵的稳定性和行为。
矩阵的特征向量和最大特征值饱含着数学的美妙和智慧。
它们是我们理解和解决实际问题的重要工具。
无论是在科学研究中,还是在工程实践中,我们都需要运用这些概念来分析和解决问题。
通过深入理解特征向量和最大特征值,我们可以更好地把握事物的本质和规律。
矩阵的特征向量和最大特征值是数学中的重要概念,它们代表了矩
阵的变换性质和行为。
通过研究和应用这些概念,我们可以更好地理解和解决实际问题。
无论是在学术研究中,还是在工程实践中,我们都需要深入探索这些概念,以提升我们的数学水平和解决问题的能力。
让我们一起投入到这个充满挑战和乐趣的数学世界中吧!。
常见的矩阵范数矩阵范数是衡量矩阵性质的一种重要指标,常见的矩阵范数有谱范数、F范数、1范数和∞范数等。
本文将从不同的角度探讨这些矩阵范数的定义、特性以及其在实际问题中的应用。
一、谱范数谱范数是矩阵的最大奇异值,用于衡量矩阵的最大特征值。
谱范数的定义为矩阵A的最大奇异值,即∥A∥2=max│λi│,其中λi表示矩阵A的第i个特征值。
谱范数具有以下性质:1. 非负性:对于任意矩阵A,有∥A∥2≥0。
2. 齐次性:对于任意标量k和矩阵A,有∥kA∥2=|k|∥A∥2。
3. 三角不等式:对于任意两个矩阵A和B,有∥A+B∥2≤∥A∥2+∥B∥2。
谱范数在实际问题中的应用非常广泛,例如在图像处理中,可以使用谱范数来衡量图像的清晰度;在机器学习中,可以使用谱范数来衡量模型的复杂度。
二、F范数F范数是矩阵的元素绝对值平方和的平方根,用于衡量矩阵的离散程度。
F范数的定义为矩阵A的元素绝对值平方和的平方根,即∥A∥F=√(∑|aij|^2),其中aij表示矩阵A的第i行第j列的元素。
F范数具有以下性质:1. 非负性:对于任意矩阵A,有∥A∥F≥0。
2. 齐次性:对于任意标量k和矩阵A,有∥kA∥F=|k|∥A∥F。
3. 三角不等式:对于任意两个矩阵A和B,有∥A+B∥F≤∥A∥F+∥B∥F。
F范数在实际问题中的应用也非常广泛,例如在图像处理中,可以使用F范数来衡量图像的噪声程度;在推荐系统中,可以使用F范数来衡量用户对商品的评分矩阵的稀疏程度。
三、1范数和∞范数1范数和∞范数分别是矩阵的列和行绝对值之和的最大值,用于衡量矩阵的稀疏程度。
1范数的定义为矩阵A的列绝对值之和的最大值,即∥A∥1=max(∑|aij|),其中∑表示对所有列求和;∞范数的定义为矩阵A的行绝对值之和的最大值,即∥A∥∞=max(∑|aij|),其中∑表示对所有行求和。
1范数和∞范数具有以下性质:1. 非负性:对于任意矩阵A,有∥A∥1≥0,∥A∥∞≥0。
矩阵特征值的求法举例矩阵的特征值是矩阵在特征向量上的变化率,可以用于矩阵的分析和求解问题。
在数学中,特征值的求法有不同的方法,下面举例介绍其中几种常用的方法。
1. 幂迭代法幂迭代法是求解矩阵最大特征值的一种常用方法。
假设A是一个n阶方阵,且有一个特征值λ1使得|λ1|>|λ2|≥|λ3|≥...≥|λn|,那么在随机选取的一个m维向量x0上进行迭代操作,可以得到一个序列x1、x2、…、xm,最终收敛到特征值为λ1的特征向量。
具体迭代过程如下:(1) 选取一个初始向量x0,进行归一化处理: x0 = x0 / ||x0||(2) 迭代计算xm的值: xm = Axm-1(3) 对xm进行归一化处理: xm = xm / ||xm||(4) 判断结束条件:判断向量xm与xm-1的差别是否小于一个给定的阈值,如果是则结束迭代,返回最终结果。
2. Jacobi方法Jacobi方法是一种迭代方法,用于求解对称矩阵的全部特征值和特征向量。
假设有一个n阶实对称矩阵A,那么Jacobi方法的步骤如下:(1) 将A初始化为对角矩阵,即通过旋转操作将非对角元素都变为0: A' = R^TAR(2) 计算A'的非对角线元素的绝对值之和,如果小于一个给定的阈值,则结束迭代,返回矩阵A'的对角线元素作为矩阵A的特征值的近似解。
(3) 否则,选择一个非对角元素a_ij的绝对值最大的位置(i,j),对矩阵A'进行旋转操作,使a_ij=0。
(4) 返回步骤(2)。
(1) 初始化矩阵A: A0 = A(2) 对矩阵A0进行QR分解,得到A0=Q1R1。
(3) 计算A0的近似第一特征值λ1的估计值:λ1 = R1(n,n)。
(4) 将A0更新为A1: A1 = R1Q1。
(5) 判断矩阵A1是否满足结束条件,如果是则迭代结束,返回A1的对角线元素作为矩阵A的特征值的近似解。
(6) 否则,返回步骤(2)。
【导语】矩阵是线性代数中的重要概念,而在matlab中,对矩阵的操作及特殊值的定位是常见的需求。
本文将介绍matlab中矩阵特殊值的定位方法,包括矩阵中的零元素、最大最小值、特征值等内容。
【正文】一、矩阵中零元素的定位在matlab中,使用`find`函数可以找到矩阵中的零元素。
对于一个矩阵A,可以使用`[row, col] = find(A == 0)`来找到所有零元素的位置。
二、矩阵中最大最小值的定位1. 寻找最大最小值的位置使用`[val, ind] = max(A(:))`可以找到矩阵A中的最大值及其位置,而使用`[val, ind] = min(A(:))`可以找到矩阵A中的最小值及其位置。
2. 寻找每行/每列的最大最小值如果需要找到矩阵每行或每列的最大值及其位置,可以使用`[val, ind] = max(A,[],dim)`和`[val, ind] = min(A,[],dim)`,其中dim为1代表对每列进行操作,dim为2代表对每行进行操作。
三、矩阵特征值的定位使用`eig`函数可以找到矩阵的特征值,例如对于一个矩阵A,可以使用`eig(A)`来求解其特征值。
可以使用`eig`函数结合一些其他函数,如`sort`、`max`等,来对特征值进行进一步的定位。
四、稀疏矩阵特殊值的定位在处理大规模稀疏矩阵时,可以使用`find`函数来找到非零元素的位置,然后结合一些其他函数,如`max`、`min`等,来定位特殊值。
五、矩阵特殊值的可视化除了直接找到特殊值的位置外,还可以通过可视化的方式来展示矩阵的特殊值分布情况。
例如可以使用`imagesc`函数来绘制矩阵的热图,颜色深浅表示元素大小,从而直观地展示矩阵的特殊值分布情况。
【结语】本文介绍了matlab中矩阵特殊值的定位方法,包括零元素、最大最小值、特征值等的定位及可视化,希望能帮助读者更好地理解和应用matlab中矩阵的操作。
扩写:六、矩阵中特殊值的进一步处理除了定位特殊值之外,我们还可以对这些特殊值进行进一步的处理。
幂法反幂法求解矩阵最大最小特征值及其对应的特征向量幂法是一种迭代算法,用于求解矩阵的最大特征值及其对应的特征向量。
反幂法是幂法的一种变体,用于求解矩阵的最小特征值及其对应的特征向量。
两种方法在求解特征值问题时有相似的步骤,但反幂法需要对矩阵进行一定的变换。
幂法的基本思想是通过不断迭代的方式逼近矩阵的最大特征值及其对应的特征向量。
求解的过程如下:1.随机选择一个初始向量x0,并进行归一化,即使其模长为12. 根据公式计算新的向量xk+1 = Axk,其中A为待求解特征值的矩阵。
3. 对xk+1进行归一化。
4. 计算矩阵A关于xk+1的雷神特征值λk+1 = (Axk+1)·xk+1 / xk+1·xk+1,其中·表示向量的内积。
5.重复步骤2至4,直到满足收敛条件。
幂法的收敛条件一般是设置一个精度,当迭代的过程中特征向量的变化小于该精度时,认为结果已经收敛。
最终得到的特征值就是矩阵A的最大特征值,对应的特征向量为收敛时的xk+1反幂法是对幂法的一种改进,用于求解矩阵的最小特征值及其对应的特征向量。
反幂法的基本思想是通过将矩阵A的特征值问题转化为矩阵B=(A-μI)^-1的特征值问题来求解,其中μ为一个非常接近待求解特征值的数。
求解的过程如下:1.随机选择一个初始向量x0,并进行归一化,即使其模长为12. 根据公式求解新的向量xk+1 = (A-μI)^-1xk,其中A为待求解特征值的矩阵,μ为一个非常接近待求解特征值的数。
3. 对xk+1进行归一化。
4. 计算矩阵B关于xk+1的雷神特征值λk+1 = (Bxk+1)·xk+1 / xk+1·xk+1,其中·表示向量的内积。
5.重复步骤2至4,直到满足收敛条件。
反幂法的收敛条件与幂法相似,一般也是设置一个精度。
最终得到的特征值就是矩阵A的最小特征值,对应的特征向量为收敛时的xk+1总结:幂法和反幂法是求解矩阵最大最小特征值的常用迭代算法。
数值计算解矩阵的按模最大最小特征值及对应的特征向量一.幂法1. 幂法简介:当矩阵A 满足一定条件时,在工程中可用幂法计算其主特征值(按模最大)及其特征向量。
矩阵A 需要满足的条件为:(1) 存在n 个线性无关的特征向量,设为n x x x ,...,,211.1计算过程:i n i i i u xx αα,1)0()0(∑==,有对任意向量不全为0,则有 可见,当||12λλ越小时,收敛越快;且当k 充分大时,有1)1111)11111λαλαλ=⇒⎪⎩⎪⎨⎧==+++(k )(k k (k k )(k x x u x u x ,对应的特征向量即是)(k x 1+。
2 算法实现3 matlab 程序代码function [t,y]=lpowerA,*0,eps,N) % t 为所求特征值,y 是对应特征向量k=1;z=0; % z 相当于λy=*0./ma*(abs(*0)); % 规化初始向量*=A*y; % 迭代格式b=ma*(*); % b 相当于 βif abs(z-b)<eps % 判断第一次迭代后是否满足要求t=ma*(*);return ;endwhile abs(z-b)>eps && k<Nk=k+1;z=b;y=*./ma*(abs(*));*=A*y;b=ma*(*);end[m,inde*]=ma*(abs(*)); % 这两步保证取出来的按模最大特征值t=*(inde*); % 是原值,而非其绝对值。
end4 举例验证选取一个矩阵A ,代入程序,得到结果,并与eig(A)的得到结果比拟,再计算A*y-t*y ,验证y 是否是对应的特征向量。
结果如下:结果正确,说明算法和代码正确,然后利用此程序计算15阶Hilb 矩阵,与eig(A)的得到结果比拟,再计算 A*y-t*y ,验证y 是否是对应的特征向量。
设置初始向量为*0=ones(15,1),结果显示如下可见,结果正确。
求最大特征值和权重向量全文共四篇示例,供读者参考第一篇示例:求最大特征值和权重向量是一种在数学和计算机科学领域经常用到的方法,它们在数据分析、机器学习、人工智能等领域中起着重要的作用。
在矩阵理论中,特征值和特征向量是矩阵的两个重要概念,它们能够帮助我们揭示矩阵的内在性质和结构。
本文将介绍求最大特征值和权重向量的方法及其应用。
让我们来了解一下什么是特征值和特征向量。
在线性代数中,对于一个n阶方阵A,如果存在一个非零向量v,使得Av=λv,其中λ是一个标量,则λ被称为矩阵A的特征值,v被称为对应于特征值λ的特征向量。
特征值和特征向量的求解是一个重要的矩阵分析问题,它们能够帮助我们理解矩阵的性质和行为。
接着,让我们来讨论如何求解一个矩阵的最大特征值和对应的特征向量。
在实际应用中,我们通常使用迭代法来求解最大特征值和对应的特征向量。
最常用的方法是幂法(power method),其原理如下:1. 我们随机选择一个非零向量作为初始向量v0,并将其标准化为单位向量,即v0 = v0 / ||v0||。
2. 然后,我们按照以下迭代公式计算向量vk+1 = Avk,其中A是待求解矩阵。
3. 继续迭代上述步骤,直到收敛为止。
在每次迭代中,我们需要将向量标准化,即vk+1 = vk+1 / ||vk+1||。
4. 最终,当迭代收敛时,我们可以得到矩阵A的最大特征值和对应的特征向量。
幂法具有简单、高效的特点,广泛应用于求解矩阵的最大特征值和特征向量。
在实际应用中,我们通常会对矩阵A进行对角化处理,以提高幂法的收敛速度和稳定性。
除了求解最大特征值和特征向量外,我们还经常需要对特征值进行排序,并确定对应的特征向量。
在实际应用中,我们通常使用雅各比迭代法(Jacobi method)或QR分解法(QR decomposition)等方法来实现特征值排序和特征向量确定。
1. 数据降维:在数据分析和机器学习中,我们经常需要对数据进行降维处理,以便更好地理解和分析数据。
矩阵的最大特征根公式
矩阵的最大特征根公式是用来计算一个矩阵的最大特征值的公式。
如果一个矩阵A有n个特征值,则其最大特征值为λmax。
根据矩阵的特征值分解,矩阵A可以表示为其特征向量的线性组合,即
A=QΛQ^-1,其中Q是由特征向量组成的矩阵,Λ是由特征值组成的对角矩阵。
根据矩阵的谱半径定义,矩阵A的最大特征值λmax等于其谱半径ρ(A)。
因此,可以用矩阵的幂来逼近其谱半径,即ρ(A)=lim┬(k →∞)〖∥A^k∥^(1/k)〗。
根据幂法迭代,可以通过迭代矩阵的幂来逼近其最大特征值。
具体地,假设有一个非零向量x0,通过以下迭代可以得到A的最大特征值λmax:
1. 计算y0=Ax0。
2. 令x1=y0/∥y0∥,即将y0归一化。
3. 计算y1=Ax1。
4. 令λ1=x1^Ty1,即将y1投影到x1上得到λ1。
5. 重复步骤2至4,直到λi+1和λi的差值小于某个精度值。
根据幂法迭代的收敛性,迭代后的向量xk收敛到A的最大特征向量,λk收敛到λmax。
因此,矩阵的最大特征根公式为:λmax=lim┬(k →∞)(xk+1^TAxk)/(xk^Txk)。
该公式可以通过幂法迭代来计算矩阵的最大特征值。
- 1 -。
判断矩阵最大特征值计算公式好嘞,以下是为您生成的关于“判断矩阵最大特征值计算公式”的文章:在数学的奇妙世界里,判断矩阵最大特征值的计算公式就像是一把神奇的钥匙,能帮助我们打开很多难题的大门。
咱先来说说啥是判断矩阵。
比如说,你要比较苹果、香蕉和橙子哪个更好吃。
你心里可能会有个想法,觉得苹果比香蕉好吃一点,香蕉又比橙子好吃不少。
把这种比较用数字表示出来,形成的矩阵就是判断矩阵啦。
那这最大特征值的计算到底有啥用呢?给您举个例子吧。
有一次,我们学校组织了一场活动,要评选出最受欢迎的课外活动项目,有足球、篮球、绘画、音乐等等。
同学们根据自己的喜好进行比较打分,最后形成了一个判断矩阵。
这时候,通过计算最大特征值,就能清楚地知道哪个活动项目在大家心里是最受欢迎的。
判断矩阵最大特征值的计算公式呢,常见的有幂法和和积法。
先说幂法,这就好像是不断地对矩阵进行“加工”,让它慢慢“露出真面目”。
假设咱们有一个判断矩阵 A ,先随便选一个初始向量 x₀,然后通过不断地计算 Axₙ₋₁,再对得到的结果进行归一化处理,反复多次,最终就能找到那个最大特征值。
和积法呢,相对来说步骤会多一些,但也没那么难。
先把判断矩阵每一列进行归一化,然后对归一化后的矩阵按行求和,再对求和后的结果进行归一化,得到一个向量,这个向量就是特征向量啦,通过一些简单的运算就能得到最大特征值。
就像我之前参加一个数学竞赛培训,老师出了一道关于判断矩阵最大特征值计算的题目。
题目里是关于几种不同学习方法效率的比较,形成的矩阵看起来有点复杂。
一开始我也有点懵,但是静下心来,按照老师教的方法,一步一步地去做,先试着用幂法,发现不太顺手,又换成和积法,终于算出了正确的结果。
那一瞬间,真的感觉特有成就感,就好像自己攻克了一座数学的大山。
在实际应用中,比如在经济领域,分析不同投资方案的优劣;在工程领域,评估各种设计方案的好坏,判断矩阵最大特征值的计算都能发挥大作用。
总之,虽然判断矩阵最大特征值的计算公式看起来有点复杂,但只要咱们多练习,多琢磨,就能熟练掌握,让它成为我们解决问题的有力工具。
矩阵的特征向量及最大特征值
特征向量是线性代数中的重要概念,它在数学和科学领域中发挥着重要作用。
通过研究特征向量,我们可以更好地理解和解释矩阵的性质和行为。
特征向量可以被描述为矩阵的"指示器",它们指示了矩阵在某个方向上的拉伸或压缩程度。
换句话说,特征向量是矩阵变换后保持在同一方向上的向量。
而与特征向量相对应的是最大特征值。
最大特征值是特征向量对应的特征值中的最大值。
它告诉我们矩阵变换后,哪个方向上的拉伸或压缩程度最大。
举个简单的例子来说明特征向量和最大特征值的概念。
假设我们有一个矩阵A,它代表了一个线性变换。
通过计算矩阵A的特征向量和特征值,我们可以了解这个变换对向量空间的影响。
特征向量和最大特征值的应用非常广泛。
在数据分析和机器学习领域,它们被用于降维、聚类和模式识别等任务中。
在物理学中,特征向量和最大特征值用于描述量子力学中的态和能量。
在工程领域,它们被用于分析振动系统和电路等。
总的来说,特征向量和最大特征值是线性代数中非常重要的概念。
它们帮助我们理解矩阵的变换和性质,并在各个领域中发挥着重要作用。
通过研究特征向量和最大特征值,我们可以更好地理解和解
释现实世界中的各种现象和问题。
无论是在科学研究还是工程实践中,对特征向量和最大特征值的理解都是必不可少的。
项目六 矩阵的特征值与特征向量实验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)休闲时间. 对上述各种因素你可以根据自己的具体情况排序,也可以增加或减少所考虑的因素. 现在有四个单位打算你, 但如果用上述标准来衡量,没有一个单位具有明显的优势,请用层次分析法为你自己做一个合理的选择.。