Dopravní úloha Literatura Kosková I.: Distribuční úlohy I
Jednostupňová dvouindexová úloha Přeprava zboží, materiálu, lidí …z míst zdrojů k místům spotřeby jediným způsobem To, co odvážíme nebo přivážíme se jednoduše sčítá Odkud - dodavatelé Kam – spotřebitelé Co (kolik)? Za kolik? D S
Dopravní úloha Matematický model Tabulkový zápis Vyvážení úlohy Nalezení výchozího řešení Test optima Přechod na lepší řešení
Matematický model Najděte minimum (maximum) lineární funkce za podmínek a podmínek nezápornosti
Příklad Ze tří kompostů rozvážíme hnojivo na čtyři hony. Vzdálenosti v km mezi jednotlivými komposty a hony, kapacity kompostů a požadavky honů jsou uvedeny v dopravní tabulce. Máme určit takový přepravní plán, při kterém bude celkový počet ujetých tkm minimální. S1 S2 S3 S4 ai D 3 5 4 1 10 2 20 bj
Políčko uvnitř tabulky Perspektivita Vzdálenost ui+vj-cij cij xij ui+vj Qij Propustnost Hodnota testu optimality Přepravované množství
Charakter dopravního systému Kapacity dodavatelů a = (10, 20, 10)T Požadavky spotřebitelů b = (10, 5, 5, 20) Matice vzdáleností Úloha je vyvážená
Vyvážení úlohy Kapacita dodavatelů vyšší než požadavky spotřebitelů: přidáme fiktivního spotřebitele převis nabídky – část dodávek se nerealizuje Kapacita dodavatelů menší než požadavky spotřebitelů: přidáme fiktivního dodavatele převis poptávky – určitá část poptávky bude neuspokojená
Vyvážení úlohy Sazby ve fiktivním řádku i sloupci budou nulové Kapacita fiktivního sloupce (spotřebitele) se rovná součtu kapacit dodavatelů mínus součet kapacit spotřebitelů Kapacita fiktivního řádku se rovná součtu kapacit spotřebitelů mínus součet kapacit dodavatelů
Metody pro nalezení výchozího řešení Metoda severozápadního rohu Indexová metoda Vogelova aproximační metoda
Metoda severozápadního rohu 1. krok: Dopravní tabulka má právě jeden severozápadní roh (buňku); Obsadíme tuto buňku maximálním možným množstvím zboží xij, tj. hodnotou min(ai, bj) Dodavatele, resp. spotřebitele, který má vyčerpanou kapacitu, resp. požadavek vypustíme z dalších úvah (vyškrtneme z dopravní tabulky). 2. krok: V nově vzniklé dopravní tabulce (bez vyškrtnutého dodavatele, resp. spotřebitele) opakujeme krok 1. Konec algoritmu: když jsou vyčerpány kapacity všech dodavatelů a uspokojeny požadavky všech spotřebitelů.
Metoda severozápadního rohu Výchozí řešení nalezené metodou SZ rohu
Indexová metoda krok: 2. krok: Konec algoritmu: V dopravní tabulce najdeme nejmenší cenu a buňku, která tuto cenu obsahuje, obsadíme maximálním množstvím zboží xij, tj. hodnotou min(ai bj). Dodavatele, resp. spotřebitele, jehož kapacitu jsme vyčerpali, resp. jehož požadavek jsme uspokojili, vyškrtneme z tabulky a vypustíme z dalších úvah. 2. krok: V nově vzniklé tabulce (menší, bez vyškrtnutého dodavatele, resp. spotřebitele) opakujeme krok 1. Konec algoritmu: když jsou vyčerpány kapacity všech dodavatelů a uspokojeny požadavky všech spotřebitelů.
Indexová metoda První krok indexové metody
Indexová metoda Výchozí řešení nalezené indexovou metodou
Vogelova aproximační metoda krok: V každém řádku a každém sloupci (dále jen v každé řadě tabulky) určíme rozdíly mezi dvěma nejvýhodnějšími cenami; nazveme je řádkové, resp. sloupcové diference (dále jen řadové diference). 2. krok: V řadě (řádku nebo sloupci) s největší diferencí se vyhledá buňka s nejvýhodnější cenou a obsadí se maximálním přípustným množstvím zboží xij. Dodavatel, resp. spotřebitel, u kterého je vyčerpána kapacita, resp. splněn požadavek, se z tabulky vyškrtne a vypustí z dalších úvah. 3. krok: V nově vzniklé (menší) tabulce se opakuje krok 1. a 2. Konec algoritmu: když jsou vyčerpány kapacity všech dodavatelů a splněny požadavky všech spotřebitelů.
Vogelova aproximační metoda Volba první trasy
Test optimality krok: 2. krok: 3. krok Určíme m+n hodnot duálních proměnných ui, vj ze vztahu ui+vj = cij, tj. pro (i,j)B (obsazená pole). Protože soustava rovnic má jeden stupeň volnosti (o jednu proměnnou víc než je rovnic), volíme ji libovolně (např. položíme u1= 0). 2. krok: Pro všechny indexy (i,j)B (neobsazená pole) prověříme, zda platí ui+vj = cij. Platí-li to pro všechny (i,j)B, řešení DÚ je optimální. V opačném případě se dá řešení zlepšit: 3. krok Vybereme největší z rozdílů ui+vj - cij 0 a buňku DiSj obsadíme maximálním možným množstvím zboží (to se provede tzv. Dantzigovým uzavřeným obvodem).
První krok testu optimality
Druhý krok testu optimality Řešení je optimální
Test optimality Jiné výchozí řešení Řešení není optimální
Přechod na nové řešení Jedná se o změnu báze Změna přepravovaného množství musí být vyrovnána pro všechny dodavatele i spotřebitele Provádíme graficky v dopravní tabulce Grafické schéma se nazývá Dantzigův uzavřený obvod
Dantzigův obvod - definice Je to lomená čára, která vychází z neobsazené buňky (i,j)B, lomí se v obsazených buňkách (r,s)B a končí v původní buňce. Buňky, ve kterých se obvod lomí, označujeme střídavě znaménky + a podle toho, zda příslušnou hodnotu xij k trase přidáváme nebo z trasy odebíráme. Aby nové řešení bylo bazické, tj. obsahovalo opět m+n1 kladných hodnot cij, volíme za přesunovanou hodnotu xij minimální z hodnot xij na rozích uzavřeného obvodu označených znaménkem .
Danzigův uzavřený obvod + - - +
Nové řešení Přesun t=5 po Danzigově obvodu Řešení je degenerované
Degenerace Říkáme, že řešení je degenerované, když počet kladných hodnot xij (tj. počet obsazených spojů) je menší než m+n-1. Degenerace vzniká: Při konstrukci výchozího řešení Při přesunech po Dantzigových obvodech Odstranění degenerace Vložíme malé množství ε na neobsazené pole, které s ostatními obsazenými netvoří uzavřený okruh. Toto pole pak považujeme za obsazené.
Degerace při přesunu po Dantzigově obvodu
Odstranění degenerace Vložíme malé množství ε na neobsazené pole, které s ostatními obsazenými netvoří uzavřený okruh. Toto pole pak považujeme za obsazené.
Degenerace ve výchozím řešení Vyčerpána zároveň kapacita i požadavek
Nové řešení - + + - - +
Nové řešení
Optimální řešení