Файл: Конспект лекций Для студентов специальности 080801. 65 - приклад.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.12.2025
Просмотров: 3271
Скачиваний: 0
СОДЕРЖАНИЕ
Федеральное агентство по образованию
Глава 5. Моделирование вычислительных и операционных систем 289
Глава 6. Основы моделирования процессов 305
Глава 7. Задания для самостоятельной работы 311
Глава 8. Проектирование имитационных моделей 335
Глава 9. Технология имитационного моделирования 361
Глава 10. Примеры принятия решений с помощью имитационного моделирования 433
Глава 11. Задания для имитационных проектов 451
Глава 1. Модели массового обслуживания
1.1. Системы массового обслуживания и их характеристики
1.2. Системы с одним устройством обслуживания
1.3. Основы дискретно-событийного моделирования смо
1.4. Многоканальные системы массового обслуживания
Глава 2. Вероятностные сети систем массового обслуживания
2.2. Операционный анализ вероятностных сетей
Глава 3. Вероятностное моделирование
3.1. Метод статистических испытаний
3.2. Моделирование дискретных случайных величин
3.3. Моделирование непрерывных случайных величин
3.4. Сбор статистических данных для получения оценок характеристик случайных величин
Для оценки дисперсии случайной величины ξ используют формулу
3.5. Определение количества реализаций при моделировании случайных величин
По формулам (3.18-3.20) находим
Задачи для самостоятельной работы
Глава 4. Система моделированияgpss
4.4. Внесение транзактов в модель. БлокGenerate
Задание для самостоятельной работы:
4.5. Удаление транзактов из модели. БлокTerminate
4.6. Элементы, отображающие одноканальные обслуживающие устройства
4.7. Реализация задержки во времени. БлокAdvance
Задания для самостоятельной работы:
4.8. Сбор статистики об ожидании. Блоки queue, depart
4.9. Переход транзакта в блок, отличный от последующего. БлокTransfer
Задания для самостоятельной работы:
4.10. Моделирование многоканальных устройств
4.11. Примеры построенияGpss-моделей
4.13. Определение функции вGpss
4.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop
4.15. Изменение приоритета транзактов. БлокPriority
4.16. Организация обслуживания с прерыванием. Блоки preempt и return
Задание для самостоятельной работы:
4.18. Проверка числовых выражений. Блок test
Задание для самостоятельной работы:
4.19. Определение и использование таблиц
Задания для самостоятельной работы:
4.21. Обработка транзактов, принадлежащих одному семейству
4.22. Управление процессом моделирования в системеGpss
4.24. Блоки управления потоками транзактовLogic,gatelr,gatelSиGate
7 Testne p1,p2,asn2 ; Повторить, если адресат
4.25. Организация вывода временных рядов изGpss-модели
4.26. Краткая характеристика языкаPlus
4.28. Диалоговые возможностиGpssWorld
4.29. Отличия между gpss World и gpss/pc
Глава 5. Моделирование вычислительных и операционных систем
5.1. Операционные системы компьютеров
5.2. Сети и системы передачи данных
5.3. Проблемы моделирования компьютеров и сетей
Глава 6. Основы моделирования процессов
6.1. Производственные процессы
6.2. Распределительные процессы
6.3. Процессы обслуживания клиентов
6.4. Процессы управления разработками проектов
Глава 7. Задания для самостоятельной работы Задание 1. Моделирование разливной линии
8.1. Структура интерактивной системы имитационного моделирования
8.2. Построение концептуальной схемы модели
8.3. Параметрическая настройка модели
8.6. Запуск эксперимента и обработка результатов моделирования
8.7. Управление проектами и общей настройкой системы
8.8. Пример построения модели средствамиIss2000
Глава 9. Технология имитационногомоделирования
9.2. Организация экспериментов
9.3. Проблемы организации имитационных экспериментов
9.4. Оценка точности результатов моделирования
9.6. Дисперсионный анализAnovAв планированииэкспериментов
9.7. Библиотечная процедураAnova
9.8. Технология проведение дисперсионного анализа в системеGpss World
9.9. Особенности планирования экспериментов
9.10. Нахождение экстремальных значений на поверхности отклика
9.11. Организация экспериментов вGpssWorld
9.12. Выбор наилучшего варианта структуры системы
Глава 10. Примеры принятия решений с помощью имитационного моделирования
10.1. Моделирование производственного участка
10.2. Моделирование технологического процесса ремонта и замены оборудования
Глава 11. Задания для имитационных проектов
4.18. Проверка числовых выражений. Блок test
Сравнение СЧА может быть выполнено с помощью блока TEST (ПРОВЕРИТЬ).
Его формат:
TEST X А,В[,С]


