Algorytmy i struktury danych Symulowane wyżarzanie Poszukiwanie z listą tabu Algorytmy genetyczne Algorytmy mrówkowe Sieci neuronowe.

Download Report

Transcript Algorytmy i struktury danych Symulowane wyżarzanie Poszukiwanie z listą tabu Algorytmy genetyczne Algorytmy mrówkowe Sieci neuronowe.

Algorytmy i struktury danych

Symulowane wyżarzanie Poszukiwanie z listą tabu Algorytmy genetyczne Algorytmy mrówkowe Sieci neuronowe

Symulowane wyżarzanie

 Przy wysokiej temperaturze (energii) czasteczka może przeskakiwać pomiędzy dowolnymi stanami  Po zamrożeniu cząsteczka pozostaną w minimum  lokalnym Przy powolnym obniżaniu temperatury czasteczka będzie z większym prawdopodobieństwem wybierać minimum globalne A B

Symulowane wyżarzanie

Implementacja:  Ciąg rozwiazań R 1 ,R 2 ,R 3 .  R R n n = SA(R n-1 ), powstaje z R n-1 przez drobną zmianę E(R n ) jest minimalna dla całego sasiedztwa R n-1    E zawiera czynnik losowy zależny od temperatury Powolne obniżanie temperatury – kompromis: szybkość vs. prawdopodobieństwo uzyskania optymalnego rozwiązania T(t) = t 0 e -at  t 0 oraz a dobiera sie eksperymentalnie i powtarza dla różnych R 0

Przykład zastosowania

Kolorowanie grafów: SA – wybieramy jedno z pokolorowań powstałych z R n-1 przez zmianę koloru jednego (lub liczby zależnyej od temperatury) wierzchołków. Spośrod wszystkich pokolorować wybieramy takie dla których E(R) jest najmniejsze E(R) – energia odpowiada liczbie użytych kolorów + czynnik losowy e(t) zależny od temperatury

Poszukowanie z listą tabu

 Wybieramy zawsze stan o niższej energii (koszcie)  Staramy się unikać stanów wybieranych ostatnio co może ew. Prowadzić do tymczasowego wyboru gorszego rozwiązania

Poszukowanie z listą tabu

Implementacja:  Ciąg rozwiazań R 1 ,R 2 ,R 3 .  Na poczatku TL = Ø   R n R n = TAB(R n-1 ), powstaje z R n-1 przez drobną zmianę E(R n ) jest minimalna dla całego sasiedztwa R n-1 z wyłączeniem stanów znajdujacych się na liście Tabu – TL Długość TL jest ograniczona do MAXLEN Po wygenerowaniu kolejnego R n • R n jest dodawane na początek listy tabu (TL) • ostatnie rozwiazanie (o ile lista jest już dłuższa niż MAXLEN) jest usuwane  Długość listy tabu jest dobierana eksperymentalnie w zależności od problemu

Przykład zastosowania

Kolorowanie grafów:  TAB – wybieramy jedno z pokolorowań powstałych z R n-1 przez zmianę koloru jednego wierzchołka (lub jeśli długość listy tabu tego wymaga - większej ich liczby).  Spośrod wszystkich analizowanych pokolorowań wybieramy takie dla których liczba użytych kolorów najmniejsza, ale nie znajdujące się na liście tabu.

 Aktualizujemy listę tabu tj. dodajemy nowe rozwiązanie i usuwamy ostatnie o ile lista osiagnęła maksymalną długość

Algorytmy genetyczne

 Konkretny osobnik w naturze opisywany jest przez układ genów  Nowe osobniki moga powstawać przez: • • krzyżowanie mutację  Rozpatrujemy pewną populację osobników – w każdym pokoleniu z prawdopodobieństwem zależym od przystosowania eliminowane jest pewna liczba osobników i zastępowana nowymi osobnikami

