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

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

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

Добавлен: 31.12.2025

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

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

5. Основные определения теории моделирования: Моделирование, математическая модель, аналитические и имитационные модели. Метод статистического моделирования.

11. Характеристики потока заявок: плотность (интенсивность). Стационарные и нестационарные потоки заявок. Пуассоновский поток. Закон распределения времени обслуживания.

13.Этапы машинного моделирования систем. Основные требования, предъявляемые к модели m процесса функционирования системы s. Итерационный процесс разработки модели. Построение адекватной модели.

17. Принципы имитационного моделирования сложных систем. Объекты и события в имитационной модели. Понятие модельного времени. “Принцип Δt”. “Принцип δz”.

18. Способы имитации. Дискретная имитация. Активность, процесс, событие. Подходы к построению дискретных имитационных моделей: событийный, сканирование активностей, процессный.

19. Моделирующий алгоритм дискретной имитации. Блок-схема моделирующего алгоритма управляющей программы.

21. Моделирование случайных воздействий на систему.

22. Программные средства моделирования систем.

PRIORITY А,В

Пр: PRIORITY P$Prior (значение приоритета транзакта, вошедшего в блок, становится равным значе­нию его параметра Prior).

Пр: PRIORITY 2,BU (значение приоритета транзакта, вошедшего в блок, становится равным 2; транзакт занимает место в ЦТС последним среди транзактов, имеющих приоритет 2).

Уровень приоритета транзакта является СЧА PR.

Пр: ASSIGN 1,PR (значение 1-го параметра транзакта, вошедшего в блок, становится равным его уровню приоритета).

Блок GENERATE осуществляет внесение тран­зактов в модель.

GENERATE A,B,C,D,E

А – средний интервал времени прихода транзактов (по умолч 0), В – полуинтервал (модификатор) (по умолч = 0), С – начальный сдвиг процесса поступления транзакта (по умолч = 0), D – кол-во транзактов, кот могут пройти через этот блок (по умолч ∞). E – уровень приоритета (от 0 до 127, 27, по умолч 0).

Блок TRANSFER (ПЕРЕДАТЬ) специально предназначен для выбора или изменения направления движения транзактов в модели. Он может работать в одном из 9 режимов, кот задаются при помощи операнда А. Ни в одном из режимов блок не препятствует входу в него транзактов. В режиме безусловной передачи операнд А не используется, а в кач операнда В записывается имя блока, в кот безусловно и без задержки должен перейти транзакт.

пр: TRANSFER ,BLK2 (транзакт, вошедший в данный блок, направляется в блок с именем BLK2).

  1. Моделирование многоканальных устройств (МКУ). Условия в реальном объекте, необходимые для использования МКУ для их представления в модели. Блоки ENTER и LEAVE.

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

Условия в реальном объекте, необходимые для использования МКУ для их представления в модели:

-объекты должны иметь одинаковую функцию распределения времени обслуживания

-одинаковые параметры этой функции.

В отличие от прибора, емкость кот всегда равна единице, емкость МКУ д.б. определена программистом. Для этого применяется специ­альная команда STORAGE (ОПРЕДЕЛИТЬ МКУ).

ИмяКоманды STORAGE A

Поле ИмяКоманды - символьное имя МКУ, а поле А - его емкость (количество каналов обслуживания), операнд А м.б. задан только в виде положительного целого числа.


Пр: MKU1 STORAGE 5 TRAKT STORAGE 30 (емкость МКУ с именем MKU1 определена равной 5, МКУ с именем TRAKT - 30).

Событие, связанное с занятием каналов обслуживания, моделируется бло­ком ENTER (ВОЙТИ), а событие, состоящее в освобождении каналов, - блоком LEAVE (ВЫЙТИ).

ENTER A,B

LEAVE A,B

А – имя МКУ. В – кол-во единиц емкости МКУ, кот должен занять (освободить) транзакт. По умолч =1.

Пр: 1) ENTER BLOK3 (войти в МКУ с именем BLOK3);

2)LEAVE SEANS,3 (освободить 3 единицы емкости МКУ с именем SEANS).

Между блоками ENTER и LEAVE может находиться любое кол-во бло­ков. В частности, задержка на время обслуживания в МКУ имитируется при помощи блока ADVANCE.

Если кол-во единиц емкости, заданных операндом В блока LEAVE, превышает кол-во занятых в данный момент времени каналов МКУ, интерпретатор останавливает моделирование и выдает сообщение об ошибке.

В отношении транзактов, ожидающих занятия МКУ, действует правило «первый соответствующий с пропусками».

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

