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



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

Algorytm genetyczny (genetic algorithm)-

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

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

Algorytmy genetyczne

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

6. Klasyczny algorytm genetyczny. 1

Obliczenia ewolucyjne - plan wykładu

Algorytmy ewolucyjne 1

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA HISTORIA NA CZYM BAZUJĄ AG

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Algorytmy ewolucyjne NAZEWNICTWO

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytmy genetyczne w optymalizacji

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

SZTUCZNA INTELIGENCJA

Algorytmy genetyczne (AG)

Równoważność algorytmów optymalizacji

Generowanie i optymalizacja harmonogramu za pomoca

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

ALGORYTMY GENETYCZNE ćwiczenia

Inspiracje soft computing. Soft computing. Terminy genetyczne i ich odpowiedniki w algorytmach genetycznych. Elementarny algorytm genetyczny

Algorytmy ewolucyjne. wprowadzenie

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

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

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

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

Algorytmy genetyczne

Algorytmy genetyczne

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

BIOCYBERNETYKA ALGORYTMY GENETYCZNE I METODY EWOLUCYJNE. Adrian Horzyk. Akademia Górniczo-Hutnicza

Dobór parametrów algorytmu ewolucyjnego

Wstęp do Sztucznej Inteligencji

METODY HEURYSTYCZNE wykład 3

Standardowy algorytm genetyczny

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

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

ALGORYTMY GENETYCZNE

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

METODY HEURYSTYCZNE wykład 3

Algorytmy genetyczne

Zadania laboratoryjne i projektowe - wersja β

ALGORYTMY GENETYCZNE I EWOLUCYJNE

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Teoria algorytmów ewolucyjnych

Obliczenia Naturalne - Algorytmy genetyczne

Optymalizacja optymalizacji

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Zaawansowane programowanie

Strategie ewolucyjne (ang. evolu4on strategies)

ALHE Z11 Jarosław Arabas wykład 11

SZTUCZNA INTELIGENCJA

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

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

Optymalizacja parametryczna (punkt kartezjańskim jest niewypukła).

Metody przeszukiwania

Techniki optymalizacji

LABORATORIUM 5: Wpływ reprodukcji na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Problemy z ograniczeniami

LICZEBNOŚĆ POPULACJI OBLICZENIA EWOLUCYJNE. wykład 3. Istotny parametr AG...

Systemy Inteligentnego Przetwarzania wykład 4: algorytmy genetyczne, logika rozmyta

Metody Rozmyte i Algorytmy Ewolucyjne

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

Algorytmy ewolucyjne

Rok akademicki: 2013/2014 Kod: JIS AD-s Punkty ECTS: 4. Kierunek: Informatyka Stosowana Specjalność: Modelowanie i analiza danych

Fizyka w symulacji komputerowej i modelowaniu komputerowym Metody Monte Carlo Algorytmy Genetyczne. Łukasz Pepłowski

Ewolucjonizm NEODARWINIZM. Dr Jacek Francikowski Uniwersyteckie Towarzystwo Naukowe Uniwersytet Śląski w Katowicach

