Rozwiązanie problemu komiwojażera przy użyciu algorytmu genetycznego 2

Podobne dokumenty
Wyznaczanie optymalnej trasy problem komiwojażera

Algorytm genetyczny (genetic algorithm)-

Generowanie i optymalizacja harmonogramu za pomoca

LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2

Wybrane podstawowe rodzaje algorytmów

Algorytmy genetyczne

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

Algorytmy genetyczne

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Zadania laboratoryjne i projektowe - wersja β

Gospodarcze zastosowania algorytmów genetycznych

Metody przeszukiwania

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Dobór parametrów algorytmu ewolucyjnego

LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE

Algorytmy ewolucyjne NAZEWNICTWO

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

6. Klasyczny algorytm genetyczny. 1

PRZEWODNIK PO PRZEDMIOCIE

Algorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson)

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

ALGORYTMY GENETYCZNE ćwiczenia

Matematyczne Podstawy Informatyki

Problem Komiwojażera - algorytmy metaheurystyczne

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Algorytmy ewolucyjne 1

Metody Programowania

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Aproksymacja funkcji a regresja symboliczna

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

KARTA MODUŁU KSZTAŁCENIA

TEORETYCZNE PODSTAWY INFORMATYKI

PRZEWODNIK PO PRZEDMIOCIE

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia stacjonarne i niestacjonarne

Przykład planowania sieci publicznego transportu zbiorowego

Techniki optymalizacji

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

Optymalizacja. Wybrane algorytmy

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Wykład 4. Droga i cykl Eulera i Hamiltona

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI

Algorytmika Problemów Trudnych

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Programowanie dynamiczne cz. 2

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Wstęp do Sztucznej Inteligencji

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Automatyczny dobór parametrów algorytmu genetycznego

Problem komiwojażera ACO. Zagadnienie optymalizacyjne, polegające na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym.

Algorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Algorytmy metaheurystyczne podsumowanie

LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Wykorzystanie nowoczesnych technik prognozowania popytu i zarządzania zapasami do optymalizacji łańcucha dostaw na przykładzie dystrybucji paliw cz.

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Biologicznie motywowane metody sztucznej inteligencji

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

OPTYMALIZACJA W LOGISTYCE

Metody Rozmyte i Algorytmy Ewolucyjne

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2011, Oeconomica 285 (62), 45 50

Teoria obliczeń i złożoność obliczeniowa

znalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.

Strategie ewolucyjne (ang. evolu4on strategies)

Algorytmy genetyczne w optymalizacji

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation)

Optymalizacja optymalizacji

Algorytmy ewolucyjne Część II

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

Systemy uczące się Lab 4

9.9 Algorytmy przeglądu

Zastosowanie sztucznej inteligencji w testowaniu oprogramowania

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Tomasz M. Gwizdałła 2012/13

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Ewolucja Różnicowa Differential Evolution

Algorytmy ewolucyjne (3)

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Zastosowanie technologii nvidia CUDA do zrównoleglenia algorytmu genetycznego dla problemu komiwojażera

Transkrypt:

