Файл: Конспект лекций Для студентов специальности 080801. 65 - приклад.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.12.2025

Просмотров: 3255

Скачиваний: 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.1. Общие сведения о сетях

2.2. Операционный анализ вероятностных сетей

2.3. Операционные зависимости

2.4. Анализ узких мест в сети

Глава 3. Вероятностное моделирование

3.1. Метод статистических испытаний

3.2. Моделирование дискретных случайных величин

3.3. Моделирование непрерывных случайных величин

3.4. Сбор статистических данных для получения оценок характе­ристик случайных величин

Для оценки дисперсии случайной величины ξ используют фор­мулу

3.5. Определение количества реализаций при моделировании случайных величин

По формулам (3.18-3.20) находим

Задачи для самостоятельной работы

Задача 6

Глава 4. Система моделированияgpss

4.1. Объекты

4.2. Часы модельного времени

4.3. Типы операторов

4.4. Внесение транзактов в модель. БлокGenerate

Задание для самостоятельной работы:

4.5. Удаление транзактов из модели. БлокTerminate

4.6. Элементы, отображающие одноканальные обслуживающие устройства

4.7. Реализация задержки во времени. БлокAdvance

Задания для самостоятельной работы:

4.8. Сбор статистики об ожидании. Блоки queue, depart

4.9. Переход транзакта в блок, отличный от последующего. БлокTransfer

Задания для самостоятельной работы:

4.10. Моделирование многоканальных устройств

4.11. Примеры построенияGpss-моделей

Построение модели

4.12. Переменные

4.13. Определение функции вGpss

Пример 4.23

4.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop

4.15. Изменение приоритета транзактов. БлокPriority

4.16. Организация обслуживания с прерыванием. Блоки pre­empt и return

Задание для самостоятельной работы:

4.17. Сохраняемые величины

4.18. Проверка числовых выражений. Блок test

Пример 4.40

Задание для самостоятельной работы:

4.19. Определение и использование таблиц

Задания для самостоятельной работы:

4.20. Косвенная адресация

4.21. Обработка транзактов, принадлежащих одному семейству

4.22. Управление процессом моделирования в системеGpss

4.23. Списки пользователей

4.24. Блоки управления потоками транзактовLogic,gatelr,gatelSиGate

7 Testne p1,p2,asn2 ; Повторить, если адресат

4.25. Организация вывода временных рядов изGpss-модели

4.26. Краткая характеристика языкаPlus

4.27. Команды gpss World

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. Проектирование имитационных моделей с помощью интерактивной системы имитационного моделирования

8.1. Структура интерактивной системы имитационного модели­рования

8.2. Построение концептуальной схемы модели

8.3. Параметрическая настройка модели

8.4. Генератор формул

8.5. Управление экспериментом

8.6. Запуск эксперимента и обработка результатов моделирования

8.7. Управление проектами и общей настройкой системы

8.8. Пример построения модели средствамиIss2000

Глава 9. Технология имитационногомоделирования

9.1. Имитационные проекты

9.2. Организация экспериментов

9.3. Проблемы организации имитационных экспериментов

9.4. Оценка точности результатов моделирования

9.5. Факторный план

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.7. Реализация задержки во времени. БлокAdvance

Перевод с английского языка блока ADVANCE (ЗАДЕРЖАТЬ) - продвигать, а не задерживать. Этот блок действительно продвигает ЧАСЫ модельного времени на некоторое значение, но фактически он осуществляет задержку продвижения транзакта в течение некоторого интервала времени. Обычно этот интервал задается случайной вели­чиной.

В GPSS возможны следующие варианты распределения времени обслуживания:

1) детерминированное (постоянное);

2) равномерное распределение;

3) другие распределения.

Как и при использовании блока GENERATE особо рассматри­вается равномерное распределение случайных величин. Применение более сложных видов распределений требует использования допол­нительных функций (см. параграф 4.13).

Формат блока:

ADVANCE A[,B]

Таблица 4.6

Блок никогда не препятствует входу транзакта. Любое число транзактов может находиться в этом блоке одновременно. Когда транзакт попадает в такой блок, выполняется соответствующая под­программа и вычисляется время пребывания в нем транзакта. Вновь прибывший транзакт никак не влияет на уже находящийся в блоке транзакт.

Если время пребывания в блоке равно нулю, то вместо задержки в блоке ADVANCE интерпретатор сразу же пытается переместить этот транзакт в следующий блок. Более подробно о взаимодействии блока ADVANCE с интерпретатором описано в параграфе 4.21.

