Играта „Живот“ () е популярна игра с нула на брой играчи, измислена през 1970 година от Джон Хортън Конуей (), която е най-известният пример за клетъчен автомат. Пространството на играта е (крайна или безкрайна) двумерна решетка от квадратни клетки, всяка от които може да се намира в едно от общо две възможни състояния: жива или мъртва. Всяка клетка от решетката взаимодейства с осемте си съседа: съседните клетки по хоризонтал, вертикал и диагонал. На итеративен принцип, състоянието на всяка клетка в решетката запазва или променя състоянието си в зависимост от предварително зададен списък от правила.
Играта е пример за способности като възникване (самопораждане) и самоорганизация. С демонстрацията на това как от прилагането на прости правила се генерират сложни структури тя представлява интерес за физици, биолози, икономисти, математици, философи и учени от други научни направления.
Произход Конуей е бил заинтересован от проблем, поставен през 1940-те от математика Джон фон Нойман, който се е опитал да разработи хипотетична машина, която да може да създава копия на себе си. Успява, когато намира математически модел за такава машина с изключително сложни правила и правоъгълна решетка. „Живот“ е резултат от успешния опит на Конуей да опрости драстично идеите на фон Нойман. Играта излиза за пръв път в Scientific American през октомври 1970 в колонката на Мартин Гарднър „Математически игри“. От теоретична гледна точка играта е интересна, защото има свойствата на универсалната машина на Тюринг, което означава, че всичко, което може да бъде програмирано посредством алгоритъм, може да бъде програмирано с „Живот“. Гарднър пише:
От публикацията си насам, „Живот“ привлича голям интерес с изненадващите начини, по които могат да еволюират създадените модели. „Живот“ предоставя пример за пораждане и самоорганизация. Учени в различни сфери (компютърни науки, физика, биология, биохимия, икономика, математика, философия и генеративни науки) извличат полза от начина, по който от прилагането на простите правила на играта могат да се появят сложни модели. Играта също така може да служи като поучителна аналогия, която да показва донякъде противоестествената представа, че „дизайн“ и „организация“ могат да възникнат спонтанно в отсъствието на дизайнер/създател. Например Даниел Денет, философ и когнитивен учен, използва аналогията с вселената на „Живот“, за да покаже възможната еволюция на сложни философски конструкции като съзнание и свободна воля от относително простия набор детерминистични физически закони, които действат в нашата вселена.
Популярността на „Живот“ е подпомогната от появата ѝ точно в момент, в който на пазара са пуснати ново поколение достъпни миникомпютри. Играта е можела да върви с часове на тези машини, които иначе биха останали неизползвани нощем. В това отношение играта предвещава по-късната популярност на компютърно генерирани фрактали. За много „Живот“ е просто софтуерно предизвикателство – забавен начин да се използва иначе прахосано време на процесора. За други обаче, „Живот“ има по-философско значение. Около нея през 1970-те и по-късно е сформиран култ. Текущите разработки са стигнали толкова далеч, че се създават теоретични емулации на компютърни системи, вместени в рамките на „Живот“.
Конуей избира правилата внимателно, след значително количество експерименти, така че да отговарят на следните критерии: Не трябва да има рязък растеж. Трябва да съществува малки начални модели с хаотично, непредсказуемо развитие. Трябва да има потенциал за универсални конструктори на фон Нойман (възможност за саморазвитие). Правилата трябва да са колкото е възможно по-прости и да се придържат към горепосочените правила.
Правила Оригиналните правила на играта „Живот“ са следните: Всяка жива клетка с по-малко от две живи съседни клетки умира (от самота). Всяка жива клетка с повече от три живи съседни клетки умира (от пренаселеност). Всяка жива клетка с две или три живи съседни клетки остава жива и на следващата итерация. Всяка мъртва клетка с точно три живи съседни клетки се превръща в жива клетка.
Тези правила могат да търпят множество модификации по отношение стойностите, определящи състоянието на дадена клетка.
Началното състояние на полето се разглежда като своеобразен посев. На всяка итерация (още наричана „генерация“, „поколение“) правилата на системата се прилагат едновременно към всяка отделна клетка в полето и новите „раждания“ и „смърти“ на клетките се случват едновременно. По този начин всяка итерация е функция, зависеща само от състоянието на системата от предходната итерация, и няма елемент на случайност. В този смисъл играта е за нула играчи: това означава, че развоят ѝ се определя само от началното ѝ състояние, без да е необходима намеса от човек. Взаимодействието на човека с играта се изчерпва със задаването на началните стойности на клетките в полето, наблюдението на развитието ѝ и евентуалното ѝ прекъсване след определен брой итерации.
Примерни конфигурации Най-ранните интересни модели в „Живот“ са открити без употребата на компютър. Най-простите статични модели (still lifes) и повтаряеми модели (осцилатори) са открити при проследяването на развитието на различни малки стартови конфигурации, използвайки милиметрова хартия, черни дъски, игрови дъски (като играта Го) и подобни. По време на това ранно проучване, Конуей открива, че R-пентомино не успява да се стабилизира в малък брой поколения. Всъщност отнема 1103 поколения да се стабилизира, а дотогава има популация от 116 и е изстреляла шест „глайдера“ (това са структури, които запазват поулацията си, като се придвижват в произволна посока).
Много различни типове модели се появяват в „Живот“ включително статици, осцилатори и мозайки, които се пренасят по полето, оприличавани на космически кораби и совалки. Някои често срещани примери от тези три класа са показани по-долу, където живите клетки са обозначени в черно, а мъртвите в бяло.
+ Статични мозайки Блок Kошер Пита Лодка + Осцилатори Мигач (период 2) Жаба (период 2) Фар (период 2) Пулсар (период 3) Петнадесетобой (период 15)
„Пулсарът“ е най-често срещаният 3-периоден осцилатор. Голямото мнозинство от естествено възникващо осцилатори са двупериодни, като блинкър и жаба, но се знае, че съществуват и многопериодни осцилатори, 4, 8, 14, 15 и 30-периодни осцилатори са били откривани от произволни начални условия.
За модели, наречени „Матусал“ отнема много периоди, за да се стабилизират, като първият открит „Матусал“ е именно R-пентомино. “Умирай трудно“ е модел, който впоследствие изчезва (вместо да се стабилизира) след 130 поколения, за което се смята, че е максимумът за фигури със седем или по-малко клетки.
За „Жълъд“ са нужни 5206 поколения да генерира 633 клетки, от които 13 са глайдери.
+ Глайдери Р-Пентомино Умирай трудно Жълъд Конуей първоначално заключава, че никоя фигура не може да расте безкрайно – с други думи, всяка начална конфигурация с ограничен брой живи клетки, популацията не може да порасне над определен краен брой. С първоначалното излизане на играта в „Математически игри“ Конуей предлага награда от 50 долара на първия, който успее да докаже или отхвърли хипотезата му. Наградата е спечелена през ноември същата година от отбор от MIT, воден от Бил Госпър. „Глайдер оръдието на Госпър“ произвежда първия си глайдер на 15-о поколение и по един глайдер на всяко 30-о поколение нататък. Дълго време това е най-малкият познат „глайдер оръдие“ (структура, генерираща глайдери). През 2015 е открито 120-периодно „оръдие“, което има по-малко живи клетки, но по-голяма ограничителна кутия. Глайдер оръдие на Госпер По-късно са открити и по-малки модели, които също могат да растат безкрайно. Всяка една от следните три фигури расте безкрайно – първите две създават един „блоков двигател“, а третата създава два. Първата има само 10 живи клетки (което е доказано, че е минимумът). Втората се вмества в квадрат 5х5. Височината на третата е само една клетка:
По-късни открития включват други „оръдия“, които са стационарни/неподвижни и изстрелват глайдери или совалки. „Параходче“ оставя след себе си диря от остатъци и „носачи“, които се движат и произвеждат совалки. Госпър също така създава първата мозайка с асимптотично оптимална геометрична скорост на растеж, наречена „развъдник“ или „омар“, която работи, като оставя следа от оръдия.
Възможно е глайдерите да взаимодействат с други обекти по интересни начини. Например, ако два глайдера са изстреляни в блок по точно определен начин, блокът ще се премести по-близо до източника на глайдерите. Ако три глайдера са изстреляни по точно определен начин, блокът ще се премести по-надалеч. Тази „памет“ на плъзгащия блок може да се използва като симулация на брояч. Възможно е да се построят логически елементи като AND, OR и NOT използвайки глайдери. Също така е възможно да се построи мозайка, която работи като краен автомат, свързан с два брояча. Това има същия програмен капацитет като универсалната машина на Тюринг, тоест „Живот“ е теоретично толкова мощна, колкото всеки друг компютър с неограничена памет и време – тя е Тюринг завършена.
Също така, една мозайка може да съдържа набор от оръдия, които изстрелват глайдери по такъв начин, че да построяват нови обекти, включително копия на оригиналната фигура. Може да бъде построен универсален конструктор, в който да е включен Тюринг завършен компютър и който може да строи множество видове сложни обекти, включително и копия на себе си.
Самовъзпроизвеждане На 18 май 2010 Андрю Уейд обяви самопострояваща се мозайка, наречена Близнаци (Gemini), която създава копия на себе си и унищожава оригинала. Тази мозайка се възпроизвежда в 34 милиона поколения и използва наръчник, направен от глайдери, които осцилират между две стабилни конфигурации, направени от Чапмън-Грийн строителни ръце. Тези на свой ред създават копия на мозайката и унищожават предишното копие. Gemini е също така и совалка, която всъщност не е нито ортогонална, нито диагонална (тези са наречени конници).
На 23 ноември 2013 Дейв Грийн построява първия репликатор в „Живот“, който създава завършено копие на себе си, включително и наръчника.
Итерация От произволна начална мозайка от живи клетки на полето, наблюдателите ще видят как популацията се сменя постоянно поколение след поколение. Мозайките, които се образува от простите правила, могат да бъдат разгледани като форма на математическа красота. Малки изолирани подмозайки без начална симетрия имат склонността да се превръщат в симетрични. Веднъж случило се, симетрията може да стане по-богата, но не може да бъде изгубена освен ако съседна подмозайка не се приближи достатъчно близко, за да я разруши. В много малък брой случаи обществото умира изцяло, но това се случва след голямо количество поколения. Повечето начални мозайки „изгарят“ в един момент, оставяйки стабилни фигури или мозайки, които осцилират между две или повече състояния. Множество също произвеждат един или повече глайдера или совалки, които пътуват безкрайно надалеч от началната точка. Заради правилата, базирани на съседство, никаква информация не може да пътува по полето с по-голяма скорост от една клетка на период затова и тази скорост е определена като скоростта на светлината в клетъчните автомати и се обозначава с C.
Алгоритми