Wstęp do logistyki kierunek: Matematyka specjalność: Logistyka z zastosowaniem matematyki i informatyki wykład Wstęp Przedmiotem logistyki sa min procesy transportu i magazynowania surowców oraz wytworzonych dóbr, a także planowania produkcji Celem działań logistycznych jest maksymalizacja zysków i minimalizacja kosztów Do podstawowych działów logistyki należa min: logistyka transportu i logistyka produkcji Jednym z podstawowych narzędzi matematycznych stosowanych w logistyce transportu i logistyce produkcji jest programowanie liniowe Jest to jeden działów teorii zadań ekstremalnych, zajmujacysięrozwi azywaniem zadań optymalizacyjnych, opisanych przez funkcje liniowe, określone na zbiorach opisanych układami równości lub nierówności liniowych Najprostszym przykładem zadania programowania liniowego jest zadanie znalezieniapunktuminimumfunkcjif(x)=axnaprzedziale[c,d] R + 0 Wpostacizadania programowania liniowego można zapisać wiele praktycznych zagadnień Modelowanie Przykład (planowanie produkcji) Wytwórca mebli powinien określić, ile stołów, krzeseł, biurek i szaf powinien wyprodukować, by zysk z ich sprzedaży był maksymalny Do produkcji wykorzystywane sa dwatypydesek Wytwórcaposiada500mdesekItypui000m-desekIItypuoraz dysponuje kapitałem 860 godzin roboczych na wykonanie zaplanowanej produkcji Ze złożonych zamówień i mozliwości magazynowych wynika, że należy wyprodukować co najmniej 40 stołów, 30 krzeseł, 30 biurek i nie więcej niż 0 szaf Do produkcji każdego stołu,krzesła,biurkaiszafypotrzebaodpowiednio5,,9,2mdesekitypui2,3,4, mdesekiitypu Nawykonaniestołupotrzeba3godzinpracy,krzesła-2godzin,biurka- 5 godzin, szafy- 0 godzin Ze sprzedaży jednego stołu, krzesła, biurka i szafy wytwórca osi agazyskodpowiednio50,20,60i40zł Model Wprowadźmy następujace oznaczenia: u -ilośćstołów u 2 -ilośćkrzeseł u 3 -ilośćbiurek
u 4 -ilośćszaf Funkcjonał kosztu, który należy zmaksymalizować, przyjmuje postać 50u +20u 2 +60u 3 +40u 4 max Ograniczenianałożonenazmienneu,,u 4 możnazapisaćnastępuj aco: u 40, u 2 30, u 3 30, u 4 0, 5u +u 2 +9u 3 +2u 4 500, 2u +3u 2 +4u 3 +u 4 000, 3u 2u 2 +5u 3 +0u 4 860 Zatem, uwzględniajacstandardoweograniczenianieujemnościzmiennychu,,u 4,możemy zapisać badane zagadnienie w nastepujacej postaci ( 50, 20, 60, 40),(u,u 2,u 3,u 4 ) min 5 9 2 500 2 3 4 3 2 5 0 u 000 u U ={u=(u,,u 4 ) R 4 ; u 0, 0 0 0 u 2 0 0 0 u 3 860 40 } 0 0 0 u 4 30 30 0 0 0 0 Przykład 2(zagadnienie transportowe) Pewien wytwórca posiada centrale zbytu z Lublinie, Łodzi i Szczecinie Centrale te posiadaja odpowiednio 40, 20 i 40 jednostek produktu Punkty sprzedaży zamówiły następujaceilościjednostekproduktu: Białystok-25,Cieszyn-0,Kraków-20,Sopot- 30, Warszawa- 5 Koszt transportu jednostki(w zł) z każdej centrali zbytu do dowolnego punktu sprzedaży podaje następujaca tablica: Białystok Cieszyn Kraków Sopot Warszawa Lublin 55 30 40 50 40 Łódź 35 30 00 45 60 Szczecin 40 60 95 35 30 Należy tak zaplanować dystrybucję produktu, by koszt transportu był minimalny Model W dalszym ci agu centrale zbytu w Lublinie, Łodzi i Szczecinie oznaczać będziemy numerami, 2, 3, odpowiednio, natomiast punkty sprzedaży w Białymstoku, Cieszynie, Krakowie, Sopocie i Warszawie oznaczać będziemy numerami,2, 3, 4, 5, odpowiednio Wprowadźmy także następujace oznaczenia: u i,j -ilośćjednostekproduktutransportowanychzi-tejcentralizbytu(i=,,3)doj -tegopunktusprzedaży(j=,,5) 2
c i,j - koszt transportu jednostki produktu z i - tej centrali zbytu do j - tego punktu sprzedaży Funkcjonał kosztu, który należy zminimalizować, przyjmuje postać i= 5 j= c i,ju i,j, natomiastograniczenianałożonenazmienneu i,j możnazapisaćnastępuj aco: 5 j= u,j = 40 5 j= u2,j = 20 5 j= u3,j = 40 Oznaczajac więc i= ui, = 25 i= ui,2 = 0 i= ui,3 = 20 i= ui,4 = 30 i= ui,5 = 5 u=(u,,,u,5,u 2,,,u 2,5,u 3,,,u 3,5 ) R 5, c=(55,30,40,50,40,35,30,00,45,60,40,60,95,35,30) i uwzględniajac standardowe ograniczenie nieujemności zmiennych, możemy badane zagadnienie zapisać w następujacej postaci c,u min 0 0 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 20 0 0 0 0 0 0 0 0 0 0 40 u U ={u R 5 ; u 0, 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 u= 25 0 0 0 0 0 0 0 0 0 0 0 0 0 20 0 0 0 0 0 0 0 0 0 0 0 0 30 0 0 0 0 0 0 0 0 0 0 0 0 5 Przykład 3 3
Dyrektor pewnego przedsiębiorstwa powinien obsadzić trzy stanowiska, które wymagaja różnych kwalifikacji i praktyki zawodowej, przy czym ma do dyspozycji trzech pracowników Ze względu na różne ich kwalifikacje, czas praktyki i zdobyte doświadczenie, wartość (dla przedsiębiorstwa) każdego z tych pracowników zależy od stanowiska, na którym jest on zatrudniony Poniższa tabela zawiera oceny wartości poszczególnych pracowników zatrudnionych na poszczególnych stanowiskach Stanowisko I Stanowisko II Stanowisko III Pracownik A 5 4 7 Pracownik B 6 7 3 Pracownik C 8 2 Należy tak rozmieścić pracowników na rozważanych stanowiskach, by całkowita ich wartość dla przedsiębiorstwa była maksymalna Model Symbolem u i,j oznaczać będziemy część etatu, na jak a należy zatrudnić i - tego pracownika na j -tym stanowisku (zakładamy tu, że każdy pracownik powinien być zatrudniony łacznie na jeden etat i każdemu stanowisku powinien być przypisany jeden etat) Funkcjał kosztu dla tego zagadnienia, który należy zmaksymalizować, ma następujac apostać 5u, +4u,2 +7u,3 +6u 2, +7u 2,2 +3u 2,3 +8u 3, +u 3,2 +2u 3,3, zaś ograniczenia sanastępuj ace: u, +u,2 +u,3 =, u 2, +u 2,2 +u 2,3 =, u 3, +u 3,2 +u 3,3 =, u, +u 2, +u 3, =, u,2 +u 2,2 +u 3,2 =, u,3 +u 2,3 +u 3,3 = Uwzględniajac zatem standardowe ograniczenia nieujemności zmiennych u i,j, możemy badane zagadnienie zapisać w postaci nastepujacego zadania programowania liniowego w postaci kanonicznej ( 5, 4, 7, 6, 7, 3, 8,, 2),(u,,,u,3,u 2,,,u 2,3,u 3,,,u 3,3 ) min u U ={u=(u,,,u,3,u 2,,,u 2,3,u 3,,,u 3,3 ) R 9 ; u, 0 0 0 0 0 0 u,2 0 0 0 0 0 0 u,3 u 0, 0 0 0 0 0 0 u 2, 0 0 0 0 0 0 u 2,2 = 0 0 0 0 0 0 u 2,3 } 0 0 0 0 0 0 u 3, u 3,2 u 3,3 4
2 Sformułowanie zadania Ogólnym zadaniem programowania liniowego nazywamy zadanie postaci: J(u)=c u ++c n u n min () u k 0, k I (2) a, u ++a,n u n b a m, u ++a m,n u n b m a m+, u ++a m+,n u n =b m+ a s, u ++a s,n u n =b s, (3) gdzie u = (u,,u n ) R n, natomiast c j, a i,j, b i, i =,,s, j =,,n, s a danymi liczbami rzeczywistymi, przy czym nie wszystkie liczby c j i nie wszystkie liczby a ij s a równezero,i {,,n}jestustalonymzbioremindeksów;możliwes a tutaj przypadki: I=,I={,,n},m=s,m=0 Wprowadzaj ac oznaczenia c=(c,,c n ), a i =(a i,,,a i,n ), możemy zapisać powyższe zadanie w następujacy sposób: J(u)= c,u min u U ={u=(u,,u n ) R n ; u i 0dlai I, a i,u b i dlai=,,m, a i,u =b i dlai=m+,,s} (4) (symbolem x,y oznaczamyiloczynskalarnywektorówx=(x,,x n ),y=(y,,y n ), tzn x,y = n i= x iy i ) Wdalszymci agu, zapis x y, gdziex=(x,,x n ),y=(y,,y n ),będzieoznaczał,że x i y i, i=,,n Wobec tego, zadanie(4) możemy zapisać następujaco: { J(u)= c,u min u U ={u=(u,,u n ) R n ; u i 0dlai I,Au b,au=b} (5) gdzie A= a, a,n a m, a m,n, A= a m+, a m+,n a s, a s,n, 5
b= b b n, b= b m+ Każdypunktu U nazywamyrozwi azaniemdopuszczalnym zadania(5) Punktu U nazywamy rozwiazaniem zadania(5), gdy J(u ) J(u) dladowolnegou U Kanonicznym zadaniem programowania liniowego nazywamy zadanie postaci { J(u)= c,u min u U ={u=(u,,u n ) R n ; u 0,Au=b} (6) Podstawowym zadaniem programowania liniowego nazywamy zadanie postaci { J(u)= c,u min u U ={u=(u,,u n ) R n ; u 0,Au b} (7) Zajmiemy się teraz zagadnieniem równoważności zadań różnego typu Rozwiazywanie zadania podstawowego można zastapić rozwi azywaniem zadania kanonicznego Istotnie, niech dane będzie zadanie podstawowe (7) i rozważmy w przestrzeni R n+m zadaniepostaci { d,z min z Z={z=(u,v) R n+m ; z 0,Cz=b}, (8) b s gdzied=(c,0) R n+m, C=[A I m m ]= a, a,n a m, a m,n 0 0 (I m m jestmacierz a jednostkowawymiarum m) Łatwozauważyć,żejeśliu U jestrozwi azaniemzadania(7),toz =(u,v ),gdzie v =b Au, jestrozwi azaniemzadania(8),tzn z Z oraz d,z d,z dladowolnegoz Z Jeślinatomiastz =(u,v ) Z jestrozwi azaniemzadania(8),tou jestrozwi azaniem zadania(7),tzn u U oraz c,u c,u 6
dladowolnegou U Podobnie, rozwiazywanie zadania ogólnego(5) można zastapićrozwi azywaniem zadania kanonicznego Rzeczywiście, rozważmy w przestrzeni R p (p = m+i +J +J, gdzie J={,,n} I)zadaniepostaci e,z = c i u i + c i w i + i w i I i J i J c i min z Z={z=(v,u i ;i I,w i ;i J,w i ;i J) R p ; z 0, v+ A i u i + A i w i + i w i I i J i J A i =b, A i u i + A i w i + i w i I i J i J A i =b} [ ={z R p ; z 0, [ ] [Im m [ A i ;i I A i ;i J A i ;i J] ]z= 0 Ai ;i I A i ;i J A i ;i J ] b } b, (9) gdziee=(0,c i ;i I,c i ;i J, c i ;i J) R p,a i -i-takolumnamacierzya,a i -i-ta kolumna macierzy A Jeśliu U jestrozwi azaniem zadania ogólnego(5), to gdzie z =(v,u i ;i I,wi ;i J,wi ;i J), v =b Au, w i =max{0,u i }, i J, w i =max{0, u i }, i J, jestrozwi azaniemzadania(9)(zauważmy,żeu i =w w i i dlai J) Jeśli natomiast z =(v,u i ;i I,w ;i J,w i i ;i J), jestrozwi azaniem zadania(9), to u =(u i ;i I,w i w i ;i J) jestrozwi azaniem zadania(5) Przykład 4 Postać kanoniczna zadania o stolarzu jest nastepujaca: ( 50, 20, 60, 40,0,,0),(u,u 2,u 3,u 4,u 5,,u ) min u U ={u=(u,,u ) R ; u 0, 5 9 2 0 0 0 0 0 0 2 3 4 0 0 0 0 0 0 3 2 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 u u = 500 000 860 40 30 30 0 }
Przykład 5 Postać kanoniczna zadania ogólnego J(u)=u +2u 2 +3u 3 min u U ={u=(u,u 2,u 3 ) R 3 ; u 0, 0u +20u 2 +30u 3, 00u +200u 2 +300u 3 2 2 u + 3 u2 + 4 u3 =0} jest następujaca: J(u)= (0,0,,2,3, 2, 3),(v,v 2,u,w 2,w 3,w 2,w 3 ) min z Z={z=(v,v 2,u,w 2,w 3,w 2,w 3 ) R 7 ; z 0, 0 0 20 30 20 30 z 0 00 200 300 200 300 = 2 0 0 2 3 4 3 4 z 7 0 8