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

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

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

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

Добавлен: 30.12.2025

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

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

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

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

Сча блоков:

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

Сча очередей

Сча таблиц

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

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

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

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

Описание процесса использования ресурса требованием целесо­образно разбить на три подпрограммы.

Первая - это ЗАПРОС-НАЗНАЧЕНИЕ ресурса R требованию j (в языке GPSS этой подпрограмме соответствует блок SEIZE). Алго­ритм ее работы следующий:

1. Если ресурс R (ПРОДАВЕЦ) может быть сразу назначен тре­бованию j, то изменить состояние ресурса R на «занятый». Запомнить момент начала обслуживания требования tj.+1н. Передать управление подпрограмме ОБСЛУЖИВАНИЕ требования j.

2. Если ресурс R занятый, то поставить требование j в ОЧЕРЕДЬ к ресурсу R.

Вторая подпрограмма - ОБСЛУЖИВАНИЕ требования j (в язы­ке GPSS этой подпрограмме соответствует блок ADVANCE). Ее ал­горитм работы очень простой - определить событие «конец обслужи­вания требования j» как tjK = tjH + tjоб (где tjоб - время обслуживания в устройстве). Т.е. создается уведомление о событии в СБС для переда­чи управления подпрограмме освобождения ресурса R требованием j.

Третья подпрограмма - ОСВОБОЖДЕНИЕ ресурса R требова­нием j (в языке GPSS этой подпрограмме соответствует блок RELEASE). Алгоритм ее работы следующий.

1. Изменить состояние ресурса R (ПРОДАВЕЦ) на «свободный». Передать управление подпрограмме УНИЧТОЖЕНИЕ требования.

2. Проверить, есть ли требования в ОЧЕРЕДИ к ресурсу R? Если есть, то выбрать требование из ОЧЕРЕДИ и запланировать для него событие ЗАПРОС-НАЗНАЧЕНИЕ ресурса R.

Подпрограмма УНИЧТОЖЕНИЕ требования (в языке GPSS этой подпрограмме соответствует блок TERMINATE) необходима для уничтожения структуры данных каждого требования. Если тре­бования не уничтожать, то со временем они переполнят память ком­пьютера.

Кроме перечисленных подпрограмм необходима программа управления процессом моделирования (ПУМ), которая запускает процесс моделирования и отслеживает движение каждого требования па модели путем вызова названных подпрограмм обработки событий. Другое назначение этой программы - вести список упорядоченных во времени событий СБС и продвигать ЧАСЫ модельного времени от события к событию. В языке GPSS функции ПУМ выполняет про­грамма-интерпретатор (транслятор).

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


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

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

Время tм значения ЧАСОВ - текущее значение времени моде­лирования. Событие, связанное со временем t1м, называется пред­стоящим событием, то есть это следующее событие, которое про­изойдет. После того, как отображающие состояния системы ЧА­СЫ =tм во время моделирования были модифицированы, ЧАСЫ продвигаются ко времени моделирования ЧАСЫ= t1м, предстоящее намеченное событие удаляется из СБС и выполняется подпрограмма события. Выполнение подпрограммы предстоящего события означа­ет, что отображено новое состояние системы в течение времени t1м, которое создано на основании старого состояния модели во время tм и характера предстоящего события. Во время t1м новые будущие со­бытия могут произойти или не произойти, но если любые из них на­мечены, то создаются намеченные события и помещаются в соответ­ствующие позиции в СБС. После того, как новое отображение со­стояния системы в течение времени t1м было модифицировано, ЧАСЫ продвигаются ко времени нового предстоящего события, и выполняется подпрограмма этого события. Такой процесс повторяет­ся до окончания имитации. На рис. 1.4 показана структурная схема имитационной модели.

В момент начала моделирования (время моделирования t0м = 0) ПУМ передает управление подпрограмме ГЕНЕРАТОР, которая оп­ределяет момент прихода первого покупателя и намечает событие ЗАПРОС-НАЗНАЧЕНИЕ ресурса R в СБС на время t}м =t1BX. Так как больше событий в системе нет, то ЧАСЫ переводятся на значение времени t1м вызывается подпрограмма ГЕНЕРАТОР и подпрограмма ЗАПРОС-НАЗНАЧЕНИЕ ресурса R.


Подпрограмма ГЕНЕРАТОР определяет будущее событие (мо­мент прихода второго покупателя t2ВХ) и намечает это событие в СБС на время t2ВХ .

Подпрограмма ЗАПРОС-НАЗНАЧЕНИЕ проверяет состояние ресурса (ПРОДАВЦА). Так как ресурс R свободный, то он назначает­ся первому покупателю и состояние ресурса R изменяется на «заня­тый». Запоминается момент начала обслуживания требования t1н. Пе­редается управление подпрограмме ОБСЛУЖИВАНИЕ покупателя 1.

Подпрограмма ОБСЛУЖИВАНИЕ определяет событие конца обслуживания покупателя 1, как t1K = t1H + t1об, т.е. создается уведомле­ние о будущем событии в СБС для передачи управления подпро­грамме ОСВОБОЖДЕНИЯ ресурса R требованием 1 на время t1к.

Таким образом, в СБС имеется два элемента - один с намечен­ным событием появления покупателя 2 на время t2ВХ, а второй с наме­ченным событием окончания обслуживания покупателя 1 на время t1 K. Если время t2ВХ < t1 K, то ЧАСЫ будут переведены на время t2М = t2ВХ, т. е. снова будет вызвана подпрограмма ГЕНЕРАТОР и сгенерирова­но появление покупателя 2. В этот же момент времени t2м произойдет вызов подпрограммы ГЕНЕРАТОР, которая наметит в СБС появле­ние покупателя 3 на время t3ВХ и вызов подпрограммы ЗАПРОС-НАЗНАЧЕНИЕ ресурса R, но так как ресурс занят обслуживанием покупателя 1, то покупатель 2 будет поставлен в очередь к ресурсу R.

В СБС снова окажутся два элемента - один для намеченного со­бытия появления покупателя 3 на время t3BX, а второй с намеченным событием окончания обслуживания покупателя 1 на время t1k. Если время t3вх >t1k, то ЧАСЫ будут переведены на время t3м=t1K, т, е. бу­дет вызвана подпрограмма ОСВОБОЖДЕНИЕ ресурса R покупате­лем 1. Она изменить состояние ресурса R (ПРОДАВЕЦ) на «свободный и передаст управление подпрограмме УНИЧТОЖЕНИЕ требования. Затем проверит, есть ли требования в ОЧЕРЕДИ к ресурсу R, и выберет покупателя 2 из ОЧЕРЕДИ, наметив для него событие для подпрограммы ЗАПРОС-НАЗНАЧЕНИЕ ресурса R.


Вызванная в это же модельное время t3м подпрограмма УНИЧТОЖЕНИЕ разрушит структуру данных (удалит ссылку на ад­рес) для покупателя 1. Эта же подпрограмма при необходимости мог­ла бы вычислить время пребывания покупателя 1 в системе, как t3пр = tЗмt1bx , для дальнейшей статистической оценки времени пребыва­ния покупателей в системе.

В дальнейшем жизненный цикл других покупателей в системе будет происходить по описанному выше алгоритму.

Остается открытым вопрос об окончании процесса моделирова­ния. Возможны три варианта:

1. Через модель пройдут все покупатели, сгенерированные ГЕНЕРАТОРОМ, например, 100 покупателей. В этом случае в СБС после обслуживания последнего, сотого, покупателя не будет ни од­ного намеченного события.

2. Если поток покупателей от генератора не ограничен (напри­мер, генерируется неограниченный пуассоновский поток), то модели­рование можно закончить после прохождения через модель опреде­ленного количества покупателей, например, 1000. Для этого в под­программе УНИЧТОЖЕНИЕ надо поставить счетчик покупателей и прекратить моделирование после 1000 покупателей. В языке GPSS такой счетчик организуется в команде START, которая начинает про­цесс моделирования.

3. Необходимо промоделировать работу системы в течение за­данного периода времени, например, 480 мин. В этом случае можно при каждом продвижении ЧАСОВ модельного времени tм проводить сравнение текущего времени со значением 480. Как только значение модельного времени будет больше или равно 480, необходимо пре­кратить моделирование. Однако такой способ неудачный, так как может сильно замедлить работу модели из-за проверки условия. По­этому обычно поступают следующим образом. Генерируют специ­альное требование-таймер с помощью еще одной подпрограммы ГЕНЕРАТОР с намеченным временем входа в модель tBX = 480. Тре­бование-таймер после генерации сразу же направляется в еще одну подпрограмму УНИЧТОЖЕНИЯ, в которой ставят счетчик требова­ний на единицу. По этому счетчику прекращают моделирование. В этом случае в СБС будет все время находиться элемент для требова­ния-таймера со временем наступления события 480. Как только это событие станет предстоящим намеченным, ЧАСЫ будут переведены на время 480 и моделирование прекратится.

В процессе моделирования обычно собирается статистическая информация о работе модели при каждом продвижении ЧАСОВ мо­дельного времени. Такой информацией может быть величина очере­ди, время пребывания в очереди и устройстве обслуживания, загрузка устройства, состояние прибора и другие параметры. Для сбора этой информации обычно создается подпрограмма ВЫБОРОЧНЫЙ ИЗМЕРИТЕЛЬ, которая накапливает ее и по окончании моделирова­ния выдает стандартный статистический отчет. В языке GPSS такая статистическая информация накапливается в системных числовых атрибутах (СЧА) и доступна в процессе моделирования только на считывание. Доступ к СЧА дает возможность управлять процессом движения требований, например, ограничивать размер или время на­хождения в очереди.


В этой главе даны основы организации моделирования на при­мере простой СМО. В языке GPSS обычно используются более слож­ные алгоритмы, описанные в параграфе 4.22.