ALGORYTMY GENETYCZNE ćwiczenia

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

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

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

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

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

6. Klasyczny algorytm genetyczny. 1

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

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

Algorytm genetyczny (genetic algorithm)-

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy genetyczne

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy genetyczne w optymalizacji

Program "FLiNN-GA" wersja 2.10.β

Metody Rozmyte i Algorytmy Ewolucyjne

Strategie ewolucyjne (ang. evolu4on strategies)

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

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

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

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

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

Algorytmy genetyczne

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

Obliczenia ewolucyjne - plan wykładu

Algorytmy genetyczne

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne (AG)

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Standardowy algorytm genetyczny

SZTUCZNA INTELIGENCJA

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

Dobór parametrów algorytmu ewolucyjnego

ALGORYTMY GENETYCZNE

Techniki optymalizacji

Algorytmy genetyczne

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

Algorytmy ewolucyjne (3)

6. Algorytm genetyczny przykłady zastosowań.

METODY HEURYSTYCZNE wykład 3

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy ewolucyjne. wprowadzenie

Generowanie i optymalizacja harmonogramu za pomoca

Zadania laboratoryjne i projektowe - wersja β

Algorytmy ewolucyjne Część II

METODY HEURYSTYCZNE wykład 3

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

5. Algorytm genetyczny przykład zastosowania

Algorytmy genetyczne w interpolacji wielomianowej

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

Programowanie genetyczne, gra SNAKE

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

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Strategie ewolucyjne (ang. evolution strategies)