Algorytmy genetyczne

  Dla wygenerowania kolejnego pokolenia: • • • Powiela sie pewną ilość osobników(rozwiązań) o najlepszym przystosowaniu (najniższym koszcie) Resztę populacji uzyskuje się drogą krzyzownaia (wymiany cech) pomiędzy istniejącymi osobnikami (rozwiązaniami). Osobniki do krzyżownia są wybierane losowo z prawdopodobieńswem zależnym od stopnia przystosowania (jakości rozwiązania) Z pewnym (zwykle b. niewielkim) prawdopodobieństwem dokonuje się losowych zmian w powstających osobnikach(rozwiązaniach).

Po wygenerowaniu określonej (zwykle b. duzej) liczby pokoleń wybiera się osobnika o najlepszym przystosowaniu

Przykład zastosowania

Droga komiwojażera:  Krzyżowanie osobników: dla wybranych rozwiązań-rodziców generuje się pewną liczbę rozwiązań powstałych z zamiany losowego fragmentu (lub fragmentów) drogi z jednego rozwiązania i przez ich odpowiedniki z drugiego  Mutacja: jeżeli osobnik ma podlegać mutacji wybieramy jedną z użytych krawędzi i zastępujemy inną drogą łączącą oba wierzchołki

Algorytmy mrówkowe

 Każda mrówka ma swobodę wyboru drogi do pożywienia ale chętniej wybiera taką droge po której chodziły inne mrówki  Krótsze drogi pozwalają mrówkom pozostawić większą ilość ferromonów  Fragmenty drogi odwiedzane przez większą liczbę mrówek są silniej oznaczone niż fragmenty nieuczęszczane

Przykład zastosowania

Droga komiwojażera:  Każda krawędź grafu jest traktowana jako fragment drogi.  Po znalezieniu odpowiedniej drogi komiwojażera w grafie wszystkie odwiedzone krawędzie są oznaczane w stosunku 1/L gdzie L jest łączną długością znalezionej drogi.

 Krawędzie w grafie są wybierane z prawdopodobieństwem zależnym od wag i siły oznaczenia

Model neuronu

  Dyskretny y = 1 Jeżeli  x i w i >= P lub 0 w przeciwnym razie Ciągły y = 2/(1-e  net ), gdzie net =  x i w i y x 1 w 1 .....

w k x k

Sieć neuronowa

O 1 O 2 I 1 I 2 I 3 Warstwa wyjściowa Warstwa(y) ukryta Warstwa wejściowa

Topologia sieci

 Warstwa wejściowa/wysciowa zależą od liczby pobudzeń i oliczby oczekiwanych kategorii  Rozmiar i liczba warstw ukrytych  Możliwe są niejednorodne połączenia między warstwami oraz połaczenia w neuronami z warstw innych niż poprzednia, połączenia hamujące między wybranymi neuronami  Możliwe są sprzężenia zwrotne (z póżniejszych warst do wcześniejszych) – taka sieć może zmieniacsięw czasie - zwykle wiąże sie to z dyskretyzacją działania sieci na kolejne momenty czasowe t 1 , t 2 , t 3 ... w których określa się stan poszczególnych neuronów

Nauka

 Algorytm modyfikacji wag:  • BackPropagation Opracowanie wzorców  Nauka z nauczycielem lub bez  Modyfikacje: • • Logika rozmyta Symulowane żarzenie

Klasyfikator

O 1 O 2 A I 1 .....

I n Warstwa wyjściowa Warstwa(y) ukryta Warstwa wejściowa

Asocjator

Jedno lub dwukierunkowy KOŃ

Autoasocjator

A A

Nietypowe własności

 Odporność na błedy  Samoistne przypominanie

Przykłady zastosowań

 Rozpoznawanie pisma i klasyfikacja obrazów  Diagnostyka chorób skóry, ocena EKG  Ocena ryzyka pożyczek bankowych  Prognozowanie wyników giełdowych  Poszukiwanie złóż surowców naturalnych  Szacowanie wartości nieruchomości  Kolorowanie grafów  Sterowanie automatami  Wykrywanie fałszerstw kart kredytowych