Способы управления модельным временем




РОЛЬ ВРЕМЕНИ В ИМИТАЦИОННЫХ МОДЕЛЯХ

 

План лекции

Масштабы времени

2. Способы управления модельным временем

 

 

Масштабы времени

 

Имитационный эксперимент представляет собой наблюдение за поведением системы в течение некоторого промежутка времени. Однако, далеко не во всех испытаниях фактор
времени играет ведущую роль, а в некоторых и вообще может не рассматриваться.
Например, при вычислении площади круга полученный результат
не зависит от того, сколь долго мы будем «бомбить» квадрат случайным и точками и исключать не принадлежащие кругу точки. Но значительно больше таких за-
дач, в которых оценка эффективности моделируемой системы напрямую связана с
временными характеристиками ее функционирования. К ним относятся, например,-
напримернннннндддд задачи по оценке производительности, некоторые задачи по оценке на-
дежности, качества распределения ресурсов, а также все задачи, связанные с иссле-
дованием эффективности процессов обслуживания. Характерной особенностью
большинства практических задач является то, что скорость протекания рассматри-
ваемых в них процессов значительно ниже скорости реализации модельного экспе-
римента. Например, если моделируется работа авторемонтной мастерской в тече-
ние недели, вряд ли кому-то придет в голову воспроизводить этот процесс в модели
в таком же масштабе времени.

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

В связи с этим при разработке практически любой имитационной модели и пла-
нировании проведения модельных экспериментов необходимо соотносить между
собой три представления времени:

- реальное время, в котором происходит функционирование имитируемой
системы;

- модельное (или, как его еще называют, системное} время, в масштабе которо-
го организуется работа модели;

- машинное время, отражающее затраты времени ЭВМ на проведение ими-
тации.

С помощью механизма модельного времени решаются следующие задачи.

1) отображается переход моделируемой системы из одного состояния в другое;

2) производится синхронизация работы компонент модели;

3) изменяется масштаб времени «жизни» (функционирования) исследуемой
системы;

4) производится управление ходом модельного эксперимента.

5) моделируется квазипараллельная реализация событий в модели;

Приставка «квази» в данном случае отражает последовательный характер об-
работки событий (процессов) в ИМ, которые в реальной системе возникают (про-
текают) одновременно.

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

 

Способы управления модельным временем

 

Ранее были названы два метода реализации механизма модельного времени — с
постоянным шагом и по особым состояниям.

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

При использовании метода постоянного шага отсчет системного времени ве-
дется через фиксированные, выбранные исследователем интервалы времени. Со-
бытия в модели считаются наступившими в момент окончания этого интервала.
Погрешность в измерении временных характеристик системы в этом случае зави-
сит от величины шага моделирования dt.

Метод постоянного шага предпочтительнее, если

~ события появляются регулярно, их распределение во времени достаточно равномерно;

~ число событий велико и моменты их появления близки;

~ невозможно заранее определить моменты появления событий.

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

Пусть, например, событие состоит в том, что летящий самолет пересекает неко-
торый воздушный рубеж, расстояние до которого равно R. Если самолет движется
по прямой с постоянной скоростью V, то можно вычислять путь, пройденный само
летом, с интервалом времени dt: S:= S+ Vdt. Соответственно событие считается
наступившим, если выполняется условие S > R, а момент времени наступления со-
бытия принимается равным n. d t, где n — номер шага моделирования, на котором
условие стало истинным.

В общем виде алгоритм моделирования с постоянным шагом представлен На
рис. 1. (tм — текущее значение модельного времени, Тм — интервал моделирования)-
ва.

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

 

 

 

 


Рис. 1. Алгоритм моделирования с постоянным шагом

 

закончит ли диспетчер ввод текста до пересечения самолетом заданного
рубежа. Алгоритм управления модельным временем для рассматриваемого приме-
ра показан на рис. 2.