Algorytmy ewolucyjne `

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin., Oeconomica 2017, 337(88)3, 5 12

Równoważność algorytmów optymalizacji

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

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

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

ALGORYTMY EWOLUCYJNE W ZASTOSOWANIU DO ROZWIĄZYWANIA WYBRANYCH ZADAŃ OPTYMALIZACJI1

Algorytmy ewolucyjne 1

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

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Programowanie genetyczne

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Genetyka populacji. Ćwiczenia 7

Problemy optymalizacyjne Dana jest przestrzeń X. Znaleźć x X taki, że x spełnia określone warunki. Dana jest przestrzeń X i funkcja celu f: X R.

Metody przeszukiwania

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

Wielokryterialne harmonogramowanie portfela projektów. Bogumiła Krzeszowska Katedra Badań Operacyjnych

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

Obliczenia Naturalne - Algorytmy genetyczne

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

Wstęp do programowania

Algorytmy ewolucyjne (2)

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

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Wstęp do Sztucznej Inteligencji

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

MIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data / EC3 VIII LAB...

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Techniki ewolucyjne - algorytm genetyczny i nie tylko

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

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

Programowanie genetyczne (ang. genetic programming)

Aproksymacja funkcji a regresja symboliczna

SZTUCZNA INTELIGENCJA

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

przetworzonego sygnału

Teoria algorytmów ewolucyjnych

METODY HEURYSTYCZNE 3

Selekcja cech. Wprowadzenie Metody selekcji cech. Przykład zastosowania. Miary niepodobieństwa. Algorytmy przeszukiwania

Problem Komiwojażera - algorytmy metaheurystyczne

Biologicznie motywowane metody sztucznej inteligencji

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

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

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 8

Transkrypt:

ćwiczenia Wykorzystaj algorytmy genetyczne do wyznaczenia minimum globalnego funkcji testowej: 1. Wylosuj dwuwymiarową tablicę 100x2 liczb 8-bitowych z zakresu [-100; +100] reprezentujących inicjalną populację osobników (x 1 ; x 2 ) 2. Jako funkcję przystosowania wykorzystaj jedną z funkcji testowych podanych na stronie: http://155.158.112.34/~algorytmyewolucyjne/materialy/funkcje_testowe_2.pdf 3. Z pośród wartości funkcji wyznacz minimum dla wszystkich osobników. Jeśli wartość ta spełnia warunek stopu (< od pewnej wartości, np. 0,1) lub w ostatnich kilku krokach wynik nie uległ znaczącej poprawie, tj. minimum się nie zmniejszyło, wtedy przerwij algorytm. 4. Przejść do selekcji osobników metodą koła ruletki i wyznacz osobniki, które będą brały udział w tworzeniu populacji potomnej. Określ szanse wylosowania na podstawie największej i najmniejszej wartości funkcji przystosowania. Prawdopodobieństwo wyboru osobników można określić jako p({x 1 ; x 2 }) = (f max - f(x 1, x 2 )) / Σ f(x 1, x 2 ) 5. Zakoduj osobniki w postaci ciągu zer i jedynek, korzystając z algorytmu podanego na stronie: http://home.agh.edu.pl/~horzyk/lectures/pi/ahdydwdibledynum.php 6. Wylosuj punkt krzyżowania i dokonaj operacji krzyżowania i mutacji (z pewnym określonym prawdopodobieństwem) na łańcuchach zer i jedynek (biorąc z wylosowanych osobników kolejne pary rodziców 1+2, 3+4, 5+6,, 99+100) określając populację potomną, która w tablicy zastępuje populację rodziców po wykonaniu operacji krzyżowania i mutacji. 7. Dokonaj wstecznej konwersji łańcuchów zer i jedynek na wartości liczbowe korzystając z algorytmu na stronie: http://home.agh.edu.pl/~horzyk/lectures/pi/ahdydwdibledynum.php 8. Przejdź do punktu 2.

ćwiczenia Implementacja koła ruletki: 1. Dla każdego osobnika i określamy przy pomocy funkcji dopasowania, jego oddalenie od najgorszej wartości MAX w celu określenia jakości dopasowania p i. 2. Koło ruletki rozcinamy na pasek reprezentujący szersze i węższe przedziały dla poszczególnych osobników: 3. Tworzymy tablicę lub listę wartości p i dla poszczególnych osobników. 4. Następnie przechodzimy pętlą od początku do końca tej tablicy/listy i dodajemy do każdej komórki wartość poprzedniej: P[j] += P[j-1]. Te wartości będą określać koniec przedziałów paska. 5. Teraz możemy uruchomić generator liczb losowych i wylosować liczbę z zakresu 0 do p i. Algorytmem wyszukiwania połówkowego lub interpolowanego szybko wyznaczamy w którą część paska trafiliśmy i z którym osobnikiem ta część paska jest związana. Ten osobni zostaje wybrany. 6. Losowanie powtarzamy tyle razy, ile chcemy wylosować osobników do krzyżowania i mutacji.

genetic algorithms (GA) Klasyczny algorytm genetyczny składa się z następujących kroków: 1. Inicjacja wybór lub wylosowanie początkowej populacji chromosomów (osobników) reprezentowanych przez ciągi binarne o określonej długości. 2. Ocena przystosowania chromosomów w populacji obliczonego na podstawie funkcji przystosowania (fitness function). 3. Sprawdzenie warunku zatrzymania na podstawie jakości przystosowania najlepszego chromosomu (osobnika) w populacji lub w przypadku braku generowania lepiej przystosowanych chromosomów w kolejnych generacjach. 4. Selekcja chromosomów w zależności od ich przystosowania się, dając największe szanse na wylosowanie tym osobnikom, które są najlepiej przystosowane (np. metoda koła ruletki roulette-wheel selection przydziela osobnikom taką część koła, jaka wynika z ich jakości przystosowania się, tzn. ich prawdopodobieństwo LaPlace a wyboru określone jest jako stosunek jakości przystosowania daneo osobnika do sumy jakości przystosowań wszystkich osobników). 5. Zastosowanie operatorów genetycznych (krzyżowania i mutacji). 6. Utworzenie nowej populacji chromosomów (potomnej) 7. Przejście do punktu 2.

Operatory genetyczne Operatory genetyczne mają za zadanie wygenerować nową populację chromosomów (osobniki potomne) na podstawie istniejącej populacji chromosomów w celu poprawy ich jakości przystosowania. W algorytmach genetycznych stosujemy dwa rodzaje operatorów: Operator kryżowania (crossover) to podstawowy operator stosowany z prawdopodobieństwem 0,5 p k 1, a jego działanie polega na rozcięciu łańcuchów chromosomów w wylosowanym miejscu krzyżowania (locus), a następnie zamianę tych łańcuchów pomiędzy tymi łańcuchami. Operator mutacji (mutation) stosowany jest zwykle z niewielkim prawdopodobieństwem 0 p m 0,1, a jego działanie sprowadza się do losowej zamiany wartości genu na przeciwny w łańcuchu.

krzyżowanie i mutacja PRZYKŁAD: W chromosomach przodków (rodziców) losowany jest punkt krzyżowania (locus), następnie operacja genetycznego krzyżowania, a na końcu mutacja w genach potomków (dzieci).