Программное обеспечение для расчета показателей эффективности функционирования многоканальной системы массового обслуживания | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Авторы: , ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №21 (259) май 2019 г.

Дата публикации: 21.05.2019

Статья просмотрена: 1132 раза

Библиографическое описание:

Логинов, А. А. Программное обеспечение для расчета показателей эффективности функционирования многоканальной системы массового обслуживания / А. А. Логинов, Д. А. Агафонова, С. Н. Лухнев. — Текст : непосредственный // Молодой ученый. — 2019. — № 21 (259). — С. 36-43. — URL: https://moluch.ru/archive/259/59358/ (дата обращения: 22.11.2024).



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

Ключевые слова: системы массового обслуживания, расчет показателей эффективности функционирования СМО, Telegram Bot, Java, Android.

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

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

1. Основные понятия

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

Рис. 1. Схема системы массового обслуживания

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

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

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

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

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

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

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

Анализ СМО необходим для поиска компромисса между требованиями клиентов и мощностью системы. Для этого необходимо рассчитать параметры, которые характеризуют эффективности системы массового обслуживания [4, 9, 10].

Показатели эффективности функционирования системы:

– ρ (коэффициент загруженности системы);

– pотк (вероятность того, что заявка покинет систему необслуженной);

– pобс (вероятность того, что заявка будет обслужена);

– pоч (вероятность образования очереди);

– Q (относительная пропускная способность);

– Lсмо (среднее число заявок, находящихся в системе);

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

– Lоч (среднее число заявок, находящихся в очереди);

– A (абсолютная пропускная способность);

– nз (среднее количество каналов, занятых выполнением заявки);

– Kз (коэффициент занятости канала);

– Tоч (среднее время нахождения заявки в очереди);

– Tсмо (среднее время нахождения заявки в системе).

2. Классификация систем массового обслуживания

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

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

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

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

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

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

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

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

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

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

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

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

3. SmoSolver

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

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

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

Как приложение для Android, так и бот для Telegram написан на языке программирования Java. Код, касающийся проведения расчетов, у них общий.

В качестве типов переменных в коде, касающемся расчетов, используются BigInteger и BigDecimal, так как в части формул присутствует факториал, и провести расчеты для СМО с большим количеством каналов обслуживания становится невозможно.

Для нахождения факториала числа используется библиотека RJM, автором которой является Richard J. Mathar. Исходный код данной библиотеки доступен под лицензией LGPL v3.0 [7].

Было создано пять классов:

– BigMath;

– Solver;

– Result;

– SolverResult;

– ClosedResult.

Класс BigMath содержит функции, облегчающие проведение математических операций над переменными разных типов. В классе Solver находятся функции для расчета показателей эффективности функционирования СМО. Класс Result служит для хранения части результатов расчета, классы SolverResult и ClosedResult являются его наследниками. Для хранения результатов расчета показателей эффективности замкнутых систем массового обслуживания служит класс ClosedResult, а для остальных систем — SolverResult.

3.1. SmoSolver для Android

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

В приложении присутствуют два Activity: MainActivity и ResultActivity. Activity — это компонент приложения, который выдает экран, и с которым пользователи могут взаимодействовать для выполнения каких-либо действий [8].

В MainActivity присутствуют четыре вкладки — по вкладке для каждого типа СМО и четыре поля (тип полей EditText) для ввода параметров:

– nField;

– mField;

– lambdaField;

– muField.

Поле mField на некоторых вкладках скрывается.

Для открытия ResultActivity необходимо заполнить все поля, иначе приложение выдаст предупреждение. После нажатия на кнопку, проводится расчет показателей эффективности, поля очищаются, и открывается ResultActivity, в котором результаты выводятся в TextView.

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

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

На Рисунке 3.1 представлена вкладка с полями для ввода параметров СМО с отказами.

Пользователь должен заполнить все поля:

– Количество каналов (n);

– Интенсивность потока заявок (λ);

– Интенсивность потока обслуживания (μ).

После ввода параметров, чтобы произвести расчет и увидеть результат, пользователю необходимо нажать на кнопку «Рассчитать». После проведения расчетов, пользователю откроется окно с результатом, это окно можно увидеть справа на Рисунке 2

1_1

Рис. 2. Расчет показателей эффективности для СМО с отказами

На Рисунке 3 представлена вкладка с полями для ввода параметров СМО с ограниченным размером очереди.

Пользователь должен заполнить все поля:

– Количество каналов (n);

– Длина очереди (m);

– Интенсивность потока заявок (λ);

– Интенсивность потока обслуживания (μ).

После нажатия на кнопку «Рассчитать», будет произведен расчет показателей эффективности, которые откроются пользователю в новом окне (на Рисунке 3).

2_1

Рис. 3. Расчет показателей эффективности для СМО с ограниченным размером очереди

В левой части Рисунка 4 изображена вкладка с полями для ввода параметров СМО с неограниченным размером очереди.

Пользователь должен заполнить все поля:

– Количество каналов (n);

– Интенсивность потока заявок (λ);

– Интенсивность потока обслуживания (μ).

После ввода параметров, пользователю необходимо нажать на кнопку «Рассчитать».

Результат аналогичен — будет произведен расчет, и пользователю будут выведены в новом окне показатели эффективности функционирования системы (можно увидеть на Рисунке 4 справа).

3_1

Рис. 4. Расчет показателей эффективности для СМО с неограниченным размером очереди

В левой части Рисунка 5 изображена вкладка с полями для ввода параметров замкнутой СМО.

Пользователь должен заполнить все поля:

– Количество каналов (n);

– Количество каналов (m);

– Интенсивность потока заявок (λ);

– Интенсивность потока обслуживания (μ).

После ввода параметров, пользователь нажимает на кнопку «Рассчитать» и получает результат, который можно увидеть в правой части Рисунка 5.

4_1

Рис. 5. Расчет показателей эффективности для замкнутой СМО

3.2. Бот для Telegram SmoSolver

В качестве среды разработки использовалась IntelliJ IDEA 2018.1.

Для взаимодействия с Telegram используется библиотека TelegramBots версии 3.6. Исходный код данной библиотеки доступен под лицензией MIT [11]. Каждому пользователю, написавшему сообщение боту, присваивается идентификатор, по которому бот может отправлять ответ.

Бот получает команду типа «название_функции аргумент1 аргумент2» от пользователя и разбивает ее, разделяя название функции и аргументы, после чего передает аргументы в функцию в классе Solver. Затем, проведя расчет показателей эффективности, отправляет пользователю результат.

Для того, чтобы начать использовать бота, пользователю достаточно добавить его в список контактов.

Отправив боту сообщение с текстом «/help» можно увидеть список доступных команд:

– /calc_qs_failures n λ μ;

– /calc_qs_limited_size n m λ μ;

– /calc_qs_unlimited_size n λ μ;

– /calc_qs_closed n m λ μ.

Вместо букв n, m, λ и μ пользователь должен ввести необходимые параметры.

На Рисунке 6 изображен диалог с ботом для расчета показателей эффективности системы массового обслуживания с отказами.

1

Рис. 6. Расчет показателей для СМО с отказами

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

Рис. 7. Расчет показателей для СМО с ограниченным размером очереди

На Рисунке 8 представлен диалог расчета показателей эффективности системы массового обслуживания с неограниченным размером очереди.

3

Рис.8. Расчет показателей для СМО с неограниченным размером очереди

На Рисунке 9 представлен диалог расчета показателей эффективности для замкнутой системы массового обслуживания.

4

Рис. 9. Расчет показателей для замкнутой СМО

Заключение

Были описаны основные понятия и классификация систем массового обслуживания, и некоторые особенности работы разработанного программного обеспечения. Было разработано две версии SmoSolver (бот для Telegram и приложение для Android), который позволяет оценивать показатели эффективности функционирования системы массового обслуживания.

