# Что может получиться из хаоса?

Эл П Яровер

Хаос и порядок в картинках и ассоциациях

Что может получиться из хаоса?


Вначале существовал лишь Хаос.

Легенды и мифы древней Греции


В природе нет случайности. Вещь может казаться случайной только из-за неполноты нашего знания

Барух Спиноза

------------------------------------------------------------------------------

По странному совпадению, когда я писал эту заметку, пришел майский номер журнала Physics Today за 2013 год, из которой я узнал о 50-летии открытия, сделанного физиком - метеорологом Массучузеттского Технологического Института Эдвардом Лоренцом (Edward Lorenz, 1917--2008) и имеющего самое прямое отношение к теме этой заметки. Как и всякое открытие, оно было сделано случайно как "серендипити". Вот как это было и что это было.


Эдвард Лоренц разрабатывал новый метод предсказания погоды, который, в отличие от имевшихся на то время так называемых методов линейного предсказания, был нелинейным. Линейное предсказание - это предсказание будущего наблюдения как средне-взвешенного по имеющимся наблюдением. Например, завтрашняя температура воздуха предсказывается путем суммирования сегодняшних, вчерашних и, скажем, также позавчерашних показаний термометра умноженных на какие-то весовые коэффициенты. Искусство предсказания было в выборе хороших коэффициентов. Для прогнозов на пару дней это работало, и то далеко не всегда.


Для того, чтобы улучшить прогностические модели, стали испытывать так называемые "нелинейные" модели, то есть модели, в которых весовые коэффициенты зависят от самих данных. Вот одну такую модель и исследовал Эдвар Лоренц. Он использовал для этого недавно появившиеся вычислительные машины, в которых данные вводились на перфокартах вручную.


Однажды, а точнее в один прекрасный день 1963 г., которому суждено было стать днем открытия, он, закончив один прогон программы модели, выдававшей предсказания по некоторым исходным данным, решил повторить эксперимент, чтобы более детально посмотреть, что происходит на его промежуточных этапах. Он переписал из распечатки исходные данные, оставив в числах для экономии три десятичных знака после запятой, так как был уверен, что небольшая погрешность в одну тысячную если и даст погрешность в эксперименте, то незначительную. С этими исходными данными он и запустил программу в работу, а сам вышел в холл выпить кофе, пока компьтер выдаст результат: предсказание погоды на два месяца вперед. Он вернулся примерно через час, посмотрел на распечатку и с удивлением обнаружил, что получил результат, совершенно не похожий на тот, который получил, вроде бы с теми же исходными данными, перед этим. Он решил, что причиной стала какая-нибуль поломка в компьютере. Компьютеры тогда были ламповыми с нитями накаливания, которые подогревали катоды, ламп было несколько тысяч, и весьма нередко случалось, что у какой-нибудь из этих тысяч ламп перегорал подогреватель. Чтобы поточнее решить, на какую лампу нужно грешить, он решил просмотреть все результаты предсказания по дням. И тут он заметил, что поначалу все результаты последнего эксперимента и предыдущего почти не различались в пределах той погрешности, с которой он записал исходные данные. Но постепенно различия стали нарастать со все увеличивающейся скоростью, так что конечное 2-х месячное предсказание не имело ничего общего с тем, которое было получено в первом прогоне программы. Так что дело оказалось не в компьютере.


