Если вы отправляли письмо из Москвы в Москву, то могли обратить внимание, что оно сделало непонятный крюк. К примеру, письмо из Алтуфьево в Ясенево может проехать через подмосковный Ногинск. Вот трекинг тестового письма, отправленного из Тверского района Москвы в Лефортово. Его маршрут выглядит так:



Давыдково — это крупный сортировочный центр во Внуково. Прежде чем попасть к получателю, письмо пройдёт три сортировки. Расстояние, которое оно проезжает, почти в десять раз больше очевидной удаленности по карте.

Кажется, что письма должны двигаться простым и прямым маршрутом. Однако Почта России доставляет 2,4 млрд писем и счетов и 440 млн посылок в год. На таких масштабах подобные логистические «крюки» необходимы, поскольку именно они обеспечивают централизованную сортировку и автоматизацию. И тогда каждое отправление в среднем будет доставлено быстрее.



Но главный секрет не в этом. Дело в том, что мы уже запланировали машину, поезд или самолёт для вашей посылки, которую вы отправите только в следующем месяце. Предположим, что она будет адресована в Екатеринбург. Мы знаем, что в среднем из Москвы в том направлении поедет некоторый объем корреспонденции. Почте надо обнаружить эту посылку в общей массе, отложить в отдельную стопочку, погрузить в машину, довезти до самолёта или поезда, аккуратно переложить, затем где-то на расстоянии тысячи километров разгрузить, снова отсортировать уже на местности и довезти до адресата.

Фактически доставить из пункта А в пункт Б не очень сложно. Настоящая проблема в том, чтобы сделать это одновременно и быстро, и недорого. О том, как Почтовые технологии решают эту задачу, мы и хотим вам рассказать.

Приём отправления


Всё начинается со сдачи отправления в отделение. Оператор принимает письмо или посылку и присваивает ему трек-номер — уникальный почтовый идентификатор из 14 цифр, по которому можно отследить всю логистическую цепочку.

На сайте или в приложении Почты по трек-номеру можно увидеть, где находится письмо, и узнать ожидаемый срок доставки, который мы называем контрольным сроком. Это основной норматив в логистике. Он рассчитывается на основании справочника, в котором указано, за сколько дней надо доставить определённые типы отправлений из региона в регион:

  • Простое отправление из Калининграда в Челябинск = 7 дней
  • Отправление 1 класса из Калининграда в Челябинск = 4 дня
  • EMS из Калининграда в Санкт-Петербург = 2 дня.

И так — для всех возможных комбинаций и типов доставки. При расчете скорость будет иметь более высокий приоритет перед затратами на доставку. Если встанет выбор — привезти вовремя, но дороже, или же позже, но дешевле, то Почта выберет первый вариант.

Оператор принимает отправление и вводит данные о нем во фронтальную IT-систему. Затем информация попадает в Data Cloud Почты России. «Облако» сопровождает посылку, делится данными о её движении с мобильным приложением и порталом pochta.ru, а потом анализирует путь и ищет, как его оптимизировать. Но это потом. Пока же отправление из отделения почтовой связи, где его принял оператор, отправляется на сортировку.

Направо и налево


Когда в отделении набирается достаточно писем и посылок, они отправляются в сортировочный центр. У нас есть несколько типов сортировочных центров: поменьше в черте города, куда стекаются отправления из нескольких отделений и которые нет смысла везти на крупную сортировку по отдельности, и Большие Сортировочные Центры.

Сортировочные центры и почтамты работают на системе «Сортмастер», которая формирует комплекты писем и посылок в одно нажатие кнопки. Содержимое каждого из этих комплектов едет примерно в одном направлении, и если отправление попало в какой-то из них, то наверняка не существует никакого другого, который направлялся бы к месту его назначения ближе и точнее.

У каждого регистрируемого почтового отправления (РПО) есть штриховой почтовый идентификатор (ШПИ), который соответствует трек-номеру.



«Сортмастер» считывает ШПИ, вынимает из Data Cloud адрес и индекс (пожалуйста, пишите индекс правильно, это очень помогает!). Массив индексов является основным рабочим инструментом «Сортмастера» — он формирует так называемый план отправлений, который выглядит примерно так:



В соответствии с таблицей отправления с этими восемью индексами будут разложены на две стопки, и каждая поедет в своём направлении.

Штрихкод ставится не на все отправления. Открытки и письма, которые вы бросаете в почтовый ящик и подписываете вручную относятся к нерегистрируемым. Обработать их и отправить по нужному адресу сложнее. Для сортировки таких отправлений мы используем систему оптического распознавания символов (OCR, Optical Character Recognition).

Работает OCR так: письмо на ленте попадает под камеру, которая фотографирует текст и распознаёт, что там написано. В первую очередь она ищет индекс и адрес и пытается сопоставить одно с другим. Допустим, на входе у OCR есть такой кусок текста:



Алгоритм распознаёт рукописные символы и выделяет среди них значения почтовых атрибутов — индекса и адреса. После этого адрес нормализуется: «СПб» превращается в Санкт-Петербург, а «Б.Пушкарская» — в «Большая Пушкарская». Затем алгоритм возвращает структурированный текст с разделением на поля, чтобы его можно было положить в базу данных. Результат выглядит так:



