1. структура асни и стадии проектирования 6


Имитационное моделирование и его этапы



страница9/12
Дата18.10.2016
Размер1.53 Mb.
1   ...   4   5   6   7   8   9   10   11   12

4.3. Имитационное моделирование и его этапы


Термин имитационное моделирование используется во многих ситуациях, однако в сфере компьютерного моделирования он имеет вполне конкретный смысл, который, однако трудно определить одной фразой. Часть возможной двусмысленности проистекает из особенностей перевода текстов с английского на русский и наоборот, обусловленными некорректностью перевода слово в слово: далеко не все слова в разных языках имеют смысловые поля строго соответствующие друг другу.

В сфере компьютерного моделирования русскому термину1 имитационное моделирование соответствует английский термин simulation, в то время как более общему термину моделирование в английском соответствует modelling. При переводах эти различия могут передаваться не только дословной подстановкой терминов, но и более сложными конструкциями. Например, название книги [46] Ф. Мартина "Моделирование на вычислительных машинах" в оригинале имеет вид: "Computer modelling and simulation". Перевод слово в слово: "Компьютерное моделирование и симуляция" представляется более полным и точным. С другой стороны, простая калька от "simu­lation" - симуляция (симулятор) имеет более узкий смысл, ранее ассоциировавшийся с медициной, а ныне – чаще с компьютерными играми. Поэтому дословный перевод невольно "нагружается" дополнительным смысловым оттенком, которого в оригинале нет. Об этом следует помнить.

Исторически первыми смыслом термина имитационное моделирова­ние было моделирование на основе метода Монте-Карло (или метода статистических испытаний).

В настоящее время фактический смысл термина имитационное моделирование значительно расширился и с ним обычно связыва­ют методологию изучения сложных систем на базе моделирования (как правило, компьютерного). Более точно под этим подразумевается экспериментальное (на моде­ли) изучение макроповедения системы исходя из известного мик­ро-поведения ее элементов. При этом метод Монте-Карло является довольно характерным подходом к проведению таких "модельных" или "вычислительных" экспериментов, но далеко не единственным.

В отличие от общего математического моделирования (описания) объектов и явлений имитационное моделирование имеет смысл и дает наибольший эффект тогда, когда мы умеем решать прямую задачу, но не знаем, как достаточно просто и эффективно решать обратную за дачу. Именно такая ситуация весьма характерна для задач опти­мального проектирования, многокритериальной оптимизации, приня­тия решений, прогнозирования и т.п.

Некоторые примеры:


  1. Задана функция F(x), но в такой форме, что мы легко можем найти для конкретного x его образ xF(x), но общего аналитического описания не имеем. Это бывает, если F(x) получается в виде результатов эксперимента, задана в виде таблицы или в виде алгоритма ее вычисления. Требуется найти корни (минимумы, максимумы).

  2. Известен алгоритм (правило) обслуживания очереди и веро­ятностные характеристики потока заявок на входе. Нужно найти вероятностные характеристики очереди (среднюю дли­ну, среднее время обслуживания, вероятность потери зая­вок, переполнения ...). Это - стандартная задача теории мас­сового обслуживания.

  3. Известны характеристики надежности элементов системы, структурная схема надежности. Нужно найти характеристики надежности всей системы.

  4. Известны метрологические характеристики элементов измери­тельной системы и ее структурная схема. Нужно найти мет­рологические характеристики всей системы (прямая задача анализа погрешностей).

  5. Известна модель измерительной системы с точки зрения про­хождения сигнала со входа на выход. Найти сочетание уп­равляемых параметров, обеспечивающих наилучшее значение заданного критерия эффективности (обратная задача).


Этапы имитационного моделирования

Необходимо подчеркнуть, что само имитационное моделирование как познавательный процесс отнюдь не исчерпывается простым прогоном модели или экспериментированием с ней. Чтобы полностью оправдать свое предназначение прогон модели должен быть системно включен составной часть в более общий процесс.

Ниже мы приводим основные этапы общего процесса имитационного моделирования согласно основополагающей книге Р. Шеннона1 [47]. Довольно обстоятельно этот вопрос рассмотрен также в [46].


  1. Определение системы. (Постановка задачи - что нужно моде­лировать и с какой целью)

  2. Формулирование модели (Переход от реальной системы к ее модели. Чаще всего через покомпонентное моделирование)

  3. Проверка модели на адекватность.

а) в первом приближении (не дает ли абсурдных результа­тов);

б) проверка допущений;

