вероятность появления ровно одной линии внизу есть p(1 – p), такова же вероятность появления ровно одной линии справа, и, наконец, вероятность одновременного появления обеих линий есть p2.
С помощью кнопки Границы… задайте для всего диапазона горизонтальные линии сверху и снизу. С помощью меню Сервис/Параметры… на вкладке Вид снимите флажок сетка. Растиражируйте построенный диапазон посредством копирования. Перед вами – готовый стенд для проведения экспериментов одновременно с несколькими реализациями Бернуллиевой решётки. Пять реализаций решётки с p = 0,4 представлены на рис. 1.12. Хотя решётки невелики, предельный закон критической вероятности сказывается на них уже ощутимо. Ни в одной из реализаций перколяция – соединение верхней и нижней границ решётки – здесь не имеет места, поскольку p = 0,4 < pкрит = 0,5.
Рис. 1.12. Бернуллиевы решётки при p = 0,4 < pкрит
На рис. 1.13 приведены реализации решётки при p = 0,5 = pкрит. Примерно в половине из них появляются перколяционные кластеры.
Рис. 1.13. Бернуллиевы решётки при p = 0,5 = pкрит
На рис. 1.14 приведены реализации решётки при p = 0,6 > pкрит. Перколяция произошла во всех реализациях решётки.
Рис. 1.14. Бернуллиевы решётки при p = 0,6 > pкрит
5.4.3. Определение критической вероятности в решётках разного типа
Если необходимы разнообразные точные количественные решения, то для статистического моделирования целесообразно писать специальные моделирующие программы.
Так, для более полного изучения явления перколяции в решётках разного типа (рис. 1.15) студентами в рамках УНИРС написана программа, позволяю-
41
щая моделировать решётки большого размера. Программа визуализирует результаты испытаний и путём многократных опытов рассчитывает для каждого типа решётки её критическую вероятность.
Квадратная решётка из плоских элементов, у каждого элемента 4 соседа
Квадратная решётка из плоских элементов, у каждого элемента 8 соседей
Квадратная решётка из единичных рёбер
Комбинированная квадратная решётка из плоских элементов, соединённых рёбрами
Шестиугольная решётка из плоских элементов
Шестиугольная решётка из рёбер
Рис. 1.15. Шесть типов решёток,исследуемых наперколяцию Рис. 15. Шесть типов решёток, на
На рис. 1.16 представлены результаты проведенных с помощью этой программы исследований. Каждый столбец диаграммы изображает оценку критической вероятности отказа элементов для решётки одного конкретного типа; порядок столбцов на рис. 1.16 (слева направо) соответствует порядку типов решёток, приведенных на рис. 1.15 (сверху вниз). Погрешность приведенных оценок составляет около 0,05.
0.50 |
0.40 |
0.30 |
0.20 |
0.10 |
0.00 |
Рис. 1.16. Критическая вероятность qкрит = 1 – pкрит |
Самостоятельный интерес представляет исследование размеров контактных кластеров в решётках. В качестве примера использования статистического моделирования для решения подобных задач упомянем программу, написанную под руководством автора студентами в рамках УНИРС. Программа в процессе статистического моделирования больших Бернуллиевых решёток выделяет отдельные контактные кластеры, раскрашивает и визуализирует их (рис. 1.17),
42
а также вычисляет различные статистические характеристики, включая эмпирические распределения вероятностей размеров кластеров.
Теория перколяции применима
вразличных областях науки. Термин перколяция, означающий протекание, отражает соотвественно и возможность моделирования протекания жидкости, например воды или нефти,
впочвенных средах. В физике теория перколяции применяется при расчете
распространения токов в случайной сетке проводников. В разделе материаловедения «Теория разрушений» она используется для изучения рас-
пространения трещин при деформации материалов. В медицине теорию перколяции используют для моделирования распространения инфекций при заболеваниях организма.
Нетрудно оценить и хорошие перспективы применения этой теории в информатике и вычислительной технике. Если, например, необходимо оградить глобальную сеть от компьютерного вируса, то достаточно, чтобы каждый отдельный узел этой сети был недоступен для вируса с вероятностью, хотя бы немного превосходящей критическую вероятность. В этом случае сеть в целом будет гарантированно оставаться связной и работоспособной. Частичные потери функциональности сети (например, потери её суммарной производительности) определяются при этом распределением размеров кластеров, поражаемых вирусом. Для определения критической вероятности в подобных нерегулярных сетях и для установления законов распределения контактных кластеров требуется проводить статистическое моделирование решёток с нерегулярной структурой. Из приведённых примеров видно, что перколяционные модели являются перспективными «неклассическими» моделями надёжности сложных информа- ционно-вычислительных систем.
6. Имитационное моделирование
Первоначально ИМ определялось как способ описания и моделирования дискретно-событийных процессов, присущих системам массового обслуживания, системам с отказами и восстановлением элементов, дискретным производствам и т. д. [12, 13]. Компьютерное моделирование подобных систем наиболее эффективно реализуется посредством программирования симулятора – «движка», воплощающего действие механизма причинно-следственных связей. При наличии симулятора моделирование сводится к заданию начального состояния системы, пуску симулятора и наблюдению за последующим развитием процессов в системе, которое безупречно корректно воспроизводится симулятором. С точки зрения логики моделирования здесь наиболее существенно то, что
43
от текущего момента времени и известного в нём состояния системы перемещение вперёд, к новым моментам времени и новым состояниям системы, производится путём продуцирования выводного знания. Симулятор циклически повторяет заложенный в него способ рассуждения, т. е. способ вывода и точного вычисления следствий о ближайшем будущем из параметров состояния, известных на данный момент модельного времени.
При моделировании, учитывающем влияние случайных факторов, эволюция системы воспроизводится многократно, и вычисляются необходимые статистические показатели, характеризующие наблюдаемые процессы. Такое многократное воспроизведение эволюции не является собственным атрибутом ИМ, но принадлежит методу Монте-Карло, который используется в ИМ как метод вычисления вероятностных характеристик системы. При моделировании случайных факторов многократное воспроизведение возможных вариантов развития процессов позволяет получить полосу наиболее вероятных траекторий изменения показателей, найти траектории математических ожиданий показателей, наихудший и наилучший сценарии развития процессов. Но учёт случайных факторов не обязательно присутствует в ИМ. Так, при моделировании производственных систем места для имитации случайностей остаётся тем меньше, чем выше степень автоматизации этих систем [32].
Современный уровень теории и практики ИМ [4] охватывает четыре парадигмы, в число которых, наряду с рассмотренной парадигмой дискретнособытийного моделирования, входят следующие три: моделирование динами-
ческих систем, системная динамика в смысле Форрестера [33] и многоагент-
ный подход. Анализ используемой в них логики моделирования показывает, что все эти парадигмы, как и дискретно-событийное моделирование, основаны на причинно-следственном механизме продвижения процессов во времени. Различия в перечисленных парадигмах ИМ относятся лишь к способу интерпретации (т. е. к семантике) основных структурных компонентов имитационных моделей; но логика имитации процессов остаётся единой.
Так, логика моделирования непрерывных динамических систем в части механизма продвижения во времени совпадает с логикой дискретнособытийного моделирования. Её языковая реализация может быть сведена, например, к описанию моделируемых непрерывных процессов дифференциальными уравнениями (ДУ), представленными в форме Коши [33], которые решаются численными методами с автоматическим подбором шага времени. Подобная языковая реализация представляет собой своеобразный, но внешний атрибут парадигмы моделирования динамических систем. Ведь аналитическая форма ДУ используется в ИМ лишь в качестве компактной промежуточной формы описания причинно-следственного механизма развития процессов, но сам этот механизм в качестве действительной логической основы моделирования используется, фактически, начиная уже с этапа составления ДУ.
Составление ДУ, описывающих динамическую систему, есть фиксация действующих в системе причинно-следственных связей. Мы выражаем новые значения переменных в конце интервала времени (t, t + dt) через известные значения в его начале, опираясь именно на знание причинно-следственных связей
44
(сил, законов, принципов), действующих в системе. И на этапе имитации динамической системы, когда бесконечно малые приращения времени dt заменяются в уравнениях конечными приращениями t, имитация вновь разворачивается как перемещение во времени, последовательно реализующее заданные нами причинно-следственные связи. Здесь при более детальном рассмотрении можно, конечно, увидеть отличие от моделирования дискретно-событийных процессов и в способе выбора шага t, но с точки зрения логики моделирования и это отличие – внешнее, чисто техническое. Логика использования известного причинно-следственного механизма как «движка» имитации сохраняется неизменной.
Что касается парадигмы так называемой системной динамики, то она с самого начала предполагает описание непрерывных процессов (потоков и уровней) в форме, близкой к конечно-разностным уравнениям, т. е. отличается от моделирования динамических систем лишь внешне. При этом причинноследственная логика продвижения процессов во времени здесь более очевидна, чем при имитации динамических систем, поскольку в подходах системной динамики отсутствует промежуточная фаза описания системы на языке дифференциалов.
Наконец, в многоагентной парадигме ИМ целенаправленное поведение взаимодействующих «агентов» также реализуется причинно-следственным механизмом продвижения во времени. Агенты – это объекты модели, интерпретируемые как независимые активные сущности, которые не управляются из единого центра, имеют ограниченную информацию о системе в целом и, преследуя каждый свои цели, предпринимают соответствующие действия, выбираемые из ограниченного перечня. Интерпретация правил выбора может опираться на кажущееся обращение времени: желаемая цель служит агенту отправным пунктом, причиной для выбора, лежащей в будущем, а сам выбор – следствием, осуществляемым в настоящем. Однако с формально-логической точки зрения выбор, осуществляемый любым агентом, предопределён достигнутым на момент выбора состоянием системы и значениями параметров, известных агенту. Поэтому действия агентов имитируются в модели точно так же, как и любые другие события, – как прямые следствия из достигнутого состояния системы. И модельное время продвигается симулятором строго вперёд, в точном соответствии с механизмом причин и следствий.
В семантическом плане концепция агентов как самостоятельных, активно действующих сущностей оказывается чрезвычайно полезной при моделировании систем, в которых совокупное действие подобных сущностей приводит к эволюции, непредсказуемой с точки зрения отдельных агентов и иногда более «разумной», чем поведение любого отдельно взятого агента. Эта концепция существенно расширяет сферу практического использования ИМ, поскольку приводит к новым смыслам при интерпретации моделей, и она поддерживается новыми языковыми и графическими средствами ИМ [4, 34]. Кроме того, многоагентный подход может быть использован не только в системах ИМ общего назначения. Например, он весьма эффективно реализуется в аналитических моде-
45