В этом посте мы посмотрим, как Flexport использует математику и науку о данных для решения проблемы доставки и доставляет грузы вовремя при их наименьшей возможной стоимости.
Рассмотрим умозрительный сценарий: у экспедитора десять отправлений и один рейс назначения любой отгрузки. Единственное решение, которое нужно принять - назначить ли каждую отгрузку этому единственному полету. Если мы не назначаем определенный груз полету, предположим, что возможно переместить его другим способом.
Приветствую! Я, Ложкинс Алексей, консультант и разработчик оптимизационных решений и математических моделей для бизнеса. Это первая в цикле работ обучающая статья, часть личного образовательного проекта "Make optimization simple". Цель проекта – продемонстрировать доступность технологий и показать на примерах, что моделировать можно без глубокого математического фундамента.
Из статьи вы узнаете об основных компонентах математической оптимизационной задачи на примере классической задачи о назначениях, в частности, распределение машин такси на заказы. Далее, я покажу, как реализовать программный прототип математической модели посредством Python и библиотеки PuLP, а также продемонстрирую, как получить оптимальное решение задачи всего в одной строке кода без реализации специальных алгоритмов.