This paper addresses the single-item capacitated lot sizing problem with a 1-breakpoint all-units quantity discount in a monotonic setting where the purchase prices are non-increasing over the planning horizon. For this case, we establish several novel properties of the optimal solution and develop a hybrid dynamic programming approach that maintains a compact representation of the solution space by storing only essential information about the states and using linear equations for intermediate values. Our algorithm runs in \(O(n\log n)\) time, where \(n\) denotes the number of periods. Our result is an improvement over the previous state-of-the-art algorithm, which has an \(O(n^2)\) time complexity.
- ID статьи: 2510.11368
- Название: An O(nlogn) Algorithm for Single-Item Capacitated Lot Sizing with a One-Breakpoint All-Units Discount and Non-Increasing Prices
- Автор: Kleitos Papadopoulos
- Категория: cs.DS (Структуры данных и алгоритмы)
- Дата публикации: Октябрь 2025 (препринт arXiv)
- Ссылка на статью: https://arxiv.org/abs/2510.11368
В данной работе исследуется задача планирования партий одного товара с ограничением мощности при наличии одноточечной скидки на все единицы в условиях монотонно убывающих цен. Авторы устанавливают новые свойства оптимального решения и разрабатывают гибридный метод динамического программирования, который поддерживает компактное представление пространства решений путём хранения только ключевой информации о состояниях и использования линейных уравнений для вычисления промежуточных значений. Временная сложность алгоритма составляет O(nlogn), где n — количество временных периодов, что представляет значительное улучшение по сравнению с предыдущим оптимальным алгоритмом сложности O(n2).
Задача планирования партий занимает центральное место в производстве и управлении цепями поставок, где предприятия должны минимизировать общие затраты, включая стоимость закупок и хранения, при одновременном удовлетворении спроса. Различные варианты этой задачи широко встречаются в практических приложениях, особенно при наличии количественных скидок.
Из таблицы сравнения связанных работ, представленной в статье, видно, что существующие алгоритмы имеют высокую временную сложность:
- Federgruen and Lee (1990): O(n3)
- Atamtürk and Hochbaum (2001): O(n3) до O(n5)
- Malekian et al. (2021): O(n4)
- Down et al. (2021): O(n2) (текущий оптимум)
Авторы используют интуитивную аналогию с «заправочной станцией» для объяснения задачи: временные периоды соответствуют заправочным станциям, запасы соответствуют топливу в баке, спрос соответствует расстоянию между станциями, а стоимость товара соответствует цене топлива. Эта аналогия помогает понять интуицию, лежащую в основе разработки алгоритма.
- Установление структурных свойств оптимального решения: доказано, что оптимальное решение обладает специфическими математическими свойствами при условиях неубывающих цен и одноточечной скидки
- Предложение гибридного алгоритма динамического программирования: разработан метод компактного представления пространства решений на основе сегментов
- Достижение временной сложности O(nlogn): значительное улучшение по сравнению с существующим оптимальным алгоритмом O(n2)
- Разработка эффективных структур данных: использование расширенных сбалансированных двоичных деревьев поиска для поддержания информации о сегментах и пороговых значениях MV
Входные данные:
- n временных периодов, каждый период t имеет спрос dt
- Ёмкость хранилища B(t) и удельная стоимость хранения ht
- Иерархическая функция ценообразования: pt(x)={p1,txp2,txесли x<Qесли x≥Q
- Неувеличивающиеся цены: p1,t≥p1,t+1, p2,t≥p2,t+1
Выходные данные: стратегия закупок и хранения, минимизирующая общие затраты
Целевая функция:
minx,I∑t=1n(pt(xt)+htIt)
Ограничения:
- It=It−1+xt−dt
- 0≤It≤B(t)
- I0=0
Авторы вводят концепцию «сегментов состояния», каждый из которых содержит:
- Явные состояния: (f,dp(i,f)), где f — уровень запасов, dp(i,f) — минимальная стоимость достижения этого состояния
- Линейные уравнения: для генерации неявных состояний в диапазоне сегмента
- Вспомогательная информация: p(i,f) (цена последнего полученного топлива p2), r(i,f) (доступное дополнительное количество топлива)
Лемма 1 (граница 2Q): На любой станции i оптимальный набор решений Sb(i), содержащий первые 2Q состояний, включает все состояния, необходимые для построения оптимального набора решений Sb(i+1).
Лемма 2 (монотонность цены): Для любых двух состояний dp(i,f) и dp(i,w) в Sb(i) таких, что f<w, выполняется p(i,f)≥p(i,w).
Лемма 3 (непрерывность): Если состояние dp(i,f) используется для генерации оптимального состояния в S(i), то генерируемые состояния образуют непрерывный интервал.
Для эффективной обработки отношений доминирования между сегментами авторы разработали пороговый механизм MV (Maximum Value):
Обычное пороговое значение MV (контрольные точки границ):
MV(S1)=g−fdp(i,g)−dp(i,f)
Пороговое значение конечной точки MV (когда S2 использует p2,i справа):
MVterm(S1)=L−adp(i,g)+Tp2,i−dp(i,f)−ap(i,f)
Обработка каждой станции включает:
- Обрезка с использованием p1,i: удаление доминируемых соседних сегментов
- Формирование dp(i+1,0): сравнение затрат прямого и пополненного достижения
- Разделение в d(i,i+1): разделение сегментов на достижимые и недостижимые категории
- Массовое обновление: добавление Q единиц топлива p2,i к недостижимым сегментам
- Линейное слияние: слияние сегментов массового обновления и существующих сегментов в интервале [Q,2Q]
- Финальная обрезка: последняя проверка доминирования с использованием p1,i
Традиционное динамическое программирование требует явного хранения каждого возможного состояния, тогда как представление сегментов в данной работе требует хранения только ключевых точек состояния и линейных уравнений, что значительно снижает пространственную сложность.
Путём предварительного вычисления пороговых значений MV и их поддержания в сбалансированном двоичном дереве поиска алгоритм может определить отношения доминирования между сегментами за время O(logn).
Массовые обновления и обновления затрат на хранение используют ленивые метки, что избегает ненужных вычислений и сохраняет эффективность алгоритма.
Статья в основном предоставляет теоретический анализ, а не экспериментальную проверку, с акцентом на доказательство:
- Корректность: путём индукции доказано, что алгоритм на каждой станции производит корректный набор решений 2Q-приближения
- Временная сложность:
- На каждой станции создаётся максимум 2 новых сегмента
- Общее количество сегментов mi≤2i
- Временная сложность каждой операции составляет O(logn)
- Общая временная сложность составляет O(nlogn)
Граница количества сегментов (Лемма 7): Количество сегментов в оптимальном наборе решений Q-приближения Sb(i) не превышает 2i.
Сложность операций:
- Индивидуальное обновление: удаление каждого доминируемого сегмента требует O(logn)
- Массовое обновление: применение ленивых меток составляет O(1)
- Разделение/слияние: стандартные операции BST составляют O(logn)
Статья предоставляет строгие теоретические гарантии:
Теорема 1 (корректность): При условиях неувеличивающихся единичных цен, одного порога скидки на все единицы и линейных затрат на хранение алгоритм 1 корректно вычисляет набор решений 2Q-приближения S(i) и оптимальное граничное состояние dp(i+1,0) для каждой станции i.
Теорема 2 (временная сложность): При границе сегментов mi≤2i и примитивах расширенного сбалансированного дерева общая временная сложность построения S(i) из Sb(i) составляет O(nlogn), а пространственная сложность составляет O(n).
Статья также предоставляет два практических расширения:
- Обработка случая B(i)>2Q: обработка запросов большой ёмкости путём расширения на месте в переходном режиме
- Отслеживание решений: механизм восстановления оптимального плана закупок
Исследование задачи планирования партий восходит к нескольким десятилетиям назад, основные направления развития включают:
- Расширение функций стоимости: от линейных к кусочно-линейным и вогнутым функциям
- Обогащение ограничений: ограничения ёмкости, обратные покупки, субподряд и т.д.
- Улучшение алгоритмов: постепенное улучшение от O(n5) к O(n2)
Данная работа, основываясь на O(n2) алгоритме Down et al. (2021), достигает прорывного улучшения до O(nlogn) путём введения представления сегментов и механизма порогового значения MV.
- Эффективность алгоритма: достигнуто улучшение временной сложности с O(n2) до O(nlogn)
- Теоретический вклад: установлены новые структурные свойства задачи планирования партий в условиях монотонных цен
- Практическая ценность: алгоритм одинаково применим к целым и нецелым количествам, обладает широкой применимостью
- Предположения о ценах: требование неувеличивающихся цен ограничивает область применения
- Ограничение одной точки разрыва: обработка только одного порога скидки
- Отсутствие экспериментальной проверки: статья в основном предоставляет теоретический анализ без проверки на реальных данных
Авторы предлагают следующие направления исследований:
- Исследование более широких классов функций стоимости и хранения, сохраняющих справедливость лемм
- Расширение на случай многоточечных скидок
- Обработка условий с немонотонными ценами
- Сильная теоретическая новизна: представление сегментов и механизм порогового значения MV являются оригинальными вкладами
- Математическая строгость: предоставлены полные доказательства корректности и анализ сложности
- Высокая практическая ценность: значительное улучшение временной сложности имеет важное практическое значение
- Ясное изложение: аналогия с заправочной станцией делает сложную задачу легко понятной
- Недостаточная экспериментальная проверка: отсутствует сравнение фактической производительности с существующими алгоритмами
- Ограниченная область применения: предположение о неувеличивающихся ценах может не всегда выполняться на практике
- Сложность реализации: реализация расширенного BST может быть сложной и влиять на практическое применение
- Академический вклад: предоставляет новые теоретические инструменты и аналитическую базу для задачи планирования партий
- Практическая ценность: сложность O(nlogn) делает алгоритм применимым к крупномасштабным задачам
- Воспроизводимость: статья предоставляет подробное описание алгоритма и реализацию структур данных
Данный алгоритм особенно подходит для следующих сценариев:
- Крупномасштабное производственное планирование: задачи долгосрочного планирования с большим количеством временных периодов
- Условия с убывающими ценами: такие как технологические продукты, сезонные товары и т.д.
- Управление запасами с ограничениями ёмкости: управление цепями поставок с ограниченной ёмкостью хранилища
Статья цитирует важные работы в области планирования партий, включая:
- Chung and Lin (1988): ранний алгоритм O(n2)
- Federgruen and Lee (1990): метод O(n3) с введением скидок на все единицы
- Atamtürk and Hochbaum (2001): обработка функций вогнутой стоимости
- Down et al. (2021): текущий оптимальный алгоритм O(n2)
Общая оценка: Это высококачественная статья по теоретической информатике, которая достигает важного прорыва в задаче планирования партий. Хотя экспериментальная проверка отсутствует, её теоретический вклад и инновации в алгоритмах имеют важное академическое значение и практическую ценность.