• Nie Znaleziono Wyników

Wykad 7 - najkrtsze cieki w grafach (plik pdf)

N/A
N/A
Protected

Academic year: 2021

Share "Wykad 7 - najkrtsze cieki w grafach (plik pdf)"

Copied!
5
0
0

Pełen tekst

(1)

Woj ie h Pen zek

1 Znajdowanie nakrótszej ± ie»ki w grae

Zastosowania: znalezienie najkrótszej trasy midzy dwoma

miastami.

Dany graf

G

= (V, E, M )

, w którym

M

(v, v

)

przyp-isuje krawdziom wagi o warto± ia h rze zywisty h

nieu-jemny h.

Wag¡ ± ie»ki w grae nazywamy sum wag jej krawdzi.

Waga najkrótszej ± ie»ki w grae pomidzy

v

i

v

(ozn.

δ

(v, v

)

) to minimum ze wszystki h wag ± ie»ek z

v

do

v

lub

je±li taka ± ie»ka nie istnieje.

Algorytm BFS znajduje najkrótsze ± ie»ki w grafa h z

jed-norodn¡ wag¡ wszystki h krawdzi.

Rozwa»amy graf

G

z wyró»nionym wierz hoªkiem

s

. Nale»y znale¹¢ najkrótsz¡ ± ie»k z

s

do

v

dla ka»dego wierz hoªka

(2)

Badamy podgraf poprzedników

G

π

= (V

π

, E

π

, M

π

)

, gdzie

V

π

= {v ∈ V | π[v] 6= nil} ∪ {s}

,

E

π

= {(π[v], v) | v ∈ V

π

\ {s}}

.

M

π

= M |

(V

π

×V

π

)

.

Algorytm bdzie tak budowaª graf

G

π

by byª on grafem najkrótszy h ± ie»ek tzn. takim podgrafem

G

, »e ka»da ± ie»ka

G

π

jest najkrótsz¡ ± ie»k¡ w

G

.

Zauwa»my, »e graf

G

π

jest drzewem, a wi dla ka»dego wierz hoªka

v

istnieje o najwy»ej jedna ± ie»ka z

s

do

v

. Przykªad 1.1 Graf i najkrótsze ± ie»ki w grae.

Fakty:

Pod± ie»ki najkrótszy h± ie»ek s¡ najkrótszymi ± ie»kami,

• δ(s, v) ≤ δ(s, w)+M (w, v)

dla ka»dej krawdzi

(w, v)

. 1.1 Relaksa ja

Atrybut

d

[v]

utrzymuje najmniejsz¡ obli zon¡ wag ± ie»ki z

s

do

v

.

Ini jaliza ja: po z¡tkowo wszystkie

d

[v] = ∞

za wyj¡tkiem

d

[s] = 0

,

π

[v] = nil

.

Relaksa ja krawdzi

(u, v)

polega na sprawdzeniu zy

(3)

od doty h zasowej najkrótszej ± ie»ki do

v

i je±li tak na zmodykowaniu

π

[v]

i

d

[v]

.

RELAX(u,v,M)

1. if

d

[v] > d[u] + M (u, v)

then

d

[v] := d[u] + M (u, v)

,

π

[v] := u

; Wªasno± i relaksa ji

1. Po wykonaniurelaksa ji za hodzi

d

[v] ≤ d[u]+M (u, v)

, 2. Warunek

d

[v] ≥ δ(s, v)

jest niezmiennikiem dowolnego

i¡gu relaksa ji po wykonaniu ini jaliza ji,

3. Kiedy

d

[v] = δ(s, v)

, to ju» wi ej nie ulega zmianie. 4. Nie h

s

− − > u → v

bdzie najkrótsz¡ s ie»k¡ w

grae. Je±li po wykonaniu i¡gu relaksa ji

d

[u] = δ(s, u)

i zostanie wykonane

RELAX

(u, v, M )

, to

d

[v] = δ(s, v)

. 5. Po wykonaniu ini jaliza ji graf

G

π

jest drzewem o

ko-rzeniu

s

i wªasno±¢ ta jest niezmiennikiem ka»dego i¡gu relaksa ji.

6. Je±li po wykonaniu ini jaliza ji i dowolnego i¡gu

re-laksa ji w grae

G

za hodzi

d

[v] = δ(s, v)

dla ka»dego wierz hoªka

v

, to

G

π

jest drzewem najkrótszy h ± ie»ek w

G

.

(4)

Dijkstra(G,s) 1 ini jaliza ja

G, s

; 2

S

:= ∅

; 3

Q

:= V

; 4 while

Q

6= ∅

; 5

u

:= Extract−M in(Q)

6

S

:= S ∪ {u}

; 7 for ea h

v

∈ L[u

℄;

8

RELAX

(u, v, G)

;

Q

- kolejka (priorytetowa),

Wierz hoªki w

Q

s¡ ustawione zgodnie ze wzrastaj¡ ymi wagami

d

.

Extract

−M in(Q)

ozna za wybranie i usuni ie z

Q

wierz- hoªka o minimalnej wadze

d

.

(5)

BELLMAN-FORD(G,s)

1 ini jaliza ja

G, s

; 2 for

i

:= 1

to

|V | − 1

;

3 do for ea h

(u, v) ∈ E

; 4 do

RELAX

(u, v, G)

;

Cytaty

Powiązane dokumenty

To make electrical circuits described by equaJon (1), acJve circuit elements with the cubic nonlinear property, i = ϕ(v) = γv 3 − αv (2) are required, where i and v

double rMax = 3.3; // maximum separation to include in pair list. int nPairs; // number of pairs currently in

Dlatego też, ze względu na błędy numeryczne, rozwiązanie, które nas interesuje, może być niestabilne (błędy zaokrągleń).. Zdarza się to w przypadku j l dla l znacznie

Dlatego też, ze względu na błędy numeryczne, rozwiązanie, które nas interesuje, może być niestabilne (błędy zaokrągleń).. Rekurencję prowadzimy w dół, aż do interesującej

Metoda, którą podaje Richardson, jest również oparta na przybliżeniu ope- ratora ewolucji, lecz jest to metoda zarówno jawna, jak i unitarna, i stabilna numerycznie.. Operator

ewolucji funkcji falowej, który jest formalnym rozwiązaniem

Stanford Engineering Everywhere, Introduction to Computer Science | Programming Paradigms: http://see.stanford.edu/see/courses.aspx --> Programming paradigms --> Lectures (by

Proces odrzucenia Boga i następujący po nim etap pojednania oraz po‑ nownego zjednoczenia rodzaju ludzkiego w Duchu Świętym są przedmiotem analiz teologii dramatycznej, w