Советов Б.Я., Яковлев С.А. Моделирование систем (3-е изд., 2001) (1186218), страница 63
Текст из файла (страница 63)
Для нахождения у/ необходимо определить у! и у" и вычиститьсумму у', + у,".Тогдау;—(Щ)1пх;,уг—(1/я)1пх;,у,(1/А)(шх;+]г. хП(1Д)1п(х/дсГ).Если реализация моделируемого случайного процесса оказывается достаточното можно положить fi(yi)—fi(yi), i>\, т. е. считать, что все интервалыодинаково распределены. Влияние такого допущения на результаты моделированиясистемы 5 будет незначительным.Проведем анализ принципов формирования потока событий, описываемогонестационарным распределением Пуассона с мгновенной плотностью потока X (г).ДЛИННОЙ,1,41- f ЩлС учетом выражения Д( 0 , i)=X(t0+t)e °плотность распределения длиныпервого интервала/ 1 (у 1 )=«'('о.Л)е- а( '°'Чгде а= \ X(t)dt—математическое ожидание числа событий на интервале (t0,'о + Д')На основании соотношения \ fx (yi)dy = x1 запишем уравнениеоa('o-J'i)=-hiJc1.(8.3)267Из (8.3) аналитически или любым приближенным способом определяется yvДальнейшая методика моделирования случайной величины yi при i>\ аналогичнаформированию yi с использованием условной функции распределенияЖуЛ-.)=1-е- в( "-''Чгде fj_i — момент наступления (i—1)-го события.Уравнение для нахождения очередного значения интервала имеет вид a(fj-i,yi)=-tex,.Чтобы описать неординарные потоки событий, для которых hmPm(t0,1 0 +Д1)#0, кроме задания законов распределения моментов появления t\ необходимоопределять распределение количества событий в рассматриваемый момент времени.Если количество событий, поступающих в систему S в момент времени it, не зависитот </, то достаточно задать вероятность того, что в произвольный момент временинаступает ровно т событий, т.
е. величину Pm(ta, Q.Вопросы построения и машинной реализации программных генераторов, имитирующих потоки событий, были рассмотрены в гл.4, поэтому более подробно остановимся на особенностях построения моделирующих алгоритмов процесса функционирования такихэлементов Q-схем, как накопители (Н) и каналы (К).Способы построения моделирующих алгоритмов Q-схем. Моделирующий алгоритм должен адекватно отражать процесс функционирования системы 5 и в то же время не создавать трудностей примашинной реализации модели Мм. При этом моделирующий алгоритм должен отвечать следующим основным требованиям: обладать универсальностью относительно структуры, алгоритмов функционирования и параметров системы S; обеспечивать одновременную (в один и тот же момент системного времени) и независимую работу необходимого числа элементов системы S; укладываться в приемлемые затраты ресурсов ЭВМ (машинного времени и памяти) для реализации машинного эксперимента; проводить разбиение на достаточно автономные логические части, т.
е. возможность построения блочной структуры алгоритма; гарантироватьвыполнение рекуррентного правила — событие, происходящеев момент времени tk, может моделироваться только после того, какпромоделированы все события, произошедшие в момент времениПри этом необходимо иметь в виду, что появление одной заявкивходящего потока в некоторый момент времени t, может вызватьизменение состояния не более чем одного из элементов Q-схемы,а окончание обслуживания заявки в момент /, в некотором канале(К) может привести в этот момент времени к последовательномуизменению состояний нескольких элементов (Н и К), т.
е. будетиметь место процесс распространения смены состояний в направлении, противоположном движению заявок в системе S.Известно, что существует два основных принципа построениямоделирующих алгоритмов: «принцип At» и «принцип 8z». Припостроении моделирующего алгоритма Q-схемы по «принципу Aft>,т. е. алгоритма с детерминированным шагом, необходимо для268построения адекватной моделиМоделирующие алгоритмыМм определить минимальныйинтервал времени между сосед4ними событиями Д/'=тш{ы(} Детерминиро8анныя Стохастические(во входящих потоках и потоках\обслуживании) и принять, чтоСинхронныешаг моделирования равен At'. АсинхронныеВ моделирующих алгоритмах,*построенных по «принципу Sz», ЦиклическиеСпороди чес киет.
е. в алгоритмах со случайнымшагом, элементы Q-схемы про Рис. 8.5. Классификация способов поалгоритмов Qсматриваются при моделирова строения моделирующихсхемнии только в моменты особыхсостояний (в моменты появления заявок из И или изменения состояний К).
При этом длительность шага A/=var зависит как отособенностей самой системы S, так и от воздействий внешней средыЕ. Моделирующие алгоритмы со случайным шагом могут бытьреализованы синхронным и асинхронным способами. При синхронном способе один из элементов Q-схемы (И, Н или К) выбираетсяв качестве ведущего и по нему «синхронизируется» весь процессмоделирования. При асинхронном способе построения моделирующего алгоритма ведущий (синхронизирующий) элемент не используется, а очередному шагу моделирования (просмотру элементовQ-схемы) может соответствовать любое особое состояние всегомножества элементов И, Н и К. При этом просмотр элементовQ-схемы организован так, что при каждом особом состоянии либоциклически просматриваются все элементы, либо спорадически —только те, которые могут в этом случае изменить свое состояние(просмотр с прогнозированием) [4, 36, 37].Классификация возможных способов построения моделирующих алгоритмов Q-схем приведена на рис.
8.5.Более подробно особенности построения и реализации перечисленных разновидностей моделирующих алгоритмов будут рассмотрены при моделировании конкретных вариантов систем.Особенности моделирования на базе Q-схем. Математическоеобеспечение и ресурсные возможности современных ЭВМ позволяют достаточно эффективно провести моделирование различных систем, формализуемых в виде Q-схем, используя либо пакеты прикладных программ, созданные на базе алгоритмических языковобщего назначения, либо специализированные языки имитационного моделирования. Но прежде чем применять эти средства автоматизации моделирования, необходимо глубже вникнуть в сутьпроцесса построения и реализации моделирующих алгоритмов [4, 7,17, 23, 32, 46].Пример 8.5.
Для более детального ознакомления с технологией машинной имитации остановимся на рассмотрении Q-схемы достаточно обшего вида, показаннойна рис 8.6. В частности, разберем на данном примере, какое влияние оказывает на269особенности построения схемымоделирующегоалгоритмапринцип, положенный в основуего машинной реализации.На рисунке представленаГ"GHED-r©4i| ii 'ЧЁЬ i 'f^Hj- трехфазная•©-&-ФQ-схема (L =3)с блокировкой каналов по вы3-яходу в 1-й и 2-й фазах обслужи| /-я фаза| £• я фазафазавания (пунктирные линии нарисунке).
В качестве выходяРис. 8.6. Пример Q-схемы общего видащих потоков такой Q-схемымогут быть рассмотрены поток потерянных заявок о Н, и поток обслуженныхзаявок из ЛГз, i (N1 и N3 на рис. 8.6).Для имитационной модели рассматриваемой Q-схемы можно записать следующие переменные и уравнения: эндогенная переменная Р — вероятность потеризаявок;экзогенныепеременные:tm — времяпоявленияочереднойзаявки из И; f*, j — время окончания обслуживания каналом К*, j очереднойзаявки, fc=l, 2, Ъ\)=\, 2; вспомогательные переменные: zt nzk.j— состоянияHj и К*,/ 1=1, 2; fc=l, 2, 3; j=\,1\ параметры: Li — емкость i-roН(; L$ — число каналов в к-й фазе; Lf=2, L$=2, L%=\; переменныесостояния: Ns — число потерянных заявок в H l f N3 — число обслуженных заявок,т.
е. вышедших из 3-й фазы; уравнение модели:P=NJ(Ni+Ni)=NJN.N,4^J|При имитации процесса функционирования Q-схемы на ЭВМтребуется организовать массив состояний. В этом массиве должныбыть выделены: подмассив К для запоминания текущих значенийZt, j соответствующих каналов К*, j и времени окончания обслуживания очередной заявки tk.j,j=l, Lk*, подмассив Н для записи текущего значения z,- соответствующих накопителей Н„ f= 1, 2; подмассивИ, в который записывается время поступления очередной заявкиt„ из источника (И).Процедура моделирования процесса обслуживания каждым элементарным каналом К*._, сводится к следующему.
Путем обращенияк генератору случайных чисел с законом распределения, соответствующим обслуживанию данных К*, j, получается длительность времени обслуживания и вычисляется время окончания обслуживанияtk.j, а затем фиксируется состояние zK)=\\ при освобожденииZk.j=0; в случае блокировки К*, у записывается Zk.j=2. При поступлении заявки в Н, к его содержимому добавляется единица, т. е.z,=z,+ l, а при уходе заявки из Н, на обслуживание вычитаетсяединица, т. е.
z(=z«—1, / = 1 , 2.Детерминированный моделирующий алгоритм. Укрупненная схема детерминированного моделирующего алгоритма Q-схемы, т. е.алгоритма, построенного по «принципу At», представлена на рис.8.7. Специфика наличия постоянного шага At позволяет оформить«часы» системного времени в виде автономного блока 10. Этот блокслужит для отсчетов системного времени, т.
е. для вычисления?„ = ?„_! +А/. Для определения момента остановки при моделировании Q-схемы (по числу реализаций N или по длине интервалавремени моделирования Т) проводится проверка соответствующих270условий (блок 3). Работавспомогательныхблоков — ввода исходных данных 1, установкиначальных условий 2, обработки 11 и вывода результатов моделирования12 — не отличается посвоей сути от аналогичных блоков, используемых в алгоритмах вычислений на ЭВМ. Поэтомуостановимся более детально на рассмотренииработы той части моделирующегоалгоритма,которая отражает специфику детерминированного подхода (блоки 4 — 9).Детализированные схемы алгоритмов этихблоков приведены нарис. 8.8, а — е.
На этихи последующих схемахмоделирующих алгоритмов Q-схем приняты следующиеобозначения:ZN(I)=z,; Z(K, J)=zk,/,(_Пуск " " )Z" вводисходных Iданных IIT-ZУстановканачальныхусловийка оканчаS' кс.^ния модели•пасОбслуживаниеПбсзаявки кана-I| ломЗОЯ 3-й фазыОбработкаультатов'елированияI лом[' Переход I12г12т' Гы&одильтато1'моделирова-,нияI1°'заявки из 2-й•ЮПереход к сле Обслуживав 3-ю фазу №а%Htдующему мо - I ние6заявкика-п I'менту времени налом 2-йОстановфазыСJИерехддзаявкииз 1-й фазыв накопитель2-й фазы\05слуОбслуживаниегI зояwзаявкикана| ломлом 1-й фазыTM=tm, TN=tn,T(K,г-п-зJ) = tk,j,LO(T) = L„PO = P,~' тип/заявки наNOl^Ni,N03=N3,Вход Q-схемыNO = N.ТПроцедура обслужива Рис. 8.7.
Укрупненная схемадетерминированнония заявок каналамиго моделирующего алгоритма Q-схемыKk,j оформлена в видеподпрограммы WORK [K(K, J)], позволяющей обратиться к генератору случайных чисел с соответствующим данному каналуКА, j законом распределения, генерирующему длительность интервала обслуживания очередной заявки tk, 3. Процедура генерации заявокисточником (И) оформлена в виде подпрограммы D (ТМ), котораяопределяет момент поступления очередной tm в Q-схему.Окончание обслуживания заявки в некотором канале К* } в момент времени t„ может вызвать процесс распространения измененийсостояний элементов («особых состоянии») системы в направлении,противоположном движению заявок в системе, поэтому всеН и К системы должны просматриваться при моделировании271начиная с обслуживающегоканала последней фазы понаправлению к накопителюа)НетДолг Z(3,l)=r1-й фазы (см. рис.