КОГНИТИВИСТИдейное ядро²Узелки на распуткуУзел 1. Причина степенных распределений
Узел 1.14 Фракталы на графах
Прологи: наука о сознании становится точной
Манифест когнитивиста
.
Узелки на распутку
Узел 1. Причина степенных распределений
Узел 1.2 Механизмы развитияУзел 1.3 Причины и экстремальные принципыУзел 1.4 Максимум специальных энтропийУзел 1.5 Мультипликативный закон сохраненияУзел 1.6 Когнитивные фракталыУзел 1.7 Вязкость сознания и число eУзел 1.8 Модель БернуллиУзел 1.9 Принцип микро-причинностиУзел 1.10 Случайно блуждающие ландшафтыУзел 1.11 Субстанции формы и содержанияУзел 1.12 Размерность Хаусдорфа и метрическая связностьУзел 1.13 Вне-пространственные фракталы
Узел 1.14 Фракталы на графах
Узел 1.15 Фрактальная размерность графов и сетейУзел 1.16 Фрактальность древовидных графовУзел 1.17 Фрактальная размерность и степенная статистикаУзел 1.18 Локальные и глобальные размерности графовУзел 1.19 Локальные и глобальные размерности графов (II)Узел 1.20 Локальные и глобальные размерности графов (III)Узел 1.21 Критические графы как фракталыУзел 1.22 Критические графы как фракталы (II)Узел 1.23 Возвращение к БернуллиИнтерлюдия. Две простые задачиУзел 1.24 Зоопарк критических графовУзел 1.25 Зоопарк критических графов (II)Узел 1.26 Режим стохастической самоподдержкиУзел 1.27 Растущие кластеры и размерность решетокУзел 1.28 Фрактальные и не-фрактальные решеткиУзел 1.29 Энтропия ростаУзел 1.30 Энтропия графов и пространствУзел 1.31 Игра в инверсию
Узел 2. Опус о числах и формах
.
Прологи
.
Степенные законы, распределения Парето и закон Зипфа
.
Когнитивный уровень
.
Мерцающие зоны
.
Органическая логика: резюме
Карта органической логики
.
Хвост ящерки. Метафизика метафоры.
.
Опус 1/F
.
Anschauung, научный метод Гёте
.
Закон серийности Пауля Каммерера
.
Ранние признаки критических переходов
.
Слабые сигналы
.
Меметика
.
Системный анализ и чувствительные точки
.
Спиральная динамика
.
Узел 1.14 Фракталы на графах
 
Роман Уфимцев
22 августа 2014 года, Калининград
Мы завершили предыдущую нить нашего исследования степенных распределений и их источника, фракталов, замечанием, что все "нормальные" пространственные фракталы обязаны иметь степенную структурную статистику с показателями θ<2. Причина этого в том, что точек, принадлежащих фракталу в пространстве, не может быть больше точек самого пространства.
Однако, это кажется большим ограничением: существуют примеры натуральной степенной статистики с показателями более 2 - и значит, нам приходится считать, что в этих случаях феномены не имеют фрактального устройства, и это противоречит нашему представлению о глубинной и необходимой связи между степенной статистикой и фрактальной организацией явлений. Кроме того, есть хороший пример - масштабно-инвариантная сеть, для которой θ=3:
Ее структура очевидно фрактальна, но она, по видимому, не является "нормальным" фракталом.
Действительно, эта сеть не является пространственным или, точнее, геометрическим фракталом. Она является примером графического фрактала. И как мы сейчас увидим, привычные нам фракталы, разворачивающиеся в геометрическом пространстве, являются лишь частным случаем графических фракталов.
Слово "графические" тут происходит от слова граф - так в математике называют абстрактные структуры, состоящие из наборов узлов, между которыми могут пролегать связи:
Масштабно-инвариантная сеть является особым типом графа - древовидным. Однако, в общем случае структура узлов и связей между ними может быть любой. Обратим внимание на важный момент: нам нет необходимости считать, что узлы графа находятся в каких-то пространственных отношениях друг с другом, для них понятие положения в пространстве не определено. Например, изображенная выше масштабно-инвариантная сеть имеет форму звезды, в центре которой располагаются самые богатые связями узлы, но это только иллюстрация: у ее узлов нет определенных пространственных отношений - только абстрактные связи.
Тем не менее, размещая изображения узлов графа определенным образом, мы облегчаем себе понимание его свойств. В частности, разместим узлы графа в пересечениях квадратной сетки:
Такое размещение узлов удобно, если при построении графа действует условие: каждый узел имеет 4 связи, а в целом граф можно равномерно разложить на плоскости.
Вообще-то, правила "каждый узел имеет по 4 связи" недостаточно, чтобы определить граф, который раскладывается на двухмерную сетку. Но можно дать другое определение: в этом графе количество узлов, до которых можно добраться от каждого узла минимум за R шагов равно 2R(R+1). Например, за 1 шаг от красного узла можно добраться до 4 других, за 2 шага - до 12 других, и т.д.:
Минимальное количество шагов, требующихся для того, чтобы добраться по связям от одного узла до другого будем называть расстоянием между узлами.
Не трудно заметить, что в таком виде этот граф напоминает "квадратно-гнездовую" сетку ячеек пространства, которую мы используем для исследования фракталов. И действительно, пространство в такой модели совершенно адекватно представляется подобным сетчатым графом, в котором роль узлов играют точки или ячейки пространства, а связи отражают их пространственную смежность.
Далее, мы рассматривали некоторые точки пространства как не-пустые, то есть, содержащие точки фрактала:
По аналогии с сетчатым представлением пространства, мы можем построить граф, представляющий точки фрактала:
В нем связаны только узлы, которые соответствуют точкам фрактала, непосредственно соседствующим в пространстве. Таким образом, фрактал в пространстве можно представить наложением двух графов: сетчатого графа, представляющего пространство, и графа, представляющего сам фрактал:
Теперь вновь взглянем на уравнение, связывающее отношение размерности фрактала D к метрической размерности пространства DM со степенной статистикой:
Очевидная мысль - каждый из графов, на которые раскладывается пространственный фрактал, характеризуется собственной размерностью: для сетчатого графа, представляющего ячейки пространства это метрическая размерность DM, а для графа, представляющего точки фрактала - размерность Хаусдорфа D для этого фрактала. Получается, что должна существовать возможность вычисления размерности графов безотносительно пространственного положения их узлов, а только исходя из структуры связей между ними.
Действительно, известно два альтернативных способа оценки фрактальной размерности графов, которые впрочем между собой тесно связаны и дополняют друг друга. Первый напоминает метод подсчета квадратиков, который применяется для пространственных фракталов. Второй более специфичен и любопытен. Начнем именно с него, тем более, что в наших руках уже есть подсказка.
Размерность метрических графов и метод растущего кластера
Мы говорили, что в "квадратно-гнездовом" графе за R шагов можно добраться от некоторого узла до 2R(R+1) других узлов. Обозначим количество доступных узлов как S - назовем массив этих узлов кластером, тогда можно записать
То есть, объем кластера вокруг узла растет примерно как квадрат расстояния R.
Теперь посмотрим на другой граф, который похож не на сетку на плоскости, а ряд на линии:
Для него, очевидно, действует другая зависимость S(R):
Полагаю, читатель догадывается, к чему мы клоним: показатель степени при R в выражении S(R) в пределе больших R оказывается равным метрической размерности пространства, на котором удобно раскладывается граф:
Так, "квадратно-гнездовой" граф раскладывается на плоскости, он подобен ей, а значит, мы можем считать его размерность равной метрической размерности плоскости. Обозначим размерность графа как DG. Тогда размерность сетчатого квадратно-гнездового графа DG=2. А размерность графа в форме нити DG=1.
Графы, которые подобны пространству той или иной размерности разумно именовать метрическими графами. И их размерность равна метрической размерности пространства, которому они подобны.
Из этого наблюдения мы прямо приходим к уравнению, представляющему собой первый известный метод определения фрактальной размерности графов - он называется методом растущего кластера:
В зависимость S(R) еще входит постоянная C, но она не имеет особого значения - она зависит от локальной конфигурации графа. Для "квадратно-гнездового" графа С=2, а, например, для метрического графа с треугольными секциями C=3:
Интересно это сравнить с "настоящим" значением C, которое входит в зависимость S(R) для двухмерного пространства:
Тут за количество шагов мы принимаем просто радиус R, проведенный от некоторой точки, а за количество доступных точек - площадь окружности, которую захватывает радиус. То есть, C=π ≈ 3,14, что несколько больше, чем тройка в треугольно-секционном графе. Но именно такой метрический граф дает лучшее приближение к "настоящему" пространству, поскольку среди фигур, которыми можно вымостить плоскость шестиугольник более всего похож на окружность.
На основе этого определения не трудно построить практический метод оценки фрактальной размерности графа: нужно выбрать в нем какой-то типичный узел, и следить, как с ростом расстояния R от него увеличивается доступное количество узлов S(R). Если граф является фракталом, то зависимость ln(S(R)) от ln(R) должна иметь вид линейной функции:
(Как мы говорили, постоянная C характеризует локальную структуру графического фрактала и не влияет на его размерность.)
Попробуем оценить фрактальную размерность масштабно-инвариантной сети. Построив сеть в 10 тыс. узлов и выбрав на удачу узел, построим график зависимости ln(S(R)) от ln(R):
График действительно линеен на начальном участке, но затем приходит к насыщению, и количество доступных узлов перестает расти с расстоянием. Это, конечно, результат ограниченного размера нашей сети. Тем не менее, по начальному прямолинейному участку мы можем оценить фрактальную размерность сети какой она видится из выбранного узла: DG≈3,9. Разумеется, выбирая другие узлы мы будем получать другие оценки (все-таки мы имеем дело со стохастическим фракталом) - обычно они лежат в диапазоне от 3 до 5, так что пока мы не можем утверждать наверняка, какова "настоящая" или теоретическая фрактальная размерность масштабно-инвариантной сети.
А что мы увидим, если граф не является фракталом? В этом случае зависимость ln(S(R)) от ln(R) не будет линейной. Чтобы убедиться в этом, модифицируем алгоритм построения масштабно-инвариантной сети: пусть новые узлы не более вероятно присоединяются к тем, у которых уже много связей, а к любому из уже имеющихся узлов равновероятно. Так мы получим сеть, которая характеризуется не степенным, а экспоненциальным распределением узлов по количеству связей, и зависимость ln(S(R)) от ln(R) для типичного узла оказывается нелинейной:
Серьезный недостаток этого метода определения и оценки фрактальной размерности графов - необходимость выбирать типичный стартовый узел, центр растущего кластера. Это не проблема, если граф более-менее однороден - как метрические графы. Но, например, масштабно-инвариантная сеть очень неоднородна. В ней имеется множество узлов, которые имеют мало связей с остальными и немного узлов, обладающих очень большим количеством связей - "хабы". При построении сети такими хабами обычно оказываются первые узлы сети. И оценка размерности при построении кластера вокруг них существенно отличается, чем при выборе типичного узла:
Это результат, полученный для первого узла сети - как видим, оценка DG практически вдвое меньше той, что мы получали выше. Говоря фигурально, размерность сети, как она видится из хабов практически в два раза меньше, чем видимая из типичных узлов.
Так какова же настоящая фрактальная размерность масштабно-инвариантной сети? Парадоксальным образом и первая оценка - DG≈4 и вторая - DG≈2 верны. Но масштабно-инвариантная сеть - анизотропный граф, его свойства различны по разным направлениям (это нечто такое, с чем мы не сталкивались, говоря о пространственных фракталах). И размерность этой сети разная по разным направлениям. В этом нам еще предстоит разобраться.
Метод подсчета пятен на графах
Второй метод оценки фрактальной размерности графов, как мы говорили, несколько похож на классический метод оценки размерности Хаусдорфа фракталов в пространстве. Классический метод опирается на уравнение
Его смысл мы уже подобно обсуждали: если для покрытия, например, фрактала на плоскости требуется N(u) квдаратиков, имеющих длину стороны u (и, соответственно, площадь u2), то величина ln(N(u))/ln(1/u) в пределе очень маленьких квадратиков стремится к размерности Хаусдорфа этого фрактала.
Точно также мы можем поступить и с графами, нам нужно только чуть изменить смысл квдаратиков разного размера. Для этого нам нужно воспользоваться понятием расстояния между узлами графа как минимального количества шагов, за которые можно дойти от одного до другого. Тогда мы можем говорить о "квадратиках" или скорее "пятнах" разного размера, захватывающих некоторые узлы графа: будем считать, что пятно имеет размер L, если от любого узла внутри пятна до любого другого расстояние не более L-1:
Тут, например, одно пятно имеет размер L=2: в него входит всего два узла, и от одного до другого можно добраться за 1 шаг. Второе пятно имеет размер L=3, потому что максимальное расстояние между узлами в пятне равно 2. При увеличении размера пятен, которыми мы покрываем граф, нам их потребуется все меньше, чтобы покрыть все узлы графа. При этом если граф является фракталом, то окажется
где M - общее количество узлов в графе, а N(L) - количество пятен размера L, которое полностью покрывает граф.
Это и есть второе определение фрактальной размерности графа и оно, как видим, действительно несколько похоже на определение размерности пространственных фракталов.
(Только похоже, поскольку имеет, по сути, другой смысл. Как мы чуть далее увидим, оно является простым видоизменением определения методом растущего кластера. Настоящим аналогом пространственного метода покрытия квадратиками является так называемая техника ренормализации, которую мы вероятно еще рассмотрим.)
Разберемся, как работает этот метод - проверим это определение на "квадратно-гнездовом" графе. Ясно, что требуется M пятен единичного размера, чтобы покрыть его весь. То есть, N(1) = M. Далее, если мы берем пятна размера L=2, их потребуется в два раза меньше, то есть, N(2) = M/2:
Оценка размерности ln(M/N(2))/ln(2) = 1, что пока совершенно не похоже на истинное значение DG=2.
Далее, возьмем пятна размером L=3. И тут внезапно возникает некоторая неоднозначность: дело в том, что пятна размером 3 могут иметь разную форму, например:
В первом случае нам потребуется M/3 пятен, во втором - M/4, в третьем M/5. И оценки размерности получатся разные: ln(3)/ln(3)=1, ln(4)/ln(3)≈1,26 и ln(5)/ln(3)≈1,46 соответственно. Как видим, последняя оценка ближе всего к истинному значению 2, а значит, именно пятна третьего вида "самые правильные". Но что в них особенного? Очевидно, в них больше всего узлов. Таким образом - и это следует подчеркнуть - метод покрытия пятнами требует, чтобы мы выбирали пятна такой формы, чтобы в них вмещалось как можно большее количество узлов. Иначе наши оценки размерности будут не верными, и это - критически слабое место метода, потому что определение формы максимально вместительных пятен - отдельный и не простой вопрос. Как мы сейчас увидим, ответ на него - в первом методе оценки размерности графов, методе растущего кластера.
Не трудно установить наилучшую правильную форму пятен различного размера в "квадратно-гнездовом" графе:
Можно проследить зависимость вместимости пятен (то есть, количество содержащихся в них узлов) от их размера L:
Теперь можно проверить, что в пределе больших пятен правильной формы мы действительно получим верное значение размерности:
Возьмем теперь пятна не самой лучшей формы, но все же пригодные:
Квадратные пятна определены только для нечетных размеров L, тем не менее, нам этого достаточно, чтобы оценить, насколько хуже они служат для оценки размерности графа. В зависимости от L количество узлов в пятнах равно ((L+1)/2)2, значит оценка размерности:
Казалось бы, в конечном итоге, в пределе больших L, мы получаем то же самое, двойку. Однако, на практике применение не самых оптимальных пятен чревато существенными погрешностями при оценке размерности графа - ведь практически мы не можем покрывать граф пятнами, размер которых стремится к бесконечности. С ростом L оценка приближается к точной, но сравним, насколько медленнее это происходит при использовании пятен не самой лучшей формы:
Иными словами, квадратные пятна существенно хуже, но все же позволяют нам прийти к истинному значению размерности графа. Но есть такие пятна, которые в принципе, даже в пределе каких угодно больших L, не могут нас привести к правильной оценке размерности. Речь идет о пятнах, вытянутых в линейное ожерелье. Покрывая ими "квадратно-гнездовой" граф мы неизменно будем получать оценку размерности DG=1.
Таким образом, метод покрытия пятнами критически зависит от правильного выбора формы пятен - и это его существенный недостаток. Во всяком случае, без дополнения о том, каким именно критериям должны соответствовать пятна, он не способен приводить к верному результату. И в этой связи странно, что говоря о фрактальных размерностях графов в первую очередь говорят именно об этом методе ее оценки. По видимому, тут играет свою роль его поверхностное сходство с привычным покрытием квадратиками пространственных фракталов. Однако, это обманчивое сходство.
В методе растущего кластера проблема пятен оптимальной формы решается сама собой. Именно поэтому мы его поместили на первое место: его все же следует считать основным, а покрытие пятнами - лишь его техническая вариация.
К слову, проблема выбора формы пятен возникает и когда мы говорим о фракталах в пространстве. Метод покрытия квадратиками удовлетворительно работает. Но лишь удовлетворительно, потому что на практике он часто приводит к заниженным оценкам размерности пространственных фракталов - и нам теперь понятно, почему. Квадратики, несмотря на их удобство для вычислительных приложений, не являются "пятнами" наилучшей формы. Наилучшая форма - кружки.
Но и с кружками не все хорошо: скажем, ими нельзя покрыть двухмерную фигуру так, чтобы кружки отчасти не пересекались. В итоге практически наилучшей формой для покрытия на плоскости оказываются шестиугольники.
От покрытия пятнами к растущим кластерам
Метод растущего кластера автоматически приводит к наилучшей форме пятен: растущий кластер собственно и имеет оптимальную форму:
Тут сверху - пятна оптимальной формы различного размера L на "квадратно-гнездовом" графе, а снизу - доступные объемы S(R), образованные узлами, находящимися на расстоянии R от заданного для того же графа. Как видим, действует соотношение 2*R+1=L - то есть, размер пятна примерно равен его удвоенному радиусу.
Посмотрим теперь на определение размерности методом покрытия пятнами:
Поскольку M - общее количество узлов графа, а N(L) - количество необходимых для его покрытия пятен размера L, величина M/N(L) равна количеству узлов в одном пятне. Значит (предполагая, что граф более-менее однороден по своей структуре), мы можем говорить только об одном пятне и следить, как с ростом его размера L растет количество содержащихся в нем узлов S(L). Так мы приходим к методу растущего кластера:
Двигаясь в обратную сторону, мы наоборот, можем прийти от метода растущего кластера к методу покрытия пятнами: два метода оценки фрактальной размерности графов действительно непосредственно связаны. По сути, пятна разного размера, которыми покрывается граф - это множество растущих кластеров, которые строятся таким образом, чтобы не пересекаться между собой. Результат - некоторое усреднение скорости роста кластеров для многих точек графа, а не для одной единственной.
По идее, у каждого метода есть свои преимущества и недостатки. Метод покрытия пятнами не требует от нас выбора типичного узла графа, но зависит от выбора формы пятен. Метод растущего кластера автоматически порождает пятно наилучшей формы, но может приводить к ошибкам, если граф существенно неоднороден, а мы строим растущий кластер вокруг нетипичного узла. И все же, на практике метод покрытия пятнами выглядит менее предпочтительным - оценка размерности оказывается неустойчивой, вот типичный пример:
Это вид зависимости ln(M/N(L)) от ln(L) полученной при покрытии пятнами масштабно-инвариантной сети размером в 10 тыс. узлов. Как видим, эта зависимость не линейна, и мы вообще не можем быть уверенными, что имеем дело с фракталом. Этого недостатка нет у метода растущего кластера - в нем мы по линейности зависимости S(R) от R ясно отличаем фрактальные графы от не-фрактальных.
(Автор настолько разочарован применением метода покрытия пятнами, что даже намерен перепроверить правильность реализации алгоритма - настолько негодным кажется метод. И это странно, ведь теоретически оба метода между собой весьма сходны. Если окажется, что алгоритм реализован верно, это будет означать, что масса исследователей, опирающихся при изучении фрактальных свойств графов на метод покрытия пятнами, как минимум, искренне заблуждаются: его адекватность целиком зависит от правильного выбора формы пятен и их распределения по графу. А это в общем случае особая и очень сложная задача. Пуская ее решение на "самотек" и расставляя пятна случайно, как это обычно делается, невозможно прийти к правильным оценкам размерности.)
В заключение этой нити автору следует объясниться. Почему мы уделяем такое пристальное внимание фракталам на графах? Казалось бы, это довольно экзотическая тема, которой даже сегодня посвящено не так много научных работ.
Дело в нашей убежденности, что всюду, где мы встречаем степенную статистику, следует искать фрактал. Фракталы - непременные спутники степенных распределений. Однако, среди примеров натуральных степенных распределений немало таких, в которых трудно усмотреть присутствие каких-либо традиционных пространственных фракталов - например, распределение городов по числу жителей или распределение слов в натуральных текстах по частоте использования. Если тут и искать какие-то фракталы, то не-пространственные. И фракталы на графах тут являются первым (вероятно, не единственным) кандидатом.
А разговор о них мы еще продолжим - тут еще множество интересных вопросов, и в числе первых - связь фрактальной размерности графов с их степенной статистикой.
Ваш комментарий
image Поля, отмеченные звездочкой, нужно обязательно заполнить
Заголовок комментария:
image Текст комментария: (не более 2000 символов, HTML-разметка удаляется)
image Ваше имя:
Ваш E-mail:
image Сколько будет дважды два? (ответьте цифрой, это проверка от спам-рассылок)
Отправить комментарий
Главные темы
Внимание (8)Геогештальт (1)Гештальт (16)Динамика внимания (5)Инсайт (5)Интуиция (2)Кибернетика (5)Когнитивное управление (6)Когнитивный анализ (4)Когнитивный словарь (5)Культура наблюдения (5)Мерцающие зоны (7)Метафизика (3)Метафора (13)Механизмы восприятия (15)Мифы и парадигмы (7)Органическая логика (5)Прогнозирование (6)Роль языка (4)Симметрии (5)Синхронизмы (5)Сложные системы (10)Степенной закон (8)Творческое мышление (5)Три уровня систем (4)Управление знаниями (3)Фазы развития (7)Фракталы (18)Цветные шумы (9)
КОГНИТИВИСТ: когнитивные методы и технологии © Роман Уфимцев, при поддержке Ателье ER