Twitter: @grzegg

Sztuczne życie i ewolucja w komputerze

Ta sekcja poświęcona jest takim tematom jak sztuczne życie, ewolucja w komputerze itp.
Na razie przedstawiam zbiór linków towarzyszących do prelekcji dla Krakowskiego Młodzieżowego Towarzystwa Przyjaciół Nauk i Sztuk (30 marca 2011 r.) oraz seminarium dla magistrantów.
Są to wybrane, szczególnie pod kątem łatwości użycia i wizualnej atrakcyjności, programy dotyczące sztucznego życia, symulowania procesów ewolucyjnych i innych zahaczających o tą tematykę. O ile to możliwe starałem się znaleźć takie, które można uruchamiać bezpośrednio z przeglądarki.

Prezentacja: życie i ewolucja w komputerze

Biomorfy

Wybrane przykłady aplikacji stworzonych na podstawie opisu Richarda Dawkinsa w książce „Ślepy zegarmistrz”. Ogólna zasada działania jest taka:
Prowadzimy ewolucję „biomorfów” – stworzeń o budowie „drzewkowatej”, posiadających „geny” opisujące takie parametry jak liczba odgałęzień, ich długość, kąt nachylenia, kolor itp. Po wybraniu jednego z biomorfów, staje się on rodzicem dla następnego pokolenia, przy czym w wyniku losowych zmian w „genotypie” (czyli „mutacji”) potomkowie różnią się nieco od przodków. Przechodząc przez kolejne pokolenia można otrzymać bardzo ciekawe wizualnie formy.

  • Richard Dawkins’ evolution game – po otwarciu strony pojawia się 6 nałożonych na siebie czarnych okienek. Należy je rozmieścić na ekranie, wcisnąć przycisk „zap”. Następnie wybieramy jeden z biomorfów za pomocą przycisku „select”.
  • Biomorph Breeder – applet pozwalający wybrać z pomiędzy 20 różniących się od siebie biomorfów. Widoczny jest „genom” biomorfów który w dodatku można ręcznie modyfikować.
  • Blind Watchmaker Applet – jeszcze jedna implementacja biomorfów. Tu mogą składać się z wielu, segmentów co dodatkowo zwiększa możliwości komplikacji budowy.
  • Biomorph Viewer

Hamlet napisany przez przypadek?

Symulacja kolejnego pomysłu R. Dawkinsa pokazującego jak można drogą doboru kumulatywnego osiągnąć dość złożone rezultaty. Tym razem losowy układ znaków „ewoluuje” w zadany tekst.

Automaty komórkowe

Ogólna zasada jest taka: Na planszy (1, 2, 3 … wymiarowej) znajdują się pola które są wolne (martwe „komórki”), lub zajęte przez „żywe” komórki. W zależności od różnych parametrów (zwykle jest to ilość sąsiadów), w następnym pokoleniu komórka żywa może pozostać żywa, albo umrzeć (pole się zwalnia) a wolne pole może pozostać wolne, albo może w nim się pojawić żywa komórka. Okazuje się, że automaty komórkowe można stosować do całkiem poważnych rzeczy, jak np. symulacja pożarów lasu czy też procesów biologicznych.
Najbardziej znanym przykładem jest „Gra w życie” Johna Conway’a. Gra przebiega na dwuwymiarowej planszy podzielonej na kwadraty które są polami. Każde pole (ew. poza znajdującymi się na brzegu planszy) sąsiaduje z 9 innymi polami. Pole może być puste (martwa komórka) lub zajęte przez żywą komórkę. W kolejnych pokoleniach pole może się nie zmieniać, komórka martwa może przejść w żywą albo żywa w martwą. Odbywa się to wg. zasad:

  1. Pusta komórka zmienia się w żywą, wtedy gdy sąsiaduje z trzema żywymi komórkami.
  2. Żywa komórka przeżywa, gdy ma 2, lub 3 żywych sąsiadów
  3. Żywa komórka umiera (zmienia się w pustą):
    1. z samotności – gdy ma mniej niż 2 żywych sąsiadów
    2. z przeludnienia (przekomórkowienia?) – gdy ma więcej niż 3 żywych sąsiadów

Evolution lab

Potraktowana z humorem symulacja doboru. Stworzenia wyglądające jak krzyżówki kalarepy z… czymś, pożerają „muchy”. Im stworzenie wyższe, tym częściej trafia mu się mucha, a jak ją złapie i pożre, to się rozmnaża. Efekt łatwy do przewidzenia.

L-systemy

Framsticks

Autorzy piszą o projekcie tak:
Framsticks to projekt trójwymiarowej symulacji sztucznych form życia. Obejmuje on modelowanie zarówno ich struktury mechanicznej („ciała”), jak i sieci neuronowej („mózgu”). Możliwe jest projektowanie różnych rodzajów eksperymentów, takich jak prosta optymalizacja (przy użyciu algorytmów ewolucyjnych), koewolucja, ewolucja nieograniczona i spontaniczna, podział na pule genów i populacje, różne odwzorowania genotyp/fenotyp oraz modelowanie gatunków i ekosystemów.
Na stronie projektu można znaleźć m. in. programy do pobrania, samouczki i inne ciekawe informacje. Na początek warto uruchomić program „Theater” gdzie znajdziemy przykłady wirtualnych światów zasiedlanych przez trójwymiarowe stworzenia (także biomorfy) które możemy obserwować a także w niektórych przypadkach ingerować w ich świat.

Leave a Reply