МКУ имеют следующие СЧА: S — текущее содержимое МКУ; R —свободная емкость МКУ; SR — коэффициент использования в долях 1000; SA — целая часть среднего содержимого МКУ; SM — максимальное содержимое МКУ; SC — число занятий МКУ; ST — целая часть среднего времени занятия МКУ.

  1. Стандартные числовые атрибуты и их использование для управления потоком транзактов. Примеры.

Стандартный числовой атрибут – такой элемент системы моделирования, значение кот соответствует значению текущего состояния объекта, и это знач можно проанализировать, и в зав-ти от значения, управлять потоком транзактов (сохр величины, параметры транз, и др поля, значения кот мы можем задавать). Наиболее часто использ те, значения кот задаются автоматически, их нельзя изменять.

Значения СЧА могут изменяться в ходе моделирования, а вызов СЧА происходит в конкретный момент модельного времени. Поэт возвращаемое значение следует трактовать как текущее значение числового атрибута в момент его вызова. Если атрибут возвращает значение счетчика, максимальное или среднее значение некоторой величины, то он вычисляется за интервал времени сбора статистики, предшествующий моменту модельного времени, в кот происходит вызов СЧА.


Умение использовать СЧА позволяет разрабатывать компактные и гибкие модели.

Пр: текущее знач очереди или нагрузки на объект; изменение времени обслуж в зав-ти от текущей длины очереди; система с резервированием, т.е. если один кассир не справляется, то приходит на помощь другой.

Значение текущей длины очереди: Q$ИмяОчереди

Текущее состояние устройства: F

Коэф-т использования: FR

Для МКУ:

Кол-во занятых каналов: S

Кол-во свободных каналов: R

Коэф-т использования: SR

Для записи в процессе моделирования текущих значений СЧА используют ячейки. Занесение информации в ячейку осуществляет блок SAVEVALUE. При входе транзакта в этот блок требуемое значение СЧА фиксируется в ячейке, номер кот определяется операндом блока SAVEVALUE.

X$j - текущее значение, записанное в ячейке j;

Пр: ААА31 ENTER LIN2,R$LIN2 (транзакт, входящий в блок ENTER с именем ААА31, занимает R$lin2 кана­лов МКУ с именем lin2; поскольку СЧА R$lin2 возвращает кол-во свободных каналов этого же МКУ, транзакт занимает всю оставшуюся сво­бодную емкость устройства);

END_MOD TERMINATE TGI (вход транзакта в блок TERMINATE, имеющий имя END_MOD, приводит к за­вершению моделирования, т. к. из счетчика завершения вычитается его теку­щее содержимое - TG1).

Пример: мойка

expf function rn1,C24

0,0/…/.9997,8.0

wash storage 2

GENERATE 5,fn$expf

TEST L Q$qwash,4,bye

QUEUE qwash

ENTER wash

DEPART qwash

ADVANCE 15,8

LEAVE wash

bye TERMINATE 1

Start 10000

  1. Построение модели для оптимизации по нескольким критериям (на примере задачи управления производством). Методы поиска оптимума.

При моделировании приходится подбирать оптимальное значение параметров. Например, кол-во рабочих и их загрузка. 2 варианта: либо прибор простаивает, либо не справляется с нагрузкой и клиенты уходят. Нужно приводить оптимизацию к общему параметру, например, к деньгам. Нужно получить целевую фун-ю распределения.

Можно разобрать на примере распределения ресурсов.

Имеется фирма-поставщик, кот сотрудничает с Вашей фирмой. Она поставляет партии товаров. Заказ на очередную партию приходит быстро, в теч времени подготовки д.б. сформирован, далее отгружается, затем поступает на фирму через время доставки t. Чтобы он был готов для розничной продажи, необходимо время оформления tof.

Ограничения:

  1. Ограничены складские помещения, не может хранить больше чем V единиц товаров;

  2. Если на поставку партии товара подали заказ очень поздно, то фирма терпит убытки;

  3. Нельзя закупать кол-во товара очень большим, чтобы оборот капитала приносил прибыль;

  4. Поставщик не может формировать заказ произвольного объема.


В модели одна из важнейших задач заключ в достижении такого сочетания параметров, при кот достигается оптимум (max/min) некоторой целевой ф-ии. Кол-во параметров, от кот зависит это реш, м.б. различным. Эти параметры наз факторами. Для каждого из факторов можно определить диапазон изменений.

