Table of Contents
Fetching ...

An $O(n\log n)$ Algorithm for Single-Item Capacitated Lot Sizing with a One-Breakpoint All-Units Discount and Non-Increasing Prices

Kleitos Papadopoulos

TL;DR

The paper tackles the single-item capacitated lot sizing problem with a 1-breakpoint all-units quantity discount under non-increasing prices, introducing a hybrid dynamic programming approach that yields an $O(n\log n)$ algorithm. The key idea is a compact, segment-based representation of DP states, augmented with MV thresholds that enable efficient dominance checks and state pruning. The authors prove structural lemmas—terminus dominance, contiguity, and same-slope dominance—that justify compressing solution sets into segments and performing bulk updates, line-merges, and lazy holding-cost shifts. An augmented BST stores these segments, supporting $O(\log n)$ updates and queries, which together yield the claimed time bound and enable practical extensions, including handling linear holding costs and $B(i)>2Q$ scenarios. The result improves over the previous $O(n^2)$ baseline and offers a general dynamic-programming technique that could extend to related lot-sizing problems.

Abstract

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.

An $O(n\log n)$ Algorithm for Single-Item Capacitated Lot Sizing with a One-Breakpoint All-Units Discount and Non-Increasing Prices

TL;DR

The paper tackles the single-item capacitated lot sizing problem with a 1-breakpoint all-units quantity discount under non-increasing prices, introducing a hybrid dynamic programming approach that yields an algorithm. The key idea is a compact, segment-based representation of DP states, augmented with MV thresholds that enable efficient dominance checks and state pruning. The authors prove structural lemmas—terminus dominance, contiguity, and same-slope dominance—that justify compressing solution sets into segments and performing bulk updates, line-merges, and lazy holding-cost shifts. An augmented BST stores these segments, supporting updates and queries, which together yield the claimed time bound and enable practical extensions, including handling linear holding costs and scenarios. The result improves over the previous baseline and offers a general dynamic-programming technique that could extend to related lot-sizing problems.

Abstract

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 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.

Paper Structure

This paper contains 50 sections, 10 theorems, 47 equations, 2 figures, 1 table, 14 algorithms.

Key Result

Lemma 1

At any given station $i$, the optimal solution set $S_b(i)$ with the first $2Q$ states contains all the states necessary to construct the optimal $2Q$ solution set $S_b(i{+}1)$. Here we assume that $B(i)\geq 2Q+d(i,i+1)$, if it's not, then the first $K_i := \min\{2Q,\; B(i) - d(i,i+1)\}$ states suff

Figures (2)

  • Figure 1: Pictorial representation of a suboptimally created state $\mathop{\mathrm{dp}}\nolimits(i,f)$ in $S_b(i)$ that was in $S(i-1)$ as $\mathop{\mathrm{dp}}\nolimits(i,f+d(i-1,i))$. We note that the minimum amount of $p_2$ fuel that must be used is denoted by the $Q$-limit. Any "excess" additional amount may be added voluntarily but can lead to a suboptimal solution.
  • Figure 2: The figure represents a number of segments on an X-axis showing their overlapping regions. Notice that the terminus point of a segment is always in the non-overlapping part of a segment while the current endpoints of the segment in the overlap area may be unknown.

Theorems & Definitions (30)

  • Definition 1
  • Definition 2
  • Definition 3
  • Definition 4
  • Definition 5: State-segments
  • Definition 6
  • Definition 7
  • Definition 8: State Equations
  • Definition 9
  • Definition 10
  • ...and 20 more