Вот так в результате очередной серендипити (о серендипити см. http://world.lib.ru/editors/editors/j/jarower_e_p/serendipity.shtml) было совершено открытие, что в некоторых нелинейных системах небольшие изменения входных данных могут привести к радикальным изменениям выходных данных, из чего, в частности, следовало, что достаточно надежные долгосрочные прогнозы погоды невозможны. Как написано в Википедии, Эдвард Лоренц назвал это явление "эффектом бабочки": бабочка, взмахивающая крыльями в Айове, может вызвать лавину эффектов, которые могут достигнуть высшей точки в дождливый сезон в Индонезии ("эффект бабочки" вызывает и аллюзию к рассказу 1952 года Р. Брэдбери "И грянул гром", где гибель бабочки в далёком прошлом изменяет мир очень далекого будущего; также можно увидеть аллюзию к сказке братьев Гримм "Вошка и блошка", где ожог главной героини в итоге приводит ко всемирному потопу).


Это открытие послужило одним из истоков нового научного направления, которое пока имеет несколько названий: теория детерминированного хаоса, нелинейная динамика, теория самоорганизации, синергетика.


Другой исток этой науки возник на другом научном континенте, в биохимии примерно в те же 1950-60е годы. Химик Борис Павлович Белоусов в результате одного из экспериментов в 1951 году в реакции окисления лимонной кислоты броматом калия в кислотной обнаружил автоколебания. Течение реакции менялось со временем, что проявлялось периодическим изменением цвета раствора от бесцветного к жёлтому и обратно. Сообщение Белоусова об открытии было встречено в советских научных кругах скептически, поскольку считалось, что автоколебания в химических системах невозможны. Статью Белоусова дважды отклоняли в редакциях советских журналов, поэтому опубликовать результаты исследований колебательной реакции он смог только в сокращённом виде спустя 8 лет в одном ведомственном сборнике, выходившем небольшим тиражом (нужно ли здесь добавить, что, по свидетельству упомянутой статьи в Physics Today, коллеги Лоренца и научная общественность тоже весьма прохладно встретили его сообщения об открытом им явлении?). Но впоследствии эта статья стала одной из самых цитируемых в данной области. Механизм этой реакции был через несколько лет подробно изучен Анатолием Марковичем Жаботинским. Он обнаружил, что при определенных условиях в ней могут наблюдаться очень сложные формы поведения от регулярных периодических до хаотических. Эта реакция получила название колебаний реакции Белоусова-Жаботинского.


Однако пора к делу. То, о чем я собираюсь рассказать, детерминический хаос, как он возникает и что из него можно получить, имеет к этим открытия самое прямое отношение. Я собираюсь я показать в картинках, что и в хаосе можно при желании найти порядок, и из хаоса может получиться порядок, да такой, что и не скажешь, что это получилось из хаоса.


Все картинки, которые будут показаны, получены на компьютере с помощью программ, называемых датчиками случайных чисел. Эти программы широко используются в научных экспериментах по моделированию разных явлений методом "Монте-Карло", иными словами методом тыка. Для того, чтобы метод тыка дал хорошие результаты, нужно уметь по возможности равномерно перебирать возможные варианты. Для этого и нужны хорошие "датчики случайных чисел". А вот если датчик не очень хорош, он дает преимущественно одни варианты, и не дает другие, сколько его ни гоняй.


Эти числа называются случайными чисто условно для непрофессионалов. На профессиональном языке их называют "псевдослучайными", имея в виду, что они только кажутся "случайными". На самом деле эти числа получаются от одного и того же числа, называемого "зародыш", одно число за другим по вполне детерминированным правилам. Для каждого следующего числа "зародышем", является предыдущее. Это предыдущее число умножается на некоторое постоянное число, затем к результату прибавляется другое постоянное число, и следующее "псевдослучайное" число получается как остаток от деления полученной суммы на некоторое третье число. Последняя операция называется "вычислением по модулю". Собака зарыта в этой последней операции. После нее уже невозможно узнать, какое число было в начале.


Построить "хороший" датчик случайных чисел - большое искусство. Для этого нужно очень тщательно выбрать упомянутые три константы. Недаром отец современных компьютеров замечательный математик Джон фон Нейман писал: "Если кто-нибудь думает, что с помощью арифметических действий можно создать случайные числа, то он, конечно, сумасшедший".


Вот как выглядит последовательность более или менее "хороших" псевдослучайных чисел, созданная одной из самых распространенных стандартных программ-генераторов псевдослучайных чисел, если эти числа упорядочить так, чтобы представить их как "пиксели", то есть отдельные точки, картинки. Например, из первых, скажем, 500 чисел образовать первую строку картинки, из вторых - вторую и так далее.


Она выглядит в общем-то хаотически, хотя иной читатель, всмотревшись, может быть и увидит какие-нибудь осмысленные узоры, как иногда ночью в темном лесу нам порой может померещиться всякая чертовщина.


А вот, что получится, если в этой программе немного изменить её числовые параметры.


Не правда ли, похоже на капли дождя в дождливый день? Хаотично, но явно ощущается некоторый "порядок".


Или вот еще примеры. Вот эта картинка, не напоминает ли она волны на море?


А это очень похоже на полярное сияние, не правда ли?


А вот это звездное небо, не так ли?


Можно привести ещё много примеров того, что дает непосредственно датчик "случайных" чисел, если изменять три его числовые параметра. А какое разнообразие можно получить, манипулируя всячески с этими случайными числами! Например, эти кружева получены из той же начальной хаотичной картины.


И эта картина "под дерево" тоже:


И эта новогодняя открытка к началу нового тысячелетия. Видите на ней число 2000, как бы выложенное еловыми ветками?


И эти картины облаков в ясный день


и в лунную ночь


Или всякие замысловатые узоры вроде этого:


или этого


и многое другое....


Напомним, что все эти картинки получены из исходных совершенно хаотичных картинок, пример которых был показан в самом начале, а сами эти исходные картинки получаются в пиксель за пикселем, строка за строкой из одного числа, "зародыша", в процессе эволюции через некоторое число шагов. Показанные выше картинки - ветви на дереве такой эволюции. На них эволюция была остановлена. Это как бы "ископаемые остатки".


А что, если сделать так, чтобы на каждом шаге итерации каждый пиксель изменялся в зависимости не только от "предыдущего" пикселя в процессе сканирования, а от своего окружения сверху, снизу и с боков по определенным правилам, содержащим необратимые операции?


Хороший пример здесь дает математическая игра "Жизнь", придуманная британским математиком Джоном Конвеем (Martin Gardner The fantastic combinations of John Conway's new solitaire game "life" // Scientific American. -- Vol. 223, N 4 (October 1970). -- P. 120--123.). Правила этой игры предельно просты.


Представьте себе листок бумаги в клетку. Каждая клетка может быть чёрной (мёртвой) или белой (живой). Эволюция происходит шагами. На каждом шаге все те живые (белые) клетки, которые имеют меньше двух или больше трёх живых соседей из восьми (три сверху, три снизу и два по бокам), умирают, то есть превращаются в чёрные. А во всех тех мертвых (чёрных) клетках, у которых ровно три из восьми соседей живые (белые), происходит "рождение", то есть они становятся белыми. Вот и всё, все правила. И при этих очень простых правилах правилах игра "Жизнь" порождает невероятно многообразный и фантастический мир самых разнообразных узоров.


Одни из них, единожды возникнув, остаются потом неизменными, то есть живут вечно. Другие, оставаясь стабильными, демонстрируют временнЫе циклы: если на них смотреть, иные из них напоминают мерцающие созвездия, иные - как маятники, как например, узор известный под названием "светофор": горизонтальная черта переходит на следующем шаге в вертикальную, а та потом обратно в горизонтальную, и так до бесконечности.


Пример одного из этапов эволюции игры "Жизнь". Все узоры на этой картинке, за исключением горизонтальных и вертикальных чёрточек - стабильны, и, возникнув, не меняются в процессе дальнейшей эволюции. А вертикальные и горизонтальные черточки попеременно превращаются друг в друга, то есть мигают от этапа к этапу как светофоры


Третьи, так называемые "планеры"", вообще движутся по полю с каждым шагом эволюции,


Пушка (верхний узор), стреляющая "глайдерами" (четыре нижних узора). Первый сверху глайдер - только что рожден. Остальные три - рожденные двумя, тремя и чутырьмя тактами раньше и сместившиеся от места рождения на соответствующие растояния


Они движутся по полю, пока не наткнутся на один из стабильных или периодических узоров. Тогда происходит взрыв, узоры разрушаюся, и из нового хаоса потом постепенно рождаются новые стабильные, периодические или подвижные узоры. Жаль, что нет возможности показать этот дивный мир в на печатных страницах. Это все можно запустить также и в трех измерениях, то есть не на плоскости листа, а в объеме. Вот только визуализировать и наблюдать это непросто.


А если правила немного другие, в процессе эволюции могут возникнуть почти периодические узоры лабиринтообразные с хаотическими дислокациями. Интересно, что они напоминают многие узоры встречсающиеся в живой и неживой природе, такие как узоры магнитных доменов, полосы на шкурах зебр или тигров, или на отпечатках пальцев. И можно видеть как эти узоры постепенно вырастают из полного хаоса. Вот такие, например:


Лабиринто-подобный стабильный узор, возникший в процессе эволюции (слева) и примеры природных узоров (справа)


Любопытно, что эти узоры-лабиринты демонстрируют замечательно интересные свойства. Например, их фрагменты, вырезанные из стабильной картинки, полученной в результате эволюции, возобновляют эволюцию и продолжают расти, пока не вырастут до размеров первоначальной картинки, хотя, конечно, это это будет уже другой узор. Он совпадает с первоначальным только в своей центральной части, из которой начался рост.


Восстановление узора-лабиринта (справа) из фрагмента (слева). В центре - промежуточный этап эволюции


Они также способны к "самозалечиванию" повреждений и трансплантации.


"Затягивание раны". Слева - стабильный лабиринообразный узор с вырезанным круглым отверстием-"раной", в центре - промежуточный этап затягивания раны в процессе эволюции, справа - полное заполнение отверстия


Закономерности эволюционного поведения этой и других подобных моделей очень поучительны и во многом не изучены. Они важны для понимания многих естественных явлений, от роста клеток и опухолей в живых организмах до формирования стай птиц и поведения толп. Это предмет науки нелинейной динамики и детерминистического хаоса. Хаоса, потому что в процессе эволюции происходят необратимые преобразования. Из-за них обратно процесс распутать нельзя и, стало быть, путешествие во времени в прошлое принципиально невозможно. Невозможно также и предсказание будущего, потому что сколь угодно малое взаимодействие с другими процессами может привести к непредсказуемым изменениям - явление, которое и было открыт Эдвардом Лоренцом в 1963 году. Но детерминистического, потому что все происходит по твердым, фиксированным законам.


Так что на вопрос, что может получиться из хаоса, ответ: все что угодно! Лишь бы хаос был хороший! Чем лучше, то есть чем хаотичнее хаос, тем больше возможностей он содержит. Но нужно ещё уметь эти возможности не упустить!