如何将简单加权图转换为超图?

问题描述 投票:0回答:4

我找到了一种适用于超图的分区算法,其名称为 hMETIS,但我的输入是简单加权图的形式。有什么技术可以将图映射到超图吗?

graph graph-theory graph-algorithm hypergraph
4个回答
0
投票

一般来说:没有。

图包含两个顶点之间二元交互的信息,并且无法提取有关高阶交互的信息。

简而言之,如果我给你一个超图,我可以使用(多种方法)将其转换为图,但该图可能是多个超图的结果。

有一些例外,特别是如果您有关于图之外的顶点的更多信息,或者图是二分图。


0
投票

由于图是一个特定的超图,所以我认为不需要这样的映射。


0
投票

超图是一组称为顶点的元素,以及一组元素集,其中每个元素都是一条边。

r 均匀超图是一种超图,其中边恰好是 r 个顶点的集合。

2-一致超图是一个图。

您应该能够将图形格式化为 hmetis 期望的超图文件格式。

参见第3.4节:超图输入文件的格式:https://course.ece.cmu.edu/~ee760/760docs/hMetisManual.pdf

引用此处以防链接失败: hMETIS 的主要输入是要分区的超图。该超图存储在文件中并提供给 hMETIS 作为命令行参数之一。具有 V 顶点和 Eh 超边的超图 H = (V, Eh ) 为 存储在包含 |Eh| 的纯文本文件中+ 1 条线,如果顶点上没有权重且 |Eh|+|V | + 1 行 如果顶点上有权重。任何以“%”开头的行都是注释行,会被跳过。 第一行包含两个或三个整数。第一个整数是超边数 (|Eh|),第二个整数是超边数 (|Eh|) 是顶点数 (|V|),第三个整数 (fmt) 包含有关超图类型的信息。在 特别是,根据 fmt 的值,超图 H 可以在超边、顶点、 或两者兼而有之。在 H 未加权的情况下(即所有超边和顶点具有相同的权重),fmt 被省略。 10 在第一行之后,剩下的 |Eh| lines 存储每个超边中包含的顶点——每个超边一条线。在 特别地,第 i 行(不包括注释行)包含第 (i -1) 个超边中包含的顶点。这 格式如图5(a)所示。加权超边的指定如图 5(b) 所示。每个中的第一个整数 线包含相应超边的权重。注意,超边权重是整数。此外, 请注意,fmt 参数等于 1,表明 H 在超边上具有权重。最后,权重 也允许在顶点上,如图 5(c) 所示。在这种情况下,|V|行附加到输入文件 包含 |V| 的权重顶点。请注意,fmt 的值等于 10。与超边缘的情况一样 权重、顶点权重是整数。图 5(d) 显示了超边和顶点都存在时的情况 被加权。在这种情况下,fmt 等于 11。 图 5 显示了 hMETIS 对于图中所示示例超图所需的 HGraphFile。它显示 超图未加权、具有加权超边、具有加权顶点以及两者都具有的四种情况 超边和顶点加权。图5(a)所示的超图有四个未加权的超边a、b、c, 和d。超图中的顶点数为 7。当超图未加权时,HGraphFile 的第一行 包含两个整数,表示超图中超边的数量和顶点的数量。后 也就是说,每条线对应于一个超边,其中包含超边中每个顶点的条目。超图如图所示 图 5(b) 中每个超边 a、b、c 和 d 的超边权重分别等于 2、3、7 和 8。为了这 加权超边 HGraphFile 的第一行由三个整数组成。第三个整数指定超边 被加权并且等于 1。对应于每个超边的每条线都有等于其权重的第一个条目。这 以下条目对应于相应超边中的顶点。两个顶点都加权的情况 fmt 等于 10,对应于 7 个顶点的 7 行被附加到输入文件中,每行包含权重 各自的顶点。如图 5(c) 所示。图 5(d) 显示了超边和边都存在时的情况 顶点已加权。


© www.soinside.com 2019 - 2024. All rights reserved.