Реферат: Моделирование системы массового обслуживания

Содержание

Введение

1.Общаяхарактеристика СМО

2.Исходныеданные для создания СМО

3.    Построение алгоритма имитационноймодели. Машинная программа модели

3.1 Построениеалгоритма имитационной модели

3.2 Машиннаяпрограмма модели

4. Описаниефункционирования математической модели

5. Анализ результатов испытаний

Заключение

Списокиспользованных источников


Введение

модель имитационная система массовогообслуживания

Система массовогообслуживания – совокупностьпоследовательно связанных между собой входящих потоков требований наобслуживание (машин, самолетов, пользователей и т.д.), накопителей, очередей,каналов обслуживания (станций техобслуживания, аэродромов, ЭВМ и т.д.) ивыходящих потоков требований после обслуживания.

Имитационная СМО – модель, отражающая поведениесистемы и изменения ее состояния во времени при заданных потоках требований,поступающих на входы системы.

Выходными параметрамиявляются величины, характеризующие свойства системы – качество еефункционирования, — например такие, как [3]:

ü  коэффициенты использования каналовобслуживания;

ü  максимальная и средняя длина очередейв системе;

ü  время нахождения требований вочередях и каналах обслуживания.

Модели массовогообслуживания находят широкое применение при исследовании надежности техническихсистем, организации их эксплуатации и использования по назначению, а также прианализе и синтезе автоматизированных систем управления. СМО – это предприятие,выполняющее заказы; станок, обрабатывающий детали, компьютер, решающий задачи;магазин, обслуживающий покупателей, и т.д. Имитационное моделирование даетвозможность исследовать большие системы и сложные ситуации во всей их полноте,а также реально невоспроизводимые ситуации и объединять в процессемоделирования формальные и неформальные методы исследования. Под имитационноймоделью понимают алгоритмическое описание со всей доступной для исследованияполнотой изучаемой системы процесса ее функционирования.


1. Общаяхарактеристика СМО

Основными признакамиреальнойсистемы, позволяющими рассматривать ее как своеобразную СМО, являются:

· наличие объектов,нуждающихся в случайные моменты времени в обслуживании; эти объекты порождают такназываемый входящий поток заявок на обслуживание;

· наличие объектов,которые производят обслуживание и называются обслуживающими приборами(каналами);

· возникновениезадержек в обслуживании (образование очереди).

В качествесвоеобразных СМО могут рассматриваться:

· системы связи иремонта;

· пунктытехнического обслуживания;

· вычислительныецентры и отдельные ЭВМ: автоматизированные производственные цехи, поточныелинии;

· транспортныесистемы;

· системыматериального обеспечения.

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

СМО бывают:

· с отказами – есливсе каналы заняты – заявка покидает систему;

· с ожиданием –заявка, поступившая в систему, становится в очередь;

СМО с конечнойочередью характеризуется тем, что при поступлении очередной заявки возможно:

· заявка немедленнопринимается на обслуживание, если в системе находится k-заявок и k <n, где n – число каналов;

· заявка становитсяв очередь, если n ≤ k < n + m;

· заявка получаетотказ и покидает систему, если k = n + m.

Следовательно, в любоймомент времени система может находиться в одном из состояний.


2. Исходныеданные для создания СМО

В рассматриваемом примереСМО представим как парикмахерскую. Из Таблицы исходных данных видно, что вданной системе работают три парикмахера, интенсивность поступления клиентов 7чел/час, время работы парикмахерской 7 часов. Максимальная длина очереди 4человека. Закон распределения времени обслуживания – экспоненциальный, этоозначает, что интервалы между заявками могут быть как очень короткими, так иочень длинными. [4]

Таблица исходных данных

Траб

λ n m

/>

ЗР ε 7 7 3 4 0,5 exp 0,1

Траб – время работы СМО, час;

λ – интенсивность поступления заявок,ед./час;

n – число обслуживающих каналов, ед.;

m – максимальная длина очереди, ед.;

/> - среднее время обслуживания,час;

ЗР – закон распределения времениобслуживания, exp – экспоненциальный;

ε – погрешность вычислений.

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


3. Построениеалгоритма имитационной модели. Машинная программа модели

Построение алгоритмарешения и нахождения решения с его помощью относится к компетенцииспециалистов-математиков и программистов.

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

