Tierra (sztuczne życie)
Tierra – pierwszy program komputerowy, opracowany przez Thomasa Raya, dzięki któremu można było symulować procesy ewolucji[1]. Jest to system do badań nad sztucznym życiem, a konkretnie – nad zdolnością programów komputerowych („królików”) do ewolucji.
Tierra składa się z prostej maszyny wirtualnej oraz interfejsu badacza. Zaprojektowana była jako komputer o architekturze równoległej MIMD[2]. Zawartość pamięci maszyny nazywana jest „zupą”[3] – przez analogię do „prazupy”, w której nastąpić miała biogeneza. W zupie znajdują się króliki (organizmy), które tworzą i uruchamiają swoje kopie. Ponieważ Tierra jest systemem o niskiej niezawodności, w trakcie tworzenia kopii (a także w trakcie życia królika) może dojść do przekłamań, skutkujących trwałymi zmianami w kodzie wykonywalnym, czyli mutacją. Tierra została wyposażona w moduł „żniwiarz” („kostucha”), którego zadaniem była eliminacja starych, podatnych na błędy królików[4] w razie zbyt dużego zużycia zasobów systemu. W zależności od konfiguracji modułu usuwane mogły być losowe programy, bądź też te, które wywołują najwięcej błędów i najwolniej się powielają. Żniwiarz odgrywał zastępczą rolę drapieżnika (rekompensował jego brak[4]) i umożliwiał zaistnienie doboru naturalnego. Po uruchomieniu pierwszej symulacji przez Raya w systemie dość szybko pojawiały się mutacje prowadzące do powstawania organizmów o mniejszej liczbie instrukcji. Były to wirtualne pasożyty, gdyż liczba instrukcji (45) nie pozwalała na „samodzielną” replikację i potrzebowały one do tego innych organizmów[5][6].
Dobór naturalny w połączeniu z mutacjami daje w efekcie ewolucję, skutkującą przetrwaniem programów najlepiej dostosowanych do warunków panujących w „zupie” – nierzadko korzystających z nietrywialnych strategii przetrwania, jak pasożytnictwo. W odróżnieniu od tradycyjnych algorytmów genetycznych pejzaż dostosowań w systemie Tierra nie był ustalony z góry, ale generowany poprzez interakcje organizmów (królików) z otoczeniem (środowiskiem) i zmieniający się wraz z nimi[7].
Inspiracją do stworzenia Tierry była dla Raya gra go[1], a także gra Core War, w której programy graczy rywalizują o zasoby pamięci[8]. Pracę nad tym programem, pisanym w asemblerze, rozpoczął w 1987 roku[9]. Pierwszy „królik” miał 80 instrukcji. W wyniku ewolucji powstała między innymi jego udoskonalona wersja składająca się tylko z 36 instrukcji, dzięki zastosowaniu rozwinięcia pętli[10]. Nowsze wersje Tierry umożliwiają badania nad „królikami” w systemach rozproszonych.
Przypisy
- ↑ a b Coveney i Highfield 1997 ↓, s. 317.
- ↑ Coveney i Highfield 1997 ↓, s. 317-320.
- ↑ Borkowski 2008 ↓, s. 21.
- ↑ a b Coveney i Highfield 1997 ↓, s. 319.
- ↑ Borkowski 2008 ↓, s. 22.
- ↑ Coveney i Highfield 1997 ↓, s. 322-323.
- ↑ Coveney i Highfield 1997 ↓, s. 321.
- ↑ Borkowski 2008 ↓, s. 20.
- ↑ Coveney i Highfield 1997 ↓, s. 318-319.
- ↑ Murray Gell-Mann, Kwark i jaguar, Piotr Amsterdamski (tłum.), Warszawa: CIS, 1996, s. 411, ISBN 83-85458-53-0, OCLC 835213528 .
Bibliografia
- J.M.Kowalski (2002) "Wirusy komputerowe" jako forma życia – Racibórz
- D.Ferbranche (1993) Patologia wirusów komputerowych – WNT Warszawa
- E.Thro (1994) Sztuczne życie zestaw narzędzi badacza – Warszawa
- T.Ray – Tierra home page
- Wojciech Borkowski. Przypadek i konieczność, czyli o powtarzalności makroewolucji w naturze, informatyce i kulturze. „Teksty z Ulicy. Zeszyt memetyczny”. 12, 2008. ISSN 2081-397X.
- Peter Coveney, Roger Highfield: Granice złożoności. Warszawa: Prószyński i S-ka, 1997. ISBN 837180-083-5.
Linki zewnętrzne
- Tierra home page. life.ou.edu. [zarchiwizowane z tego adresu (2019-01-01)].