ism matlab,ISM模型matlab实现.ppt

ISM模型matlab实现

ISM模型的matlab实现 张文龙、赵洋、张强、滕凤君 4.课本例题程序验证请输入矩阵维数:7请输入邻接矩阵: 1 1 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 1 0 1 1 1 第r级:r = 1,元素为i =5第r级:r =2,元素为i =2第r级:r = 2,元素为i =6第r级:r =3,元素为i =3第r级:r =4,元素为i =1第r级:r =4,元素为i =4第r级:r = 4,元素为i =7 THE ENDThanks * * 程序设计思路: 1、可达矩阵的求解 A:邻接矩阵 E=zeros(A); 通过布尔运算求出A^2、A^3…直至A^n=A^n-1,停止运算,此时的A^n便是要求的可达矩阵。 具体实施: 通过将上次循环得出来的A赋给E,并判断新一轮循环得出的A是否与E相等,决定是否终止循环。循环终止意味着此时的A就是最终的可达矩阵。 具体程序如下: n=input('请输入矩阵维数:'); A=input('请输入邻接矩阵:'); E=zeros(n); B=A; while(norm(A-E)>0) E=A; for i=1:n for j=1:n for k=1:n if A(i,k)&B(k,j) A(i,j)=1; end end end end end A 2、区域划分 找出各个元素相对应的可达集P、先行集Q以及两者的交集S 求解P:找出每一行中元素为1对应的列 求解Q:找出每一列中元素为1对应的行 求解S:套用Matlab本身自带的函数S=intersect(P,Q); 或者编写M文件函数,如下所示: 具体程序如下: for i=1:n P=find(A(i,:)); Q=find(A(:,i)); S=intersect(P,Q); P; Q; S; 3、级别划分 因为S是P与Q的交集,所以只需判断P与S的长度是否相等便可进行级别划分。 M=zeros(n); r=1;r为第几级 求出每个元素的P、Q、S,再将相应的对角线元素A(i,i)赋予0,通过查找对角线为0的元素位置将所对应的行列均赋值0。每次循环r自增1,再进行循环,求出每一级的元素,直至A==M。 具体程序如下: r=1;M=zeros(n);while(~isequal(A,M))for i=1:nP=find(A(i,:));Q=find(A(:,i));S=intersect(P,Q); P; Q; S;if(~isempty(P)&~isempty(Q)&( length(P)==length(S)) disp('第r级:') r disp('元素为') i A(i,i)=0; endendfor i=1:nif A(i,i)==0A(i,:)=0;A(:,i)=0;endend r=r+1;end *

ISM(Interpretive Structural Modeling)是一种用于分析和建模复杂系统的方法。在使用MATLAB计算ISM模型时,我们需要按照一定的步骤进行操作。 首先,我们需要确定并定义问题。这包括选择合适的主题以及确定要研究的元素。以此为基础,我们可以建立一个图表,包含所选元素之间的关系以及每个元素的属性。 接下来,我们需要建立元素之间的关系矩阵。这个矩阵用于描述元素之间的相互依赖关系。每个单元格中的值表示一个元素相对于另一个元素的影响程度。值越大表示影响越大。 然后,我们将计算结构矩阵。结构矩阵可以通过计算关系矩阵的乘幂来获得。这个过程可以使用MATLAB中的函数进行计算。 在获得结构矩阵后,我们可以对其进行进一步的分析。我们可以使用MATLAB中的函数计算每个元素的层次性指数和驱动力指数。这些指数可以帮助我们理解系统中各个元素的重要性和权重。 最后,我们可以根据结构矩阵和指数的结果进行模型的解释和解读。我们可以使用MATLAB中的绘图功能来可视化模型的结果,并通过不同的颜色或线条粗细来表示元素的相对重要性或影响程度。 总之,使用MATLAB计算ISM模型的方法包括确定问题、建立关系矩阵、计算结构矩阵、分析指数以及解释模型。通过这些步骤,可以帮助我们更好地理解和建模复杂系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值