Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 63026
Имитационное мо... 58344
Реклама
Сейчас на сайте
Гостей: 5
На сайте нет зарегистрированных пользователей

Пользователей: 13,091
новичок: avegraf
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование автовокзала + Отчет + Блок схема
Меры близости на векторах в Delphi + Блок схемы
Обучающая и тестирующая программа по здаче экзамена ПДД на Turbo Pascal ...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Создание имитационной модели на языке GPSS

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

Таблица 1 - Типы объектов GPSS

Тип объектов

Обозначе­ние

Тип объектов

Обозначе­ние

Транзакты

-

Функции

FN

Блоки

-

Очереди

Q

Одноканальные устройства

F

Таблицы

Т

Многоканальные устройства

S

Ячейки

X

Логические ключи

L

Матрицы ячеек

м

Арифметические переменные

V

Списки пользователя

с

Логические (Булевы) переменные

BV

Группы

G

 

Все объекты в GPSS имеют свойства, называемые стандартными чи­словыми атрибутами (СЧА). А свойства ИМ в целом в GPSS называются системными числовыми атрибутами. Каждый объект GPSS имеет свой набор СЧА. Значения всех СЧА доступны пользователю, причем некоторые из них могут быть изменены. Значения системных числовых атрибутов дос­тупны лишь для чтения.

К системным числовым атрибутам относятся:

RNj - число, возвращаемое j-м датчиком случайных чисел. Это целое число изменяется в пределах от О до 999 включительно, кроме случаев его использования в качестве аргумента функции или элемента в переменной, когда его значение - дробь от 0 до 0,999999;

С1 - текущее значение относительного модельного времени (автомати­чески изменяется GPSS и устанавливается в 0 командами CLEAR или RESET, см. п. 2.4.2);

АС 1 - текущее значение абсолютного модельного времени (автоматиче­ски изменяется GPSS и устанавливается в 0 командой CLEAR, см. п. 2.4.2);

TG1 - текущее значение счетчика завершений (см. п. 2.4.2);

Ml - время пребывания в системе обрабатываемого в данный момент транзакта.

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

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

Основными СЧА транзакта в GPSS являются параметры и приоритет.

Каждый транзакт может иметь (по желанию пользователя) до 1020 пара­метров одного из четырех форматов:

    «слово» - может принимать целые значения от минус 2147483647 до плюс 2147483647;

    «полуслово» - целые значения от минус 32768 до плюс 32768;

    «байт» - целые значения от минус 255 до плюс 255;

   «плавающая точка» - дробные значения от минус 16777215 до плюс 16777215.

По умолчанию значения всех параметров транзакта устанавливаются в ноль, в дальнейшем могут изменяться с помощью блока ASSIGN (см. п. 2.4.3):

Р) - значение /-го параметра текущего транзакта;

PFj - значение /-го параметра текущего транзакта форматом «слово»;

РЩ - значение /-го параметра текущего транзакта форматом «полусло­во»;

PBj - значение /-го параметра текущего транзакта форматом «байт»;

PL) - значение /-го параметра текущего транзакта форматом «плавающая точка»;

PR - приоритет транзакта, обрабатываемого в данный момент (может изменяться от 0 до 127 блоком PRIORITY, см. п. 2.4.3);

MP) - значение, равное разности абсолютного модельного времени и значения /-го параметра текущего транзакта;

MB) - флаг синхронизации: 1, если транзакт в блоке / принадлежит тому же семейству, что и текущий транзакт; О-в противном случае.

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

    создание (генерация) и уничтожение транзактов;

    изменение числовых атрибутов блоков и транзактов;

    задержка транзакта на определенный интервал времени;

    изменение маршрута движения транзакта.

У каждого блока имеется два СЧА:

W] - количество транзактов, находящихся в блоке с номером / в текущий момент модельного времени;

Л] - общее количество транзактов, поступивших в блок с номером /.

Одноканальные устройства (Facility) описывают оборудование, кото­рое в любой момент времени может быть занято только одним транзактом (одноканальные системы массового обслуживания), а также оборудование, на котором обслуживание одной заявки может быть прервано обслуживани­ем другой заявки (например, с более высоким приоритетом). Одноканаль­ные устройства в GPSS обеспечивают сбор основной статистической ин­формации о своем функционировании и имеют следующие СЧА:

F] - текущее состояние устройства j. Равно 0, если устройство свободно, и 1, если устройство занято (может изменяться блоками SEIZE и RELEASE, см. п. 2.4.4);

FRj - коэффициент использования устройства в тысячных долях, т. е. ес­ли коэффициент равен 0,7, то FRj равно 700;

FCj - общее число транзактов, вошедших в устройство j\

FT] - среднее время использования устройства одним транзактом.

Многоканальные устройства (Storage) описывают оборудование, ко­торое может использоваться несколькими транзактами одновременно (мно­гоканальные системы массового обслуживания). Кроме того, многоканаль­ные устройства обеспечивают сбор основной статистической информации о своем функционировании и имеют СЧА:

<Sj - текущее содержимое многоканального устройства j (может изме­няться блоками ENTER и LEAVE, см. п. 2.4.4);

Rj - число свободных единиц многоканального устройства;

