Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Podobne dokumenty
Wykorzystanie algorytmów mrówkowych w dynamicznym problem

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

Algorytmy mrówkowe. H. Bednarz. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

Algorytmika Problemów Trudnych

Algorytmy mrówkowe. P. Oleksyk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

Algorytm dyskretnego PSO z przeszukiwaniem lokalnym w problemie dynamicznej wersji TSP

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

Wybrane podstawowe rodzaje algorytmów

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

Programowanie dynamiczne cz. 2

Optymalizacja. Wybrane algorytmy

Algorytmy mrówkowe. Plan. » Algorytm mrówkowy» Warianty» CVRP» Demo» Środowisko dynamiczne» Pomysł modyfikacji» Testowanie

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

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

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

Obliczenia inspirowane Naturą

Problem Komiwojażera - algorytmy metaheurystyczne

Algorytmy mrówkowe (ang. Ant Colony Optimization)

MATEMATYCZNE METODY WSPOMAGANIA PROCESÓW DECYZYJNYCH

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

R E C E N Z J A. rozprawy doktorskiej mgr Wojciecha Bury nt. Wielokryterialne, mrowiskowe algorytmy optymalizacji w nawigacji samochodowej

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Projektowanie i analiza algorytmów

Wykład 4. Droga i cykl Eulera i Hamiltona

Metody przeszukiwania

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Algorytmy Mrówkowe. Daniel Błaszkiewicz 11 maja 2011

Metoda UCT w stochastycznych problemach transportowych

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

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Algorytmy mrówkowe w dynamicznych problemach transportowych

Wykład 10 Grafy, algorytmy grafowe

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

PRACA DYPLOMOWA MAGISTERSKA

Systemy mrówkowe. Opracowali: Dawid Strucker, Konrad Baranowski

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

Algorytmy Mrówkowe. Daniel Błaszkiewicz. 11 maja Instytut Informatyki Uniwersytetu Wrocławskiego

Wyznaczanie optymalnej trasy problem komiwojażera

Grafy. Jeżeli, to elementy p i q nazywamy końcami krawędzi e. f a b c d e γ f {1} {1,2} {2,3} {2,3} {1,3}

opis funkcjonalności LogoMate

PRZEWODNIK PO PRZEDMIOCIE

Przykład planowania sieci publicznego transportu zbiorowego

Biologicznie motywowane metody sztucznej inteligencji

Instrukcja projektowa cz. 2

K.Pieńkosz Badania Operacyjne Wprowadzenie 1. Badania Operacyjne. dr inż. Krzysztof Pieńkosz

Algorytmy metaheurystyczne podsumowanie

Przykłady problemów optymalizacyjnych

Metody Ilościowe w Socjologii

Programowanie sieciowe. Tadeusz Trzaskalik

Analysis of PCE-based path optimization in multi-domain SDN/MPLS/BGP-LS network

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

) a j x j b; x j binarne (j N) całkowitoliczbowe; przyjmujemy (bez straty ogólności): c j > 0, 0 <a j b (j N), P n

Sprawozdanie do zadania numer 2

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Risk-Aware Project Scheduling. SimpleUCT

Zadania przykładowe do kolokwium z AA2

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

Schemat programowania dynamicznego (ang. dynamic programming)

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

Złożoność obliczeniowa klasycznych problemów grafowych

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Algorytmy stochastyczne laboratorium 03

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

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

ZASTOSOWANIE ALGORYTMÓW MRÓWKOWYCH W ROZWIĄZANIU PROBLEMU SZEREGOWANIA ZADAŃ APPLICATION OF ANT COLONY SYSTEMS IN SOLVING OF TASK SCHEDULING PROBLEM

SKUTECZNE ROZWIĄZANIA DLA LOGISTYKI

Dostawa oprogramowania. Nr sprawy: ZP /15

TEORIA GRAFÓW I SIECI

Numeryczna algebra liniowa

Zagadnienie transportowe

Techniki optymalizacji

Symulacyjne metody wyceny opcji amerykańskich

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Opracowanie prof. J. Domsta 1

Instytut Informatyki Uniwersytet Wrocławski. Dane w sieciach. (i inne historie) Marcin Bieńkowski

Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4

Matematyka od zaraz zatrudnię

Planowanie drogi robota, algorytm A*

XII International PhD Workshop OWD 2010, October 2010 MODEL TEORETYCZNY ALGORYTMU MRÓWKOWEGO SAS

Zaawansowane programowanie

Techniki optymalizacji

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

Algorytmy i Struktury Danych

Opis przedmiotu. Karta przedmiotu - Badania operacyjne Katalog ECTS Politechniki Warszawskiej

Analiza ilościowa w przetwarzaniu równoległym

Metody Programowania

Digraf. 13 maja 2017

Systemy wbudowane. Cel syntezy systemowej. Wykład 12: Przykłady kosyntezy systemów wbudowanych

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.

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

Techniki optymalizacji

Analiza czasowo-kosztowa

Algorytmy genetyczne

Algorytmy ewolucyjne 1

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Generowanie i optymalizacja harmonogramu za pomoca

