ハミルトン閉路問題は次のように要約できると思います。
無向グラフを考えると、ハミルトン閉路は、一度だけのすべての頂点を通過
G = (V, E)
するツアーです。G
G
さて、私がやりたいのは、私の問題をこれに減らすことです。私の問題は:
の重み付き無向グラフ
G
、整数k
、および頂点u, v
の両方が与えられた場合、 合計の重みが少なくともであるからへG
の単純なパスはありますか?G
u
v
k
したがって、ハミルトン閉路問題がNP完全であることを知っているので、この問題をハミルトニアンに還元することにより、この問題もNP完全であることが証明されます。私の問題は、それをハミルトニアンに還元する関数です。
- 大きな問題は、ハミルトン閉路問題がエッジの重みを処理しないことです。そのため、グラフを重みのないグラフに変換する必要があります。
- その上、この問題には開始と終了(uとv)が指定されていますが、ハミルトニアンはサイクルを検出するため、開始は終了と同じです。
(1)については、総重量がk未満の単純なパスをすべて取り出したグラフを通過する線に沿って考えています。(2)の場合、これは実際には問題ではないと思います。ハミルトン閉路がある場合、uからvへの単純なパスを切り取ることができるからです。
だから、私の本当の質問は次のとおりです。
- 私の解決策は私に正しい答えを与えるつもりですか?
- はいの場合、実際のソリューションでこれらのエッジの1つが必要になる可能性に影響を与えることなく、総重量がk未満の単純なパスを生成するエッジをどのように取り除くことができますか?エッジeがEのサブセットに対して重み<kの単純なパスを生成するために取り出された場合でも、エッジの異なる組み合わせを使用して重み>=kのパスを生成する単純なパスで使用できます。
ありがとう!