Файл: Голенко Д.И. Статистические модели в управлении производством.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.04.2024
Просмотров: 137
Скачиваний: 0
жения требований в системе, осуществляется благодаря использованию определенных способов включения мо делирующих блоков. В циклическом моделирующем ал горитме [6.10, 6.11] этот способ состоит в том, что на каждом шаге просматриваются все элементы системы и определяется, какие переходы требований из одного эле мента в другой могут произойти в данный момент.
В этом смысле циклический алгоритм полностью ана логичен алгоритму с детерминированным шагом (см. § 6.4). Отличие состоит лишь в способе определения времени выполнения следующего шага в блоке У (см. рис. 6.4.1). В данном случае
* n = m i n ( m i n t^j |
, mintk |
), |
і,І |
h |
|
т. е. равно минимуму из минимального времени оконча ния обслуживания во всех аппаратах, производящих об служивание, и минимального времени поступления оче редных требований входящих потоков.
§6. 8. Нециклические моделирующие алгоритмы.
Моделирующий алгоритм с пошаговым разблокированием
Внециклических моделирующих алгоритмах в отли чие от циклического в каждый момент времени t про сматриваются только те элементы системы, которые изменяют свое состояние в этот момент. При этом, чтобы промоделировать процесс распространения изменений состояния элементов в направлении, противоположном направлению движения требований в системе, необходи мо в случае освобождения любого элемента А, опреде лить, не вызовет ли это разблокирование предшествую щего ему элемента A*_i. В случае положительного отве
та НеобхОДИМО ПрОМОДеЛИрОВаТЬ Освобождение A i - l , проверить возможность разблокирования предшествую щего ему элемента А,_2 и т. д.
В моделирующем алгоритме с пошаговым разблоки рованием [6.12] эта операция производится следующим образом. Момент выполнения очередного шага опреде ляется как минимум из минимального времени оконча ния обслуживания во всех элементах At-,j с S i j = l
(titj) и минимального времени поступления очередных требований во всех входящих потоках (t\ ) . Если
t£* = m i n ( m i n t£j, m i n t£ ) = tn, |
|
i,j |
h |
то на /i-м шаге |
рассматривается возможность |
освобож- |
|||||||||
дения Aij |
в момент tn- Если это невозможно, то фикси- |
||||||||||
|
|
А* |
|
|
|
* |
|
|
|
|
|
руется |
Sjj |
= 2. |
Если же |
Aij |
освобождается |
и это вы- |
|||||
зовет |
разблокирование элемента А і - и , для которого в |
||||||||||
|
|
|
|
А* |
|
|
|
А* |
|
|
|
этот момент 5і_і,3 -=2, то фиксируется 5г -_1,з=1, |
после че |
||||||||||
го |
выполняется |
(/і+1)-й |
шаг. На этом |
шаге, |
так как |
||||||
|
|
А* |
|
|
|
|
|
|
|
|
|
теперь Si-i,j=l, |
|
минимальным окажется время оконча- |
|||||||||
ния |
обслуживания требования в Aj_i,j, |
причем |
|
||||||||
|
|
|
i i - i j = m i n ( m i n t£j |
m i n th ) ^ t n |
: |
|
|||||
|
|
|
|
|
i,j |
|
h |
|
|
|
|
|
За |
время |
выполнения |
(/г+1)-го |
шага |
принимается |
|||||
|
|
|
|
|
|
|
|
А* |
|
|
|
при |
этих условиях, разумеется, не |
/ г — а |
по-прежнему |
||||||||
tn. |
Теперь |
на |
(п + 1)-м шаге |
будет |
промоделировано ос |
||||||
вобождение элемента, разблокированного |
на |
предыду |
щем шаге.
Таким образом, на каждом шаге моделируется осво бождение не более чем одного элемента и определяется
возможность разблокирования не более |
чем одного эле |
|||||
мента. Если |
в момент |
t |
произойдет |
последовательное |
||
разблокирование т элементов, то этот |
процесс |
будет |
||||
промоделирован за т шагов. |
|
|
|
|||
Пример |
алгоритма |
с пошаговым |
разблокированием |
|||
для системы |
(рис. 6.3.2) |
представлен |
на рис. 6.8.1. Блок |
|||
У по правилам, описанным выше, определяет |
момент |
|||||
|
|
|
|
|
# |
|
выполнения очередного шага и аппарат А<,3-, который в этот момент либо закончил обслуживание, либо оказал ся разблокированным в результате выполнения предше ствующего шага.
Если среди аппаратов следующей фазы есть свобод ные (оператор Р\), то моделируется обслуживание тре-
бования, поступающего из A ; j , |
в |
одном |
из |
этих |
аппа |
ратов. В противном случае, если |
есть свободное |
место |
|||
в накопителе следующей фазы |
(оператор |
Р 2 |
) , модели |
руется запись этого требования в накопитель. Наконец,
если освобождение Аі,, |
в tn |
оказалось |
невозможным', |
|||
|
|
|
за |
после |
чего осуществ |
|
фиксируется заблокирование A,-,j, |
||||||
ляется возврат к У для перехода |
к следующему |
шагу. |
||||
Если в tn |
аппарат |
A,-j |
освободился |
и в накопителе |
||
t-й фазы хранятся требования (оператор |
Рз), то модели- |
|||||
руется обслуживание одного из них в Аг,, |
и освобожде |
|||||
ние одного места в этом накопителе. В противном |
случае |
|||||
|
* |
|
|
|
|
|
фиксируется, |
что АІ,І |
останется свободным. |
|
|||
Наконец, если среди аппаратов предыдущей |
фазы |
|||||
есть заблокированные |
(оператор |
Р І ) , то |
для одного из |
А
них фиксируется s,-_i( j=l, после чего производится воз врат к У для перехода к следующему шагу. Если вы бранный блоком У аппарат оказался аппаратом послед ней фазы (2), то блоком Мвых фиксируется появление очередного требования выходящего потока. Если в мо мент выполнения данного шага поступает очередное
требование входящего потока |
(3), |
то моделируется ли |
бо его поступление в элементы |
1-й |
фа-зы, либо его поте |
ря, а затем программой Пвхі определяется момент по ступления следующего требования этого потока.
Если моделируется система с циклом, то возмож ность освобождения аппарата t'-й фазы зависит от со стояния элементов не только (і+1)-й, но и других фаз системы. Так, например, в системе (рис. 6.3.3,а) воз можность освобождения Аз,і при Рі = 0 зависит от со стояния Аід. В свою очередь, освобождение аппарата /-и фазы может вызвать разблокирование элементов не только (/—1)-й, но и других фаз системы. Так, напри мер, в системе (рис. б.З.З.а) освобождение Аі,і вызывает разблокирование А3 > ь
Аналогично, при моделировании системы с клапаном (рис. 6.3.4,а) освобождение А3 ,і может вызывать разбло кирование не только Аг.і и А2 ,2, но и А 1 Л .
1 Очевидно, этого не может быть для Aij* разблокированного на (п— 1)-м шаге.
§ 6. 9. Моделирующий алгоритм с внутришаговым
разблокированием
В моделирующем алгоритме с внутришаговым раз блокированием [6.2] все изменения состояния элементов системы, вызванные окончанием обслуживания в любом из аппаратов, моделируются за один шаг.
Алгоритм состоит из моделирующих блоков, каждый из которых соответствует одному из элементов системы. В момент освобождения аппарата Аг- соответствующий блок Моб,- рассматривает возможность передачи в Аг- очередного требования из элементов, предшествующих Аг. От блока Моб,- предусматриваются переходы ко всем блокам, которые соответствуют элементам, предшест вующим А,-, т. е. соединение блоков производится в со ответствии со структурой системы.
Если на данном шаге произойдет переход требования в Aj из аппарата Аг _ь предшествующего АІ, то это озна чает, что Аг—і освободился и может взять новое требова
ние |
на обслуживание. Поэтому в случае освобождения |
Аг-| |
ВЫПОЛНЯеТСЯ ПЄрЄХОД ОТ Мобг- К бЛОКу Мобг-Ь КОТО |
РЫЙ, в свою очередь, рассматривает возможность пере хода в А,-_і нового требования из элементов, предшест вующих Аі—ь И Т. Д.
Таким образом произойдет последовательное выпол нение всех тех и только тех блоков, которые соответст вуют элементам, изменившим свое состояние в рассмат риваемый момент времени в результате окончания об служивания в некотором аппарате. Только после этого
будет выполняться следующий |
шаг. |
|
|
|
|||
. Алгоритм с внутришаговым |
разблокированием |
для |
|||||
системы |
(рис. 6.3.2) представлен |
на рис. 6.9.1. Он состо |
|||||
ит из блоков следующих типов: |
|
|
|
|
|||
У — управляющий блок; |
|
|
|
|
|
||
МВХІ — блок |
обслуживания требований |
г-ro |
входящего |
||||
|
потока; |
|
|
|
|
|
|
Man,-,j — блоки |
освобождения |
аппарата |
А*,,-; |
|
|
||
Mo6ij — блоки |
обслуживания |
требований в |
аппарате |
||||
Мзащ — блок |
записи требований |
в накопитель. |
|
||||
Блок У определяет время выполнения |
очередного |
||||||
шага tn |
как минимальное из всех |
времен окончания |
об |
служивания в аппаратах и времени поступления очеред ного требования входящего потока.
Man3,l і
Пвых.
І ^ р Е і р і ї |
\ШШ\ЕЙЫВ\ |
І |
|
0 - с "
і — U — J
|
flo6ij |
J E T " |
|
|
Под3,1 |
||
і |
тал |
И |
|
I / - У/, I |
|||
I |
I O-Sgj |
I |
1шй |
^ |
7/ |
^ |
4 - J |
/2 |
|||
|
г, |
|
"1 |
|
|
|
|
Рис. 6. 9. 1. Моделирующий алгоритм |
|
|
|
с внутришаговым разблокированием. |
j _ |
d E * 2 |
. j |
|
|||
|
|
|
Если tn есть время поступления очередного требова ния входящего потока, то У передает управление (1) ведущей программе блока Мвхі (Ввхі). Если есть сво-
|
А |
|
бодные аппараты 1-й фазы |
(su=0), |
то Ввхі выбирает |
один из них в соответствии |
с дисциплиной Двхь вклю |
чает (2) программу моделирования обслуживания тре бований В Ai,j (Поби), ПОСЛе ЧЄГО фиксируется S i j A = l , выполняется программа определения времени поступле ния следующего требования входящего потока (Пвхі) и
происходит возврат к |
У |
для перехода |
к следующему |
||||
шагу. |
|
|
|
S i , j A = 0 |
|
|
|
Если нет |
ни |
одного |
и в |
накопителе |
Hi |
||
ИМееТСЯ Х О Т Я |
бы |
ОДНО |
СВОбОДНОе |
МеСТО |
( S j H < A / i * ) , |
то |
(3) фиксируется запись требования в Hi и выполняется Пвхі. В противном случае (4) фиксируется потеря тре бования (Ппот) и выполняется ПвХ). Таким образом, ведущая программа блока в зависимости от состояния системы в рассматриваемый момент времени определя ет, какие действия должен выполнить данный блок, и включает цепочку соответствующих программ1 .
то |
Если tn |
есть время окончания |
обслуживания в |
A\tj, |
У передает управление (5) ведущей программе |
бло |
|||
ка |
Мапі)3-. |
(Bani,j). Выход (6) |
программы Вапи |
соот |
ветствует случаю, когда |
нет |
s A 2 j = 0 и s2 |
H = ./V2*; |
выход |
|||||
(7) —когда |
требование |
из Ai,j |
поступает |
в A2 ,j, выбран |
|||||
ный в соответствии с J\an\,j |
из числа свободных |
аппара |
|||||||
тов 2-й фазы; выход (8)—когда |
нет s A |
2 j = 0 , |
но |
s 2 H < |
|||||
<N2*. |
• |
|
|
|
|
А |
|
|
|
Если |
Ai,j оказался в |
состоянии |
sitj=2, |
то |
происхо |
||||
дит возврат |
к У. Если |
же |
A j j освободился, |
то |
после |
Мапі,з выполняется ведущая программа блока Мобі,3-
(Bo6i,j). Если в Hi имеются |
требования |
( s ^ ^ O ) , |
то |
||||||
моделируется |
(9) |
обслуживание одного |
из |
них |
в |
AJJ, |
|||
после чего выполняется |
следующий шаг. Если |
же |
Hi |
||||||
пуст, то переход к У (10) |
производится |
непосредственно |
|||||||
от Bo6i,j. |
|
|
|
|
|
|
|
|
|
Аналогично блок Man2 ,j моделирует переход требова |
|||||||||
ния из A2 ,j в |
А3 ,1, |
блок |
Mo62 ,j—обслуживание очеред |
||||||
ного требования в |
A2j. Если |
это требование |
взято |
из |
|||||
Ai,j, то после |
Mo62 ,j (11) |
выполняется |
Mo6i,j. |
Если |
же |
1 Обращение к этим программам может происходить, в част ности, как к подпрограммам.