Новости
12.04.2024
Поздравляем с Днём космонавтики!
08.03.2024
Поздравляем с Международным Женским Днем!
23.02.2024
Поздравляем с Днем Защитника Отечества!
Оплата онлайн
При оплате онлайн будет
удержана комиссия 3,5-5,5%








Способ оплаты:

С банковской карты (3,5%)
Сбербанк онлайн (3,5%)
Со счета в Яндекс.Деньгах (5,5%)
Наличными через терминал (3,5%)

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ ВИЗУАЛИЗАЦИИ ФУНКЦИОНИРОВАНИЯ МНОГОКАНАЛЬНОЙ СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ

Авторы:
Город:
Москва
ВУЗ:
Дата:
14 июня 2019г.

Аннотация: В статье представлено программное обеспечение для визуализации функционирования многоканальной системы массового обслуживания. Разработанное ПО наглядно демонстрирует функционирование системы.

Ключевые слова: системы массового обслуживания, визуализация работы СМО, программное обеспечение для визуализации работы СМО, Java FX.

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

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

Система массового обслуживания состоит из потока необслуженных заявок, а также входящего и исходящего потоков, и определенного числа каналов обслуживания. Схему СМО можно увидеть на Рисунке 1.


Обслуживаемый объект называют заявкой. Заявка – запрос на выполнение услуг какого-либо вида. Этими заявками могут быть клиенты магазина, данные, станки на заводе.

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

Заявки поступают в систему случайным образом, обслуживание этих заявок также занимает случайное время. Из-з этого система может оказаться загруженной неравномерно: в одни периоды она будет простаивать, а в другие в ней будет скапливаться множество заявок, которые будут вставать в очередь, либо будут уходить необслуженными [1, 3, 4].

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

По количеству каналов обслуживания СМО делятся на одноканальные и многоканальные (или n- канальные, когда количество каналов n ≥ 2).

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

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

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

Системы массового обслуживания с ожиданием делятся на системы с ограниченным ожиданием и системы с неограниченным ожиданием.

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

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

Практическая значимость систем массового обслуживания с ограниченным ожиданием представляет наибольшую ценность для решения прикладных задач [2, 5, 6].

Перед     созданием     проекта,     использующего     СМО,     можно     провести     визуализацию    его функционирования.

Программное обеспечение, визуализирующее функционирование систем массового обслуживания, может освободить людям время, которое можно потратить на работу над проектом, использующим СМО [7].

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

На Java FX возможно создавать пользовательский интерфейс, как при помощи кода, так и при помощи FXML. Компания Oracle разработала утилиту Scene Builder, которая позволяет использовать визуальный редактор для FXML. Кроме того, Java FX предоставляет широкий набор поддержки мультимедиа (проигрывание аудио и видео), используя доступные на платформе кодеки [3, 7].

Разработка ПО велась в среде разработки IntelliJ IDEA 2018.1 от компании JetBrains. Данная среда разработки поддерживает работу с Maven, что позволяет легко добавлять в проект библиотеки от сторонних разработчиков.

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

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

На Рисунке 2 представлен вид программы SmoFX. Слева можно увидеть окно, в котором присутствуют доступные объекты, а справа – рабочее пространство, куда пользователь может добавлять необходимые ему объекты.




Первый объект – это «Дверь», она представляет собой квадрат коричневого цвета. После выбора места для установки двери, открывается окно, в котором пользователь может установить параметры двери. Это окно изображено на Рисунке 3.

Присутствует возможность установить режим работы двери:

−      FULL (режим при котором дверь работает и на вход и на выход);

−      ONLY_ENTRY (режим при котором дверь работает только на вход);

−      ONLY_EXIT (режим при котором дверь работает только на выход).

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

Второй объект – «Канал обслуживания», который представляет собой квадрат синего цвета. Аналогично объекту «Дверь», после выбора места для установки канала обслуживания, открывается окно, в котором пользователь может установить параметры для канала обслуживания. Это окно изображено на Рисунке 4.


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

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

Третий объект – «Блок», который представляет собой квадрат красного цвета. При помощи блоков можно ограничить движение заявки: через место, на котором установлен блок, заявка пройти не сможет. Блоки можно использовать для создания стен и коридоров.

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

ENTERED (заявка пришла в систему);

PATH_TO_HANDLER (заявка на пути к каналу обслуживания);

IN_QUEUE (заявка находится в очереди); HANDLING (происходит обслуживание заявки); PATH_TO_EXIT (заявка направляется к выходу); OUT (заявка покинула систему).

Войдя в систему, заявка ищет каналы с наименьшим размером очереди, затем среди них выбирает ближайший. Если размер очереди на всех каналах является максимальным, заявка отправляется к выходу из системы [3].

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



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

 

Список литературы

 

1.                   Лекция     3:    Типовые    математические    модели    [Электронный     ресурс].    –    Режим     доступа: https://www.intuit.ru/studies/courses/643/499/lecture/11353?page=3 (Дата обращения: 05.10.2018).

2.                   Шмелева А.Г., Ладынин А.И., Бахметьев А.В. Построение взвешенных решений управления сложными производственными системами с применением теории массового обслуживания. Информационные технологии. 2018. Т. 24. № 6. С. 421-426.

3.                   Логинов А.А., Збандут М.О., Ефремов М.С. Разработка ПО, моделирующего многоканальную систему массового обслуживания. «Вопросы технических наук: новые подходы в решении актуальных проблем»: Сборник научных трудов по итогам международной научно- практической конференции. № 5. г. Казань, – НН: ИЦРОН, 2018, с. 62-64.

4.                   Кошуняева Н.В., Патронова H.H. Теория массового обслуживания (практикум по решению задач). – Архангельск; САФУ, 2013. – 107 с.

5.                   Саакян Г.Р. Теория массового обслуживания: Текст лекций. – Шахты: ЮРГУЭС, 2006. – 28 с.

6.                   Самаров К.Л. Элементы теории массового обслуживания. Учебно-методическое пособие. – 2009. – 18 с.

7.                   Kishori Sharan. Learn Java FX 8. – N.Y.: Apress, 2015 – 1200 p.