0

最初に、私の英語の知識が乏しいことをお許しください。

次の問題があります: 修正順序 (例: A -> D -> F) で 2 つ以上のポイント間の最短経路を見つけなければなりません。私はダイクストラのアルゴリズムに精通しています。しかし、それは 2 つの Point 間の最短経路のみを計算します。また、TSP についても聞いたことがありますが、それも当てはまらないようです。修正順序がないためです。自分の問題を既に Web で検索しましたが、あまり人気のない問題であるか、間違ったキーワードを使用した可能性があります。

それでも、この機能をうまく提供しているルート プランナーはたくさんあるので、解決策が存在するはずです。

だから、アグロリスに名前を付けて私の問題を手伝ってくれる人、またはアドバイスをくれる人がいますか。

ご助力ありがとうございます!敬具 アンジェロ

//編集ああ、それは非常に恥ずかしいです. 私は長い間考えていたようで、実際の問題を説明できませんでした。そのようなものです:最初からしか使用できないいくつかのチケットがあります。

T1: A -> B (コスト 50) T2: B -> C (コスト 50) T3: A -> B -> C (コスト 80) 与えられたルートは A -> B -> C

ご覧のとおり、指定されたルートを 2 つの別々の問題として扱うと、総コストは 100 になりますが、明らかにチケット T3 の方が優れたソリューションです。

4

2 に答える 2

1

一部のポイントが修正されていて、他のポイントが修正されていない場合 (つまり、ユーザーは から移動したいと考えていますA->D->Fが、グラフは、ユーザーがやらなければならない可能性があることを意味しますA->B->C->D->E->F)、これは標準的な問題です。オーダー ADF を気にするか、気にしないか (AFD かもしれません)。A->D D->F最初のケースでは、独立して計算する単純な 2 つのパス ( ) です。2 番目のケースでは、TSP に似ています。

于 2011-05-26T20:11:35.920 に答える
0

You can find the shortest path between A and D, then the shortest path between D and F etc. Applying Dijkstra algorithm multiple times for each pair of nodes.

于 2011-05-26T20:19:20.827 に答える