Литература:

  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. Richard J. Mathar. A Java Math.BigDecimal Implementation of Core Mathematical Functions [Электронный ресурс]. — Режим доступа: https://arxiv.org/abs/0908.3030v3 (Дата обращения: 11.11.2018).
  8. Операции | Android Developers [Электронный ресурс]. — Режим доступа: https://developer.android.com/guide/components/activities?hl=ru (Дата обращения: 11.11.2018).
  9. Лаврусь О. Е., Миронов Ф. С. Теория массового обслуживания. Методические указания, учебная программа и задания для контрольных работ № 1, 2 для студентов заочной формы обучения специальности 071900 “Информационные системы в технике и технологиях” [Электронный ресурс]. — Самара: СамГАПС, 2002. — 38 с.
  10. Матвеев В. Ф., Ушаков В. Г. Системы массового обслуживания. — М.: Изд-во МГУ, 1984. — 240 c.
  11. TelegramBots/LICENSE at master · rubenlagus/TelegramBots · GitHub [Электронный ресурс]. — Режим доступа: https://github.com/rubenlagus/TelegramBots/blob/master/LICENSE (Дата обращения: 11.11.2018).
Основные термины (генерируются автоматически): массовое обслуживание, система, расчет показателей эффективности, ввод параметров, пользователь, заявка, неограниченный размер очереди, расчет показателей, Интенсивность потока заявок, Интенсивность потока обслуживания.


Ключевые слова

Android, системы массового обслуживания, Java, расчет показателей эффективности функционирования СМО, Telegram Bot

Похожие статьи

Методологии внедрения мобильного приложения для автоматизации работы технической поддержки в ИТ-компании

В статье описывается выбор методологии внедрения мобильного приложения для интеграции с Helpdesk системой ИТ-предприятия. В данной работе устанавливаются требования к приложению и в соответствии с характеристиками проекта определяется наиболее рацион...

Внедрение автоматизированной системы для мониторинга сети на предприятии ТЭК

В статье предложен путь решения проблемы по автоматизации мониторинга сетевых устройств на предприятии ТЭК путем внедрения многофункциональной системы мониторинга, которая написан и распространяется, под лицензией GPL исходный код свободно распростра...

Программный комплекс для оптимизации мониторинга основных показателей пациентов ОИТР при помощи централизованной базы данных

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

Программное обеспечение системы менеджмента качества

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

Сбор и анализ медицинских данных с применением машинного обучения в мобильных приложениях

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

Анализ систем мониторинга вычислительных сетей

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

Разработка информационной системы корпоративного тестирования сотрудников со встроенным блоком графоаналитического представления результатов

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

Проектирование программного обеспечения на базе экспертной системы «Выявление психологических отклонений»

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

Интеллектуализация системы обнаружения и предотвращения сбоев в сети

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

Проектирование информационной системы интернет-магазина

В данной работе представлены этапы и методы разработки информационной системы интернет-магазина. Определены функциональные требования к информационной системе и разработаны модели на языке моделирования UML, которые в дальнейшем будут использованы дл...

Похожие статьи

Методологии внедрения мобильного приложения для автоматизации работы технической поддержки в ИТ-компании

В статье описывается выбор методологии внедрения мобильного приложения для интеграции с Helpdesk системой ИТ-предприятия. В данной работе устанавливаются требования к приложению и в соответствии с характеристиками проекта определяется наиболее рацион...

Внедрение автоматизированной системы для мониторинга сети на предприятии ТЭК

В статье предложен путь решения проблемы по автоматизации мониторинга сетевых устройств на предприятии ТЭК путем внедрения многофункциональной системы мониторинга, которая написан и распространяется, под лицензией GPL исходный код свободно распростра...

Программный комплекс для оптимизации мониторинга основных показателей пациентов ОИТР при помощи централизованной базы данных

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

Программное обеспечение системы менеджмента качества

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

Сбор и анализ медицинских данных с применением машинного обучения в мобильных приложениях

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

Анализ систем мониторинга вычислительных сетей

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

Разработка информационной системы корпоративного тестирования сотрудников со встроенным блоком графоаналитического представления результатов

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

Проектирование программного обеспечения на базе экспертной системы «Выявление психологических отклонений»

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

Интеллектуализация системы обнаружения и предотвращения сбоев в сети

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

Проектирование информационной системы интернет-магазина

В данной работе представлены этапы и методы разработки информационной системы интернет-магазина. Определены функциональные требования к информационной системе и разработаны модели на языке моделирования UML, которые в дальнейшем будут использованы дл...

Задать вопрос