Навигация
Главная
Поиск
Форум
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
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65457
Модуль Forms 65217
Пример работы с... 64701
ТЕХНОЛОГИИ ДОСТ... 61904
Имитационное мо... 57784
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

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

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

Реклама



Подписывайся на 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 Комментариев · 6816 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Панель случайной ...
Программирование ...
Карта сайта
AdBlaster v2.5 - ...
Реализация ЭЦП по...
Dreamsoft Progres...
Игра PackMan
SUIPack
CLR via C#
Открытие Cd-ROM'a...
Rss Parser
Пример клиента ФТ...
Tank [Исходник на...
Файловый менеджер
Rotolabel
Battle.Net - мони...
Шифрование по алг...
Программа для рис...
Архив значков
Progressbar

Топ загрузок
Приложение Клие... 100470
Delphi 7 Enterp... 87090
Converter AMR<-... 20078
GPSS World Stud... 12851
Borland C++Buil... 11846
Borland Delphi ... 8604
Turbo Pascal fo... 7039
Visual Studio 2... 4999
Калькулятор [Ис... 4803
FreeSMS v1.3.1 3542
Случайные статьи
Объяснение решения
Проект подсети
Сертифицированный ...
УНИФИКАЦИЯ СПИСКОВ...
Использование техн...
Создание трояна в ...
Область применения
Invalid @ argument
Основное различие ...
Класс TGraphicControl
Управление связанн...
Параметризация спи...
Коды классов
• На какой уровень...
Как не платить МГТ...
Автоупаковка и авт...
3.5. Пример: упо...
Скорость процессора
LEAVE (ВЫЙТИ)
Дополнение n-й бит...
или общественной
Окно Add Table пос...
Интерфейс на естес...
LINITIAL (ИНИЦИАЛИ...
сообщений электрон...
Статистика



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


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