русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Логика работы интерпретатора GPSS-модели.


Дата добавления: 2014-07-28; просмотров: 2505; Нарушение авторских прав


 

Теоретические положения

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

Интерпретатор реализует логику метода модельных событий с помощью двух списковых структур:

цепь будущих событий (ЦБС);

цепь текущих событий (ЦТС).

Эти две структуры определяют положение транзакта в модели с точки зрения продвижения модельного времени и правил активизации транзактов.

 

ЦБС (является аналогом СБС в ММС) состоит из транзактов, движение которых по модели запланировано на некоторый момент в будущем:

а) планируется выход транзакта из блока GENERATE. В момент успешного выхода транзакта из этого блока соответствующая запись из ЦБС удаляется, но тут же, после выхода интерпретатор заносит в ЦБС следующую запись, соответствующую последователю этого транзакта в блоке GENERATE.

б) транзакт попал в блок ADVANCE (блок задержки).

Транзакты в ЦБС упорядочены по увеличению модельного времени, на которое запланировано их дальнейшее движение. При совпадении времени (узел событий) они располагаются в порядке занесения в ЦБС.

 

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

В ЦТС транзакты упорядочены по приоритетам (больший приоритет вперед). Если приоритет одинаков, то — в порядке занесения в ЦТС.

ЦБС фактически эквивалентна списку будущих событий в методе модельных событий, а ЦТС используется интерпретатором для реализации процессно‑ориентированной логики обработки критических событий.



Логика работы GPSS‑интерпретатора включает 3 фазы:

Фаза вводавыполняется однократно в начале работы ИМ и состоит в последовательном просмотре блоков модели, выявлении блоков GENERATE и в формировании для каждого блока записи в ЦБС для первого транзакта, который должен выйти через этот блок в модель.

Фазы КТМВ и ПЦТС выполняются итеративного до окончания моделирования.

Фаза коррекции таймера модельного времени заключается в переносе транзакта (транзактов) с наименьшим временем планируемого начала движения из ЦБС в ЦТС и соответствующем скачкообразном увеличении модельного времени.

 

Фаза просмотра ЦТС соответствует одному моменту модельного времени, определенному в предыдущей фазе, и заключается в последовательном продвижении транзактов, находящихся в ЦТС через возможно большее число блоков. Возврат на начало ЦТС осуществляется в том случае, когда при очередном перемещении транзакт проходит блок, снимающий условие блокировки (например, блоки RELEASE, LIAVE и др.).

Осуществление этой фазы реализует так называемую процессно-ориентированную логику обработки событий в ИМ.

 

В GPSS предусмотрен специальный механизм задания времени прогона ИМ с помощью так называемого «счетчика завершений». Начальное значение этого счетчика определяется разработчиком ИМ через операнд А управляющей карты START, а затем может быть организовано периодическое уменьшение этого значения в специальном сегменте модели, составленном из блоков GENERATE и TERMINATE. Как только счетчик завершений обнуляется, прогон ИМ завершается.

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

 

 

Иллюстрация на примере

Постановка задачи.

Построить GPSS-модель одноканальной СМО с неограниченной очередью.

 

Цели моделирования: исследовать загрузку КО и длину очереди.

Исходные данные:

ЗР интервалов времени между заявками во входном потоке ЗРПВ [18,6];

ЗР времени обслуживания – ЗРПВ [16,4].

 

Время прогона ИМ – 480.

 

Блок-схема такой GPSS-модели имеет вид:

 

Рассмотрим функционирование GPSS-модели в предположении следующей численной реализации случайных величин:

- интервал между заявками входного потока;

- время обслуживания заявки;

и соответствующей реализации следующих переменных:

- время входа заявки в систему,

- время начала обслуживания заявки,

- время окончания обслуживания заявки.

№ заявки
- - -

 

Графики, отражающие динамику работы СМО в соответствии с этими цифрами, имеют следующий вид:

 

 

Таблица, отражающая логику работы GPSS-интерпретатора для рассматриваемого примера ([N, T, NTB, PR, NSB])

№ Стр. Модельное время Цепь текущих событий Цепь будущих событий
до ф. ввода пусто пусто
после ф. ввода пусто [1,14,Нет,0,1], [2,480,Нет,0,8]
после ф.КТМВ t=14 [1,КМР,Нет,0,1] [2,480,Нет,0,8]
после ф. ПЦТС t=14 пусто [3,27,Нет,0,1], [1,32,5,0,6], [2,480,Нет,0,8]
после ф.КТМВ t=27 [3,КМР,Нет,0,1] [1,32,5,0,6], [2,480,Нет,0,8]
после ф. ПЦТС t=27 [3,КМР,2,0,3] [1,32,5,0,6], [4,44,Нет,0,1], [2,480,Нет,0,8]
после ф.КТМВ t=32 [3,КМР,2,0,3], [1, КМР,5,0,6] [4,44,Нет,0,1], [2,480,Нет,0,8]
после ф. ПЦТС t=32 пусто [4,44,Нет,0,1], [3,44,5,0,6], [2,480,Нет,0,8]
после ф.КТМВ t=44 [4,КМР,Нет,0,1], [3, КМР,5,0,6] [2,480,Нет,0,8]
после ф. ПЦТС t=44 пусто [4,58,5,0,6], [1,59,Нет,0,1], [2,480,Нет,0,8]

Для напоминания о соответствии номеров и имен блоков:

1-G; 2-Q; 3- S; 4- D; 5-A; 6 – R; 7 – T; 8- G; 9 – T.



<== предыдущая лекция | следующая лекция ==>
Блоки, управляющие движением транзактов | Сохраняемые величины.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.862 сек.