ŻYCIE I EWOLUCJA. w komputerze. czwartek, 23 maja 13

Podobne dokumenty
Obliczenia inspirowane Naturą

Modelowanie wieloskalowe. Automaty Komórkowe - podstawy

Teoria ewolucji. Podstawowe pojęcia. Wspólne pochodzenie.

Modelowanie wieloskalowe. Automaty Komórkowe - podstawy

Modelowanie systemów biomedycznych

MODELOWANIE RZECZYWISTOŚCI

Teoria ewolucji. Podstawowe pojęcia. Wspólne pochodzenie.

Ewolucjonizm NEODARWINIZM. Dr Jacek Francikowski Uniwersyteckie Towarzystwo Naukowe Uniwersytet Śląski w Katowicach

MODELOWANIE RZECZYWISTOŚCI

Algorytmy genetyczne

Automaty komórkowe. Katarzyna Sznajd-Weron

Podręcznik. Model czy teoria

Układy dynamiczne Chaos deterministyczny

Teoria ewolucji. Podstawy wspólne pochodzenie.

Algorytm genetyczny (genetic algorithm)-

Obliczenia inspirowane Naturą

MODELOWANIE RZECZYWISTOŚCI

Zmienność. środa, 23 listopada 11

Algorytmy ewolucyjne NAZEWNICTWO

Turing i jego maszyny

Jak powstają nowe gatunki. Katarzyna Gontek

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

Algorytmy sztucznej inteligencji

Programowanie genetyczne, gra SNAKE

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Algorytmy genetyczne

W dowolnym kwadracie 3x3 ustawiamy komórki na palące się (stan 3). Program powinien pokazywać ewolucję pożaru lasu.

Podstawy biologii. Informacja genetyczna. Co to jest ewolucja.

Mateusz Żyliński Tadeusz Włodarkiewicz. WireWorld. Zebranie informacji dotyczących tematyki projektu oraz przedstawienie koncepcji realizacji projektu

Obliczenia inspirowane Naturą

ZARZĄDZANIE POPULACJAMI ZWIERZĄT

O doborach jednorazowym i kumulatywnym w ewolucji O hipotezie selekcyjnego wymiatania

Populacja i pula genów podstawowe elementy podlegające ewolucji.

GENETYKA POPULACJI. Ćwiczenia 1 Biologia I MGR /

MODELOWANIE RZECZYWISTOŚCI

8. Neuron z ciągłą funkcją aktywacji.

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Opracował Arkadiusz Podgórski

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Tworzenie gier na urządzenia mobilne

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Ćwiczenia z przetwarzania tablic 2D

Ruch drogowy, korki uliczne - czy fizyk może coś na to poradzić?

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

6. TWORZYMY OPOWIEŚĆ DO RZUTÓW KOSTKĄ CZYLI O UKŁADANIU OPOWIADAŃ

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Zagrajmy w ekologię gra dydaktyczna.

Mutacje jako źródło różnorodności wewnątrzgatunkowej

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Powstanie gry Opis reguł gry Reguły według Conwaya Elementy występujące w grze Modyfikacje gry Charakterystyka automatu komórkowego Gra w Życie

MODELOWANIE RZECZYWISTOŚCI

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

1 Podstawowe pojęcia z zakresu genetyki. 2 Podstawowy model dziedziczenia

Podstawy teorii ewolucji. Informacja i ewolucja

wykład dla studentów II roku biotechnologii Andrzej Wierzbicki

1 Genetykapopulacyjna

KARTA KURSU. Podstawy ewolucjonizmu. Basics of evolution. Kod Punktacja ECTS* 2

Metody symulacji komputerowych Modelowanie systemów technicznych

Automatyczny dobór parametrów algorytmu genetycznego

BIOINFORMATYKA. Copyright 2011, Joanna Szyda

Uczeń potrafi. Dział Rozdział Temat lekcji

Algorytm. Krótka historia algorytmów

Symulacje komputerowe

wykład dla studentów II roku biotechnologii Andrzej Wierzbicki

CZYM SĄ OBLICZENIA NAT A URALNE?

