Компьютеры совершили переворот в процессе создания и познания моделей. Появилась возможность делать их всё более реальными и живыми. Разумеется, наибольшее развитие это получило в компьютерных играх. Стало возможно погружаться в эти миры, например, бегая по промышленной базе на Фобосе и расстреливая демонов из плазмагана.
Но, к сожалению, как правило, такие миры статичны и абсолютно предсказуемы. Их обитатели действуют по заданному шаблону, они оживают лишь с появлением протагониста. И поневоле возникает вопрос: а нельзя ли создать такой мир, чтобы его обитатели были совершенно независимы и непредсказуемы в своих действиях. Такой, чтобы в нём росли трава и деревья, жили животные. Именно жили: рождались, старились, нуждались в пище, воде и сне, взаимодействовали друг с другом, боролись за жизнь.
В играх давно пытаются приблизиться к этому идеалу. Мир «Космических рейнджеров» содержит массу авантюристов, не обращающих на протагониста большого внимания. В «Обливионе» обитатели спят, завтракают, работают, а то и дерутся, совершенно независимо от игрока. Хотя драки, как правило, заканчиваются тем, что в конце концов прибегают стражники, рубят всех смутьянов мечами и в нашей карманной вселенной воцаряется мир и спокойствие.
Такие миры можно создать с использованием «агентного моделирования». Это совсем новое направление в моделировании, появившееся в 90-х годах. Оно изучает правила и законы системы, состоящей из агентов. Агент — некая сущность, обладающая активностью и автономным поведением. В сети немало бесплатных систем, позволяющих создать свой маленький двухмерный мир, населённый активными существами, например, Starlogo. В комплекте с ним идёт ряд готовых примеров для запуска: мир, заселённый кроликами, поедающими траву, симуляция пробок на дорогах, симуляция распространения инфекции. С их помощью можно понять, как важен баланс и как легко его можно нарушить. Извлеките кроликов из среды на несколько секунд и поместите их обратно — произойдёт взрывной рост их популяции, а количество травы упадёт до минимума. Далее последует такое же взрывное уменьшение их числа и полное вымирание. Кролики не успевают дожить до того момента, когда их мир снова зазеленеет.
А что если задать агентам все свойства живых существ? Дать им возможность адаптироваться к условиям внешнего мира, размножаться и передавать свои характерные черты по наследству. При этом сделать окружающий мир жестоким, с минимальными шансами на выживание у плохо приспособленных особей. Тогда получится то, что называется «искусственной жизнью», или a-life.
Искусственная жизнь — это наука, занимающаяся изучением жизни, живых систем и их эволюции при помощи созданных человеком моделей. Эволюционное развитие при этом реализуется через генетический алгоритм. Появилась она совсем недавно — в 80-х годах прошлого века. Как правило, под искусственной жизнью подразумевают мягкую (soft), компьютерную жизнь.
Миры с такой жизнью часто поражают воображение. Например, создадим бесконечный океан, населенный комками биомассы. Комки не имеют разума и органов чувств, но способны передвигаться благодаря рефлекторным сокращениям. По достижении определённого возраста они могут поделиться надвое, потомки унаследуют форму и способности к передвижению (с небольшими мутациями). Хозяевами в океане являются быстрые, хищные акулы, которые едят всё, что поймают. Поначалу кажется, что биомасса может противопоставить хищникам только скорость размножения. Но уже через 100 поколений океан становится заполнен разнообразными видами червей, некоторые из которых могут посоревноваться с акулами в скорости. Подождём ещё несколько сотен поколений. Бесформенные комки протоплазмы исчезли — по океану снуют быстрые, торпедообразные рыбы, некоторые даже с плавниками. Акулы же переживают тяжёлые времена: в пищу им достаются только немногие, медлительные особи — следствие неудачных мутаций.
Дав беззащитной протоплазме всего лишь шанс на эволюцию, мы спасли её от вымирания.
Интересное замечание: в мире с неисчерпаемыми источниками энергии и пищи любая экосистема превращается в однородную массу виртуальных существ с одинаковыми характеристиками. Другими словами, в обществе реального изобилия развитие вообще становится невозможным. Вспоминается аналогичный опыт на дрозофилах: если дать мушкам идеальные условия для обитания, при которых будут выживать все потомки — вырождение начинается всего через несколько поколений. Так что рай и всеобщее процветание, похоже, недостижимы.
Сходу приходит на ум множество практических применений такой модели (например, создать истребитель идеальной формы, вырастить супер-игрока на бирже). Нужно лишь создать динамическую модель среды, населить её множеством разновидностей своего объекта и дать им пожить. Слабые особи будут отмирать, сильные — скрещиваться, закрепляя в новых поколениях свои лучшие черты. Через несколько тысяч поколений возникнет «цивилизация» практически неуязвимых особей, идеально приспособленных к заданному миру. Не факт, что эти существа будут соответствовать вашим представлениям о прекрасном (или вообще быть близки к чему-то ожидаемому). Но выживаемость решения, прошедшего жесточайший отбор, будет достаточной, чтобы противостоять любым действиям конкурентов.
Эту методику используют при моделировании многие представители большого бизнеса (в том числе Ford). Только вместо океана здесь мировой рынок, населённый акулами-конкурентами. А вместо биомассы — россыпь фирм. А ученые Университетского колледжа Лондона в 2004 году успешно применяли генетические алгоритмы для совершенствования гоночных машин «Формулы 1». Хромосомы компьютерных моделей автомобилей насчитывали 68 генов, модели постоянно проходили испытания на двух виртуальных маршрутах, пока лучшая «особь» не побила рекорды трасс.
Наконец, a-life позволяет изучать процессы эволюции, ведь в них таится немало загадок. Например, как в процессе развития мог возникнуть глаз — ведь недоразвитые «промежуточные» глаза крайне неэффективны.
Как известно, теория без возможности применения никому не нужна. Для практического использования доступны пакеты Evolver и GeneHunter. Ну, а «бедные студенты» могут поискать сайты, статьи и книги по генетическим алгоритмам и искусственной жизни.
На практике же эта технология может быть применена для решения задач по оптимизации. Например, фирма по сборке компьютеров, используя GeneHunter, сможет рассчитать, какие комплектующие нужно покупать для сборки компьютеров на максимальную сумму.
Тема искусственной жизни немало обыгрывалась в фантастике. Если в фильме «Матрица», или рассказе Пейджа Джералда «Счастливец» компьютерные симуляции используются для контроля над обществом, то в фильме «13 этаж» ставится вопрос об этичности создания искусственных миров. А всем известный «Терминатор» показывает опасность искусственной эволюции.
Увидеть миры, заселённые эволюционировавшими существами, можно здесь.
Тимур Шакиров, в статье страдает терминология. К примеру, искусственная жизнь - это не наука, а предмет науки. Жизнь есть форма существования белковых тел. Так что в статье речь идёт скорее не об искусственной жизни, а об искусственном интеллекте. А искусственная жизнь пока не создана и вряд ли скоро будет создана.
Создатели компьютерных технологий часто выдают желаемое за действительное. Вот и Вы попались на эту удочку.
0 Ответить
Богдан С. Петров,
Во первых, чёткого определения жизни вообще нет.
Во вторых, вы статью то читали? Ничего про интеллект я не писал. Определение же можно увидеть здесь: http://ru.wikipedia.org/wiki/%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F_%D0%B6%D0%B8%D0%B7%D0%BD%D1%8C
Искусственная жизнь (англ. a-life) — изучение жизни, живых систем и их эволюции при помощи созданных человеком моделей и устройств
Оценка статьи: 5
0 Ответить
Тимур Шакиров, кстати, то направление науки, на которое Вы ссылаетесь, выделилось в 1980-х годах из изучения искусственного интеллекта, так что я прав.
0 Ответить
Тимур Шакиров, чёткое определение жизни есть, и я Вам его привёл. Чтобы изучать жизнь, надо знать, что такое жизнь, а без такого знания моделирование невозможно. Всё остальное - на Вашей совести.
0 Ответить
Мне не понравилось то что на этом сайте рекламный flash банер толетки работает без лагов а вот в видео по теме "Что такое искусственная жизнь?" картинка лагает жёстко , смотреть невозможно . Кстати можно было бы сделать ускоренную версию этого видео а то 30 мин. на просмотр это слишком.
0 Ответить
Сергей Белка, флэш рекламный - файл на сайте, а видео - физически лежит на Google Video. И это лишь дополнительный материал, основное для нас - все же статьи.
0 Ответить
Фантастика, Тимур! И тема, и текст и стиль.
Кстати, увидев заглавный принт-скрин я сразу вспомнила флору и фауну Аватара Вот и примерная яркая визуализация. Даже без картинок в самой статье
Оценка статьи: 5
0 Ответить
Спасибо )
Оценка статьи: 5
0 Ответить
Очень интересно.
Оценка статьи: 5
0 Ответить
Тимур Шакиров, замечательно.
Оценка статьи: 5
0 Ответить
Очень интересная статья. Спасибо!
0 Ответить
Это первая пробная статья. Изначально она была в 3 раза больше. Но после того как я наткнулся на ограничение в 6500 символов - пришлось её существенно уменьшить. Поэтому получилось так сухо и отрывисто.
Оценка статьи: 5
0 Ответить
Тимур, посмотрите в моем блоге правила использования изображений.
За статьи со ссылками не начисляются бонусы, поэтому, раз это не ссылки на источники, их можно дать здесь в комментариях.
Ролики можно просто поместить в комментарии или в отдельное сообщение в блоге - там, где они размещены, нажать "Встроить видео", скопировать код и вставить его в Ваш комментарий здесь.
0 Ответить
Марианна Власова,
Все картинки простые принт-скрины. Первые две - с существ, которых можно скачать бесплатно (как и софт для их моделирования)
Третья - принт-скрин из программы моделирования боевых действий (тоже бесплатной)
Интересно, какая на них действует лицензия ))
Ещё возник вопрос, какие теги можно использовать при оформлении текста (вставить br у меня не получилось)
Оценка статьи: 5
0 Ответить
Тимур Шакиров, лицензия - Creative Commons, какая именно разновидность - надо смотреть, разницу между ними можно узнать, пройдя по ссылке из "Правил использования изображений".
Вставлять br не надо, жмите просто на Enter. В интерфейсе есть кнопки форматирования текста, как и в комментариях.
0 Ответить