Joanna Ochelska-Mierzejewska 1 Politechnika Łódzka Rozwiązanie problemu komiwojażera przy użyciu algorytmu genetycznego 2 Wprowadzenie Jednym z podstawowych ogniw usług logistycznych jest transport [7]. Problemy transportu można zaliczyć do problemów logistyki informatycznej Rozwiązywanie problemów kombinatorycznych, przy nałożonych ograniczeniach przestrzennych, logicznych i czasowych, które są powiązane z ruchem i obsługą obiektów w systemie, jest zadaniem trudnym do zrealizowania [3, 7, 8]. Problemy takie zazwyczaj mają wykładniczą złożoność obliczeniową, dlatego mogą być rozwiązywane przy pomocy algorytmów heurystycznych. Podstawowy model transportu opiera się na przypadku, w którym wykorzystywany jest jeden samochód, przewożący towar jednoasortymentowy [7, 8]. Problem logistyczny transportu i dystrybucji dla tego modelu można zdefiniować w następujący sposób: Producent zajmuje się wytwarzaniem towaru tego samego typu. Wyprodukowany towar ma być dostarczany w ustalonych odstępach czasowych (na przykład codziennie, raz na tydzień) do N odbiorców za pomocą jednego samochodu dostawczego. Dane są czasy oraz odległości dostawy pomiędzy punktami odbioru. Każdy towar pakowany jest do standardowych kontenerów. Każdy sklep ma swoje zamówienie określone poprzez liczbę tych kontenerów. Samochód dostawczy ma swoją pojemność w postaci liczby kontenerów. Przy tak określonych założeniach wyznacza się: liczbę kursów samochodu dostawczego towary przewożone w każdym kursie czas trwania kursu punkty odbioru dla każdego kursu trasę samochodu dostawczego. Powyższe parametry muszą zostać wyznaczone w sposób taki, aby czas/koszt transportu był jak najkrótszy/najniższy. Minimalizacja tego czasu określa kryterium optymalizacji dla zadanego problemu logistycznego. Zagadnienie to jest przykładową reprezentacją tak zwanego problemu komiwojażera. W rozdziale 1 przedstawiono problem komiwojażera i ukazano na czym polega trudność w znalezieniu optymalnego rozwiązania. W rozdziale 2 skupiono się na przedstawieniu algorytmu genetycznego, który został zaadoptowany do rozwiązania problemu wyznaczania tras. Natomiast w rozdziale 3 ukazano eksperymenty, które mają na celu wyznaczenie optymalnych parametrów wejściowych zastosowanych do algorytmu genetycznego umożliwiających rozwiązanie problemu komiwojażera. Problem komiwojażera Ogólna koncepcja problemu przedstawia się następująco: komiwojażer ma za zadanie odwiedzić n miast (każde dokładnie jeden raz) i wrócić do punktu (miasta) startowego [10, 11]. Celem jego jest przejść zadaną drogę jak najmniejszym kosztem. Przykładowa reprezentacja problemu została pokazana na rysunku 1. Rys. 1. Model problemu komiwojażera (źródło: opracowanie własne). 1 Politechnika Łódzka, Wydział Fizyki Technicznej, Informatyki i Matematyki Stosowanej, Instytut Informatyki, 90-924 Łódź, ul. Wólczańska 215, joanna.ochelska-mierzejewska@p.lodz.pl 2 Artykuł recenzowany. Logistyka 1/2016 350

