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ę