Процесс имитационного моделирования
Авторы: Наместников А.М.
Описание: Приведены основные методы построения имитационных моделей с использованием системы MATLAB. Представлено большое количество практического материала и примеров, позволяющих создавать собственные имитационные модели, решающие широкий спектр прикладных задач, используя пакет MATLAB.
Источник: Разработка имитационных моделей в среде MATLAB: Методические указания для студентов специальностей 01719, 351400/Сост. А. М. Наместников. – Ульяновск, УлГТУ, 2004. – 72с. http://sernam.ru/method_im.php?id=3
Процесс последовательной разработки имитационной модели начинается с создания простой модели, которая затем постепенно усложняется в соответствии с требованиями, предъявляемыми решаемой проблемой. В процессе имитационного моделирования можно выделить следующие основные этапы:
- Формулирование проблемы: описание исследуемой проблемы и определение целей исследования
- Разработка модели: логико-математическое описание моделируемой системы в соответствии с формулировкой проблемы
- Подготовка данных: идентификация, спецификация и сбор данных
- Трансляция модели: перевод модели на язык, приемлемый для используемой ЭВМ
- Верификация: установление правильности машинных программ
- Валидация: оценка требуемой точности и соответствия имитационной модели реальной системе
- Стратегическое и тактическое планирование: определение условий проведения машинного эксперимента с имитационной моделью
- Экспериментирование: прогон имитационной модели на ЭВМ для получения требуемой информации
- Анализ результатов: изучение результатов имитационного эксперимента для подготовки выводов и рекомендаций по решению проблемы
- Реализация и документирование: реализация рекомендаций, полученных на основе имитации, и составление документации по модели и ее использованию
Первой задачей имитационного исследования является точное определение проблемы и детальная формулировка целей исследования. Как правило, определение проблемы является непрерывным процессом, который обычно осуществляется в течение всего исследования. Оно пересматривается по мере более глубокого понимания исследуемой проблемы и возникновения новых ее аспектов.
Как только сформулировано начальное определение проблемы, начинается этап построения модели исследуемой системы. Модель включает статическое и динамическое описание системы. В статическом описании определяются элементы системы и их характеристики, а в динамическом — взаимодействия элементов системы, в результате которых происходят изменения ее состояния во времени.
Процесс формулирования модели во многом является искусством. Разработчик модели должен понять структуру системы, выявить правила ее функционирования и суметь выделить в них самое существенное, исключив ненужные детали. Модель должна быть простой для понимания и в то же время достаточно сложной, чтобы реалистично отображать характерные черты реальной системы. Наиболее важными являются принимаемые разработчиком решения относительно того, верны ли принятые упрощения и допущения, какие элементы и взаимодействия между ними должны быть включены в модель. Уровень детализации модели зависит от цели ее создания. Необходимо рассматривать только те элементы, которые имеют существенное значение для решения исследуемой проблемы. Как на этапе формулирования проблемы, так и на этапе моделирования необходимо тесное взаимодействие между разработчиками модели и ее пользователями. «Первый эскиз» модели должен быть построен, проанализирован и обсужден. Во многих случаях это требует от разработчиков большой ответственности и готовности продемонстрировать свое возможное незнание исследуемой системы. Однако эволюционный процесс моделирования позволяет быстрее обнаруживать допущенные разработчиками неточности и более эффективно их конкретизировать. Кроме того, тесное взаимодействие на этапах формулирования проблемы и разработки модели создает у пользователя уверенность в правильности модели и поэтому помогает обеспечить успешную реализацию результатов имитационного исследования.
На этапе разработки модели определяются требования к входным данным. Некоторые из этих данных могут уже быть в распоряжении разработчика модели, в то время как для сбора других потребуются время и усилия. Обычно значения таких входных данных задаются на основе некоторых гипотез или предварительного анализа. В некоторых случаях точные значения одного (и более) входного параметра оказывают небольшое влияние на результаты прогонов модели. Чувствительность получаемых результатов к изменению входных данных может быть оценена путем проведения серии имитационных прогонов для различных значений входных параметров. Имитационная модель, следовательно, может использоваться для уменьшения затрат времени и средств на уточнение входных данных.
После того как разработана модель и собраны начальные входные данные, следующей задачей является перевод модели в форму, доступную для ЭВМ. Хотя для программирования имитационной модели может использоваться универсальный язык, применение специализированного имитационного языка имеет существенные преимущества. Помимо сокращения времени программирования использование имитационного языка упрощает разработку модели, так как язык содержит набор понятий для формализованного описания системы.
На этапах верификации и валидации осуществляется оценка функционирования имитационной модели. На этапе верификации определяется, соответствует ли запрограммированная для ЭВМ модель замыслу разработчика. Это обычно осуществляется путем ручной проверки вычислений, а также может быть использован и ряд статистических методов.
Установление адекватности имитационной модели исследуемой системе осуществляется на этапе валидации. Валидация модели обычно выполняется на различных уровнях. Рекомендуется выполнять валидацию на уровне входных данных, элементов модели, подсистем и их взаимосвязей. И хотя валидация имитационных моделей достаточно сложна, она является существенно более легкой задачей, чем валидация моделей других типов, например моделей линейного программирования. В имитационных моделях существует соответствие между элементами модели и элементами реальной системы, поэтому проверка адекватности разработанной модели включает сравнение ее структуры со структурой системы, а также сравнение того, как реализованы элементарные функции и решения в модели и системе.
Условия проведения машинных прогонов модели определяются на этапах стратегического и тактического планирования. Задача стратегического планирования заключается в разработке эффективного плана эксперимента, в результате которого либо выясняется взаимосвязь между управляемыми переменными, либо находится комбинация значений управляемых переменных, минимизирующая или максимизирующая отклик имитационной модели. В тактическом планировании в отличие от стратегического решается вопрос о том, как в рамках плана эксперимента провести каждый имитационный прогон, чтобы получать наибольшее количество информации из выходных данных. Важное место в тактическом планировании занимают определение начальных условий имитационных прогонов и методы снижения дисперсии среднего значения отклика модели.
Следующие этапы в процессе имитационного исследования - проведение машинного эксперимента и анализ результатов - включают прогон имитационной модели на компьютере и интерпретацию полученных выходных данных. При использовании результатов имитационных экспериментов для подготовки выводов или проверки гипотез о функционировании реальной системы применяются статистические методы.
Последним этапом в процессе имитационного исследования являются реализация полученных решений и документирование имитационной модели и ее использования. Ни один из имитационных проектов не должен считаться законченным до тех пор, пока их результаты не будут использованы в процессе принятия решений. Успех реализации во многом зависит от того, насколько правильно разработчик модели выполнил все предыдущие этапы процессов имитационного исследования. Если разработчик и пользователь работали в тесном контакте и достигли взаимопонимания при разработке модели и ее исследовании, то результаты проекта скорее всего будут успешно внедряться. Если же между ними не было тесной взаимосвязи, то, несмотря на элегантность и адекватность имитационной модели, сложно будет разработать эффективные рекомендации.
Названные выше этапы имитационного исследования редко выполняются в строго заданной последовательности, начиная с определения проблемы и кончая документированием. В ходе имитационного исследования могут быть сбои в прогонах модели, ошибочные допущения, от которых в дальнейшем приходится отказываться, переформулировки целей исследования, повторные оценки и перестройки модели. Такой итеративный процесс позволяет разработать имитационную модель, которая дает верную оценку альтернатив и облегчает процесс принятия решения.