私は有向非循環グラフを持っており、リソース制約をもった最短パスを見つける必要があります。私の制約は、選択されたパスが、消費されたセットリソースの最小数を持たなければならないということです。リソース制約を持つ最短パス
現在、私はYen's K Shortest Path algorithmを使用してKの最短経路を計算し、次に自分の制約を満たすものだけを受け入れます。ここでの問題は、誤って選択されたように、実現可能なパスが見つからない可能性があるため、Kを推測することです。
私はこのトピックに関する多くの文献を見つけました。thisは私が考えている良い概観を提供しています。しかし、私はそれを理解して実装することができる簡潔なアルゴリズムを見つけるのには苦労しています(私はPythonを使用していますが、明確なアルゴリズム上のアイディアは素晴らしいでしょう)。
私はこの問題はNP-Completeであることを理解しています。そのため、私は良い近似アルゴリズムと正確なアプローチに興味があります。
誰でも良い推薦がありますか?あなたは何ができるか
リソース制約の意味を説明できますか?これらの制約に特定のフォーマットがある場合、この問題はNP困難と思われません。 – templatetypedef
私は最短のパスを見つけようと努力しているだけでなく、制約を満たすパス(私はそれを稼働させている間は1つしかありませんが、将来的にはより多くのパスを見つけることになります)。これは最小の制約です。 グラフ内の各ノードNは、総リソース数N_xにxを割り当てます。 有効なパスは、パス内のすべてのNに対してsum(N_x)> = Minです。 – steven
あなたの概要リンクは私にとってはうまくいかないが、Eppsteinのk-shortest-pathsアルゴリズムを試してみましたか?事前にkを制限する必要はありませんが、最短パスを1つずつ生成します。制約を満たすパスを見つけるまで、生成することができます。 – han