Этапы имитационного моделирования
Трудоемкость имитационного моделирования делает особо важными вопросы технологии и организации работ. По оценкам специалистов США, разработка даже простых моделей оценивается в 5-6 человеко-месяцев (30 тыс. долларов), а сложных – на два порядка больше
В типичном случае процесс моделирования проходит следующие фазы:
1) Описание системы и разработка концептуальной модели.
2) Подготовка данных.
3) Разработка моделирующего алгоритма и построение имитационной модели.
4) Оценка адекватности.
5) Планирование экспериментов.
6) Планирование прогонов.
7) Машинный эксперимент.
8) Анализ и интерпретация результатов.
9) Принятие решений относительно исследуемого объекта.
10) Документирование.
Перечисленные этапы могут перекрываться по времени (например, документирование должно вестись с первых дней работы над проектом) и охвачены многочисленными обратными связями.
Описание системы включает уточнение ее границ с внешней средой, характеристики внешних воздействий, состава внешних и внутренних связей, выбор показателей эффективности, постановку задачи на исследование. Концептуальная модель представляет собой упрощенное математическое или алгоритмическое описание сложной системы.
Подготовка исходных данных состоит в сборе и обработке данных наблюдений за моделируемой системой. Обработка в типичном случае заключается в построении функций распределения соответствующих случайных величин или вычислении числовых характеристик распределений (среднего, дисперсии и т.п.). К подготовке исходных данных можно отнести и сбор информации о предполагаемых изменениях в нагрузке системы (или о прогнозируемой нагрузке).
Разработка имитационной модели заключается в записи ее на одном из языков программирования (общецелевом или специализированном), трансляции и отладке программы модели. Следует стремиться к блочному (модульному) построению программы, позволяющему независимо вносить изменения в отдельные модули и повторно использовать ранее созданные модули.
Оценка адекватности модели заключается в проверке:
a) полноты учета основных факторов и ограничений, влияющих на работу системы;
b) согласия постулируемых законов распределения с первичными данными;
c) синтаксической корректности программы моделирования;
d) соответствия результатов имитационного моделирования и известного аналитического решения (при условиях существования этого решения);
e) осмысленности результатов в нормальных условиях и в предельных случаях.
Планирование экспериментов определяет совокупность исследуемых вариантов и стратегию их перебора. При этом учитываются: цель проекта (анализ или оптимизация); степень достоверности исходных данных (при малой достоверности необходимы дополнительные исследования чувствительности модели к изменению параметров); ресурсы календарного и машинного времени. На этом этапе полезно применение общей теории планирования экспериментов.
Планирование прогонов имеет целью получить возможно лучшие статистические оценки исследуемых показателей: несмещенные, с минимальной дисперсией. При этом объем вычислительных работ обычно ограничен (ограничено время на постановку экспериментов). Отдельным прогономназывается однократное выполнение программы имитационной модели, в котором модельное время монотонно возрастает.
Очень часто моделирование имеет целью получение стационарных характеристик, т.е. соответствующих типичным условиям работы. Поэтому важен вопрос определения длительности разгонного участка и времени вхождения в стационарный режим во время одного прогона. Этот момент обычно определяется экспериментально. Статистика, накопленная за время разгона, не должна учитываться в расчетах.
Важно правильно задать критерий останова прогона (например, рассчитать время моделирования, которое достаточно для получения достаточно точных характеристик системы). К этому этапу относятся вопросы уменьшения или исключения корреляции результатов, уменьшения дисперсии результатов, задания начальных условий моделирования.
Этапы 7-9 в дополнительных пояснениях не нуждаются.
Документирование должно сопровождать весь процесс разработки модели и хода экспериментов. Оно облегчает взаимодействие участников процесса моделирования, обеспечивает возможность использования модели в будущем в других разработках.