焦点期刊
在线客服

著作编辑 著作编辑

咨询邮箱:568476783@qq.com

计算机论文

Matlab矩阵运算和程序控制功能

时间:2021-12-13 12:48 所属分类:计算机论文 点击次数:

随着当今信息化、全球化的发展,传统的手工计算已经无法满足人们对高效、准确决策的要求。于是,计算机辅助决策就成为管理决策的一种新工具、新方法。因此,本文在充分发挥计算机强大运算功能的基础上,选择了美国MathWorks公司的MatlabR2009a为开发平台的集成数学建模环境,用M语言编写程序,论述了AHP中计算机辅助决策的应用。尝试用程序实现AHP法在计算机系统中的应用,探索出一种新型的管理决策方法。
AHP第一级计算流程。
AHP法依据与层次分析法相关理论,将复杂决策问题分解,得到一系列低级指标,再次将下层的指标分解,得到了一些再下层的指标,建立了层次化的评价模型,再根据结构模型构造判断矩阵。最后,对每个指标进行相应的权重系数,对各个等级进行总体排序。
1.1构建层次结构模型对AHP进行分析时,首要的步骤是建立指标的层次结构模型,并根据结构模型构造判断矩阵,只有判断矩阵通过一致性检验,才能进行分析计算。在这些模型中,结构模型可分为三个层次,最上层是目标层,是决策的目的和要解决的问题,中间层是决策要考虑的因素,是决策的准则,而最底层是决策选择。导向层中每个指标的低级指标数目不受限制,但是本文所设计的方案尚不能局限于每一个指标具有相同数量低级指标的假设,因此,本文后文所选案例也满足这一假设。
1.2确定判断矩阵判断矩阵是表示该层各因素针对前一层次某一因素的相对重要性的比较,确定矩阵中各元素的相对重要性。通常使用九级标度法(也就是用数字1到9的倒数来表示指标间的相对重要性),表1显示了具体的标度方法。
1.3判断矩阵的一致性因其多阶判断的复杂性,常常使判断矩阵中的一些数值可能存在前后矛盾,即每个判断矩阵值不能保证完全一致。在判断矩阵不能保证完全一致的情况下,相应的判断矩阵的特征根就会改变,从而利用判断矩阵的特征根的变化来检验判断的一致性。AHP法中,对于判断矩阵,其判定矩阵的相似性检验指标,给出了该判断矩阵的最大特征值:
  ⑴
CI值越大,判断矩阵的一致性越差。在阶次大于2时,该判断矩阵的一致性指标CI与同阶平均随机一致性指标RI的比值称为随机一致性比率,其中RI的值由表2决定,CR公式如下:
  ⑵
如果CR<0.1,就可以认为判断矩阵有较好的一致性。但是,在确定各指标之间相互重要程度大小的过程中存在人为的主观因素,所以当判断矩阵不能通过一致性检验时,需要重新分配各个指标之间的相互重要程度,直到通过矩阵一致性检验。它所对应的最大特征值的特征向量是该指标与前一级相关的重要程度排序。
1.4在通过层次单排顺序对各个指标的重要性向量得出相对于上一级指标的重要次序之后,按顺序,逐级递阶地从下到上进行矩阵计算,就可以得出每个底层指标对最高层的相对重要权。这样,就可以对各个基础指标的优先级进行排序,找到关键指标,并给予特别关注。
MatlabAHP法的程序设计思想。
MatrixLaboratory是矩阵室(MatrixLaboratory)的缩写,是由美国MathWorks提供的数学软件,用于算法开发、可视化、数据分析和高级技术计算语言和互动环境。Matlab能做矩阵运算,绘制函数和数据图象,设计算法,创建用户界面,与其它编程语言相连接。Matlab以矩阵为计算单位,用M语言作为程序语言,与C语言有许多相似性,并且可以将C/C++,MicrosoftExcel这样的工具和软件轻松地组合起来,代码共享和数据交换,可进行数字分析、图像处理等功能,配以强大的统计与财务工具包,Matlab已经在概率统计、经济管理等领域扮演了重要角色。
作者编制了一个程序,即利用Matlab丰富的函数,矩阵运算和程序控制功能,探索它在AHP分析中的应用。该方案采用三层循环式结构,实现了多个层次上各判断矩阵的输入与生成,并按表1中显示的方法和规则,通过计算其特征值,可按上述公式⑴、②、③公式进行矩阵一致性检验。在通过了各种判断矩阵一致性检验之后,程序从下到上依次对各个层次进行计算,最后得到各个下层指标与准则层之间的权值,以帮助优选最佳方案,程序流程见图1。平行四边形表示输入数据,菱形表示判断,根据判断结果,两条支路不同。
某城市的一个十字路口经常因行人过街而产生安全隐患,市政部门想对其进行改造,现提出3套改造方案:
计划1(S1):建造地下通道;
计划2(S2):修建人行桥;
计划3(S3):拆除周围的旧建筑物,扩大街道面积。
市政局认为,这一改造项目应考虑以下若干指标:
指数1(P1):通信量;
指数2(P2):交通安全指数;
指数3(P3):建筑费用水平;
指数4(P4):居民出行便利程度;
指数5(P5):市容整洁程度的高低。
对于上述问题,现在需要作出决策,需要决定选择三组方案(S1~S3)。下面是具体的步骤和操作步骤。
步骤1:根据题目建立层次模型。
因题目需要对三组方案都要考虑5项指标,所以可以画出如图2所示的指标体系结构图。
步骤二:判断矩阵的构成。
建立一种判断矩阵,需要对每个指标之间的重要性进行标度,该矩阵的上三角部分和下三角部分的分界是对角线,都是倒向对称,而对角线上的元素都是1,因为每一个指标都和它们自己的重要性一样重要,各指标A1对A2的重要程度和A2对A1的重要性相等。在图2中,根据经验衡量各个指标的重要性之后,可以得到以下几个矩阵:
步骤3:把上面的每个矩阵输入程序,计算。
将表3~8所示矩阵按提示输入Matlab的命令窗口后,程序输出结果经整理如下表:
然后,程序根据每个矩阵计算得到的最大特征值对应的特征向量,以下式标准化:
又一次提出了指标特征向量构成矩阵:
从而得到了三种方案相对于目标的权向量:
通过对比,发现方案1的权重系数最大,进而得出最后结论:方案1(地下通道)占优。
4概述和分析。
此程序在运行之初,将要求使用者输入指标层数及第一层指标数目,当每一级别矩阵元素输入完毕后,程序将要求使用者输入下一级别的指标数目,因此本程序可以进行无限级迭代运算。在AHP中,程序只能取代AHP的操作部分,因为判断矩阵的分配是主观性的,经常需要用Delphi法等其它方法来判定。通过对设置好的判断矩阵输入程序进行运算,可确保矩阵运算的精确性和效率,经过优化和扩展后,可将过程及结果数据输出到Excel和Eviews中,以便随后进行数据整理和计量分析。
此外,正如前面所指出的,这个程序有一个局限性,那就是,当每个指标必须在同一水平上对所有下一级别指标都有影响时,必须正确操作。作者将在以后的工作中进一步完善程序,提高它的功能和使用方便性,使之能够适应不同情况、不同情况下的AHP分析,在日常生活中的计算机辅助决策领域发挥更大的作用。