単元一覧 › 大学数学 グラフ理論

グラフ理論の問題

難易度 1教科書の例題レベル大学数学 グラフ理論

頂点集合 の重みつき有向グラフを考える。辺(始点 終点)と重みは次の 6 本である。

このグラフに負の閉路はない。ベルマン・フォード法を用いて、始点 から頂点 への最短距離 を求め、組 の形で答えよ。

この問題で使うもの

ヒント

行き詰まったら、上から順に 1 つずつ開いてください。

ヒント 1

ベルマン・フォード法を使う。、他の頂点は から始め、すべての辺について緩和を 回くり返す。

ヒント 2

各辺 で とする。負の辺 (重み )で がどう変わるかに注意する。

ヒント 3

1 回目で , となったあと、辺 で に更新される。続けて辺 で を計算し、2 回目以降に更新があるか確かめる。

答えと解説

答えを見る
結果を記録する(このブラウザにだけ保存されます):
解説を読む

ベルマン・フォード法では、初期値を 、 とする。すべての辺 について緩和

を行う操作を 1 回とし、これを 回くり返す。辺は問題文の順に調べる。

1 回目
- : なので 。
- : なので 。
- : なので (負の辺によって距離が短くなる)。
- : なので 。
- : で変化なし。
- : で変化なし。

1 回目の終わりで 。

2 回目
- :、:、:、:、:、:。
どの値も変化しない。

3 回目 も 2 回目と同じ計算になり、変化はない。

さらにもう 1 回(4 回目)すべての辺を調べても更新は起こらないので、負の閉路がないことも確認できる。実際、 に入る辺はなく、 に入る辺は と だけなので、このグラフの閉路は (重み )と (重み )の 2 つであり、いずれも重みは正である。

よって最短距離は (経路 )、(経路 )、(経路 )であり、答えは である。

別解

辺は s→a:2, s→b:5, b→a:-4, a→c:3, b→c:1, c→b:2。

負の閉路がないか確認する。閉路は b→c→b だけで、重みは 1+2=3>0 なので負の閉路はない。

ベルマン・フォード法を行う。初期値は d(s)=0、d(a)=d(b)=d(c)=∞ とする。辺の緩和は問題文に書かれた順に行う。

1 回目: s→a で d(a)=2。s→b で d(b)=5。b→a で 5-4=1<2 なので d(a)=1。a→c で 1+3=4 なので d(c)=4。b→c は 5+1=6 で、4 より大きいので更新しない。c→b は 4+2=6 で、5 より大きいので更新しない。

2 回目: 更新される値はない。よって収束する。

結果は d(a)=1, d(b)=5, d(c)=4 である。

検算: a への経路は s→b→a で 5-4=1、直接の s→a では 2 なので 1 が最短。b への経路は s→b で 5。s→a→c→b は 2+3+2=7、s→b→a→c→b は 1+3+2=6 で、いずれも 5 より長い。c への経路は s→b→a→c で 5-4+3=4、s→b→c では 6 なので 4 が最短。

よって (d(a), d(b), d(c)) = (1, 5, 4) である。

この問題の確認

AI が作成した問題です。公開前に次の確認を行いました。確認の方法について

間違いを報告する

この問題の誤り・分かりにくい点・難易度や学年のずれを知らせる
どこについての報告ですか

報告の内容と問題の番号を保存します。名前やメールアドレスは保存しません。

関連する問題