3.1 Построение алгоритма имитационной модели

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

Для создания машиннойпрограммы СМО необходимо построить алгоритм ее выполнения Рис. 3.1.1.


/>

Рис.3.1.1 [1]


Оператор 1 – осуществляетввод исходной информации: число каналов, параметры законов распределения потоказаявок, время работы системы, заданное число испытаний;

оператор 2 –устанавливает начальное состояние системы Т1=0, t1= t2= t3=0 и k=0;

оператор 3 – определяетпринадлежит ли k-я заявказаданному интервалу времени Т;

оператор 4 – сравниваетмежду собой моменты освобождения каналов системы и выбирает канал,освободившийся раньше всех;

оператор 5 – сравниваетмомент освобождения выбранного канала /> с моментов поступления k-й заявки;

оператор 6 – счетчикчисла отказов, после каждого отказа показание счетчика увеличивается наединицу;

оператор 7 – формируетсяпоток заявок, определяет интервал времени между двумя последовательнымизаявками;

оператор 8 – формируетмомент времени поступления следующей заявки;

оператор 9 – формируетномер очередной заявки;

оператор 10 – определяетвремя обслуживания k-й заявки;

оператор 11 – вычисляетвремя освобождения /> канала с номером m;

оператор 12 – счетчикчисла обслуженных заявок, после каждой обслуженной заявки показание счетчикаувеличивается на единицу;

оператор 13 – счетчикчисла испытаний;

оператор 14 – проверяет,получено ли уже заданное число испытаний, если /> выполняется, управление передается оператору 15;

оператор 15 – подготовкаследующего испытания;

оператор 16 –осуществляет статистическую обработку полученных результатов и вычисляеттребуемые показатели эффективности функционирования системы за время Т.


3.2 Машинная программа модели

Программа имитационноймодели построена на языке Perl.

open(OUT,">output.txt");

print OUT «СИСТЕМНОЕМОДЕЛИРОВАНИЕ\n\n»;

if (not !$ARGV[0])