Gra na telefon komórkowy

NaCoBeZu klasa 8 Dział Temat nacobezu programu I. Genetyka 1. Czym jest genetyka? 2. Nośnik informacji genetycznej DNA 3. Podziały komórkowe

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

I. Genetyka. Dział programu Lp. Temat konieczny podstawowy rozszerzający

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

Biologiczne podstawy ewolucji. Informacja genetyczna. Co to jest ewolucja.

Ekologia wyk. 1. wiedza z zakresu zarówno matematyki, biologii, fizyki, chemii, rozumienia modeli matematycznych

Czarny EEBB, EeBB, EEBb, EeBb Żółty z czarnym nosem eebb, eebb Żółty z cielistym nosem (NBP) Czekoladowy EEbb, Eebb

METODY STATYSTYCZNE W BIOLOGII

Stochastyczna dynamika z opóźnieniem czasowym w grach ewolucyjnych oraz modelach ekspresji i regulacji genów

Różnorodność biologiczna

Podstawy teorii ewolucji. Informacja i ewolucja

Możliwości współczesnej inżynierii genetycznej w obszarze biotechnologii

SCENARIUSZ LEKCJI BIOLOGII

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Strategie ewolucyjne (ang. evolu4on strategies)

MIND-BODY PROBLEM. i nowe nadzieje dla chrześcijańskiej antropologii

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

BIOLOGIA EGZAMIN KLASYFIKACYJNY 2015/16. KLASA III Gimnazjum. Imię:... Nazwisko:... Data:...

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych

1. Symulacje komputerowe Idea symulacji Przykład. 2. Metody próbkowania Jackknife Bootstrap. 3. Łańcuchy Markova. 4. Próbkowanie Gibbsa

Podstawy biologii. Informacja genetyczna. Co to jest ewolucja.

Mechanizmy ewolucji. SYLABUS A. Informacje ogólne

Metoda Karnaugh. B A BC A

ZARZĄDZANIE POPULACJAMI ZWIERZĄT DRYF GENETYCZNY EFEKTYWNA WIELKOŚĆ POPULACJI PRZYROST INBREDU

Festiwal Myśli Abstrakcyjnej, Warszawa, Czy SZTUCZNA INTELIGENCJA potrzebuje FILOZOFII?

Modelowanie złożonych kolonii agentów z użyciem maszyn Boltzmanna

Matematyczne Podstawy Informatyki

Prawdopodobieństwo geometryczne

Podstawy OpenCL część 2

Problem Komiwojażera - algorytmy metaheurystyczne

Tworzenie modeli ciała ludzkiego dla potrzeb modelowania pola elektromagnetycznego. Bartosz Sawicki, Politechnika Warszawska

Zastosowania Robotów Mobilnych

ALGORYTMY GENETYCZNE ćwiczenia

OBLICZENIA ZA POMOCĄ PROTEIN

Transkrypt:

ŻYCIE I EWOLUCJA w komputerze

CO TO JEST ŻYCIE? CO TO JEST EWOLUCJA?

CO TO JEST ŻYCIE? Trudno zdefiniować jednoznacznie co to jest życie Łatwiej podać cechy charakteryzujące organizmy (niekoniecznie pojedyncze osobniki): spójność budowy reagowanie na bodźce przemiana materii wzrost rozmnażanie dziedziczenie cech podleganie ewolucji

CO TO JEST EWOLUCJA? Ewolucja biologiczna to proces zmian organizmów obserwowany między pokoleniami, prowadzący do ich udoskonalania. Ewolucja to nie to samo co teoria ewolucji: Ewolucja to proces Teoria ewolucji to wyjaśnienie jak ten proces przebiega, jakie mechanizmy są za niego odpowiedzialne itd. Takich wyjaśnień może być wiele. Obecnie w nauce obowiązuje Syntetyczna Teoria Ewolucji.

CO POTRZEBA EWOLUCJI? Aby ewolucja mogła przebiegać, musi zaistnieć kilka czynników: rozmnażanie (replikacja) dziedziczenie zmienność dziedziczna konkurencja/selekcja

