Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4



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

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

Obliczenia inspirowane Naturą

Algorytmy mrówkowe (ang. Ant Colony Optimization)

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

Obliczenia Naturalne - Algorytmy Mrówkowe

Metody Programowania

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

Ogólne wiadomości o grafach

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

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

Wykład 8. Drzewo rozpinające (minimum spanning tree)

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

Techniki optymalizacji

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

Zadania laboratoryjne i projektowe - wersja β

Laboratorium technik optymalizacji: układanie uniwersyteckiego planu zajęć

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Minimalne drzewa rozpinające

Programowanie dynamiczne i algorytmy zachłanne

Problemy z ograniczeniami

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

Wykład 4. Droga i cykl Eulera i Hamiltona

a) 7 b) 19 c) 21 d) 34

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

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

Algorytmy stochastyczne laboratorium 03

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

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

Wstęp do programowania

Algorytmy mrówkowe w dynamicznych problemach transportowych

Sterowanie procesami dyskretnymi

Podejście zachłanne, a programowanie dynamiczne

Obliczenia Naturalne - Algorytmy Mrówkowe cz. 4

Optymalizacja. Wybrane algorytmy

PRZESZUKIWANIE LOKALNE I ALGORYTMY POPULACYJNE DLA WIELOKRYTERIALNEGO PROBLEMU GNIAZDOWEGO

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

Strategie Zespołowe (SZ) dr inż. Tomasz Białaszewski

Heurystyczne metody przeszukiwania

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

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Planowanie przedsięwzięć

Algorytm genetyczny (genetic algorithm)-

Znajdowanie skojarzeń na maszynie równoległej

HARMONOGRAMOWANIE Z OGRANICZENIAMI PROJEKTÓW WSPÓŁBIEŻNYCH

Metody przeszukiwania

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

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

Wybrane podstawowe rodzaje algorytmów

Algorytmika Problemów Trudnych

Techniki optymalizacji

Problemy optymalizacyjne - zastosowania

Algorytm dyskretnego PSO z przeszukiwaniem lokalnym w problemie dynamicznej wersji TSP

Temat: Algorytmy zachłanne

RÓWNOLEGŁY ALGORYTM POSZUKIWANIA Z ZABRONIENIAMI UKŁADANIA PLANU ZAJĘĆ

Szeregowanie zadań. Wykład nr 3. dr Hanna Furmańczyk

Problem Komiwojażera - algorytmy metaheurystyczne

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

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

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Algorytmiczna teoria grafów

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

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

TEORETYCZNE PODSTAWY INFORMATYKI

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

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

MODELE SIECIOWE 1. Drzewo rozpinające 2. Najkrótsza droga 3. Zagadnienie maksymalnego przepływu źródłem ujściem

Obliczenia naturalne Natural Computing. Informatyka II stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny)

Wstęp do Techniki Cyfrowej... Teoria automatów

Matematyczne Podstawy Informatyki

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI

Rozwiązywanie problemów metodą przeszukiwania

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

Tomasz M. Gwizdałła 2012/13

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

Metody Optymalizacji: Przeszukiwanie z listą tabu

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

Algorytmy metaheurystyczne podsumowanie

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

Schemat programowania dynamicznego (ang. dynamic programming)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Wstęp do programowania

Wstęp do programowania

Matematyczne Podstawy Informatyki

Algorytmy wyznaczania centralności w sieci Szymon Szylko

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE

Co to jest grupowanie

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

Projektowanie i analiza algorytmów

METODY OPTYMALIZACJI. Tomasz M. Gwizdałła 2018/19

Przykłady problemów optymalizacyjnych

Bioinformatyka Laboratorium, 30h. Michał Bereta

Matematyka dyskretna

Seminarium IO. Zastosowanie wielorojowej metody PSO w Dynamic Vehicle Routing Problem. Michał Okulewicz

Transkrypt:

Plan Literatura Obliczenia Naturalne - y Mrówkowe cz. 4 Paweł Paduch Politechnika Świętokrzyska 12 czerwca 2014 Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 1 z 37

