Metody probabilistyczne

Embed Size (px)

Text of Metody probabilistyczne

  • 1. Wprowadzenie Wy arzaniezAlgorytmy genetyczne PostscriptumSztuczna Inteligencja i Systemy Ekspertowe Algorytmy probabilistyczne. Aleksander Pohl http://apohllo.pl/dydaktyka/ai Wy sza Szkoa Zarzadzania i Bankowo ciz s4 czerwca 2009Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne

2. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy arzanie z Algorytmy genetyczne Postscriptum Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 3. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy arzanie z Algorytmy genetyczne Postscriptum Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 4. Wprowadzenie Wy arzaniezAlgorytmy genetyczne Postscriptum Problemy NP-zupeneKlasa problemw z teorii zo ono ci obliczeniowejzs Problemy o czasie co najmniej wykadniczymk : m(n) = O(k n ) Problem komiwoja eraz Problem rozkadu liczby zo onej na skadowez Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne 5. Wprowadzenie Wy arzaniezAlgorytmy genetyczne Postscriptum Metody rozwiazaniaMetody rozwiazywania: Aproksymacje Probabilistyczne Rozpatrywanie szczeglnych przypadkw Algorytmy z ustalonymi parametrami Heurystyki Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne 6. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Algorytmy probabilistyczneKlasyczny algorytmy probabilistyczne: Metoda Monte-Carlo Wy arzaniez Algorytmy Genetyczne Algorytmy Mrwkowe Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 7. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Algorytmy probabilistyczneMetody ograniczone ze wzgledu na czas, dopuszczajace bad Metody Monte-Carlo Metody nieograniczone ze wzgledu na czas, nie dopuszczajace bedu Metody Las-Vegas Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 8. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Metody Monte-Carlo (hill-climbing) 1930 Fermi ; wasno ci neutronu, projekt Manhattan s Cakowanie numeryczne Zagadnienia optymalizacyjne Losowanie markera w przestrzeni n-wymiarowej Marker w maym promieniu szuka kierunku spadkugradientu i przesuwany jest w takim kierunku Zagro enie maksimami lokalnymi z Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 9. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Metoda Monte-Carlo s Maa odporno c na lokalne maksima Rysunek: Wykres funkcji celu dla problemw o r nejz charakterystyceAleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 10. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy arzanie z Algorytmy genetyczne Postscriptum Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 11. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Wy arzanie (simulated annealing) zHeurystyczna metoda probabilistyczna poszukiwaniaglobalnego maksimum Analogia do wy arzania w metalurgii aczacej ogrzewaniez i chodzenie materiau w celu zwiekszenia rozmiaru krysztaw oraz usuniecie defektw poprzezumo liwienie atomom osiagniecia stanu ni szej energii z z Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 12. Wprowadzenie Wy arzaniezAlgorytmy genetyczne Postscriptum Zasada dziaaniaOkre lamy norme/metryk w przestrzeni stanw energies e Prawdopodobienstwo przej cia miedzy stanami jest szale ne od r nicy energii miedzy nimi oraz odz ztemperatury E < 0 : P(s) = 1E E 0 : P(s) = e T E r nica energii z T temperatura P(s) prawdopodobienstwo przej cia z jednego stanu do sinnego Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne 13. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Charakterystyka temperaturowa T = 0 algorytm zachanny T = algorytm losowy Istotny element chodzenie Rapid quenching Szybka redukcja temperatury Ponowne ogrzewanie Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 14. Wprowadzenie Wy arzaniez 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 + 1Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 15. Wprowadzenie Wy arzaniezAlgorytmy genetyczne Postscriptum Implementacja metody pomocniczeObjective() - oblicza energie Funkcja celu Move() - proponuje nowy stan (niezale ne od ztemperatury) Losowy stan bliski dla stanu wyj ciowego s Acceptor() podaje prawdopodobienstwo przej cias 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. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy arzanie z Algorytmy genetyczne Postscriptum Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 17. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Algorytmy genetyczneJohn Holland (1970) University of Michigan Dobrze sie nadaja do mieszanych dyskretno/ciagych problemw optymalizacyjnych Bardziej odporne na lokalne minima ni metody bazujace zna gradiencie Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 18. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Algorytmy genetyczne Stochastyczna metoda przeszukiwania przestrzeni rozwiazan Operujaca nie na pojedynczych elementach ale na populacji stanw Stan zakodowany jest w postaci chromosomu Algorytm jest niezale ny od reprezentacji z Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 19. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Terminologia Stan chromosom, genotyp Pola stanu allele Przestrzen rozpatrywanych stanw - populacja Operacje: Selekcja Krzy owanie z Mutacja Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 20. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Algorytm oglnyStwrz populacje poczatkowa Iteratywnie wykonuj nastepujaca operacje (nazywana pokoleniem) dopki warunek stopu nie jest speniony 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 populacjiAleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 21. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Kodowanie{0...7} binarnie{000, 001, 010, 011, 100, 101, 110, 111} kod Graya{000, 001, 011, 010, 110, 111, 101, 100} Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 22. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Krzy owanie (liniowy genotyp) zSingle-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 PohlWSZiB Heurystyki. Algorytmy genetyczne 23. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Krzy owanie (cd.) z Arithmetic Offspring1 = a * Parent1 + (1 - a) * Parent2 Offspring2 = (1 - a) * Parent1 + a * Parent2 Uniform Crossover (UX) mymieniamy zprawdopodobienstwem 50% Parent 1: 11001010 Parent 2: 00100111 Offspring1: 10100011 Offspring2: 01001110 Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 24. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Krzy owanie (cd.) zHalf Uniform Crossover (HUX) wymieniamy dokadniepoowe (losowo) r niacych sie bitw z Parent 1: 10111011 Parent 2: 10010011 Offspring 1: 10011011 Offspring 2: 10110011 Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 25. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Krzy owanie permutacyjne genotypy zOrder Crossover (OX) kopiujemy losowy odcinek z jednegorodzica, kopiujemy reszte zachowujac porzadek z drugiegorodzica Parent 1: 12|345|678 Parent 2: 87654321 Offspring: 34587621 Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 26. Wprowadzenie Wy arzaniez Algorytmy genetycznePostscriptum Krzy owanie (cd.) z Partially mapped crossover (PMX) kopiujemy losowyodcinek z jednego rodzica, kopiujemy reszte z drugiego rodzica zachowujac pozycje, je li jest konikt, bierzemy smapowanie 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. Wprowadzenie Wy arzaniezAlgorytmy genetyczne Postscriptum SelekcjaProsta Populacja wymieniana co pokolenie Staa populacja Tylko niektre osobniki sa wymieniane Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne 28. Wprowadzenie Wy arzaniez Algorytmy genetycznePostscriptum 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 odmiencw Aleksander Pohl WSZiB Heurystyki. Algorytmy genetyczne 29. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Mechanizm zastepowania Najlepszy Najgorszy Rodzic Losowo Podobne (crowding) Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 30. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Kandydaci do selekcjiNajlepszy Zasada ruletki Turniejowa itd. Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 31. Wprowadzenie Wy arzaniez 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 PohlWSZiB Heurystyki. Algorytmy genetyczne 32. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Plan prezentacji Wprowadzenie Wy arzanie z Algorytmy genetyczne Postscriptum Aleksander PohlWSZiB Heurystyki. Algorytmy genetyczne 33. Wprowadzenie Wy arzaniez Algorytmy genetyczne Postscriptum Materiay zrd