в) проверка прохождения информации со входа на выход.


  1. Стратегическое планирование. (Цель - уменьшение числа экспериментов за счет повышения их информативности).

  2. Тактическое планирование.( Цель - оптимизация времени и точности отдельных экспериментов.)

а) за счет уменьшения времени переходных процессов;

б) за счет увеличения точности при сокращении объема выборки.



  1. Экспериментирование. (Прогон модели)

  2. Интерпретация. (Построение выводов по данным экспериментов, формулирование ответа задачи, поставленной в п.1).

  3. Реализация результатов моделирования. (Внедрение)

  4. Документирование.

4.4. Моделирование системного времени


Модель всей системы обычно представляется в виде структурной схемы, состоящей из модулей (моделей компонентов) и информационных связей (стрелок). С каждой стрелкой ассоциируется некоторая переменная, которая может принимать те или иные значения. Значение переменной присваивается в том модуле, из которого выходит связанная с ней стрелка. То есть для каждой переменной есть единственный модуль, в котором она генерируется или вырабатывается. Значение переменной может использоваться во многих модулях, а именно в тех, куда направлена соответствующая входящая стрелка.

Рис. 4.41. Фрагмент покомпонентной модели с явной "разводкой" переменной tM

Для динамических моделей одна переменная - время - является выделенной переменной, поскольку она используется во всех остальных модулях. Для ее реализации должен быть специальный модуль, который генерирует и подает в нужном формате во все остальные модули значение системного (модельного) времени tM (modeling time). Процесс моделирования также осуществляется во времени, но это уже другое время, назовем его временем прогона tR (run time).

В данном разделе пойдет речь реализации модельного времени tM.Ввиду очевидности использования переменной tM ее зачастую явно вообще не объявляют1, а соответствующие линии со стрелками на схеме не показывают. Несмотря на интуитивную ясность проблема представления модельного времени существует и ее так или иначе приходится решать, по крайней мере на этапе составления компьютерной программы.

Существую два основных метода представления модельного време­ни:

МФШ - метод фиксированного шага;

МПШ - метод переменного шага.



МФШ - в этом случае временные метки (или значения времени в какой-то шка­ле, чаще в равномерной), соответствующие заранее определенным моментам времени, вы­даются с помощью специального модуля - генератора времени - и распространяются по всем остальным динамическим модулям модели. При этом метки времени выдаются независимо от того, происходят или не происходят заданные события в модели.

Пример: представление сигналов в виде массивов отсчетов пос­ле равномерной дискретизации и обработка массивов путем последо­вательного их перебора (просмотра в цикле по номеру отсчета). Здесь модельное время представляется в виде tM=i·Δt, где i - номер временного шага, Δt - его длительность. Важно отметить, что в программе явно используется только "дискретное время" -, которое генерируется обычно с помощью оператора цикла (i используется в качестве счетчика циклов). Для перехода к "физическому" модельному времени необходимо знать величину Δt, которая явно в программе может отсутствовать, поскольку при обработке массивов отсчетов непосредственно не используется.

Достоинства МФШ:

1) простота реализации механизма времени в модели;

2) простота синхронизации прогона разных модулей.

Недостатки МФШ:

1) требуется априорно решать задачу выбора временного шага Δt;

2) возможна потеря существенной информации при большом Δt;

3) возможно качественное ухудшение модели (потеря устойчи­вости, сходимости, возникновение неадекватных эффектов и т.п.).



МПШ - здесь значения переменной tM (модельное время) вырабатывается одним из модулей в качестве выходной величины на основании величин, получаемых в ходе моделирования в других модулях. То есть в данном случае время есть зависимая величина. При этом временные метки выдаются только для тех моментов модельного времени, когда в модели происходят заданные существенные события.

Пример: в модели системы массового обслуживания время нас­тупления очередного события (запроса) tMi моделируется с помощью генератора псевдослучайных чисел непосредственно в процессе мо­делирования.

Достоинства МПШ:

1) экономится память и процессорное время при моделировании существенно нерегулярных событий;

2) не требуется решать задачу априорного выбора шага Δt;

3) сохраняется инвариантность1 причинно-следственных связей в объекте и в модели.



Недостатки МПШ:

1) нужно уметь находить время наступления очередного события в процессе моделирования (то есть, нужен алгоритм генерирования величины отрезка времени до следующего события);

2) применим в чистом виде только для моделирования систем с дискретными событиями.




Поделитесь с Вашими друзьями:
1   ...   4   5   6   7   8   9   10   11   12


База данных защищена авторским правом ©grazit.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал