Моделирование работы диспетчерского пункта

Автор работы: Пользователь скрыл имя, 15 Октября 2017 в 13:49, курсовая работа

Описание работы

Объектом моделирования является диспетчерская служба.
Предметом моделирования:
- Приём заявок от клиентов.
- Обработка заявок от клиентов.
- Выдача результата клиенту в виде квитанции.

Файлы: 1 файл

Курсовая моделирование.docx

— 84.81 Кб (Скачать файл)

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное Образовательное Учреждение

Высшего Профессионального Образования

 

РЯЗАНСКИЙ ГОСУДАРСТВЕННЫЙ РАДИОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

 

 

Кафедра Автоматизированных Систем Управления

 

 

 

КУРСОВОЙ ПРОЕКТ

по дисциплине 
«Моделирование процессов и систем»

 

на тему

«Моделирование работы диспетчерского пункта»

 

 

 

 

 

Выполнил: 
студент группы 535

Фирсов Д.А.

 

 

Проверил: 
Малинин Ю.И.

 

 

 

 

Страниц 32

 

 

 

 

 

Рязань 2017г.

 

АННОТАЦИЯ

 

В данном курсовом проекте моделируется работа диспетчерского пункта. В качестве средства моделирования используется универсальный язык программирования Borland Pascal 7.0. Разработанная программа позволяет проанализировать работу диспетчерского пункта.

 

Сокращения:

ЭВМ – Электронно-вычислительная машина.

БД – База данных.

МЧС – Министерство по Чрезвычайным Ситуациям.

ЧС – Чрезвычайная ситуация.

 

СОДЕРЖАНИЕ

 

 

 

 

 

ВВЕДЕНИЕ

Моделирование (в широком смысле) является основным методом исследований во всех областях знаний и научно обоснованным методом оценок характеристик сложных систем, используемым для принятия решений в различных сферах инженерной деятельности.[1]

Все то, на что направлена человеческая деятельность, называется объектом (лат. objection — предмет).[1]

Модель (лат modulus — мера) — это объект-заместитель объекта-оригинала, обеспечивающий изучение некоторых свойств оригинала.[1]

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

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

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

Применение ЭВМ при анализе и решении аналитических моделей ограничивается лишь автоматизацией вычислений. Для имитационной модели ЭВМ является ее непосредственным компонентом.

С учетом сказанного имитационный эксперимент можно рассматривать как материализацию "мысленного эксперимента".

Целью данного курсового проекта является создание имитационной модели.

Имитационная модель объекта - это его программное представление с целью анализа поведения в вычислительной среде ЭВМ.

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

Однако, не все организации приобщились к современным технологиям и пользуются традиционными методами обслуживания. Это является следствием более низкой производительности. Естественно, до сих пор разрабатываются всё новые и новые программы, стремящиеся к максимальному ускорению данного процесса.

Информационные системы приобретают значительную важность, так как они обеспечивают принятие решений. Также база даннных является одним из важнейших элементов информационной системы. Она систематизрована и удобна для поиска и обработки нужных данных с помощью ЭВМ. Имеются несколько важных свойств базы данных:

1)База данных хранится и обрабатывается  так, что любые другие внекомпьютерные  хранилища информации(библиотеки, архивы) не являются базами данных.

2)Данные хорошо структурированы, т.е. хорошо выделены составные  части и их связи.

3)Структура обеспечивает эффективные  поиск и обработку данных.

       База данных позволяет хранить данные, использовать их несколькими пользователями, строить отчёты по запросу пользователя.

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

Для начала моделирования нужно изучить выбранную систему, все её плюсы и минусы, а также возможности оптимизации работы.

Объектом моделирования является диспетчерская служба.

Предметом моделирования: 
- Приём заявок от клиентов. 
- Обработка заявок от клиентов. 
- Выдача результата клиенту в виде квитанции.

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

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

 

Описание предметной области

Диспетчерская служба представляет собой пункт, в который клиенты обращаются со своей проблемой. Сотрудник обслуживает клиента, принимая у него заявку и обрабатывая её. Результат работы над заявкой сотрудник выдаёт клиенту в виде квитанции со статусом работы над заявкой.

Диспетчерская служба имеется во многих отраслях(МЧС России, аэропорт, диспетчерская служба, связанная с несколькими домами одного района). Задачей диспетчерской службы является обслуживание клиентов. Имеются требования и ограничения в её работе. Требования:

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

Также имеются ограничения:

  • работа осуществляется не круглосуточно;
  • ограниченность времени ожидания.

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

 

 

 

 

 

 

 

 

 

 

 

1.ПРИНЦИП ФУНКЦИОНИРОВАНИЯ МОДЕЛИРУЕМОЙ СИСТЕМЫ

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

Необходимо смоделировать процесс, который в дальнейшем сможет использовать любое предприятие[2].

Диспетчерская служба обслуживается сотрудником. Сотрудник принимает заявки и обрабатывает их. Исходными данными для осуществления имитации модели являются:

- начало рабочего дня – 8:00, конец  рабочего дня – 18:00;

- интервал прихода клиентов  – 9 минут;

- минимальное время обслуживания  – 7 минут, максимальное время обслуживания  – 13 минут;

- число прогонов – 10

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

Требуется смоделировать работу системы в течение полного рабочего дня и определить:

  • Число посетителей за рабочий день;
  • Время закрытия;
  • Среднюю длину очереди;
  • Среднее количество посетителей;
  • Среднее время обслуживания;
  • Количество ЧС.

 

1.2.Блок-схема алгоритма  функционирования моделируемой системы

Принцип функционирования системы представлен на рисунке 1.


 

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


 

 

1.3.Выбор концептуальной  модели

Необходимо определить подход к разработке концептуальной модели. Возможны два различных подхода -  дискретное и непрерывное моделирование, различающиеся способами задания времени в вычислительной среде ЭВМ.

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

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

Так как непрерывных процессов, в которых время является аргументом, в явном виде не имеется, то данную систему можно представить как дискретную модель. Здесь, главным образом, рассматриваются события. Она представлена на рисунке 2.

 

 



 
2.ФОРМАЛИЗАЦИЯ МОДЕЛИ


2.1.Группировка событий

Класс 1. Приход клиента.

В данном классе задаётся количество пришедших посетителей, имеется ли очередь, а также её длина.

Класс 2. Обслуживание клиента.

В данном классе задаётся время, которые было затрачено на обслуживание клиента.

Класс 3. Уход клиента.

В данном классе происходит процесс освобождения места в очереди клиентом.

Класс 4. ЧС.

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

2.2.Переменные модели

В процессе моделирования систем разработчик использует большое число переменных. Наиболее важные из них:

  1. NRNS – номер текущего прогона;
  2. NNRNS – общее число заданных прогонов;
  3. TNow – системное, т.е. текущее время;
  4. TTBeg – время начала прогона;
  5. TTFin – время окончания имитационного процесса;
  6. TSob – время свершения события;
  7. KEvent – код события;
  8. All – общее число посетителей;
  9. NEvents – количество записей в календаре;
  10. Ochered – длина очереди;
  11. Zanyat – признак занятости сотрудника;
  12. Kol_Chs – количество ЧС;
  13. Otchet_progon – файл отчёта по прогону;
  14. Otchet_Allprogon – файл отчёта по всем прогонам;
  15. Events – файл календаря.

 

3.АЛГОРИТМ ИМИТАЦИИ МОДЕЛИ

3.1.Процедура планирования

В процедуре SCHDL имеется 3 параметра:

KEvent – код события;

TSob – время его свершения;

A1 – атрибут события.

Начинается формирование записи, в которую поступают данные из A1. После этого в A2 копируются код и время свершения события. A2 – массив для работы с событиями. С оператора For j:=1 to nnq do начинается поиск первой свободной записи в календаре (запись с кодом события равным 0). На место найденной записи записываются данные из массива А2 (новое запланированное событие). После этого файл календаря переписывается с новой записью. В конце процедуры SCHDL записи календаря сортируются в порядке возрастания времени свершения событий процедурой GRUP.


 

 
procedure schdl(kevnt,dtime:integer;a4:ta1);


  var

   i,j:integer;

  begin

   for i:=1 to matr do a2[i]:=a4[i];writeln('атрибуты события ',a1[1]);

   a2[matr+1]:=kevnt;writeln('код события ',kevnt);

   a2[matr+2]:=tnow+dtime;writeln('время события ', tnow+dtime);

   seek(f,0);

   read(f,a3);

   j:=1;

   while a3[matr+1,j]<>0 do j:=j+1;

   for i:=1 to matr+2 do a3[i,j]:=a2[i];

   seek(f,0);

   write(f,a3);

   writeln(' Вывод календаря');

   for i:=1 to nnq1 do

    begin

     for j:=1 to matr+2 do

      write(a3[j,i],' ');write('   ');

    end;

    writeln;

   grup;

  end;

 

 

3.2.Процедура перегруппировки

          Процедура GRUP – системная и без параметров. Она сортирует записи по возрастанию по времени свершения. После копирования в A3 календаря осуществляется проверка состояния первой записи. Если она пустая, значит из календаря ранее выбрано событие с минимальным временем свершения и, следовательно, достаточно сдвинуть календарь на одну запись влево. Далее календарь из массива A3 переписывается  в файл. Перед сортировкой календаря оператор K=J запоминает номер j–й записи, а оператор z:=a3[3,j] – ее время свершения. Следующий за ними оператор For l:=j+1 to nnq do:  проверяет код очередной, сопоставляемой с j, записи l;  сравнивает время двух записей; запоминает (обновляет k, z) номер и время  свершения записи l. Если проверяемый код записи l равен нулю, календарь кончился и происходит обмен данными между записями j и l (k), так как ищутся записи со временем меньшим, чем у записи j. Если время свершения записи l оказывается больше или равным тому же для записи j, переходим к следующей записи календаря.

procedure grup;

  var

   l,k,h,i,j,n:integer;

  begin

   writeln(' Подпрограмма перегруппировки');

   seek(f,0);

   read(f,a3);

   n:=1;

   while a3[matr+2,n]=0 do

    begin

     for k:=1 to nnq1-1 do

      for l:=1 to matr+2 do

       begin

        a3[l,k]:=a3[l,k+1];

        a3[l,k+1]:=0;

       end;

     n:=n+1;

    end;

Информация о работе Моделирование работы диспетчерского пункта