{

print OUT «Имяфайладанных:$ARGV[0]\n\n»;

if (-e $ARGV[0])

{

open(DATA,"<$ARGV[0]");

while (<DATA>)

{

$_=~s/\n//gi;

$_=~s/\t//gi;

($_,$comments)=split("#",$_);

($q1,$q2)=split("=", $_);

if ($q1 eq 'T') {print OUT «времяработыСМО,час[T]: $q2\n»; $T=$q2;}

if($q1 eq 'L') {print OUT «интенсивность поступления заявок, ед./час [L]:$q2\n»; $L=$q2;}

if($q1 eq 'N') {print OUT «число обслуживающих каналов, ед. [N]:$q2\n»; $N=$q2;}

if($q1 eq 'M') {print OUT «максимальная длина очереди, ед. [M]: $q2\n»;$M=$q2;}

if($q1 eq 'ZR') {print OUT «закон распределения времениобслуживания(exp/evenly) [ZR]: $q2\n»; $ZR=$q2;}

if($q1 eq 'E') {print OUT «погрешность вычислений [E]: $q2\n»; $E=$q2;}

if($q1 eq 'TO'){

printOUT «среднее время обслуживания [TO]: »;

if ($ZR eq 'evenly')

{

$q4 = 0;

while (length($q2) > 0)

{

($TO[$q4], $q2)=split(";", $q2);

$q4= $q4 + 1;

}

$q6=1/$q4*100;

for($q5=0;$q5<$q4;$q5++) # $q4 кол-во вариантов времени обслуживания

{

if ($q5>0) {print OUT "; ";}

print OUT "$TO[$q5] ($q6%)";

}

}

if ($ZR eq 'exp')

{

$TO = $q2;

print OUT " $TO";

}

print OUT "\n";

}

}

close(DATA);

printOUT "\nНеобходимое кол-во экспериментов F=(T*T)/(E*E*L*L) при погрешностивычислений E=$E: ";

$F=int(($T*$T)/($L*$L*$E*$E))+ 1; # округляем до целого и прибавляем единицу

print OUT "$F \n\n\n";

print OUT «z — номерзаявки\n»;

printOUT «vp — время прихода заявки\n»;

printOUT «vno — время начала обслуживания заявки\n»;

printOUT «vko — время конца обслуживания заявки\n»;

printOUT «kanal — номер обслуживающего канала\n»;

printOUT «vob — время обслуживания заявки\n»;

printOUT «nvo — номер в очереди, 0 — очереди нет\n»;

printOUT «voo — время ожидания обслуживания (сколько стоит вочереди)\n\n\n\n»;

$srkanal= 0;

$skz= 0; # среднее кол-во заявок

$sotkaz= 0; # среднее кол-во отказов в обслуживании

$svpr= 0; # среднее время простоя

$ssvo= 0; # среднее время ожидания

$smaxvoo= 0; # среднее максимальное время ожидания

$sr_och= 0; # общее время ожидания, если умножить на 1, то получится площадь очереди.

$svrobsl= 0; # общее время обслуживания за все прогоны

for($q7=1; $q7<=$F; $q7++) # выполняем необходимое кол-во прогонов модели

{

print OUT "\n\n эксперимент$q7 \n\n";

$o0=0;# обнуление счетчика отказов

$t0=0;# обнуление времени

$n0=0;# обнуление счетсика заявок

for($q8 = 1; $q8 <= $N; $q8++) {$N[$q8] = 0;} # обнуления состояния каналов

for($q8 = 1; $q8 <= $M; $q8++) {$och[$q8] = 0;} # обнуление очереди

while ($t0 < $T)

{

$r=int(rand(100001))/100000;

$tt = int(-(1/$L)*log($r)*1000000)/1000000;

$t0 = $t0 + $tt;

if ($t0 <= $T)

{

$n0 = $n0 + 1;

#начало проверки состояния очереди

$m0=0;# обнуление счетчика очереди

for ($o=1; $o<=$M; $o++)

{

if ($och[$o] < $t0)

{

$och[$o] = 0;

}

else

{

$m0 = $m0 + 1;

}

}

#конец проверки состояния очереди

$vp[$n0]= $t0; # время прихода заявки

#определение времени обслуживания

if($ZR eq 'evenly') # для РАВНОМЕРНОГО РАСПРЕДЕЛЕНИЯ ВРЕМЕНИ ОБСЛУЖИВАНИЯ

{

$r=int(rand(100001))/100000;

for ($q5=0;$q5<$q4;$q5++)

{

$dn = $q5*1/$q4;

$dk = ($q5+1)*1/$q4;

if (($r > $dn) and ($r <= $dk))

{

$vob[$n0]= $TO[$q5];

}

}

}

if($ZR eq 'exp') # для ЭКСПОНЕНЦИАЛЬНОГО РАСПРЕДЕЛЕНИЯ ВРЕМЕНИ ОБСЛУЖИВАНИЯ

{

$r=int(rand(100001))/100000;

$vob[$n0] = int(-$TO*log(1-$r)*1000)/1000;

$ww=log(1-$r);

$www=-1/$TO;

}

#конец определения времени обслуживания

#выбор канала обслуживания

$kanal[$n0] = 0;

for ($q8 = 1; $q8 <= $N; $q8++)

{

if (($N[$q8] <= $vp[$n0]) and ($kanal[$n0] == 0))

{

$vno[$n0] = $vp[$n0];

$N[$q8]=$vno[$n0]+$vob[$n0];

$kanal[$n0]= $q8;

}

}

if($kanal[$n0] == 0) # формирование очереди

{

$m1= $m0 + 1;

if($m1 <= $M) # проверка длины очереди

{

$nvo[$n0]= "$m0->$m1"; # очередь для этой заявки

#> выбор канала для заявки поставленной в очередь

$kanal[$n0]= 1; # выбор первого канала для сравнения с остальными

for ($q8 = 1; $q8 <= $N; $q8++)

{

if ($N[$q8] < $N[$kanal[$n0]])

{

$kanal[$n0] = $q8;

}

}

$vno[$n0] = $N[$kanal[$n0]];

$och[$m1]= $vno[$n0]; # время очереди

$voo[$n0] = int(($N[$kanal[$n0]] — $vp[$n0])*1000000)/1000000;

$vko[$n0] = $vno[$n0] + $vob[$n0];

$N[$kanal[$n0]]= $vko[$n0]; # сдвиг времени по данному каналу

}

else

{

$vno[$n0]= -1; # отказ в обслуживании

$vob[$n0] = 0;

$nvo[$n0] = "$m0->$m0";

$kanal[$n0] = '-';

}

}

else

{

$voo[$n0]= 0; # для данной заявки время ожидания = 0

$nvo[$n0]= 0; # для данной заявки очереди нет

$vko[$n0] = $vno[$n0] + $vob[$n0];

}

#конец выбора канала обслуживания

}

}

#ВЫВОД РЕЗУЛЬТАТОВ

$ppp = 0;

$svoo = 0;

$svob = 0;

$rabot = 0;

$otkaz = 0;

$maxvoo = $voo[1];

$minvoo = $voo[1];

$sr_voo = 0;

$skanal[$q7] = 0;

print OUT «z | vp | vno | vko | kanal | nvo |vob | voo\n»;

for ($z = 1; $z<=$n0; $z++)

{

if ($vp[$z] <= $T)

{

$ppp= $ppp + 1;

$svoo= $svoo + $voo[$z]; # считает время ожидания

$svob= $svob + $vob[$z]; # считает время обслуживания, чтобы вычитать время простоя

if ($maxvoo < $voo[$z]) {$maxvoo = $voo[$z];}

if ($minvoo > $voo[$z]) {$minvoo = $voo[$z];}

if ($vno[$z] == -1) {$otkaz = $otkaz + 1;}

if (not $kanal[$z] eq '-') {$skanal[$q7] =$skanal[$q7] + $kanal[$z];}

$aa="$z"; $aaa=length($aa); for ($aaaa=1;$aaaa < 4-$aaa; $aaaa++) {$aa="$aa ";} $z=$aa;

$aa="$vp[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 9-$aaa; $aaaa++) {$aa="$aa ";} $vp=$aa;

$aa="$vno[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 11-$aaa; $aaaa++) {$aa="$aa ";} $vno=$aa;

$aa="$vko[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 11-$aaa; $aaaa++) {$aa="$aa ";} $vko=$aa;

$aa="$kanal[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 7-$aaa; $aaaa++) {$aa="$aa ";} $kanal=$aa;

$aa="$nvo[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 6-$aaa; $aaaa++) {$aa="$aa ";} $nvo=$aa;

$aa="$vob[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 7-$aaa; $aaaa++) {$aa="$aa ";} $vob=$aa;

$aa="$voo[$z]"; $aaa=length($aa); for($aaaa=1; $aaaa < 9-$aaa; $aaaa++) {$aa="$aa "; $sr_voo = $sr_voo+ $voo[$z];} $voo=$aa;

print OUT "$z| $vp| $vno| $vko| $kanal| $nvo|$vob| $voo\n";

$vp[$z] = '-';

$vno[$z] = '-';

$vko[$z] = '-';

$kanal[$z] = '-';

$nvo[$z] = '-';

$vob[$z] = '-';

$voo[$z] = '-';

}

}

$srkanal = $srkanal + $skanal[$q7] / $ppp;

printOUT "\n\nОкончание обслуживания каждым каналом:\n";

$max_T= $N[1]; # время работы СМО

for ($q8 = 1; $q8 <= $N; $q8++)

{

print OUT «канал$q8: $N[$q8]\n»;

if ($N[$q8] < $T) {$rabot = $rabot + $T;} else{$rabot = $rabot + $N[$q8];}

if ($max_T < $N[$q8]) {$max_T = $N[$q8];}

}

$vrp = $rabot — $svob;

$svrobsl = $svrobsl + $svob;

$sr_och = $sr_och + $sr_dl_och;

$skz = $skz + $ppp;

$sotkaz = $sotkaz + $otkaz;

$svpr = $svpr + $vrp;

$smaxvoo = $smaxvoo + $maxvoo;

$vrp = int($vrp * 100) / 100;

$rabot = int($rabot * 100) / 100;

printOUT "\n\n\nСуммарное время простоя на $N каналах обслуживания за общеевремя $rabot часов, час: $vrp\n";

$svo= int(($svoo / $ppp)*1000000)/1000000;

printOUT «Минимальное время ожидания: $minvoo\n»;

printOUT «Максимальное время ожидания: $maxvoo\n»;

printOUT «Среднее время ожидания: $svo\n»;

$potkaz= int($otkaz/$ppp*10000)/100;

printOUT «Количество отказов: $otkaz, $potkaz%\n»;

$sr_dl_och = int($sr_voo / $max_T * 100) / 100;

printOUT «Средняя длина очереди: $sr_dl_och\n\n»;

$ssvo = $ssvo + $svo;

$ppp = 0;

$otkaz = 0;

$rabot = 0;

$svob = 0;

$svo = 0;

$manvoo = 0;

$maxvoo = 0;

}

$skz = int($skz / $F*1)/1;

$sotkaz = int($sotkaz / $F*100)/100;

$svpr = int($svpr / $F*100)/100;

$ssvo = int($ssvo / $F*100)/100;

$smaxvoo = int($smaxvoo / $F*100)/100;

$sr_och = int($sr_och / $F * 100) / 100;

print OUT "\n\nОТЧЕТ:\n\n";

printOUT «Среднее кол-во заявок за рабочий период: $skz\n»;

$spotkaz= int($sotkaz/$skz*10000)/100;

printOUT «Среднее кол-во отказов: $sotkaz, $spotkaz%\n»;

$vodsl= 100 — $spotkaz;

printOUT «Вероятность обслуживания: $vodsl%\n»;

$ops= 1 — $spotkaz / 100;

printOUT «Относительная пропускная способность: $ops\n»;

$aps= int($ops * $L*100) / 100;

printOUT «Абсолютная пропускная способность [ед./час]: $aps\n»;

printOUT «Среднее время простоя на $N каналах обслуживания за период $T часов,час: $svpr\n»;

$vprost = int($svpr / $T / $N * 10000) / 100;

printOUT «Вероятность простоя СМО: $vprost%\n»;

$kz= 100 — $vprost;

printOUT «Коэффициент загузки СМО: $kz%\n»;

$srkanal= int($srkanal / $F * 100) / 100;

printOUT «Среднее число занятых каналов: $srkanal из $N\n»;

printOUT «Среднее время ожидания: $ssvo\n»;

$svprzay = int(($ssvo + $svrobsl / $F / $skz) * 100)/ 100;

printOUT «Среднее время пребывания заявки в СМО (ожидание + обслуживание):$svprzay\n»;

printOUT «Среднее максимальное время ожидания: $smaxvoo\n»;

printOUT «Средняя длина очереди: $sr_och\n\n»;

}

else

{

print«файл данных не найден\n»;

}

}

else

{

print«файл данных не задан\n»;

}

close(OUT);


4. Описаниефункционирования математической модели

Приведем формулы,необходимые для вычислений:

1.  /> 

расчет временипоступления заявок в СМО, где λ – интенсивность потока заявок,

R — случайная величина, равномернораспределенная в интервале (0,1),

Тk-1 – время поступления предыдущейзаявки;

2.  /> - вычисляет время обслуживания канала m;

3.  /> - определяет интервал временимежду двумя последовательными заявками (между k-й и k+1);

4.  /> - формирует момент поступленияследующей заявки;

5.  /> - расчет среднего времениожидания;

Под характеристиками СМОс ограничением на количество заявок в очереди будем понимать величины, покоторым можно оценивать эффективность работы СМО и выбирать лучший изнескольких вариантов СМО.

Величины эффективности:

Ротк – вероятность отказа, показывает,какая доля всех поступающих заявок не обслуживается системой из-за занятости ееканалов или большого количества заявок в очереди (для СМО без ограничений наочередь Ротк = 0);

 

Ротк=kотк/k,                   4.1

где kоткколичество заявок, получивших отказ, kобщее количество заявок, поступивших в СМО

Робсл – вероятность обслуживания (относительнаяпропускная прособность), показывает, какая доля всех поступающих заявокобслуживается системой,

 