Операнды А и В - имена СЧА, которые сравниваются. Вспомогательный оператор X указывает способ сравнения этих двух СЧА друг с другом.
Пример 4.40
Режим отказа
TEST LE Q1,Q2
Проверяющий транзакт будет задержан в предыдущем блоке до тех пор, пока длина первой очереди не станет меньше или равна длине второй очереди.
Пример 4.41
Режим условного перехода
TEST LE Qt,Q2,ZHVS
Проверяющий транзакт перейдет в следующий по порядку блок, если содержимое первой очереди меньше или равно содержимому второй очереди. Если это условие не выполняется, транзакт перейдет в блок с меткой ZHVS.
Пример 4.42
TEST L FSSCANNER,X$MAX_UTIL,LLL SEIZE -SCANNER
LLL QUEUE Q_SCANNER2
Если устройство SCANNER имеет коэффициент загрузки меньше, чем значение сохраняемой величины MAX_UTIL, то транзакт идет на обслуживание этим устройством, в противном случае -переходит к блоку с меткой LLL.
Пример 4.43
Пусть в точке модели DISPATCHER необходимо удалить те транзакты, которые находились в модели больше, чем 100ед. модельного времени. Для этого в модели можно использовать такие блоки:
GENERATE 18,6
DISPATCHER TESTL M1,100,KILL KILL TERMINATE
Задание для самостоятельной работы:
1. В отделе универсама есть две кассы. Покупатели становятся в очередь в ту кассу, у которой меньше очередь. Напишите фрагмент программы для этой ситуации.
2. Первые четыре часа работы парикмахерской клиенты обслуживаются одним мастером, следующие четыре - другим. Напишите фрагмент модели для этой ситуации.
4.19. Определение и использование таблиц
Для накопления выборочных значений случайных величин и статистической обработки этих выборок используются GPSS-таблицы. Графическим аналогом GPSS-таблицы является гистограмма выборочных значений случайной величины, которую можно просмотреть в окне таблицы. Прежде чем использовать таблицу, ее нужно определить, а потом задать собираемые выборочные значения.
Оператор TABLE (ТАБЛИЦА). В модели может быть несколько таблиц. Каждую таблицу нужно сначала определить и только потом использовать в модели. Для определения таблицы необходимо указать:
1) имя таблицы (числовое или символьное);
2) имя случайной переменной, значение которой будет табулироваться;
3) число, являющееся первым граничным значением. (Значения выборки, меньшие или равные этому числу, попадают в самый левый (нижний) интервал (частотный класс) таблицы);
4) ширину интервала, общую для всех интервалов таблицы за исключением левого (нижнего) и правого (верхнего);
5) общее число интервалов таблицы, включая нижний и верхний. Формат оператора представлен в таблице.
Таблица 4.44

На рис. 4.11 показана ось действительных значений и ее разделение на ряд интервалов таблицы.

Для сбора статистических данных об очередях используется оператор QTABLE. Его формат совпадает с форматом оператора TABLE, за исключением того, что операнд А задает имя очереди.
Блок TABULATE (ТАБУЛИРОВАТЬ). Выборочные значения попадают в таблицу в моменты вхождения транзактов в блок TABULATE. Его формат:
TABULATE A
Таблица 4.45

Операнд А задает имя таблицы, в которую попадают выборочные значения. Одну таблицу можно использовать в нескольких блоках TABULATE модели. Отметим, что СЧА, по которому собирается статистика, в блоке TABULATE не указывается, так как он уже записан в операторе TABLE.
Если в модели используется блок TABLE или QTABLE, в файле стандартной статистики информация будет представлена в таком виде:

Для получения этих данных была определена GPSS-таблица MVP, в которой фиксировалось время нахождения транзакта в модели:
MVP TABLE Ml,100,100,20
Стандартные числовые атрибуты таблицы:
ТВ<номер таблицы>, ТВ$<имя таблицы> - вычисленное среднее значение соответствующего СЧА;
ТС<номер таблицы>, ТС$<имя таблицы> - общее число входов в таблицу;
ТВ<номер таблицы>, ТВ$<имя таблицы> - вычисленное среднеквадратическое отклонение соответствующего СЧА.
Пример 4.44
TIMSERV TABLE МРЗ,10,5,б ; Оператор определения таблицы GENERATE 100,15
MARK 3
TABULATE TIMSERV ; Оператор табулирования
В таблице TIMSERV будет табулироваться частотное распределение случайной величины - времени пребывания транзакта между блоками MARK и TABULATE. В табл. 4.46 приведены интервалы регистрации времени пребывания между блоками MARK и TABULATE.
Таблица 4.46

