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 de l'article : 2510.11368
- Titre : An O(nlogn) Algorithm for Single-Item Capacitated Lot Sizing with a One-Breakpoint All-Units Discount and Non-Increasing Prices
- Auteur : Kleitos Papadopoulos
- Classification : cs.DS (Structures de Données et Algorithmes)
- Date de publication : Octobre 2025 (prépublication arXiv)
- Lien de l'article : https://arxiv.org/abs/2510.11368
Cet article étudie le problème de dimensionnement de lots pour un article unique avec capacité limitée, dans un environnement de prix non-croissants et de remises tout-unités à un point de rupture. Les auteurs établissent plusieurs nouvelles propriétés structurelles de la solution optimale et développent une approche de programmation dynamique hybride qui maintient une représentation compacte de l'espace des solutions en stockant uniquement les informations critiques des états et en utilisant des équations linéaires pour calculer les valeurs intermédiaires. La complexité temporelle de l'algorithme est O(nlogn), où n représente le nombre de périodes, ce qui constitue une amélioration significative par rapport à l'algorithme précédent optimal en O(n2).
Le problème de dimensionnement de lots occupe une position centrale dans la fabrication et la gestion de la chaîne d'approvisionnement, où les entreprises doivent minimiser les coûts totaux, y compris les coûts d'acquisition et de stockage, tout en satisfaisant la demande. Les variantes de ce problème sont largement présentes dans les applications pratiques, particulièrement en présence de remises quantitatives.
D'après le tableau comparatif des travaux connexes fourni dans l'article, les algorithmes existants présentent des complexités temporelles élevées :
- Federgruen et Lee (1990) : O(n3)
- Atamtürk et Hochbaum (2001) : O(n3) à O(n5)
- Malekian et al. (2021) : O(n4)
- Down et al. (2021) : O(n2) (actuellement optimal)
Les auteurs introduisent une « analogie de station-service » pour expliquer intuitivement le problème : les périodes correspondent aux stations-service, l'inventaire correspond au carburant dans le réservoir, la demande correspond à la distance entre les stations, et le coût des articles correspond au prix du carburant. Cette analogie facilite la compréhension de l'intuition derrière la conception de l'algorithme.
- Établissement des propriétés structurelles de la solution optimale : Preuve que la solution optimale possède des propriétés mathématiques spécifiques sous les conditions de prix non-décroissants et de remise à un point de rupture
- Proposition d'un algorithme de programmation dynamique hybride : Développement d'une méthode de représentation compacte de l'espace des solutions basée sur des segments
- Réalisation d'une complexité temporelle O(nlogn) : Amélioration significative par rapport à l'algorithme optimal existant en O(n2)
- Conception de structures de données efficaces : Utilisation d'arbres de recherche binaires équilibrés augmentés pour maintenir les informations de segments et les seuils MV
Entrées :
- n périodes, chaque période t ayant une demande dt
- Capacité de stockage B(t) et coût unitaire de stockage ht
- Fonction de tarification échelonnée : pt(x)={p1,txp2,txsi x<Qsi x≥Q
- Prix non-croissants : p1,t≥p1,t+1, p2,t≥p2,t+1
Sortie : Stratégie d'acquisition et de stockage minimisant le coût total
Fonction Objectif :
minx,I∑t=1n(pt(xt)+htIt)
Contraintes :
- It=It−1+xt−dt
- 0≤It≤B(t)
- I0=0
Les auteurs introduisent le concept de « segment d'état », où chaque segment contient :
- États explicites : (f,dp(i,f)), où f est le niveau d'inventaire et dp(i,f) est le coût minimal pour atteindre cet état
- Équations linéaires : pour générer les états implicites couverts par le segment
- Informations auxiliaires : p(i,f) (prix auquel le carburant p2 a été obtenu pour la dernière fois), r(i,f) (quantité supplémentaire de carburant disponible)
Lemme 1 (Limite 2Q) : À toute station i, l'ensemble optimal de solutions Sb(i) contenant les premiers 2Q états comprend tous les états nécessaires pour construire l'ensemble optimal de solutions Sb(i+1).
Lemme 2 (Monotonie des Prix) : Pour deux états quelconques dp(i,f) et dp(i,w) dans Sb(i) avec f<w, on a p(i,f)≥p(i,w).
Lemme 3 (Continuité) : Si l'état dp(i,f) est utilisé pour générer un état optimal dans S(i), alors les états générés forment un intervalle continu.
Pour traiter efficacement les relations de domination entre segments, les auteurs conçoivent un seuil MV (Valeur Maximale) :
MV Régulier (points de vérification de limite) :
MV(S1)=g−fdp(i,g)−dp(i,f)
MV Terminal (quand S2 utilise p2,i à droite) :
MVterm(S1)=L−adp(i,g)+Tp2,i−dp(i,f)−ap(i,f)
Le traitement de chaque station comprend :
- Élagage avec p1,i : Suppression des segments adjacents dominés
- Formation de dp(i+1,0) : Comparaison des coûts d'arrivée directe et d'arrivée avec ravitaillement
- Division à d(i,i+1) : Partition des segments en catégories accessibles et inaccessibles
- Mise à Jour en Masse : Ajout de Q unités de carburant p2,i aux segments inaccessibles
- Fusion Linéaire : Fusion des segments de mise à jour en masse et des segments existants dans l'intervalle [Q,2Q]
- Élagage Final : Vérification finale de domination avec p1,i
La programmation dynamique traditionnelle nécessite de stocker explicitement chaque état possible, tandis que la représentation par segments de cet article ne nécessite que le stockage des points d'état critiques et des équations linéaires, réduisant considérablement la complexité spatiale.
En précalculant les seuils MV et en les maintenant dans un arbre de recherche binaire équilibré, l'algorithme peut déterminer les relations de domination entre segments en temps O(logn).
Les mises à jour en masse et les mises à jour de coûts de détention utilisent des étiquettes paresseuses, évitant les calculs inutiles et maintenant l'efficacité de l'algorithme.
L'article fournit principalement une analyse théorique plutôt que des vérifications expérimentales, en mettant l'accent sur la preuve que :
- Exactitude : Par induction, l'algorithme produit un ensemble de solutions 2Q-approché correct à chaque station
- Complexité Temporelle :
- Au maximum 2 nouveaux segments créés par station
- Nombre total de segments mi≤2i
- Complexité temporelle de chaque opération : O(logn)
- Complexité temporelle totale : O(nlogn)
Limite du Nombre de Segments (Lemme 7) : L'ensemble optimal de solutions Q-approché Sb(i) contient au maximum 2i segments.
Complexité des Opérations :
- Mise à jour individuelle : chaque suppression de segment dominé nécessite O(logn)
- Mise à jour en masse : application d'étiquette paresseuse en O(1)
- Division/Fusion : opérations BST standard en O(logn)
L'article fournit des garanties théoriques rigoureuses :
Théorème 1 (Exactitude) : Sous les hypothèses de prix unitaires non-croissants, de seuil de remise tout-unités unique et de coûts de détention linéaires, l'Algorithme 1 calcule correctement l'ensemble de solutions 2Q-approché S(i) et l'état limite optimal dp(i+1,0) pour chaque station i.
Théorème 2 (Complexité Temporelle) : Sous la limite de segments mi≤2i et les primitives d'arbre équilibré augmenté, la complexité temporelle totale de construction de S(i) à partir de Sb(i) est O(nlogn), avec une complexité spatiale de O(n).
L'article fournit également deux extensions pratiques :
- Traitement du cas B(i)>2Q : Gestion des requêtes de grande capacité par extension sur place transitoire
- Suivi des Décisions : Mécanisme de récupération du plan d'acquisition optimal
La recherche sur le problème de dimensionnement de lots remonte à plusieurs décennies, avec les principales directions de développement incluant :
- Extension des fonctions de coût : des fonctions linéaires aux fonctions linéaires par morceaux et concaves
- Enrichissement des contraintes : limites de capacité, rachats, sous-traitance, etc.
- Amélioration des algorithmes : progression de O(n5) à O(n2)
Cet article, basé sur le travail en O(n2) de Down et al. (2021), réalise une amélioration révolutionnaire à O(nlogn) grâce à l'introduction de la représentation par segments et du mécanisme de seuil MV.
- Efficacité de l'Algorithme : Réalisation d'une amélioration de complexité temporelle de O(n2) à O(nlogn)
- Contribution Théorique : Établissement de nouvelles propriétés structurelles du problème de dimensionnement de lots en environnement de prix monotones
- Valeur Pratique : L'algorithme s'applique également aux quantités entières et non-entières, avec une large applicabilité
- Hypothèses de Prix : Exigence de prix non-croissants, limitant la portée d'application
- Limitation à Un Point de Rupture : Traitement uniquement du cas de seuil de remise unique
- Absence de Vérification Expérimentale : L'article fournit principalement une analyse théorique, manquant de vérification sur données réelles
Les directions de recherche proposées par les auteurs incluent :
- Étude de classes plus larges de fonctions de coût et de détention préservant la validité des lemmes
- Extension au cas de remises à plusieurs points de rupture
- Traitement d'environnements de prix non-monotones
- Forte Innovativité Théorique : La représentation par segments et le mécanisme de seuil MV constituent des contributions originales
- Rigueur Mathématique : Fournit des preuves complètes d'exactitude et de complexité
- Valeur Pratique Élevée : L'amélioration significative de la complexité temporelle possède une importance pratique considérable
- Clarté de la Rédaction : L'analogie de station-service rend le problème complexe facile à comprendre
- Vérification Expérimentale Insuffisante : Manque de comparaisons de performance réelles avec les algorithmes existants
- Portée d'Application Limitée : L'hypothèse de prix non-croissants peut ne pas toujours tenir en pratique
- Complexité d'Implémentation : L'implémentation de l'arbre BST augmenté est relativement complexe, pouvant affecter l'application pratique
- Contribution Académique : Fournit de nouveaux outils théoriques et cadres d'analyse pour le problème de dimensionnement de lots
- Valeur Pratique : La complexité O(nlogn) rend l'algorithme applicable aux problèmes à grande échelle
- Reproductibilité : L'article fournit une description détaillée de l'algorithme et de l'implémentation des structures de données
Cet algorithme est particulièrement adapté aux scénarios suivants :
- Planification de Production à Grande Échelle : Problèmes de planification à long terme avec de nombreuses périodes
- Environnements de Prix Décroissants : Comme les produits technologiques, les biens saisonniers, etc.
- Gestion d'Inventaire avec Limites de Capacité : Gestion de chaîne d'approvisionnement avec capacité d'entreposage limitée
L'article cite des travaux importants dans le domaine du dimensionnement de lots, incluant :
- Chung et Lin (1988) : Algorithme précoce en O(n2)
- Federgruen et Lee (1990) : Méthode en O(n3) introduisant les remises tout-unités
- Atamtürk et Hochbaum (2001) : Traitement des fonctions de coût concaves
- Down et al. (2021) : Algorithme optimal actuel en O(n2)
Évaluation Globale : Ceci est un article de haute qualité en informatique théorique qui réalise une percée importante sur le problème de dimensionnement de lots. Bien qu'il manque de vérification expérimentale, ses contributions théoriques et innovations algorithmiques possèdent une valeur académique et une importance pratique significatives.