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

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

Перечисленные пространства встречаются чаще иных, поскольку они лучше всего подходят для анализа и построения на них геометрии. Это, в свою очередь, связано с тем, что гладкие многообразия, в известном смысле, очень похожи на привычное нам пространство. По крайней мере, для любой точки такого многообразия можно найти открытую окрестность, топологически неотличимую от окрестности точки евклидового пространства. Таким образом, маленькому обитателю гладкого многообразия, проведением локальных наблюдений, будет очень трудно отличить его от евклидового мира. Именно оттого, что поверхность Земного шара имеет топологию сферы (гладкого компактного многообразия) так непросто поверить в то, что она не плоская, если перемещаясь по ней, рассматривать окрестности не далее нескольких километров.

Однако нас окружают объекты, для описания которых многообразий уже не хватает. Например, коническая поверхность похожа на цилиндр и даже легко разворачивается в плоскость, однако она имеет особенность — острую вершину. В предыдущихстатьях нам встречались и несколько более экстравагантные пространства: например, полукуб, который будучи развёртываемым, имеет топологию проективной плоскости и почти всюду кроме семи особых точек является плоским. Наконец, рассматривая пространство всех мыслимых треугольников, мы построили карту этого пространства, а потом выделили на ней фактор-пространство, «вынеся за скобки» (факторизовав) группу симметрии правильного треугольника.

Математики не могли пройти мимо таких пространств без того, чтобы не формализовать их и не назвать особым словом: орбиобразие (орбифолд). По-русски оно звучит коряво, но зато точно передаёт смысл своего английского аналога, полученного соединением слов orbit (орбита) и manifold (многообразие).

Орбитой называют множество всех точек пространства, получаемых действием некоторого преобразования на выделенную точку. Если преобразование, о котором мы говорим, является элементом группы симметрии некоторого многообразия X, то орбитами некоторой одной открытой области, её называют фундаментальной, можно покрыть всë X целиком. При этом покрытие будет бесшовным, то есть, никакие две точки из фундаментальной области не окажутся отображаемыми в одну, и почти никакая точка многообразия не останется без своего прообраза из фундаментальной области. Слово «почти» здесь имеет точный смысл и означает, что исключения, всё же есть, но они образуют на многообразии множество нулевой меры: отдельные особые точки.

В качестве примера рассмотрим поверхность конуса. Еë можно развернуть в плоский угол, помня, что две его стороны должны быть склеены, чтобы образовать непрерывную поверхность. Если полученный плоский угол делит 360° на целое количество частей, то его копиями можно замостить всю плоскость, применив к углу преобразование поворота на 360°/n.

Развертка конуса в орбиобразие.
Развёртка конуса в орбиобразие.

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

Для орбиобразий принята система обозначений, основанная на перечислении особых точек и их типов. Я не буду загромождать эту статью еë объяснением, но для справки буду приводить имена встречающихся примеров, заключая их в скобки. В частности, конус, развертка которого делит плоскость на n одинаковых частей, будет иметь обозначение (n*).

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

Я не даю здесь точное определение, но и мой блог — не учебник, так что жаждущих точности, с лёгким сердцем приглашаю справиться в энциклопедии. Главное, зачем я вообще завёл речь об этих пространствах состоит в том, что эти абстракции окружают нас, буквально повсюду и могут очень красиво выглядеть. Научившись их распознавать, можно расширить кругозор и развить особое качество мышления, которое называется, интеллектом натуралиста, делающее жизнь богаче.

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

Зазеркалья и калейдоскопы

Глядя на чистое, хорошо вымытое зеркало, мы не видим границы между нашим миром и его отражением. Зеркало, отражая обитаемое нами полупространство (фундаментальную область), дополняет его в новое пространство — орбиобразие (*), обладающее всеми свойствами трёхмерного евклидового мира (R^3), за исключением того, что все геометрические и оптические явления в нём должны обладать зеркальной симметрией. Мы увидим, что полученное пространство заполнено парными объектами, покоящимися и двигающимися совершенно одинаково относительно плоскости симметрии.

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

Счастливый малыш в орбиобразии (*) знакомится со своей орбитой.
Счастливый малыш в орбиобразии (*) знакомится со своей орбитой.

Два зеркала, поставленные параллельно друг другу, строят более сложное иллюзорное пространство — орбиобразие (*∞∞). Оно имеет вид полноценного трёхмерного мира, заполненного уходящим вдаль «коридором» с многочисленными парами зеркальных копий области, расположенной между зеркалами. Самих зеркал мы при этом не видим, зато мы наблюдаем многочисленные копии всех точек фундаментальной области, в которой находимся.

Фотограф, попавший в орбиобразие (*∞∞)
Фотограф, попавший в орбиобразие (*∞∞)

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

