4. Anderson Ross and Charalampos Manifavas. Chameleon - a new kind of stream cipher. In 4th International Workshop on Fast Software Encryption (FSE 1997). Volume 1267 of Lecture Notes in Computer Science. Pages 107-113. Springer-Verlag, 1997.
5. Anderson Ross J. Tree functions and cipher systems. Cryptologia. 15 (3):194-202, 1991.
6. Kazumaro Aoki and Yu Sasaki. Meet-in-the-middle preimage attacks against reduced SHA-0 and SHA-1. In 29th International Cryptology Conference, Advances in Cryptology (CRYPTO 2009). Volume 5677 of Lecture Notes in Computer Science. Pages 70-89. Springer-Verlag, 2009.
7. Golic Jovan. Cryptanalysis of Alleged A5 Stream Cipher, Proceedings of Eurocrypt' 97, Springer LNCS vol. Pp. 239-255, 1997.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ UWP, РАССЧИТЫВАЮЩЕЕ ПОКАЗАТЕЛИ ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ МНОГОКАНАЛЬНОЙ СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ
1 2 3
Логинов А.А. , Агафонова Д.А. , Лухнев С.Н. Email: [email protected]
1Логинов Андрей Андреевич - аспирант, кафедра аппаратного, программного и математического обеспечения; 2Агафонова Дарья Андреевна - аспирант; 3Лухнев Савва Николаевич - аспирант, кафедра информатики, МИРЭА - Российский технологический университет, г. Москва
Аннотация: в статье рассмотрены основные понятия и классификация систем массового обслуживания, а также представлено программное обеспечение, разработанное на C# для Universal Windows Platform (UWP). Системы массового обслуживания присутствуют во множестве сфер человеческой деятельности. Оптимизация работы системы массового обслуживания позволит сэкономить время, как работников, так и клиентов. Разработанное программное обеспечение позволяет оценить эффективность работы системы массового обслуживания без необходимости проведения расчетов вручную, облегчив, таким образом, жизнь людей, которые работают над проектом, связанным с системами массового обслуживания.
Ключевые слова: системы массового обслуживания, расчет показателей эффективности функционирования СМО, C#, UWP.
SOFTWARE FOR UWP, CALCULATING INDICATORS OF THE EFFICIENCY OF FUNCTIONING OF MULTI-CHANNEL
QUEUEING SYSTEM
1 2 3
Loginov A.A.1, Agafonova D.A.2, Lukhnev S.N.3
1Loginov Andrey Andreevich - Postgraduate Student, DEPARTMENT OF HARDWARE, SOFTWARE AND MATHEMATICAL PROVISION OF
COMPUTING SYSTEM;
2Agafonova Daria Andreevna - Postgraduate Student;
3Lukhnev Savva Nikolaevich - Postgraduate Student, DEPARTMENT OF COMPUTER SCIENCE, MIREA - RUSSIAN TECHNOLOGICAL UNIVERSITY, MOSCOW
Abstract: the article describes the basic concepts and classification of queuing systems, and also presents software developed in C # for the Universal Windows Platform (UWP). Queuing systems are present in many areas of human activity. Optimization of the queuing system will save time, both employees and customers. The developed software allows to evaluate the effectiveness of the queuing system without the need for manual calculations, thus facilitating the lives ofpeople who work on a project associated with queuing systems. Keywords: queuing systems, the calculation ofperformance of the QS, C #, UWP.
УДК 519.872.4 DOI: 10.24411/2312-8089-2019-11002
Введение
В практической деятельности людям часто приходится сталкиваться с необходимостью пребывания в состоянии ожидания. Такие ситуации происходят в аэропортах, магазинах, банках, складах, и т.д., и являются примерами систем массового обслуживания (СМО).
Часто разработка программного обеспечения, автоматизирующего рутинные задачи, позволяет сэкономить время пользователей. Разработанное программное обеспечение позволяет рассчитывать показатели эффективности функционирования систем массового обслуживания, что может облегчить жизнь людей, которые работают над проектом, использующим СМО [3].
1. Основные понятия
Система массового обслуживания состоит из потока необслуженных заявок, а также входящего и исходящего потоков, и определенного числа каналов обслуживания. Схему СМО можно увидеть на Рисунке 1.
Рис. 1. Схема системы массового обслуживания
Обслуживаемый объект называют заявкой. Заявка - запрос на выполнение услуг какого-либо вида. Этими заявками могут быть клиенты магазина, данные, станки на заводе.
Средства, которые обслуживают заявки, называют обслуживающими устройствами или каналами обслуживания. Роль этих каналов играют кассиры, погрузочно-разгрузочные точки на складах, операторы колл-центров и т.д.
Заявки поступают в систему случайным образом, обслуживание этих заявок также занимает случайное время. Из-за этого система может оказаться загруженной неравномерно: в одни периоды она будет простаивать, а в другие в ней будет скапливаться множество заявок, которые будут вставать в очередь, либо будут уходить необслуженными [1, 3, 4].
Предмет теории массового обслуживания - установка зависимостей между производительностью одного канала, количеством каналов, характером потока для нахождения наиболее эффективного варианта функционирования системы.
Задачи теории массового обслуживания носят оптимизационный характер и включают экономический аспект по определению варианта системы, в котором будут обеспечены минимальные потери времени и ресурсов.
Задачей клиента является потратить наименьшее время, находясь в очереди.
Задачей системы обслуживания, является минимизация времени нахождения в простое.
Анализ СМО необходим для поиска компромисса между требованиями клиентов и мощностью системы. Для этого необходимо рассчитать параметры, которые характеризуют эффективности системы массового обслуживания [4, 7, 8].
Показатели эффективности функционирования системы:
- р (коэффициент загруженности системы);
- ротк (вероятность того, что заявка покинет систему необслуженной);
- робс (вероятность того, что заявка будет обслужена);
- роч (вероятность образования очереди);
- Q (относительная пропускная способность);
- Ьсмо (среднее число заявок, находящихся в системе);
- Ьобс (среднее число обслуживаемых заявок);
- Ьоч (среднее число заявок, находящихся в очереди);
- А (абсолютная пропускная способность);
- пз (среднее количество каналов, занятых выполнением заявки);
- Кз (коэффициент занятости канала);
- Точ (среднее время нахождения заявки в очереди);
- Тсмо (среднее время нахождения заявки в системе).
2. Классификация систем массового обслуживания
В литературе принято выделять несколько типов систем массового обслуживания.
По количеству каналов обслуживания СМО делятся на одноканальные и многоканальные (или п-канальные, когда количество каналов п > 2).
В свою очередь, одноканальные и многоканальные системы массового обслуживания делятся на системы массового обслуживания с отказами и с ожиданием.
В системах массового обслуживания с отказами заявка получает отказ и покидает систему, если все каналы заняты. Для того чтобы вновь попасть на обслуживание, заявке необходимо снова поступить в систему. В качестве примера системы с отказами можно привести автозаправочную станцию: если у заправки место занято, то водитель, который хочет заправить свою машину, вынужден искать другое место для заправки, либо же разворачиваться.
В системах массового обслуживания с ожиданием (или очередью) заявка, поступившая, когда все каналы заняты, встает в очередь и ждет момента, когда какой-либо их каналов освободится. Примерами таких систем являются поликлиники, магазины и т.д.
Системы массового обслуживания с ожиданием делятся на системы с ограниченным ожиданием и системы с неограниченным ожиданием.
В системах массового обслуживания с ограниченным ожиданием, длина очереди, время пребывания заявки в очереди и общее время пребывание заявки в системе могут быть ограничены. Примером такой системы может быть стоянка автомобилей.
В системе массового обслуживания с неограниченным ожиданием на заявку никаких ограничений не накладывается, и каждая заявка, поступившая в систему, в итоге будет обслужена.
Практическая значимость систем массового обслуживания с ограниченным ожиданием представляет наибольшую ценность для решения прикладных задач.
Так же системы массового обслуживания делятся по ограничению потока заявок на разомкнутые и замкнутые системы.
В замкнутой системе массового обслуживания поток заявок является ограниченным, заявки не покидают систему, в разомкнутой же системе, поток заявок не ограничен. Кроме того, в замкнутой системе, в отличие от открытой, характеристики потока заявок зависят от числа каналов, которые заняты обслуживанием.
Примером замкнутой системы может быть группа рабочих, которая занимается наладкой станков на заводе. Источниками заявок в данной системе являются станки, количество которых ограничено, а каналами обслуживания - наладчики. После выхода из строя, станок вновь становится источником заявок [2, 5, 6].
3. Программное обеспечение
Перед созданием проекта, использующего СМО, можно провести расчет показателей эффективности ее функционирования.
Программное обеспечение для расчета показателей эффективности функционирования систем массового обслуживания может освободить людям время, которое можно потратить на работу над проектом.
SmoSolver позволяет рассчитывать показатели эффективности функционирования многоканальных систем массового обслуживания с отказами, с ограниченным и неограниченным размером очереди, а также для замкнутых СМО.
Программное обеспечение написано на языке программирования C# для Universal Windows Platform (UWP), его можно использовать, как на мобильной, так и на полноценной версии Windows 10. В качестве среды разработки использовалась Visual Studio.
Было создано пять классов:
- BigMath;
- Solver;
- Result;
- SolverResult;
- ClosedResult.
Класс BigMath содержит функции, облегчающие проведение математических операций над переменными разных типов. В классе Solver находятся функции для расчета показателей эффективности функционирования СМО. Класс Result служит для хранения части результатов расчета, классы SolverResult и ClosedResult являются его наследниками. Для хранения результатов расчета показателей эффективности замкнутых систем массового обслуживания служит класс ClosedResult, а для остальных систем - SolverResult.
В ПО присутствуют две страницы: MainPage и ResultPage.
В MainPage присутствуют четыре вкладки - по вкладке для каждого типа СМО и четыре поля (тип полей TextBlock) для ввода параметров:
- nField;
- mField;
- lambdaField;
- muField.
Поле mField на некоторых вкладках отсутствует.
Для открытия ResultPage необходимо заполнить все поля, иначе ПО выдаст предупреждение. После нажатия на кнопку, проводится расчет показателей эффективности, поля очищаются, и открывается Result Page.
Чтобы произвести расчет показателей эффективности СМО определенного типа, пользователю нужно выбрать соответствующую вкладку.
На Рисунке 2 представлена вкладка с полями для ввода параметров СМО с отказами.
Пользователь должен заполнить все поля:
- Количество каналов (п);
- Интенсивность потока заявок (X);
- Интенсивность потока обслуживания (д).
После ввода параметров, чтобы произвести расчет и увидеть результат, пользователю необходимо нажать на кнопку «Рассчитать». После проведения расчетов, пользователю откроется окно с результатом, это окно можно увидеть на Рисунке 3.
Рис. 2. Вкладка «С отказами»
Кдямктво ин*Ю((Л£ 3 Аюи рм-рг.1и1т): О
ИМсктвстъ погс*л о6сгум<Ы!ч«(цХ 0.333
а.7»Т«7Х1?»ТМга0?50ТМТЯВ Вфмтмхг* г«о. что овцу»с*т ни
мтяя т
«II ынмцИ^ 035М7М41>4»76Мв571537НЫ »•яго 2ып*л*(ра
»на|ф ) чм*ч(р&
вервяпчаытимф.осО;
ДО)ЗДЦ1Ю$Т4«71ЦбЛЮШ
вв#М1№<1ь йбираяиты пктупнощя ¡мчсл^абс).
0.9МЛ66Я®9Ыг»«К837М*467
Ср«м* число индии. ннч» обслуючи ирчСп 31
Ср№** У*« ПРИ1МИЧ1И1
12 М4МЬЗЬ31Л 20*73«1П»3«
Кт^нийт 1ЛШ-КГИ кмиоа оба|»1м««и)( 4
»¿*1Йв4вЫ»гИ1 ?
Лбгаюпча пргтрпл» спхобмхчМ
а^1Я66»74106МвЛ7(»47»17
ВгфСАТкШ'ь 0&&ийич«1 Снф&г. В СИЖ>р_Оч1_
О
Срыме ша мчк. махмяитс* е оисргли СМ0(Ц*ф
С»Ан<* к»«* ими * йчЮЯ' П-й"*
О
Срелм» число овс^шипно шюй.оЮ Средне* числа пни в О4смм0._смо): Среип 1рсиа
^даэммодаэмюоюодагз
ее*«* граним Ш||/ в СМСХТ.ааэ): 2-902 ЯЛЮ87ЯЯ81(Н««23вМ
Рис. 3. Результат расчётов
На Рисунке 4 представлена вкладка с полями для ввода параметров СМО с ограниченным размером очереди.
Пользователь должен заполнить все поля:
- Количество каналов (п);
- Длина очереди (т);
- Интенсивность потока заявок (X);
- Интенсивность потока обслуживания (д).
После нажатия на кнопку «Рассчитать», будет произведен расчет показателей эффективности, которые откроются пользователю в новом окне, которое можно увидеть на Рисунке 5.
Рис. 4. Вкладка «С ограничениями»
Рис. 5. Результат расчетов
На Рисунке 6 изображена вкладка с полями для ввода параметров СМО с неограниченным размером очереди.
Пользователь должен заполнить все поля:
- Количество каналов (п);
- Интенсивность потока заявок (X);
- Интенсивность потока обслуживания (д).
После ввода параметров, пользователю необходимо нажать на кнопку «Рассчитать».
Результат аналогичен - будет произведен расчет, и пользователю будут выведены в новом окне показатели эффективности функционирования системы (можно увидеть на Рисунке 7).
Рис. 6. Вкладка «Без ограничений»
Рис. 7. Результат расчетов
На Рисунке 8 изображена вкладка с полями для ввода параметров замкнутой СМО.
Пользователь должен заполнить все поля:
- Количество каналов (п);
- Количество каналов (ш);
- Интенсивность потока заявок (X);
- Интенсивность потока обслуживания (д).
После ввода параметров, пользователь нажимает на кнопку «Рассчитать» и получает результат, который можно увидеть на Рисунке 9.
Рис. 8. Вкладка «Замкнутая»
Рис. 9. Результат расчетов
Заключение
Были описаны основные понятия и классификация систем массового обслуживания и некоторые особенности работы разработанного программного обеспечения. Было разработано программное обеспечение SmoSolver для UWP на языке C#, которое позволяет оценивать показатели эффективности функционирования системы массового обслуживания.
Список литературы /References
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. Лаврусь О.Е., Миронов Ф.С. Теория массового обслуживания. Методические указания, учебная программа и задания для контрольных работ № 1, 2 для студентов заочной формы обучения специальности 071900 "Информационные системы в технике и технологиях". Самара: СамГАПС, 2002. 38 с.
8. Матвеев В.Ф., Ушаков В.Г. Системы массового обслуживания. М.: Изд-во МГУ, 1984. 240 с.