ROZMNAŻANIE Osobniki muszą się rozmnażać Ewolucja to proces który jest obserwowany w przeciągu wielu pokoleń. Nie można powiedzieć: to zwierzę ewoluuje

DZIEDZICZENIE Osobniki potomne muszą dziedziczyć przynajmniej część cech po rodzicach. Jeśli osobniki A i B mają potomków (oddzielnie), to potomkowie A powinni być bardziej podobni do A niż do B, i odwrotnie. Dziedziczenie umożliwia selekcję cech pomiędzy pokoleniami.

KONKURENCJA/SELEKCJA Aby selekcja mogła przebiegać, osobniki muszą różnić się między sobą. U organizmów część cech (różnic) jest dziedziczna, a część nie. Dla ewolucji znaczenie mają te cechy, które mogą być przekazane następnemu pokoleniu (dziedziczne).

JAK DZIAŁA EWOLUCJA? (WERSJA EKSPRESOWA) Osobniki różnią się (dziedzicznie) między sobą. Za stały dopływ zmienności odpowiedzialne są mutacje + mieszanie genów (rekombinacja genetyczna). Te różnice decydują o tym, że jedne organizmy lepiej sobie radzą, inne gorzej. Miarą radzenia sobie jest liczba potomków dożywających do rozmnażania. A więc niektóre cechy decydują o tym, że ich posiadacze zostawią więcej dzieci niż inne. Te cechy będą się więc rozprzestrzeniać kosztem innych, będzie ich coraz więcej. Populacja, będzie się więc zmieniała z pokolenia na pokolenie.

ŻYCIE I EWOLUCJA W ŚWIECIE WIRTUALNYM

SZTUCZNE ŻYCIE, EWOLUCJA, INTELIGENCJA Prowadzono wiele prób mających stworzyć w komputerze sztuczny odpowiednik życia, ewolucji i inteligencji. Z różnym skutkiem. Stworzenie sztucznej inteligencji okazało się dużo trudniejsze, niż się dawniej wydawało. Ale to temat na inną historię. W dalszej części zajmiemy się wybranymi (głównie pod kątem prostoty obsługi i atrakcyjności) przykładami dotyczącymi sztucznego życia i ewolucji które można przeprowadzić na komputerze.

BIOMORFY Koncepcja biomorfów została przedstawiona w książce Richarda Dawkinsa pt. Ślepy zegarmistrz Biomorf to wirtualne stworzenie o budowie drzewkowatej. Biomorfy mają genomy określające takie parametry jak ilość rozgałęzień, ich długość, kąt nachylenia, kolor itp. W każdym pokoleniu wybiera się jednego który staje się rodzicem dla następnego pokolenia. Wśród potomków są rożne mutanty różniące się przypadkowo zmienionymi parametrami od rodzica. Wybieramy tego który się nam najbardziej podoba itd... Tą drogą można stworzyć całkiem ciekawe i skomplikowane formy

CZY MAŁPA MOŻE NAPISAĆ HAMLETA? Jeden z argumentów krytyków darwinowskiej teorii ewolucji jest taki: Twierdzenie, że tak złożone struktury jak oko, czy komórka powstały drogą przypadku jest tak samo absurdalne, jak twierdzenie, że małpa stukając w maszynę do pisania może napisać Hamleta. R. Dawkins zaproponował takie doświadczenie na komputerze: Wybieramy jakiś ciąg liter jako cel (niekoniecznie całego Hamleta ) Komputer losuje przypadkowy ciąg liter. Ten, ciąg liter rozmnaża się i mutuje (losowo zmieniane są w nim litery) Do następnego pokolenia przechodzi ten ciąg, który jest najbardziej podobny do docelowego Jest to przykład na twórczą moc doboru kumulatywnego - czyli doboru kumulującego w kolejnych pokoleniach korzystne cechy. QDWUYE QDNUYE QDWUME QDWUEE QGWUEE QAWUEE ADWUEE QAWOEE QAMUEE QGWUEE KAMUEE QAMUET QAMAEE HAMUET QZMUET MAMUET HARUET MAMUET HAMLET HAMLET

