Всё об искусственном интеллекте за 60 минут - Питер Дж. Бентли
Шрифт:
Интервал:
Закладка:
Моделирование реальности – дело непростое, и основано оно на очень тщательном сборе и использовании данных. Есть поговорка Garbage in, garbage out, что значит «мусор на входе – мусор на выходе». Если ваша модель неверна, то нельзя ожидать, что ее прогнозы будут точными. Все модели ошибочны по своей природе, поскольку наши компьютеры недостаточно мощны, чтобы учитывать каждый аспект реальности. Задача состоит в том, чтобы смоделировать те из них, что являются причиной интересующего нас поведения, и пренебречь всеми остальными. Поэтому исследователи должны пытаться создавать абстракции и упрощения реальности, которые одновременно достаточно мощные, чтобы дать нам новые ответы, и достаточно простые, чтобы компьютеры могли выполнить эти симуляции за разумное время. Необходимо тщательно откалибровать каждую часть моделей, убедиться, что все верно и соответствует действительности. Любые неправильные прогнозы, сделанные в соответствии с моделью, должны использоваться для дальнейшего уточнения модели. Общая критика экономических моделей заключается в том, что те редко подтверждаются реальными данными и часто предполагают, что люди будут вести себя рационально. Это может привести к крайне неточным прогнозам, которые мало чем помогут при попытке стабилизации или регулирования изменчивых и хаотичных рынков.
Мусор на входе – мусор на выходе. Или, перефразировав более удачно: дерево бессмыслицы поливают ошибками, и на его ветвях раскачиваются тыквы бедствия.
Многие описанные в предыдущих главах методы ИИ можно рассматривать как виды компьютерного моделирования. Виртуальные существа Карла Симса, например, – простая симуляция эволюции жизни в виртуальной среде. Ранние идеи искусственных нейронных сетей были основаны на понимании того, как работают нейроны в человеческом мозге. Многие алгоритмы оптимизации базируются на простых представлениях о том, как функционируют живые системы: генетические алгоритмы вдохновлены естественной эволюцией, алгоритм муравьиной колонии основан на том, как муравьи коллективно находят кратчайшие пути от гнезда к пище, алгоритмы искусственной иммунной системы – как наши иммунные клетки обнаруживают и реагируют на патогены. Алгоритмы машинного обучения создают простые «модели» изучаемых ими данных, которые можно использовать для прогнозирования.
Существуют и другие методы, разработанные специально для моделирования и симуляции. Модели часто опираются на множество систем уравнений, например дифференциальных, решения которых характеризуют поведение электрической цепи или химических процессов. Пространственные модели (они пытаются установить, как физические объекты могут вести себя в реальном мире) обычно делят пространство на маленькие части и определяют состояние внутри каждой из них, следуя уравнениям. Гидродинамическое моделирование применяет этот подход для расчета сложного поведения газов и жидкостей, что позволяет уточнять конструкции самолетов, а такой прием, как анализ методом конечных элементов, отлично подходит для расчета нагрузок на различные строения перед их созданием, за счет чего можно проектировать безопасные конструкции, используя правильные материалы.
Клеточные автоматы использовались в ИИ в течение многих десятилетий для моделирования всего: от химических реакций до физических сред. Базовый клеточный автомат – это простая решетка, состоящая из заполненных или незаполненных ячеек. При запуске моделирования время разбивается на отдельные этапы, и в рамках каждого из них компьютер перебирает элементы одной из ячеек, следуя простым правилам. Например, если заполнены две соседние ячейки, то и «исследуемая» ячейка заполняется, в противном случае она пустует.
Если люди не верят, что математика проста, то только потому, что они не понимают, насколько сложна жизнь.
ИГРА «ЖИЗНЬ» ДЖОНА КОНВЕЯ
В игре «Жизнь» заполненная ячейка считается «живой», а пустая – «мертвой». И есть четыре простых правила для клеточных автоматов:
Низкая численность: живая клетка, у которой меньше двух живых соседей, умирает.
Жизнь: живая клетка с двумя или тремя живыми соседями остается в живых.
Перенаселенность: живая клетка, у которой больше трех живых соседей, умирает.
Размножение: мертвая клетка с тремя живыми соседями становится живой.
Несколько случайно расположенных клеток заполняются и становятся живыми, после чего запускается симуляция, и в результате образуются странные модели роста. Иногда клетки вымирают, иногда превращаются в маленькие колеблющиеся устойчивые формы. Если придать клеточным автоматам правильную сложную форму, они смогут даже копировать сами себя – и в игре «Жизнь» образуется «универсальный конструктор фон Неймана».
Концепцию клеточных автоматов впервые предложил математик Станислав Улам, которого заинтересовала идея Джона фон Неймана, и он захотел смоделировать жидкость, содержащую электромагнитные компоненты. И Улам, и Нейман были очарованы этой идеей, и она привела их к предположению, что живые системы могут быть самовоспроизводящимися и способными имитировать машину Тьюринга (решать все задачи, выполняемые компьютерами).
Фон Нейман определил «универсальный конструктор» как машину, которой под силу создавать идентичные копии себя, обрабатывая свою среду. Он использовал алгоритм клеточных автоматов, чтобы объяснить, как может работать универсальный конструктор. В 1970 году британский математик Джон Конвей вдохновился этой идеей и спроектировал специальный вид клеточных автоматов, ставший известным как игра «Жизнь».
ФОРМА ФИГУР
Некоторые ученые утверждают, что клеточные автоматы могут объяснить принцип работы биологических систем и даже Вселенной. Стивен Вольфрам, программист и создатель популярного программного обеспечения Mathematica, – один из таких людей. «Возможно, немного унизительно обнаружить, что мы, будучи людьми, в вычислительном отношении не более эффективны, чем клеточные автоматы с очень простыми правилами, – заключает он. – Но принцип вычислительной равнозначности подразумевает, что то же самое в конечном счете верно для всей нашей Вселенной».
В то время как клеточные автоматы разделяют пространство и время на маленькие кусочки, другие виды моделей менее строги. Агентное моделирование развилось из работы фон Неймана над клеточными автоматами, и в итоге превратилось в самостоятельный научный метод. (Похоже звучащие многоагентные вычисления – это еще один связанный с ИИ подход, который рассматривает, как программные агенты взаимодействуют при решении проблем, но уделяет меньше внимания моделированию и фокусируется больше на практической стороне.)