Harmonogramowanie czynności (1)

Opis przedmiotu. Karta przedmiotu - Badania operacyjne Katalog ECTS Politechniki Warszawskiej

Transkrypt:

Wykorzystanie algorytmów mrówkowych w dynamicznym problemie marszrutyzacji Promotor: dr inż. Aneta Poniszewska-Marańda Współpromotor: mgr inż. Łukasz Chomątek 18 stycznia 2013

Przedmiot i cele pracy dyplomowej Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Przedmiotem pracy dyplomowej jest implementacja algorytmu mrówkowego dla wybranego problemu. Problem marszruty posiada wiele rozszerzeń z pośród których należy wybrać część, która zostanie rozważona.

Problem komiwojażera Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Definicja Problem optymalizacyjny polegający na znalezieniu najkrótszego cyklu odwiedzającego wszystkie wierzchołki w pełnym grafie ważonym.

Rozwiązania Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Problem NP-Trudny n! możliwych tras Algorytm dynamiczny: O(n 2 2 n ) Programowanie liniowe (do 200 miast) Aktualny rekord to rozwiązanie dla 85900 wierzchołków przy użyciu metody podziału i odcinania. Czas obliczeń: 136 lat procesora.

Rozwiązania Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Problem NP-Trudny n! możliwych tras Algorytm dynamiczny: O(n 2 2 n ) Programowanie liniowe (do 200 miast) Aktualny rekord to rozwiązanie dla 85900 wierzchołków przy użyciu metody podziału i odcinania. Czas obliczeń: 136 lat procesora.

Problem marszrutyzacji Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Rozszerzenie problemu komiwojażera. Definicja Problem polega na dostarczeniu dostaw do określonych wierzchołków. Ograniczenia uwzględniane przez problem: Ograniczona pojemność ciężarówki Niepodzielność dostawy Określony punkt początkowy i końcowy

Rozszerzenie problemu marszrutyzacji Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Problemy umożliwiające uwzględnienie okien czasowych (VRP with Time Windows) odbioru/wysłania towaru. Problemy w których kosztowa funkcja celu zastąpiona została innymi parametrami (np. czas wykonania zleceń, długość tras, ilość przewiezionego ładunku) Problemy uwzględniające niehomogeniczność taboru Dynamiczne zmiany w parametrach problemu (DVRP)

Rozwiązanie Przedmiot i cele pracy dyplomowej Problem komiwojażera Problem marszrutyzacji Problem składa się z dwóch podproblemów: 1 Problem plecakowy wybierający towary, a zarazem klientów danej ciężarówki (bądź jej konkretnego kursu). 2 Problem komiwojażera dla określonej ciężarówki załadowanej określonym towarem.

Algorytm mrówkowy Algorytm mrówkowy Inny przykład Obliczenia równoległe Definicja Algorytm mrówkowy jest algorytmem probabilistycznym służącym najkrótszej ścieżki w grafie. Symuluje on zachowanie rzeczywistych mrówek, które chodzą losowo w oparciu o natężenie feromonu zostawionego przez inne mrówki.

Klasyczny przykład Algorytm mrówkowy Inny przykład Obliczenia równoległe

Inny przykład Algorytm mrówkowy Inny przykład Obliczenia równoległe

Algorytm mrówkowy Inny przykład Obliczenia równoległe Co się stanie jeśli zasymulujemy 100 mrówek. Każda mrówka zostawia α feromonu na całej trasie. F L = 0.01 + 1 α = 0.01 + α 0.1 10 F R = 0.99 + 99 α 11 = 0.99 + α 9 F L > 0.01 F R 0.99

Obliczenia równoległe Algorytm mrówkowy Inny przykład Obliczenia równoległe Budowa algorytmu mrówkowego umożliwia niemal dowolne wprowadzenie obliczeń równoległych. W danej epoce jednostka obliczeniowa może wykonać obliczenia dla dowolnej ilości mrówek. Z punktu widzenia wartości oczekiwanej jednostki mogą prowadzić własne niezależne symulacje uwzględniające modyfikacje feromonów dokonując co pewien czas synchronizacji zmian z innymi węzłami.

Dostępna literatura Dostępna literatura Co można zrobić? Technologia Bogate zasoby ogólnodostępne: IEEE Cirrelt CiteSeerX

Dostępna literatura Co można zrobić? Technologia Algorytm mrówkowy wydaje się być bardzo dobrym rozwiązaniem jeśli chodzi o dynamicznie zmieniające się środowisko. Rozwiązanie nie powinno ulec znaczącej zmianie jeśli zmianie uległa mała część środowiska. Z macierzy feromonów można odczytać nie tylko najlepsze rozwiązanie, ale też inne rozwiązania o małym koszcie. Można zmodyfikować algorytm by rozwiązania dobre nigdy nie znikały w pełni z macierzy feromonów (ograniczenie przepustowości ścieżek).

Technologia Dostępna literatura Co można zrobić? Technologia Część obliczeniowa w formie biblioteki Interfejs graficzny w języku C# Możliwość testowania na rzeczywistych danych, np. OpenStreetMap