Plan wykładu Wstęp Plan Literatura 1 Wstęp Plan Literatura 2 3 Definicja Główne problemy Rezultaty 4 Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 2 z 37

Literatura Wstęp Plan Literatura Marco Dorigo, Thomas Stützle - Ant Colony Optimization. Bradford Company, Scituate, MA, USA, 2004 Krzysztof Socha, Joshua Knowles, and Michael Sampels - A max-min ant system for the university course timetabling problem Proceedings of the 3rd International Workshop on Ant Algorithm, ANTS 2002, Lecture Notes in Computer Science, strony 1 13. Springer-Verlag, 2002 Daniel Merkle, Martin Middendorf - An Ant Algorithm with a New Pheromone Evaluation Rule for Total Tardiness Problems. EvoWorkshops, strony 287 296, 2000 Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 3 z 37

Literatura Wstęp Plan Literatura Daniel Merkle, Martin Middendorf, Hartmut Schmeck - Ant colony optimization for resource-constrained project scheduling. IEEE Transactions on Evolutionary Computation, strony 893 900. Morgan Kaufmann, 2000 Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 4 z 37

Cel Wstęp Głównym zadaniem planowania uniwersyteckieog rozkładu zajęć (ang. University Course Timetabling Problem - UCTP) jest przypisanie wydarzenia do przedziałów czasowych oraz do pomieszczeń tak, by wszystkie twarde założenia zostały spełnione oraz by było jak najmniej niespełnionych miękkich założeń. Problem UCTP wraz z podobnymi podproblemami jest NP-trudny, próbowano go już rozwiązywać za pomocą algorytmów ewolucyjnych, symulowanego wyżarzania, tabu search. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 5 z 37

Założenia Wstęp Dany jest zbiór n zajęć (Events) E Dany jest zbiór slotów czasowych T = {t 1, t 2,..., t k } Dla 5 dni w tygodniu i 9 godzin k = 45 Zbiór pomieszczeń R w których zajęcia mogłyby się odbywać Zbiór studentów S uczęszczających na zajęcia Zbiór F cech jakie spełniają pomieszczenia R a wymagane są do prowadzenia zajęć E Każdy student uczęszcza na pewną liczbę zajęć Każda sala ma określoną pojemność studentów Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 6 z 37

Wykonalność - założenia twarde Plan jest wykonalny gdy wszystkie zajęcia są przydzielone do slotów czasowych i pomieszczeń w ten sposób, że wszystkie twarde założenia są spełnione: żaden student (grupa studencka) nie uczestniczy w tym samym czasie w większej liczbie zajęć niż 1. pomieszczenie jest na tyle pojemne by wszyscy studenci się zmieścili i spełnia wymagania stawiane przez określone zajęcia (np. wyposażenie) w danym pomieszczeniu w tym samym czasie prowadzone mogą być tylko jedne zajęcia. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 7 z 37

Założenia miękkie Wykonalny plan jest jednocześnie karany za naruszenie założeń miękkich np. Student ma zajęcia w ostatniej godzinie danego dnia Student ma więcej niż 2 zajęcia pod rząd (u nas raczej chodzi o minimalizowanie okienek) Student ma dokładnie jedne zajęcia w ciągu całego dnia. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 8 z 37

Wyższość założeń Twarde ograniczenia muszą być spełnione przez wszystkie możliwe rozwiązania, miękkie zaś nie dotyczą wykonywalności, ale wpływają na jakość rozwiązania. Założenia twarde są stawiane zawsze wyżej niż założenia miękkie. Jeżeli w pewnym rozwiązaniu wszystkie założenia miękkie są spełnione ale złamane jest choćby jedno twarde to takie rozwiązanie ma mniej punktów niż inne ze spełnionymi wszystkim założeniami twardymi ale z dużą liczbą złamanych założeń miękkich. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 9 z 37

Reprezentacja Wstęp Rozwiązaniem jest wektor T E reprezentujący pary slotów czasowych i zajęć. Przypisaniem tych par do pomieszczeń zajmu się już deterministyczny algorytm. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 10 z 37

