Навигация
Главная
Поиск
Форум
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
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
http://pmprom.ru купить конвеи еры ленточные: купить конвейер ленточный. .
Omoda омода цена и комплектации omoda-au.ru.
Сейчас на сайте
Гостей: 15
На сайте нет зарегистрированных пользователей

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

Игра Sokoban на Delphi + Блок схемы
Расчет размера дохода на одного человека в Turbo Pascal
Метод конечных разностей для интерполяции/экстраполяции на Delphi

Моделирование электронных средств на языке GPSS
Введение
В математических моделях (ММ) сложных объектов, представленных в виде систем массового обслуживания (СМО), фигурируют средства обслуживания, называемые обслуживающими аппаратами (ОА), и обслуживаемые заявки, называемые транзактами. Так, в модели производственной линии ОА отображают рабочие места, а транзакты - поступающие на обработку датали, материалы, инструмент.
Состояние СМО характеризуется состояниями ОА, транзактов и очередей к ОА. Состояние ОА описывается двоичной переменной, которая может принимать значения "занят" или "свободен". Переменная, характеризующая состояние транзакта, может иметь значения "обслуживания" или "ожидания". Состояние очереди характеризуется количеством находящихся в ней транзактов. Имитационная модель СМО представляет собой алгоритм, отражающий поведение СМО, т.е. отражающий изменения состояния СМО во времени при заданных потоках заявок, поступающих на входы системы. Параметры входных потоков заявок - внешние параметры СМО. Выходными параметрами являются величины, характеризующие свойства системы - качество ее функционирования. Примеры выходных параметров: производительность СМО - среднее число заявок, обслуживаемых в единицу времени; коэффициенты загрузки оборудования - отношение времен обслуживания к общему времени в каждом ОА; среднее время обслуживания одной заявки. Основное свойство ОА, учитываемое в модели СМО, - это затраты времени на обслуживание, поэтому внутренними параметрами в модели СМО являются величины, характеризующие это свойство ОА. Обычно время обслуживания рассматривается как случайная величина и в качестве внутренних параметров фигурируют параметры законов распределения этой величины.
Имитационное моделирование позволяет исследовать СМО при различных типах входных потоков и интенсивностях поступления заявок на входы, при вариациях параметров ОА, при различных дисциплинах обслуживания заявок. Дисциплина обслуживания - правило, по которому заявки поступают из очередей на обслуживание. Величина, характеризующее право на первоочередное обслуживание, называется приоритетом. В моделях СМО заявки, приходящие на вход занятого ОА, образуют очереди, отдельные для заявок каждого приоритета. При освобождении ОА на обслуживание принимается заявка из непустой очереди с наиболее высоким приоритетом.
Основной тип ОА - устройства, именно в них происходит обработка транзактов с затратами времени. К ОА относятся также накопители (памяти), отображающие средства хранения обрабатываемых деталей в производствееных линиях или обрабатываемых данных в вычислительных системах. Накопители характеризуются не временами обслуживания заявок, а емкостью - максимально возможным количеством одновременно находящихся в накопителе заявок.
К элементам имитационных моделей СМО кроме ОА относят также узлы и источники заявок. Связи ОА между собой реализуют узлы, т.е. характерезуют правила, по которым заявки направляются к тому или иному ОА. Для описания моделей СМО при их исследовании на ЭВМ разработаны специальные языки имитационного моделирования. Существуют общецелевые языки, ориентированные на описание широкого класса СМО в различных предметных областях, и специализированные языки, предназначенные для анализа систем определенного типа.
Сложные функции моделирующего алгоритма могут быть реализованы средствами универсальных языков программирования (Паскаль, Си), что предоставляет неограниченные возможности в разработке, отладке и использовании модели. Однако подобная гибкость приобретается ценой больших усилий, затрачиваемых на разработку и программирование весьма сложных моделирующих алгоритмов, оперирующих со списковыми структурами данных. Альтернативой этому является использование специализированных языков имитационного моделирования.
Специализированные языки имеют средства описания структуры и процесса функционирования моделируемой системы, что значительно облегчает и упрощает программирование имитационных моделей, поскольку основные функции моделирующего алгоритма при этом реализуются автоматически. Программы имитационных моделей на специализированных языках моделирования близки к описаниям моделируемых систем на естественном языке, что позволяет конструировать сложные имитационные модели пользователям, не являющимся профессиональными программистами.
Одним из наиболее эффективных и распространенных языков моделирования сложных дискретных систем является в настоящее время язык GPSS. Он может быть с наибольшим успехом использован для моделирования систем, формализуемых в виде систем массового обслуживания. В качестве объектов языка используются аналоги таких стандартных компонентов СМО, как заявки, обслуживающие приборы, очереди и т.п. Достаточный набор подобных компонентов позволяет конструировать сложные имитационные модели, сохраняя привычную терминологию СМО.

Построение структурной модели схемы.
В соответствии с заданием, структурная схема модели имеет вид:

Рис. 1. Структурная схема модели.
В соответствии с полученной структурной схемой модели, представим её в виде СМО. В нашей модели приоритет транзактов, согласно заданию, одинаков.

