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

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

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

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

Добавлен: 30.12.2025

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

Скачиваний: 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.27. Команды gpss World

Команды необходимы, как для построения программы модели, так и для интерактивного взаимодействия с моделью. Они включают операторы описания данных, операторы управления, которые вклю­чены в стандартный GPSS [10, 13], и команды, которые используются только в языке GPSS World.

Операторы описания данных и команды управления:

Команда START. Используется для инициации начала модели­рования. Его формат:

START A,[B],[C],[D]

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

Операнд В - операнд вывода статистики. Этот операнд может принимать значение «NP» или быть опущенным. Задание «NP» в операнде В приводит к блокированию вывода статистики. По умол­чанию выводится стандартная статистика.

Операнд С не используется и сохранен для совместимости с предыдущими версиями GPSS.

Операнд D задает необходимость вывода содержания СТС и СБС. Операнд D может быть положительным целым. Если операнд D не равен 0, то СТС и СБС выводятся.

Моделирование продолжается до тех пор, пока счетчик завер-s шения, определенный операндом А, не достигнет нулевого значения. Для уменьшения значения счетчика используется блок TERMINATE (подробнее см. в параграфе 4.4).

Стандартный числовой атрибут, который связан с этой коман­дой, TG1 - текущее значение счетчика завершения.

Оператор INITIAL. Позволяет задавать начальные значения сохраняемых величин (Savevalue), элементов матриц (Matrix) и логи­ческих ключей (Logicswitch). Имеет такой формат:

INITIAL A[,B|

Значения операндов:

А - СЧА сохраняемых величин, элементов матриц или логиче­ских ключей. В операнде могут стоять:

LS<положительное целое>, LS$<имя> - имя логического ключа;

Х<положительное целое>, Х$<имя> - имя сохраняемой вели­чины;

МХ<положительное целое>( ) или МХ$<имя>() - имя элемен­та матрицы.

В - устанавливаемое значение. По умолчанию равно единице. Операнд может быть числом, строкой, именем или UNSPECIFIED.

При выполнении оператора INITIAL значение, обусловленное операндом В, назначается логическому ключу, сохраняемой величине или элементу матрицы, определенному в операнде А.


Если операнд А определен как логический ключ, то операнд В может быть только нулем или единицей.

Если в операнде В использовано ключевое слово UNSPECIFIED, то сохраняемая величина, матрица или элемент мат­рицы устанавливается в «неопределенное» состояние. Обычно это ключевое слово используется, чтобы указать на отсутствие данных в матрице результатов, которая должна быть в дальнейшем проанали­зирована библиотечной процедурой ANOVA. Если матрица имеет размерность больше двух, то для установки ее в состояние UNSPECIFIED надо использовать язык PLUS.

С оператором INITIAL связаны блоки LOGIC, SAVEVALUE и MSAVEVALUE.

Пример 4.62

INITIAL Х88Д2000

Значение 12000 записывается в сохраняемую величину с номе­ром 88.

INITIAL MX3(2,4),33

Значение 33 записывается в элемент (2, 4) матрицы 3.

INITIAL X$Quote,"Now is the time ... "

Этот оператор назначает строчную константу сохраняемой ве­личине Quote.

INITIAL MX$Inventory(Part_39,Stocklevel),200

Значение 200 записывается в строку Part_39 столбца Stocklevel матрицы Inventory. Именам Part_39 и Stocklevel должны быть пред­варительно назначены соответствующие целые числа в командах EQU.

INITIAL MainResult,UNSPECIFIED

Предварительно определяется матрица для экспериментов с именем MainResult, которая может не иметь данных.

Команда RESET. Сбрасывает в ноль статистику и СЧА систе­мы, но не удаляет транзакты из модели. Она используется для по­вторных экспериментов с моделью и сброса статистических данных переходного периода имитационного процесса. Имеет такой формат:

RESET

Действия команды RESET:

1) значение относительного модельного времени (С1) устанав­ливается в ноль;

2) значение абсолютного модельного времени (АС1) остается без изменений;

3) все датчики псевдослучайных чисел остаются неизменными;

4) значения сохраняемых величин и матриц, а также состояния логических ключей не изменяются;

5) счетчики числа входов в блоки (Nj) сбрасываются в ноль;

6) временные интегралы* устройств устанавливаются в ноль;

7) временные интегралы содержимого МКУ** устанавливаются в ноль;

8) счетчики числа входов в МКУ (SCj) и максимального содер­жимого МКУ (SMj) остаются неизменными;


9) временные интегралы всех очередей*** сбрасываются в ноль, счетчики вхождений в очередь (QCj) и максимального содержимого очереди (QMj) устанавливаются равными текущей длине очереди;

10) в таблицах стираются накопленные статистические данные;

11) временные интегралы СП устанавливаются в ноль, счетчики числа вхождений в списки (CCj) и максимального содержимого спи­сков (CMj) устанавливаются равными текущей длине списка.