Konstruowanie grafu Aby użyć algorytmu mrówkowego do omawianego problemu musimy umieścić go na grafie. Dwa podejścia stosowane przez mrówki: Odwiedzanie kolejnych slotów czasowych próbując dopasować do nich zajęcia. Odwiedzanie kolejnych zajęć próbując dopasować sloty czasowe. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 11 z 37

Struktura sieci Pierwsze podejście wymaga użycia wirtualnych slotów czasowych T = {t 1, t 2,..., t E } i mapowania T T e 1 t 1 t 2 t n Start e 2 Stop e n Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 12 z 37

Struktura sieci Drugie podejście jest prostsze, mrówka przechodzi przez wszystkie zajęcia e E wybierając dla nich różne sloty czasowe t T. To gwarantuje, że każde zajęcia będą dokładnie raz w jednym slocie czasowym. Ponadto można ustawić na samym początku bardziej problematyczne zajęcia np. wymagające dużej auli. e 1 e 2 e n t 1 Start t 2 Stop t k Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 13 z 37

Mrówki przechodząc przez graf tworzą częściowe rozwiązania A i : E i T dla i = 0,..., E, gdzie E i = {e 1,..., e i }. Mrówka startuje pustym częściowym rozwiązaniem A 0 = 0. Po skonstruowaniu Ai 1 tworzone jest rozwiązanie A i jako suma poprzedniego rozwiązania i dołączenia bieżącej pary slotu czasowego i zajęć A i = A i 1 {(e i, t)} Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 14 z 37

Slot czasowy t jest wybierany losowo ze zbioru T zgodnie z prawdopodobieństwem p ei,t zależnego od macierzy feromonów τ(a i 1 ) [τ min, τ max ] E T (τ min, τ max R) oraz informacji heurystycznej η(a i 1 ) danej wzorem: p ei,t(τ(a i 1 ), η(a i 1 )) = (τ (ei,t)(a i 1 )) α (η (ei,t)(a i 1 )) β θ T (τ (e i,θ)(a i 1 )) α (η (ei,θ)(a i 1 )) β Zarówno τ jak i η mają w argumencie poprzednie częściowe rozwiązanie A i 1. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 15 z 37

Reprezentacja feromonowa W najprostszym podejściu feromon reprezentuje bezwzględną pozycję, gdzie zajęcia powinny być umieszczone. Macierz feromonowa dana jest τ(a i ) = τ, i = 1,..., E. Oznacza to że feromon nie zależy od częściowego rozwiązania. A i. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 16 z 37