Очевидно, что оба рассматриваемых процесса (полет самолета и ввод информа-
ции) должны быть «привязаны» к единой оси модельного времени. Вместес тем
каждый из них характеризуется различной скоростью, разной степенью дискрет-
ностии т. д. В такой ситуации для различных значений шага моделирования ∆ t
экспериментможет дать разные результаты. Причем если шаг будет слишком боль-
шим, то результат, скорее всего, будет неверным. Момент окончания ввода информации будет всегда совпадать с моментом пересечения самолетом заданного рубежа. Такая ситуация показана на рис. 3.

 

 


 

 


Рис. 2. Пример моделирования с постоянным шагом

 

 


Рис.3. Пример привязки событий к оси модельного времени

 

Приведенный пример показывает, что выбор величины шага моделирования является нелегким и
очень важным делом. Универсальной методики решения этой проблемы не су-
ществует, но во многих случаях можно использовать один из следующих под-
ходов:

~ принимать величину шага равной средней интенсивности возникновения со-
бытий различных типов;

~ выбирать величину d t равной среднему интервалу между наиболее частыми
(или наиболее важными) событиями.

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


 


Рис. 4. Алгоритм моделирования по особым состояниям

 



являются одновременными в действительности.

Метод моделирования по особым состояниям сложнее в реализации, так как
для него требуется разработка специальной процедуры планирования событий (так
называемого календаря событий).

Моделирование по особым состояниям целесообразно использовать, если:

~ события распределяются во времени неравномерно или интервалы между
ними велики;

предъявляются повышенные требования к точности определения взаимного
положения событий во времени;

- необходимо реализовать квазипараллельную обработку одновременных событий.
Дополнительное достоинство метода заключается в том, что он позволяет эко-
номить машинное время, особенно при моделировании систем периодического дей-
ствия, в которых события длительное время могут не наступать.

Обобщенная схема алгоритма моделирования ло особым состояниям представ-
лена на рис.4 (t соб. — прогнозируемый момент наступления i-го события.

Чтобы ~почувствовать разницу~ в использовании двух методов
управления модельнымвременем, вернемся еще раз к примеру с летящим самоле-
том и сидящим диспетчером,

На этот раз перед разработчиком модели встает иная проблема: что пони-
мать под "особыми состояниями", которые должны влиять на изменение мо-
дельного времени? На практике обычно вместо состояний рассматривают со-
бытия, определяющие смену состояний моделируемого процесса. Для процесса
ввода информации диспетчером такой переход выполняется достаточно просто:
событие — это ввод очередного символа; другими словами, ввод очередного сим-
вола «продвигает» модельное время на соответствующий интервал. Все так про-
сто потому что процесс ввода является дискретным. А что делать с непрерывно
летящим самолетом? Здесь возможны два варианта: либо увязать расчет нового
положения самолета с моментом ввода очередного символа, либо изменить в
модели представление полета с непрерывного на дискретное (например, рас-
сматривать
перемещение не самого самолета в воздухе, а его «образах на экране
индикатора).

Алгоритм работы модели для первого варианта приведен на рис. 5.

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

 

 

 


Рис. 5. Пример работы модели по особым состояниям

 

Для самолета такой величиной будет служить скорость полета, а для диспетче-
ра
— скорость ввода символов. В этом случае изменение модельного времени и рас-
чет нового положения самолета также можно увязатьсвводом очередного символа. Логика работы такой модели по-прежнему будет соответствовать алгоритму,
изображенному на рис.5. Отличие заключается лишь в том, что прогноз времени
ввода очередного символа выполняется на основе функции распределения соот-
ветствующей случайной величины. Так, если скорость ввода символов подчиняет-
ся нормальному закону с параметрами т и d, то очередное i-е значение модельного
времени t мi, определяется следующим образом:

 

tм,. = tмi-1,. + norm(m, d).

 

В этом выражении слагаемое norm(m, d) означает обращение к генератору слу-
чайных чисел, распределенных по нормальному закону.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-04-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: