= dvojice disjunktních množin uzlů (vrcholů, vertex-vertices) a hran (edge-edges), přičemž hrana vždy spojuje právě dva uzly (které nemusí být různé)
incidence = místu vstupu nebo výstupu hrany, vztah hrany s uzlem
definice grafu
graf je trojice G={H, U, ρ), kde:
H je množina hran H={h1, h2, …, hn}
U je množina uzlů U={u1, u2, …, um}
ρ je indicenční funkce, která je dána předpisem:
pro neorientovaný graf
H → U ⊗ U (množina všech neuspořádaných dvojic prvků z množiny U)
pro orientovaný graf
H → U × U (kartézský součin - množina všech uspořádaných dvojic prvků z množiny U)
kostra grafu
libovolný podgraf spojující hranami všechny vrcholy původního grafu
sám neobsahuje žádnou kružnici
izomorfní graf
něco s bijekcí (najdu si to!!!!)
mají stejný počet vrcholů i hran
hrany
orientovaná, neorientovaná, násobné hrany, rovnoběžné hrany (jaký je rozdíl mezi násobnou a rovnoběžnou???, smyčka
ohodnocená, neohodnocená
vzdálenost, průchodnost, kapacita hrany pro přenos (informace, komodity)
funkce, která dosazuje vrcholům hodnoty s jejich nejkratší vzdáleností = metrika (NUTNOST SOUVISLÉHO GRAFU)
typy grafů
podle smyček a rovnoběžných hran
jednoduchý graf (obyčejný graf)
nemá ani smyčky ani násobné hrany
multigraf
obsahuje násobné hrany (tzn. když jsou dva uzly spojeny více hranami) i smyčky
pseudograf (prostý graf)
obsahuje smyčky
podle orientace
orientovaný
všechny hrany jsou orientované
vyjadřuje jednostranné (nesymetrické) vztahy mezi uzly
neorientovaný
všechny hrany jsou neorientované
vyjadřuje oboustranné vztahy
např. sourozenci
smíšený
obsahuje orientované i neorientované hrany
v praxi se nepoužívá (spíš se nahradí orientovanými hranami - opačné směry)
podle souvislosti
souvislé
musí ∃ cesta mezi každou dvojicí vrcholů
nesouvislé
podle ∃ kružnice v grafu
cyklické
acyklické
nakreslím ho do roviny bez křížení hran?
rovinné
nerovinné
souvislost grafu
kružnice je uzavřená cesta
z každého sledu lze vybrat cestu
v souvislém grafu existuje cesta mezi každou dvojicí jeho uzlů
sled
taková posloupnost vrcholů, že mezi každými po sobě dvěma jdoucími je hrana
prostě to musí být spojení
tah
sled, kde není žádná hrana víc než jedenkrát
sled, kde se neopakují hrany
uzavřený tah
končí tam kde začal. tak jak my.
cesta
je sled, ve kterém se neopakují vrcholy
tedy každý vrchol se v cestě objevuje nejvýše jednou. Existuje-li mezi dvěma vrcholy sled v grafu, existuje mezi nimi i cesta
kružnice
každá uzavřená cesta
cyklus
uzavřená orientovaná cesta
reprezentace grafů
diagramem
definicí
maticí
v hlavní diagonále jsou nuly (uvažujeme obyčejný graf bez smyček)
u neorientovaného grafu je symetrická podle hlavní diagonály
vím
matice sousednosti
počet hran mezi dvěma sousedními uzly
vím
datovými strukturami
matematicky
seznam sousedů / seznam vrcholů se seznamem hran
indidenční matice
matice sousednosti má UZLY a UZLY v X i Y
tohle to má nahoře HRANY a vlevo UZLY
matice dosažitelnosti
je jenom dole pod diagonálou
johooo, pokud do toho čísla existuje sled, tak 1! jinak nula.
takže když nevede nic do 7, tak bude mít celý prázdný řádek
strom
souvislý graf
neobsahuje kružnici
mezi každými dvěma vrcholy existuje právě jedna cesta
je to datová struktura
úlohy
hledání nejkratší cesty
Dijkstrův algoritmus
ne záporná délka
Bellman-Fordův
i záporné hrany
hledání minimální kostry
Kruskalův algoritmus
je hladový
hledání maximální kostry
toky v sítích
pomocí grafů můžeme řešit problém nalezení maximálního toku v síti
vodovodní potrubí, dopravní síť, datová síť
síťová analýzy
silniční a uliční síť:
délka
průměrná rychlost
úprava na základě podmínky (na sněhu snížím o 20 %)
speciální ohodnocení - historická hustota dopravy (to se musím podívat!)
TMC = Trafic Message Channel - pokud je v daném místě k dispozici, přenáší živá data o aktuální hustotě dopravy
omezení (restrictions)
protože: šířka komunikace (max. povolená čířka vozidla), nosnost mostů, průjezdní výšky podjezdů
definice směru jízdy
bariéry
geografický prvek (bod, linie, plocha), který lze do sítě dynamicky vložit
zákaz (restriction) nebo zdržení (scaled cost)
dočasná uzavírka: uzavření jednoho úseku silnice v síti, stačí jej „přeškrtnout“ krátkou úsečkou liniové bariéry, trasa tomuto úseku vždy vyhne
plošná bariéra charakteru „zdržení“ může být situace, kdy se má algoritmus hledání optimální trasy vyhnout určité oblasti. Např. hustě obydlená oblast je reprezentována polygonem s parametrem „zdržení“ s hodnotu 2 - při výpočtu bude trvat průjezd 2x déle
odbočitelnost
např. jako čas nezbytný na odbočení můžu zahrnout do výpočtu (jakože doleva odbočit bývá těžší a delší)
výsledkem může být grafický element optimální trasy, ale i podrobný itinerář, přes které ulice nebo čísla silnic se do cíle dostaneme, a to dokonce i včetně informací o směrovém značení
Service Areas
obslužnost
podle komunikace
nejbližší středisko obsluhy (Closest Facility)
která spádová nemocnice (policejní služebna, obchod) je pro obyvatele z jednotlivých ulic nejbližší
matice vzdáleností (OD Cost Matrix)
vygeneruje tabulku známou dříve z běžných autoatlasů, která informuje o vzdálenostech mezi jednotlivými městy
lokační analýza (Location)
umožní navrhnout optimální umístění střediska (výjezdové místo HZS)
alokační analýza (Alocation)
vypočítá obslužnost daného střediska (výjezdového místa HZS)
problém optimalizace provozu (Vehicle Routing Problem)
tak to je hustý!
zákazníci, sklady a vozidla → rozvézt zboží mezi zákazníky v určitém čase → počítá i s kapacitou vozidla, závozovými okny, časy kdy jsou vozidla k dispozici
Permalink teorie_grafu.txt · Last modified: 2017/09/21 16:31 by efox