• Nie Znaleziono Wyników

Problem komiwojażera dla kilku centrów dystrybucji Traveling salesman problem for a number of distribution centers

N/A
N/A
Protected

Academic year: 2021

Share "Problem komiwojażera dla kilku centrów dystrybucji Traveling salesman problem for a number of distribution centers"

Copied!
13
0
0

Pełen tekst

(1)

z. 70 Transport 2009

Edward MICHLOWICZ

Akademia Górniczo – Hutnicza im. St. Staszica w Krakowie Wydział In ynierii Mechanicznej i Robotyki

Al. Mickiewicza 30, 30-059 Kraków e-mail: michlowi@agh.edu.pl

PROBLEM KOMIWOJAĩERA DLA KILKU CENTRÓW

DYSTRYBUCJI

Streszczenie

Problem rozdziału zada przewozowych w typowym zadaniu transportowym jest mało przydatny dla rednich firm transportowych obsługujcych wiele centrów dystrybucji. Z kolei problem komiwoja era dotyczy tylko wybranych firm. Połczenie obydwu tych zagadnie mo e przynie wiele korzyci. W artykule zaproponowano rozwizanie problemu przy zastosowaniu algorytmu ewolucyjnego. Przedstawiono formalizacj zadania transportowego oraz formuł minimalnej macierzy wykorzystanej do budowy algorytmu genetycznego. Problem komiwoja era został rozwa ony dla ka dego z wybranych centrów dystrybucji towarów.

Słowa kluczowe: problem komiwoja era, centrum dystrybucyjne

1. AKTUALNE PROBLEMY OPERATORÓW LOGISTYCZNYCH

Przed operatorem logistycznym staje czsto zadanie ustalenia takiego planu przewozów towarów, który dawałby optymalne wyniki ze wzgldu na przyjte kryterium optymalizacyjne. W sytuacji, gdy przedsibiorstwo posiada tylko jedno centrum dystrybucyjne, z którego dostarcza towary na rynek, wyznaczenie optymalnego planu przewozów wi e si ze znalezieniem najkrótszej drogi pomidzy poszczególnymi nabywcami towaru. Jeli natomiast takich baz, zlokalizowanych w ró nych miejscach, jest wicej, celem jest ustalenie, z którego centrum dystrybucyjnego ma by zaopatrywany w towar dany odbiorca i w jakiej kolejnoci maj by oni „odwiedzani”, tak aby koszty transportu towaru były jak najmniejsze, przy jednoczesnym uwzgldnieniu zasobu dysponowanego przez centra dystrybucyjne towarów.

Okrelenie połcze dostawcy – odbiorcy przy małej liczbie punktów dostaw i odbioru nie stanowi wikszego problemu. Jednak, gdy w gr wchodzi wiksza liczba tych punktów, wyznaczenie optymalnego planu przewozów nie jest ju takie oczywiste. W takim przypadku istnieje wiele kombinacji ró nych połcze i wybór kombinacji optymalnej bez wykorzystania odpowiedniej metody byłby niezwykle trudny.

Powszechnie znane s metody umo liwiajce wyznaczenie optymalnej drogi pomidzy nabywcami towaru funkcjonujce w literaturze [2, 6, 8] pod nazw „problem komiwoja era”, takie, jak chocia by: algorytm Little’a, algorytm włczania, algorytm poszukiwa lokalnych 2-optymalny i 3-optymalny oraz inne. Metody te daj rozwizanie jedynie wtedy, gdy odbiorcy zaopatrywani s z jednego centrum dystrybucyjnego. W przypadku, gdy takich

(2)

miejsc zaopatrujcych w towary jest wicej, do rozwizania problemu mo na wykorzysta, szeroko stosowane w ró nych dziedzinach nauki algorytmy ewolucyjne.

Problem komiwoja era (w skrócie TSP, od angielskiej nazwy „travelling salesperson

problem”) jest jednym z najstarszych problemów optymalizacyjnych wystpujcych

w działalnoci transportowej. Przenoszc zagadnienie do jzyka teorii sieci, problem polega na znalezieniu najkrótszego cyklu długoci n (zwanego cyklem Hamiltona) w n-wierzchołkowej sieci pełnej. Znalezienie właciwego cyklu Hamiltona, zwanego w logistyce marszrut, jest zadaniem bardzo trudnym obliczeniowo. Zadanie to jest zaliczane do problemów NP-trudnych i jak do tej pory nie udało si znale sposobu, dla którego czas rozwizania problemu byłby proporcjonalny do wielomianu zmiennej n.

Poszukiwanie najkrótszej marszruty poprzez sprawdzenie i porównanie wszystkich mo liwych marszrut prowadzi do wykładniczej klasy zło onoci obliczeniowej O(n!).

Formułujc przedstawiony problem w sposób bardziej formalny: dany jest zbiór n miast oraz nieujemna, kwadratowa macierz odległoci (kosztów) C=[cij] stopnia n:

11 12 1 21 22 2 1 2 .... .... .... .... .... .... .... n n n n nn c c c c c c C c c c ª º « » « » = « » « » ¬ ¼ (1)

gdzie: cij -okrela odległo (koszt przejazdu) midzy miastem i a miastem j.

Rozpatrywane zagadnienie sprowadza si do znalezienia drogi zamknitej (i1,i2,...,in,i1), czyli marszruty, dla której suma

1 2 2 3 ... n1n n1

i i i i i i i i

c c c c

+ + + + osiga minimum.

Problem komiwoja era mo na przedstawi jako zadanie wyznaczenia takiego xij oraz zj, aby: 1 1 min ij n n ij i j c x = = →

¦¦

(2)

gdzie: xij – zmienna decyzyjna,

( )

1, je eli marszruta zawiera odcinek , 0 w przeciwnym przypadku. ij i j x = ®­ ¯ (3) Ograniczenia: 1 1 i N n ij j x ∈ = ∀

¦

= (4) 1 1 j N N ij i x ∈ = ∀

¦

