Metody síťové analýzy Řeší problematiku složitých systémů, zejména pak vazby mezi jejich jednotlivými prvky. Vychází z teorie grafů. Základní metody síťové analýzy: CPM (Critical Path Method) deterministický model. PERT (Program Evaluation and Review Technique) stochastický model. Základní pojmy Uzel vyjadřuje začátek nebo konec činnosti. Hrana grafické znázornění činnosti. Může být: orientovaná i t ij j neorientovaná i j Činnost vlastní provádění konkrétní pracovní operace. Fiktivní činnost činnost, která nespotřebovává čas ani zdroje.
Základní pojmy Projekt soubor činností se vzájemnými časovými a logickými vazbami. Síťový graf grafické znázornění projektu, je modelem projektu. Uzlově definovaný graf činnosti jsou reprezentovány pomocí uzlů a hrany představují vazby mezi těmito činnostmi. Hranově definovaný graf činnosti jsou reprezentovány pomocí orientovaných hran a uzly udávají ukončení předchozích a začátky následujících činností. Uzlově definovaný graf 9 9 0
Hranově definovaný graf 9 0 Základní pojmy Konečný graf obsahuje konečný počet uzlů. Částečně definovaný graf obsahuje alespoň jednu orientovanou hranu. Úplně definovaný graf graf, jehož všechny hrany jsou orientované. Acyklický graf neobsahuje žádnou smyčku. Cesta posloupnost všech na sebe navazujících činností, od počátečního až ke koncovému uzlu grafu. Kritická cesta cesta s nejdelším trváním, určuje dobu trvání projektu.
Cyklus v grafu Acyklický graf
Základní pojmy Souvislý graf graf, kde mezi každýma dvěma různými uzly existuje cesta. Úplný graf graf, ve kterém existuje hrana mezi každou dvojicí uzlů je nutně souvislý. Podgraf je tvořen některými nebo i všemi uzly původního grafu a některými z hran pův. grafu. Kostra grafu podgraf, který obsahuje všechny uzly původního grafu a neobsahuje cyklus. Hamiltonovská cesta cesta, která obsahuje všechny uzly grafu, ale nemusí obsahovat všechny hrany. Souvislý graf Neorientovaně souvislý graf Úplný graf
Graf, jeho podgraf a kostra Graf Příklad podgrafu Kostra grafu Hamiltonovská cesta
Typické úlohy teorie grafů určení minimální (maximální) kostry grafu, nalezení nejkratší cesty, určení maximálního toku (propustnosti) v síti, úloha obchodního cestujícího Hamiltonovská cesta o minimální celkové délce. úloha čínského pošťáka nalezení trasy obsahující všechny hrany grafu, nalezení optimálního umístění depa obslužného střediska pro ostatní uzly, analýza a řízení projektů. Optimální spojení míst Jedná se o úlohu nalezení minimální kostry grafu. Popis algoritmu:. V celém grafu se vyberou dvě hrany s nejnižším ohodnocením.. V dalších krocích se vždy vybere další hrana s minimálním ohodnocením tak, aby netvořila cyklus s již dříve vybranými hranami.. Krok se opakuje až do vybrání celkového počtu (n ) hran, které budou tvořit hledanou minimální kostru grafu.
Příklad Problém prof. Borůvky Byla postavena malá elektrárna, která může zásobovat elektrickým proudem pět okolních obcí. Elektrické vedení lze postavit pro každou dvojici těchto obcí a je známá jeho délka v kilometrech (viz graf). Požadavkem je, aby elektřina byla zavedena do všech těchto obcí a současně, aby elektrické vedení bylo co nejkratší, a tím i nejlevnější na stavbu, údržbu a ztráty elektrického proudu. BORŮVKA, O. O jistém problému minimálním. Moravská přírodovědecká společnost v Brně, 9 Příklad Vzdálenosti mezi obcemi 9 0 0
Příklad - zadání Firma má záměr vybudovat kabelové rozvody pro televizi a další služby mezi sídlišti ve středně velkém městě. Rozložení sídlišť a jejich vzájemné vzdálenosti jsou uvedeny na mapce. Stanovte optimální trasování rozvodů tak, aby délka výsledné sítě byla minimální. 9 Příklad zadání (maximální kostra grafu) Pracovníci elektrárny omylem vešli do pracovny profesora Mefista. Ten se nechá oslovovat jako prof. Borůvka, vyslechne pozorně delegaci s tím, že problém vyřeší. Ve své prohnanosti má však v úmyslu vyřešit úlohu zcela opačně. Ponechat sice ve výsledku co nejmenší počet použitých spojení, ale nalézt takový výsledek, kde je celkové vedení ze všech možných nejdelší. 9
Příklad Vzdálenosti mezi obcemi 9 0 0 Nalezení nejkratší cesty Jedná se o úlohu nalezení minimální vzdálenosti mezi dvojicí míst. Uzly jsou např. křižovatky, železniční stanice apod. Popis algoritmu:. Hodnota ve výchozím uzlu se rovná nule u = 0.. Délka cesty je dána součtem dosavadní délky (obsažené v hodnotě u i ) a délky uvažovaného úseku h ij (hrany) s tím, že nás zajímá minimum výsledku: u j = min(u i + h ij ) j =,,, n. Krok se opakuje, dokud není vypočtena hodnota u n či hodnoty u j pro všechny uzly. 0
Příklad - zadání 0 Dodavatel Odběratel 9 Příklad - zadání Nalezněte nejkratší cestu po železniční síti z Liberce do Nymburku. SP LB 9 TU LI ČL JI BA DB 9 KO MB 0 9 NY
Nalezení Hamiltonovské cesty. Konstrukci HC začneme ve zvoleném uzlu u 0 tak, že k němu vybereme takovou s ním sousedící hranu, jejíž ohodnocení je minimální.. K uzlu, ve kterém se aktuálně nacházíme, vybereme dále do HC takovou s ním sousedící hranu, jejíž ohodnocení je minimální a jejíž koncový uzel není do HC ještě vybrán. Existuje-li více takových hran, vybereme libovolnou z nich.. Postup dle kroku opakujeme tak dlouho, dokud lze vybrat alespoň jednu další hranu požadované vlastnosti. Není-li již možno krok opakovat, vybereme hranu, která spojuje naposled vybraný uzel s uzlem u 0. Příklad - zadání Navrhněte takovou trasu vozidla pro obsluhu všech uzlů, která bude minimalizovat vykonanou dopravní práci. Obsluha začne a skončí v uzlu 0 a předpokládáme, že ložná kapacita vozidla je dostatečně velká, takže rozvážené zboží můžeme naložit pouze jednou v uzlu 0.
Příklad graf sítě 9 0 Příklad - zadání Navrhněte takovou trasu manipulačního vlaku, jehož počáteční a konečnou stanicí je Nymburk, která bude minimalizovat vykonanou dopravní práci. SP LB 9 TU LI ČL JI BA DB 9 KO MB 0 9 NY
Řešení pomocí programu STORM.0 zadání úlohy http://www.mti.tul.cz/cs/oa-mater Řešení pomocí programu STORM.0 výstup