环路缩减矩阵
环路缩减矩阵,就是把原先矩阵中所有的强连通子集,也就是所有的环路当成一个结点,而得到新的一个结构。
环路缩减矩阵后,图中没有环路,变成了一个有向无环图DGA。
缩减矩阵,是一个新的矩阵,它的编号次序可以有多种。最常见的是两种!
第一种:尽量保证新的矩阵排列顺序与原矩阵的排列顺序一致!
第二种:利用利用环路返回有序序列的特征,获得一个三角矩阵(矩阵排列集中在左下方的三角型区域内)。
缩减后的矩阵,缩点自身到自身是用1来表示。也就是矩阵对角线中为1的值,标识着对应的要素是一个环路组成!
缩减的矩阵是一个信息丢失的过程,丢失的信息都集中在环路要素中,新矩阵没有完整保留原来矩阵的环路消息!
| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 1 | ||||||||||||||
| B | 1 | ||||||||||||||
| C | 1 | ||||||||||||||
| D | |||||||||||||||
| E | 1 | 1 | 1 | ||||||||||||
| F | 1 | ||||||||||||||
| G | 1 | 1 | 1 | ||||||||||||
| H | 1 | ||||||||||||||
| I | 1 | ||||||||||||||
| J | 1 | 1 | 1 | ||||||||||||
| K | 1 | 1 | |||||||||||||
| L | 1 | ||||||||||||||
| M | |||||||||||||||
| N | 1 | ||||||||||||||
| O | 1 |
对上述矩阵进行深度遍历,可以获得所有的强连通子集
方法一:尽量保证原系统编号顺序进行映射
| A+E+J+K+N | B+C+F | D | G | H | I | L | M | O | |
|---|---|---|---|---|---|---|---|---|---|
| A+E+J+K+N | 1 | 1 | 1 | 1 | |||||
| B+C+F | 1 | ||||||||
| D | |||||||||
| G | 1 | 1 | |||||||
| H | 1 | ||||||||
| I | 1 | ||||||||
| L | 1 | ||||||||
| M | |||||||||
| O | 1 |
新系统要素对应的编号为
A+E+J+K+N 的序号为
=>0
B+C+F 的序号为 =>1
D 的序号为 =>2
G 的序号为 =>3
H 的序号为 =>4
I 的序号为 =>5
L 的序号为 =>6
M 的序号为 =>7
O 的序号为 =>8
方法二:用环路的顺序,最上层为0
| B+C+F | I | G | D | O | A+E+J+K+N | H | L | M | |
|---|---|---|---|---|---|---|---|---|---|
| B+C+F | 1 | ||||||||
| I | 1 | ||||||||
| G | 1 | 1 | |||||||
| D | |||||||||
| O | 1 | ||||||||
| A+E+J+K+N | 1 | 1 | 1 | 1 | |||||
| H | 1 | ||||||||
| L | 1 | ||||||||
| M |
对应的新系统,其值域都落在,矩阵的左下方!对角中出现了为一的值,表示新系统中对应的要素为一环路
新系统要素对应的编号为
B+C+F
的序号为=>0
I 的序号为=>1
G 的序号为=>2
D 的序号为=>3
O 的序号为=>4
A+E+J+K+N
的序号为=>5
H 的序号为=>6
L 的序号为=>7
M 的序号为=>8
本文详细介绍了环路缩减矩阵的概念,如何将其应用于有向图,并解释了两种不同的矩阵排列方式及其特点。同时,文章阐述了缩减过程中的信息丢失问题,并通过实例展示了如何识别并处理强连通子集。

777

被折叠的 条评论
为什么被折叠?



