Сущность имитационного моделирования
Развитие вычислительной техники породило новое направление в исследовании сложных процессов – имитационное моделирование. Имитационные модели, являющиеся особым классом математических моделей, принципиально отличаются от аналитических тем, что ЭВМ в их реализации играют главную роль. ЭВМ обладают не только колоссальным быстродействием и памятью, но и развитыми внешними устройствами и совершенным программным обеспечением. Все это дает возможность эффективно организовать диалог человека и машины в рамках имитационной системы.
Идея метода имитационного моделирования состоит в том, что вместо аналитического описания взаимосвязей между входами, состояниями и выходами строят алгоритм, отображающий последовательность развития процессов внутри исследуемого объекта, а затем "проигрывают" поведение объекта на ЭВМ. Следует отметить, что, поскольку для имитационного моделирования зачастую требуются мощные ЭВМ, большие выборки статистических данных, издержки, связанные с имитацией, почти всегда высоки по сравнению с расходами, необходимыми для решения задачи на небольшой аналитической модели. Поэтому во всех случаях следует сопоставлять затраты средств и времени, потребные для имитации, с ценностью информации, которую ожидают получить.
Почему необходим двойной термин «имитационное моделирование». Слова имитация и моделирование являются почти синонимами. Фактически все расчетные методы на ЭВМ во всех областях науки и техники являются моделями реальных процессов. Чтобы отличить математические модели друг от друга, исследователи стали давать им дополнительные названия. Термин «имитационное моделирование» означает, что мы имеем дело с такими математическими моделями, с помощью которых результат нельзя заранее вычислить или предсказать, поэтому для предсказания поведения реальной сложной системы необходим эксперимент (имитация) на модели при заданных исходных данных.
Имитацияпредставляет собой численный метод проведения на ЭВМ экспериментов с математическими моделями, описывающими поведение сложных систем в течение заданного времени.
Имитационная система – совокупность модели, имитирующей изучаемое явление, и систем внешнего и внутреннего обеспечения.
Система – это совокупность элементов, которые принадлежат ограниченной части реального мира, являющегося объектом исследования. Поэтому система – понятие относительное.
Для установления сферы действия системы исследователь должен выявить ее границы и состав. При установлении границ системы выявляются не только физические, но и причинно-следственные взаимосвязи между ее элементами.
На систему могут воздействовать некоторые внешние факторы. Причем, если они трактуются как входы в систему, то предполагается, что они функционально задаются с помощью предписанных значений, таблиц или уравнений.
Объекты, которые находятся за границами системы, но могут влиять на ее поведение, формируют окружающую среду этой системы. Таким образом, системы представляют собой совокупность взаимодействующих элементов, которые подвергаются воздействию со стороны внешних факторов.
Поведение компонент сложной системы (СС) и их взаимодействие в имитационной модели чаще всего описывается набором алгоритмов, реализуемых на некотором языке моделирования. Все эти описания представляют собой программную имитационную модель, которую необходимо сначала отладить и испытать, а затем использовать для постановки эксперимента на ЭВМ. Поэтому под процессом имитации на ЭВМ понимают:
· конструирование модели;
· испытание модели;
· применение модели для изучения некоторого явления или проблемы.
Для определения понятия имитационная модель воспользуемся следующими определениями:
1. Каждая модель представляет собой комбинацию таких составляющих, как компоненты, переменные, параметры, функциональные зависимости, ограничения, целевые функции.
2. Под компонентами понимают составные части, которые при соответствующем объединении образуют систему.
3. Параметрами являются величины, которые исследователь может выбирать произвольно, в отличие от переменных модели, которые могут принимать только значения, определяемые видом данной функции. В модели системы различают переменные двух видов: экзогенные (входные), порождаемые вне системы или являются результатом взаимодействия внешних причин и эндогенные (внутренние), возникающие в результате воздействия внутренних причин.
4. Функциональные зависимости описывают поведение переменных и параметров в пределах компоненты или же выражают соотношения между компонентами системы.
5. Ограничения представляют собой устанавливаемые пределы изменения значений переменных или ограничивающие условия их изменений. Они могут вводится либо разработчиком, либо устанавливаться самой системой вследствие присущих ей свойств.
6. Целевая функция представляет собой точное отображение целей или задач системы и необходимых правил оценки их выполнения.
Имитационная модель – вычислительная процедура, формализовано описывающая изучаемый объект и имитирующая его поведение. При ее составлении нет необходимости упрощать описание явления, отбрасывая порой даже существенные детали, чтобы втиснуть его в рамки модели, удобной для применения тех или иных известных математических методов анализа. Для имитационного моделирования характерна имитация элементарных явлений, составляющих исследуемый процесс, с сохранением их логической структуры, последовательности протекания во времени, характера и состава информации о состояниях процесса. Модель по своей форме является логико-математической (алгоритмической).
Широко распространены два подхода к организации имитационных моделей.
Первый подход заключается в том, что каждый элемент сложной системы представляется в некоторой стандартной форме, когда уже заготовлены программные модели – модули. С помощью специальных схем описываются взаимосвязи между модулями и конструируется модель сложной системы.
Второй подход предусматривает создание универсальной имитационной модели, которая может настраиваться на любой объект заданного класса. Для этого необходимо, чтобы структурные и функциональные характеристики, отличающие один объект от другого, не входили в структуру модели и ее описание, а являлись легко заменяемыми исходными данными. В этом случае при подготовке к моделированию конкретного объекта из заданного класса программирование оказывается ненужным.
Исходя из принципа построения имитационных моделей, все их компоненты действуют последовательно. Чтобы произвести в модели одновременность нескольких событий, происходящих в различных частях реальной системы, необходимо построить определенный механизм задания времени в моделях.
Существуют два основных метода задания времени:
· фиксированного шага;
· шаг до следующего события.
Для имитации процессов функционирования отдельных элементов объекта и всего объекта в целом должны быть выбраны основные операторы, которые увязываются между собой в соответствии с формализованной схемой исследуемого процесса. К основным операторам относятся вычислительные (арифметические) и логические операторы, операторы формирования реализации случайных процессов и неслучайных величин, а также операторы счета.
Вычислительные операторы предназначены для реализации любых вычислительных функций с помощью системы арифметических операций.
Логические операторы предназначены для проверки справедливости заданных условий и выработки признаков, обозначающих результат проверки.
Процесс имитации включает в себя большое число операций, связанных с использованием случайных событий, величин и процессов, поэтому результаты моделирования также носят случайный характер. Они отражают случайные сочетания действующих факторов, складывающихся в процессе моделирования. Для имитации различных случайных факторов на моделируемый процесс необходимо наличие операторов формирования реализаций случайных процессов. Исходными данными для получения этих операторов служат таблицы и генераторы случайных чисел.
Формирование различных констант и неслучайных функций времени принципиально не отличается по сущности от формирования обычных вычислительных операций.
Для подсчета числа различных моделируемых объектов, обладающих заданными свойствами, формируются операторы счета (счетчики). Результаты, выдаваемые счетчиками, часто являются исходными данными для логических служебных операторов, обеспечивающих синхронизацию моделирующего алгоритма.
Искомые величины при имитационном моделировании определяют в результате статистической обработки совокупностей данных некоторого числа реализаций процесса моделирования. Поэтому имитационное моделирование иногда называют методом статистического моделирования.
В противоположность аналитическим и численным методам содержание операций, осуществляемых при имитационном моделировании, слабо зависит от того, какие величины выбрали в качестве искомых.
Поиск решений по имитационным моделям осуществляется с помощью методов экспериментальной оптимизации на ЭВМ, являющихся особой разновидностью численных методов оптимизации. При этом разработчик модели сталкивается с необходимостью разработки не только собственно имитационного алгоритма, но и с разработкой специфических именно для этого алгоритма вспомогательных элементов — моделей входов, выхода, обратной связи.
Следует отметить, что в программном обеспечении современных ЭВМ присутствуют пакеты прикладных программ (в первую очередь по разделу "Математическая статистика"), которые можно использовать при разработке тех или иных вспомогательных элементов конкретной имитационной модели.
Создавая стохастическую имитационную модель, всегда приходится решать, следует ли в модели использовать имеющиеся эмпирическиезначения входных стохастических факторов непосредственно или целесообразно использовать их теоретико-вероятностные или частотные распределения. Непосредственное использование имеющихся статистических данных предполагает запись в память ЭВМ и выборку их из памяти определенным образом, обеспечивающим "чистоту" статистического эксперимента. В общем случае применение теоретических частотных или вероятностных распределений с учетом требований к машинному времени и памяти более эффективно, чем использование табличных данных для получения значений случайных факторов, необходимых в работе с моделью. Кроме того, использование необработанных эмпирических данных означает, что имитируется только прошлое. Возможными будут считаться только те события, которые уже происходили.