Найти в Дзене
Алексей Науменко

Чтобы понять алгоритм, нужно его увидеть

Её название происходит от латинского coccineus — алый. В англоязычных странах её называют Ladybird или Ladybug — птичкой или жучком Божией Матери — Святой Девы Марии. Красный цвет божьей коровки ассоциируется с цветом плаща Девы Марии
Её название происходит от латинского coccineus — алый. В англоязычных странах её называют Ladybird или Ladybug — птичкой или жучком Божией Матери — Святой Девы Марии. Красный цвет божьей коровки ассоциируется с цветом плаща Девы Марии
Если вы не можете объяснить это простыми словами, вы не до конца это понимаете /Альберт Эйнштейн/

Модели — лучшее средство для изучения мира. Не те, чья внешность соответствует некоторым стандартам, а имитационные. Самое полезное в них — единство теории и практики — результаты…

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

Работа системы — случайный процесс с дискретными состояниями и непрерывным временем; состояние системы меняется скачком в моменты появления событий — приход новой заявки или окончание обслуживания. Эффективность системы определяется её способностью справляться с потоком заявок. Важнейшая характеристика потока заявок — его интенсивность λ — среднее число заявок, поступающих в единицу времени. Работоспособность канала характеризуется случайной величиной — временем обслуживания заявки (интенсивность потока освобождений канала μ — величина, обратная среднему времени обслуживания заявки).

Рассмотрим простейшую систему массового обслуживания M/M/1: одноканальную, без потерь, с неограниченным ожиданием и источником с бесконечным числом заявок: заявки однородные, поток заявок простейший, закон обслуживания заявок показательный, дисциплина обслуживания FIFO — первым вошёл — первым вышел.

Другая очередь всегда движется быстрее
Другая очередь всегда движется быстрее

"Обилие" терминов и формул — для любознательных…

Введя параметр ρ=λ/μ — среднее число заявок, приходящееся на среднее время обслуживания одной заявки, получим аналитическую модель:

  • среднее число заявок в очереди Lоч=ρ·ρ/(1-ρ);
  • среднее время ожидания заявки в очереди Wоч=ρ/μ/(1-ρ);
  • среднее число занятых каналов Lоб=λ/μ=ρ.

Условие существования конечной средней очереди — λ<μ, или ρ<1.

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

В противовес аналитической построим имитационную модель (ИМ): в рамках дискретного подхода, на основе сканирования активностей, используя универсальный язык программирования. Состояние системы изменяется только в моменты свершения событий. В промежутке состояние системы неизменно, её динамический “портрет” получаем продвижением модельного времени от события к событию (принцип δz). ИМ не использует формул, не имеет ограничений, наглядна…

В теории нет разницы между теорией и практикой. А на практике есть /Йоги Берра/

Итак, имеем поток божьих коровок на удачу и поток их освобождений — “улети на небо, принеси нам света”: λ=1; μ=2. Условие ρ<1 выполняется — средняя очередь конечна. Согласно аналитической модели Lоч=Wоч=Lоб=0,5.

Проверяем на ИМ…

Всё верно!!! Модель адекватна.

Усложняем задачу — λ=μ. Очередь не конечна, Lоб=1, а Lоч=λ·Wоч.

Для начала — λ=μ=0,3.

Очередь в три раза меньше, чем простои…

А если наоборот — λ=μ=3.

Теперь очередь в три раза больше…

Такие дела: заявок мало, освобождаем медленно — очередь небольшая, зато простои ощутимые — ленимся; заявок много, освобождаем быстро — очередь приличная, при том, что работаем, не покладая рук. Парадокс…

Ещё, заявок мало, освобождаем быстро — λ=0; μ=1 — очередь конечна!

Очереди нет, работаем, не покладая рук — простоев нет…

А теперь то, с чем “аналитике” справиться труднее (деление на ноль, почти) — только не для ИМ!!

Заявок много, работаем плохо — λ=1; μ=0.

Очередь бесконечна, работать не хотим — канал занят надолго, оценить простои сложно…

Ну и напоследок — λ=0; μ=0. Аналитика “отдыхает”?!

А что?! Заявок мало, но приходят — очередь медленно, но растёт. Работаем плохо, если канал занят — надолго, но используем на все 100. Ожидание зашкаливает… Простая система, но познавательно!

Главное — божьи коровки на удачу!!

Вспомню своё детство, чистое сердце...
Вспомню своё детство, чистое сердце...
Будьте заняты. Это самое дешёвое лекарство на земле — и одно из самых эффективных /Дейл Карнеги/

Не болейте!!!

Продолжаем познавать мир здесь, а завершаем изучение здесь.