Algorytmy ewolucyjne `

OBLICZENIA EWOLUCYJNE

KARTA MODUŁU KSZTAŁCENIA

Algorytmy genetyczne w interpolacji wielomianowej

Algorytmy genetyczne Michał Bereta Paweł Jarosz (część teoretyczna)

Strategie ewolucyjne. Gnypowicz Damian Staniszczak Łukasz Woźniak Marek

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Gospodarcze zastosowania algorytmów genetycznych

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Algorytmy genetyczne jako metoda wyszukiwania wzorców. Seminarium Metod Inteligencji Obliczeniowej Warszawa 26 X 2005 mgr inż.

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

METODY HEURYSTYCZNE 3

Problem Komiwojażera - algorytmy metaheurystyczne

R E C E N Z J A. rozprawy doktorskiej mgr Grzegorza Tadeusza Machnika nt. Algorytmy ewolucyjne w projektowaniu fraktalnych wzorów użytkowych

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

Obliczenia inspirowane Naturą

Wykorzystanie algorytmu genetycznego do generowania twarzy ludzkiej

GENETYKA POPULACJI. Ćwiczenia 1 Biologia I MGR /

Implementation of Evolutionary Algorithms in the Knowledge-Based Economy

ZARZĄDZANIE POPULACJAMI ZWIERZĄT

Obliczenia inspirowane Naturą

Ekologia wyk. 1. wiedza z zakresu zarówno matematyki, biologii, fizyki, chemii, rozumienia modeli matematycznych

Teoria ewolucji. Podstawowe pojęcia. Wspólne pochodzenie.

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

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

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

OBLICZENIA EWOLUCYJNE

Aproksymacja funkcji a regresja symboliczna

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

WAE Jarosław Arabas Adaptacja i samoczynna adaptacja parametrów AE Algorytm CMA-ES

Transkrypt:

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

Dlaczego Algorytmy Inspirowane Naturą? Rozwój nowych technologii: złożone problemy obliczeniowe w nauce i technice XX i XXI wieku: duże przestrzenie potencjalnych rozwiązań rozwiązania suboptymalne są zadowalające dla wielu zastosowań jak odnaleźć w rozsądnym czasie dobre (suboptymalne) rozwiązanie Tradycyjne metody poszukiwania rozwiązań realnych problemów były mało efektywne Konieczność opracowania nowych algorytmów przeszukiwania przestrzeni rozwiązań: mechanizmy Natury i biologii są bardzo obiecujące

Złożoność Problemów Problem klasy P (ang. deterministic polynomial - deterministycznie wielomianowy) to problem decyzyjny, dla którego rozwiązanie można znaleźć w czasie wielomianowym. Problem klasy NP (niedeterministycznie wielomianowy, ang. nondeterministic polynomial) to problem decyzyjny, dla którego rozwiązanie można zweryfikować w czasie wielomianowym. Różnica pomiędzy problemami P i NP polega na tym, że w przypadku P znalezienie rozwiązania ma mieć złożoność wielomianową, podczas gdy dla NP sprawdzenie podanego z zewnątrz rozwiązania ma mieć taką złożoność. W teorii złożoności obliczeniowej problem NP-trudny (NPH) to taki problem obliczeniowy, którego rozwiązanie jest co najmniej tak trudne jak rozwiązanie każdego problemu z klasy NP.

Literatura nt. algorytmów inspirowanych Naturą 1. Z. Michalewicz, Algorytmy genetyczne + struktury danych = programy ewolucyjne, WNT, 2003 2. L. Rutkowski, Metody i techniki sztucznej inteligencji, PWN, 2009 3. Z. Michalewicz, D. B. Fogel, Jak to rozwiązać czyli nowoczesna heurystyka, WNT, 2006 4. David A. Goldberg, Algorytmy genetyczne i ich zastosowania, WNT, 2003 5. J. Arabas, Wyklady z algorytmow ewolucyjnych, WNT, 2001 6. F. Seredyński, Evolutionary Paradigms 7. Materiały z dorocznych międzynarodowych konferencji: GECCO, CEC, PPSN

Ewolucja Darwinowska Dzisiaj najbardziej znane algorytmy ewolucyjne są oparte na symulowanej ewolucji darwinowskiej Darwinowska teoria ewolucji naturalnej wskazuje dwa główne czynniki: naturalną selekcję i genetyczne zmiany Naturalna selekcja zakłada, że osobniki które są lepiej przystosowane do środowiska posiadają większe prawdopodobieństwo przeżycia Tylko te osobniki, które przeżyły mogą wydać potomstwo na zasadach, którymi rządzi genetyka

Algorytm genetyczny Twórcą algorytmów genetycznych (zaliczanych do grupy algorytmów ewolucyjnych) jest John Henry Holland, który z biologii czerpał inspiracje do swoich prac, dlatego sposób działania algorytmów genetycznych przypomina zjawisko ewolucji biologicznej. Algorytmy genetyczne powstały z latach 60 na Uniwersytecie Michigan w USA, a obecnie rozwijane są przez: De Yong a, Goldberg a, Michalewicza i wielu innych.

Terminologia algorytmów genetycznych Populacja to zbiór osobników o wspólnych cechach genetycznych. Osobnikami populacji w algorytmach genetycznych są zakodowane w postaci chromosomów zbiory parametrów zadania, czyli rozwiązania, określane też jako punkty przestrzeni poszukiwań. Osobniki nazywane są też organizmami. Chromosomy to inaczej łańcuchy lub ciągi kodowe, uporządkowane ciągi genów. Gen jest nazywany cechą, znakiem, detektorem i stanowi pojedynczy element genotypu, w szczególności chromosomu. Genotyp, czyli struktura to zespół chromosomów danego osobnika. Zatem osobnikami populacji mogą być genotypy albo pojedyncze chromosomy (jeśli genotyp składa się tylko z jednego chromosomu, tak się często przyjmuje). Fenotyp jest zestawem wartości odpowiadających danemu genotypowi, czyli zdekodowaną strukturą, a więc zbiorem parametrów zadania (rozwiązaniem, punktem przestrzeni poszukiwań). Allel to wartość danego genu, określona też jako wartość cechy lub wariant cechy. Locus to pozycja wskazująca miejsce położenia danego genu w łańcuchu, czyli chromosomie.

Klasyczny algorytm genetyczny - Hollanda Binarne kodowanie (chromosom, łańcuch) rozwiązania problemu osobnik populacji Populacja osobników potencjalnych rozwiązań problemu Symulowana ewolucja z użyciem 3 operatorów stosowanych w kolejności: selekcja proporcjonalna krzyżowanie jednopunktowe wykonywane z prawdopodobieństwem p k mutacja bitów wykonywana z prawdopodobieństwem p m

Klasyczny algorytm genetyczny Kodowanie rozwiązania problemu w postać osobnika populacji t = 0 Losowa inicjalizacja populacji P(t) Ocena dopasowania osobników P(t) WHILE warunek stopu NOT TRUE t = t + 1 Selekcja osobników z P(t 1) do P(t) Krzyżowanie w P(t) Mutacja w P(t) Ocena dopasowania osobników w P(t) DO Rozwiązanie problemu = najlepszy osobnik w P(t)

Operator selekcji proporcjonalnej To metoda stochastycznej selekcji (symuluje naturalną selekcję), która dokonuje selekcji osobnika i (aby przeżył i miał szansę wydania potomstwa z prawdopodobieństwem:

Selekcja ruletkowa dla funkcji dopasowania f(x) = 2(x 2 + 1) Chromosom Dopasowanie Procentowy udział Rozkład na kole ruletki

Operatory genetyczne Krzyżowanie Rodzice Punkt krzyżowania 1 1 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 0 1 1 Dzieci 1 1 0 1 0 0 0 1 1 1 0 1 1 0 1 1 1 0 0 0 Mutacja Przed mutacją 1 1 0 1 0 0 1 1 0 0 Gen wylosowany do mutacji Po mutacji 1 1 0 1 0 1 1 1 0 0

Rodzaje selekcji Proporcjonalna (koło ruletki) Rankingowa (rangowa) Turniejowa: Twarda Miękka Elitarna Progowa Stłoczenia

Rodzaje krzyżowania Jednopunktowe Wielopunktowe Uśredniające Wg wzorca Jednorodne

Rodzaje mutacji

Algorytm genetyczny Przykład 1 Znaleźć maximum funkcji f(x) = - (x 31) 2 + 1024 w zakresie [0, 63] liczb całkowitych.

Kodowanie problemu zmienna x [0, 1, 2,..., 63] (x-liczba całkowita) Kodowanie binarne: x (10) x (2), np. jeżeli x (10) = 20, to 20 (10) (010100) (2) Aby zakodować 64 wartości zmiennej x potrzebujemy łańcucha binarnego o długości l = 6 przestrzeń rozwiązań 0 000000 1 000001... 63 111111

Generowanie populacji początkowej Losowo generujemy populację składającą się z m osobników Jeżeli, np. m=6, P(0) może być następująca: 15, 35, 6, 20, 57, 0 W binarnej formie: 001111 100011 000110 010100 111001 000000

Realizacja operatora selekcji Musimy obliczyć prawdopodobieństwo selekcji i-go osobnika: W tym celu należy obliczyć wartość funkcji dopasowania (fitness function) każdego osobnika w populacji Tworzymy koło ruletki Operatory genetyczne (krzyżowanie i mutacja)

Symulacja komputerowa

Zastosowanie AG do rozmieszczenia stacji raportujących w sieciach mobilnych Schemat kodowania: Ilość genów w chromosomie L = N, liczbie komórek w sieci, gdzie N = n x n, n oznacza rozmiar sieci. komórka 1 komórka 2 komórka 3 komórka N Przestrzeń rozwiązań: S = 2 N, czyli w przypadku sieci 10 x 10 komórek, S = 2 100. Przykład: n = 4, N = 16 S = 2 16 = 65536 0 1 2 3 4 5 6 7 8 9 10 11 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 Chromosom algorytmu genetycznego 12 13 14 15 Rozkład stacji raportujących w sieci