Для того, чтобы данные, собираемые в таблицу, не попадали в один-два интервала, рекомендуется: 1) сначала сделать пробный прогон;
по пробному прогону определить диапазон значений, в которых может колебаться анализируемая случайная величина (в GPSS/PC перейти к окну таблиц с помощью клавиш [ALT+T]);
3) с учетом полученного диапазона скорректировать значения операндов В, С и D соответствующей таблицы.
Пример 4.45
В таблице SYSTIME собирается время пребывания транзакта в модели, которое предположительно принимает значения в интервале [100,2000].
SYSTIME TABLE М1,100,12,10 SAVEVALUE STD,TB$SYSTIME
При входе транзакта в блок SAVEVALUE среднее значение СЧА (времени пребывания), соответствующего таблице SYSTIME заносится в сохраняемую величину с именем STD.
Задания для самостоятельной работы:
1. В ресторан каждые 25+9 с заходят клиенты. Заказы принимают шесть кассиров. Время выполнения заказов - 120+40 с. Соберите статистическую информацию о длине очереди.
2. В одноканальную СМО поступает пуассоновский поток заявок с интенсивностью 2 мин-1. Время обслуживания одной заявки -25±4 с. Соберите статистическую информацию о времени пребывания заявок в системе.
3. В двухканальную СМО поступает пуассоновский поток заявок с интенсивностью 3 мин-1. Время обслуживания одной заявки -28±6 с. Соберите статистическую информацию о времени пребывания заявок в очереди.
4. На складе обслуживают заказы трех видов. Заказы поступают по нормальному закону с параметрами (12, 2). Вероятность появления заказа первого вида составляет 0,3, второго вида - 0,55, третьего вида - 0,15. Все заказы выполняются одним из двух рабочих за время 16+5 ед. времени. Каждый вид заказов характеризуется своим распределением стоимости выполнения в зависимости от времени выполнения заказа (зависимости задайте самостоятельно). Стоимость выполнения заказа сохраните в параметре 1. При моделировании подсчитайте суммарную стоимость выполнения заказов.
5. В сети СМО действует три МКУ. Транзакт входит в то МКУ, номер которого помещен в параметре 2. Напишите соответствующий фрагмент программы для данной модели.
4.20. Косвенная адресация
Ранее были рассмотрены прямые способы адресации, когда:
1) номер объекта задается константой
QUEUE 2 ; Стать в очередь 2 SEIZE 1 ; Занять устройство 1
2) номер объекта задается СЧА
LEAVE P1 ; Освободить МКУ с номером, задаваемым параметром 1
Адресация может быть относительной и по отношению к самому блоку. Это осуществляется при помощи записи *+/-n. Например,
TRANSFER ,*+2
В этом случае сам блок TRANSFER является ориентировочным блоком. Транзакт пытается войти во второй, относительно блока TRANSFER, блок.
Подобные ссылки не зависят от свойств транзакта, обрабатываемого в данный момент времени. Использование прямой адресации может привести к введению большого числа дополнительных блоков только для того, чтобы записать номера объектов в СЧА, т.е. к увеличению объема модели. Существенным образом сократить объем модели и использовать зависимость номеров объектов от свойств транзактов позволяет косвенная адресация.
Общий формат косвенной адресации:
C4A*C4Aj или СЧА*СЧА<имя>
Там, где допустимо использование СЧА, обычно могут использоваться и СЧА*СЧА.
При использовании косвенной адресации параметр Р может опускаться.
Пример 4.46
SEIZE P*X1
Занять устройство, номер которого содержится в параметре транзакта, а номер параметра определяется значением ячейки X1.
SAVE VALUE 1,X*Р2
Поместить в ячейку с номером 1 значение, содержащееся в ячейке, номер которой определяется параметром 2.
Пример 4.47
4 FUNCTION RN1,D3 ; Функция распределения типов сообщений 0.2,1/0.5,2/0.999999,3
1 FUNCTION RN2,C20 ; Функция распределения числа символов сообщения типа 1
2 FUNCTION RN3,C20 ; Функция распределения числа символов сообщения типа 2
3 FUNCTION RN4,C20 ; Функция распределения числа символов сообщения типа 3
GENERATE 100,10
ASSIGN 1.FN4 ; Определение типа сообщения
ASSIGN 2.FN*P1 ; Определение числа символов сообщения
В данной модели предполагается, что через некоторый узел сети проходят информационные сообщения трех типов, причем каждый из них характеризуется своим распределением числа символов. В модели первый параметр транзакта содержит тип сообщения, а второй параметр - число символов сообщения.
При
использовании косвенной адресации при
обращении к устройствам, МКУ или функциям
через параметры приходится применять
числовые значения имен. Транслятор
GPSS/PC
на этапе компиляции сам присваивает
именам числовые значения, однако, при
этом пользователь не контролирует такое
присвоение. Для того, чтобы не возникали
конфликты между числовыми значениями
имен, присвоенных транслятором, и
именами, заданных пользователем,
необходимо использовать простое правило:
в модели использовать имена либо только
числовые, либо только символьные.
Назначение именам числовых значений осуществляется с помощью оператора EQU (аналог #define в языке программирования Си).
Пример 4.48
Необходимо занять МКУ, номер которого определяется в первом параметре транзакта. По логике функционирования модели занимается один из двух МКУ: SECTION_A или SECTION_B.