AUTOMATY KOMÓRKOWE (CELLUAR AUTOMATA)

AUTOMATY KOMÓRKOWE Koncepcja AK pochodzi jeszcze z lat 40-tych XX w (Stanisław Ulam, John von Neumann) - na początku celem było stworzenie samoreplikującego się robota. Ogólne zasady: 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.

AUTOMATY KOMÓRKOWE JEDNOWYMIAROWE Najprostszym rodzajem są jednowymarowe AK. Symulacja przebiega w jednym szeregu komórek, ale wyniki są często prezentowane w formie dwywymiarowej historii przedstawiającej kolejne zmiany.

ELEMENTARNE AUTOMATY KOMÓRKOWE Elementarne automaty komórkowe są jednowymiarowymi AK Komórka może mieć dwa stany (0/1, martwa/żywa, biała/czarna...) Każda komórka ma dwie sąsiadki, które na nią oddziaływują Reguła mówi jak zachowa się komórka w następnym pokoleniu w zależności od tego w jakim stanie się znajduje ona i jej sąsiadki. Można to przedstawić graficznie: komórka w pokoleniu 1 lewa sąsiadka (żywa) prawa sąsiadka (martwa) komórka w pokoleniu 2 Można powyższą regułę odczytać tak: Jeśli komórka jest martwa, jest lewa sąsiadka jest żywa, a prawa jest martwa to w nastepnym pokoleniu komórka staje się żywa

ELEMENTARNE AUTOMATY KOMÓRKOWE komórki w pokoleniu 1 komórki w pokoleniu 2 Przykładowa reguła (reguła 18) Kolejne etapy symulacji, przy wyjściu od jednej żywej komórki w centrum

ELEMENTARNE AUTOMATY KOMÓRKOWE Reguła 18 cd

ELEMENTARNE AUTOMATY KOMÓRKOWE Ponieważ liczymy 3 komórki, a każda z nich ma 2 mozliwe stany, istnieje 2 3 =8 możliwych kombinacji komórek - dlatego przy układaniu reguły, używamy 8 kombinacji komórek. Ponieważ komórka potomna może mieć 2 stany, a kombinacji jest 8, to istnieje 2 8 =256 możliwych reguł. Mają one numery od 0 do 255. Można je przejrzeć np. pod adresem: http://atlas.wolfram.com/01/01/ Software: np. golly http://golly.sourceforge.net/

TOTALISTYCZNE AUTOMATY KOMÓRKOWE Totalistyczne automaty komórkowe nie biorą pod uwagę ułożenia sąsiadek, istotna jest tylko ich liczba w określonym stanie - np. liczba żywych. Istnieją przykłady dla jednowymiarowych AK, ale najbardziej znaną jest Gra w życie (Game of life), oparta na dwuwymiarowej planszy

DWUWYMIAROWE AUTOMATY KOMÓRKOWE Dwuwymiarowe automaty komórkowe mogą być oparte na różnych siatkach. Najbardziej popularna jest prosta siatka oparta na kwadratach, ale można także stworzyć np. siatkę sześciokątów.

DWUWYMIAROWE AUTOMATY KOMÓRKOWE Można w różny sposób liczyć sąsiednie komórki, np. w siatce opartej o kwadraty może to być 4 lub 9 sąsiadek.

AUTOMATY KOMÓRKOWE: GRA W ŻYCIE Najbardziej znanym przykładem AK 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: Pusta komórka zmienia się w żywą, wtedy gdy sąsiaduje z trzema żywymi komórkami. Żywa komórka przeżywa, gdy ma 2, lub 3 żywych sąsiadów Żywa komórka umiera (zmienia się w pustą): z samotności gdy ma mniej niż 2 żywych sąsiadów z przeludnienia (przekomórkowienia?) gdy ma więcej niż 3 żywych sąsiadów

