Оптимизация размещения складов — где ставить склад: центр тяжести vs MILP
Оптимизация размещения складов отвечает на два вопроса: где поставить склад или РЦ и сколько складов нужно, чтобы суммарные затраты на логистику были минимальны при нужном уровне сервиса. Инструмента два. Метод центра тяжести за минуты даёт стартовую точку по грузопотокам — но считает по прямой и игнорирует реальные дороги, тарифы и стоимость открытия. MILP-оптимизация работает на реальных тарифах, дискретных затратах на открытие и ограничениях мощности — и выбирает точки из реальных кандидатов. INTEBRIX (ядро C4) считает оба метода, сравнивает варианты по стоимости и сервису и показывает, чем вы платите за каждый компромисс.
On-prem • Cloud • Пилот 2–6 недель • Интеграции: ERP / 1C / Excel / API
Когда нужна оптимизация размещения складов
Когда цена решения по складу — это CAPEX и годы аренды, а не ежедневная операционка.
Найти точку, где суммарные плечи до рынков и поставщиков минимальны, а сервис выдержан.
Один центральный или сеть региональных: считаем кривую «затраты vs сервис» и точку перегиба.
Проверить, не устарело ли текущее размещение, и что даст переезд или добавление узла.
Прогнать интуицию или предложение подрядчика через модель до того, как вложены деньги.
Два метода: центр тяжести и MILP-оптимизация
Быстрая геометрическая прикидка и точная оптимизация под реальные затраты — у каждого своя зона применимости.
Взвешенное по грузопотокам среднее координат точек спроса: X* = Σ(Wᵢ·Xᵢ)/ΣWᵢ, Y* = Σ(Wᵢ·Yᵢ)/ΣWᵢ. Одна точка минимума взвешенного расстояния за минуты — стартовая гипотеза.
Считает по прямой (евклид ≠ дороги), игнорирует разные тарифы по плечам, CAPEX открытия и лимиты мощности, всегда возвращает ровно одну точку — на вопрос «сколько складов» не отвечает.
Реальные тарифы по плечам, дискретные затраты на открытие узла, лимиты мощности и требования по сервису. Выбирает точки из реальных кандидатов и число складов, минимизируя суммарную стоимость.
Одна прикидка, нет тарифов, один узел — центр тяжести. Несколько кандидатов, CAPEX, вопрос «сколько», ограничения мощности/сервиса — MILP. На практике: центром тяжести сужаем зону, MILP выбирает точку.
Какие данные нужны
Можно стартовать с минимума. Если часть данных в беспорядке — используем упрощения и уточняем по мере работы.
Точки спроса (адрес/координаты) и грузопоток по каждой (т/мес, паллеты или заказы). Этого хватает для центра тяжести.
Реальные тарифы по плечам (руб/т·км или ставки), CAPEX/OPEX кандидатов, мощности узлов, требования по сервису (плечо/время доставки). Это вход для MILP.
Стартуем с центра тяжести по грузопотокам, тарифы берём укрупнённо по зонам, калибруем по факту. Проект не встаёт из-за неполных данных.
Что сравниваем между вариантами размещения
На пилоте фиксируем «как сейчас», затем сравниваем сценарии.
Транспорт по реальным тарифам + обработка + хранение + аннуализированный CAPEX открытия.
Доля спроса в пределах целевого плеча/времени доставки, худшие точки, риск по сервису.
Сколько узлов открыто, загрузка мощностей, где перегруз, где недогруз и что даёт добавить/убрать узел.
Материалы по теме
Если решаете не только где склад, но и всю сеть: узлы, распределение рынков, коридоры и мощности.
Как считать дельту к базовой линии по cost/service/capacity и не переобещать эффект.
Узлы, роли, коридоры, мощности и компромиссы cost/service/capacity — на примерах.
Центр тяжести на числах, затем MILP
Расчётный пример центра тяжести и почему для реального решения нужна MILP-оптимизация.
Формула центра тяжести
X* = Σ(Wᵢ · Xᵢ) / Σ Wᵢ Y* = Σ(Wᵢ · Yᵢ) / Σ Wᵢ
Wᵢ — грузопоток точки спроса (т/мес, паллеты или заказы), (Xᵢ, Yᵢ) — её координаты. Центр тяжести — точка с минимальной суммой взвешенных расстояний до всех точек спроса.
Пример: три точки спроса
| Точка | X | Y | Грузопоток Wᵢ, т/мес |
|---|---|---|---|
| A | 10 | 20 | 200 |
| B | 40 | 30 | 300 |
| C | 30 | 60 | 500 |
| Σ | — | — | 1000 |
X* = (10·200 + 40·300 + 30·500) / 1000 = 29 000 / 1000 = 29
Y* = (20·200 + 30·300 + 60·500) / 1000 = 43 000 / 1000 = 43
Центр тяжести — точка (29; 43). Она смещена к точке C, потому что на неё приходится половина грузопотока. Это стартовая гипотеза для площадки — за минуты и без тарифов.
Почему одной формулы мало
Центр тяжести считает по прямой линии, а грузы едут по дорогам; он не знает разных тарифов по плечам, стоимости открытия склада и лимитов мощности; и всегда возвращает ровно одну точку — на вопрос «сколько складов нужно» не отвечает.
Для решения под реальные деньги задачу ставят как MILP (facility location): бинарные переменные «открыть склад k», потоки «сколько с узла k на рынок m», цель — минимум суммы транспорт по реальным тарифам + обработка/хранение + аннуализированный CAPEX открытых площадок при ограничениях: спрос покрыт, мощности не превышены, сервис выдержан. Солвер возвращает набор площадок, распределение спроса и суммарную стоимость — и позволяет менять число складов, строя кривую «затраты vs сервис».
MILP-модель ядра C4 считалась на 209 узлах и 1508 коридорах. В одном из сценариев закладывался рост спроса +17.4% — это параметр входа сценария, не обещанная экономия. Цифры приведены как иллюстрация масштаба задачи, а не типовой эффект.
Честные ограничения
- Качество ответа не выше качества данных о спросе и тарифах: неверные тарифы дают красивый, но неправильный ответ.
- Центр тяжести — только прикидка: игнорирует дороги, CAPEX и мощности, всегда одна точка.
- MILP требует дискретных данных (кандидаты, CAPEX, лимиты). Нет их — стартуем с зон и калибруем.
- Оптимум на модели не гарантирует оптимум в жизни: аренда, разрешения и подрядчики двигают точку. Модель сужает выбор и показывает цену компромисса — решение за вами.
Контекст задачи
Оптимизация размещения складов — частный, но самый частый вопрос при проектировании логистической сети: где поставить склад или РЦ и сколько их нужно. Для быстрой прикидки берут метод центра тяжести (взвешенное по грузопотокам среднее координат), для решения под реальные тарифы, стоимость открытия и ограничения мощности — MILP-оптимизацию (facility location). Если задача шире размещения одного узла — вся сеть, распределение рынков и коридоры — это оптимизация логистической сети. Стоимость проекта обсуждаем после пилота, с привязкой к вашему контуру данных.
FAQ
Чем оптимизация размещения складов отличается от оптимизации логистической сети?
Что такое метод центра тяжести?
Сколько складов нужно бизнесу?
Центр тяжести или MILP — что выбрать?
Можно начать без точных тарифов и CAPEX?
Насколько большую сеть можно посчитать?
Что на выходе?
Готовы оптимизировать?
Запустим пилот на ваших данных за 2-6 недель. Покажем baseline и измеримый эффект.
Запросить демо