4.3. Имитационное моделирование и его этапы Термин имитационное моделирование используется во многих ситуациях, однако в сфере компьютерного моделирования он имеет вполне конкретный смысл, который, однако трудно определить одной фразой. Часть возможной двусмысленности проистекает из особенностей перевода текстов с английского на русский и наоборот, обусловленными некорректностью перевода слово в слово: далеко не все слова в разных языках имеют смысловые поля строго соответствующие друг другу.
В сфере компьютерного моделирования русскому термину1 имитационное моделирование соответствует английский термин simulation, в то время как более общему термину моделирование в английском соответствует modelling. При переводах эти различия могут передаваться не только дословной подстановкой терминов, но и более сложными конструкциями. Например, название книги [46] Ф. Мартина "Моделирование на вычислительных машинах" в оригинале имеет вид: "Computer modelling and simulation". Перевод слово в слово: "Компьютерное моделирование и симуляция" представляется более полным и точным. С другой стороны, простая калька от "simulation" - симуляция (симулятор) имеет более узкий смысл, ранее ассоциировавшийся с медициной, а ныне – чаще с компьютерными играми. Поэтому дословный перевод невольно "нагружается" дополнительным смысловым оттенком, которого в оригинале нет. Об этом следует помнить.
Исторически первыми смыслом термина имитационное моделирование было моделирование на основе метода Монте-Карло (или метода статистических испытаний).
В настоящее время фактический смысл термина имитационное моделирование значительно расширился и с ним обычно связывают методологию изучения сложных систем на базе моделирования (как правило, компьютерного). Более точно под этим подразумевается экспериментальное (на модели) изучение макроповедения системы исходя из известного микро-поведения ее элементов. При этом метод Монте-Карло является довольно характерным подходом к проведению таких "модельных" или "вычислительных" экспериментов, но далеко не единственным.
В отличие от общего математического моделирования (описания) объектов и явлений имитационное моделирование имеет смысл и дает наибольший эффект тогда, когда мы умеем решать прямую задачу, но не знаем, как достаточно просто и эффективно решать обратную за дачу. Именно такая ситуация весьма характерна для задач оптимального проектирования, многокритериальной оптимизации, принятия решений, прогнозирования и т.п.
Некоторые примеры:
Задана функция F(x), но в такой форме, что мы легко можем найти для конкретного x его образ x → F(x), но общего аналитического описания не имеем. Это бывает, если F(x) получается в виде результатов эксперимента, задана в виде таблицы или в виде алгоритма ее вычисления. Требуется найти корни (минимумы, максимумы).
Известен алгоритм (правило) обслуживания очереди и вероятностные характеристики потока заявок на входе. Нужно найти вероятностные характеристики очереди (среднюю длину, среднее время обслуживания, вероятность потери заявок, переполнения ...). Это - стандартная задача теории массового обслуживания.
Известны характеристики надежности элементов системы, структурная схема надежности. Нужно найти характеристики надежности всей системы.
Известны метрологические характеристики элементов измерительной системы и ее структурная схема. Нужно найти метрологические характеристики всей системы (прямая задача анализа погрешностей).
Известна модель измерительной системы с точки зрения прохождения сигнала со входа на выход. Найти сочетание управляемых параметров, обеспечивающих наилучшее значение заданного критерия эффективности (обратная задача).
Этапы имитационного моделирования
Необходимо подчеркнуть, что само имитационное моделирование как познавательный процесс отнюдь не исчерпывается простым прогоном модели или экспериментированием с ней. Чтобы полностью оправдать свое предназначение прогон модели должен быть системно включен составной часть в более общий процесс.
Ниже мы приводим основные этапы общего процесса имитационного моделирования согласно основополагающей книге Р. Шеннона1 [47]. Довольно обстоятельно этот вопрос рассмотрен также в [46].
Определение системы. (Постановка задачи - что нужно моделировать и с какой целью)
Формулирование модели (Переход от реальной системы к ее модели. Чаще всего через покомпонентное моделирование)
Проверка модели на адекватность.
а) в первом приближении (не дает ли абсурдных результатов);
б) проверка допущений;
в) проверка прохождения информации со входа на выход.
Стратегическое планирование. (Цель - уменьшение числа экспериментов за счет повышения их информативности).
Тактическое планирование.( Цель - оптимизация времени и точности отдельных экспериментов.)
а) за счет уменьшения времени переходных процессов;
б) за счет увеличения точности при сокращении объема выборки.
Экспериментирование. (Прогон модели)
Интерпретация. (Построение выводов по данным экспериментов, формулирование ответа задачи, поставленной в п.1).
Реализация результатов моделирования. (Внедрение)
Документирование.
|