Dopravní problém
Dopravní problém je optimalizační úloha, jejímž cílem je minimalizovat cenu přepravy zboží. Poprvé formulována F. L. Hitchcockem v roce 1941.
Úloha
editovatV dopravním problému se jedná o optimalizaci rozvozu nějaké homogenní látky (např. zboží, osob či materiálu) ze zdrojů (od dodavatelů) do cílových míst (k odběratelům). Ve většině případů je cílem minimalizace celkových nákladů spojených s rozvozem, popřípadě minimalizace celkové vzdálenosti, přičemž by měly být uspokojeny požadavky odběratelů.
Úkolem je tedy za takovýchto podmínek stanovit, kolik měrných jednotek určité homogenní látky dodá každý dodavatel každému odběrateli.
Máme dáno:
- m zdrojů s kapacitami ai (i = 1, …,m)
- n spotřebitelů s kapacitami bj (j = 1, …,n)
- ci j cena přepravované jednotky zboží od i. zdroje k j. spotřebiteli
Proměnné značíme xi j, udávají množství přepravovaného zboží od i. zdroje k j. spotřebiteli.
Úloha dopravního problému:
přičemž množina M je popsána omezeními
Metody řešení
editovatJedná se o úlohu lineárního programování, je tedy možné ji řešit metodami lineárního programování. Pro její specifický tvar byly ale odvozeny algoritmy šité na míru dopravnímu problému: Dantzigův a modifikovaný Dantzigův algoritmus (anglicky „stepping stone algorithm“), Arsham-Kahnův algoritmus, aj.
Vlastnosti dopravního problému
editovatPřípustné řešení
Přípustným řešením dopravního problému je vektor x = (x1 1,x1 2,...,xm n)T, jehož složky splňují výše zmíněné podmínky.
Věta 1: Dopravní problém má přípustné řešení.
U vyrovnaného dopravního problému, kde je součet kapacit roven součtu požadavků, existuje vždy způsob, jak tyto kapacity rozdělit mezi požadavky odběratelů. Při teoretickém důkazu dosadím výraz xi j=(ai bj)/K, kde
do vlastních omezení modelu:
takže jsou splněna řádková i sloupcová omezení modelu a vzhledem k tomu, že kapacity i požadavky jsou vyjádřeny jako nezáporná čísla, je splněna i podmínka nezápornosti. Základní přípustné řešení
Základním přípustným řešením dopravního problému je takové přípustné řešení, které obsahuje nejvýše (m+n-1) kladných složek, u kterých tvoří vektory strukturních koeficientů lineárně nezávislou soustavu.
Věta 2: Dopravní problém má základní přípustné řešení.
Pokud za libovolnou proměnnou xr s dosadím min(ar,bs) vynuluje se buď příslušná kapacita r-tého dodavatele, nebo požadavek s-tého odběratele. V modelu ubude jedno vlastní omezení. Stejným způsobem budu pokračovat do té doby, než v modelu zůstanou dvě omezení taková, že zůstatková kapacita bude rovna zůstatkovému požadavku. Tudíž bude možné splnit obě omezení najednou. Počet omezení v modelu je (m+n), ale kladných proměnných bude (m+n-1), tedy o jednu méně.
Optimální řešení
Optimálním řešením dopravního problému je takové přípustné řešení, které hodnotu účelové funkce minimalizuje.
Věta 3: Dopravní problém má optimální řešení.
Při důkazu tohoto tvrzení vyjdeme z grafického znázornění řešení dopravního problému, kde je množina přípustných řešení konvexní polyedr omezený podmínkami nezápornosti, kapacitami a požadavky. Z toho důvodu množina přípustných řešení nebude nikdy neomezená. Pokud se účelová funkce dotkne konvexního polyedru v jednom bodě, nabývá svého maxima, či minima, dotkne-li se ho ve více bodech, mé úloha nekonečně mnoho optimálních řešení.
Základní věta dopravního problému
Věta 4: Dopravní problém má všechny báze trojúhelníkové.
Báze B dopravního problému má rozměry [(m + n) x (m + n - 1)]. Řádky této matice tvoří omezení, z nichž je vždy jedno lineární kombinací ostatních, proto je možné vynechat jeden řádek. Takto vznikne redukovaná matice báze B0, která je čtvercové a je tedy možné ji invertovat. Vhodnými úpravami převedeme matici B0 na trojúhelníkovou, takže je v soustavě B0 b=xB, kde je vektor pravých stran omezení a xB je vektor základních proměnných, alespoň jedna základní proměnná určená jednoznačně.
Duální problém k dopravnímu problému
editovatDuální úloha k dopravnímu problému se konstruuje na základě stejných principů, jako duální úloha ke standardní úloze lineárního programování. V problematice dopravního problému je duální úloha jednou z nejdůležitějších částí, jelikož se duální úlohy využívá při řešení dopravního problému.
Vlastní omezení matematického modelu dopravního problému jsou rovnice, proto bude duální problém nesymetrický.
Počet duálních proměnných je určen počtem vlastních omezení v primárním problému a bude jich tedy (m+n). Označíme m duálních proměnných, které budou přiřazeny řádkovým omezením, jako u_i a n duálních proměnných, které budou naopak přiřazeny sloupcovým omezením, jako v_j. Vzhledem k tomu, že duální problém je nesymetrický, nebudou mít duální proměnné podmínky nezápornosti.
Duální problém bude mít (m.n) omezení, kde každé z nich odpovídá jedné proměnné v primárním problému.
Jestliže účelovou funkci v primárním problému minimalizujeme, což je splněno vždy, pokud ji z nějakého formálního důvodu nepotřebujeme maximalizovat, pak budeme účelovou funkci duálního problému maximalizovat.
Matematický model duálního problému pak vypadá následovně:
maximalizovat
za podmínek
Literatura
editovat- Ján Plesník, Jitka Dupačová, Milan Vlach: Lineárne programovanie, ALFA, Bratislava 1990, 1. vydání.
- Libuše Grygarová: Úvod do lineárního programování, skripta, Státní pedagogické nakladatelství, Praha 1975, 1. vydání.
- Milada Lagová, Josef Jablonský: Lineární modely, VŠE, Praha 1999, 1. vydání.
Externí odkazy
editovat- Obrázky, zvuky či videa k tématu dopravní problém na Wikimedia Commons