AUTOMATY KOMÓRKOWE: GRA W ŻYCIE Podczas symulacji obserwuje się powstawanie wielu ciekawych struktur, niektóre posiadają pewne cechy istot zywych, np: struktury stabilne - nie zmieniają się oscylatory (oscilators)- struktury, które zmieniają się cyklicznie szybowce (gliders) i statki kosmiczne (spaceships)- przemieszczają się zmieniając cyklicznie puffers - przemieszczają się pozostawiać po sobie ślad strzelby (guns) - wystrzeliwują struktury replikatory (replikators) - struktury, które się replikują. Znane z niektórych AK, ale GoL jeszcze ich nie odnaleziono Bogata kolekcja struktur m. in. tu: http://www.conwaylife.com/wiki/main_page

AUTOMATY KOMÓRKOWE: ZASTOSOWANIA Automaty komórkowe mają różne zastosowania/możliwości: Mogą prowadzić obliczenia Mogą symulować procesy jak np. pożary lasów, ruch drogowy Także możną za ich pomocą symlować pewne procesy biologiczne, np: Powstawanie ubarwienia, np. Conus textile (rule 30) Rozwój zarodka, np. Arabidipsis thaliana Regulacja transpiracji Zachowanie neuronów Zmiana zabarwienia głowonogów etc.

rule 30 Muszla Conus textile autor: Richard Ling (richard@research.canon.com.au) źródło: http://en.wikipedia.org/wiki/file:textile_cone.jpg

L-SYSTEMY

L-SYSTEMY W 1968 r Astrid Lindenmayer, stworzył język pozwalający opisać proces tworzenia struktur fraktalopodobnych, który nadaje się między innymi do modelowania rozwoju roślin. Do wymodelowania potrzebne są: Axiom - element podstawowy od którego rozpoczyna się rozwój Zestaw reguł opisujących przekształcenia elementów w każdym kroku

L-SYSTEMY Przykład: Axiom: B Reguły: B = F[-B] + B element od którego rozpocznie się rozwój W każdym kroku element B zostanie zmienniony w podany ciąg... a element F w dwa elementy F F = FF Skręć w lewo i stwórz element B Zapamiętaj pozycję Wróć do zapamiętanej pozycji Narysuj linię Skręć w prawo i stwórz element B F[-B] + B

L-SYSTEMY Axiom: B Reguły: B = F[-B] + B F = FF Jak to działa? B : 0 F[- B]+B : 1 FF[- F[- B]+B]+F[- B]+B : 2 FFFF[- FF[- F[- B]+B]+F[- B]+FF[- F[- B]+B]+F[- B]+B : 3

L-SYSTEMY W ten sposób tworzone są ciągi symboli, które można wykorzystać do rysowania struktur Oczywiście należy sprecyzować jeszcze długość elementów, ich grubość, wygląd, kąt itd...... i oczywiście liczbę kroków, im ich więcej, tym struktura bardziej skomplikowana, np. dla podanej reguły: Axiom: B Reguły: B = F[-B] + B F = FF L-systemy online: http://www.kevs3d.co.uk/dev/lsystems/

L-SYSTEMY Bardziej złożone symulacje oparte o L-stystemy uwzględniają dodatkowe elementy jak np. wpływ czynników zewnętrznych (np. światło), przypadek, etc. pozwala to uzyskać bardziej realistyczne rezultaty. L-systemy wykorzystyje się np. przy tworzeniu wirtualnych lasów, łąk. etc.. Poniżej parę przykładów z Internetu (Wikimedia Commons)

FRAMSTICKS - CZYLI WIRTUALNY ŚWIAT W 3D Do najbardziej udanych prób stworzenia wirtualnego świata należy projekt Framstick którego autorami są Maciej Komosiński i Szymon Ulatowski Projekt ma za zadanie stworzyć trójwymiarowe symulacje sztucznych form życia. Można projektować różnego rodzaju wirtualne stworzenia i przeprowadzać na nich różnorodne eksperymenty. Projektowane stworzenia posiadają nie tylko ciała, ale i umysł oparty na sieciach neuronowych. Warto zajrzeć na stronę projektu i spróbować. Najlepiej zacząć od programu Theater, na którym można zapoznać się z niektórymi możliwościami świata Framsticks.