0

タイトルでこれを説明するのに本当に苦労しましたが、長い形式で試してみます。

私はこの問題に本当に困惑しており、答えを探しているのではなく、ちょっとした助けや読むべき特定のトピックを探しています.

私が持っているのは、負と正の両方のさまざまな重みのエッジを持つ有向グラフです。私がやろうとしているのは、グラフ上に配置された 2 つのノードを備えた (そしてそれらが接続されていると仮定して) アルゴリズムを作成し、それらの間のパスを見つけて、パスの合計重みがゼロまたは負になるようにすることです。パスには複数回ノードを含めることができます (うまくいけば、含まれるエッジの正の重みをパスが相殺できるようになります)。

私は現在、ラッセルとノーヴィグの人工知能を読んでいますが、さまざまな問題があるため、テキストのロジックを自分の問題に適用する方法を見つけるのに苦労しています (アルゴリズムは常に負のサイクルを回っています)。このために Backtrack や AStar などのメソッドを利用する方法を完全には理解していません

誰かが私の問題をよりよく理解するのに役立つ何かの正しい方向に私を向けることができれば、それは大きな助けになります.DFSとBFS、およびグラフに関連する他の多くのことをうまく処理できますが、パスを見つける必要があります.重量制限のある2つのノード間は本当に困惑しています。

ありがとう

以下にサンプル グラフを示します。パスの合計重みがゼロを超えない、開始からゴールまでのパスを見つける必要があります。

グラフの例 http://i144.photobucket.com/albums/r166/ZooropaTV/bu.jpg

私の目標は必ずしも重量で最短経路を見つけることではないので、私が行ってきた検索/読み取りの多くが見当違いであることに気付きましたが、必要最小限のノード数にアクセスすることで、別のことを考える必要があります今更ですが、何かアドバイスがあればお願いします

4

1 に答える 1

0

私はこれがあなたが望むものだと思います: Floyd-Warshall アルゴリズムhttp://en.wikipedia.org/wiki/Floyd%E2%80%93Warshall_algorithm

ニーズに合わせて変更する必要がありますが、負のサイクルが検出されるため、重みが 0 以下のパスを見つけることができます。

于 2012-08-22T18:49:43.047 に答える