Том 33. Разум, машины и математика. Искусственный интеллект и его задачи - Игнаси Белда
Шрифт:
Интервал:
Закладка:
В этой главе рассказывается об искусственных системах, имитирующих поведение живых организмов, а также о вычислительных системах, построенных на основе живых организмов.
Процессоры современных компьютеров состоят из сотен миллионов транзисторов, в которых все вычислительные операции выполняются с помощью электрических сигналов. Транзисторы — безжизненные объекты, изготовленные из неорганических элементов, например кремния.
Но можно ли заменить транзисторы живыми организмами, состоящими из клеток? В последнее время биологам и физикам удалось решить эту задачу и заставить живые клетки выполнять математические действия, подобно транзисторам. Следовательно, в будущем ученые смогут создать системы искусственной жизни на основе биологических вычислений. Станут ли компьютеры будущего живыми существами, которые будут питаться обычной едой, а не электричеством?
Сложные адаптивные системыЧтобы упростить определение понятия «жизнь», некоторые эксперты предложили более общее понятие сложной адаптивной системы. Сложная адаптивная система — это агент или совокупность агентов, действующих совместно, при этом достаточно разумных, чтобы адаптироваться к окружающей среде, когда поведение других систем меняется. Под определение сложной адаптивной системы подпадает более широкий спектр живых систем, чем те, что приходят нам в голову, когда мы слышим термин «живой организм». К сложным адаптивным системам относятся иммунная система человека, торговая корпорация или целая экосистема. Пример с корпорацией достаточно любопытен, поскольку вряд ли ее можно считать «живой». Однако если тщательно подумать, то станет очевидно: корпорация рождается, растет, может оставить потомство и умереть. В большинстве европейских стран корпорации имеют почти такие же права и обязанности, как и обычные люди, да и названия у них схожи: если людей называют физическими лицами, то корпорации — юридическими лицами.
Ученые сходятся на том, что сложную адаптивную систему определяют семь характеристик: четыре свойства и три механизма. Сочетание этих основных характеристик порождает новые свойства и механизмы. Определение сложной адаптивной системы носит несколько более общий характер, чем определение самого понятия «жизнь» с точки зрения биологии: мы никогда не назвали бы финансовую компанию или город живыми. Поэтому неоднозначный термин «искусственная жизнь», определить который совсем не просто, обычно используется разве что в сенсационных заголовках и в рассуждениях дилетантов.
* * *
SIMCITY И СЛОЖНЫЕ АДАПТИВНЫЕ СИСТЕМЫ
Города — прекрасные примеры сложных адаптивных систем. Компьютерная игра SimCity, позволяющая строить города и симулировать их жизнь, — прекрасная возможность познакомиться со сложными адаптивными системами: сама игра наполняет города жителями, генерирует социальную и рыночную активность и ставит игрока перед сложными ситуациями, требующими решения (разрушение коммуникаций или стихийные бедствия).
Еще одна компьютерная игра, дающая возможность познакомиться со сложными адаптивными системами, — Civilization, ее цель — создать целую конкурентоспособную цивилизацию с городами, путями сообщения, оборонительными сооружениями, заключить торговые договоры с соседями, определить социальную и научную политику.
Город, построенный в игре SimCity.
Первое свойство: агрегирование
Агрегирование — это объединение простых сущностей, в результате которого образуется система, более сложная, чем сумма ее составных частей. Представьте себе муравейник и муравьев — адаптируемость всей колонии к изменениям среды намного выше, чем адаптируемость отдельного муравья. Простые сущности, образующие систему, называются агентами.
Агрегирование является рекурсивным процессом: агент, возникший в результате агрегирования других, более простых агентов, может объединиться с другими агентами того же или другого вида и образовать агрегированный агент второго уровня.
К примеру, результатом агрегирования конечной продукции, потребленной обществом, капиталовложений и государственных расходов будет валовый внутренний продукт страны.
Следует отметить, что коммуникация между элементами одной категории или между элементами, образующими объект более высокого уровня, не является частью агрегирования, однако без нее адаптация к среде невозможна.
Первый механизм: присвоение меток
Присвоение меток — механизм, активно упрощающий агрегирование агентов. Присвоение меток не только упрощает идентификацию агентов, но и помогает разрушить симметрию, часто возникающую при агрегировании в сложных системах. К примеру, если мы начнем вращать белый бильярдный шар в одном направлении и на его поверхности будут отсутствовать какие-либо метки, то наблюдатель едва ли сможет увидеть, что шар вращается, и тем более не сможет определить скорость вращения.
Если же мы нанесем на поверхность шара метку в любой точке за исключением тех двух, в которых ось вращения шара пересекает его поверхность, то наблюдатель легко сможет определить направление и скорость вращения.
Агенты при агрегировании помечаются множеством разных меток, начиная от штандартов с изображением орла — отличительных знаков римских легионов, и заканчивая сложными метками, которыми современные телекоммуникационные устройства помечают передаваемые сообщения (эти метки указывают, в каком порядке следуют части сообщения, чтобы получатель мог восстановить сообщение целиком, а также содержат сложные механизмы обнаружения возможных ошибок в сообщении или самой метке в процессе передачи). Разумеется, не все метки должны быть видимыми: к примеру, млекопитающие обоих полов, принадлежащие к определенным видам, в период спаривания выделяют невидимые глазу вещества — феромоны.
Метки упрощают избирательное взаимодействие между агентами, так как позволяют различать экземпляры одного и того же класса агентов или различные составные части агента. На основе меток возможна реализация фильтров, схем сотрудничества, а также видообразование. Агенты также могут сохранять агрегированное состояние, и их метки будут оставаться неизменными, даже если будут меняться составные части агента более высокого уровня. По сути, нанесение меток — механизм, упрощающий организацию агентов и коммуникацию между ними.
Второе свойство: нелинейность
Свойство линейности лежит в основе множества математических дисциплин, начиная от арифметики и заканчивая алгебраической топологией, не говоря уже о дифференциальном исчислении. Функция линейна, если ее значение представляет собой всего лишь взвешенную сумму ее аргументов (независимо от их значений). К примеру, функция 4х + 2у — z линейна, функция 4 sinx — 2y-z — нет.
Использование линейных методов в математике и инженерном деле настолько важно, что сегодня большая часть профессиональной деятельности любого инженера и ученого заключается в поиске линейных функций, максимально точно описывающих те или иные явления природы. К сожалению, ни один из этих методов неприменим для изучения сложных адаптивных систем. По сути, одна из важнейших особенностей таких систем заключается в том, что их совокупное поведение намного сложнее суммы поведений отдельных частей, из чего, по определению, следует нелинейность.
Прекрасный пример, иллюстрирующий нелинейности в природе и сложных адаптивных системах, — взаимодействие «производитель — потребитель» и его частный случай — взаимодействие «хищник — жертва». Представьте себе лес, где живет D хищников (например, лис) и Р жертв (например, зайцев). Если вероятность того, что лиса поймает зайца, равна с, то ежедневно в лапы лис попадает с∙Р∙D зайцев. К примеру, если с = 0,5, D = 3 и Р = 10, то лисы поймают с ∙Р∙D = 0,5∙3∙10 = 15 зайцев. Если число лис и зайцев увеличится вчетверо, число пойманных зайцев возрастет еще больше: с∙Р∙D = 0,5∙12∙40 = 240. Как видите, этот результат нельзя получить простым сложением числа хищников и жертв.
Даже в сравнительно простой ситуации нелинейность может серьезно повлиять на агрегированную систему. Поэтому всегда говорят, что совокупное поведение сложной адаптивной системы сложнее, чем поведение ее составных частей.
* * *
МОДЕЛЬ ЛОТКИ — ВОЛЬТЕРРЫ
Уравнения, описывающие пример с лисами и зайцами, могут значительно усложняться. Исследователь Альфред Джеймс Лотка описал, как изменятся эти уравнения, если мы будем учитывать колебания численности хищников и жертв с течением времени. Допустим, что D(t) и P(t) — численность хищников и жертв в момент времени t. В каждый момент времени рождается n и умирает m хищников. Следовательно, формула, описывающая изменение численности хищников с течением времени, записывается так: D(t + 1) = D (t) + nD(t) — mD(t). Аналогично изменение численности жертв описывается уравнением: Р(t + 1) = Р(t) + n'Р(t) — mV(t). Следует учесть, что рост числа жертв означает рост рождаемости хищников, что можно выразить, к примеру, с помощью постоянной r.