50441

Определить средние значения очередей пассажиров и машин и средние значения времени пребывания на стоянке пассажиров и машин

Лабораторная работа

Информатика, кибернетика и программирование

Система массового обслуживания представляет собой стоянку такси, на которую поступает поток пассажиров с интенсивностью и поток машин с интенсивностью заявок в час (все потоки простейшие). Пассажиры образуют очередь, которая уменьшается на 1, когда к стоянке подходит машина. В случае, когда на стоянке нет пассажиров, в очередь становятся машины. Число мест для машин на стоянке ограничено (n=10). Очередь пассажиров не ограничена, посадка производится мгновенно.

Русский

2014-02-03

106.5 KB

20 чел.

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра ПОИТ

ОТЧЕТ

по лабораторной работе

по курсу «САиММ»

Выполнили:

Проверил:

Студенты гр. 251005

Русин В.Г.

Барабаш Е.

Бритвич Т.

Калюта А.

Минск 2005

I. Постановка задачи.

Система массового обслуживания представляет собой стоянку такси, на которую поступает   поток пассажиров с интенсивностью =12.0 и поток машин с интенсивностью =15.0 заявок в час (все потоки простейшие). Пассажиры образуют очередь, которая уменьшается на 1, когда к стоянке подходит машина. В случае, когда на стоянке нет пассажиров, в очередь становятся машины. Число мест для машин на стоянке ограничено (n=10). Очередь пассажиров не ограничена, посадка производится мгновенно.

Определить средние значения очередей пассажиров и машин и средние значения времени пребывания на стоянке пассажиров и машин.

II. Диаграмма интенсивности переходов.

                                              

…           …                            …          …

                                              

Состояния СМО пронумерованы соответственно числу пассажиров и машин на стоянке двумя индексами:

- первый – число пассажиров;

- второй – число машин.

S0,0 – состояние, когда на стоянке нет ни пассажиров, ни машин;

S0,i – состояние, когда на стоянке нет пассажиров, i – машин;

...

Sj,0 – состояние, когда на стоянке нет машин и j – пассажиров;


III
. Расчет аналитической модели.

По условию:

   =12.0.

   =15.0.

   Очередь машин ограничена – n=10.

   Очередь пассажиров не ограничена.

   Все потоки простейшие.

Поток пассажиров - одноканальный, с неограниченной очередью.

Приход пассажиров – поступление заявки, а приезд такси – её обработка.

 

Таким образом:

  •  среднее значение очереди пассажиров = 3.2
  •  среднее время пребывания пассажиров на стоянке = 0.35

Для потока машин приезд такси – поступление заявки, а приход пассажира её обработка, поэтому:

Таким образом:

  •  среднее значение очереди машин = 6.16
  •  среднее время пребывания пассажиров на стоянке = 0.477.


IV
. Результаты работы имитационной модели.

1. Для 1000 единиц времени.

2. Для 10000 единиц времени.

V. Вывод.

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


VI.
Листинг программы.

void __fastcall TForm1::Button1Click(TObject *Sender)

{

       switch(Flag)

       {

       case 0:

               {

               Queue *headM=NULL,*backM=NULL,*headL=NULL,*backL=NULL,*New;

               l=StrToFloat(Edit1->Text);

               m=StrToFloat(Edit2->Text);

               Noch=StrToInt(Edit3->Text);

               Tmax=StrToFloat(Edit9->Text);

               double dt=(double)1/(10*m);

               Edit10->Text=dt;

               int OchL=0,OchM=0,LochL=0,LochM=0,Sch=0,SchM=0,SchL=0;

               double To=0;

               randomize();

               double Tn=(double)(-1/l)*log((rand()+1)/(double)(RAND_MAX+1));

               double Ts=0;

               int Sk=0;

               double TimeInL=0,TimeInM=0;

               int AOchM[100],AOchL[100];

               for(int i=0;i<100;i++)

               {

                       AOchM[i]=0;AOchL[i]=0;

               }

               while(Ts<Tmax)

               {

                       Ts += dt;

                       Sch++;

                       if (OchM) LochM += OchM;

                       if (OchL) LochL += OchL;

                       AOchL[OchL]++;

                       AOchM[OchM]++;

                       if (Ts>To)

                       {

                               if(OchL!=0)

                               {

                                       OchL--;

                                       headL->TimeIn=To-headL->TimeIn;

                                       TimeInL += headL->TimeIn;

                                       Queue *temp;

                                       temp=headL;

                                       headL=headL->next;

                                       delete temp;

                                       

                               }

                               else

                               {

                                   if(OchM!=Noch)

                                   {

                                       New=new Queue;

                                       New->TimeIn=To;

                                       New->next=NULL;

                                       if (headM==NULL)

                                               headM=backM=New;

                                       else

                                       {

                                               backM->next=New;

                                               backM=New;

                                       }

                                       OchM++;

                                   }

                               }

                               SchM++;

                               To=Ts + (double)(-1/m)*log((rand()+1)/(double)(RAND_MAX+1));

                       }

                       if (Ts>Tn)

                       {

                               if(OchM!=0)

                               {

                                       OchM--;

                                       headM->TimeIn=Tn-headM->TimeIn;

                                       TimeInM += headM->TimeIn;

                                       Queue *temp;

                                       temp=headM;

                                       headM=headM->next;

                                       delete temp;

                               }

                               else

                               {

                                       OchL++;

                                       New=new Queue;

                                       New->TimeIn=Tn;

                                       New->next=NULL;

                                       if (headL==NULL)

                                               headL=backL=New;

                                       else

                                       {

                                               backL->next=New;

                                               backL=New;

                                       }

                               }

                               SchL++;

                               Tn=Ts + (double)(-1/l)*log((rand()+1)/(double)(RAND_MAX+1));

                       }

               }

               double Ll,Lm;

               for (int i=0;i<100;i++)

                       Ll += (double)i*AOchL[i]/Sch;

               for (int i=0;i<=Noch;i++)

                       Lm += (double)i*AOchM[i]/Sch;

               Edit4->Text=(double)Ll;

               Edit5->Text=(double)Lm;

               Edit6->Text=(double)TimeInL/SchL;

               Edit7->Text=(double)TimeInM/SchM;

               }

               break;

            }

}


