超图(hypergraph)

超图是什么?

超图的本质特征在于它的超边,它可以连接两个以上的结点(包括两个)。按这样的意义来说,我们所熟悉的普通图只是超图的一个特例而已,而超图则定义了一个更加宽泛的图。

超图的数学定义为:对于超图 H,有超图的结点集合 V 和超图的边(超边,hyperedge )的集合 E,则有 H = (V,E)。其中,每一个超边 e 都是 V 的一个非空集合,一般 e 所包含的结点数就表示其度数记为|e|(大于等于2)。

 

超图划分介绍

超图划分的目的在于,将超图的节点划分为 k 个大致相等的部分,且出现同一个超图连接多个部分的节点的情况被最小化。

超图划分的用处范围很广,比如在数据存储中如何减少存取操作将大大影响其工作效率,通过超图能够将关联紧密的数据划分在一起。如此,每次存取操作都按一个部分来进行,将能够有效的减少存取操作的次数。

 

METIS(普通图的划分算法)

多层图形划分算法,它可以最优的找出图形的对等分,并且速度要快于迄今最优秀的基于光谱的对等方算法( the hitherto state-of-the-art spectral-based bisection techniques )两个数量级。

METIS 只适用于普通图而不是用于超图,所以有一种方案是直接将超图转化为普通图,即用一个团来表示一条超边。

显然这样的方案是有着缺陷的,普通图中的团无法

另外一种方案是直接对超图进行粗化和细化。

 

hMETIS(超图的划分算法)

hMETIS程序下载地址: http://glaros.dtc.umn.edu/gkhome/metis/hmetis/overview

 

参考文献:

G.Karypis, Rajat Aggarval: Multilevel Hypergraph Partitioning: Applicatios in VLSI Domain.

posted @ 2015-03-20 20:50  SHAEL_BLOG  阅读(9712)  评论(0编辑  收藏  举报