Картинка, нарисованная в программе Inspirit. Здесь использована кристаллографическая группа симметрии p4m, образующая на плоскости орбиобразие (*442).
Картинка, нарисованная в программе Inspirit. Здесь использована кристаллографическая группа симметрии p4m, образующая на плоскости орбиобразие (*442).

Орбиобразием (*3) описывается пространство мира треугольников, в котором каждая точка имеет множество копий, созданных группой симметрии правильного треугольника, совпадающего с группой перестановок трёх элементов (углов треугольника) .

Пример орбиобразия, представляющего факторизацию открытого диска по группе симметрии правильного треугольника.
Пример орбиобразия, представляющего факторизацию открытого диска по группе симметрии правильного треугольника.

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

Клеточные автоматы

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

Самый известный пример клеточного автомата — это игра "Жизнь" Джона Конвея, в которой простые и симметричные правила порождают крайне разнообразные структуры, обладающие нетривиальным поведением и даже вычислительными способностями.

В большинстве автоматов состояние каждой ячейки полностью определяется состоянием еë соседей. На плоской квадратной решётке это могут быть восемь соседей примыкающих к краям и по диагоналям.

Пример окрестности чёрной клетки (зеленые клетки) .
Пример окрестности чёрной клетки (зеленые клетки) .

Правила взаимодействия клеток с соседями и количество возможных состояний клеток определяют конкретный автомат. Для получения красивых изображений я выбрал несколько из них:

  • упомянутую выше игру "Жизнь";

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

  • автоматы, моделирующие автокаталитические химические реакции (перемешивающий автомат Герхарда-Шустера, и конечно-разностную модель "реакция-диффузия" Грея-Скотта), в которых состояния клетки образуют континуум.

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

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

Специально для этой статьи (и для своего математического кружка) я написал несложную онлайн программу, которая позволяет полюбоваться тем, как работают перечисленные выше клеточные автоматы на двенадцати орбиобразиях с симметриями, допускающими использование квадратной решётки. С её помощью вы можете сами поэкспериментировать с этими автоматами. Рекомендую при этом использовать компьютер, а не телефон. Если сервер программы окажется перегружен, то страничку можно будет скачать из этого репозитория.

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

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

Тривиальное орбиобразие без особых точек, гомеоморфное тору.
Тривиальное орбиобразие без особых точек, гомеоморфное тору.
Сплошные линии на схеме показывают оси зеркальной симметрии.
Сплошные линии на схеме показывают оси зеркальной симметрии.
Пунктирные линии на схеме показывают оси скользящей симметрии
Пунктирные линии на схеме показывают оси скользящей симметрии
Ромбами на схеме показаны оси вращения второго порядка (на 180°)
Ромбами на схеме показаны оси вращения второго порядка (на 180°)
Четырехконечные звёздочки обозначают калейдоскопические точки второго порядка (точки пересечения двух зеркал).
Четырехконечные звёздочки обозначают калейдоскопические точки второго порядка (точки пересечения двух зеркал).
Вертушкой показаны оси вращения четвёртого порядка (на 90°)
Вертушкой показаны оси вращения четвёртого порядка (на 90°)
Восьмиконечными звёздочками показаны центры пересечения четырёх зеркал (калейдоскопические точки четвёртого порядка)
Восьмиконечными звёздочками показаны центры пересечения четырёх зеркал (калейдоскопические точки четвёртого порядка)

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

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

var cm = new Orbifold('cm')
cm.odd = true
cm.initialDensity = 1/4
cm.fundamentalDomain = qu([0,1],[0,4])
cm.images = 
  [[[1,2],[0,4],[Sh,Fh]],
  [[2,3],[0,4],[Sv,Sh]],
  [[3,4],[0,4],[Sv,Fh]]]
cm.mkBounds()

Здесь используется ряд нехитрых абстракций. Границы областей задаются указанием четвертей сторон развёртки тора, которая разделена метками {0,1,2,3,4}, например пара [0, 1] обозначает первую четверть, а [2, 4] — вторую половину. Функции Sh, Sv задают сдвиг на половину длины стороны развёртки тора по вертикали по горизонтали, а Fv и Fv — соответствующие отражения от середины этой стороны.

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

***

Напоследок стоит упомянуть, что подлежащее пространство орбиобразий может быть не плоским. В таком случае группа симметрии покрывает образами фундаментальной области сферическую или гиперболическую поверхности. На Youtube-канале Владимира Булатова приводятся изумительной красоты примеры динамики на некоторых орбиобразиях с гиперболическими подлежащими пространствами. Так что тех, кому не хватило неевклидовости, предлагаю полюбоваться работами Владимира.

Комментарии (1)


  1. Mingun
    27.07.2024 13:46

    Время на прочтение: 9 мин

    Ага, как же!