Problem komiwojażera (TSP ang. travelling salesman problem) jest jednym z najbardziej popularnych i najczęściej badanych zagadnień w informatyce i badaniach operacyjnych [12]. Problem komiwojażera to zagadnienie optymalizacyjne związane z teorią grafów. W problemie tym należy znaleźć cykl Hamiltona o jak najmniejszej wadze w grafie ważonym G. Zagadnienie to można podzielić na dwa podstawowe podtypy: symetryczny i asymetryczny. W symetrycznej odmianie graf ważony jest nieskierowany, co oznacza, że krawędź między węzłami grafu w obu kierunkach ma taką samą wagę. W asymetrycznej odmianie graf ważony jest skierowany, wówczas waga krawędzi dla każdego z kierunków może być różna lub też może nie być połączenia w drugim kierunku. W teorii grafów miasta w problemie komiwojażera są wierzchołkami, a drogi łączące te miasta są krawędziami z określonymi wagami, symbolizującymi na przykład odległość między miastami, czas podróży między miastami, koszt przejazdu między miastami. Zadaniem jest więc wyznaczenie cyklu Hamiltona o najmniejszej sumie wag krawędzi zawierających się w tym cyklu. Jednym z przykładowych sposobów rozwiązania tego problemu jest przeszukanie całej przestrzeni cykli Hamiltona w grafie i wybranie takiego, którego suma wag wszystkich krawędzi jest najmniejsza. Wadą tego podejścia jest jego wykładnicza złożoność obliczeniowa. Problem komiwojażera jest problemem NP-trudnym nie są znane algorytmy o wielomianowej złożoności obliczeniowej, które rozwiązałyby ten problem [11, 12]. W praktyce problem ten rozwiązywany jest przy pomocy algorytmów przybliżonych, to znaczy takich, które w krótkim czasie znajdują rozwiązanie w przybliżeniu równe optymalnemu. Algorytmy przybliżone nie zawsze potrafią znaleźć optymalne rozwiązanie. Wynik działania takiego algorytmu może być znacznie gorszy od optymalnego rozwiązania. Algorytmy przybliżone stosuje się z uwagi na konieczność wyboru pomiędzy szybkością znajdowania rozwiązania, a jego jakością. Zazwyczaj przyjmuje się założenie, że wynik działania algorytmu nie może być gorszy od rozwiązania optymalnego o pewną ustaloną wartość. Algorytm genetyczny Algorytm genetyczny jest modelem naturalnych procesów ewolucyjnych, które zachodzą w czasie. Celem tych naturalnych procesów jest jak najlepsze dopasowanie osobników do panujących warunków życia [2, 9]. Algorytm genetyczny jest metodą rozwiązywania zadań, głównie optymalizacyjnych, wzorującą się na procesie naturalnej ewolucji. Jego zadaniem jest przeszukiwanie przestrzeni możliwych rozwiązań, opartej na mechanizmach doboru naturalnego i dziedziczenia, korzystając z zasady przeżycia najbardziej przystosowanych osobników. Działanie klasycznego algorytmu genetycznego polega na powielaniu chromosomów i wymianie ich podciągów [5]. Algorytm genetyczny składa się z następujących kroków [1, 2, 4, 5, 6, 9]: a) Inicjalizacja początkowa losowy wybór ustalonej liczby chromosomów i utworzenie początkowej populacji. Wyróżnia się różne sposoby kodowania chromosomów na przekład ze względu na sposób ułożenia genów, ze względu na wartości przechowywane w genach. b) Ocena przystosowania obliczanie wartości funkcji oceny dla każdego chromosomu. c) Selekcja wybór osobników z bieżącej populacji do populacji rodzicielskiej. Osobniki te mają największą wartość funkcji przystosowania i są na nich wykonywane operacje genetyczne, które prowadzą do utworzenia populacji potomnej. Istnieje wiele metod selekcji. d) Krzyżowanie i mutacja zastosowanie operatorów genetycznych na grupie chromosomów polegające na rekombinacji genów chromosomów. Krzyżowanie musi występować częściej niż mutacja. e) Nowa populacja chromosomy otrzymane w wyniku krzyżowania i mutacji tworzą nową populację, wcześniejsza populacja chromosomów jest podmieniana przez nową, w następnej (generacji) nowa populacja staje się bieżącą. f) Wyprowadzenie najlepszego osobnika chromosom o największej wartości funkcji oceny jest najlepszym rozwiązaniem. Powyższe kroki zaprezentowano na rysunku 2 w postaci schematu blokowego. Logistyka 1/2016 351