1. В GPSS/PC не допускаются дробные значения времени задержки.

2.Отрицательное значение задержки всегда вызывает ошибку.

Пример 4.2

Использование блока ADVANCE:

ADVANCE 30,5

Время задержки транзакта в этом блоке - случайная величина, равномерно распределенная на интервале [25, 35], которая принимает одно из 11 целых значений.

Пример 4.3

Классический случай использования последовательности SEIZE - ADVANCE - RELEASE:

SEIZE PRIB

ADVANCE 16,4

RELEASE PRIB

Транзакт, двигаясь по этой цепочке блоков, займет устройство с именем PRIB, задержится там на 16+4 единицы времени и затем по­кинет его. После того как транзакт войдет в блок RELEASE и соот­ветствующая этому блоку подпрограмма закончится, интерпретатор попытается переместить транзакт в следующий блок модели и сле­дующий транзакт может уже использовать устройство PRIB.


Блоки ADVANCE можно располагать в любых местах программы, а не только между блоками SEIZE и RELEASE.

Задания для самостоятельной работы:

1. Приведите фрагмент программы, который моделирует обработку детали на станке. Название устройства - MACHINE, время об­ работки 10 ед. модельного времени.

2. Приведите фрагмент программы, который описывает процесс шлифования изделия. Шлифование занимает 4 + 1 мин., в каждый момент времени может обрабатываться только одно изделие. Едини­ца модельного времени - 1 с.

3. Приведите фрагмент программы, который иллюстрирует по­ краску двигателя в одноканальном устройстве покраски PAINT. По­ краска занимает 10±3 мин. Единица модельного времени - 1 с. Как определить коэффициент загрузки устройства покраски?

4.8. Сбор статистики об ожидании. Блоки queue, depart

Эти блоки обеспечивают в GPSS возможность автоматического сбора статистических данных, описывающих вынужденное ожида­ние, которое может происходить время от времени в различных точ­ках модели.

Система моделирования GPSS обеспечивает возможность сбора статистики с помощью такого средства, как регистратор очереди. При использовании регистратора очереди в тех точках модели, где число ресурсов ограничено, интерпретатор автоматически начинает собирать различную информацию об ожидании с помощью СЧА, а именно:

1) число входов транзактов в очередь;

2) количество транзактов, которые фактически присоединились к очереди и сразу ее покинули, т.е. имели время ожидания равное нулю;

3) максимальная длина очереди;

4) среднее число ожидавших транзактов;

5) среднее время ожидания тех транзактов, которым пришлось ждать.

В модели может быть несколько регистраторов очередей, разли­чающихся именами. Правила присвоения имен те же, что и для уст­ройств. Разработчик вносит регистратор очереди в модель с помощью пары взаимодополняющих блоков:

QUEUE A|,B| DEPART A|,B|

Таблица 4.7

При входе транзакта в блок QUEUE (СТАТЬ В ОЧЕРЕДЬ) вы­полняются четыре действия:

1) счетчик входов для данной очереди увеличивается на В;

2) длина очереди (счетчик текущего содержимого) для дан­ной очереди увеличивается на В;


3) значение текущей длины очереди хранится в стандартном чи­словом атрибуте q$<hmh очереди>;

4) транзакт присоединяется к очереди с запоминаем ее имени и значения текущего модельного времени.

Транзакт перестает быть элементом очереди только после то­го, как он переходит в блок DEPART (ПОКИНУТЬ ОЧЕРЕДЬ)соответствующей очереди. Когда это происходит, ин­терпретатор выполняет такие операции:

1) длина очереди соответствующей очереди уменьшается на В;

2) используя привязку к значению времени, определяет: являет­ся ли время, проведенное транзактом в очереди, нулевым; если да, то такой транзакт по определению является транзактом с нулевым пре­быванием в очереди и одновременно изменяется счетчик нулевых вхождений;

3) ликвидируется «привязка» транзакта к очереди.

Если в модели используются объекты типа «очередь», то в фай­ле стандартной статистики будет представлена информация об этих объектах. В конце моделирования интерпретатор автоматически вы­дает статистические данные: значение счетчика входов, максималь­ное значение длины очереди, среднее значение длины очереди, теку­щее значение длины очереди в конце периода моделирования, сред­нее значение времени нахождения в очереди и т.д.

Статистическая информация об ожидании выдается в следую­щем виде:

Пример 4.4

Пусть необходимо собрать статистику об ожидании в очереди при обслуживании устройством PRIB, тогда в сегмент модели будут введены блоки QUEUE и DEPART:

QUEUE QPRIB