Робсл=1-Ротк              4.2

(для СМО без отказов Робсл= 1);

 

Uкоэффициентзагрузки СМО, показывает, какую часть от общего времени своей работы СМОвыполняет обслуживание заявок; желательно, чтобы коэффициент загрузки СМО имел значение на уровне0,75–0,85. Значения U < 0,75 указывают, что СМО простаиваетзначительную часть времени, т.е. используется нерационально. Значения U >0,85 указывают на перегрузку СМО.

 

U = ρ(1 – Pотк),  4.3

гдеρ — нагрузка на СМО:

/> где />      4.4

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

q – среднее число заявок в очереди(средняя длина очереди);

S – среднее число заявок наобслуживании (в каналах), или среднее число занятых каналов;

S = mU       4.5

k – среднее число заявок в СМО, т.е.на обслуживании и в очереди;

 

k = q + S    4.6

w – среднее время пребывания заявки вочереди (среднее время ожидания обслуживания); формула Литтла:

/>      4.7

t – среднее время пребывания заявки вСМО, т.е. в очереди и на обслуживании;

/> или />  4.8 — 4.9

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

γ = μS или γ = λ(1 – Pотк).   4.10

/> - абсолютная пропускная способность.

ВеличиныU и S характеризуют степень загрузки СМО. Эти величиныпредставляют интерес с точки зрения стороны, осуществляющей эксплуатацию СМО.