Rys. 2. Ogólny schemat blokowy algorytmu genetycznego. (Źródło: http://www.staff.amu.edu.pl/~lipowski/java/genetic/genetic.html) Eksperymenty W rozdziale tym zostały przedstawione wyniki oraz analiza przeprowadzonych eksperymentów. Wszystkie badania algorytmu genetycznego były wykonywane dla prawdopodobieństwa krzyżowania równego 1. Zmienna była natomiast liczebność populacji oraz współczynnik mutacji. Przyjęto również zmienną liczbę miast równą 10, 30 lub 50. Miasta, jako dane wejściowe, mają wylosowane współrzędne, w związku z tym nie jest znane optymalne rozwiązanie. Analiza działania algorytmu obejmowała liczbę wyszukiwania optymalnego rozwiązania, czas obliczeń oraz długość ścieżki otrzymanego rozwiązania. Dla każdego eksperymentu zostało wykonanych pięć prób, a następnie spośród tych prób obliczono średnie arytmetyczne wartości liczby, czasu obliczeń oraz długości ścieżki. Wyniki te odnotowane zostały w tabelach. Jako warunek końca algorytmu przyjęto maksymalną liczbę w wysokości 5000. Dodatkowo ustalono także warunek na liczbę, w których wynik nie zmienia się. takich wynosi 500. Pozwala to ograniczyć liczbę niepotrzebnych oraz zmniejszyć czas obliczeń. Dodatkowo, dla dokładniejszego sprawdzenia działania algorytmu, posłużono się zestawem danych Oliver30 z biblioteki TSPLIB, dla którego znane jest dotychczas znalezione optymalne rozwiązanie, wynoszące 420 jednostek [13]. Biblioteka ta przechowuje dane testowe dla problemu komiwojażera oraz najlepsze, dotychczas znalezione rozwiązania. Oliver30 jest często stosowanym zestawem danych do testowania algorytmów, rozwiązujących omawiany problem. Eksperyment 1 W tym eksperymencie chciano sprawdzić wpływ współczynnika mutacji na działanie algorytmu, zatem przyjęto następujące wartości wejściowe dla algorytmu genetycznego: liczebności populacji równą 50 osobników Na podstawie wyników zebranych w tabeli 1 (ujęto średnią arytmetyczną z pięciu uruchomień algorytmu dla danych parametrów wejściowych) stwierdzono, że dla liczebności populacji równej 50 osobników relatywnie dobre wyniki otrzymuje się przy małych wartościach współczynnika mutacji. Logistyka 1/2016 352

Tab. 1. Wyniki dla eksperymentu 1. Parametry algorytmu 10 miast 30 miast 50 miast L.p. Liczebność populacji Współczynnik. mutacji 1 50 0,015 7 19 707 304 74 1167 1075 269 1735 2 50 0,1 34 23 700 945 154 1269 2049 465 2764 3 50 0,3 112 28 700 192 76 2346 527 202 4118 4 50 0,7 572 53 708 514 125 2467 651 254 4392 Dla 10 miast najmniejszą średnią długość drogi, wynoszącą 700 jednostek, otrzymano dla współczynnika mutacji równego 0,1 oraz 0,3, przy czym warto zauważyć, że dla współczynnika mutacji równego 0,015 wynik był równie dobry różnica wynosiła 1%. Istotnym jest to, że wraz ze wzrostem współczynnika mutacji algorytm miał większe zapotrzebowanie na liczbę obliczeń. Najmniejsza średnia liczba równa 7 uzyskana została dla współczynnika mutacji o wartości 0,015. Dla 30 miast najkrótszą drogę, o długości 1167 jednostek, uzyskano dla współczynnika mutacji równego 0,015. Wraz ze wzrostem współczynnika mutacji wynik pogarszał się. Jeśli chodzi o średnią liczbę, sytuacja jest odmienna w porównaniu do wyników dla 10 miast. Dla najkrótszej drogi algorytm potrzebował 304, dla drogi o około 100 jednostek dłuższej algorytm wymagał już średnio 945. Dla 50 miast najlepsze średnie rozwiązanie, znalezione przez algorytm, miało długość 1735 jednostek przy 1075 iteracjach i współczynniku mutacji równemu 0,015. Wyniki uzyskane dla większego współczynnika mutacji (0,1, 0,3 oraz 0,7) daleko odbiegały od rozwiązania najlepszego. Eksperyment 2 W badaniu 2 sprawdzono, czy wzrost liczby populacji wpływa na generowane rozwiązanie. Przyjęto zatem następujące parametry wejściowe: liczebność populacji: 100 Wyniki, średnich pięciu pomiarów dla badanych parametrów algorytmu, zebrane w tabeli 2 pozwalają zaobserwować korzystny wpływ zwiększenia liczebności populacji z 50 do 100 osobników, przy wartości 0,015 współczynnika mutacji, na uzyskaną średnią długość rozwiązania. Nieco inaczej jest w przypadku większych wartości współczynnika mutacji. Tutaj z reguły wyniki nieznacznie się pogorszyły. Kolejno dla 10, 30 i 50 miast uzyskano najlepsze rozwiązania o długościach: 700, 1118 oraz 1671 jednostek. Uzyskane wyniki są lepsze w porównaniu do wyników uzyskanych przy populacji 50 osobników. Dla 10 i 50 miast zauważono również mniejszą liczbę niezbędnych do wyznaczenia podanych wyników. Dla 30 miast liczba zmniejszyła się jedynie dla współczynnika mutacji równego 0,015. Większy współczynnik mutacji powodował większe zapotrzebowanie algorytmu na obliczenia. Tab. 2. Wyniki dla eksperymentu 2. Parametry algorytmu 10 miast 30 miast 50 miast L.p. Liczebność Współczynnik populacji mutacji 1 100 0,015 6 39 702 105 115 1118 457 325 1671 2 100 0,1 8 39 700 1359 387 1319 1784 853 2786 3 100 0,3 61 48 700 760 285 2182 369 349 4166 4 100 0,7 425 89 706 804 329 2438 593 488 4413 Eksperyment 3 W badaniu 3 postawiono pytanie, czy zwiększając liczbę populacji działanie algorytmu będzie nadal wpływało na poprawę wyników. Przyjęto zatem następujące parametry wejściowe: liczebność populacji: 200 W tym badaniu, na podstawie wyników zawartych w tabeli 3, można zauważyć kolejną poprawę rozwiązań niemal we wszystkich podanych konfiguracjach parametrów. Wyjątek stanowią rezultaty dla 30 i 50 miast przy współczynniku mutacji równym 0,3 dla 30 miast wynik jest gorszy od badania, w którym liczebność populacji wynosiła 100 osobników, z kolei dla 50 miast wynik pogorszył się nieznacznie w stosunku do badania, w którym liczebność osobników wynosiła 50. Logistyka 1/2016 353

Tab. 3. Wyniki dla eksperymentu 3. Parametry algorytmu 10 miast 30 miast 50 miast L.p. Liczebność populacji Współczynni k mutacji 1 200 0,015 7 77 700 119 238 1103 661 792 1559 2 200 0,1 8 81 700 1450 822 1246 2116 1973 2713 3 200 0,3 151 114 700 159 300 2233 528 831 4123 4 200 0,7 263 148 700 269 392 2406 480 881 4321 Zapotrzebowanie na liczbę, wystarczających do wyznaczenia otrzymanych rozwiązań, była zróżnicowana. Dla małych wartości współczynnika mutacji (0,015 oraz 0,1) liczba niezbędnych nieznacznie wzrosła. W przypadku współczynnika mutacji równego 0,3 liczba wzrosła o nieco większą wartość dla 10 i 50 miast. ta dla 30 miast zmalała. Dla współczynnika równego 0,7 w każdym przypadku liczba zmalała. Kolejno dla 10, 30 i 50 miast uzyskano najlepsze rozwiązania o długościach: 700, 1103 oraz 1559 jednostek, w porównaniu do wyników uzyskanych przy populacji 50 osobników. Eksperyment 4 W badaniu 4 postanowiono sprawdzić działanie algorytmu dla znanego zestawu danych, czyli danych Oliver30 z biblioteki TSPLIB. W badaniu tym przyjęto następujące wartości parametrów wejściowych dla danego algorytmu: zmienną liczebność populacji 50, 100, 200 Wyniki tego badania zostały zebrane w tabeli 4. Punktem odniesienia otrzymanych wyników jest dotychczas znalezione optymalne rozwiązanie dla zestawu danych Oliver30, wynoszące 420 jednostek. Najlepszy średni rezultat otrzymano dla populacji 200 osobników i współczynnika mutacji 0,015 471 jednostek. Wynik ten powstał również przy najmniejszej liczbie. Dla tej populacji uzyskano najlepszy dokładny wynik 436 jednostek przy 41 iteracjach. Średnie rozwiązania po zwiększeniu współczynnika mutacji do 0,1 uległy nieznacznemu polepszeniu dla małych populacji i nieznacznemu pogorszeniu dla największej testowanej populacji najlepsza średnia długość ścieżki dla tego współczynnika mutacji wynosi 492 jednostki dla populacji 50 osobników. Pozostałe średnie wyniki niewiele się różnią i wynoszą 493 jednostki dla 100 osobników oraz 501 jednostek dla 200 osobników. Średnie rozwiązania po zwiększeniu współczynnika mutacji do wartości 0,3 uległy znacznemu pogorszeniu najlepsza średnia długość ścieżki wynosi 791 jednostki dla populacji 50 osobników. Mimo że liczba zmniejszyła się, to wyniki nie są zadowalające. Po zwiększeniu współczynnika mutacji, stwierdza się niewielkie pogorszenie wyników przy jednak bardzo dużym wzroście liczby niezbędnych. Tab. 4. Wyniki dla eksperymentu 4 Parametry algorytmu L.p. Liczebność populacji Współczynnik mutacji Oliver30 1 50 0,015 538 103 503 2 50 0,1 1703 219 492 3 50 0,3 547 114 791 4 100 0,015 372 160 495 5 100 0,1 1668 441 493 6 100 0,3 452 243 827 7 200 0,015 218 266 471 8 200 0,1 1863 976 501 9 200 0,3 532 462 821 Podsumowanie eksperymentów Otrzymano następujące najlepsze średnie długości ścieżek: 10 miast 700 jednostek, 30 miast 1103jednostek, 50 miast 1559jednostki, Oliver30 492 jednostki. Logistyka 1/2016 354

W przeprowadzonych badaniach algorytmu genetycznego do rozwiązywania problemu komiwojażera stwierdzono, że najlepsze rezultaty uzyskiwano dla względnie małej wartości współczynnika mutacji (0,015 oraz 0,1) oraz przy dużej liczbie osobników. Duży współczynnik mutacji zbyt bardzo różnicuje pokolenie potomne (szczególnie dla dużej liczebności populacji), stąd może prowadzić do niesatysfakcjonujących wyników. Zwiększanie liczebności populacji przy małym współczynniku mutacji korzystnie wpływa na działanie algorytmu i pozwala uzyskać zadowalające rezultaty. Na rysunku 3 pokazano wynik działania aplikacji w postaci narysowanych grafów dla najkrótszych ścieżek wyznaczonych przez algorytm. Rys. 3 Wynik działania algorytmu w postaci grafu dla 10, 30 i 50 losowych miast (Źródło: opracowanie własne) Wnioski Każda firma borykając się z problemami natury ekonomicznej stara się obniżać koszty związane z jej działaniem, a także zwiększyć swoją konkurencyjność. Wielowymiarowe analizowanie danych, prognozowanie oraz dostarczanie krytycznych dla przedsiębiorstwa informacji pozwala podejmować decyzje i wskazuje pewne trendy. Dzięki temu, firma jest w stanie zmniejszyć wydatki i stawać się coraz bardziej konkurencyjna na rynku. Rosnąca ilość danych w dzisiejszych czasach, a co za tym idzie, utrudniona ich analiza, wiąże się z koniecznością stosowania systemów informatycznych, potrafiących przetwarzać te dane w pewien pożądany sposób. Na przykładzie opisanego tutaj problemu transportowego w logistyce można stwierdzić, że systemy wspomagające podejmowanie decyzji nadają się do tego typu problemu. Implementacja algorytmu genetycznego pokazała, że zastosowanie technik informatycznych jest w stanie zaspokoić potrzebę logistyczną przedsiębiorstwa, jaką jest poszukiwanie optymalnej drogi w procesie transportowym. Model podstawowy problemu transportowego w ujęciu informatycznym może być przedstawiany jako problem komiwojażera. Zaimplementowany i zbadany algorytm nadają się do wyszukiwania rozwiązania optymalnego w tym problemie. Istotną kwestią jest również czas obliczeń oraz liczba niezbędnych do znalezienia rozwiązania optymalnego algorytm genetyczny wyznaczył rozwiązane optymalne przy mniejszej liczbie niż zakładano, jako warunek końca. Największą wadą tej metody jest dobór odpowiednich parametrów, co nie jest zadaniem trywialnym i często zależnym od zbioru danych wejściowych. W reprezentacji grafowej problemu komiwojażera zastosowano jako wagi krawędzi odległości pomiędzy miastami. Zamiast takiego rozwiązania można wykorzystać również inne, na przykład czas przejazdu lub współczynniki wprowadzane przez eksperta z dziedziny transportu. Streszczenie Firmy związane z dystrybucją i transportem próbują opracować swoich pojazdów, aby możliwie zminimalizować koszty i umożliwić dostarczenie ich towarów w wystarczająco krótkim czasie. Rozwiązaniem tego zagadnienia może być znalezienie optymalnego rozwiązanie dla problemu komiwojażera przy zastosowaniu algorytmu genetycznego. W artykule przeanalizowano dobór parametrów wejściowych dla tego algorytmu umożliwiającego znalezienie rozwiązania i przedyskutowano otrzymane wyniki. Logistyka 1/2016 355

Solution to traveling salesman problem using genetic algorithm Abstract Companies associated with the distribution and transport are trying to develop their vehicles and routes to minimize costs and delivery of their goods in a sufficiently short time. The solution to this problem is to find the optimal solution for the traveling salesman problem using genetic algorithm. The article analyzes the selection of input parameters for this algorithm which allows to find a solution and discussed the results. LITERATURA / BIBLIOGRAPHY [1] Goldberg D.E., Algorytmy genetyczne i ich zastosowania, Wydawnictwa Naukowo-Techniczne, Warszawa, 1998. [2] Gwiazda T.D., Algorytmy Genetyczne. Wstęp do teorii, Wydawnictwo Naukowe PWN, 1995. [3] Krasucki Z. (red.), Transport i spedycja w handlu zagranicznym, Wyd. UG, Gdańsk, 1997. [4] Michalewicz Z., Algorytmy genetyczne + struktury danych = programy ewolucyjne, Wydawnictwa Naukowo- Techniczne, Warszawa, 2004. [5] Rutkowska D., Piliński M., Rutkowski L., Sieci neuronowe, algorytmy genetyczne i systemy rozmyte, Wydawnictwo Naukowe PWN, Warszawa, 1999. [6] Rutkowski L., Metody i techniki sztucznej inteligencji, Wydawnictwo Naukowe PWN, 2012. [7] Rydzkowski W., Wojewódzka-Król K., Transport, Wydawnictwo Naukowe PWN, Warszawa, 1997. [8] Szczepaniak T. (red.), Transport Międzynarodowy, PWE, Warszawa, 1998. [9] Wierzchoń S.T., Sztuczne systemy immunologiczne. Teoria i zastosowania, Akademicka Oficyna Wydawnicza EXIT, Warszawa, 2001. [10] Wilson R.J., Wprowadzenie do teorii grafów, Wydawnictwo Naukowe PWN, Warszawa, 1998. [11] Travelling salesman problem. [Online] [Dostęp: 17.07.2015] http://fds.oup.com/www.oup.com/pdf/oxed/d2.pdf [12] Travelling salesman problem. [Online] [Dostęp: 17.07.2015] http://www.travellingsalesmanproblem.com/ [13] TSPLIB [Online] [Dostęp: 25.08.2015] http://comopt.ifi.uni-heidelberg.de/software/tsplib95/ Logistyka 1/2016 356