Рис. 2. Модель в виде системы массового обслуживания.

Текст программы
GENERATE 8,4 ;генерация транзактов
QUEUE QRAM ;вход в накопитель
QUEUE QN ;вход в очередь к основному каналу
SEIZE OSKANAL ;занять основной канал
DEPART QN ;покинуть очередь к основному каналу
ADVANCE 7,3 ;задержка на обработку
RELEASE OSKANAL ;освободить основной канал
DEPART QRAM ;покинуть накопитель
OUT TERMINATE ;вывод транзактов из модели
GENERATE 170,30,,,1 ;генерация «сбойных» транзактов
PREEMPT OSKANAL,PR,OUT ;захват основного канала
SPLIT 1,REZ ;передача копии транзакта в резервный канал
ADVANCE 20,7 ;задержка на восстановление основного канала
RETURN OSKANAL ;освободить основной канал
TRANSFER ,OUT ;переслать транзакт на блок TERMINATE
REZ QUEUE 1 ;занять очередь
ADVANCE 1,1 ;задержка на запуск резервного канала
DEPART 1 ;покинуть очередь
QUEUE 2 ;вход очередь к резервному каналу
SEIZE RKANAL ;занять резервный канал
DEPART 2 ;покинуть очередь к резервному каналу
ADVANCE 7,3 ;задержка на обработку
RELEASE RKANAL ;освободить резервный канал
TRANSFER ,OUT ; переслать транзакт на блок TERMINATE
;сегмент таймера
GENERATE 7200 ;генерация транзактов через 7200 с
TERMINATE 1 ;вывод транзакта из модели и уменьшение значения счетчика на единицу
START 1 ;установка начального значения счетчика в еденицу




Листинг результатов моделирования.
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 7200.000 28 2 0


NAME VALUE
OSKANAL 10002.000
OUT 10.000
QN 10001.000
QRAM 10000.000
REZ 17.000
RKANAL 10003.000


LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 894 0 0
2 QUEUE 894 0 0
3 QUEUE 894 2 0
4 SEIZE 892 0 0
5 DEPART 892 0 0
6 ADVANCE 892 1 0
7 RELEASE 853 0 0
8 DEPART 853 0 0
OUT 9 TERMINATE 975 0 0
10 GENERATE 42 0 0
11 PREEMPT 42 0 0
12 SPLIT 42 0 0
13 ADVANCE 42 0 0
14 RETURN 42 0 0
15 TRANSFER 42 0 0
REZ 16 QUEUE 42 0 0
17 ADVANCE 42 0 0
18 DEPART 42 0 0
19 QUEUE 42 0 0
20 SEIZE 42 0 0
21 DEPART 42 0 0
22 ADVANCE 42 0 0
23 RELEASE 42 0 0
24 TRANSFER 42 0 0
25 GENERATE 1 0 0
26 TERMINATE 1 0 0


FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
OSKANAL 934 0.954 7.357 1 978 0 0 2 0
RKANAL 42 0.039 6.703 1 0 0 0 0 0


QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 1 0 42 0 0.006 1.031 1.031 0
2 1 0 42 42 0.000 0.000 0.000 0
QRAM 43 41 894 0 21.064 169.645 169.645 0
QN 6 2 894 126 1.350 10.871 12.654 0


FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
981 0 7201.562 981 0 1
978 0 7205.764 978 7 8
974 1 7323.492 974 0 11
982 0 14400.000 982 0 27




Заключение.
Согластно результатам, приведенным в файле отчета о работе программы среднее время пребывания транактов в магистрале – 169.645 с.; число прерванных сообщений – 42; объем памяти, необходимый для бесперебойной работы магистрали в течение двух часов, равен объему, который занимают 43 транзакта; коэффициент использования резервного канала – 0.039
Опубликовал Kest June 03 2009 10:57:48 · 0 Комментариев · 18915 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
C++ : библиотека ...
PHP в примерах
Пример работы с ф...
База игр
3D Тетрис [Исходн...
Handles
CwstatusBar
База Allsubmitter...
ЯЗЫК ПРОГРАММИРОВ...
CoolControls v3.0...
MpegPlay
Упорядоченный дин...
PHP 5 на примерах
PCX
PHP 5. Полное рук...
Самоучитель PHP 4
Моделирование дви...
PDJ_Anima
Пятнашки и крести...
Программирование ...

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14239
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Часто критически в...
Множество. Определ...
Выбор VPS /VDS хос...
План проведения те...
Процедура итерацио...
Алгоритм “быстрой ...
Про удаленные сервера
File not assigned
Недостатки файлово...
Очистка кэша в Int...
SMB-подписиSMB-, и...
NetWare можгю, уст...
10.7. Дополнительн...
ASSEMBLE (СОЕДИНИТЬ)
Автоматическая пер...
Заливка
Как правильно выбр...
Различные команды ...
Исследование
Тут приведены подр...
Программирование н...
Функция GetBkColor...
Рабочий стол Windo...
Directory
Элементы коллекции...
Статистика



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


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