Например,если в качестве СМО рассматривается предприятие, выполняющее некоторые заказы,то эти величины представляют интерес для владельцев предприятия.

ВеличиныPотк, Pобсл, w и t характеризуюткачество обслуживания заявок.

Онипредставляют интерес с точки зрения пользователей СМО. Желательна минимизациязначений Pотк, w, t и максимизация Pобсл.

Величиныq и k обычно используются в качестве вспомогательных для расчетадругих характеристик СМО.

Формулы(4.1)–(4.10) могут применяться для расчета характеристик любых разомкнутыхСМО, независимо от количества каналов, потока заявок, закона распределениявремени обслуживания и т.д. [4]

Обозначения:

время работы СМО, час[T]: 7

интенсивность поступлениязаявок, ед./час [L]: 7

число обслуживающихканалов, ед. [N]: 3

максимальная длинаочереди, ед. [M]: 4

закон распределениявремени обслуживания (exp/evenly) [ZR]: exp

среднее времяобслуживания [TO]: 0,5

погрешность вычислений[E]: 0,1

количество прогоновмодели

/>[5].

В связи с большим объемомданных по реализации 100 прогонов, приведу результаты одного в Таблице 4.1

Таблица 4.1

№ время прихода заявки

время

начала обслуживания

время

конца обслуживания

канал номер в очереди время обслуживания заявки время ожидания (в очереди) 0.13423 0.13423 1.07323 1 0.939 0.172969 0.172969 0.177969 2 0.005 0.372996 0.372996 0.498996 2 0.126 0.395133 0.395133 1.477133 3 1.082 0.454734 0.498996 0.708996 2 0->1 0.21 0.044261 1.0321 1.0321 1.0741 2 0.042 1.192161 1.192161 1.804161 1 0.612 1.304736 1.304736 1.508736 2 0.204 1.423904 1.477133 1.500133 3 0->1 0.023 0.053228 1.498956 1.500133 1.501133 3 0->1 0.001 0.001176 1.583731 1.583731 1.738731 2 0.155 1.72184 1.72184 2.37884 3 0.657 1.768943 1.768943 2.605943 2 0.837 1.929808 1.929808 1.941808 1 0.012 1.949207 1.949207 4.358207 1 2.409 2.020496 2.37884 2.70784 3 0->1 0.329 0.358344 2.199114 2.605943 2.791943 2 1->2 0.186 0.406828 2.401371 2.70784 4.36184 3 1->2 1.654 0.306469 2.666255 2.791943 2.986943 2 1->2 0.195 0.125687 2.728184 2.986943 3.338943 2 1->2 0.352 0.258758 3.364248 3.364248 3.379248 2 0.015 3.450507 3.450507 3.584507 2 0.134 3.798883 3.798883 4.041883 2 0.243 3.870281 4.041883 4.080883 2 0->1 0.039 0.171602 4.028639 4.080883 5.240883 2 1->2 1.16 0.052243 4.074847 4.358207 4.730207 1 1->2 0.372 0.28336 4.316383 4.36184 5.63084 3 1->2 1.269 0.045457 4.465872 4.730207 4.902207 1 0->1 0.172 0.264335 4.494469 4.902207 5.309207 1 1->2 0.407 0.407737 4.528788 5.240883 5.272883 2 2->3 0.032 0.712094 4.536596 5.272883 6.252883 2 3->4 0.98 0.736286 4.565434 -1 - - 4->4 - 4.580016 -1 - - 4->4 - 4.644491 -1 - - 4->4 - 4.944335 5.309207 5.662207 1 2->3 0.353 0.364871 5.064146 5.63084 5.90084 3 2->3 0.27 0.566694 5.117229 5.662207 5.743207 1 2->3 0.081 0.544977 5.201751 5.743207 6.242207 1 2->3 0.499 0.541455 5.525887 5.90084 6.12684 3 1->2 0.226 0.374952 5.5837 6.12684 6.68084 3 2->3 0.554 0.543139 5.595149 6.242207 7.331207 1 2->3 1.089 0.647057 5.626051 6.252883 6.354883 2 2->3 0.102 0.626831 5.741963 6.354883 6.773883 2 2->3 0.419 0.612919 5.790596 6.68084 7.11084 3 2->3 0.43 0.890244 6.176534 6.773883 7.871883 2 1->2 1.098 0.597348 6.310764 7.11084 8.88584 3 2->3 1.775 0.800075 6.407596 7.331207 8.878207 1 2->3 1.547 0.92361 6.592344 7.871883 8.082883 2 2->3 0.211 1.279538 6.687681 8.082883 9.866883 2 2->3 1.784 1.395202 6.702902 8.878207 8.940207 1 2->3 0.062 2.175304 6.910557 8.88584 9.59184 3 1->2 0.706 1.975282

