51204

Построение аналитической и имитационной модели одноканальной СМО с неограниченной очередью и ее исследование

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

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

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

Русский

2014-02-07

56.42 KB

20 чел.

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

Кафедра ПОИТ

Отчёт

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

Построение  аналитической и имитационной  модели одноканальной СМО с неограниченной очередью и ее исследование

Вариант 15а

Проверил:         Выполнил:

Мельник Н.И.       ст.гр. 750505

Мицкевич А.В.

                       

Минск 2010

Цель:

    Имеется n-канальная СМО с неограниченной очередью. Входной поток  и поток обслуживаний - простейшие с интенсивностями   и  соответственно.

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

Определить  

- среднее число заявок в очереди;

-среднее время пребывания заявок в очереди (отдельно –для получивших обслуживание и ушедших из очереди до обслуживания);

- среднее число занятых каналов.

а)  n=2,  = 3 заявки/час , =1 заявка/час ,   tож=0,5 часа.

Выполнение  лабораторной работы:

Построение аналитической модели:

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

средняя длинна очереди

среднее пребывания заявки в очереди

Скриншоты программы:

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

using System;

using System.Windows.Forms;

namespace saimm4

{

   public partial class Form1 : Form

   {

       private readonly Random random = new Random();

       public Form1()

       {

           InitializeComponent();

       }

               

       private void button2_Click(object sender, EventArgs e)

       {

           

           Double lambda =Double.Parse(textBox2.Text)/60;

           Double myu = Double.Parse(textBox3.Text)/60;

           Double myuQueue = 1/ (Double.Parse(textBox4.Text)*60);

           //количество тактов работы

           Int32 N = Int32.Parse(textBox1.Text);

           //количество заявок

           Int32 rCount = 0;

           //количество заявок в очереди

           Int32 rQueueCount = 0;

           //очередь

           Double[] queue = new Double[1000];     

           Double[] tQueue=new Double[1000];

           Double tOut1 = 0;

           Double tOut2 = 0;

           Double tIn = 0;

           Double tChNot = 0;

           Double busyCh = 0;

           Int32 reqOut = 0;

           Int32 req = -2;

           for (int countN = 0; countN < N; countN++)

           {

               //наступило ли время обрабработки след. заявки

               if (tIn == countN)                    

               {

                   rCount++; // кол заявок

                   tIn += GetRandom(lambda);

                   //время пребывания в очереди

                   Double time=GetRandom(myuQueue);

                   queue[rCount]=countN+time;  // отброс если не обсл

                   tQueue[rCount] = time; // время в очереди

               }

               for(Int32 j = 1; j <= rCount; j++)

               {

                   if(queue[j] == countN)

                   {    

                       tChNot += tQueue[j];  // среднее время пребывания не обсл заявок в очереди

                       queue[j] = 0;

                       reqOut++;  

                   }

               }     

               

               if (tOut1 > countN)  // если время 

                   busyCh++;

               if (tOut2 > countN)

                   busyCh++;

               if(countN == tOut1)  // если пусто то выбрать на обрабртку

               {

                   for(int j = 1; j <= rCount; j++)

                   {

                       if(queue[j] > countN)

                       {

                           tOut1 += GetRandom(myu);

                           queue[j] = 0;

                           tOut1--;

                           req++;

                           break;

                       }

                   } tOut1++;

               }

               if (countN == tOut2)

               {

                   for (int j = 1; j <= rCount; j++)

                   {

                       if (queue[j] > countN)

                       {

                           tOut2 += GetRandom(myu);

                           queue[j] = 0;

                           tOut2--;

                           req++;

                           break;

                       }

                   } tOut2++;

               }

               for (int j = 1; j <= rCount; j++)

               {

                   if (queue[j] > 0) rQueueCount++;

               }

           }

           //среднаяя длина очереди

           label8.Text = String.Format("{0:F2}", (Double)rQueueCount / N);  // те что в очереди по отношению ко всем

           //среднее время пребывания необслуженной завки в очереди

           label9.Text = String.Format("{0:F2}", tChNot / (reqOut * 60));

           //среднее время пребывания обслуженной заявки в очереди

           label10.Text = String.Format("{0:F2}", (Double)((rQueueCount-tChNot )/ (req * 60)));

           //количество занятных каналов

           label11.Text = String.Format("{0:F2}", busyCh / N);

           //количетво поступивших заявок

           label16.Text = String.Format("{0:F0}", rCount);

           //количество обработанных заявок

           label14.Text = String.Format("{0:F0}", req);

       }

       private Double GetRandom(Double lambda)

       {

           return Math.Ceiling(-(1 / lambda) * Math.Log(random.NextDouble()));

       }

   }

}


 

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

