Основы имитационного моделирования
Существует класс объектов, для которых по различным причинам не разработаны аналитические модели либо не разработаны методы решения полученной модели. Сложность процессов, происходящих в неидеальных системах, часто делает невозможной формализацию. В этом случае, когда необходимо провести исследование сложных систем, строится имитационная модель. Экспериментирование с такой моделью называют имитацией.
Пример. Работа системы подачи топлива и смазки в автомобиле даже в идеальном случае (постоянная температура, постоянные свойства топлива и смазки) с трудом может быть описана при помощи аналитических методов. Если же речь идет о реальной системе, где плотность и вязкость жидкостей неоднородны и меняются в зависимости от множества факторов, где есть изменения температуры, построение аналитической модели системы становится невозможным.
Суть имитационного моделирования состоит в следующем:
1. Система разбивается на большое количество функциональных блоков (декомпозиция).
2. Каждый блок заменяется моделью «черного ящика» с набором входов и выходов и функцией зависимости выходных параметров от входных.
3. В качестве функции преобразования может выступать аналитическое выражение, вероятностная функция или аппроксимирующая функция на основе экспериментальных данных.
4. Модели функциональных блоков объединяются в модель системы, которая имитирует поведение реальной сложной системы.
Основой имитационного моделирования являются процессы декомпозиции, определения функции каждого блока, преобразующей входные параметры во входные, и последующего построения модели, основанного на синтезе системы из полученных моделей функциональных блоков.
7.4.1. Особенности имитационного моделирования
Все имитационные модели представляют собой модели типа «черного ящика». Это означает, что они обеспечивают выдачу входного сигнала системы, если на ее взаимодействующие подсистемы поступает входной сигнал. Поэтому для получения необходимой информации или результатов необходимо осуществлять «прогон» имитационных моделей, а не «решать» их. Имитационные модели не способны формировать решение в том виде, в каком это имеет место в аналитических моделях, а могут служить лишь средством анализа поведения системы в условиях, которые определяются экспериментатором.
Поскольку необходимо и желательно приспосабливать средство или метод к решению задачи, а не наоборот, возникает вопрос: в каких случаях имитационное моделирование полезно?
Исследователь должен рассмотреть целесообразность применения имитационного моделирования при наличии любого из приведенных ниже условий:
□ Формализация модели невозможна либо еще не разработаны аналитические методы решения сформулированной математической модели. К этой категории относятся многие модели массового обслуживания, связанные с рассмотрением очередей.
□ Аналитические методы имеются, но математические процедуры столь сложны и трудоемки, что имитационное моделирование позволяет получить более простое решения задачи.
□ Аналитические решения существуют, но их реализация невозможна вследствие недостаточной математической подготовки имеющегося персонала. В этом случае следует сопоставить затраты на проектирование, испытания и работу на имитационной модели с затратами, связанными с приглашением специалистов со стороны.
□ Кроме оценки определенных параметров, желательно осуществить на имитационной модели наблюдение за ходом процесса в течение определенного периода.
□ Трудность постановки экспериментов и наблюдений в реальных условиях; соответствующим примером может служить изучение поведения космических кораблей в условиях межпланетных полетов.
□ Для долговременного действия систем или процессов может понадобиться сжатие временной шкалы. Имитационное моделирование дает возможность полностью контролировать время изучаемого процесса, поскольку явление может быть замедлено или ускорено по желанию. К этой категории относятся, например, проблемы изучения динамики развития населенных пунктов разного уровня.
7.4.2. Подходы к имитационному моделированию
Современное имитационное моделирование в зависимости от целей моделирования и решаемой задачи предполагает осуществление одного из трех подходов к моделированию:
□ системная динамика;
□ дискретно-событийное моделирование;
□ агентное моделирование.
Системная динамика рассматривает систему как совокупность переменных, соединенных между собой петлями обратной связи. Петли обратной связи обладают нелинейными характеристиками передачи сигнала и могут быть усиливающими (положительная обратная связь) или ослабляющими (отрицательная обратная связь). Петли обратной связи также могут взаимодействовать между собой. Передача сигнала по петле обратной связи может осуществляться напрямую или с временной задержкой. Таким образом, система в целом имитирует нелинейное поведение, свойственное природным системам и процессам в них. Метод системной динамики направлен не на получение количественных результатов или детального анализа роли того или иного элемента системы, а на оценку поведения системы в целом: развивается она или деградирует, стремится к равновесию или демонстрирует неустойчивость, насколько равномерно протекает процесс развития в разных частях системы. Такой подход обычно используется для создания моделей макроуровня с объектами природного, социального или экономического плана (например, моделирование равновесия рынков или поведения атмосферы планеты). При моделировании в парадигме системной динамики часто в модель системы включается взаимодействие с внешней средой.
Дискретно-событийное моделирование описывает систему как иерархическую последовательность элементов и операций (получение, захват, разгрузка, регистрация, размещение, выдача). Переход от одной операции к другой инициируется событием (или порождает событие). Операции производятся над некоторыми сущностями (документ, заявка, контейнер, счет). Сами по себе сущности пассивны, но обладают атрибутами, способными влиять на процесс выполнения операции. Дискретно-событийное моделирование обладает довольно высокой степенью абстракции: множество несущественных для рассматриваемого процесса деталей игнорируется. Дискретно-событийный подход применяют при моделировании бизнес-процессов, технологических процессов на производстве, в логистике.
Агентное моделирование описывает систему как совокупность сложных объектов (агентов), связанных определенными правилами. Агентное моделирование применяется для того, чтобы при рассмотрении системы перенести акцент с процессов, происходящих в системе, на поведение сложных элементов системы (агентов). В качестве агентов могут выступать люди (моделирование коллектива), предприятия и учреждения (моделирование рынка), сложные механизмы (моделирование технологических процессов). Если при дискретно-событийном моделировании все внимание сосредотачивается на операциях, а индивидуальные особенности совершающих операции элементов системы игнорируются, то при агентном моделировании различия между объектами системы становятся определяющими в поведении модели.
7.4.3. Этапы имитационного моделирования
Основные этапы имитационного моделирования совпадают со схемой, приведенной на рис. 7.12, но имеют свои особенности.
Постановка задачи
Приводится описание проблемы и формулируется цель моделирования. После того как сформулирована цель моделирования, может оказаться, что из-за сложности рассматриваемого объекта или процесса невозможно осуществить его формализацию. Тогда принимается решение проводить имитационное моделирование.
Разработка модели
Разработка модели подразумевает создание информационной модели и построение компьютерной модели.
□ Создание информационной модели.
Построение информационной модели начинается со структурного анализа процессов. Проводится формализация структуры сложного реального процесса путем разложения его на подпроцессы, выполняющие определенные функции и имеющие взаимные функциональные связи. Выявленные подпроцессы, в свою очередь, могут разделяться на другие функциональные подпроцессы.
Структура общего моделируемого процесса может быть представлена в виде графа, имеющего иерархическую многослойную структуру, в результате появляется формализованное изображение имитационной модели в графическом виде. Структурный анализ особенно эффективен при моделировании экономических процессов, где в отличие от технических многие составляющие подпроцессы
не имеют физической основы и протекают виртуально, поскольку оперируют информацией, деньгами и логикой (законами) их обработки.
Ключевыми пунктами структурного анализа процессов являются декомпозиция (правильное выделение составляющих подпроцессов) и полнота связей (все связи между подпроцессами должны быть учтены).
□ Построение компьютерной модели.
Графическое изображение имитационной модели, функции, выполняемые каждым подпроцессом, условия взаимодействия всех подпроцессов и особенности поведения моделируемого процесса (временная, пространственная, энергетическая или финансовая динамика) должны быть описаны на специальном языке для последующей трансляций. Для этого существуют различные способы:
О описание вручную на языке типа GPSS, Pilgrim, Visual Basic (последний очень прост, на нем можно запрограммировать элементарные модели, но он не подходит для разработки реальных моделей сложных экономических процессов, так как описание модели средствами Pilgrim компактнее аналогичной алгоритмической модели на Visual Basic в десятки-сотни раз);
О автоматизированное описание с помощью компьютерного графического конструктора во время проведения структурного анализа, то есть с очень незначительными затратами на программирование (такой конструктор, создающий описание модели, имеется, например, в составе системы моделирования в Pilgrim).
Трансляция обычно осуществляется в различных режимах:
О в режиме интерпретации (характерен для систем типа GPSS, ReThink);
О в режиме компиляции (характерен для системы Pilgrim).
Каждый режим имеет свои особенности. Режим интерпретации проще в реализации. Специальная универсальная программа-интерпретатор на основании формализованного описания модели запускает все имитирующие подпрограммы. Данный режим не приводит к получению отдельной моделирующей программы, которую можно было бы передать заказчику, так как необходима еще и среда моделирования.
Режим компиляции сложнее реализуется при создании моделирующей системы. Однако это не усложняет процесс разработки модели. В результате можно получить отдельную моделирующую программу, которая работает независимо от системы моделирования в виде отдельного программного продукта.
Верификация (тестирование) параметров модели выполняется в соответствии с гипотезой, на основании которой построена модель, с помощью специально выбранных тестовых примеров.
Компьютерный эксперимент
Проведение компьютерного эксперимента заключается в «проигрывании» имитационной модели путем задания закона изменения одного или нескольких входных параметров. При имитационном моделировании во множестве случаев время в явном виде присутствует среди входных параметров, то есть большинство имитационных моделей являются динамическими.
Анализ результатов моделирования
Сложность имитационной модели обычно делает необходимым проведение нескольких циклов уточнения модели. По мере сравнения полученной модели с прототипом могут быть выявлены неучтенные связи или уточнены эмпирические зависимости.
Дата добавления: 2016-04-14; просмотров: 2432;