= (5) , (z zi j nx ) ij n-1, i j, z , z i j i jNR ∀ + ≤ ≠ ∈ (6) ¯ ® ­ − − = ∀ ∈ 0 wprzeciwnymprzypadku j) (i, odcinek zawiera marszruta 1 ,jN ij i x (7)

(3)

Funkcja celu (2) postuluje minimalizacj długoci (kosztu) marszruty. Warunki (4) oznaczaj, e z ka dego miasta komiwoja er musi wyjecha jeden raz, a warunki (5), e do ka dego miasta mo e wjecha tylko jeden raz. Warunki (6) zapewniaj, e ze zbioru

n odcinków mo e by utworzona marszruta przechodzc przez n miast, czyli, e elementy

zbioru {(i,j): xij =1} mo na ustawi w cig ¢ (i1,i2),(i2,i3),(in-1,in),(in,i1)² . Oznacza to, e

warunki (6) zapobiegaj przed pojawieniem si rozwizania składajcego si z marszruty nie przechodzcej przez wszystkie miasta.

Znanych jest kilka odmian zdefiniowanego powy ej problemu, a mianowicie:

• wagi połcze nie musz by symetryczne (czyli cijcji) – w tym przypadku mamy do czynienia z sieci skierowan, a rozpatrywany problem nosi nazw asymetrycznego problemu komiwoja era.

• rozwa any graf nie jest pełny, czyli zawiera par nie połczonych wierzchołków. Wszystkie grafy pełne maj cykl długoci n, natomiast graf, który nie jest pełny, nie musi mie takiego cyklu. W takich grafach problem komiwoja era nie ma rozwizania. • komiwoja er po odwiedzeniu wszystkich miejscowoci (dokładnie raz), nie musi wraca

do miejscowoci, z której wyruszył. W takim przypadku nale y znale najkrótsz drog o długoci n-1, zamiast cyklu długoci n.

Problem komiwoja era jest jednym z tych problemów optymalizacji kombinatorycznej, dla których nie jest znany efektywny algorytm rozwizywania, tj. algorytm, który znajdowałby rozwizanie optymalne w czasie wielomianowym, czyli w czasie bdcym wielomianem zmiennej n, reprezentujcej liczb wierzchołków w sieci.

Rozpatrujc problemem tak du ych rozmiarów, w celu jego rozwizania, mo na zastosowa jedno z praktycznych podej [3, 4], polegajce na osłabieniu dania, by algorytm dostarczał rozwizania optymalne i zadowoli si rozwizaniami przybli onymi, odpowiednio bliskimi rozwiza optymalnych.

Osłabienie warunku optymalnoci pozwala czsto zredukowa czas oblicze z wykładniczego do wielomianowego, przy niewielkiej utracie optymalnoci. Algorytmy przybli one stanowi jedyny realistyczny sposób rozwizywania obliczeniowo trudnych problemów du ych rozmiarów. Istnieje wiele algorytmów przybli onych rozwizywania problemu komiwoja era, z których jednym z najbardziej efektywnych jest algorytm przeszukiwa lokalnych.

Jedn z najbardziej znanych i stosowanych z najwikszym powodzeniem heurystyk otrzymywania niemal optymalnych rozwiza problemu komiwoja era jest algorytm

przeszukiwaĔ lokalnych. Polega on na wyznaczeniu dowolnej marszruty (G) i usuniciu z niej r odcinków. Otrzymuje si w ten sposób r dróg (z których niektóre mog by izolowanymi

wierzchołkami), które łczc z innymi r odcinkami tworz marszrut (G'). Marszruty

G i G' ró ni si od siebie dokładnie r odcinkami, natomiast pozostałe (n – r) odcinków maj

takie same. Przykładow ilustracj wymiany dwóch łuków (marszruty G i G’) przedstawiono na rysunku 1.

(4)

G-a-b G'=(G-a-b)+x+y

Rys. 1. Ilustracja wymiany dwóch łuków (wg [7]) ródło: opracowanie własne.

Jeli waga }(G') marszruty G' jest mniejsza od wagi }(G) marszruty G, to marszruta

G zastpowana jest marszrut G' i wymiana zostaje ponawiana. W przeciwnym przypadku

nale y spróbowa wymieni inny zbiór r odcinków z marszruty G. Ten sposób wymiany jest kontynuowany do momentu, w którym nie jest mo liwe dalsze polepszanie rozwizania. Rozwizanie kocowe, którego poprawa poprzez wymian r odcinków nie jest ju mo liwa, nazywane jest rozwizaniem r-optymalnym.

Na ogół ta procedura wymiany odcinków koczy działanie poprzez wyznaczenie lokalnego optimum, dajc w ten sposób przybli one rozwizanie problemu komiwoja era. Przedstawiony powy ej algorytm jest przykładem ogólnego podejcia do rozwizywania wielu problemów optymalizacji kombinatorycznej, zwanego przeszukiwaniem lokalnym lub przeszukiwaniem ssiedztwa. Metoda sukcesywnego polepszania trasy komiwoja era za pomoc wymiany r odcinków mo e by stosowana zarówno do problemów symetrycznych, jak te i niesymetrycznych.

Dla sieci symetrycznej z n (n > 5) wierzchołkami, r mo e si zmienia od 2 do

n. Natomiast dla sieci skierowanej r nie mo e by mniejsze od 3.

Ogólnie, im wiksza jest ilo odcinków r podlegajcych wymianie w procedurze, tym lepsze otrzymuje si rozwizanie. Z drugiej jednak strony, ka dy wzrost iloci odcinków

r znacznie zwiksza czas oblicze. Marszruta z n krawdziami zawiera n

r

§ · ¨ ¸ © ¹

podzbiorów zło onych z r krawdzi. Oznacza to, e czas wykonania zamiany ka dego z podzbiorów przynajmniej raz wynosi O(nr). Nale y wic dokona przemylanego wyboru rozwa ajc

z jednej strony dokładno rozwizania, a z drugiej nakład oblicze. Std te przy podejmowaniu decyzji nale y opiera si na intuicji i badaniach empirycznych.

2. WYZNACZANIE TRAS TRANSPORTU PRZY KILKU DOSTAWCACH

W przypadku, w którym przedsibiorstwo posiada kilka centrów dystrybucyjnych (magazynów), problem operatora logistycznego polega na takim przydzieleniu dostawcom odpowiednich odbiorców, aby suma zapotrzebowa odbiorców nie przekraczała mo liwoci zaopatrzeniowych poszczególnych dostawców oraz aby całkowity koszt transportu był mo liwie najmniejszy.

(5)

Rys. 2. Graf rozdziału zada przewozowych ródło: opracowanie własne.

Opisany wy ej problem funkcjonuje w literaturze pod pojciem zadanie transportowe. Zadanie to (zagadnienie) mo na interpretowa w ten sposób, e z poszczególnych centrów dystrybucyjnych, wyje d a tylu komiwoja erów ilu jest odbiorców zaopatrywanych z danego magazynu. W takim przypadku ka dy komiwoja er obsługuje jednego odbiorc, po czym wraca do miejsca, z którego wyruszył (rys.3).

Alternatyw dla tego zagadnienia jest opracowanie algorytmu, dla którego z ka dego magazynu wysyłany jest tylko jeden komiwoja er, który odwiedza wszystkich przydzielonych mu odbiorców, po czym wraca do miejsca pocztkowego. Problem ten na potrzeby niniejszego opracowania został nazwany „Problemem komiwojaĪera z wieloma centrami

dystrybucyjnymi” (w skrócie TSP-ZT), a jego graficzn interpretacj przedstawiono na

rysunku 4.

Rys. 3. Graf struktury dla zadania transportowego ródło: opracowanie własne.

Problem komiwoja era z wieloma centrami dystrybucyjnymi jest połczeniem dwóch opisanych wczeniej zagadnie: problemu komiwojaĪera oraz zadania transportowego.

(6)

Rys. 4. Graf struktury problemu komiwoja era z wieloma centrami dystrybucyjnymi ródło: opracowanie własne.

Zatem zadanie mo na interpretowa nastpujco:

Danych jest n dostawców, z których ka dy dysponuje odpowiednio ai jednostkami

towaru (i=1, 2,…,n), oraz m odbiorców, z których ka dy zgłasza zapotrzebowanie na towar w wysokoci bj jednostek (j=1, 2,…,m). Ka dy z dostawców mo e zaopatrywa dowolnych

odbiorców i odwrotnie, ka dy odbiorca mo e otrzymywa towar od dowolnych dostawców. Ka dy komiwoja er mo e tylko raz wyruszy z bazy i po dostarczeniu towaru do odbiorców musi do tej bazy powróci. Ka de z miast mo e by odwiedzone przez danego dostawc tylko jeden raz, przy czym miasta mog by odwiedzane w dowolnej kolejnoci. Zakłada si, e odległoci a tym samym koszty transportu midzy ka d par miejscowoci s znane, a tak e suma dostaw do poszczególnych odbiorców równa jest ich zapotrzebowaniu oraz suma dostaw wysłanych przez dostawców nie przekracza iloci, jak ka dy z dostawców dysponuje. Całkowity koszt transportu natomiast jest równy sumie kosztów transportu ka dego z dostawców.

Zadanie transportowe sprowadza si wic do znalezienia minimum funkcji:

0 0 0 0 1 min z ( ) n ki ki j i j i jk jki i= ∈j M k M

c x

c x

c x

=

¦ ¦ ¦

+ + (8)

gdzie: i – dostawca nale cy do zbioru dostawców N,

j, k – odbiorcy pomidzy którymi odbywa si przewóz, nale cy do zbioru

odbiorców M,

cjk – koszt przewozu pomidzy odbiorcami j i k,

c0ki – koszt przewozu pomidzy i-tym dostawc a k-tym odbiorc, cj0i – koszt przewozu pomidzy j-tym odbiorc a i-tym dostawc,

xjki – zmienna binarna okrelajca, czy pomidzy odbiorcami j i k dostawca

i wykonuje przewóz,

x0ki – zmienna binarna okrelajca, czy pomidzy dostawc i a odbiorc k jest wykonywany przewóz,

(7)

xj0i – zmienna binarna okrelajca, czy pomidzy odbiorc j a dostawc i jest wykonywany przewóz. Warunki ograniczajce: 0 1 1 i N m ki k x ∈ = ∀

¦

= (9) 0 1 1 i N m j i j x ∈ = ∀

¦

= (10) jki k M 2; j k,

x

iN jM ∈ ∀ ∧ ∀

¦

< ≠ (11) l j k, j 0; M l jli M k kji M j N i ∧∀

x

x

= ≠ ≠ ∀

¦

¦

∈ ∈ ∈ ∈ , (12) i m 1 j ij N i qa

¦

= ∈ , (13) j n 1 i ij M j q =b

¦

= ∈ , (14) 0 qij M j N i ∧∀ ≥ ∀∈ ∈ (15)

gdzie: q – wielko zaopatrzenia od i-tego dostawcy do j-tego odbiorcy. ij

Warunek (9) zapewnia, e komiwoja er wyje d a z bazy tylko raz, a warunek (10) – e wje d a tylko raz. Warunek (11) zapewnia, e komiwoja er mo e wjecha do okrelonego miasta maksymalnie jeden raz, natomiast warunek (12) gwarantuje, e po wjechaniu do danego miasta komiwoja er musi z tego miasta wyjecha. Warunek (13) oznacza, e ilo towaru, w jak dostawca zaopatruje odbiorców nie przekracza jego mo liwoci dystrybucyjnych, warunek (14) – e wielko zaopatrzenia od dostawców musi by równa iloci, jakiej oczekuj odbiorcy, natomiast warunek (15) chroni przed wprowadzaniem zaopatrze ujemnych.

3. ROZWIĄZANIE ZADANIA

Przedstawione powy ej zagadnienie nale y do zada NP-trudnych i jedynym racjonalnym podejciem do jego rozwizania jest zastosowanie heurystycznych algorytmów optymalizacyjnych. Wykorzystane do tego celu zostan algorytmy ewolucyjne, które co prawda nie gwarantuj otrzymania rozwiza optymalnych, ani nawet nie pozwalaj oszacowa błdów rozwiza przybli onych, ale w wielu przypadkach prowadz do rozwiza dostatecznie dobrych z punktu widzenia praktycznych zastosowa.

Algorytmy ewolucyjne [1] to cile zdefiniowane matematyczne procedury stosowane do rozwizywania niektórych problemów optymalizacyjnych lub decyzyjnych, dla których standardowe algorytmy s nieznane lub ich czas działania jest zbyt długi, by mogły by praktycznie zastosowane.

Podstawowe typy algorytmów ewolucyjnych: • algorytm genetyczny,

• strategie ewolucyjne, - strategia (1+1),

(8)

- strategia (~+\), - strategia (~, \),

• programowanie ewolucyjne.

Algorytm ewolucyjny mo e koczy swoje działanie: • gdy przystosowanie osobników jest odpowiednio du e, • gdy stan populacji bazowej wiadczy o stagnacji algorytmu, • po okrelonej z góry iloci cyklów ewolucyjnych.

Terminologia wykorzystywana w nazewnictwie elementów algorytmów ewolucyjnych jest do specyficzna, bowiem powstała wskutek inspiracji genetyk i ewolucj.

Działanie algorytmu ewolucyjnego polega na przetwarzaniu populacji osobników, z których ka dy stanowi propozycj rozwizania postawionego problemu. Ka dy osobnik jest wyposa ony w informacj tzw. genotyp, na podstawie, którego generowany jest fenotyp – zestaw cech, które podlegaj ocenie rodowiska. Proces tworzenia fenotypu z genotypu nazywa si kodowaniem. Fenotyp jest punktem w przestrzeni rozwiza problemu, genotyp za – punktem w przestrzeni kodów. Przystosowania osobnika na podstawie jego genotypu dokonuje si za pomoc funkcji przystosowania. Funkcja ta mo e by stacjonarna, zmienna w czasie lub mo e zawiera element losowoci. Genotyp osobnika zło ony jest z chromosomów, z których co najmniej jeden zawiera kod okrelajcy fenotyp. Chromosomy natomiast składaj si z mniejszych elementów, zwanych genami, które reprezentuj elementarne informacje.

Wraz z rozwojem i coraz wikszym zainteresowaniem algorytmami ewolucyjnymi podstawowe typy algorytmów zaczły si do siebie nawzajem upodabnia. W programowaniu ewolucyjnym sposób optymalizacji numerycznej został zbli ony do strategii ewolucyjnych. Algorytmy genetyczne wprowadziły schematy selekcji znane ze strategii ewolucyjnych i programowania ewolucyjnego, natomiast strategie ewolucyjne, opierajc si na algorytmach genetycznych, wzbogaciły operacje genetyczne o operator krzy owania. W wyniku wzajemnego przenikania si, algorytm genetyczny, strategia ewolucyjna czy programowanie ewolucyjne w swoich pierwotnych postaciach praktycznie ju nie wystpuj, a nowo powstałe algorytmy wykorzystujce ich własnoci nosz ogóln nazw: algorytmy ewolucyjne.

Do rozwizania zadania komiwoja era obsługujcego kilka centrów dystrybucji został napisany program komputerowy „Vitrans” przy u yciu narzdzia programistycznego Borland C++ Builder, przeznaczonego do tworzenia aplikacji w jzyku C++.

Program „Vitrans” oparty o własnoci algorytmów ewolucyjnych, umo liwia wyznaczenie zada przewozowych dla standardowego problemu komiwoja era, jak równie dla jego rozszerzonej wersji z wieloma centrami dystrybucyjnymi.

Posługujc si nazewnictwem stosowanym w algorytmach ewolucyjnych, program wyznacza osobnika o najlepszym przystosowaniu, czyli takiego, dla którego całkowity koszt transportu jest najmniejszy sporód wszystkich rozpatrywanych rozwiza.

Przystosowanie osobnika obliczane jest na podstawie informacji, w które ka dy osobnik jest wyposa ony (genotyp, fenotyp). Dla rozpatrywanych problemów genotypem s miejscowoci reprezentujce dostawców i odbiorców towaru, natomiast fenotypem – połczenia (trasy) pomidzy tymi miejscowociami.

W algorytmie ewolucyjnym przetwarzana jest populacja składajca si z jednego osobnika. Do inicjacji pocztkowego rozwizania bazowego wykorzystano metod „minimum macierzy kosztów”.

(9)

Otrzymane rozwizanie pocztkowe poddawane zostaje ocenie rodowiska, podczas której obliczane jest przystosowanie osobnika na podstawie funkcji przystosowania osobnika (funkcja z wg równania 8).

Zało ono, e koszt przewozu zwizany jest bezporednio z odległoci d pomidzy poszczególnymi miejscowociami reprezentujcymi dostawców i odbiorców, dlatego te do oblicze przyjto warto odległoci pomidzy miejscowociami. Odległo d mierzona jest w linii prostej na podstawie współrzdnych geograficznych i wyliczana z nastpujcego wzoru:

d = R a cos (sin(lat1)sin(lat2) + cos(lat1)cos(lat2)cos(lon1 – lon2) (16) gdzie: R – promie Ziemi (równikowy); R=6378,137 km,

lat1(2) – szeroko geograficzna, lon1(2) – długo geograficzna.

Po obliczeniu przystosowania osobnika program przystpuje do głównej ptli, w której ilo iteracji uzale niona jest od wprowadzonej przez u ytkownika wartoci.

W ptli głównej osobnik bazowy poddawany jest reprodukcji, w wyniku czego stworzona zostaje jego kopia, która jest przechowywana w pamici, natomiast procesom mutacji poddawany jest osobnik bazowy.

Mutacja nastpuje w trzech etapach. Ka dy etap powtarzany jest dopóty, dopóki warunek stopu nie zostanie spełniony. Zatrzymanie ptli ka dego etapu mutacji zawiera w sobie element losowoci, dlatego te nie mo na okreli iloci powtórze ka dego etapu, a jedynie prawdopodobiestwo jego zajcia.

W pierwszym etapie losowo wybrani odbiorcy zmieniaj swoj kolejno „odwiedzania” ich przez przydzielonych im dostawców, czyli rozwizywany jest typowy problem komiwoja era. Prawdopodobiestwo zajcia mutacji w tym etapie wynosi 70%.

W drugim etapie nastpuje przydzielenie odbiorcom nowych dostawców wg równa z rozdziału 2, w taki sposób, aby całkowita ilo dostaw ka dego z dostawców nie uległa zmianie. Mutacja w tym etapie zachodzi wówczas, gdy odbiorców zaopatruje wicej ni jeden dostawca a jej prawdopodobiestwo zajcia wynosi 60%.

Trzeci etap mutacji zachodzi wtedy, gdy mamy do czynienia z wieloma centrami dystrybucyjnymi a ponadto, gdy całkowita ilo dostaw przekracza całkowit ilo zapotrzebowa. W etapie tym nastpuje przerzucanie dostaw pomidzy dostawcami, przy zachowaniu odpowiednich równa, a prawdopodobiestwo jego zajcia wynosi 80%.

Po zakoczonym procesie mutacji osobnik poddawany jest ocenie rodowiska, a nastpnie jego przystosowanie porównywane jest z przystosowaniem jego kopii sprzed etapu mutacji. W nastpnej iteracji osobnikiem bazowym staje si ten, który charakteryzuje si lepszym przystosowaniem.

4. PRAKTYCZNE ZASTOSOWANIE PROGRAMU „VITRANS V1.0”

W celu sprawdzenia działania programu „Vitrans” oraz przedstawienia jakoci generowanych przez program wyników, wyznaczono trasy transportu towarów dla danych zawartych w tablicy 1.

Na rysunku 5 przedstawiono okno główne programu po wprowadzeniu powy szych danych. Ilo iteracji programu ustawiono na 100 tysicy kroków.

(10)

Rys. 5. Okno główne programu Vitrans V1.0 z naniesionymi danymi. ródło: opracowanie własne.

Ilo całkowitego zasobu dysponowanego przez dostawców wynosiła 540 jednostek towaru, z czego Kraków miał w dyspozycji 160 jednostek, Łód – 100, Warszawa – 150, natomiast Wrocław 130 jednostek. Ka demu z odbiorców przydzielono wymagan ilo towaru, która w sumie wyniosła 515 jednostek. Po rozdysponowaniu towaru pomidzy odbiorcami w magazynach pozostało 25 jednostek towaru zapasu, przy czym w Krakowie pozostało 11 jednostek, w Łodzi – 5, w Warszawie – 6, a we Wrocławiu – 3 jednostki. Całkowita droga do pokonania przez komiwoja erów wyniosła 3449.17 km.

Rozwizanie zadania dla 105 iteracji przedstawiono na rysunku 6.

Rys. 6. Okno programu z rozwizaniem dla 105 iteracji ródło: opracowanie własne.

(11)

Tablica 1. Zestawienie danych zadania.

Lp. Dostawca Limit towaru Lp. Odbiorca Zapotrzebowanie

1 Kraków 160 1 Białystok 20 2 Łód 100 2 Bielsko-Biała 18 3 Warszawa 150 3 Chełm 21 4 Wrocław 130 4 Chorzów 22 SUMA = 540 5 Dbica 20 6 Elblg 19 7 Ełk 20 8 Gdask 25 9 Gniezno 18 10 Grudzidz 20 11 Jarocin 14 12 Kalisz 17 13 Kielce 24 14 Kołobrzeg 20 15 Krosno 21 16 Lubin 19 17 Malbork 17 18 Nysa 23 19 Płock 23 20 Pozna 26 21 Przemyl 24 22 Radom 22 23 Sandomierz 20 24 Suwałki 17 25 Szczecin 25 SUMA = 515

ródło: opracowanie własne

Program „Vitrans” do wyznaczania tras transportu wykorzystuje własnoci algorytmów ewolucyjnych, dlatego te nie wiadomo czy wygenerowane rozwizanie jest rozwizaniem optymalnym, ani te jak bardzo si od niego ró ni. W celu okrelenia jakoci otrzymanego rozwizania przeprowadzono kilka symulacji tego samego problemu dla ró nych wartoci liczby iteracji. Wyniki symulacji przedstawiono na poni szym wykresie (rys. 7).

Dla niewielkiej liczby kroków (100) program wygenerował rozwizanie o blisko 30% gorsze, ni dla 105 kroków. Jednak dalsze zwikszanie liczby iteracji, powy ej 105 kroków, nie spowodowało wygenerowania rozwizania lepszego, a w przypadku liczby iteracji równej 106 otrzymano nawet rozwizanie niewiele gorsze, co mo e sugerowa, e dalsze zwikszanie liczby kroków nie polepszy znaczco rozwizania, a jedynie zwikszy czas wykonywania oblicze przez program. Mo e to oznacza, e rozwizanie, dla którego całkowita droga transportu wynosi 3449.17 km jest rozwizaniem optymalnym lub le cym bardzo blisko takiego rozwizania.

(12)

Rys.7. Wykres zale noci wygenerowanego rozwizania od liczby iteracji. ródło: opracowanie własne

4. PODSUMOWANIE I DALSZE BADANIA

Problem wyznaczenia optymalnego planu przewozów towarów pomidzy dostawcami a odbiorcami jest problemem NP-trudnym, co oznacza, e nie istnieje algorytm rozwizujcy ten problem w czasie wielomianowym. Przy rozwizywaniu takich problemów (du ych rozmiarów) czsto rezygnuje si ze spełnienia warunku by algorytm dostarczał rozwizanie optymalne i zadowala rozwizaniem przybli onym, le cym blisko rozwizania optymalnego. Zastosowanie heurystycznych algorytmów optymalizacyjnych czsto pozwala zredukowa czas oblicze z wykładniczego do wielomianowego, przy niewielkiej utracie optymalnoci.

Do napisania programu „Vitrans” wykorzystano jeden z heurystycznych algorytmów optymalizacyjnych, jakim jest algorytm ewolucyjny, ze wzgldu na jego prostot schematu, dziki któremu algorytmy tego typu znajduj liczne zastosowania praktyczne w ró nych dziedzinach nauki.

W zastosowanym algorytmie bazowe rozwizanie pocztkowe nie jest generowane losowo, lecz przy wykorzystaniu metody „minimum macierzy kosztów”, dziki czemu ju na pocztku otrzymane rozwizanie jest w znacznym stopniu przybli one do optymalnego.

Program „Vitrans” w krótkim czasie generuje rozwizanie bardzo trudnych obliczeniowo zada, co czyni go programem atrakcyjnym dla operatorów logistycznych, firm spedycyjnych czy te firm produkcyjno – dystrybucyjnych.

Rozwa any w opracowaniu problem warto rozwin. Znane w badaniach operacyjnych tzw. zadanie transportowo – produkcyjne dotyczy optymalizacji łcznych kosztów transportu i przerobu jednorodnych surowców dostarczonych do zakładów przetwarzajcych te surowce na wyroby gotowe. W odniesieniu do zakładów przetwórstwa odpadów powstaje zło ony problem zbierania, gromadzenia i przetwarzania tych odpadów przy nieliniowej funkcji kosztów przerobu. W wielu przypadkach zgromadzenie odpowiednio uzasadnionej

(13)

ekonomicznie iloci odpadów (masa, objto) w miejscach składowania (centrach) wymaga wielokrotnej obsługi rozproszonych punktów zbiórki odpadów. Z wstpnych bada [5] mo na wywnioskowa, e koszty utylizacji mog by aproksymowane wielomianami drugiego stopnia. Uwzgldniaj one tylko koszty zmienne, czyli zale ne od rozmiarów produkcji.

Rozwizanie tak postawionego zadania transportowo – produkcyjnego z kwadratow funkcj kosztów przerobu polega na wyznaczeniu takiego planu dostaw surowca (odpadów) do poszczególnych zakładów i jego przetworzenia w tych zakładach, aby łczne koszty transportu i przerobu były minimalne.

LITERATURA

[1] Arabas J.: Wykłady z algorytmów ewolucyjnych. WNT, Warszawa 2001.

[2] Ignasiak E.: Badania operacyjne. PWE, Warszawa 2001.

[3] Jacyna M., Jachimowski R., Pryciski P.: Wspomaganie komputerowe wyznaczania

optymalnych tras w wieloszczeblowym systemie dystrybucji. Wybrane Zagadnienia Logistyki

Stosowanej. Wydawnictwa AGH, Kraków 2009.

[4] Michlowicz E.: Optymalizacja zadaĔ operatora logistycznego. Logistyka nr 3/2009.

[5] Michlowicz E.: Transportation − Production Task Pertaining to Waste Disposal with Use of

Cost Convex Function. Polish Journal of Environmental Studies. Vol. 18, No. 3A, 2009. Hard

Publishing Comp., Olsztyn 2009.

[6] Sikora W.: Badania operacyjne. PWE, Warszawa 2008.

[7] Sysło M.M., Deo N., Kowalik J.S.: Algorytmy optymalizacji dyskretnej.PWN, Warszawa 1995.

[8] Waters D.: Zarządzanie operacyjne: towary i usługi. PWN, Warszawa 2001.

TRAVELING SALESMAN PROBLEM FOR A NUMBER OF DISTRIBUTION CENTERS Abstract

The problem of allocation tasks in a typical transport issue is not useful for medium-sized transport companies operating multiple distribution centers. The bagman problem affects only the selected companies. The combination of both of these issues can bring many benefits. This paper proposes a solution to the problem using the evolutionary algorithm.

Key words: travelling salesperson problem, distribution center

Cytaty

Powiązane dokumenty

Coraz czêœciej do pomiarów wielkoœci geometrycznych s¹ stoso- wane metody cyfrowej analizy obrazu [1, 2, 6, 7]. Znane dotychczas metody optyczne takie jak mikroskopy pomiarowe

Jeśli szczęśliwie jako rozwiązanie optymalne naszego programu liniowego dostaniemy same zera i jedynki, to będą one definiowały pewną trasę, która musi być optymalna,

Poka», »e podobne stwierdzenie nie jest prawdziwe dla mocnej

Rozwój technologii informatycznych, automatyzacja i robotyzacja, rozsze- rzona rzeczywistość internetu rzeczy to zjawiska niezaprzeczalne dynamicznie postępujące, ale przede

Z aiste głupota szw abów i m oskali zaślepionych nienaw iścią jest niekiedy bez- graniczna.. Nie ma tygodnia, w którym czasopisma bolszewickie nie powtarzałyby za Niemcami

GEOMETRIA ALGEBRAICZNA, Lista 12 (na

2 Jeśli chcesz się dowiedzieć, jak można stwierdzić (oczywiście nie sprawdzając wszystkich możliwości), czy znalezio- ne rozwiązanie jest optymalne – zajrzyj na

b) wierzchołka, połączonego krawędzią nie wspólna, przy czym spośród kilku możliwości wybierz taki wierzchołek, którego lista krawędzi jest najkrótsza (w