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()));

       }

   }

}


 

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

903. Производственная логистика 78 KB
  Сущность и задачи производственной логистики. Типы организации производства. Система планирования в потребности в материалах. Система точно в срок и микро логистическая система капвап. Методы выравнивания производства
904. Утворення Української козацької держави та її зовнішньо-політичні відносини 170 KB
  Концепція полівасалітетної підлеглості Б. Хмельницького та українсько російські відносини середини XVII століття. Розбудова Української державності в середині XVII століття.
905. Методы и методические приемы производственного обучения 163.5 KB
  Обобщение теоретических сведений и методические особенности планирования по его задачи методические приемы производственного обучения. Анализ передового педагогического опыта. Методические особенности планирования производственного обучения в ПТУЗ.
906. Стресс в жизни 132.5 KB
  Перегрузка или слишком малая рабочая нагрузка. Личностные факторы развития стрессовых ситуаций. Причины стрессового напряжения. Как человеческий организм реагирует на стресс. Методы профилактики стресса. Релаксационные упражнения.
907. Расчет потребности и оценка уровня использования оборотных средств 495.5 KB
  Теоретические основы планирования оборотных средств предприятия. Обзор современных методов планирования оборотных средств. Расчет потребности в основных средствах и сумм амортизационных отчислений. Пути повышения эффективности использования оборотных средств и оценка основных технико-экономических показателей работы предприятия.
908. Воронежская дистанция электроснабжения (ЭЧ-4) 159.5 KB
  Воронежская дистанция электроснабжения. Ремонтно-ревизионный участок. Структура дистанции электроснабжения юго-восточной железной дороги. Основные экономические показатели работы дистанции электроснабжения. Должностная инструкция начальника района контактной сети.
909. Триггеры и простые цифровые устройства с ячейками памяти 198.5 KB
  Знание отличительных особенностей различных по функциональному назначению триггеров, навыки применения их для построения простых цифровых устройств, владение временными диаграммами для представления принципа действия и изменения состояния устройств во времени.
910. Особенности психолого-педагогического обследования детей с нарушением ОДА 102 KB
  Особенности психологического обследования ребёнка с ДЦП. Кондуктивный метод лечения ДЦП. Особенности организации обследования: учет характера двигательного нарушения и возможности его влияния на активность ребенка, подбор рефлексозапрещающей позиции и наиболее удобного положения головы и туловища.
911. Опрацювання виключних ситуацій у С++ 80.5 KB
  Визначити обробник виключної ситуації, який сигналізує про присвоєння об’єкту скалярного значення. Опрацювання виключних ситуацій у С++.