23531. ЗАНИМАТЕЛЬНАЯ ФРАЗЕОЛОГИЯ НЕМЕЦКОГО ЯЗЫКА 1.56 MB
  Немец же говорит: Как стары Вы Wie alt sind Sie Сколько часов Wieviel Uhr ist es Я имею голод. Entschuldigen Sie bitte daß ich so spät anrufe. Sie wollen hier einen Dokumentarfilm drehen 4: Sieben Tage in Moskau‘. Da brauchen wir für sie einen guten Ubersetzer.
23533. НЕМЕЦКО-РУССКИЙ ФРАЗЕОЛОГИЧЕСКИЙ СЛОВАРЬ 181 KB
  Фразеологизмы компоненты которых в качестве лексем являются грамматическими омонимами также разрабатываются в отдельных гнездах причем при вокабуле дается на это указание: ALTE der die ALTE das Указание на часть речи дается также при вокабулах имеющих омографическое начертание в связи с выделением их прописным шрифтом: LEBEN v . Расположение фразеологизмов в словаре а При наличии в компонентном составе одного существительного искать фразеологизм нужно под ним: großer Bahnhof под Bahnhof jn mit anderen Augen ansehen под Augen...
23534. Турецкий язык за 12 уроков 706.5 KB
  Начальный курс турецкого языка, разработан на основе пособия “Mehmet Hengirmen, 30 Derste Türkçe” для школы иностранных языков. В турецком все читается, как пишется, за исключением одной нечитаемой буквы. Имеет 8 гласных. Непривычных букв всего несколько:
23535. Турецкий язык за 30 уроков 765 KB
  Урок 1 Здравствуйте Ольга: Merhaba Здравствуйте Эрол: Merhaba Здравствуйте Ольга: Adınız ne Как вас зовут имя Ваше как Эрол: Adım Erol. Ольга: Nasılsınız Как поживаете как вы Эрол: Teşekkür ederim iyiyim. А у вас как дела Ольга: Teşekkür ederim ben de iyiyim. 1В Знакомство Ольга: Adınız ne Как вас зовут Эрол: Adım Erol.
23536. УЧЕБНИК ТУРЕЦКОГО ЯЗЫКА 3.45 MB
  18 Гласный а 18 Гласный ı 18 Согласные l m n s 18 Согласные b d r 18 УПРАЖНЕНИЯ 19 Гласный i 19 Гласный e 19 О СМЯГЧЕНИИ СОГЛАСНЫХ unsuz yumuşaması 20 УПРАЖНЬНИЯ 20 СЛОВАРЬ 22 НЕОПРЕДЕЛЕННЫЙ АРТИКЛЬ 23 ПРИНЦИП НЕБНОГО ПРИТЯЖЕНИЯ 24 АФФИКС МНОЖЕСТВЕННОГО ЧИСЛА çoğul eki 24 УПРАЖНЕНИЯ 25 ОПРЕДЕЛИТЕЛЬНАЯ ГРУППА belirtme grupu 25 УПРАЖНЕНИЯ 16 АФФИКСЫ ПРИНАДЛЕЖНОСТИ iyelik ekleri 27 Аффикс принадлежности 1го лица единственного числа birinci kişi tekil iyelik eki 27Аффикс принадлежнocmu 2го лица единственного...
23537. ГРАММАТИКА ШВЕДСКОГО ЯЗЫКА 401 KB
  Неопределённый артикль который ставится перед существительным для общего рода en а для среднего рода ett например: en flicka девочка en dag день ett hus дом ett regn дождь. Это происходит по схеме: существительное неопределённый артикль en ett например: Dag en dagen hus ett huset. Определённый артикль среднего рода с существительными на согласный имеет вид et а на безударный гласный t например: hus huset öga ögat глаз. например: den långa dagen долгий день det långa borget длинный стол de långa...
23538. ЭКСПРЕСС–КУРС ЯПОНСКОГО ЯЗЫКА 678.5 KB
  Перед тем, как приступить непосредственно к урокам, необходимо овладеть каной. Кана – слоговая азбука, возникшая в VII в. нашей эры в результате графического сокращения и преобразования китайских иероглифов в знаки алфавита. Существует два вида каны – хирагана и катакана. Хирагана предназначена для записи собственно японских слов и китаизмов
23539. Учебник языка эсперанто 888 KB
  В отличие от русского языка в настоящем времени глаголсвязка estas 'есть' 'является' 'имеется' 'находится' от глагола esti 'быть' не опускается: Nia celo estas demokratio. Marso estas planedo. Формы множественного числа слов оканчивающихся на o или a образуются прибавлением окончания j: novaj frazoj; niaj geografiaj kartoj; Vi estas juna 'Ты молод'; Vi estas junaj 'Вы молоды'. Глагол havi всегда требует винительного падежа глагол esti никогда; Li havas elegantan palton; Lia palto estas eleganta.