Inteligencja stadna: od mrówek do cząsteczek

Transkrypt

Inteligencja stadna: od mrówek do cząsteczek
Inteligencja stadna
Inteligencja stadna:
od mrówek do cząsteczek
„Proste elementy, właściwie powiązane w stadzie, tworzą sprytne
rozwiązania”
Urszula Boryczka 2008
Inteligencja stadna
O co właściwie chodzi ?
„Pojedyncza mrówka nie jest bardzo mądra, ale mrówki w kolonii,
działające w kolektywie, wykonują bardzo ważne zadania.
Pojedynczy neuron w ludzkim mózgu może reagować na to, jakie
uaktywniono połączenia, ale wszystkie one razem mogą być
Albertem Einsteinem.”
Deborah M. Gordon (Stanford University)
Inteligencja stadna
O co właściwie chodzi ?
„Pojedyncza mrówka nie jest bardzo mądra, ale mrówki w kolonii,
działające w kolektywie, wykonują bardzo ważne zadania.
Pojedynczy neuron w ludzkim mózgu może reagować na to, jakie
uaktywniono połączenia, ale wszystkie one razem mogą być
Albertem Einsteinem.”
Deborah M. Gordon (Stanford University)
Jesteśmy zainteresowani systemami, gdzie pojedyncze jednostki
łącznie zachowują się w bardzo skomplikowany sposób.
Problemy
Wprowadzenie
Żłożoność
Wytwórczość
Przykłady
Iteligencja stadna: uczenie się z natury
Mrówki
Naturalne mrówki: jak one to robią?
Systemy Mrowiskowe (Ant Colony Optimization)
Zastosowania: TSP
Ryby i ptaki
Modelowanie stada ptaków
Optymalizacja Stadna Cząsteczek (Particle Swarm Optimization)
Systemy rojowe
Taniec wywijany
ABC algorytm
Zastosowania
Wnioski
Złożoność
Sztuczna Inteligencja
Sieci neuronowe
Chaos
Efekt motyla
Atraktory
Fraktale
Samoorganizacja
Systemy nieliniowe
Wytwórczość
Inteligencja stadna
Złożoność
Studiowanie systemów na wielu poziomach wolności.
Wiele naturalnych, sztucznych lub abstrakcyjnych obiektów lub sieci
tychże może być rozpatrywane jako systemy złożone.
Studia nad złożonością są wysoce interdyscyplinarne.
Przykłady systemów złożonych zawierają w sobie mrówcze kopce,
ludzką ekonomię, klimat, systemy nerwowe, komórki i istoty
żywe, włączając ludzi, jaki i nowoczesne infrastruktury
telekomunikacyjne.
Złożoność
Wszystkie systemy złożone mają wspólne cechy behawioralne i
strukturalne:
Relacje nie są liniowe
Relacje zawierają sprzężenia zwrotne
Systemy złożone cechuje zachowanie histeryczne: zmieniają się w
czasie i stany bieżące mogą mieć wpływ na następne stany.
Systemy złożone mogą być zagnieżdżone : Składniki takiego
systemu mogą same stanowić system złożony.
(komórka-organizm-kolonia-ekosystem-Gaia)
Mogą się charakteryzować zachowaniami wytwórczymi.
Wytwórczość
„Całość iest czymś więcej niż suma ich części“
(Arystoteles)
Definicja: „pojawienie się nowych i spójnych
struktur, wzorów i właściwości w czasie
procesu samoorganizacji w systemach
złożonych.”
Goldstein
“Nadzwyczajna złożoność, która powstaje z
głębokiej prostoty” Murray Gell-Mann
(Nagroda Nobla za model kwarków)
Zachowanie od dołu do góry: prości agenci
na podstawie prostych reguł budują złożone
systemy/zachowania.
Agenci nie zawsze podążają za liderem.
Termitiera
„katedra”–kopiec ten
zbudowany przez kolonię
termitów: klasyczny
przykład wytwórczości w
naturze.
Przykłady
Biologia: śluzowiec (jądrowce) jest jednokomórkowym
organizmem, który przyjmuje formę pojedynczego
pełzakowca, ale pod wpływem stresu gromadzą się one
w postaci wielokomórkowego zespołu.
Model:
Śluzowce wydzielają substancję zmienną w
czasie i zwaną feromonem.
Reguły lokalne:
Przemieść się w kierunku koncentracji
największego feromonu.
Jeśli feromonu nie ma, wówczas
przemieszczaj się losowo.
W chwili, gdy inne organizmy śluzowców
wydzielają feromon, w innych miejscach
podlega on procesowi wyparowywania w
każdej jednostce czasu.
Parametry: liczba komórek, współczynnik
wyparowywania
Przykłady
Ekonomia: Giełda dokładnie reguluje ceny na
rynku światowym, bez wyznaczania lidera.
Sieć World Wide Web jest
zdecentralizowanym systemem
wykorzystującym właściwości wytwórcze.
Liczba linków wskazujących na odpowiednią
stronę powoduje zmianę prawa siły (reguła).
Matematyka: wstęga Möbiusa ma
własności wytwórcze: może być skonstruowana
ze zbioru dwustronnego, czterech krawędzi,
powierzchni kwadratowej. I tylko zbiór
kompletny tworzy to niesamowite zjawisko
jednostronne i jednokrawędziowe!
Czy umysł ludzki i jego świadomość może
być wyjaśniona jako zachowania emergentne
osiągane poprzez interakcje między
poszczególnymi neuronami ?
Inteligencja stadna
Bazuje na przykładach kolektywnych, wytwórczych zachowań grupy
pojedynczych agentów
Kolonia mrówek
Stado ptaków - rój
Stado zwierząt
Ławica ryb
Uczenie się z natury - bionika
Natura inspiruje badaczy na wiele różnych sposobów.
Samoloty są konstruowane na podstawie budowy skrzydeł ptaków.
Roboty są konstruowane, budowane po to, aby naśladować
zachowania, ruchy owadów.
Odporne na szereg czynników materiały syntetyzuje się na
podstawie pajęczych sieci.
Miliony lat ewolucji wszystkie organizmy rozwinęły lub
stworzyły rozwiązania dla szerokiego zakresu problemów.
Pewne pomysły powinny być rozwijane poprzez
zastosowania wynikające z zalet, jakie oferuje nam
Natura we wszystkich tych przykładach.
Uczenie z natury
Pewne systemy socjalne w Naturze mogą
przedstawiać, reprezentować przykłady
zachowań inteligencji stadnej mimo, że
skonstruowane są z bardzo prostych
indywiduów.
Inteligentne rozwiązania to naturalnie
problemy powstałe z samoorganizacji i
komunikacji poszczególnych indywiduów.
Te systemy dostarczają ważnych argumentów
(technik), które mogą być wykorzystane w
rozwoju rozproszonych, sztucznych
systemów inteligentnych.
Inteligencja Stadna
Inteligencja stadna jest techniką sztucznej inteligencji
bazująca na studiach nad kolektywnym wzorcem zachowań
indywiduów w samoorganizujących się systemach.
Systemy inteligencji stadnej są zwykle tworzone z populacji prostych
agentów lokalnie oddziałujących ze sobą i ze swym otoczeniem.
Owa interakcja często prowadzi do emergentnych globalnych
zachowań.
Najważniejsze bio-inspirowane algorytmy, które rozwinęły
sie ostatnio to:
Ant Colony Optimisation (ACO)
Particle Swarm Optimisation (PSO)
Naturalne Mrówki
Pojedyncze mrówki są prymitywnymi owadami
z ograniczoną pamięcią i możliwościami
ułatwiającymi wykonanie prostych
czynności/akcji.
Jednakże kolonia mrówek stanowi przykład
kompleksowego, kolektywnego zachowania
dostarczającego lub generującego inteligentne
rozwiązania problemów, takich jak:
dźwiganie wielkich przedmiotów
tworzenie pomostów
znajdowanie najkrótszych tras ze źródła
pożywienia do mrowiska, szeregując je ze
względu na odległości i dostępność tego
źródła.
Naturalne Mrówki
W kolonii mrówek każda mrówka na swoje z góry przewidziane zadania,
lecz każda z nich może zmienić swoje role, jeśli kolektyw tego będzie
wymagał.
Na zewnątrz mrowiska, mrówki mają 4 różne zadania:
Furażowanie:poszukiwanie i dostarczanie pożywienia
Patrolowanie: szukanie i zabezpieczanie pożywienia
Praca porządkowa: Sortowanie i budowa kopców z odpadów
Budowa mrowiska: konstrukcja i czyszczenie kanałów
Decyzja mrówki o tym , czy wykonać dane zadanie zależy od:
Stanu fizycznego otoczenia agenta:
Jeśli część mrowiska jest uszkodzona, więcej mrówek zajmuje się
reperowaniem tegoż mrowiska
Socialnych interakcji z pozostałymi mrówkami
W jaki sposób owady społeczne osiągają samoorganizację?
Konieczność komunikacji
Dwa typy komunikacji:
Bezpośrednia: antenacja, trophallaxis (wymiana płynów i
pożywienia), kontakt ustny, kontakt wizualny, chemiczny kontakt,
etc.
Pośrednia: dwa indywidua oddziaływują na siebie pośrednio gdy
jeden z nich modyfikuje otoczenie i inny odpowiada w nowym
otoczeniu, w późniejszym czasie. Ta forma nazywana jest
stygmergią.
Mrówki: Jak one to robią?
Skąd one wiedzą, jakie mają wykonać zadanie?
Gdy mrówki się spotykają, dotykają się czółkami, które są organami
wyczuwającymi zapachy chemiczne.
Każda mrówka potrafi wyczuć specyficzny zapach całego mrowiska,
którym obdzielają się współmieszkańcy.
Oprócz tego zapachu, mrówki wydzielają zapach specyficzny dla ich
zadań, co jest spowodowane temperaturą i wilgotnością powietrza
w otoczeniu, w którym pracują.
W ten sposób mrówka może oceniać wielkość tego licznika z innymi
wielkościami dla mrówek wykonujących to samo zadanie.
Wzorzec interakcji każdej z mrówek (ślad feromonowy) i jej
doświadczenie wpływa na prawdopodobieństwo, z jakim wykonują
one swoje zadania.
Mrówki: Jak one to robią?
Jak one zdołają znaleźć najkrótszą ścieżkę?
„Najlepszą metodą dla mrówek, które chcą
znaleźć rozwiązanie jest umieszczenie mrówki
równomiernie i ciągle, ponieważ jeśli sytuacja
taka nie zdarzy się obok danej mrówki, to one
nie potrafiłyby odnotować jej i nauczyć się.
Oczywiście mrówek jest ograniczona ilość w
mrowisku, stąd mrówki poruszają się w
przestrzeni zgodnie z jakimś wzorcem, co
umożliwia im wystarczające pokrycie całej
przestrzeni.”
Mrówki: Jak one to robią?
Mrówki mają ustalony sposób komunikacji pośredniej bazujący na
pozostawianiu feromonu na ścieżce, którą przebyły.
Pojedyncza mrówka porusza się losowo, lecz gdy napotka na swej
drodze ślad feromonowy, jest to wielce prawdopodobne, że mrówka
będzie podążać za tym śladem.
Mrówka furażując, pozostawia ślad feromonowy na swej drodze. Gdy
znajdzie źródło pożywienia, wraca do mrowiska wzmacniając drogę
powrotu śladem feromonowym.
W ten sposób, inne mrówki mają większe szanse
(prawdopodobieństwo) podążania za tym śladem feromonowym i w
konsekwencji pozostawiania większej ilości śladu feromonowego na
tej drodze.
Ten proces określa się mianem pętli dodatniego sprzężenia
zwrotnego ponieważ im wyższa jest wartość tego feromonu, tym
wyższe jest prawdopodobieństwo podążania tym śladem na danej
trasie.
Mrówki: Jak one to robią?
Ponieważ trasa B jest krótsza,
mrówki będą kontynuowały tu
swą podróż znacznie częściej i
dlatego będą kłaść więcej
feromonu właśnie na niej.
Feromonowa koncentracja na
trasie B będzie wzrastać
znacznie szybciej niż na trasie
A, wkrótce też mrówki z
krawędzi A będą wybierać jako
swoją trasę B
Jeśli większość mrówek nie
będzie wybierało do przebycia
trasy A, wówczas feromon jest
niestabilny, ślad ten po prostu
będzie wyparowywał
Tylko najkrótsze trasy będą
wzmacniane poprzez ślad
feromonowy!
Mrówki: Eksperymenty
1
2
3
Mrówki budują takie same trasy (każda na
jednej z dwu ścieżek, 50% całości)
Mrówki wykorzystują krótkie trasy (ścieżki)
Mrówki szukaja najkrótszej trasy (ścieżki)
Modelując kolonię mrówek
Jest oczywiste, że zdolność znajdowania najkrótszej trasy z mrowiska
do źródła pożywienia może być wykorzystana do rozwiązywania
problemów grafowych.
Otoczenie:
Akcje wykonywane przez mrówki:
W mieście mrówka wybiera swoją trasę na podstawie intensywności
feromonej na dostępnych ścieżkach
Mrówka gdy znajdzie źródło pożywienia, rozpoczyna powrót do
mrowiska pozostawiając ślad feromonowy
Wszystkie akcje wymagają lokalnych informacji i krótkotrwałej
pamięci.
Ant Colony Optimization
Technika Optymalizacyjna zaproponowana przez Marco Dorigo na pocz.
lat 90
Każda wirtualna mrówka jesta probabilistycznym mechanizmem,
który konstruuje rozwiązanie problemu wykorzystując:
Pozostawianie sztucznego feromonu
Informację Heurystyczną: ślady feromonowe, pamięć odwiedzonych
miast i widoczność . . .
Różnice między prawdziwymi i
sztucznymi mrówkami:
Sztuczne mrówki żyją w
świecie dyskretnym.
Feromon jest aktualizowany
po zbudowaniu rozwiązania.
Dodatkowe mechanizmy.
Ant Colony Optimization
ConstructAntSolutions [budowa rozwiązania]
Rzeczywiste reguły probabilistycznych wyborów składników
rozwiązania zmieniaja się w czasie, w zależności od wariantów ACO.
UpdatePheromones [aktualizacja feromonu]
Wykorzystuje się tutaj wzrost wartości feromonowych związanych z
dobrymi lub obiecującymi rozwiązaniami, oraz z wyparowywaniem
tych wartości w przypadku złych rozwiązań.
Zmniejszanie wartości feromonowych następuje poprzez
wyparowywanie feromonu -¿ umożliwia “zapominanie”-¿ faworyzuje
eksplorację nowych obszarów
Zwiększenie poziomu feromonuzwiązane jest z wybranym zbiorem
dobrych rozwiązań-¿powoduje, że algorytm jest zbieżny
Tij ← (1 − ρ) · Tij + ρ ·
P
F (s)
s∈Supd |Cij ∈s
Supd = zbiór rozwiązań przewidzianych do aktualizacji feromonowej
ρ (0; 1] to parametr zwany współczynnikiem wyparowywania
F jest funkcją oceny rozwiązania.
Optymaliazacja mrowiskowa
Różne algorytmy ACO różnią się sposobem aktualizacji
feromonowej.
AS-update: Supd = Siter (zbiór rozwiązań, które są utworzone w
bieżącej iteracji) -¿Jak w naturze
IB-update: Supd = Sib = arg max F(s) (iteration-best rozwiązanie:
najlepsze rozwiązanie w bieżącej iteracji)
wprowadza bardziej wyrazistą (stromą) tendencję w stronę dobrych
rozwiązań -¿ zwiększenie szybkości
Zwiększa prawdopodobieństwo przedwczesnej zbieżności
BS-update: Supd = Sbs (best-so-far rozwiązanie: najlepsze
rozwiązanie osiągnięte do tychczas)
Wprowadza jeszcze większą stronniczość
W praktyce, ACO algorytmy wykorzystujące warianty: IB-update lub
BS-update reguły i które dodatkowo włączają mechanizmyunikania
przedwczesnej zbieżności, osiągająlepsze rezultaty niż te stosujące
AS-update regułę.
Zastosowania
ACO moze być wykorzystane do rozwiązywania
problemów grafowych takich jak Traveling
Salesman Problem (TSP).
O wysokiej złożoności obliczeniowej
Dla których metody dokładne zawodzą i nie
są efektywne
Dla których nie potrzebujemy the best
rozwiązania, lecz dobrego – dopuszczalnego,
przybliżonego.
Problem komiwojażera
Gdy dany jest zbiór miast i ich odległości dla
każdej pary miast, należy wyznaczyć koszt
takiej podróży, która odwiedza (przechodzi
przez) wszystkie miasta dokładnie raz i wraca
do punktu startowego.
Badając wszystkie możliwe rozwiązania
należy wyznaczyć n! permutacji.
Wykorzystując techniki programowania
dynamicznego, można problem ten rozwiązać
w czasie O(n2 2n )
Ten problem ma znaczenie praktyczne.
Przykład:
wyznaczanie cyklu fabrycznego:
uszeregowanie „trasy” dla odpowiednich
maszyn wiertniczych wycinających w płytach
PCB.
TSP rozwiązywane przez ACO
Modelowanie stada ptaków
Zsynchronizowane zachowanie stada ptaków wydaje się być funkcją
wysiłków ptaków w utrzymaniu optymalnej odległości między sobą
i ich sąsiadami.
“Individual members can profit from the discoveries and previous
experience of other members during the search for food. This
advantage can become decisive, overweighting the disadvantages of
competition for food”
Ptaki i ryby dostosowują swój ruch w sensie fizycznym w celu
uniknięcia drapieżników, poszukiwania pożywienia i gniazda.
Ludzie mają tendencję dostosowania swoich przekonań i postaw po
to, aby dojść do porozumienia ze swymi rówieśnikami lub członkami
społeczeństwa. Ludzie zmieniają abstrakcyjną wielowymiarową
przestrzeń, unikając kolizji.
Modelowanie stada
Definicje:
Stado jest grupą obiektów, które
wykorzystują ogólną klasę
przystosowawczych, bezkolizyjnych,
zaggregowanych równań ruchu.
Boid jest symulowanym ptako-podobnym
obiektem, prezentującym ten typ zachowań.
Może nim być ryba, pszczoła, dinozaur, itp.
Reguły stada:
Spójność: każdy boid lata w kierunku środka
wszystkich sąsiadów (to znaczy, boid jest w
swoim lokalnym sąsiedztwie w centrum)
Separacja : każdy boid utrzymuje
bezpieczną odległość w stosunku don swoich
sąsiadów, unikając kolizji
Wyrównanie: każdy boid zrównuje swoją
prędkość i wyrównuje ją w stosunku do
swoich sąsiadów
Uwaga: Istnieje szereg innych reguł uczynienia
stada bardziej realistycznym.
Particle Swarm Optimization
zaproponowany przez Eberharta i Kennedy’ego w środku ’90
Algorytm Optymalizacji Globalnej dealing with problems w którym
najlepsze rozwiązanie może być reprezentowane jako punkt na
powierzchni n-wymiarowej przestrzeni.
Zainspirowany zachowaniami socjalnymi stada ptaków i ławicy ryb.
Główne zastosowanie to Optymalizacja Numeryczna
Zalety:
Wymaga tylko bardzo prostych operacji matematycznych
Obliczeniowo niedrogi, w obu przypadkach
Wymagań pamięciowych
Szybkości działania
Duża liczba cząsteczek w stadzie powoduje , że optymalizacja stadna
jest zdumiewająco odporna na problem lokalnych minimów.
Particle Swarm Optimization
Wyobraźmy sobie stado ptaków w obszarze, gdzie jest
pojedyncze źródło pożywienia.
Ptak nie wie, gdzie jest to źródło pożywienia, ale zna
odległość do źródła pożywienia.
Najlepszą strategią jest podążanie za ptakiem, który
znajduje się najbliżej tego pożywienia.
Cząsteczki zapamiętują i komunikują się między sobą
przekazując informacje o najlepszym rozwiązaniu
znalezionym do tej pory.
Particle Swarm Optimization
Rozważa się stado cząsteczek, które poruszają sie nad przestrzenią
rozwiązań a cząsteczki są oceniane zgodnie z pewnymi kryteriami
przystosowania, ewaluacji. Ruch cząsteczki zależy od:
Jej najlepszej pozycji uzyskanej dotychczas (pBest)
najlepszej pozycji cząsteczki otaczającej (lBest) lub całej grupy
(gBest)
w każdej iteracji, cząsteczka zmienia swą prędkość zgodnie z pBest
lub lBest/gBest.
Tak więc stado bada przestrzeń rozwiązań szukając obiecujących
regionów.
Particle Swarm Optimization
Pseudokod tej procedury jest następujący:
Particle Swarm Optimization
Kombinacja gBest i pBest :wymaga kompromisu
lBest topologia może być:
Socjalna: cząsteczki w topologii są zawsze takie same, niezależnie
gdzie są w przestrzeni;
Geograficzna: cząsteczki są analizowane wśród tych o najmniejszej
odległości;
Global PSO vs. Local PSO: wersja globalna zbiega sie szybciej do
rozwiązania lecz może łatwiej utykać w lokalnych optimach.
Technologia Stada: Zastosowania
Technologia stada jest szczególnie atrakcyjna bo jest
tania
wydajna
prosta
Przykłady zastosowań:
Kontrola pojazdów bezzałogowych
Możliwość wykorzystania do kontroli nanobotów wewnątrz ciała
zaatakowanego rakiem
Disney: „The Lion King” był I filmem wyprodukowanym w
technologii stada. „The Lord of the rings”wykorzystywał to równie w
scenach batalistycznych.
Replikacja zbiorów kratowych (grid):
Pszczoły miodne
W przypadku pszczół miodnych podstawowe własności, na których
oparta jest samoorganizacja, stanowią:
sprzężenie zwrotne dodatnie: wraz ze wzrostem ilości źródeł
nektaru wzrasta liczba obserwatorów odwiedzających je.
sprzężenie zwrotne ujemne: proces odkrywania źródła pożywienia
opuszczonego przez pszczoły jest zakończony.
fluktuacje: zwiadowcy przeprowadzają losowe poszukiwania w celu
odkrycia nowych źródeł pożywienia
wielokrotne interakcje: pszczoły dzielą się swoimi informacjami na
temat miejsc źródeł pożywienia z innymi pszczołami na obszarze
tańca.
System Rojowy
Taniec kołysany pszczół
Artificial Bee Colony
Pszczoły tancerki
Wymiana informacji jest najważniejszym zdarzeniem w formowaniu
zbiorowej wiedzy. W czasie badania ula można rozróżnić części, które
powszechnie występują we wszystkich ulach. Pod względem wymiany
informacji najważniejszą częścią ula jest arena taneczna. Na arenie
tanecznej zachodzi komunikacja pomiędzy pszczołami dotycząca źródeł
pożywienia. Ten taniec nazywany jest tańcem wirowym (kołysanym).
Obserwatorzy oglądając tańce przybyłych pszczół, prawdopodobnie
zdobywają informacje na temat źródeł pożywienia i decydują, które
wybiorą. Istnieje większe prawdopodobieństwo wybrania zasobniejszego
źródła przez obserwatorów, ponieważ więcej informacji jest
przekazywanych na temat tych źródeł.
Prawdopodobnie pszczoły zbieraczki dzielą się liczbą informacji
proporcjonalną do zasobu źródła pożywienia co oznacza, że długość tańca
kołysanego jest wprost proporcjonalna do zasobności źródła. Stąd do
bogatszych źródeł udaje się proporcjonalnie więcej pszczół .
Wnioski
Możemy uczyć się z natury i przejmować te zasady z problemów,
które już przez nią zostały rozwiązane.
Wiele prostych indywiduów współoddziaływuje między sobą i może
osiągnąć globalne zachowanie emergentne.
Techniki bazujące na naturalnych kolektywnych zachowaniach
(Swarm Intelligence) są interesujące bo są: tanie,wydajne i proste.
Mają mnóstwo zastosowań.
Swarm intelligence jest aktywnym działem Artificial Intelligence,
gdzie prowadzonych jest wciąż mnóstwo studiów, związanych z
praktycznymi zastosowaniami tych technik optymalizacyjnych.
To wszystko
Dziękuję za uwagę

Podobne dokumenty