После распознавания отправление отсортируется по индексу и поедет дальше.

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



Объемы — это крайне важно, потому что отталкиваясь от них и нужно планировать транспорт. Нам мало просто вовремя подать машину. Часто отправления путешествуют несколькими видами транспорта: авто, железной дорогой, авиацией, — и их нужно состыковать между собой с минимальной задержкой. Если машину еще можно быстро подать к подъезду, заменить на более или менее вместительную (да и это делается не по щелчку пальцев), то с поездами и самолётами есть небольшая проблема — они живут по своему расписанию.

Доставка


Всё идет по плану


Почта России планирует нагрузку примерно на месяц вперед. Уже в мае мы знаем, что в июне из Москвы в Краснодар поедет около 10 тонн писем. А с Питером у москвичей более оживленная переписка, поэтому закладываем 30 тонн. И так для каждого направления.

Подобное планирование — задача с миллионами переменных, которую с помощью методов математической оптимизации решает система моделирования процессов региональной почтовой логистики (МПРЛ), она рассчитывает будущую нагрузку на основе предыдущей статистики, сезонных прогнозов и других вводных из примерно 60 различных справочников.

Эта система весьма требовательна к вычислительным ресурсам. В нашем случае это географически распределённый кластер с мультипоточной обработкой информации, который содержит в себе четыреста процессорных ядер. Суперкомпьютером его назвать нельзя, но он успешно справляется с поставленной целью. Задача математического моделирования хорошо распараллеливается, потому что надо выполнять большое количество однотипных вычислений и сравнивать результаты. Планирование весьма точное, поэтому увеличение мощности кластера вряд ли улучшит качество доставки. Куда полезнее будет оперативный мониторинг, который наблюдает отклонения от расписания и быстро решает возникающие проблемы. Это часть большой задачи по планированию транспорта. Мы уже можем его заказывать, поскольку спланировали загрузку.

Для этого рассчитываем, сколько единиц транспорта и какой вместимости потребуется для перевозки почты между сортировочными центрами, отделениями и другими логистическими точками. И всё это в таком масштабе: 17260 собственных автомобилей, 96 привлеченных автокомпаний, более 1000 собственных и партнерских авиарейсов ежедневно. Почта России — крупнейший территориальный почтовый оператор в мире, мы работаем в девяти часовых поясах на 17 млн квадратных километров.

Планированием техники занимается система транспортной логистики (TMS, Transport Management System). Перед нами стоит задача не просто найти транспорт, а найти самый экономный вариант из возможных. Для этого загружаем в TMS информацию, которую получили на шаге планирования общей нагрузки и сопоставляем ее с доступными тарифами и условиями перевозок своего и наемного транспорта. Результат может быть не самым дешевым из всех возможных, но будет самым доступным из тех, что могут доставить отправление в заданный срок.

По результатам расчётов узнаём, что в понедельник в 12:00 20-тонная машина от наемного перевозчика ООО «Ромашка» (их тарифы оказались самыми выгодными на нужном маршруте) должна выехать в конкретную точку. К этому моменту знаем, что она загружена экономно (по объему или по весу — это тоже задача TMS). Для расчета маршрута мы пользуемся открытым кодом — маршрутизатором на базе Open Source Routing Machine.

В итоге мы составляем расписание, которое позволяет перевезти весь объем корреспонденции так, чтобы письма не копились очень долго (адресат расстроится), не ехали в полупустых машинах (очень дорого, расстроится отправитель), и точно поместились в заданный транспорт (борт самолета не резиновый). Ищем золотую середину.

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

Контроль сроков


Сейчас вопросами оперативного планирования занимается ситуационный центр. Его сотрудники отслеживают отклонения от контрольных сроков в режиме реального времени. Данные стекаются сюда из Data Сloud, отчётов, писем и звонков.

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


Карта, на которой сотрудник центра отслеживает проблемы

Чтобы следить за движением транспорта по маршрутам, мы собираем данные из информационных систем, от диспетчеров и из системы мониторинга транспорта Глонасс. Когда водитель едет по маршруту, в логистическую систему передаётся геопозиция автомобиля, которая сопоставляется с планом. В результате мы видим любые отклонения и несоответствия контрольным срокам.

Итоги и планы


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

Если ваше письмо неожиданно задержалось, будьте уверены, что мы стараемся с этим разобраться — как с точки зрения логистики, так и с точки зрения математики. Улучшение качества доставки это комплексная задача, на нее влияют все упомянутые здесь процессы, и мы постоянно их оптимизируем.

Помимо работы с точностью доставки, мы выстраиваем логистическую систему на международном уровне. Для этого потребуется создать электронное взаимодействие с таможней, внедрить международный биллинг и интеграционный электронный обмен документами.

Ещё одна амбициозная задача — создать за рубежом логистическую систему, аналогичную российской. Нам надо адаптировать систему расчета логистики для работы с местными перевозчиками и наладить документооборот с иностранными контрагентами.

Если вам интересны такие задачи — ждем вас в команде Почтовых Технологий. Открытые вакансии в 9 городах России можно посмотреть на сайте hr.pochta.tech/vacancies.