S 0.0

S 0.1

S 0.i

S 0.n

S 1.0

S j.0


 

А также другие работы, которые могут Вас заинтересовать

77959. Фінансова звітність. Вимоги до фінансової звітності 190.5 KB
  Метою складання фінансової звітності є надання користувачам повної, правдивої та неупередженої інформації про фінансовий стан, результати діяльності підприємства (доходи, витрати, прибутки і збитки від діяльності) та руху грошових коштів підприємства за звітний період.
77960. Облік праці, її оплати та соціального страхування персоналу 152 KB
  Облік праці її оплати та соціального страхування персоналу. Організація праці облік особистого складу робітників та використання робочого часу. Фонд оплати праці та його склад. ПС БО Виплати робітникам Питання організації і оцінки праці регламентують документи: Кодекс законів про працю Закон України Про оплату праці Закон України Про колективні договори і угоди Податковий Кодекс України.
77961. Облік основних засобів 317.5 KB
  Облік основних засобів Поняття про основні засоби. Класифікація та оцінка основних засобів. Первинні документи з обліку основних засобів. Облік та порядок придбання вибуття ремонту основних засобів.
77962. Облік нематеріальних активів 64 KB
  Первинна вартість НМА придбаного в результаті обміну на подібний обєкт дорівнює залишковій вартості переданого нематеріального активу. Якщо залишкова вартість переданого обєкту перевищує його справедливу вартість то первинною вартістю НМА отриманого в обмін на подібний обєкт є його справедлива вартість з включенням різниці у фінансові результати витрати звітного періоду...
77963. Острый и хронический пиелонефрит 20.61 KB
  Наиболее частым возбудителем пиелонефрита является кишечная палочка реже стафилококки энтерококки протей клебсиелла. ХП как правило является следствием ранее перенесенного острого пиелонефрита. Факторы способствующие развитию пиелонефрита: нарушение оттока мочи создающее благоприятные условия для роста и размножения микроорганизмов: обратный заброс мочи рефлюксы на различных уровнях вследствие атонии мочевых путей опухоли мочевых путей и предстательной железы почечнокаменная болезнь; нарушение кровоснабжения почек...
77964. Гломерулонефрит 18.25 KB
  Острый гломерулонефрит – острое иммуновоспалительное заболевание почек с преимущественным поражением клубочков и в меньшей степени канальцев и интерстициальной ткани.
77965. Хроническая почечная недостаточность 49 KB
  ХПН не является самостоятельным заболеванием а представляет собой конечную фазу любого прогрессирующего заболевания почек. В норме в почках около 2 млн нефронов клинические проявления ХПН появляются тогда когда остается меньше 30 нефронов. При ХПН нарушается водный баланс развивается полиурия никтурия снижается относительная плотность мочи развивается изостенурия выделение мочи с монотонно низким удельным весом осмотическому давлению мочи = плазмы крови в полиурической фазе развиваются симптомы дегидратации.
77966. Мочекаменная болезнь 15.49 KB
  По химическому составу конкрементов выделяют: оксалаты ураты карбонаты фосфаты и органические камни. Большие камни лежащие в лоханке без движения могут не беспокоить больного или проявляться тупой длительной болью в поясничной области в связи с присоединением воспалительного процесса. Диагностика: клиническая картина изменения в оам небольшая протеинурия гематурия единичные цилиндры и соли рентгенологические методы выявляют уратные цистиновые и смешанные камни сочетают с УЗИ. При уратных конкрементах используются препараты...
77967. Основные симптомы заболеваний мочевыделительной системы. Лабораторные и инструментальные методы диагностики 22.88 KB
  Изменение цвета мочи Нефротический синдром. Преимущественная локализация На нижних конечностях На лице мешки под глазами Время суток К концу дня Утром Характер отеков Плотные ямки остаются долго Мягкие Рыхлые подвижные ямки быстро исчезают Цвет кожи над отеками Цианотичная Бледная Симптомы обусловленные расстройством мочеотделения Полиурия увеличение суточного количества мочи более 2 л Олигурия уменьшение количества мочи менее 500 мл. Анурия уменьшение суточного количества мочи менее 100150 мл или полное отсутствие...