Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Metody probabilistyczne

2,183 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Metody probabilistyczne

  1. 1. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Sztuczna Inteligencja i Systemy Ekspertowe Algorytmy probabilistyczne. Aleksander Pohl http://apohllo.pl/dydaktyka/ai Wy˙ sza Szkoła Zarzadzania i Bankowo´ ci z ˛ s 4 czerwca 2009 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  2. 2. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  3. 3. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  4. 4. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Problemy NP-zupełne ◮ Klasa problemów z teorii zło˙ ono´ ci obliczeniowej z s ◮ Problemy o czasie co najmniej wykładniczym ∃k : m(n) = O(k n ) ◮ Problem komiwoja˙ era z ◮ Problem rozkładu liczby zło˙ onej na składowe z Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  5. 5. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Metody rozwiazania ˛ ◮ Metody rozwiazywania: ˛ ◮ Aproksymacje ◮ Probabilistyczne ◮ Rozpatrywanie szczególnych przypadków ◮ Algorytmy z ustalonymi parametrami ◮ Heurystyki Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  6. 6. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Algorytmy probabilistyczne Klasyczny algorytmy probabilistyczne: ◮ Metoda Monte-Carlo ◮ Wy˙ arzanie z ◮ Algorytmy Genetyczne ◮ Algorytmy Mrówkowe Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  7. 7. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Algorytmy probabilistyczne ◮ Metody ograniczone ze wzgledu na czas, dopuszczajace ˛ ˛ bład ˛ ◮ Metody Monte-Carlo ◮ Metody nieograniczone ze wzgledu na czas, nie ˛ dopuszczajace błedu ˛ ˛ ◮ Metody Las-Vegas Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  8. 8. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Metody Monte-Carlo („hill-climbing”) ◮ 1930 – Fermi ; własno´ ci neutronu, projekt Manhattan s ◮ Całkowanie numeryczne ◮ Zagadnienia optymalizacyjne ◮ Losowanie markera w przestrzeni n-wymiarowej ◮ Marker w małym promieniu szuka kierunku spadku gradientu i przesuwany jest w takim kierunku ◮ Zagro˙ enie maksimami lokalnymi z Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  9. 9. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Metoda Monte-Carlo s´ Mała odporno´ c na lokalne maksima Rysunek: Wykres funkcji celu dla problemów o ró˙ nej z charakterystyce Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  10. 10. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  11. 11. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Wy˙ arzanie („simulated annealing”) z ◮ Heurystyczna metoda probabilistyczna poszukiwania globalnego maksimum ◮ Analogia do „wy˙ arzania” w metalurgii łaczacej ogrzewanie z ˛ ˛ i chłodzenie materiału w celu zwiekszenia rozmiaru ˛ kryształów oraz usuniecie defektów – poprzez ˛ umo˙ liwienie atomom osiagniecia stanu ni˙ szej energii z ˛ ˛ z Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  12. 12. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Zasada działania ◮ Okre´ lamy norme/metryk˛ w przestrzeni stanów – energie s ˛ e ˛ ◮ ´ Prawdopodobienstwo przej´ cia miedzy stanami jest s ˛ zale˙ ne od ró˙ nicy energii miedzy nimi oraz od z z ˛ temperatury ◮ δE < 0 : P(s) = 1 δE ◮ δE ≥ 0 : P(s) = e− T ◮ δE – ró˙ nica energii z ◮ T – temperatura ◮ ´ P(s) – prawdopodobienstwo przej´ cia z jednego stanu do s innego Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  13. 13. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Charakterystyka temperaturowa ◮ T = 0 – algorytm zachłanny ◮ T = ∞ – algorytm losowy ◮ Istotny element – „chłodzenie” ◮ Rapid quenching ◮ Szybka redukcja temperatury ◮ Ponowne ogrzewanie Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  14. 14. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Implementacja – pseudokod T := T0 S := S0 E := objective(S) k := 0 while terminal condition not true Snew := move(S, T) Enew := objective(Snew ) if Enew < E or random() < acceptor(Enew - E, T) S := Snew E := Enew T := schedule(T0, k) k := k + 1 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  15. 15. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Implementacja – metody pomocnicze ◮ Objective() - oblicza energie ˛ ◮ Funkcja celu ◮ Move() - proponuje nowy stan (niezale˙ ne od ˛ z temperatury) ◮ Losowy stan bliski dla stanu wyj´ ciowego s ◮ ´ Acceptor() podaje prawdopodobienstwo przej´ cia s ◮ 1 δE 1+e k ∗T ◮ Schedule() podaje temperature w kroku k ˛ ◮ T = T0 ∗ c k , 0 < c < 1 (Metropolis) Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  16. 16. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  17. 17. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Algorytmy genetyczne ◮ John Holland (1970) University of Michigan ◮ Dobrze sie nadaja do mieszanych dyskretno/ciagłych ˛ ˛ ˛ problemów optymalizacyjnych ◮ Bardziej odporne na lokalne minima ni˙ metody bazujace z ˛ na gradiencie Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  18. 18. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Algorytmy genetyczne ◮ Stochastyczna metoda przeszukiwania przestrzeni ˛ ´ rozwiazan ◮ Operujaca nie na pojedynczych elementach ale na ˛ populacji stanów ◮ Stan zakodowany jest w postaci „chromosomu” ◮ Algorytm jest niezale˙ ny od reprezentacji z Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  19. 19. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Terminologia ◮ Stan – chromosom, genotyp ◮ Pola stanu – allele ◮ ´ Przestrzen rozpatrywanych stanów - populacja ◮ Operacje: ◮ Selekcja ◮ Krzy˙ owanie z ◮ Mutacja Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  20. 20. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Algorytm ogólny ◮ Stwórz populacje poczatkowa ˛ ˛ ˛ ◮ Iteratywnie wykonuj nastepujaca operacje (nazywana ˛ ˛ ˛ ˛ ˛ pokoleniem) dopóki warunek stopu nie jest spełniony ◮ z ´ Sprawd´ stopien przystosowania ka˙ dego genotypu z ◮ Wybierz z populacji pare o okre´ lonym st. przystosowania ˛ s ◮ Zastosuj do niej jedna z nastepujacych operacji: ˛ ˛ ˛ ◮ Krzy˙ owanie (crossover) z ◮ Replikacje˛ ◮ Mutacje˛ ◮ Lokalna optymalizacje ˛ ˛ ◮ Dokonaj selekcji w ramach populacji Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  21. 21. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Kodowanie ◮ {0...7} ◮ binarnie {000, 001, 010, 011, 100, 101, 110, 111} ◮ kod Gray’a {000, 001, 011, 010, 110, 111, 101, 100} Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  22. 22. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Krzy˙ owanie (liniowy genotyp) z ◮ Single-point ◮ Parent 1: 11001|010 ◮ Parent 2: 00100|111 ◮ Offspring1: 11001|111 ◮ Offspring2: 00100|010 ◮ Two-point ◮ Parent 1: 110|010|10 ◮ Parent 2: 001|001|11 ◮ Offspring1: 110|001|10 ◮ Offspring2: 001|010|11 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  23. 23. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Krzy˙ owanie (cd.) z ◮ Arithmetic ◮ Offspring1 = a * Parent1 + (1 - a) * Parent2 ◮ Offspring2 = (1 - a) * Parent1 + a * Parent2 ◮ Uniform Crossover (UX) – mymieniamy z ´ prawdopodobienstwem 50% ◮ Parent 1: 11001010 ◮ Parent 2: 00100111 ◮ Offspring1: 10100011 ◮ Offspring2: 01001110 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  24. 24. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Krzy˙ owanie (cd.) z ◮ Half Uniform Crossover (HUX) – wymieniamy dokładnie połowe (losowo) ró˙ niacych sie bitów ˛ z ˛ ˛ ◮ Parent 1: 10111011 ◮ Parent 2: 10010011 ◮ Offspring 1: 10011011 ◮ Offspring 2: 10110011 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  25. 25. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Krzy˙ owanie – permutacyjne genotypy z ◮ Order Crossover (OX) kopiujemy losowy odcinek z jednego rodzica, kopiujemy reszte zachowujac porzadek z drugiego ˛ ˛ ˛ rodzica ◮ Parent 1: 12|345|678 ◮ Parent 2: 87654321 ◮ Offspring: 34587621 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  26. 26. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Krzy˙ owanie (cd.) z ◮ Partially mapped crossover (PMX) kopiujemy losowy odcinek z jednego rodzica, kopiujemy reszte z drugiego ˛ rodzica zachowujac pozycje, je´ li jest konflikt, bierzemy ˛ ˛ s mapowanie z wycinka pierwszego rodzica ◮ Parent 1: 12|345|678 ◮ Parent 2: 87|654|321 ◮ Offspring: 87|345|621 Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  27. 27. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Selekcja ◮ Prosta ◮ Populacja wymieniana co pokolenie ◮ Stała populacja ◮ Tylko niektóre osobniki sa wymieniane ˛ Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  28. 28. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Skalowanie stopnia przystosowania ◮ Pozycja („rank”) ◮ Brak skalowania ◮ Liniowa ◮ s´ Warto´ c przeskalowana przez max/min w populacji ◮ Sigma – odciecie ˛ ◮ Odciecie poni˙ ej pewnego poziomu ˛ z ◮ ´ Skalowanie podobienstwa („sharing”) ◮ ´ Premiowanie „odmienców” Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  29. 29. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Mechanizm zastepowania ˛ ◮ Najlepszy ◮ Najgorszy ◮ Rodzic ◮ Losowo ◮ Podobne („crowding”) Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  30. 30. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Kandydaci do selekcji ◮ Najlepszy ◮ Zasada ruletki ◮ Turniejowa ◮ itd. Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  31. 31. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Implementacja ◮ execute_generations(Generation) :- maximum_generations(MaxGens), MaxGens =:= Generation. ◮ execute_generations(Generation) :- recombine(Generation), fitness_test(0), Next is Generation + 1, execute_generations(Next). Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  32. 32. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne
  33. 33. Wprowadzenie Wy˙ arzanie z Algorytmy genetyczne Postscriptum Materiały zródłowe ´ ◮ L.Sterling, E.Shapiro - „The Art Of Prolog” ◮ Ivan Bratko - „Prolog – Programming For Artificial Intelligence” ◮ Slajdy zostały przygotowane za zgoda˛ dr. Michała Korzyckiego na podstawie jego wykładu. Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne

×