复杂网络是一个非常庞大的研究领域,有众多研究方法与研究对象,社交网络、科学家网络、生物网络、交通网络、生物网络等等。在进行仿真时候,有的网络过于庞大无法用实际的数据进行仿真,例如社交网络。而有一些网络规模较小,就需要用实际的数据进行仿真了,例如交通网络。
那么无论网络规模大小,对这些网络进行研究的时候,第一步往往是建模,只有模型建好了后续的研究、仿真才好进行下去。建模后,可以对网络指标进行分析,可以分析网络的抗毁性等等。总之,建模总是第一步的。
下面我就分享一下,自己对于复杂网络中实体网络建模的一些经验,以地铁网络为例:
建模方法,一般有Space L、Space P、Space B、Space C法,比较常用的建模规则是Space L法。
地铁网络,一般都有三四百个节点,线路十几条左右,看地铁图的是一个眼花缭乱。若是人工统计出来数据也是一项大工程。看着就想放弃,但其实掌握一定的方法并没有那么的费劲。
按线路进行节点的统计,先编号,然后去除掉重合的节点
统计连接关系时有一定的规则:比如从左往右统计、从上往下统计,这样可以避免重复统计
不要直接列出邻接矩阵,先统计出连接关系生成邻接表,然后再转成邻接矩阵
关于邻接表,最好再检查一遍
以上工作最好分成数天进行,否则负荷工作效率低且出错率较高
下面给出 邻接表 转成 邻接矩阵 的Matlab函数代码:
function b = ainc2adj( x )
%AINC2ADJ x为邻接表(可在工作区中新建数据),