SEIZE PRIB

DEPART QPRIB

ADVANCE 16,4

RELEASE PRIB

В этом примере все транзакты, попадающие в устройство, должны пройти через пару QUEUE - DEPART даже тогда, когда уст­ройство свободно и его можно сразу же занять.

Пример 4.5

Увеличение на единицу длины QSQPR1 очереди QPR1:

QUEUE QPR1

Увеличение на две единицы длины QSQPR2 очереди QPR2:

QUEUE QPR2,2

Уменьшение на единицу длины Q$QWORKER очереди QWORKER:

DEPART QWORKER

1. Когда транзакт входит в блок QUEUE, то ищется очередь с именем, определенным операндом А. При необходимости очередь создается.


2. Блок QUEUE не поддерживает список членов очереди, он только добавляет единицы к длине очереди.

3. Использование регистратора очереди необязательно. С его помощью интерпретатор собирает лишь статистику об ожидании. Еcли же регистратор не используется, то статистика не собирается, но везде, где должна возникать очередь, она возникает. Ожидание является следствием состояния устройства, а не следствием использования регистратора. Если в планы не входит обработка статистических данных об очередях, то лучше не собирать статистику - это сэконо­мит время, расходуемое на моделирование.

4. Один и тот же транзакт может одновременно увеличить дли­ну нескольких очередей.

5. При выходе транзакта из очереди через блок DEPART транзакту не обязательно уменьшать длину очереди на ту же величину, на которую он увеличил ее при входе в блок QUEUE. Но в итоге число входов в очередь должно равняться числу выходов из нее.

Задания для самостоятельной работы:

1. Увеличить на три единицы длину очереди с номером 3.

2. Увеличить длину очереди QPR в два раза.

3. Приведите фрагмент программы, который иллюстрирует обработку детали на станке. Устройство - MACHINE, время обработки 10 ±4 ед. модельного времени. Как определить среднее время пребывания деталей в очереди на обслуживание станком?

4. Уменьшить длину очереди с номером 1 на три единицы.

5. Обнулить длину очереди QPR.


4.9. Переход транзакта в блок, отличный от последующего. БлокTransfer

В GPSS блок TRANSFER (ПЕРЕДАТЬ) может быть использо­ван в девяти разных режимах. Рассмотрим три основных.

Блок TRANSFER в режиме безусловной передачи. Его фор­мат:

TRANSFER ,B

Таблица 4.8

Позиция блока - это номер или метка блока. Так как операнд А не используется, то перед операндом В должна стоять запятая. В ре­ жиме безусловной передачи блок TRANSFER не может отказывать транзакту во входе. Кстати, если транзакт входит в блок, то он сразу же пытается войти в блок В.

Транслятор GPSS/PC не улавливает пропущенную запятую вме­сто операнда А (например, TRANSFER LAMD). На этапе трансля­ции метке LAMD присваивается числовое значение, и транзакт в этом случае направляется в блок с соответствующем номером.

Статистический режим. В этом режиме осуществляется пере­дача транзакта в один из двух блоков случайным образом. Формат блока:

TRANSFER A,[B],C

Таблица 4.9

При задании вероятности (операнд А) используется не более трех цифр, первый символ записи частоты «.» (десятичная точка), если используется действительное число, которое должно быть в пределах от 0 до 1,0 (например, 0,235). Если операнд - положительное целое число, то вероятность интерпретируется в долях тысячи.

Пример 4.6

TRANSFER .333,LPRIB1,LPRIB2

LPR1B1 SEIZE PR1

LPRIB2 QUEUE QPR2

С частотой 0,667 транзакт переходит в блок с меткой LPRIB1 и с частотой 0,333 - в блок с меткой LPRIB2.

Пример 4.7

TRANSFER 4,,LPRIB2 SEIZE PR1

LPRIB2 QUEUE QPR2

С частотой 0,6 транзакт переходит в блок SEIZE PR1 и с частотой 0,4 - в блок с меткой LPRIB2.

Режим BOTH. Если в операнде А стоит зарезервированное слово BOTH, то блок TRANSFER работает в режиме BOTH.

В этом режиме входящий транзакт сначала пытается перейти к блоку, указанному в операнде В. Если это сделать не удается, тран­закт пытается перейти в блок, указанный в операнде С. Если тран­закт не сможет перейти ни к тому, ни к другому блоку, то он остается в блоке TRANSFER и при каждом просмотре списка текущих событий, будет повторять в том же порядке попытки перехода до тех пор, пока не сможет выйти из блока TRANSFER.