Автор: Пользователь скрыл имя, 04 Ноября 2012 в 14:28, курс лекций
Дисциплина «Моделирование в проектировании сложных систем» рассматривает вопросы применения имитационного моделирования при проектировании сложных технических и других систем, к которым относятся гибкие производственные системы (ГПС), их подсистемы, и другие объекты дискретного производства, а также транспортные, информационные, банковские, торговые, и т.п. системы, в основе которых с точки зрения моделей лежат системы массового обслуживания.
TABULATE МЕТ1
Блок TABULATE помещается в точку модели, для которой табулируется выбранный объект (в нашем случае – время «жизни» транзактов, например, перед удалением их из модели).
В данном пакете есть возможность табулировать время пребывания в очереди с помощью одной команды QTABLE. Ее формат:
<имя> QTABLE А, В, С, D
Здесь в операнде А указывается имя очереди, назначение остальных операндов такое же, как и в общем случае. Например:
.
.
.
МЕТ QTABLE ALFA , 8, 10, 5
.
.
.
QUEUE ALFA
.
.
.
DEPART ALFA
.
.
.
В таблицу с именем МЕТ будет автоматически занесена информация об очереди ALFA.
Пример 5.1. В одном обрабатывающем центре обрабатываются детали трех типов. Детали типа 1 поступают с интервалами от 5 до 10 мин, типа 2 – от 8 до 12 мин, типа 3 – от 10 до 14 мин. Обработка детали типа 1 занимает 7,5 мин, типа 2 – 10 мин, типа 3 – 12 мин. Создать модель работы обрабатывающего центра в течение 8 часов.
Программа имеет вид:
generate 7.5, 2.5
ASSIGN 1, 1
TRANSFER , OBR
generate 10, 2
ASSIGN 1, 2
TRANSFER , OBR
generate 12, 2
ASSIGN 1, 3
ОBR QUEUE qObR
seize OBRC
DEPART qObR
TEST E P1, 1, TIP2
advance 7.5
TRANSFER , KONEC
TIP2 TEST E P1, 2, TIP3
advance 10
TRANSFER , KONEC
TIP3 advance 12
KONEC release OBRC
terminate
generate 480
terminate 1
start 1
В этой программе благодаря применению блока ASSIGN для определения типа деталей через значение первого параметра транзактов удалось осуществить их соответствующую задержку на обработку в одном обрабатывающем центре.
Пример 5.2. На участок контроля поступает поток изделий с интервалами от 5 до 7 мин. На участке три идентичных стенда. Изделие занимает свободный стенд, если такого нет, то направляется к стенду с наименьшей очередью. Время контроля подчиняется нормальному распределению с матожиданием 18 мин и стандартным отклонением 3 мин. После контроля изделия уходят с участка контроля для проведения других операций. Промоделировать работу участка при программе контроля 5000 изделий. С целью улучшения организации работы участка протабулировать информацию о времени нахождения изделий в очередях к стендам.
Программа модели:
OCH1 QTABLE 1,10,10,8
OCH2 QTABLE 2,10,10,8
OCH3 QTABLE 3,10,10,8
GENERATE 6,1
SELECT E 1,1,3,0,F,ALFA
BETTA QUEUE P1
SEIZE P1
DEPART P1
ADVANCE (NORMAL(2,18,3))
RELEASE P1
TERMINATE 1
ALFA SELECT MIN 1,1,3,,Q
TRANSFER ,BETTA
START 5000
Таблицы
по результатам моделирования
TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%
OCH1 43.410 16.957 0
20.000 – 30.000 198 22.58
30.000 – 40.000 344 43.24
OCH2
37.139 16.827
OCH3
31.023 16.275
Анализ этих результатов показывает, что величины среднего значения и стандартного отклонения незначительно уменьшаются по мере возрастания номера стенда.
6.
моделирование систем с
в режимах прерывания и недоступности
В этом разделе рассматриваются
операторы, моделирующие ситуации, когда
прерывается обслуживание транзактов
в устройствах, а также средства, позволяющие
сэкономить машинное время при поиске
заблокированных
транзактов.
6.1. Моделирование захвата устройств
Для моделирования захвата и освобождения устройств используются блоки PREEMPT (захватить) и RETURN (возвратить).
Формат и графическое изображение блока PREEMPT:
В операнде А указывается имя устройства, подлежащего захвату.
Блок PREEMPT может работать или в приоритетном режиме, или в режиме прерывания. В первом случае в операнде В указывается PR, во втором этот операнд задается по умолчанию.
В операнде С указывается метка, куда направляется прерванный транзакт.
В операнде D указывается номер параметра прерванного транзакта, в котором записывается оставшееся время обслуживания.
Операнд Е определяет право на дообслуживание: по умолчанию – сохраняется право, при указании RE – не сохраняется.
Блок RETURN фиксирует факт освобождения устройства от захвата. Его формат и изображение:
В операнде А указывается имя освобожденного устройства.
В модели устройство может быть захвачено любое количество раз различными транзактами, но не два раза подряд одним транзактом. Транзакт не может войти в блок, если в приоритетном режиме устройство захвачено транзактом с равным или более высоким приоритетом, чем активный транзакт.
Рассмотрим примеры
PREEMPT ОТО
PREEMPT ОТО, PR
PREEMPT ОТО, PR, МЕТ, , RE
В первом случае блок работает
в режиме прерывания. Прерванный
транзакт никуда не направляется, после
обслуживания захватчика будет
дообслужен.
В последнем случае прерванный транзакт теряет право на дообслуживание, поэтому по метке МЕТ его можно направить, например, в блок TERMINATE, т.е. на удаление из модели. Этого нельзя было сделать, если в последнем случае операнд Е задать по умолчанию. Более подробно различные варианты моделирования захвата изложены в [1].
6.2. Моделирование недоступности устройств
При моделировании неисправностей устройств и реализации различных дисциплин обслуживания могут быть использованы блоки FUNAVAIL и FAVAIL.
Блок FUNAVAIL (F обозначает устройство, UNAVAIL – недоступно) моделирует недоступность одноканального устройства.
Формат и изображение блока:
В операнде A указывается имя устройства, которое становится недоступным.
Назначение остальных операндов зависит от характера транзактов, занимавших устройство до перевода его в недоступное состояние.
Операнды В, С, D соответствуют транзактам, занимавшим устройство после входа в него через SEIZE и PREEMPT .
Операнды E, F соответствуют прерванным транзактам.
Операнды G, H соответствуют транзактам,
находящимся в списке
задержки.
В операнде В задаются режимы работы с транзактами в период недоступности:
В операнде D задается номер параметра транзакта, занимавшего устройство, в который записывается оставшееся время обслуживания после того, как устройство стало недоступным.
В операнде E задаются режимы работы с ранее прерванными транзактами:
Операнд G определяет режимы работы с транзактами, находящимися в списке задержки в период недоступности устройства:
Блок FAVAIL (устройство доступно) моделирует доступность устройства. Формат и изображение блока:
В операнде A указывается имя устройства, которое становится доступным.
Пусть, например, модуль моделирования аварийной ситуации имеет вид:
GENERATE (NORMAL (1, 100, 10))
FUNAVAIL OTO, CO , , , RE , MET1 , RE , MET1
ADVANCE 5, 2
FAVAIL OTO
MET1 TERMINATE
При единице модельного времени, равной 1 часу, распределение интервалов наступления аварийных ситуаций подчиняется нормальному закону при среднем значении 100 часов и стандартном отклонении 10 часов.
При переводе устройства ОТО в недоступное состояние продолжится обработка транзакта (если он находился в устройстве); транзакты, ранее прерванные, и находившиеся в списке задержки, будут удалены из модели (через MET1 TERMINATE). После восстановления устройства в течение (5 ± 2) часов оно становится доступным.
6.3. Применение списков пользователя
Информация о работе Моделирование в проектировании сложных систем