Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

INF 295 Forelesning 19 - Dynamisk programmering Korteste vei alle til alle (Floyd) Hans Fr. Nordhaug (Ola Bø)

Liknende presentasjoner


Presentasjon om: "INF 295 Forelesning 19 - Dynamisk programmering Korteste vei alle til alle (Floyd) Hans Fr. Nordhaug (Ola Bø)"— Utskrift av presentasjonen:

1 INF 295 Forelesning 19 - Dynamisk programmering Korteste vei alle til alle (Floyd) Hans Fr. Nordhaug (Ola Bø)

2 Dynamisk programmering (DP) Kan gi optimale løsninger. Problemer som ser ut til å kreve eksponentiell tid, kan løses i polynomisk tid. Algoritmene som oppstår ved bruk av DP er som regel ganske enkle med nøstede for- løkker for utfylling av en tabell. Floyds algoritme er et eksempel på DP

3 Dynamisk programmering Problemet må kunne deles opp (gjentatte ganger) i enkle delproblem som kan defineres lett og dermed lagres i en tabell. Løsning (optimum) for problemet må kunne settes sammen av løsning for delproblem. Løsninger til ikke-relaterte delproblem kan inneholde felles delproblem.

4 Korteste vei alle til alle Floyds algoritme Beregnes korteste vei mellom alle par av punkter i en rettet graf O(|V| 3 ) Samme problem kan løses ved å kjøre korteste vei fra en til alle (Dijkstra) i alle noder O(|V| 3 ) Floyd er trolig raskere ved tette grafer pga korte sløyfer Grunntanke: Hvis veien fra i til k er ik og veien fra k til j er kj, så går det en vei fra i gjennom k til j med lengde ik+kj

5 Floyds algoritme Start med avstand mellom noder lik vekten til kanten som binder dem sammen eller uendelig hvis det ikke er noen direkte kant. Trinn 0 se etter forbedringer med node 0 som mellomledd Trinn k: Avstanden mellom to noder er den korteste veien som bare bruker nodene 0,1,...,k Forbedring ved å gå gjennom k bygger på avstanden fra i til k og fra j til k som bruker nodene 0,1,....k-1 Avstanden mellom noder lagres i en |V|*|V| array

6

7


Laste ned ppt "INF 295 Forelesning 19 - Dynamisk programmering Korteste vei alle til alle (Floyd) Hans Fr. Nordhaug (Ola Bø)"

Liknende presentasjoner


Annonser fra Google