Команда CLEAR. Сбрасывает всю накопленную статистику, удаляет все транзакты из модели и устанавливает отсчет (нумерацию) транзактов, сгенерированных блоками GENERATE, начиная с еди­ницы.

Формат записи команды CLEAR:

CLEAR [A|

Действия команды CLEAR:

1) все транзакты удаляются из модели;

2) содержимое всех блоков устанавливается в ноль;

3) текущие счетчики блоков (Wj) сбрасываются в ноль;

4) общие счетчики блоков (Nj) сбрасываются в ноль;

5) системное время (С1 и АС1) устанавливается в ноль;

6) устройства становятся незанятыми и доступными;

*Временной интеграл устройства - сумма длин всех интервалов времени, на протяжении которых устройство было занято.

**Временной интеграл содержимого МКУ рассчитывается так. В начале моделирования его значение равно нулю. При выполнении подпрограммы блоков ENTER и LEAVE вычисляются интервал вре­мени, на протяжении которого содержимое МКУ не менялось, и соответствующее этому интервалу значение содержимого МКУ. Текущее значение временного интеграла содержимого МКУ увеличива­ется на значение произведения этих величин.

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

7) МКУ становятся свободными и доступными;

8) временные интегралы устройств, МКУ, очередей и СП уста­навливаются в ноль;

9) максимальные значения содержимого очередей, СП и МКУ устанавливаются равными их текущему значению;


10) состояние датчиков псевдослучайных чисел не изменяется;

11) внутренний счетчик транзактов, генерируемых в блоках GENERATE, устанавливается в ноль;

12) из всех числовых групп удаляются их члены;

13) содержимое всех сохраняемых величин и матриц принимает нулевое значение;

14) логические ключи сбрасываются.

Если используется CLEAR OFF, выполняется все перечислен­ное выше за исключением последних двух пунктов. То есть, если операнд A=OFF, то логические ключи, сохраняемые величины и мат­рицы остаются без изменений.

После выполнения всех названных операций команды CLEAR GPSS-модель просматривается интерпретатором в поиске блоков GENERATE. В каждом выявленном блоке GENERATE создается новый транзакт так же, как при первой интерпретации блока GENERATE. Заново вычисляется время начальной задержки и мак­симальное число транзактов, которые будут образованы в блоках GENERATE.

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

В системе GPSS World генераторы случайных чисел создаются по мере необходимости, их явное определение не обязательно. Не­сколько генераторов случайных чисел используются GPSS World для блоков GENERATE, ADVANCE и TRANSFER. Они определяются в пункте меню Edit/Setting/Random Numbers (случайные числа) на­строек модели.

Формат команды RMULT:

RMULT [A],[B],[C],[D],[E],[F],[G]

В операнде А задается начальный множитель для первого гене­ратора случайных чисел RN1.

В операнде В задается начальный множитель для второго гене­ратора случайных чисел RN2.

В операнде С задается начальный множитель для третьего гене­ратора случайных чисел RN3.

В операнде D задается начальный множитель для четвертого ге­нератора случайных чисел RN4.

В операнде Е задается начальный множитель для пятого генера­тора случайных чисел RN5.


В операнде F задается начальный множитель для шестого гене­ратора случайных чисел RN6.

В операнде G задается начальный множитель для седьмого ге­нератора случайных чисел RN7.

Стандартный числовой атрибут, связанный с этой командой, - RN<номеp генератора>. Он возвращает случайное целое число из интервала от 0 до 999.

Операнды должны быть положительными целыми числами. В этом операторе должен быть задан хотя бы один операнд.

Пример 4.63

RMULT 875,1237,„319

Устанавливаются начальные состояния множителей генераторов случайных чисел 1, 2 и 5. Остальные значения остаются без изменений.

Оператор EQU. Предназначен для присвоения числовых значе­ний именам, которые используются в модели (аналог #defme в языке программирования Си). Оператор имеет такой формат:

Таблица 4.49

Когда интерпретатор обрабатывает оператор EQU, он вычисляет выражение, заданное операндом А, после чего создает или переопре­деляет имя переменной. Имени присваивается результат вычисленного выражения. Полученное значение заменяет ссылки на это имя в операндах или выражениях, используемых в модели.

Значения имен могут использоваться как внутренние значения переменных пользователя, или они могут определять объекты, такие как метка. Именам, используемым как метки объектов, значения обычно не назначаются. Интерпретатор автоматически назначает ин­дивидуальные значения именам, если они еще не появились в опера­торе EQU, в выражениях или операндах. Имена могут использоваться для определения объекта в СЧА.

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

Имена, которым не были явно назначены значения, не могут ис­пользоваться в выражении. Необходимо назначить значение для име­ни прежде, чем будет вычислено выражение. Переменные пользова­теля могут быть заданы операторами EQU или в процедуре PLUS.

Если значение имени определено, то оно сохраняет свое значе­ние на протяжении всего прогона модели. Имена переменных пользо­вателя могут быть переопределены: