Алгоритм розподілу замовлень - о-таксі

Відразу ж після придбання програми для таксі кожна диспетчерська служба стикається з головним питанням - як віддати заявку потрібного борту і з мінімальною затримкою. Клієнт не готовий довго чекати, а кількість бортів на лінії може не завжди вистачатиме. Брак бортів особливо відчувається, якщо клієнт висловлює додаткові переваги у виборі борту (некурящий водій, дитяче крісло, машина представницького класу та ін.).

Розглянемо на прикладі як це реалізовано в програмі для таксі «О-Таксі»

В «О-Таксі» у кожного типу транспортного засобу (далі ТЗ) є можливість вказати порядок черговості розподілу замовлень. Називається це кола розподілу.

Алгоритм розподілу замовлень - о-таксі

Кола розподілу замовлень

  • Коло перше - пошук борту в Мікрорайоні / зоні (в Зоні 1, Зоні 2, Зоні 3)
  • Коло друге - пошук борту в Районі (Район Центр)
  • Коло третій - для пошуку всіх вільного борту

Наприклад, необхідно реалізувати розподіл замовлення в «О-Таксі» таким чином, щоб:

Розподілити замовлення серед вільних в мікрорайоні / зоні бортів в порядку черги, якщо нікого немає - почекати звільнення машин в цьому мікрорайоні / зоні заданий час. Якщо розподілити виклик не вдалося, продовжити алгоритм розподілу.
Розподілити замовлення серед усіх вільних у районі або на найближчих стоянках, якщо через заданий час з'явилася вільна машина в потрібному районі запропонувати їй. Якщо розподілити виклик не вдалося, продовжити алгоритм розподілу.
Запропонувати замовлення всім вільним машинам в місті.

Налаштування розподілу в програмі для таксі «О-Таксі» буде виглядати наступним чином:

1. Загальні параметри

Алгоритм розподілу замовлень - о-таксі

Налаштування розподілу в програмі для таксі «О-Таксі». Загальні параметри

2. Коло перше

Алгоритм розподілу замовлень - о-таксі

Налаштування розподілу в програмі для таксі «О-Таксі». коло перше

  • Направляти замовлення - всім вільним в мікрорайоні / зоні
  • Кількість водіїв - 1 (для прикладу)
  • Час на прийняття водієм рішення - 30 секунд
  • Кількість ітерацій - 2
  • Тривалість кола - 60 секунд

Всі додаткові параметри не використовуються (галочки зняті)

3. Коло друге

Алгоритм розподілу замовлень - о-таксі

Налаштування розподілу в програмі для таксі «О-Таксі». коло друге

  • Направляти замовлення - всім вільним в районі
    Кількість водіїв - 5 (для прикладу)
    Час на прийняття водієм рішення - 20 секунд
    Кількість ітерацій - 6
    Тривалість кола - 125 секунд
    Розширені можливості пошуку: Пропонувати водіям на найближчих стоянках / зонах

4. Коло третій

Алгоритм розподілу замовлень - о-таксі

Налаштування розподілу в програмі для таксі «О-Таксі». коло третій

  • Направляти замовлення - Нікому
    Тривалість кола - 300 секунд
    Розширені можливості пошуку: Показувати замовлення цього кола в «вільних замовленнях»

Параметри розподілу на кожному колі в «О-Таксі» схожі, різниться лише зона розподілу:

На кожному колі ви можете вказати:

кількість бортів, на які будуть розподілятися замовлення;
час на ухвалення рішення - дозволяє обмежити час на підтвердженням прийняття замовлення бортом;
кількість ітерацій (повторів) замовлення між бортами на даному колі;
тривалість кола - загальний час розподілу замовлення між бортами на даному колі, твір часу на прийняття рішення на кількість ітерацій (повторів);

З додаткових параметрів можна відзначити:

Дозволити пропонувати повторно нове замовлення водієві - раптом водій не встиг підтвердити прийом замовлення або передумав;
Дозволити пропонувати замовлення на заміщають типах ТЗ (аналогах) - якщо немає вільних бортів бізнес класу, то можна відправити борт з класу люкс;
Завершити коло розподілу, якщо немає жодного підходящого водія - дозволить скоротити час пошуку борту, в іншому випадку система буде шукати водія протягом всієї тривалості кола.

Навігація по публікаціям

Схожі статті