Окончание обслуживаниякаждым каналом:

канал 1: 8.940207

канал 2: 9.866883

канал 3: 9.59184

Суммарное время простояна 3 каналах: 2.33993000000001 час за общее время обслуживания 28.39893 часов,

минимальное времяожидания: 0

максимальное времяожидания: 2.175304

среднее время ожидания:0.374262

количество отказов: 3,588%


5. Анализ результатов испытаний

Средние значения по100 прогонам:

Среднее количество заявокза рабочий период: 49

Среднее количествоотказов: 0.8, 1.63%

Вероятность обслуживания:98.37%

Относительная пропускнаяспособность: 0.9837

Абсолютная пропускнаяспособность [ед./час]: 6.88

Среднее время простоя на3 каналах 2.55ч за период обслуживания 7 часов

Вероятность простоя СМО:12.14%

Коэффициент загрузки СМО:87.86%

Среднее число занятыхканалов: 1.94 из 3

Среднее время ожидания:0.88

Среднее время пребываниязаявки в СМО (ожидание + обслуживание): 1.38

Среднее максимальноевремя ожидания: 2.13

Средняя длина очереди:0.49

По коэффициенту загрузкиможно судить о качестве загрузки СМО. Используя формулы 4.1 — 4.4 и таблицу 4.1,получим значение 87.86%

Коэффициент загрузкиравен 0,8786 и находится в промежутке больше 0,85. Это значит, что СМО перегружена.

Если рассматривать даннуюСМО с целью получения прибыли, то по формулам 4.2, 4.10 и с помощью таблицы 4.1получим значение пропускной способности 6,88. Для получения прибыли важна ее максимизация.


Заключение

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

В области примененияимитационного моделирования лежат задачи моделирования биологических систем,военные, экономические, социальные. Что позволяет решать проблемы различногохарактера и большого объема.

В данной курсовой мырассмотрели примитивную задачу о поступлении заявок (клиентов) в канал(парикмахерскую), убедились в эффективности модели.


Список использованныхисточников

/>1 Голик Е.С.Системное моделирование. Ч.1. Имитационное моделирование. Факторныйэксперимент: учебно-методический комплекс (учебное пособие)/Е.С. Голик, О.В.Афанасьева. – СПб: СЗТУ, 2007. – 211 с.

/>/>2 Голик Е.С. Математические методы системногоанализа и теории приятия решений. Ч. II: Учебное пособие. – СПб: СЗТУ, 2005, — 102 с.

3 Кудрявцев Е.М. GPSS World. Основы имитационного моделирования различных систем.– М.: ДМК Пресс, 2004. – 320 с.: ил. (Серия «Проектирование»).

4 Оптимизациярешений на основе методов и моделей мат. программирования: Учеб. пособие покурсу «Систем. анализ и исслед. операций» для студ. спец. «Автоматизир. системыобраб. информ.» дневн. и дистанц. форм обуч. / С.С. Смородинский, Н.В. Батин. –Мн.: БГУИР, 2003. – 136 с.: ил.

5 Конспект лекций

еще рефераты
Еще работы по информатике, программированию