4.3. Моделирование завершения техпроцесса
Созданные транзакты, двигаясь по модели, имитируют операции, происходящие в реальном техпроцессе. Для того чтобы остановить моделирование необходимо вывести определенное количество транзактов из модели или остановить модель через какое-то заданное время. Для этого используют блок TERMINATE.
Блок TERMINATE (завершить) - удаление транзактов из модели (рис. 11).
Рис. 11. Блок ТERMINATE
При входе транзакта в блок TERMINATE, он уничтожается и из специального счетчика завершения вычитается целое число, записанное в операнде А. Счетчик завершения - ячейка памяти, которая хранит положительное целое значение, записанное в начале моделирования. Счетчик завершения в GPSS/Н-модели может быть только один. Если его значение станет равным 0 (или меньше 0), моделирование прекратится. Если значение операнда А не установлено (то есть равно 0), значение счетчика завершения не изменяется.
Примеры блока TERMINATE:
TERMINATE 1
удаляет транзакты из модели, при этом содержимое счетчика завершения (каждый раз при входе транзакта) уменьшается на единицу.
TERMINATE
удаляет транзакты из модели, при этом содержимое счетчика завершения не изменяется.
После того, как написана GPSS/H-программа, прежде чем выполнять прогоны модели, к ней необходимо добавить специальные операторы. Одним из таких операторов является START.
Оператор START - устанавливает значение счетчика завершения.
В операнде А оператора START записывается начальное значение счетчика (больше 0).
Примеры оператора START:
1. Предположим, что требуется промоделировать техпроцесс в течение 480 единиц времени. Для этого необходимо:
а) в модель включить сегмент из двух блоков, называемый счетчиком модельного времени (рис. 12);
Рис. 12. Счетчик модельного времени
б) во всех прочих блоках TERMINATE операнд А обнулить;
в) операнд А оператора START установить равным 1.
Часть GPSS/H-программы будет иметь следующий вид:
* 1-й сегмент модели
GENERATE 3.2,1.2,,2
. . .
TERMINATE
* 2-й сегмент модели
GENERATE 480
TERMINATE 1
START 1
В момент модельного времени 480, транзакт выйдет из блока GENERATE второго сегмента и сразу же попадет в блок TERMINATE. Поскольку операнд этого блока содержит 1, то из счетчика завершения отнимется 1. Это уменьшит значение счетчика до 0 и интерпретатор остановит прогон модели.
2. Предположим, что требуется закончить прогон модели, после того как будет обслужено 100 транзактов. Для этого необходимо:
а) установить значение операнд А оператора START равным 100;
б) установить операнд А блока TERMINATE равным 1.
Часть GPSS/H-программы будет иметь следующий вид:
GENERATE 3.2,1.2,,2
. . .
TERMINATE 1
START 100
Когда транзакт будет входить в блок TERMINATE, счетчик завершения будет уменьшаться на 1. Прогон будет продолжаться, пока значение счетчика не достигнет 0 (то есть пока не удалится 100 транзактов).
- Федеральное агенство по образованию Российской Федерации
- Предисловие
- Введение
- 1. Классификация моделей
- 2. Системы массового обслуживания
- 2.1. Классификация систем массового обслуживания
- 3. Техническое и программное обеспечение
- 4. Моделирование на специализированном языке gpss/h
- 4.1. Общие сведения
- 4.2. Моделирование начала техпроцесса
- 4.3. Моделирование завершения техпроцесса
- 4.4. Моделирование технологических операций
- 4.5. Моделирование технологического оборудования
- 4.6. Моделирование группы технологического оборудования
- 4.7. Сбор статистики о накопителях
- 4.8. Моделирование случайных событий
- 4.8.1. Определение дискретной функции
- 4.8.2. Определение непрерывной функции
- 4.8.3. Определение функций по заданному закону распределения
- 4.9. Пример имитационного моделирования
- 4.9.1. Метод построения модели
- 4.9.2. Подготовка модели к запуску
- Storage s(sta1),2 Задание станков в группе а
- 4.9.3. Запуск модели и получение результатов
- Line1 7 2.454 90 11 12.2 78.192
- 4.10. Моделирование при установившемся режиме
- Simulate Начало моделирования storage s(sta1),2 Задание станков в группе а
- Simulate Начало моделирования storage s(sta1),2 Задание станков в группе а
- 4.11. Изменение последовательности псевдослучайных чисел
- 4.12. Проведение нескольких экспериментов за один прогон модели
- Generate 19,7 Поступление заявок
- Generate 19,7 Поступление заявок
- Clear Обнуление статистики
- Start 100 Запуск модели
- 4.13. Моделирование непоследовательных операций
- 4.14. Стандартные числовые атрибуты
- 4.14.1. Атрибуты транзактов
- 4.15. Проверка числовых выражений
- 4.16. Присвоение числовых значений параметрам транзакта
- 4.17. Изменение приоритета транзакта
- 4.18. Пример компьютерной имитации
- 5.2. Построение статических и динамических объектов в Proof Animation
- 5.3. Создание классов в Proof Animation
- 5.4. Движение в Proof Animation
- 5.4.1. Комплект инструментальных средств создания и редактирования сегментов
- 5.5. Файл трассировки
- 5.6. Пример анимационного моделирования
- 6. Связь анимации с имитационной моделью
- 6.1. Генерирование файла трассировки (.Atf) имитационной моделью
- 6.2. Переменные в gpss/h-моделях
- Integer &V, . . .
- 6.3. Чтение данных из внешнего файла
- 6.4. Пример связи анимации с имитационной моделью
- 7. Этапы создания модели компьютерной имитации и анимации
- 8. Пример создания модели компьютерной имитации и анимации
- Литература
- Приложения
- Василий Валентинович Зиновьев Алексей Николаевич Стародубов
- Редактор е.Л. Наркевич