任意导向多图的最大欧拉子图

时间:2013-10-10 08:30:50

标签: algorithm graph-algorithm

为了更准确地解决问题,让我将其重新定义为“城市”游戏。扮演两名球员。玩家1说一些城市名称,比如Moscow。玩家2现在必须说出一些城市名称,从之前称为城市的最后一个字母开始。这封信是W,所以第二位玩家说的是Washington。播放器1接下来呼叫某个城市,从N开始为Norilsk,播放器2现在必须说出一些城市名称,从K开始,依此类推。一个不能说城市名称的人输掉比赛。

现在说我们将字母a..z作为图形顶点,将(例如10000)城市名称列表作为边缘。每条边连接两个顶点(如moscow连接mw),并且面向m -> w

所以我们现在已经定位了多图。

任务是从列表中的给定中找到最长的城市序列。每个城市可能只按顺序发生一次。所以任务非常接近欧拉路径,但在给定的图形中可能会有很多欧拉子图。

我的问题是如何在合理的时间内找到最大路径?

我知道,maximum euler subgraph问题是NP难的。但在我的问题中,图形是非常强连接的,并且它具有小且固定数量的顶点(如上面描述的“城市”游戏中)。可能有可能用它来建立一些好的启发式方法吗?

此外,我在stackoverflow上发现了一些word sequences个问题,但没有合理的答案,因为很明显汉字图中的哈密顿子图比字母图中的euler子图更难找到,如果单词是边,并且所有这个问题是关于哈密顿的,而不是欧拉子图。

将会欣赏任何编程语言或伪代码中的任何有用的链接,想法,算法描述和方法。


最诚挚的问候,康斯坦丁

1 个答案:

答案 0 :(得分:2)

我认为您会发现更多资源表示这是有向图中最长的路径问题。该问题的最长路径公式似乎比欧拉公式受到更多关注。另请注意,最长路径与汉密尔顿路径不同,因为前者不需要跨越图形。

将每个城市视为一个顶点,并在表示可行序列的顶点对之间放置一个弧。

值得一提的是,最长的路径难以近似,并且在非常简单的图表中仍然是NP完全的:http://en.wikipedia.org/wiki/Longest_path_problem

以下是一些相关论文的链接:

http://link.springer.com/article/10.1007/BF02579454

http://lup.lub.lu.se/luur/download?func=downloadFile&recordOId=957757&fileOId=9 \ 65291