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

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

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

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

Добавлен: 30.12.2025

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

Скачиваний: 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. Задания для имитационных проектов

Приложение Системные сча

Сча транзактов

Сча блоков:

Сча одноканальных устройств:

Сча очередей

Сча таблиц

Сча ячеек и матриц ячеек сохраняемых величин:

Сча вычислительных объектов

Сча списков и групп

Список литературы

Фрагмент программы:

LAMDA FUNCTION C1,D4

1200,120/2400,150/4200,170/4800,200

XPDIS FUNCTION RN1,C24

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2/ .75,1.38/.8,1.6/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81/ .95,2.99/.96,3.2/.97,3.5/.98,3.9/.99,4.6/.995,5.3/.998,6.2/ .999,7/.9998,8

ADVANCE FN$LAMBDA,FN$XPDIS

Пример 4.35 [101

Ситуация, описанная в примере 4.34, предполагает, что среднее время обслуживания увеличивается скачкообразно. Более реально полагать, что среднее время возрастает постепенно в течение дня. Определить непрерывную функцию, которая описывала бы увеличе­ние времени обслуживания в соответствии с правилом: в нулевой момент времени среднее время равно 12 мин, к концу второго часа оно увеличивается до 15 мин, к концу четвертого часа - до 17 мин, к концу седьмого - до 20 мин, а к концу восьмого - до 25 мин. Считать, что среднее время обслуживания на указанных интервалах времени увеличивается непрерывно и равномерно.

Фрагмент программы:

MEAN FUNCTION C1,C5 0,120/1200,150/2400,170/4200,200/4800,250

XPDIS FUNCTION RN1,C24

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2/ .75,1.38/.8,1.6/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81/ .95,2.99/.96,3.2/.97,3.5/.98,3.9/.99,4.6/.995,5.3/.998,6.2/ .999,7/.9998,8

…………..

ADVANCE FNSMEAN, FNSXPDIS

…………..

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

1. Приведите фрагмент программы, который иллюстрирует за­нятие транзактом устройства. Транзакт занимает все свободные кана­лы устройства PRIB.

2. Время обработки детали на станке STAN равно половине чис­ла занятий станка. Промоделируйте процесс обработки детали на станке.

3. Промоделируйте задержку, которая равна целой части средне­го времени пребывания транзакта в устройстве PRJB.

4. Время задержки в устройстве равномерно распределено на интервале А±В, где А и В - значения параметров TIME1 и TIME2, соответственно. Приведите фрагмент программы, моделирующий эту ситуацию.

5. Транзакт занимает устройство, номер которого задан вторым параметром транзакта. Время обслуживания в устройстве задается в параметре TIMEZ. Приведите соответствующий фрагмент програм­мы.

6. Параметру с номером, который записан в параметре ZERO, присвойте значение, которое равно числу нулевых входов в оче­редь 1.

7. Параметру четвертого транзакта присвойте значение 14.

8. Параметру SPEED транзакта присвойте значение 10.

9. Значение параметра, номер которого задан параметром Р5, увеличьте на 3.


10. Значение параметра WEIGHT уменьшите на 10.

11. Деталь последовательно обрабатывается на трех станках за время 5+2 мин, 15±2 мин, 3±1 мин, соответственно, а потом красится за время 10±2 с. Определите время между окончанием обработки на первом станке и началом покраски.

12. На соревнованиях по бегу каждый спортсмен выполняет две попытки. Результат (время преодоления дистанции) подчинен нормальному закону с параметрами тх=16 с, σ=3 с. Приведите фрагмент программы, которая моделировала бы эту ситуацию. 13. Выполните задание 10 из главы 7.


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

Блок PRIORITY (НАЗНАЧИТЬ ПРИОРИТЕТ)присваивает

или изменяет приоритет транзакта, если он был задан блоком GENERATE (по умолчанию приоритет транзакта равен нулю). Его формат:

PRIORITY A[,B]

Новое значение приоритета может быть меньше, больше или равно текущему значению приоритета транзакта. Приоритет влияет на порядок выбора транзакта для обслуживания устройствами и на порядок просмотра транзактов в списке текущих событий [7].

Стандартный числовой атрибут этого блока - PR. Поскольку уровень приоритета транзакта может изменяться от 0 до 127, то PR будет выдавать значение в диапазоне 0-127.

Пример 4.36

PRIORITY 100

Вошедшему в этот блок транзакту присваивается приоритет 100.

DELAY FUNCTION PR,D3

1,4/2,7/3,10

ADVANCE FNSDELAY

Задержка в блоке ADVANCE зависит от приоритета транзакта. Транзакт с наиболее низким приоритетом (1) задерживается на 4 еди­ницы модельного времени, транзакт с наиболее высоким приорите­том (3) задерживается на 10 единиц модельного времени.

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

Во многих случаях возникает необходимость организации об­служивания в устройстве с прерываниями (например, при выполне­нии некоторой операции на станке произошла его поломка). Такую ситуацию можно смоделировать, считая, что отказ оборудования представляет собой транзакт, приоритет которого выше, чем у транзакта, обрабатываемого станком. В этом случае более приоритетный транзакт должен прервать обслуживание менее приоритетного транзакта, т.е. выгрузить его из устройства. Отсюда понятен дословный перевод с английского слова preempt - выгрузить, но с точки зрения работы одноканальной СМО принято использовать термин ЗАХВАТИТЬ устройство [10]. Для организации обслуживания в уст­ройстве с прерываниями используют пару блоков PREEMPT (ЗАХВАТИТЬ) - RETURN (ВЕРНУТЬ) так же, как для обычного устройства без прерываний использовались блоки SEIZE -RELEASE.

Блок PREEMPT имеет следующий формат:

PREEMPT A,[B],[C],[D],[E]

Таблица 4.36


Блок PREEMPT позволяет транзакту в зависимости от условий, заданных в операндах блока, занять устройство. Блок PREEMPT может также задержать транзакт на входе.

Операнд А определяет номер или имя устройства, на котором генерируется прерывание. Операнд может быть именем, положитель­ным целым, СЧА или СЧА*СЧА.

Операнд В задает приоритетный режим (если B=PR) или режим прерывания (если этот операнд опущен). При работе в приоритетном режиме транзакт, уже занимающий устройство или генерирующий на нем прерывание, может быть прерван только транзактом, приоритет которого выше приоритета данного транзакта. Прерванные транзакты претендуют на дополнительное использование устройства, когда прервавший их транзакт войдет в соответствующий блок RETURN. Прерванные транзакты помещаются в список задержки в порядке приоритета.

Операнд С задает номер или имя блока, в который в этот же мо­мент времени должен попытаться войти прерванный транзакт. Пре­рванный транзакт теряет управление устройством, но претендует на право его использования, если только не задан аргумент операнда Е. В приоритетном режиме работы желательно задавать операнд С, если прерывающий транзакт имеет более высокий приоритет, чем преры­ваемый. Операнд может быть именем, положительным целым, СЧА или СЧА*СЧА.

Операнд D задает номер параметра, связанного с прерванным транзактом. Если прерываемый транзакт в момент прерывания направляется в список будущих событий (см. параграф 4.22), тогда остаток времени записывается в заданный параметр. Если такой параметр не существует, то он создается. В приоритетном режиме работы операнд D задают только в том случае, если прерывающий транзакт имеет более высокий приоритет, чем прерываемый транзакт. Операнд может быть именем, положительным целым, СЧА или СЧА*СЧА.

Операнд Е задает либо не задает режим удаления (RE). В режиме удаления RE прерванный транзакт более не претендует на использование устройства и пытается войти в блок, заданный операндом С (если в операнде Е стоит RE, то должен быть определен и операнд С). В приоритетном режиме работы режим RE используется только в том случае, если приоритет прерывающего транзакта больше приоритета прерываемого транзакта. При использовании RE прерванный транзакт не должен входить в блоки RELEASE или RETURN, связанные устройством, в котором обслуживался прерванный транзакт.


Если режим RE не задан (операнд Е опущен), то прерванный транзакт по возвращении в список текущих событий будет вновь пы­таться занять устройство.

Прерываемый транзакт может находиться в списке будущих со­бытий. Если надо сделать это, то используют операнд D.

Прерванный транзакт борется за устройство, даже если он пере­мещен операндом С (если RE не используется в операнде Е). Если прерванный транзакт все еще борется за устройство, то попытка транзакта войти в блок TERMINATE приводит к ошибке. Такой транзакт перед входом в блок TERMINATE должен войти в блоки RELEASE или RETURN.

Транзакт может быть прерван на любом количестве устройств.

Устройство может быть захвачено любое количество раз, но не два раза подряд одним транзактом.

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

Транзакт не может войти в блок, если устройство находится в недоступном состоянии. Такие транзакты помещаются в список за­держки устройства в соответствии с приоритетом, а внутри приорите­та - по правилу FIFO.

Стандартные числовые атрибуты, связанные с описываемым блоком, те же, что и в табл. 4.26, с добавлением СЧА FIj - флаг пре­рывания устройства (1, если устройство находится в состоянии пре­рывания, О-в противном случае).

Следует обратить внимание, что при задании операндов D и (или) Е, операнд С также должен быть задан.

Если приоритетный режим не задан (нет PR в операнде В), то операнды С, D и (или) Е игнорируются. Однако возможен вариант, когда для прерванного транзакта выбирается альтернативный выход, причем приоритет транзакта не учитывается. Этот случай возникает тогда, когда задан операнд С (а иногда и операнды D и (или) Е), но в операнде В не задан приоритетный режим. Такое использование опе­рандов приводит к тому, что занимающий устройство транзакт пре­рывается и направляется по альтернативному пути. В данном случае многоуровневые прерывания не происходят.

Пары блоков SEIZE - RELEASE и PREEMPT - RETURN могут использовать одни и те же имена занимаемых устройств. В зависимости от логики работы модели пользователь должен сам определить, в каком случае разре­шать прерывания, а в каком - нет.