- •Глава 1. Принципы моделирования случайных элементов 6
- •Глава 3. Метод Монте-Карло и его применения 51
- •3.4. Задания 63
- •Глава 4. Система моделирования gpss 64
- •Глава 5. Моделирование сложных систем на основе gpss 127
- •5.2.1. Иммитационная модель системы 136
- •Глава 6. Задания лабораторного практикума по gpss 152
- •Глава 7. Статистическое моделирование в финансовом анализе. 181
- •Введение
- •Глава 1.Принципы моделирования случайных элементов
- •1.1. Моделирование случайных величин
- •1.1.1.Моделирование базовых случайных величин (бсв) Понятие бсв
- •Датчики бсв
- •Метод Макларена-Марсальи
- •Специальные тесты проверки точности моделирования бсв
- •Тест «совпадения моментов»
- •Тест «ковариация»
- •Тест «равномерность двухмерного распределения»
- •1.1.2.Статический анализ точности моделирования
- •1.1.3.Задания
- •1.2. Моделирование дискретных случайных величин (дсв)
- •1.2.1.Понятие дсв. Общая схема алгоритма моделирования
- •1.2.3.Графический анализ точности моделирования
- •1.2.4.Задания
- •Дискретное равномерное распределение
- •1.3. Моделирование непрерывных случайных величин (нсв)
- •1.3.1.Понятие нсв. Универсальные методы моделирования нсв. Понятие нсв.
- •Метод обратной функции.
- •Метод исключения
- •1.3.2.Тесты проверки точности моделирования нсв Критерии согласия
- •- Критерий согласия Пирсона
- •Критерий согласия Колмогорова.
- •Критерий серий
- •Критерий “нисходящих” и ”восходящих” серий
- •1.3.3.Алгоритмы моделирования для основных непрерывных распределений Равномерное распределение
- •Алгоритм моделирования
- •Одномерное нормальное распределение
- •Алгоритм моделирования
- •Экспоненциальное распределение
- •Алгоритм моделирования
- •Распределение Лапласа
- •Алгоритм моделирования
- •Алгоритмы моделирования:
- •Бета-распределение.
- •Связь с другими распределениями
- •Алгоритмы моделирования:
- •Алгоритмы моделирования
- •Алгоритм моделирования
- •Моделирование случайных величин с заданной гистограммой
- •Алгоритм моделирования
- •Моделирование случайных величин с заданным полигоном частот
- •1.3.4.Задания Равномерное распределение
- •Одномерное нормальное распределение
- •Распределение Лапласа
- •Распределение Вейбулла-Гнеденко
- •Гамма распределение
- •Бета-распределение
- •Распределение Коши
- •Логистическое распределение
- •Распределение Стьюдента
- •Распределение Фишера
- •3.2. Вычисление определенного интеграла методом Монте-Карло
- •Пример.
- •Текст программы:
- •3.3. Решение системы алгебраических уравнений методом Монте-Карло
- •3.4. Задания
- •Глава 4.Система моделирования gpss
- •4.1. Краткие сведения из теории
- •4.2. Основные правила и операторы языка gpss
- •4.2.1.Структура операторов gpss
- •4.2.2.Основные операторы языка gpss
- •4.3. Основные блоки gpss/pc и связанные с ними объекты
- •4.3.1.Блоки, связанные с транзактами
- •4.3.2.Блоки, связанные с аппаратными объектами
- •4.3.3.Блоки для сбора статистических данных
- •4.3.4.Блоки, изменяющие маршруты транзактов
- •4.3.5.Блоки, работающие с памятью
- •4.3.6.Блоки для работы со списками пользователя
- •4.4. Управляющие операторы gpss/pc
- •4.5. Некоторые приемы конструирования gpss-моделей
- •4.5.1.Косвенная адресация
- •4.5.2.Обработка одновременных событий
- •4.6. Команды gpss/pc и технология работы с пакетом
- •4.6.1.Загрузка интегрированной среды
- •4.6.2.Ввод новой модели
- •4.6.3.Редактирование текста модели
- •4.6.4.Запись и считывание модели с диска
- •4.6.5.Прогон модели и наблюдение за моделированием
- •4.6.6.Получение и интерпретация стандартного отчета
- •5.1.3.Анализ результатов иммитационного моделирования
- •5.2. Моделирование работы участка цеха
- •5.2.1.Иммитационная модель системы
- •110 Generate 30,5 Первый сегмент модели
- •280 Generate 20,5 Второй сегмент модели
- •450 Generate 480 Третий сегмент модели (таймер)
- •5.2.2.Анализ результатов иммитационного моделирования
- •Обсуждение результатов моделирования
- •105 A2 storage 2 Второй станок моделируется как накопитель
- •5.3. Порядок оформления отчета
- •5.3.1.Содержание отчета
- •Задания для самопроверки
- •5.3.2.Создание выходного файла
- •Задание для домашней подготовки
- •5.3.3.Описание элементов выходного файла
- •Глава 6.Задания лабораторного практикума по gpss
- •Глава 7.Статистическое моделирование в финансовом анализе.
- •7.1. Моделирование наращенных сумм и современных величин платежа.
- •Задание 4.
- •7.2. Моделирование величины реальной наращенной суммы платежей с учетом инфляции.
- •7.3. Моделирование обменного курса валют при двойной конверсии валют.
- •Приложение
- •Примечание к таблице п.3
- •Литература
Приложение
Таблица П.1
Системные числовые атрибуты GPSS/PC
Символическое обозначение |
Описание системных числовых атрибутов |
RNj |
Реализация БСВ для j-ого датчика (I≤j≤999); 0 ≤ RNj ≤ 999 во всех случаях, кроме случаев использования RNj в качестве аргумента функции и переменной, когда 0≤RNj≤0.999999 |
C1 |
Текущее значение относительного момента времени (устанавливается в 0 операторами CLEAR и RESET) |
AC1 |
Текущее значение абсолютного времени (устанавливается в 0 только оператором CLEAR) |
TG1 |
Текущее значение счетчика числа завершений |
XN1 |
Номер активного транзакта (обрабатываемого в данный момент) |
Z1 |
Размер свободной оперативной памяти в байтах |
M1 |
Время прерывания в модели активного транзакта |
Таблица П.2
Стандартные числовые атрибуты GPSS/PC
Тип объектов |
Символическое обозначение СЧА |
Описание СЧА |
Транзакты |
Pj Р*<имя>
MPj MBj
PR |
Значение параметра j транзакта Значение параметра с именем <имя> Значение времени, равное AC1-Pj Флаг синхронизации: 1, если транзакт в блоке j из одного семейства с активным транзактом; 0 – в противном случае Приоритет активного транзакта |
Блоки |
Nj
Wj |
Общее число транзактов, вошедших в блок Текущее число транзактов в блоке |
Устройства |
Fj
FIj
FRj
FCj FVj
FTj |
Текущее состояние устройства (0 – устройство свободно, 1 – устройство занято или прервано) Признак прерывания устройства (1 – состояние прерывания, О – в противном случае) Коэффициент использования устройства в долях от 1000 Общее число входов в устройство Признак доступности устройства (1 – устройство доступно, 0 – устройство не доступно) Среднее время использования устройства одним транзактом |
Логические ключи |
LSj |
Состояние логического ключа (1 – установлен, 0 – не установлен) |
Памяти (многоканальные устройства) |
Sj Rj SRj
SMj SCj STj
SEj
SFj
SVj |
Текущее содержание памяти Число свободных единиц памяти Коэффициент использования памяти j в долях от 1000 Максимальное содержание памяти Общее число входов в память Среднее время пребывания транзактов в памяти Признак пустоты памяти (1– память пуста, 0 –память не пуста) Признак заполненности памяти (1 – память заполнена, 0 – память не заполнена) Признак доступности памяти (1 – память доступна, 0 – память не доступна) |
Очереди |
Qj QAj QMj QCj QZj
QTj
QXj |
Текущая длина очереди Средняя длина очереди Максимальная длина очереди Общее число входов в очередь Число нулевых входов (без ожидания) в очередь Среднее время пребывания транзакта в очереди (включая нулевые входы) Среднее время пребывания транзакта в очереди (без нулевых входов) |
Переменные и функции |
Vj
BVj
FNj |
Значение арифметической переменной с фиксированной или плавающей точкой Значения булевской переменной (1– истина, 0 – ложь) Значение функции (дробная часть отбрасывается за исключением использования в качестве функции-модификатора или аргумента другой функции) |
Таблицы |
TBj TDj
TCj |
Среднее значение аргумента Общее число включений в таблицу (число значений аргумента таблицы) Среднеквадратическое отклонение аргумента таблицы |
Ячейки |
Xj |
Содержимое ячейки |
Матрицы ячеек |
MXj(a,b) |
Содержимое элемента матрицы ячеек, расположенного в строке а и столбце b |
Списки пользователя |
CHj CAj CMj
CCj CTj |
Текущее число транзактов в списке Среднее число транзактов в списке Максимальное число транзактов в списке Общее число транзактов в списке Среднее время пребывания транзакта в списке |
Таблица П.3
Операторы блоков GPSS/PC
Код оператора |
Операнд |
Содержание операнда |
Назначение |
||
ADVANCE Задержка транзакта |
A [B] |
Среднее время Модификатор-интервал Модификатор-функция: FNj,FNS<имя>,FN*j |
ASSEMBLE Объединение транзактов |
A
|
Число транзактов из одного семейства, объединяемых в один транзакт |
ASSIGN Изменение значений параметров |
A
B
C |
Номер или диапазон изменения номеров параметров и указатель режима (накопления "+", вычитания – “ – ", замещения) Значение, на которое изменяется параметр (параметры) Номер модификатора функции |
COUNT XXX Определение количества объектов из заданного множества, удовлетворяющих заданному условию |
A B
C
[D]
[E] |
Номер параметра – счетчика объектов Нижняя граница диапазона номеров объектов Верхняя граница диапазона номеров объектов Значение, сравниваемое со значением СЧА в поле Е Код СЧА анализируемых объектов (без номера и имени) |
DEPART Уменьшение очереди |
A [B] |
Номер (имя) очереди Число единиц, на которое уменьшается длина очереди (не превосходит текущей очереди) |
ENTER Занятие памяти |
A [B] |
Номер (имя) памяти Число занимаемых транзактом единиц памяти |
GATE XXX Выбор направления в зависимости от состояния объекта |
A [B] |
Номер (имя) устройства, памяти, ключа Номер (метка) альтернативного блока в случае невыполнения проверяемого условия |
GENERATE Создание и запуск транзактов в модель с заданным законом времени поступления |
[A] [B]
[C] [D]
[E] |
Среднее время поступления транзактов Модификатор-интервал или модификатор -функция (СМ.ADVANCE) Время задержки первого транзакта Количество создаваемых блоком транзактов Приоритет транзактов |
LEAVE Освобождение памяти |
A [B] |
Номер (имя) памяти Число освобождаемых транзактом единиц памяти |
LINK Перевод транзакта из списка текущих событий в список пользователя |
A B
[E] |
Номер (имя) списка пользователя Режим упорядочивания списка: FIFO – "первым пришел – первым обслужился", LIFO – "первым пришел – последним обслужился", номер параметра Номер (метка) альтернативного блока |
LOGIK X Изменение состояния ключа X {S,R,I} |
A |
Номер (имя) логического ключа, состояние которого изменяется: S – "включается", R – "выключается", I – "инвертируется" |
LOOP Организация циклов |
A
[B] |
Номер (имя) параметра транзакта, используемого в качестве счетчика цикла Номер (метка) первого блока в цикле |
MATCH Синхронизация транзактов |
A |
Номер (метка) сопряженного блока MATCH. Метка исходного блока MATCH указывается в поле A сопряженного блока |
PREEMPT Прерывание обслуживания устройством одного транзакта с целью захвата устройства прерывающим транзактом
|
A [B]
[C]
[D]
[E]
|
Номер (имя) прерываемого устройства Задание режима прерывания: по приоритету – PR, обычный – операнд опущен Номер (метка) блока для прерванного транзакта Номер (имя) параметра прерванного транзакта для записи остатка времени обслуживания RE – режим удаления прерванного транзакта с направлением по адресу в поле C |
PRIORITY Изменение приоритета транзакта |
A |
Новое значение приоритета транзакта
|
QUEUE Увеличение очереди |
A [B] |
Номер (имя) очереди Число единиц, на которое увеличивается длина очереди |
RELEASE Освобождение устройства |
A |
Номер (имя) освобождаемого устройства транзактом, который его занимал |
RETURN Снятие прерывания с устройства |
A |
Номер (имя) устройства, на котором снимается прерывание транзактом, осуществившим прерывание
|
SAVEVALUE Изменение значений ячеек |
A
B |
Номер (имя) ячейки и указатель режима: накопления (+),вычитания ( – ), замещения (по умолчанию) Значение, на которое изменяется содержимое ячейки |
SEIZE Занятие устройства |
A |
Номер (имя) занимаемого устройства
|
SELECT XXX Выбор первого из множества объектов, удовлетворяющего заданному условию |
A – E [F]
|
Аналогичны блоку COUNT Номер (метка) альтернативного блока в случае невыполнения проверяемого условия |
SELECT MAX(MIN) |
A – F |
Аналогичны предыдущему случаю (поиск объектов с MAX (MIN) значением указанного СЧА) |
SPLIT Создание копий исходного транзакта |
A [B]
[C] |
Число создаваемых копий Номер (метка) блока, к которому направляются копии Номер (имя) параметра для присвоения копиям последовательных номеров |
TABULATE Табуляция текущего значения аргумента таблицы |
A [B] |
Номер (имя) таблицы Число добавляемых в соответствующий интервал таблицы единиц |
TERMINATE Удаление транзактов из модели |
[A] |
Число единиц, на которое уменьшается счетчик завершений (поле а оператора START)
|
TEST YY Выбор направления движения транзакта в зависимости от значений СЧА |
A,B
[C] |
Величины, сравниваемые с помощью оператора отношения YY {L,LE,G,GE,E,NE} Номер (имя) альтернативного блока при невыполнении проверяемого условия |
TRANSFER Выбор направления движение транзактов из множества возможных направлений
|
[A]
[B],[C] [D] |
Режим выбора направления: "," – режим безусловного перехода; "BOTH" – выбор из двух направлений; "ALL" – выбор из более чем двух направлений; ".K" – выбор с вероятностью Значения номеров (меток) блоков Константа, используемая для вычисления возможных адресов в режиме "ALL" |
UNLINK Удаление транзактов из списка пользователя |
A B
[C] |
Номер (имя) списка пользователя Номер (метка) блока следования удаляемых транзактов Счетчик числа удаляемых транзактов ("ALL" – удаление всех транзактов) |
