基于MATLAB的贝叶斯网络工具箱BNT的安装和使用_2

1、图的邻接矩阵(Adjacency Matrix)表示

拓扑网络图中的两个节点相邻或邻接,是指节点之间至少有一条边。把图转换为邻接矩阵的表示方式,主要是肯定相邻节点边的数目。有以下参考图html

image

图中共有三个节点,须要创建3*3的邻接矩阵,矩阵中元素填充方法:每一列、每一行各个节点对应,若是(Vi,Vj)邻接那么第i行第j列的元素(cell)置为1,否者置为0,python

获得的结果为:数组

image

对于无向图来说,其邻接矩阵是对称的。推荐阅读http://mathworld.wolfram.com/AdjacencyMatrix.html网络

2、MATLAB中矩阵数据的表示

  1. 变量命名,matlab中变量名字以字母开头,后接字母、数字、下划线,例如my_variable_1,严格区分大小写的
  2. 变量赋值,形式: 变量 = 表达式,其结果是一个矩阵,像python语言同样,若输入的指定过长能够用 … 进行链接,不要对预约义变量进行赋值
  3. clear命令删除工做空间的变量,who、whos查看工做空间驻留的变量,clc清屏
  4. 矩阵(数组)是matlab数据存储的基本单元

下面给出矩阵的建立方式函数

  • 直接输入数据,

    将矩阵的元素用方括号扩起来[],按矩阵行的顺序输入元素,同一行的元素用空格或者逗号隔开,不一样行之间用分号隔开。若是只是输入一行就形了数组(或称做向量),其中的元素(cell)是任何matlab表达式,看下图  spa

image

  • 利用m文件建立,参考官方文档
  • 利用:冒号创建一个数组(向量),通常格式为e1 : e2 : e3,其中e1为初始值,e2为步长,e3为终止值,看图

image

  • 采用定数线性采样函数产生向量,调用格式x = linspace(a,b,n),看下图

image

  • 采用定数的对数采样函数来产生向量,调用格式 y = logspace(a,b,n)
  • 利用matlab函数来产生矩阵
  1. zeros()函数,建立零矩阵
  2. ones()函数,建立元素所有为1的矩阵
  3. rand()函数,建立随机矩阵,元素值所有在0~1之间
  4. eye()函数建立单位矩阵
  5. randn()函数产生均值为0,方差为1的标准正态分布随机矩阵

注意:()中的参数,输入(m,n)表示产生一个m行n列的矩阵(eye()函数中m=n),m = n则是方阵,若是输入size(A),则产生一个与A大小相同的矩阵.net

看下面图htm

image

下面给出矩阵元素的访问:文档

  1. x(m,n)表明矩阵中第m行第n列的元素
  2. 其中的m,n能够是阵列,例如x([a b c],[x y])表明第a、b、c行中第x、y列中的元素,其实就是矩阵上选出的一块区域,看图

 

image

其余一些特殊矩阵,及其运算参见官方的帮助文档。get

相关文章
相关标签/搜索