Маршрутизация инспекторов для проверки объектов

Аннотация
Задача состоит в создании планировщика маршрутов для группы инспекторов предприятия, которые регулярно посещают объекты с целью проверки оборудования.

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

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

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

Сфера деятельности:
Управление территориально распределенных предприятий

Технологии:
Python, JavaScript, NumPy, Numba, OR-Tools

География:
Россия

Размер команды:
7

Кейс : Планировщик маршрутов


Проблема
Назначение маршрутов посещения объектов по всей России для десятков инспекторов производится вручную и не оптимален с точки зрения денежных и временных затрат.

Решение
Cервис для автоматизированного назначения задач инспекторам. Работа сервиса обеспечивается двумя модулями:
  1. Модуль сбора данных о доступных видах транспорта;
  2. Модуль оптимизации маршрутов с учетом накладываемых ограничений.

Модуль сбора данных об авиабилетах

Функции сборщика:

  1. Индексация данных по билетам и ценам рейсов различных авиакомпаний;

  2. Хранение и предоставления информации о рейсах в локальной базе данных для модуля оптимизации маршрутов;

  3. Регулярная актуализация данных

Модуль планирования маршрутов

Входная информация:
  1. Информация об объектах: местоположение, необходимая специализация и уровень квалификации инспектора, ожидаемое время проверки объекта, приоритет проверки, график проверки.
  2. Информация об инспекторах: текущее местоположение инспектора, специализация и уровень квалификации, график перевахтовок и т.д.
Используя данные о возможных перемещениях между заданными для посещения городами, программа находит оптимальный маршрут для каждого из инспекторов. Оптимальность маршрута состоит из следующих метрик (с  изменяемыми весами):
  • ​время маршрута​
  • стоимость маршрута​
Каждый машрут состоит из цепочки городов, где каждый город имеет следующие характеристики:​
  • время прибытия в город (точное время)​
  • время проверки объектов в городе (временной интервал)​
  • время ожидания в городе (временной интервал)​
  • время отбытия из города (точное время)​