超图是什么?
超图的本质特征在于它的超边,它可以连接两个以上的结点(包括两个)。按这样的意义来说,我们所熟悉的普通图只是超图的一个特例而已,而超图则定义了一个更加宽泛的图。
超图的数学定义为:对于超图 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.