- •Шпаргалки по имэп
- •Вопрос 1. Системы: основные понятия и определения.
- •Вопрос 2. Понятие модели. Классификация систем и моделей.
- •Классификация систем и моделей.
- •Вопрос 3. Принципы системного подхода в моделировании систем.
- •Вопрос 4. Имитационное моделирование. Метод статистического моделирования.
- •Вопрос 5. Основные подходы к построению математических моделей систем.
- •Вопрос 6. Дискретно-событийные системы и модели. Схема алгоритма моделирования стохастических дискретно-событийных систем.
- •Вопрос 7. Основные математические схемы моделирования систем и процессов (d,f,p,q – схемы).
- •Вопрос 8. Случайные потоки однородных событий: основные определения и свойства.
- •Вопрос 14. Системы массового обслуживания: основные определения и свойства.
- •Заявки принимаются к обслуживанию
- •Вопрос 18. Моделирование случайных событий и дискретных величин.
- •Вопрос 24. Стратегическое планирование машинных экспериментов с моделями систем.
- •Вопрос 26. Задачи обработки результатов моделирования.
- •Вопрос 30. Регрессионный анализ результатов моделирования.
- •Вопрос 33 Общие сведения о формате операторов gpss. Формат и действие блоков generate и terminate.
- •Вопрос 34 Элементы gpss, отображающие одноканальные обслуживающие устройства. Блоки seize, release, advance.
- •Вопрос 35 Сбор статистики об ожидании. Блоки queue, depart.
- •Вопрос 36 Переход транзакций в блок, отличный от последующего. Блок transfer (все режимы).
- •Вопрос 37 Моделирование многоканальных устройств. Определение емкости мку. Формат и действие блоков enter и leave.
- •Вопрос 41 Стандартные числовые атрибуты системы и транзактов, параметры транзактов.
- •Вопрос 42 Блоки assign, mark,loop (формат и примеры использования).
- •Вопрос 44 Сохраняемые величины. Операторы initial и savevalue.
- •Вопрос 46 Проверка числовых выражений. Блок test.
- •Вопрос 50 Логические ключи. Блоки управления потоками транзактов: logic, gate lr,gate ls и gate.
Вопрос 42 Блоки assign, mark,loop (формат и примеры использования).
Изменение значений параметров. Блок ASSIGN (НАЗНАЧИТЬ). При входе транзакта в этот блок значения параметров могут задаваться или изменяться.
Формат блока:
Таблица 4.29
Операнд |
Значение |
Результат по умолчанию |
А |
Номер или имя модифицируемого или задаваемого параметра |
Ошибка |
В |
Величина, используемая для модификации (число или СЧА) |
Ошибка |
С |
Имя функции |
Не используется |
Блок ASSIGN может быть использован как в режиме замещения значения параметра (начальное значение всех параметров транзактов равно 0), так и в режиме увеличения и уменьшения. В режиме увеличения предшествующее значение параметра увеличивается на значение, стоящее в операнде В. В режиме уменьшения оно уменьшается на величину, стоящую в операнде В. Режимы увеличения и уменьшения определяются введением соответственно знаков «плюс» и «минус» перед запятой, которая разделяет операнды А и В.
При использовании операнда C значение операнда В умножается на значение функции, указанной в операнде C. Параметр, заданный в операнде А, изменяется на величину полученного произведения (в режиме увеличения и уменьшения) или приобретает значение результата (в режиме замещения).
Пример 4.28
Блок ASSIGN в режиме присваивания:
ASSIGN MEST,36
Параметру транзакта c именем MEST присваивается значение 36.
ASSIGN 3,25
Параметру P3 присваивается значение 25.
ASSIGN P4,FR$BB
Параметру транзакта c номером, записанным в параметре P4, присваивается значение величины загрузки устройства BB (оба операнда заданы косвенным образом).
Блок ASSIGN в режимах накопления и уменьшения:
ASSIGN 4+,Q5
Параметр 4 увеличивается на значение, равное текущей длин очереди 5.
ASSIGN P2-,7
От значения параметра, номер которого задан параметром P2 вычитается 7.
Транзитное время. Блок MARK (ОТМЕТИТЬ). Стандартный числовой атрибут M1 измеряет время, которое прошло c момента входа транзакта в модель. Однако очень часто требуется знать время, затраченное на перемещение транзакта между двумя произвольными точками модели. Для этого используется блок MARK.
При входе транзакта в блок MARK значение таймера абсолютного времени записывается в качестве одного из его параметров. Такую запись называют отметкой транзакта. Формат блока MARK:
MARK A
Таблица 4.30
Операнд |
Значение |
Результат по умолчанию |
А |
Номер параметра, в который записывается значение абсолютного времени (целое число, СЧА) |
При отсутствии операнда А отметка времени заменяется текущим значением абсолютного времени |
Пусть необходимо определить интервал времени, на протяжении которого транзакт проходит от точки Т1 к точке Т2. Для этого нужно выполнить два действия:
1) в точку Т1 поместить блок MARK j, где j – номер параметра, в который записывается значение абсолютного времени в момент записи;
2) в точке Т2 обратиться к СЧА c именем MPj, где j – номер параметра, в котором сделана отметка времени транзакта; СЧА MPj будет иметь такое значение:
Организация циклов. Блок LOOP (ЦИКЛ). C помощью параметров транзактов в программе можно организовать циклы. Для этого используется блок LOOP. Он управляет количеством повторных прохождений транзактом определенной последовательности блоков модели.
Формат блока:
LOOP A[,B]
Таблица 4.31
Операнд |
Значение |
Результат по умолчанию |
А |
Параметр транзакта, используемый для организации цикла (переменная цикла). Он может быть именем, положительным целым числом, СЧА, C4A*CЧA (косвенная адресация). |
Ошибка |
В |
Метка (имя блока) начального блока цикла |
Ошибка |
Когда транзакт входит в блок LOOP, параметр, указанный в операнде А, уменьшается на единицу, А затем проверяется его значение на равенство нулю. Если значение не равно нулю, то транзакт переходит в блок, указанный в операнде В. Если значение параметра равно нулю, транзакт переходит в следующий блок.
Переменная блока LOOP может только уменьшаться.
Пример 4.30
Цикл организован по первому параметру транзакта. Его начальное значение равно 3. После освобождения устройства проверяется значение первого параметра. Если оно не равно нулю, го транзакт возвращается к блоку, помеченному меткой SIS, т.е. занимает устройство c именем PC. Всего каждый транзакт будет занимать это устройство три раза.