Matematick metody optimalizace Tom Vanek Katedra inenrsk informatiky
- Slides: 36
Matematické metody optimalizace • • • Tomáš Vaníček Katedra inženýrské informatiky Stavební fakulta ČVUT Thákurova 7, Praha 6 Dejvice, b 407 vanicek@fsv. cvut. cz
Hledání nejkratší cesty 60 Plzeň 50 Strakonice 50 Praha Zdice 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 60 ČB
Přes Budějovice je to 250 km 60 Plzeň 50 Strakonice 50 Praha Zdice 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 60 ČB
Přes Plzeň jen 240 km 60 Plzeň 50 Strakonice 50 Praha Zdice 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 60 ČB
Takhle je to jen 235 km 60 Plzeň 50 Strakonice 50 Praha Zdice 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 60 ČB
Je to už opravdu nejkratší cesta? • Těch možných cest je docela dost • Chce to nějaký systém, jak je prozkoumat
Dijskrův algoritmus 60 Plzeň 50 Strakonice 50 Praha 0 Zdice 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 60 ČB
Dijskrův algoritmus 60 Plzeň 50 Strakonice 50 Praha 0 Zdice 50 90 100 50 5 Písek 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 90 60 ČB
Dijskrův algoritmus 60 Plzeň 110 50 Strakonice 50 Praha 0 Zdice 50 90 100 50 5 Písek 150 30 80 Protivín 10 Číčenice 40 Lenora 10 60 Volary 90 Tábor 90 60 ČB
Dijskrův algoritmus 60 Plzeň 110 50 Strakonice 50 Praha 0 Zdice 50 90 100 50 Tábor 90 5 Písek 140 30 80 Protivín 10 60 Číčenice 40 Lenora 10 60 ČB 150 Volary 90
Dijskrův algoritmus 60 Plzeň 110 50 Praha 0 Zdice 50 90 100 50 Strakonice 160 50 Tábor 90 5 Písek 140 30 80 Protivín 10 60 Číčenice 40 Lenora 10 60 ČB 150 Volary 90
Dijskrův algoritmus 50 60 Praha 0 Zdice 50 Plzeň 110 90 100 50 50 Strakonice 160 80 5 30 Písek 140 Protivín 14510 Lenora 10 60 Volary Tábor 90 60 Číčenice 40 ČB 150 90
Dijskrův algoritmus 50 60 Praha 0 Zdice 50 Plzeň 110 90 100 50 50 Strakonice 160 80 5 30 Tábor 90 Písek 140 Protivín 14510 Lenora 10 60 Volary Číčenice 155 60 40 ČB 150 90
Dijskrův algoritmus 50 60 Plzeň 110 90 100 50 Strakonice 160 80 Praha 0 Zdice 50 50 30 5 Tábor 90 Písek 140 Protivín 14510 Lenora 10 60 Volary 240 Číčenice 155 60 40 ČB 150 90
Dijskrův algoritmus 50 60 Plzeň 110 90 100 50 Strakonice 160 80 Praha 0 Zdice 50 50 30 5 Tábor 90 Písek 140 Protivín 14510 Lenora 10 60 Volary 215 Číčenice 155 60 40 ČB 150 90
Dijskrův algoritmus 50 60 Plzeň 110 90 100 50 Strakonice 160 80 Lenora 240 Praha 0 Zdice 50 50 30 5 Tábor 90 Písek 140 Protivín 14510 10 60 Volary 215 Číčenice 155 60 40 ČB 150 90
Dijskrův algoritmus 50 60 Plzeň 110 90 100 50 Strakonice 160 80 Lenora 225 Praha 0 Zdice 50 50 30 5 Tábor 90 Písek 140 Protivín 14510 10 60 Volary 215 Číčenice 155 60 40 ČB 150 90
Dijskrův algoritmus 50 60 Plzeň 110 90 100 50 Strakonice 160 80 Lenora 225 Praha 0 Zdice 50 50 30 5 Tábor 90 Písek 140 Protivín 14510 10 60 Volary 215 Číčenice 155 60 40 ČB 150 90
Kořenový strom nejkratších cest 60 50 Praha 0 Zdice 50 90 Plzeň 110 50 50 Strakonice 160 5 Písek 140 Protivín 14510 Lenora 225 10 60 Volary 215 Tábor 90 60 Číčenice 155 ČB 150
Několik definic • Graf – uspořádaná dvojice množin (V, E) • V – konečná množina vrcholů (vertex, node) • E – množina hran (edge) - některých dvojic vrcholů • Orientovaný graf- V množině E jsou uspořádané dvojice
Definice • Sled – Posloupnost v 0 e 1 v 1 e 2 … en vn, kde ei = {vi-1, vi} • Cesta – sled, ve kterém se neopakují vrcholy • Hranové ohodnocení grafu – funkce z E do R (jeden graf může mít více ohodnocení) • Délka cesty – součet délek hran • Nejkratší cesta
Dijskrův algoritmus • Zadán graf (V, E), ohodnocení d: E-R, počáteční vrchol P, koncový vrchol K • Vrcholu P přiřaď vzd(P): =0, ostatním vzd(v): =moc • Najdi vrchol v s minimálním vzd(P), který není hnědý • Obarvi v na hnědo • Pro všechny sousedy w vrcholu v spočítej vzd(v)+d(v, w), je-li to méně než vzd(w), uprav vzd(w) • Pokud není vrchol K hnědý, pokračuj třetím řádkem.
Příklad použití algoritmu • Graf a ohodnocení zadáno seznamem hran • • • • Praha-Zdice d({A, Z}) = 50 Zdice-Plzeň d({Z, P}) = 60 Plzeň-Strakonice d({P, S}) = 50 Praha-Tábor d({A, T}) = 90 Tábor-České Budějovice d({T, C}) = 60 Zdice-Písek d({Z, I}) = 100 Tábor-Písek d({T, I}) = 50 Písek-Protivín d({I, R}) = 5 Strakonice-Proeivín d({S, R}) = 30 Protivín-Číčenice d({R, Č}) = 10 Číčenice-České Budějovice d({Č, C}) = 40 České Budějovice - Volary d({C, V}) = 90 Číčenice-Volary d({Č, V}) = 60 Strakonice-Lenora d({S, L}) = 80 Volary-Lenora d({V, L}) = 10 • Počáteční vrchol A, koncový vrchol L
Průběh algoritmu Vrchol Vzd A 0 Moc Moc Moc Z P T C I S R Č V L Předchozí vrchol
Průběh algoritmu Vrchol Vzd A 0 50 Moc 90 Moc Moc Z P T C I S R Č V L Předchozí vrchol A A
Průběh algoritmu Vrchol Vzd A 0 50 110 90 Moc 150 Moc Moc Moc Z P T C I S R Č V L Předchozí vrchol A Z
Průběh algoritmu Vrchol Vzd A 0 50 110 90 150 140 Moc Moc Moc Z P T C I S R Č V L Předchozí vrchol A Z A T T
Průběh algoritmu Vrchol Vzd A 0 50 110 90 150 140 160 Moc Moc Z P T C I S R Č V L Předchozí vrchol A Z A T T P
Průběh algoritmu Vrchol Vzd A 0 50 110 90 150 140 160 145 Moc Moc Z P T C I S R Č V L Předchozí vrchol A Z A T T P I
Průběh algoritmu Vrchol Vzd A 0 50 110 90 150 140 160 145 155 Moc Z P T C I S R Č V L Předchozí vrchol A Z A T T P I R
Průběh algoritmu Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 240 Moc A Z A T T P I R C Z P T C I S R Č V L
Průběh algoritmu Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 215 Moc A Z A T T P I R Č Z P T C I S R Č V L
Průběh algoritmu Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 215 240 A Z A T T P I R Č S Z P T C I S R Č V L
Průběh algoritmu Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 215 225 A Z A T T P I R Č V Z P T C I S R Č V L
Průběh algoritmu Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 215 225 A Z A T T P I R Č V Z P T C I S R Č V L
Nejkratší cesta z A do L je L-V-Č-R-I-T-A 225 km Vrchol Vzd Předchozí vrchol A 0 50 110 90 150 140 160 145 155 215 225 A Z A T T P I R Č V Z P T C I S R Č V L
- Príprava na vyučovaciu hodinu informatiky
- Základné pojmy informatiky
- Matematick
- Richard malak
- Julie vanek
- Matematick
- Go 910
- Symbols in the devil and tom walker
- Uvod u informacione sisteme fon
- Katedra za rimsko pravo
- Oks uw
- Katedra optiky
- Katedra zdrowia kobiety
- Katedra psychologie ped muni
- Dusan onic matf
- Turnusi
- Financijsko pravo i financijska znanost
- Katedra elektroniki agh
- Katedra za pravnu informatiku
- Slidetodoc.com
- Katedra didaktiky prif uk
- Honanje skica
- Katedra za elektroniku
- Hamingov kod
- Katedra za rimsko pravo
- Umcs katedra prawa finansowego
- Stobiecki agh
- Katarzyna korzeniowska ump
- Katedra elektroenergetyki pollub
- Katedra dróg kolei i inżynierii ruchu
- Ffzg kineziologija
- Nejmenší společný násobek
- Mpp katedra
- Katedra elektroniki agh
- Katedra za mehanizaciju
- Katedra fizyki prz
- Katedra w chartres labirynt