Реализация AI-оптимизации складских запасов
Управление запасами — задача балансирования между стоимостью хранения и риском дефицита. Классические методы (EOQ, ROP, safety stock по формуле Кёртона) предполагают стационарность спроса и независимость позиций. ML позволяет учесть нелинейности, зависимости между SKU и динамику спроса.
Математическая постановка задачи
Целевая функция:
Minimize: Σ (Holding_Cost × Avg_Inventory + Stockout_Cost × P(Stockout) + Ordering_Cost × N_Orders)
Subject to: Fill_Rate ≥ target (e.g., 95%)
Holding cost: 15-25% годовых от стоимости запаса (капитал, хранение, порча). Stockout cost: упущенная маржа + penalty (для производства — остановка линии). Ordering cost: транзакционные расходы + partial shipment penalty.
Компоненты AI-системы
1. Demand Forecasting модуль Основа всей системы — точный прогноз спроса. TFT (Temporal Fusion Transformer) или LightGBM с lag features, промо-флагами, сезонностью. MAPE < 10% на SKU × склад уровне.
2. Lead Time Forecasting модуль Классические методы используют постоянный lead time. На практике — вариативен. ML-модель предсказывает распределение lead time по поставщику, SKU, сезону. Это напрямую влияет на safety stock.
3. Safety Stock расчёт
Классика: SS = Z × σ_demand × √(Lead_Time)
AI-улучшение: σ_demand — не статистическая, а предсказанная дисперсия из квантильной модели. Поставщик-специфичная σ_leadtime.
4. Reorder Point (ROP) модель
ROP = Expected_Demand_During_LT + Safety_Stock
С ML: Expected_Demand_During_LT — из probabilistic forecast, не простое среднее.
5. Replenishment optimization Не просто "когда заказывать", но и "сколько заказывать" с учётом:
- Volume discounts: оптимальный lot size с ценовыми лестницами
- Capacity constraints: ограничения склада, транспорта
- Multi-supplier selection: оптимальное распределение между поставщиками
Multi-echelon оптимизация
В распределённых сетях (центральный склад → региональные → магазины) запасы на каждом уровне взаимосвязаны:
- Классика: отдельная оптимизация для каждого узла (bullwhip effect)
- AI-подход: joint optimization всей сети через стохастическое программирование
Алгоритм: стохастический градиентный спуск (SGD) с симуляцией supply chain как дифференцируемой среды (PyTorch supply chain simulator). Оптимизируем параметры политики пополнения (base stock levels) через gradient descent.
Категоризация ABC-XYZ с ML
ABC: по доле в выручке (A=80%, B=15%, C=5%) XYZ: по вариативности спроса (X=CV<0.5, Y=0.5-1.0, Z>1.0)
ML-расширение: ML-кластеризация по 20+ features (сезонность, тренд, intermittency, lead time variability) вместо двух простых осей. k-Means или HDBSCAN. Каждый кластер получает свою политику управления запасами.
Автоматическое формирование заказов
Workflow:
- Ежедневно: пересчёт demand forecast на горизонт lead time + safety stock horizon
- Идентификация SKU ниже ROP
- Расчёт оптимального количества заказа
- Формирование draft purchase orders в ERP
- Автоматическое утверждение для позиций A-класса с высоким confidence
- Маршрутизация на ревью для нестандартных ситуаций
Anomaly detection: автоматическая флаговка аномального спроса (промо не введено в систему, выявление недостач) до включения в обучение.
Интеграция с ERP
- SAP S/4HANA: MRP run через BAPI, прямая запись в таблицы EKKO/EKPO
- 1C:УТ / 1C:ERP: COM/HTTP-интеграция, REST API в современных версиях
- Oracle NetSuite: SuiteScript API
- MS Dynamics 365: Power Automate + D365 API
Метрики оценки системы:
- Inventory Turnover: рост на 15-30%
- Fill Rate: целевой показатель > 97%
- Inventory Days (DOH): снижение на 20-35%
- Stockout rate: снижение на 40-60%
- Obsolescence write-offs: снижение на 25-40%
Сроки: базовая система с demand forecast + автоматическим ROP/SS расчётом для flat supply chain — 3-4 месяца. Multi-echelon оптимизация с joint optimization — 6-9 месяцев.