SRj - коэффициент использования многоканального устройства в тысяч­ных долях. Например, если коэффициент равен 0,65, то SRj равен 650;

SAj - среднее содержимое многоканального устройства j (целая часть);

SM] - максимальное содержимое многоканального устройства j\

SCj - общее число транзактов, вошедших в многоканальное устройство j\

ST] - среднее время пребывания транзактов в многоканальном устройст­ве./;

SEj - признак пустоты многоканального устройства j: 1 - пусто, 0 - за­полнено;

<SFj - признак заполненности многоканального устройства j: 1 - заполне­но, 0-в противном случае.

Логические ключи используются для блокировки или изменения на­правления движения транзактов в зависимости от ранее наступивших в мо­дели событий. Логические ключи имеют один СЧА:

LSj - состояние логического ключа с номером j: 1 - включен, 0 - выклю­чен.

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

Логические переменные позволяют проверять несколько условий, ис­ходя из состояний или значений СЧА объектов, например, для описания условий, определяющих движение транзактов.

Функции позволяют задавать функциональные зависимости между не­сколькими переменными, а также переменной и СЧА объектов. Переменные и функции в GPSS имеют следующие СЧА: I ] - значение арифметической переменной /: BVj - значение логической переменной / (1 - истина, О - ложь); FN) - значение функции / (дробная часть отбрасывается за исключением использования в качестве аргумента другой функцией).

Очереди (Queue) обеспечивают сбор основной статистической инфор­мации о времени задержки транзактов из-за недоступности или занятости оборудования. Очереди имеют СЧА:

Q] - текущая длина очереди / (может изменяться блоками QUEUE и DEPART, см. п. 2.4.5);

QA) - средняя длина очереди /: QM) - максимальная длина очереди /: QC) - общее число входов в очередь /: QZj - число нулевых входов в очередь /:

QT) - среднее время пребывания транзактов в очереди /. включая тран­закты, прошедшие очередь без ожидания;

QX) - среднее время пребывания транзактов в очереди /. исключая тран­закты, прошедшие очередь без ожидания.

Таблицы предназначены для сбора статистической информации о слу­чайных величинах, заданных пользователем. Таблица состоит из частотных групп, в которые заносится число попаданий заданной случайной величины (переменной или СЧА). Для каждой таблицы автоматически вычисляется математическое ожидание и среднеквадратическое отклонение значений. Ниже приведены СЧА таблиц:

ТВ] - среднее арифметическое значение элементов таблицы /:

ТС] - общее число элементов в таблице j\

TDj - среднеквадратическое отклонение элементов таблицы /.

Ячейки и матрицы сохраняемых величин используются для сохране­ния некоторой числовой информации. Например, значение, занесенное в ячейку, может представлять собой длину очереди в какой-то конкретной точке модели. Любой транзакт может произвести запись информации в эти объекты либо считать информацию. Ячейки и матрицы сохраняемых вели­чин имеют следующие СЧА:

X] - содержимое ячейки /:

МХ](а,Ь) - содержимое элемента матрицы ячеек j, расположенного в строке а и столбце Ь.

Списки пользователя позволяют организовать работу с очередями, дисциплина обслуживания в которых отличается от FIFO («первым при­шел - первым обслужен»), описываемых объектом «очередь», а также помо­гают синхронизировать движение различных транзактов по ИМ. СЧА спи­ска пользователя:

СЩ - текущее число транзактов в j- м списке пользователя;

CAj - среднее число транзактов в j-м списке пользователя;

СМ] - максимальное число транзактов в j- м списке пользователя;

CCj - общее число транзактов, которые поступали в j- м списке пользова­теля;

СТ] - среднее время пребывания транзактов в j- м списке пользователя.

Опубликовал Kest May 24 2012 18:38:24 · 0 Комментариев · 6915 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Расширенный загру...
Calendar
ComboBox97
Borland Delphi 8 ...
Turbo Pascal for ...
DirHTMLReportBuil...
Запрет гостям ск...
База Allsubmitter...
Battle.Net - мони...
DelphiXIsoDemo1
Text3D
Sztransppanel
PDJ Scrollers
Приемы программир...
SODA [Исходник на...
Разработка распре...
100 компонентов о...
isoCanvas (Редакт...
Разработка Web-пр...
Синтаксический ан...

Топ загрузок
Приложение Клие... 100480
Delphi 7 Enterp... 87866
Converter AMR<-... 20082
GPSS World Stud... 13501
Borland C++Buil... 12057
Borland Delphi ... 8671
Turbo Pascal fo... 7048
Visual Studio 2... 5005
Калькулятор [Ис... 4908
FreeSMS v1.3.1 3545
Случайные статьи
Где мы находимся?
й - Алфавитный ука...
Режим с обострением
Реализация обобщен...
Разработка микропр...
Disk full
Как найти несколь...
Memory reference e...
Разрешение фотогра...
Процедуры и функци...
Команда INSERT
Унифицированный вх...
узле Services (Слу...
Обращение к файлу ...
Удаление строки из...
Задачи привратника...
Работа с Cookies н...
Размеры динамическ...
Процедура SetFillP...
на диске RAID-1
Как донести до кли...
Эмуляция карты NFC
Блейд-серверы DELL...
Первое контрольно...
Пример стека как с...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?