Macierz feromonowa W bardziej zaawansowanych rozwiązaniach można dodać dodatkową macierz µ R E E + określająca, które zajęcia mogą być wykonywane w tym samym czasie a które nie. Teraz τ (e,t) (A i ) może być wyrażona: { τmax jeżeli A 1 i (t) = 0 τ (e,t) (A i ) = min e A 1 i (t) µ(e, e ) dla pozostałych. Zapisując informacje zwrotną do µ algorytm uczy się, które zajęcia może łączyć a których nie. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 17 z 37

Informacja heurystyczna Najprostsza informacja heurystyczna będzie zależeć od liczby naruszonych warunków twardych i miękkich danych funkcją V (e,t) (A i 1 ). 1 η (e,t) (A i 1 ) = 1 + V (e,t) (A i 1 ) Wyliczanie V może być kosztowne i niepotrzebne w przypadku użycia Local Search. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 18 z 37

Wstęp Na początku inicjowana jest macierz feromonów wartością τ max. W każdej iteracji m mrówek tworzy swoje własne kompletne rozwiązanie, przypisując wszystkie zajęcia do slotów czasowych. Mrówki pobierają zajęcia w ustalonej wcześniej kolejności, sloty czasowe wybierają zaś zgodnie z opisanym wcześniej prawdopodobieństwem. Po stworzeniu wszystkich par zajęcie-slot czasowy przetwarzane są one na plan zajęć. Najlepiej dopasowany plan jest jeszcze ulepszany za pomocą algorytmu lokalnego wyszukiwania. Jeżeli nowe plan jest lepszy od poprzednich zostaje zapamiętany. Następnie na podstawie najlepszego dotychczasowego planu aktualizujemy feromon. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 19 z 37

Wstęp 1 MAX-MIN UCTP (Inicjalizacja) Wejście: Instancja problemu I 1: τ max 1/ρ 2: τ(e, t) τ max (e, t) E T 3: Oblicz c(e, e ) (e, e ) E 2 4: Oblicz d(e) 5: Posortuj E według, dając e 1 e 2... e n Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 20 z 37

Wstęp 2 MAX-MIN UCTP (Główna pętla) 6: while Nie upłynął czas do 7: for a = 1 to m do 8: A 0 0 9: for i = 1 to E do 10: Wybierz slot czasowy t według p ei,t dla zajęć e i 11: A i A i 1 (e i, t) 12: end for 13: C rozwiązanie po przekształceniu A n na plan zajęć 14: C ib najlepsze z C i w C ib 15: end for 16: C ib rozwiązanie po użyciu lokalnego wyszukiwania na C ib 17: C gb najlepsze z C ib oraz C gb 18: Zaktualizuj feromon τ używając C gb, τ min, τ max 19: end while Wyjście: Zoptymalizowany kandydat C gb rozwiązania dla I Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 21 z 37

- objaśnienia c(e, e ) = { 1 jeżeli są studenci uczestniczący w e oraz e 0 dla pozostałych. d(e) = {e E\{e} c(e, e ) 0} Kolejność zdefiniowana jest następująco: e e : d(e) > d(e ) d(e) = d(e ) l(e) < l(e ) Gdzie l jest funkcją różnowartościową l : E N i jest używana tylko do trzymania więzi. Tylko rozwiązania z najmniejszą liczbą naruszonych warunków wybierane są do poprawienia metodą Local Search. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 22 z 37

Aktualizacja feromonu Do aktualizowania feromonu raz na iterację wybierane jest tylko najlepsze globalne rozwiązanie. { (1 ρ) τ(e,t) + 1 jeżeli A τ(e, t) = gb (e) = t (1 ρ) τ (e,t) dla pozostałych. żeby wartość feromonu była pomiędzy τ min, τ max τ min jeżeli τ (e,t) < τ min τ(e, t) = τ max jeżeli τ (e,t) > τ max dla pozostałych τ (e,t) Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 23 z 37

Zalecane parametry Zalecanymi parametrami są: ρ = 0, 3 τ max = 1 ρ = 3, 33 τ min około 0,0019-0,0078 (zależne od skali problemu) α = 1 β = 0 - wyłączenie heurystyki liczba mrówek m = 10 Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 24 z 37

Problem harmonogramowania Definicja Główne problemy Rezultaty Problem harmonogramowania (ang. Scheduling Problems) to kolejny problem do rozwiązania którego użyto algorytmu ACO. Problem ten zwykle występuje w harmonogramowaniu produkcji, gdzie na m maszynach trzeba wykonać n zadań w g operacjach. Trzeba tak poukładać zadania, by wykorzystanie zasobów było najlepsze. W zależności od rodzaju problemu harmonogramowania, różne jego wersje mogą różnić się pewnymi ograniczeniami lub dodatkowymi założeniami, jak np. relacje pomiędzy poszczególnymi procesami czy uwzględnienie problemu transportu. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 25 z 37

Definicja Główne problemy Rezultaty Główne problemy harmonogramowania rozwiązywane za pomocą ACO to między innymi: problem otwarty OSP (ang. open-shop problem), problem gniazdowy JSP, (ang. job shop problem), problem permutacyjny przepływowy PFSP (ang. permutation flow shop problem), SMTTP (ang. single-machine total tardiness problem), SMTWTP (ang. single-machine total weighted tardiness problem), RCPSP (ang. resource-constrained project scheduling problem), GSP (ang. group shop problem) SMTTPSDST (ang. single-machine total tardiness problem with sequence dependent setup times). Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 26 z 37

Rezultaty Wstęp Definicja Główne problemy Rezultaty ACO stosuje się do wielu problemów harmonogramowania jednak wydajność algorytmów mrówkowych w zależności od typu problemu może się różnić. ACO osiąga bardzo dobre wyniki w zastosowaniu do rozwiązania problemów SMTWTP, OSP czy RCPSP. Jednak przy PFSP czy JSP rezultaty są dalekie od tych osiąganych za pomocą innych algorytmów. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 27 z 37

Ogólnie Wstęp Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Problem podzbioru (ang. Subset Problem) polega na odpowiednim wybraniu elementów z podanego zbioru według pewnych zasad. Wybór musi być dokonany tak, by był optymalny. Zastosowanie ACO do problemu podzbioru charakteryzują dwie cechy. kolejność podzbioru nie jest istotna, w ten sposób ślady feromonowe związane są z elementami, a nie połączeniami pomiędzy nimi. liczba elementów w rozwiązaniu budowanym przez różne mrówki może być różna. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 28 z 37

Pokrycie zbioru Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Pokrycie zbioru (ang. set covering), gdzie mając na wejściu wiele zbiorów, które mają elementy wspólne, trzeba wybrać minimalny zestaw tych zbiorów by zawierały wszystkie elementy, jakie znajdywały się w zbiorach danych na wejściu. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 29 z 37

Problem - WCGTPP Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Problem podziału drzewa w grafie ograniczonym wagowo (ang. Weight Constrained Graph Tree Partition Problem - WCGTPP), gdzie mamy nieskierowany graf G(N, A) składający się z n węzłów i l krawędzi. Każdej krawędzi (i, j) jest przypisany koszt c ij a każdemu węzłowi i jest przypisana waga w i. Celem jest znalezienie minimalnego lasu rozpinającego F złożonego z p drzew tak, by waga każdego drzewa mieściła się w wyznaczonym przedziale [W, W + ]. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 30 z 37

Arc-Weighted l-cardinality Tree Problem Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Arc-Weighted l-cardinality Tree Problem. Jest uogólnieniem problemu wyznaczenia minimalnego drzewa rozpinającego, który polega na znalezieniu poddrzewa z dokładnie l krawędziami w grafie G = (N, A) z wagami krawędzi (lub węzłów) takimi, by suma wag była minimalna. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 31 z 37

Problem wielo-plecakowy Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Problem wielo-plecakowy (ang. Multiple Knapsack Problem - MKP). Mamy kilka kontenerów (plecaków) o ograniczonych zasobach (np. pojemności). Dany jest zestaw przedmiotów konsumujących pewne zasoby (np. pojemność) oraz mających pewną wartość (np. waga, cena). Należy tak dopasować przedmioty do kontenerów, by wartość w nich była jak najbardziej optymalna i jednocześnie nie przekroczyć granicznej objętości. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 32 z 37

Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Problem największego zbioru niezależnego Problem największego zbioru niezależnego (ang. Maximum Independent Set Problem). Polega na znalezieniu maksymalnego podzbioru wierzchołków danego grafu takich, pomiędzy którymi nie istnieje żadna krawędź łącząca je bezpośrednio. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 33 z 37

Problem maksymalnej kliki Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Problem maksymalnej kliki (ang. Maximum Clique Problem). Jest to problem wyznaczenia w grafie maksymalnego zbioru wierzchołków, w którym każda para jest połączona krawędzią. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 34 z 37

Inne Wstęp Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Z innych problemów NP-trudnych do rozwiązania których użyto algorytmów mrówkowych można wymienić problem najkrótszego wspólnego podciągu (ang. Shortest Common Supersequence Problem), problem pakowania (ang. Bin Packing Problem), przewidywanie ułożenia białek bazując na sekwencji aminokwasów (ang. Protein Folding), w problemach uczenia się maszyn. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 35 z 37

Pytania Wstęp Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania? Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 36 z 37

koniec Wstęp Ogólnie y mrówkowe w problemach podzbioru Inne zastosowania Dziękuję Państwu za uwagę. Paweł Paduch Obliczenia Naturalne - y Mrówkowe cz. 4 37 z 37