При проведении экспериментов можно поступить след образом:

  1. Полный эксперимент. Разбить диапазон изменений факторов на небольшие отрезки, и для каждого сочетания факторов провести отдельные эксперименты. Но кол-во экспериментов может оказаться недопустимо большим.

  2. Спланировать эксперимент, т.е. из всего множ точек, кот соответствуют значения факторов, выбрать некот подмножество и провести экспер только для этих значений. Т.о. задача планирования экспер заключается в выборе множества значений факторов для достижения требуемого оптимума искомой ф-ии, и провести эксперименты.

Обычно эксперименты проводятся в 2 этапа: сначала с большим шагом, а потом соотв значение делают меньше, и ищут знач в окрестностых этой точки.

  1. Переходные процессы в статистических моделях. Необходимость очистки статистических данных. Блок RESET.

Переходный процесс - это такое состояние модели, при кот статистические значения (коэффициент использования, длина очереди) еще не достигли своих стационарных. Если не принимать специальных мер, то результаты моделирования, полученные в переходных процессах, будут искажать истинный результат. Чтобы устранить влияние переходных процессов на результат моделирования, можно использовать один из следующих методов:

  1. с помощью специальных математических методов (теория вероятностей) изменить полученные значения, пересчитать их заново;

  2. моделировать так долго, пока результаты, полученные в переходном процессе, не будут пренебрежимо малы по сравнению с результатами, полученными в стабильном процессе (состоянии);

  3. в самой модели выполнить моделирование в 2 этапа:

- удвоенное/утроенное время переходного процесса

- стационарное состояние

Первый из этих вариантов требует спец математического аппарата и не всегда удобен.

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

Третий подход: чтобы выполнить необходимые этапы используется оператор RESET. Оператор RESET сбрасывает всю статистическую информацию, накопленную в процессе прогона модели. Использование этого оператора заключается в следующем: все значения, полученные в процессе моделирования (данные очереди, многоканальных устройств), удаляются, а сами устройства остаются в том же состоянии, в кот они находились. Оператор не имеет операндов. Оператор RESET используется обычно когда требуется собрать статистику по отдельным интервалам стационарности или исключить влияние переходного периода на собираемую статистическую информацию.


GENERATE 10000

TERMINATE 1

START 1

RESET

START 10

Чтобы не выводить лишний отчет о моделировании, оператор START можно дополнить: START 1,NP.

  1. Переход транзактов в один из двух блоков с заданной вероятностью. Блок TRANSFER в режиме условной передачи. Организация циклических (замкнутых) моделей с помощью блока TRANSFER.

Блок TRANSFER предназначен для выбора или изменения направления движения транзактов в модели. Он может работать в одном из 9 режимов, кот задаются при помощи операнда А. Ни в одном из режимов блок не препятствует входу в него транзактов.

Режим вероятностной передачи:

TRANSFER A,B,C

А – вер-ть перехода от 0 до 1; В – метка, по кот транзакты переходят с вероятностью 1-А; С – метка, по кот транзакты переходят с вероятностью А

В вероятностном режиме транзакт переходит в один из 2 блоков случайным образом. Если В пропущен, то переход осущ к следующему блоку. При каждом выполнении оператора TRANSFER, работающего в вероятностном режиме, интерпретатор обращается к генератору случайных чисел. Поэт выбор направления движения для каждого транзакта индивидуален и не зависит от предыдущего решения.

Пример:

  1. TRANSFER 0.333,Prn,NePrn – из общего числа транзактов, поступающих в блок TRANSFER, примерно 33,3% переходят в блок с именем NePrn, а остальные 66,7% - в блок Prn.

  2. TRANSFER 50,,NePrn – с вероятностью 0,05 транзакт будет направлен в блок с именем NePrn, и с вер-ю 0,95 – в следующий за TRANSFER блок.

Циклическая модель – когда присутствует замкнутый путь (цикл). Транзакты приходят в модель все одновременно, их число ограничено, ни один из них не покидает модель, способ завершения – только по времени (TERMINATE/ GENERATE 20000/ TERMINATE 1/ START 1).

Пример:

;В фирме имеется 100 компов и 90 рабочих мест (10 комп м.б. резервными). Каждый комп работает в течение некот времени, потом выходит из строя, ремонтируется. Потом возвращается на рабочее место или в очередь. Время наработки на отказ составляет 1000+-400 часов. Время ремонта компа 24+-18 часов.

;Построить модель, и подобрать такое кол-во рабочих, кот занимаются ремонтом,чтобы на рабочих местах всегда были бы компы.

workcomp STORAGE 90 ;кол-во рабочих мест

fixer STORAGE 4 ;сколько рабочих

GENERATE ,,,100 ;кол-во компов

ALEX QUEUE RabKomp ;моделирование входа в очередь (работающие компы)

ENTER WorkComp ;рабочий период

DEPART RabKomp ;выход из очереди работающих компов