Problem Komiwojażera - algorytmy metaheurystyczne

Podobne dokumenty
Wybrane podstawowe rodzaje algorytmów

Optymalizacja. Wybrane algorytmy

Techniki optymalizacji

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

Algorytmy metaheurystyczne podsumowanie

Techniki optymalizacji

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

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

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

Metody przeszukiwania

Algorytmy genetyczne

Algorytm genetyczny (genetic algorithm)-

Wykład 4. Droga i cykl Eulera i Hamiltona

Programowanie genetyczne, gra SNAKE

Zadania laboratoryjne i projektowe - wersja β

Obliczenia inspirowane Naturą

WYKORZYSTANIE ALGORYTMÓW GENETYCZNYCH I MRÓWKOWYCH W PROBLEMACH TRANSPORTOWYCH

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

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

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

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

Algorytmy genetyczne

Algorytmy mrówkowe (ang. Ant Colony Optimization)

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

Algorytmy genetyczne

Testy De Jonga. Problemy. 1 Optymalizacja dyskretna i ciągła

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

Algorytmy ewolucyjne 1

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

Algorytmy genetyczne

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

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

Algorytmy ewolucyjne. Łukasz Przybyłek Studenckie Koło Naukowe BRAINS

Programowanie Współbieżne. Algorytmy

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

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

ALGORYTMY GENETYCZNE ćwiczenia

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

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Rój cząsteczek. Particle Swarm Optimization. Adam Grycner. 18 maja Instytut Informatyki Uniwersytetu Wrocławskiego

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

Programowanie genetyczne - gra SNAKE

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Algorytmy genetyczne w optymalizacji

Automatyczny dobór parametrów algorytmu genetycznego

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Algorytmy ewolucyjne. wprowadzenie

Obliczenia Naturalne - Algorytmy Mrówkowe

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Algorytmy ewolucyjne Część II

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

ALHE Z11 Jarosław Arabas wykład 11

Równoważność algorytmów optymalizacji

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ALGORYTM MRÓWKOWY (ANT SYSTEM) ALGORYTM MRÓWKOWY. Algorytm mrówkowy

Algorytm dyskretnego PSO z przeszukiwaniem lokalnym w problemie dynamicznej wersji TSP

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy mrówkowe wprowadzenie.

Algorytmy ewolucyjne NAZEWNICTWO

Generowanie i optymalizacja harmonogramu za pomoca

Algorytmy ewolucyjne `

Obliczenia ewolucyjne - plan wykładu

Metoda UCT w stochastycznych problemach transportowych

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

W POSZUKIWANIU OPTYMALNEJ TRASY WYBRANE ALGORYTMY W ZASTOSOWANIU DO PROBLEMU KOMIWOJAŻERA

Zaawansowane programowanie

ALGORYTMY EWOLUCYJNE. INTELIGENTNE TECHNIKI KOMPUTEROWE wykład 011. Napór selekcyjny (selektywny nacisk. Superosobniki: SELEKCJA

Techniki optymalizacji

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

Algorytmy ewolucyjne (3)

Teoria algorytmów ewolucyjnych

Dobór parametrów algorytmu ewolucyjnego

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

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

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

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

Obliczenia z wykorzystaniem sztucznej inteligencji

Algorytmy genetyczne (AG)

METODY HEURYSTYCZNE wykład 3

OBLICZENIA EWOLUCYJNE

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Metody Rozmyte i Algorytmy Ewolucyjne

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

przetworzonego sygnału

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

METODY HEURYSTYCZNE wykład 3

RÓWNANIA RÓŻNICZKOWE ZWYCZAJNE - LISTA I

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

Biologicznie motywowane metody sztucznej inteligencji

Algorytmy genetyczne służą głównie do tego, żeby rozwiązywać zadania optymalizacji

OPTYMALIZACJA KSZTAŁTU WYKRESU WÖHLERA Z WYKORZYSTANIEM ALGORYTMÓW EWOLUCYJNYCH W UJĘCIU DIAGNOSTYCZNYM

Hybrydowy algorytm mrówkowy wykorzystujący algorytm genetyczny do wyznaczania trasy w systemie nawigacji

Znajdowanie wyjścia z labiryntu

Mrówka Pachycondyla apicalis

Strategie ewolucyjne (ang. evolution strategies)

Program "FLiNN-GA" wersja 2.10.β

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

Zaawansowane programowanie

Program MC. Obliczyć radialną funkcję korelacji. Zrobić jej wykres. Odczytać z wykresu wartość radialnej funkcji korelacji w punkcie r=

Transkrypt:

Problem Komiwojażera - algorytmy metaheurystyczne algorytm mrówkowy algorytm genetyczny by Bartosz Tomeczko. All rights reserved. 2010.

TSP dlaczego metaheurystyki i heurystyki? TSP Travelling Salesman Problem liczba rozwiązań: Dla 5 miast: 12 możliwych permutacji Dla 10 miast: N 1! l= 2 181 440 możliwych permutacji Dla 50 miast: 10 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 możliwych permutacji

Algorytm mrówkowy Algorytm wykorzystuje zachowanie mrówek tj. sposób ich zachowania w przemieszczaniu się.

Konstrukcja mrówki

Sytuacja

Sytuacja

Sytuacja

Algorytm mrówkowy Mrówka porusza się ze stałą szybkością, mrówka generuje po sobie ślad feromonowy, feromon paruje (znika), mrówka idzie po śladzie feromonowym z pewnym prawdopodobieństwem.

Po przejściu jednej mrówki

Po przejściu wielu mrówek

Algorytm mrówkowy Okazuje się, że ścieżka, na której jest najwięcej feromonu, jest ścieżką najkrótszą.

Mrówka Każda z mrówek wyposażona jest ponadto w pamięć. dwie listy: odwiedzone punkty (na początku pusta), nieodwiedzone punkty (na początku wypełniana), pamięć ta wykorzystywana jest do odtworzenia śladu mrówki (np. najkrótszej ścieżki dla TSP).

Poruszanie się mrówki Mrówka wybiera drogę do nieodwiedzonego jeszcze miasta dla którego wartość równania ij t ij jest największa z prawdopodobieństwem q. Zatem z prawdopodobieństwem 1-q mrówka wybierze miasto nieodwiedzone, które nie spełnia powyższego postulatu.

Poruszanie się mrówki ij t ij W równaniu tym: ij oznacza ślad feromonowy związany z umieszczeniem miasta j-tego jako i-tego w ułożeniu, ij oznacza wskaźnik powiązany z wybraną heurystyką, oznacza parametr, który determinuje, jak duży jest wpływ heurystyki na działanie mrówki.

Wskaźnik ij Zastosować można trzy metody obliczające wskaźnik : 1.Najwcześniejszy termin zakończenia zadania (EDD): =1/d, ij j 2.Modyfikowany termin zakończenia zadania (MDD): 1 = max {C p, d }, gdzie C oznacza sumę zadań już uporządkowanych, ij j j 3.Określonej ważności (AU): ij = 1 wj max {d j C j, 0} exp pj k p, gdzie p oznacza średni czas wykonania wszystkich nieuszeregowanych zadań a k to dodatkowy parametr regulacyjny.

Parowanie feromonu Feromon paruje z podłoża, feromon może parować liniowo (o x jednostek w jednostce czasu), feromon może parować wykładniczo (x < 1) t 1 = t x można zaproponować samodzielnie zaprojektowaną charakterystykę parowania feromonu z podłoża.

Parametry regulacyjne Dla przestawionego algorytmu dobierać można w różne sposoby parametry regulacyjne (prawdopodobieństwa, współczynniki), należy zbadać, jaki jest wpływ każdego z parametrów na wyniki dawane przez algorytm, należy zbadać, jaka ilość mrówek daje rozwiązanie zadowalające (kiedy zwiększanie ilości mrówek nieznacznie poprawia wynik dawany przez algorytm), należy zbadać, jaki wpływ ma ilość miast w instancji problemu na czas rozwiązania i ilość potrzebnej pamięci do rozwiązania problemu.

Algorytm genetyczny Jeden z algorytmów ewolucyjnych, przypomina zjawisko ewolucji biologicznej.

Algorytm genetyczny Dane jest pewne środowisko badań.

Algorytm genetyczny Dane jest pewne środowisko badań. W środowisku umieszczane są osobniki.

Osobnik Każdy z osobników zawiera w sobie pewne informacje (np. pewną permutację miast dla problemu TSP).

Algorytm genetyczny Część z osobników ma cechy lepsze ewolucyjnie (np. są większe, mają dłuższe kły bądź zawierają informację o krótszych drogach (dla TSP)) ta część populacji nadaje się do rozmnażania, pozostała część populacji nie bierze udziału w reprodukcji* (osobniki słabe, małe, z małymi kłami i długimi ścieżkami), * - zasada ta jest zachowana z pewnym prawdopodobieństwem p.

Algorytm genetyczny Zatem rozmnażaniu podlegają osobniki najlepsze*.

Rozmnażanie permutacji? Tak i to prostsze niż u ludzi. Krzyżowanie osobników: dziecko posiada część informacji od obojga rodziców, kilka możliwości krzyżowania, * - z prawdopodobieństwem p osobniki z puli do rozmnażania biorą udział w rozmnażaniu, zatem z prawdopodobieństwem 1-p udział w rozmnażaniu biorą osobniki spoza puli oznaczonej na zielono.

Selekcja osobników do krzyżowania Metoda ruletki (prostsza, biorą w niej udział wszystkie osobniki).

Selekcja osobników do krzyżowania Metoda rankingowa, wybierany jest pewien procent całej populacji (najlepsza część całej populacji), który bierze udział w krzyżowaniu i rozmnażaniu,

Mutacje Aby zapobiegać przedwczesnej zbieżności algorytmu, stosuje się mutacje, zmiany o małym prawdopodobieństwie zachodzące w pojedynczym osobniku przy tworzeniu (prawdopodobieństwo zajścia mutacji jest na poziomie 1%), dla TSP może to być np. zamiana dwóch losowych miast ze sobą,