УСТРОЙСТВО ДЛЯ МОДЕЛИРОВАНИЯ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ

Полезная модель относится к специализированным средствам вычислительной техники и может быть использована при статистическом моделировании.
Известно устройство для моделирования систем массового обслуживания [SU №1151981, 1983, МКИ G06F 15/20], содержащее генераторы потока заявок, элементы И, ИЛИ, запрета, счетчик поступивших заявок, получивших отказ в обслуживании, блок случайный временных задержек, реверсивный счетчик занятых каналов, реверсивный счетчик длины очереди.
Недостатком известного устройства является узкая область применения и невозможность моделирования некоторых видов СМО, например СМО с неоднородными потоками входящих заявок и очередью для одного потока заявок, с потоками отказов и восстановлений каналов при обслуживании заявок и т.д., широко распространенных в различных СМО.
Известно устройство для моделирования системы массового обслуживания [SU №1305701 А1, класс G06F 15/20, 23.04.1987], содержащее генератор случайного потока импульсов, выход которого соединен со счетным входом первого счетчика, с прямым входом первого элемента ЗАПРЕТ и с первым входом первого элемента И, выход которого соединен со счетным входом второго счетчика, выход второго элемента И соединен с вторым входом первого элемента И и с инверсным входом первого элемента ЗАПРЕТ, выход которого соединен с прямым входом второго элемента ЗАПРЕТ и первым входом третьего элемента И, выход которого соединен с суммирующим входом реверсивного счетчика, выходы разрядов которого соединены с входами второго элемента И соответственно и входами первого элемента ИЛИ соответственно, выход которого соединен с инверсным входом третьего элемента ЗАПРЕТ, с первым входом четвертого элемента И и первым входом пятого элемента И, выход которого соединен с вычитающим входом реверсивного счетчика, выход второго элемента ЗАПРЕТ соединен с первым входом второго элемента ИЛИ и с нулевым входом триггера, нулевой выход которого соединен с вторым входом третьего элемента И и с инверсным входом второго элемента ЗАПРЕТ, выход третьего элемента ЗАПРЕТ соединен с единичным входом триггера, выход четвертого элемента И соединен с вторым входом второго элемента ИЛИ, выход которого соединен с входами первой и второй линии случайной временной задержки, входы группы линий случайной временной задержки подключены к выходу второго элемента ИЛИ, выходы первой и второй линии случайной временной задержки соединены с выходами линий случайной временной задержки группы и подключены к счетному входу третьего счетчика, выход переполнения которого соединен с установочными входами первой и второй линии случайной временной задержки, линий случайной временной задержки группы, с прямым входом третьего элемента ЗАПРЕТ, с вторым входом четвертого элемента И и вторым входом пятого элемента И.
Недостатком данного устройства являются то, что, в случае, когда не поступают импульсы от генератора случайного потока импульсов заявок, отсутствуют заявки, находящиеся в очереди и все каналы обслуживания свободны от обслуживания, заявки, находящиеся в счетчике потерянных заявок, не обслуживаются.
Техническим результатом является расширение функциональных возможностей за счет обеспечения возможности обслуживания заявок, находящихся в счетчике потерянных заявок в случае, когда не поступают импульсы от генератора случайного потока импульсов заявок, отсутствуют заявки, находящиеся в очереди и все каналы обслуживания свободны от обслуживания.
Технический результат достигается тем, что в устройство для моделирования систем массового обслуживания, содержащее, пять элементов И, два счетчика, элемент ЗАПРЕТ, два элемента ИЛИ, триггер, реверсивный счетчик длины очереди и генератор случайного потока импульсов, выход которого соединен со счетным входом первого счетчика, с прямым входом элемента ЗАПРЕТ и с первым входом первого элемента И, выход второго элемента И соединен с вторым входом первого элемента И, выход третьего элемента И соединен с суммирующим входом реверсивного счетчика длины очереди, выходы разрядов которого соединены с входами второго элемента И и входами первого элемента ИЛИ, выход которого соединен с первым входом пятого элемента И, выход которого соединен с вычитающим входом реверсивного счетчика длины очереди, нулевой выход триггера соединен с вторым входом третьего элемента И и с инверсным входом элемента ЗАПРЕТ, дополнительно введены реверсивный счетчик заявок, ожидающих обслуживания, элемент И, элемент ИЛИ, генератор имитации обслуживания заявок, три инвертора, элемент задержки, и делитель, в качестве второго счетчика используется счетчик обслуженных заявок, первый вход делителя соединен с выходом первого счетчика, в качестве которого используется счетчик поступивших заявок, а второй вход соединен с выходом счетчика обслуженных заявок, вход которого соединен с выходом генератора имитации обслуживания заявок и объединенными входом элемента задержки и единичным входом триггера, нулевой вход которого соединен с входом генератора имитации обслуживания заявок и выходом третьего элемента ИЛИ, первый вход которого соединен с выходом элемент ЗАПРЕТ, второй вход третьего элемента ИЛИ соединен с вычитающим входом реверсивного счетчика длины очереди, а третий вход третьего элемента ИЛИ соединен с входом реверсивного счетчика заявок, ожидающих обслуживания и выходом четвертого элемента И, первый вход которого соединен с выходом второго инвертора, вход которого соединен с выходом первого элемента ИЛИ, второй вход четвертого элемента И соединен с вторым входом пятого элемента И и выходом элемента задержки, третий вход четвертого элемента И соединен с третьим входом пятого элемента И и единичным выходом триггера, четвертый вход четвертого элемента И соединен с выходом второго элемента ИЛИ, входы разрядов которого соединены с выходами разрядов реверсивного счетчика заявок, ожидающих обслуживания и входами разрядов шестого элемента И, выход которого соединен с входом третьего инвертора, выход которого соединен с четвертым входом первого элемента И, выход которого соединен со суммирующим входом реверсивного счетчика заявок, ожидающих обслуживания, второй вход первого элемента И соединен с нулевым выходом триггера, выход генератора случайного потока импульсов соединен с первым входом третьего элемента И, третий вход которого соединен с выходом первого инвертора, вход которого соединен с выходом второго элемента И, выход делителя соединен с выходом устройства.
Введение указанных дополнительных элементов и последовательности их подключения позволяют обеспечить расширение функциональных возможностей за счет обеспечение возможности обслуживания заявок находящихся в счетчике потерянных заявок.
На фиг.1 - представлена функциональная устройства.
Устройство для моделирования систем массового обслуживания (фиг.1) содержит генератор 1 случайного потока импульсов, счетчик 2 поступивших заявок, реверсивный счетчик 3 заявок, ожидающих обслуживания, элемент ЗАПРЕТ 4, шесть элементов И 5-10, триггер 11, три элемента ИЛИ 12-14, реверсивный счетчик 15 длины очереди, счетчик 16 обслуженных заявок, генератор 17 имитации обслуживания заявок, три инвертора 18-20, элемент задержки 21 и делитель 22.
Устройство для моделирования систем массового обслуживания (фиг.1) содержит генератор 1 случайного потока импульсов, счетчик 2 поступивших заявок, реверсивный счетчик 3 заявок, ожидающих обслуживания, элемент ЗАПРЕТ 4, шесть элементов И 5-10, триггер 11, три элемента ИЛИ 12-14, реверсивный счетчик 15 длины очереди, счетчик 16 обслуженных заявок, генератор 17 имитации обслуживания заявок, три инвертора 18-20, элемент задержки 21 и делитель 22, выход генератора 1 случайного потока импульсов соединен со счетным входом счетчика 2 поступивших заявок, с прямым входом элемента ЗАПРЕТ 4 и с первым входом первого элемента И 5, выход второго элемента И 6 соединен с вторым входом первого элемента И 5, выход третьего элемента И 7 соединен с суммирующим входом реверсивного счетчика 15 длины очереди, выходы разрядов которого соединены с входами второго элемента И 6 и входами первого элемента ИЛИ 12, выход которого соединен с первым входом пятого элемента И 9, выход которого соединен с вычитающим входом реверсивного счетчика 15длины очереди, нулевой выход триггера 11 соединен с вторым входом третьего элемента И 7 и с инверсным входом элемента ЗАПРЕТ 4, первый вход делителя 22 соединен с выходом счетчика 16 обслуженных заявок, а второй вход соединен с выходом счетчика 16 обслуженных заявок, вход которого соединен с выходом генератора 17 имитации обслуживания заявок и объединенными входом элемента задержки 21 и единичным входом триггера 11, нулевой вход которого соединен с входом генератора 17 имитации обслуживания заявок и выходом третьего элемента ИЛИ 14, первый вход которого соединен с выходом элемент ЗАПРЕТ 4, второй вход третьего элемента ИЛИ 14 соединен с вычитающим входом реверсивного счетчика длины очереди 15, а третий вход третьего элемента ИЛИ 14 соединен с входом реверсивного счетчика 3 заявок, ожидающих обслуживания и выходом четвертого элемента И 8, первый вход которого соединен с выходом второго инвертора 19, вход которого соединен с выходом первого элемента ИЛИ 12, второй вход четвертого элемента И 8 соединен с вторым входом пятого элемента И 9 и выходом элемента задержки 21, третий вход четвертого элемента И 8 соединен с третьим входом пятого элемента И 9 и единичным выходом триггера 11, четвертый вход четвертого элемента И 8 соединен с выходом второго элемента ИЛИ 13, входы разрядов которого соединены с выходами разрядов реверсивного счетчика 3 заявок, ожидающих обслуживания и входами разрядов шестого элемента И 10, выход которого соединен с входом третьего инвертора 20, выход которого соединен с четвертым входом первого элемента И 5, выход которого соединен со суммирующим входом реверсивного счетчика 3 заявок, ожидающих обслуживания, второй вход первого элемента И 5 соединен с нулевым выходом триггера, выход генератора 1 случайного потока импульсов соединен с первым входом третьего элемента И 7, третий вход которого соединен с выходом первого инвертора 18, вход которого соединен с выходом второго элемента И 6, выход делителя 22 соединен с выходом устройства.
Устройство (фиг.1) работает следующим образом.
В случае, когда все каналы обслуживания свободны от обслуживания, триггер 11 находится в единичном состоянии, на управляющем входе элемента ЗАПРЕТ 4 сигнал отсутствует, и он открыт.
Импульс от генератора 1 случайного потока импульсов через открытый элемент ЗАПРЕТ 4 и третий элемент ИЛИ 14 поступает на вход генератора 17 имитации обслуживания заявок и на нулевой вход триггера 11, закрывая тем самым элемент ЗАПРЕТ 4 и открывая первый 5 и третий 7 элементы И. До окончания обслуживания следующие заявки от генератора 1 случайного потока импульсов поступают на суммирующий вход реверсивного счетчика 15 длины очереди, если он не заполнен (имитируется тем самым образования очереди), или на вход реверсивного счетчика 3 заявок, ожидающих обслуживания, если реверсивный счетчик 15 длины очереди заполнен.
Кроме того, импульсы от генератора 1 случайного потока импульсов всегда поступают на вход счетчика 2 поступивших заявок и суммируются.
Если во время обслуживания очередной заявки реверсивный счетчик 15 длины очереди не заполнен, то с выхода второго элемента И 6 выдается запрещающий сигнал, который закрывает первый элемент И 5 и, проходя через инвертор НЕ 18, открывает третий элемент И 7. В это случае импульсы от генератора 1 случайного потока импульсов через открытый третий элемент И 7 поступают на суммирующий вход реверсивного счетчика 15 длины очереди.
Если во время обслуживания очередной заявки реверсивный счетчик 15 длины очереди заполнен, то с выхода второго элемента И 6 выдается разрешающий сигнал, так как на его входы поступает код все единицы. Этот сигнал открывает первый элемент И 5 и проходя через инвертор НЕ 18 закрывает третий элемент И 7. Импульсы от генератора 1 случайного потока импульсов через открытый первый элемент И 5 поступают на суммирующий вход реверсивного счетчика 3 заявок, ожидающих обслуживания. Если окажется, что реверсивный счетчик 3 заявок, ожидающих обслуживания будет заполнен, то вновь поступившие от генератора 1 случайного потока импульсов заявки теряются. В этом случае на вход элемента И 10 поступает код все единицы. С выхода элемента И 10 через третий инвертор НЕ 20 на четвертый вход первого элемента И 5 выдается запрещающий сигнал.
Через случайное время, равное продолжительности обслуживания заявки в каждом из каналов, с выхода генератора 17 имитации обслуживания заявок выдается импульс, который поступает на вход счетчика 16 обслуженных заявок. Кроме того, импульс с выхода генератора 17 имитации обслуживания заявок поступает на единичный вход триггера 11 и устанавливает его в единичное состояние, разрешая тем самым прием на обслуживание очередной заявки.
Очередной импульс от генератора 1 случайного потока импульсов через открытый элемент ЗАПРЕТ 4 и элемент ИЛИ 14 поступает на вход генератора 17 имитации обслуживания заявок и на нулевой вход триггера 11, закрывая тем самым элемент ЗАПРЕТ 4 и открывая первый 5 и третий 7 элементы И до окончания обслуживания.
Если после окончания обслуживания очередной заявки от генератора 1 случайного потока импульсов заявок не поступает, то триггер 11 будет находиться в единичном состоянии. Сигнал с единичного выхода триггера 11 поступает на третьи входы четвертого 8 и пятого 9 элементов И и открывает их.
В этом случае импульс с выхода генератора 17 имитации обслуживания заявок через элемент задержки 21 поступает на вторые входы четвертого 8 и пятого 9 элементов И. Элемент задержки 21 предназначен для задержки импульса, поступающего с выхода генератора 17 имитации обслуживания заявок, на время срабатывания триггера 11.
Если в реверсивном счетчике 15 длины очереди присутствует хотя бы одна заявка, то с выхода первого элемента ИЛИ 12 выдается разрешающий сигнал, который через второй инвертор закрывает по первому входу четвертый 8 элемент И и открывает по первому входу пятый 9 элемент И. Задержанный на элементе задержки 21 импульс с выхода генератора 17 имитации обслуживания заявок через открытый третий 7 элемент И и третий элемент ИЛИ 14 поступает на вход генератора 17 имитации обслуживания заявок и на нулевой вход триггера 11, имитируя тем самым прием заявки на обслуживание из очереди. Так как на обслуживание принята заявка из очереди, то импульс с выхода пятого 9 элемента И поступает на вычитающий вход реверсивного счетчика 15 длины очереди и уменьшает его значение на единицу, имитируя тем самым списывание заявки из очереди. До окончания обслуживания принятой заявки из очереди триггер 11 будет находиться в нулевом состоянии. Запрещающий сигнал с единичного выхода триггера 11 закроет по третьему входу четвертый 8 и пятый 9 элементы И, а разрешающий сигнал с нулевого выхода закроет элемент ЗАПРЕТ 4.
После окончания обслуживания заявки, с выхода генератора 17 имитации обслуживания заявок выдается импульс, который поступает на вход счетчика 16 обслуженных заявок, устанавливает триггер 11 в единичное состояние и через элемент задержки 21 поступает на вторые входы четвертого 8 и пятого 9 элементов И.
Если после окончания обслуживания очередной заявки от генератора 1 случайного потока импульсов заявок не поступает и отсутствуют заявки, находящиеся в очереди, то с выхода первого элемента ИЛИ 12 выдается запрещающий сигнал, который через второй инвертор открывает по первому входу четвертый 8 элемент И и закрывает по первому входу пятый 9 элемент И.
Если в реверсивном счетчике 3 заявок, ожидающих обслуживания, присутствует хотя бы одна заявка, то с выхода второго элемента ИЛИ 13 на четвертый вход четвертого 8 элемента И выдается разрешающий сигнал. Импульс с выхода генератора 17 имитации обслуживания заявок через открытый четвертый 8 элемент И и третий элемент ИЛИ 14 поступает на вход генератора 17 имитации обслуживания заявок и на нулевой вход триггера 11, имитируя тем самым прием заявки на обслуживание из реверсивного счетчика 3 заявок, ожидающих обслуживания. Так как на обслуживание принята заявка из реверсивного счетчика 3 заявок, ожидающих обслуживания, то им пульс с выхода четвертого 8 элемента И поступает на вычитающий вход реверсивного счетчика 3 заявок, ожидающих обслуживания, и уменьшает его значение на единицу, имитируя тем самым списывание заявки из этого счетчика. До окончания обслуживания принятой заявки из реверсивного счетчика 3 заявок, ожидающих обслуживания, триггер 11 будет находиться в нулевом состоянии. Запрещающий сигнал с единичного выхода триггера 11 закроет по третьему входу четвертый 8 и пятый 9 элементы И, а разрешающий сигнал с нулевого выхода закроет элемент ЗАПРЕТ 4.
Через случайное время, равное продолжительности обслуживания заявки в каждом из каналов, с выхода генератора 17 имитации обслуживания заявок выдается импульс, который поступает на вход счетчика 16 обслуженных заявок. Счетчик 16 обслуженных заявок осуществляет подсчет всех обслуженных заявок. Кроме того, импульс с выхода генератора 17 имитации обслуживания заявок поступает на единичный вход триггера 11 и устанавливает его в единичное состояние, разрешая тем самым прием на обслуживание очередной заявки, поступившей от генератора 1 случайного потока импульсов заявок, или от реверсивного счетчика 15 длины очереди, или от реверсивного счетчика 3 заявок, ожидающих обслуживания.
Независимо от того, какая заявка обслуживается генератором 17 имитации обслуживания заявок от генератора 1 случайного потока импульсов, стоящих в очереди или получивших отказ в обслуживании (из реверсивного счетчика 3 заявок, ожидающих обслуживания) каждое обслуживание фиксируется в счетчике 16 обслуженных заявок путем суммирования импульсов, поступающих с выхода блока 17 имитации обслуживания заявок. В результате по окончании моделирования в счетчике 2 поступивших заявок будет зафиксировано общее количество поступивших заявок от генератора 1 случайного потока импульсов а, в счетчике 16 обслуженных заявок - количество обслуженных заявок, которые поступают соответственно на первый и второй входы делителя 22. В делителе 22 определяется коэффициент обслуживания, на основании которого можно делать выводы о поведении реальных СМО в зависимости от законов распределения поступления заявок и законов распределения их обслуживания.
Таким образом, в устройстве обеспечивается расширение функциональных возможностей за счет обеспечения возможности обслуживания заявок, находящихся в счетчике потерянных заявок в случае, когда не поступают импульсы от генератора 1 случайного потока импульсов заявок, отсутствуют заявки, находящиеся в очереди и все каналы обслуживания свободны от обслуживания, кроме того, обеспечивается возможность исследования поведения реальных СМО в зависимости от законов распределения поступления заявок и законов распределения их обслуживания, в определенный промежуток времени.