Quantità Economica d'Ordine (EOQ)
EOQ è la quantità dell’ordine di acquisto per il riapprovvigionamento che minimizza i costi di gestione dell’inventario. L’ordine di acquisto viene attivato quando il livello di inventario raggiunge il punto di riordino. L’EOQ viene calcolato per minimizzare una combinazione di costi come il costo d’acquisto (che può includere sconti per quantità), il costo di mantenimento dell’inventario, il costo d’ordine, ecc. L’ottimizzazione della quantità d’ordine è complementare all’ottimizzazione della scorta di sicurezza, che si concentra nel trovare la soglia ottimale per attivare il riordino.
Modello e formula
La formula classica EOQ (vedi la Formula di Wilson qui sotto) è sostanzialmente un compromesso tra il costo d’ordine, considerato come una tariffa fissa per ordine, e il costo di mantenimento dell’inventario. Sebbene questa formula, risalente al 1913, sia estremamente conosciuta, consigliamo di non usare tale formula in un qualsiasi ambiente moderno della supply chain. Le ipotesi matematiche alla base di questa formula sono semplicemente errate al giorno d’oggi.
La formula storica assume che il costo dell’atto di ordinare sia il fattore chiave per il business. Sicuramente era un fattore importante nel 1913, quando era necessaria un’intera armata di impiegati per tenere i registri manualmente, ma con il software di gestione delle scorte e possibilmente con l’EDI, questo fattore risulta solitamente irrilevante. Di conseguenza, l’“ottimizzazione” eseguita dalla formula ha poco senso e ignora completamente qualunque sconto che potrebbe essere disponibile ordinando quantità maggiori.
Scarica il foglio Excel: eoq-calculator.xlsm (calcolo illustrato)
Pertanto, proponiamo qui una variante della formula EOQ che ottimizza il compromesso tra costi di mantenimento e sconti per quantità. Introduciamo le variabili:
- $${Z}$$ rappresenta la domanda durante il lead time.
- $${H}$$ rappresenta il costo di mantenimento per unità per la durata del lead time (1).
- $$\delta$$ rappresenta la quantità delta di inventario necessaria per raggiungere il punto di riordino (2).
- $${P}$$ rappresenta il prezzo d’acquisto per unità, funzione che dipende dalla quantità d’ordine q.
(1) L’ambito temporale considerato qui è il lead time. Pertanto, anziché considerare il più comune costo di mantenimento annuo $$H_y$$, consideriamo $$H = \frac{d}{365}H_y$$ assumendo che $$d$$ sia il lead time espresso in giorni.
(2) La quantità delta deve tenere conto sia dello stock disponibile $$q_{hand}$$ che dello stock in ordine $$q_{order}$$, il che porta alla relazione $$\delta = R - q_{hand} - q_{order}$$, dove $$R$$ è il punto di riordino. In modo intuitivo, $$\delta+1$$ rappresenta la quantità minima da ordinare per mantenere il livello di servizio.
Nonostante il suo aspetto apparentemente complicato, questa funzione può essere facilmente calcolata con Microsoft Excel, come illustrato dal foglio fornito sopra.
E per quanto riguarda il costo d’ordine?
A prima vista, potrebbe sembrare che si stia assumendo un costo d’ordine pari a zero, ma non è esattamente così. In effetti, il modello che introduciamo qui è relativamente flessibile e il costo d’ordine (se presente) può essere incorporato nella funzione del prezzo $$\mathcal{P}$$.
Funzione di costo
Per modellare la funzione di costo per la quantità d’ordine che tenga conto degli sconti per quantità, introduciamo $${R}$$, il punto di riordino. Il costo dell’inventario è la somma del costo di mantenimento dell’inventario e del costo d’acquisto, cioè
Infatti, considerando un punto di vista ammortizzato sul periodo di lead time, la quantità totale da ordinare sarà $${Z}$$ la domanda nel lead time.
Successivamente, il livello dell’inventario varia costantemente, ma se consideriamo solo i riordini minimi (cioè $${q=\delta+1}$$) allora il livello medio delle scorte nel tempo è pari a $${R}$$, il punto di riordino. Poiché stiamo considerando quantità d’ordine superiori a $${\delta+1}$$, quelle quantità ordinate in eccesso aumentano il livello medio dell’inventario (e posticipano anche il momento in cui verrà raggiunto il prossimo punto di riordino).
Il $${(q-\delta-1)/2}$$ rappresenta lo spostamento dell’inventario causato dal riordino, assumendo che la domanda durante il lead time sia distribuita uniformemente per tutta la sua durata. Il fattore $${1/2}$$ si giustifica poiché un incremento della quantità d’ordine di $${N}$$ incrementa solo il livello medio dell’inventario di $${N/2}$$.
Minimizzazione della funzione di costo
Per minimizzare $${C(q)}$$, possiamo iniziare isolando la parte che non dipende da $${q}$$ con:
Poiché $${RH}$$ non dipende da $${q}$$, l’ottimizzazione di $${C(q)}$$ equivale a quella di $${C^*(q)}$$, dove:
Quindi, in questo contesto, poiché la funzione degli sconti per quantità $$\mathcal{P}$$ è una funzione arbitraria, non esiste una soluzione algebrica diretta per minimizzare questa formula. Tuttavia, ciò non implica che tale minimizzazione sia difficile da risolvere.
Una semplice minimizzazione di $${C^*(q)}$$ consiste in una (semplicistica) ampia esplorazione numerica, ossia nel calcolare la funzione per un ampio intervallo di valori di $${q}$$. In effetti, quasi nessun’azienda richiede quantità d’ordine superiori a 1.000.000 di unità, e lasciare che un computer esplori tutti i valori di costo per $${q=1..1,000,000}$$ richiede meno di 1 secondo, anche se il calcolo viene effettuato con Excel su un computer desktop normale.
Tuttavia, in pratica, questo calcolo può essere notevolmente accelerato se assumiamo che $$\mathcal{P}(q)$$ sia una funzione strettamente decrescente, ovvero se il prezzo per unità diminuisce in modo netto all’aumentare della quantità d’ordine. Infatti, se $$\mathcal{P}(q)$$ diminuisce, possiamo iniziare l’esplorazione dei valori a partire da $${q=\delta+1}$$, iterare e infine fermarci non appena si verifica la condizione $${C^(q+1)>C^(q)}$$.
In pratica, il prezzo unitario raramente aumenta con la quantità, tuttavia, alcuni scostamenti locali nella curva possono essere osservati se le spedizioni sono ottimizzate per pallet, o per qualsiasi altro contenitore che favorisca determinate dimensioni di confezionamento.
Formula di Wilson
La formula EOQ più conosciuta è la Formula di Wilson sviluppata nel 1913. Questa formula si basa sulle seguenti ipotesi:
- Il costo d’ordine è fisso.
- Il tasso di domanda è noto ed è distribuito uniformemente durante l’anno.
- Il lead time è fisso.
- Il prezzo d’acquisto per unità è costante, ossia non è disponibile alcuno sconto.
Introduciamo le seguenti variabili:
- $${D_y}$$ rappresenta la quantità di domanda annua
- $${S}$$ rappresenta il costo fisso flat per ordine (non un costo per unità, ma il costo associato all’operazione di ordinare e spedire).
- $${H_y}$$ rappresenta il costo di mantenimento annuo
Sotto queste ipotesi, l’EOQ ottimale secondo Wilson è:
In pratica, suggeriamo di utilizzare una variante localmente adeguata (dal punto di vista temporale) di questa formula, in cui $${D_y}$$ viene sostituito da $${D}$$, il tasso di domanda previsto per la durata del lead time (ovvero la domanda durante il lead time $${Z}$$ diviso per il lead time), e in cui $${H_y}$$ viene sostituito da $${H}$$, il costo di mantenimento per la durata del lead time.
Confronto tra le due formule EOQ
Per il retail o il wholesale, riteniamo che la nostra formula EOQ ad hoc presentata all’inizio di questa pagina, che enfatizza gli sconti per quantità, sia più adatta e quindi più redditizia rispetto alla formula di Wilson. Per i produttori, invece, la situazione è diversa. In particolare, se l’ordine innesca una nuova produzione, allora potrebbe esserci un costo d’ordine significativo (setup di produzione) e benefici marginali sul costo per unità scarsi o nulli. In una tale situazione, la Formula di Wilson risulta più appropriata.