Quantità economica di ordinazione (EOQ)

learn menu
Di Joannes Vermorel, gennaio 2012

L’EOQ è la quantità di ordine di acquisto per il riapprovvigionamento che minimizza i costi di inventario totali. L’ordine di acquisto viene attivato quando il livello di inventario raggiunge il punto di riordino. L’EOQ viene calcolato al fine di minimizzare una combinazione di costi come il costo di acquisto (che può includere sconti sul volume), il costo di mantenimento dell’inventario, il costo di ordinazione, ecc. L’ottimizzazione della quantità di ordine è complementare all’ottimizzazione delle scorte di sicurezza che si concentra nel trovare la soglia ottimale per attivare il riordino.

Aggiornamento luglio 2020: L’EOQ è una prospettiva piuttosto datata, profondamente radicata in una prospettiva stazionaria in cui la domanda futura non è solo perfettamente nota, ma anche costante. Le formule fornite di seguito potrebbero sembrare “di libro” per la supply chain, ma la prospettiva sottostante è intrinsecamente errata. Le previsioni di domanda probabilistiche associate alla valutazione del contributo economico marginale di ogni singola unità di magazzino in più rappresentano un approccio molto migliore. Non raccomandiamo più di utilizzare il concetto di EOQ.

Modello e formula

La formula classica dell’EOQ (vedi la formula di Wilson di seguito) è essenzialmente un trade-off tra il costo di ordinazione, considerato una tariffa fissa per ordine, e il costo di mantenimento dell’inventario. Sebbene questa formula risalga al 1913 ed è estremamente nota, *sconsigliamo di utilizzare una tale formula in qualsiasi ambiente di supply chain moderno. Le assunzioni matematiche sottostanti a questa formula sono semplicemente errate ai giorni nostri.

La formula storica assume che il costo dell’atto di ordinazione sia il principale driver aziendale. Certamente era un fattore importante nel 1913 quando era necessario un esercito di impiegati per tenere traccia manualmente dei libri, ma con il software di gestione delle scorte e eventualmente l’EDI, questo fattore di solito è insignificante. Di conseguenza, l’“ottimizzazione” eseguita dalla formula ha poco senso e ignora completamente qualsiasi sconto di prezzo che può essere disponibile quando si ordinano quantità maggiori.

Scarica il foglio Excel: eoq-calculator.xlsm (calcolo illustrato)

Pertanto, proponiamo qui una variante della formula EOQ che ottimizza il trade-off tra i costi di mantenimento e gli sconti sul volume. Introduciamo le variabili:

  • $${Z}$$ sia la domanda prevista.
  • $${H}$$ sia il costo di mantenimento per unità per la durata del tempo di approvvigionamento (1).
  • $$\delta$$ sia la quantità di inventario delta necessaria per raggiungere il punto di riordino (2).
  • $${P}$$ sia il prezzo di acquisto per unità, una funzione che dipende dalla quantità di ordine q

(1) Lo scope temporale considerato qui è il tempo di approvvigionamento. Pertanto, anziché considerare il più comune costo di mantenimento annuale $$H_y$$, stiamo considerando $$H = \frac{d}{365}H_y$$ assumendo che $$d$$ sia il tempo di approvvigionamento espresso in giorni.

(2) La quantità delta deve tener conto sia delle scorte disponibili $$q_{hand}$$ che delle scorte in ordine $$q_{order}$$, il che dà la relazione $$\delta = R - q_{hand} - q_{order}$$ dove $$R$$ è il punto di riordino. In modo intuitivo, $$\delta+1$$ è la quantità minima da ordinare per mantenere il livello di servizio desiderato.

$$Q = \underset{q=\delta+1..\infty}{\operatorname{argmin}}\left(\frac{1}{2}(q-\delta-1)H+Z\mathcal{P}(q)\right)$$

Nonostante il suo aspetto apparentemente complicato, questa funzione può essere facilmente calcolata con Microsoft Excel, come illustrato dal foglio fornito qui sopra.

E il costo dell’ordine?

A prima vista, potrebbe sembrare che stiamo assumendo un costo di ordinazione zero, ma non è esattamente così. Infatti, il framework che introduciamo qui è relativamente flessibile e il costo dell’ordine (se presente) può essere incorporato nella funzione di prezzo $$\mathcal{P}$$.

Funzione di costo

Per modellare la funzione di costo per la quantità di ordine che tiene conto degli sconti sul volume, introduciamo $${R}$$ il punto di riordino. Il costo dell’inventario è la somma del costo di mantenimento dell’inventario più il costo di acquisto, cioè

$$C(q)=\left(R+\frac{q-\delta-1}{2}\right)H+Z\mathcal{P}(q)$$

Infatti, prendendo un punto di vista ammortizzato nel periodo di tempo di approvvigionamento, la quantità totale da ordinare sarà $${Z}$$ la domanda prevista.

Quindi, il livello di inventario varia continuamente nel tempo, ma se consideriamo riordini minimi rigorosi (cioè $${q=δ+1}$$), allora il livello medio di scorte nel tempo è uguale a $${R}$$ il punto di riordino. Quindi, poiché stiamo considerando precisamente quantità di ordine superiori a $${δ+1}$$, quelle quantità extra ordinate spostano verso l’alto il livello medio di inventario (e ritardano anche il momento in cui verrà raggiunto il prossimo punto di riordino).

Il termine $${(q−δ−1)/2}$$ rappresenta lo spostamento dell’inventario causato dal riordino assumendo che la domanda prevista sia distribuita uniformemente per la durata del tempo di approvvigionamento. Il fattore $${1/2}$$ è giustificato perché una quantità di ordine aumentata di $${N}$$ aumenta solo il livello medio di inventario di $${N/2}$$.

Minimizzazione della funzione di costo

Per minimizzare $${C(q)}$$, possiamo iniziare isolando la parte che non dipende da $${q}$$ con:

$$C(q)=\left(R+\frac{q-\delta-1}{2}\right)H+Z\mathcal{P}(q)$$

Poiché $${RH}$$ non dipende da $${q}$$, ottimizzare $${C(q)}$$ è lo stesso che ottimizzare $${C∗(q)}$$ dove:

$$C^*(q)=\frac{1}{2}(q-\delta-1)H+Z\mathcal{P}(q)$$

Quindi, in questo contesto, poiché la funzione di sconto sul volume $$\mathcal{P}$$ è una funzione arbitraria, non esiste una soluzione algebrica diretta per minimizzare questa formula. Tuttavia, ciò non implica che questa minimizzazione sia difficile da risolvere.

Una semplice minimizzazione per $${C^∗(q)}$$ consiste in una (naive) esplorazione numerica estensiva, ovvero calcolare la funzione per un’ampia gamma di valori di $${q}$$. Infatti, praticamente nessuna azienda ha bisogno di quantità di ordine superiori a 1.000.000 unità, e lasciare che un computer esplori tutti i valori dei costi per $${q=1..1.000.000}$$ richiede meno di 1 secondo anche se il calcolo viene eseguito in Excel su un computer desktop normale.

Tuttavia, nella pratica, questo calcolo può essere notevolmente accelerato se assumiamo che $$\mathcal{P}(q)$$ sia una funzione strettamente decrescente, cioè il prezzo per unità diminuisce rigorosamente quando la quantità di ordine aumenta. Infatti, se $$\mathcal{P}(q)$$ diminuisce, allora possiamo iniziare l’esplorazione del valore a $${q=δ+1}$$, iterare e infine fermarci ogni volta che si verifica la situazione $${C^∗(q+1)>C^∗(q)}$$.

Nella pratica, il prezzo unitario raramente aumenta con le quantità, tuttavia, potrebbero essere osservate alcune irregolarità locali nella curva se le spedizioni sono ottimizzate per i pallet o per qualsiasi altro contenitore che favorisce determinate dimensioni del pacchetto.

Nel foglio Excel allegato qui sopra, assumiamo che il prezzo unitario diminuisca rigorosamente con la quantità. Se non è il caso, modifica la macro EoqVD() per tornare a un’esplorazione di intervallo naive.

Formula di Wilson

La formula EOQ più nota è la formula di Wilson sviluppata nel 1913. Questa formula si basa sulle seguenti ipotesi:

  • Il costo di ordinazione è fisso.
  • Il tasso di domanda è noto e distribuito uniformemente durante l’anno.
  • Il tempo di consegna è fisso.
  • Il prezzo unitario di acquisto è costante, ovvero non è disponibile alcuno sconto.

Introduciamo le seguenti variabili:

  • $${D_y}$$ sia la quantità di domanda annuale
  • $${S}$$ sia il costo fisso flat per ordine (non un costo per unità, ma il costo associato all’operazione di ordinazione e spedizione).
  • $${H_y}$$ sia il costo di mantenimento annuale

Sotto queste ipotesi, l’EOQ ottimale di Wilson è:

$$Q=\sqrt{\frac{2D_yS}{H_y}}$$

Nella pratica, suggeriamo di utilizzare una variante più localmente adattata (in termini di tempo) di questa formula in cui $${D_y}$$ viene sostituito da $${D}$$, il tasso di domanda previsto per la durata del tempo di consegna (detto anche domanda di punta $${Z}$$ diviso per il tempo di consegna), e in cui $${H_y}$$ viene sostituito da $${H}$$, il costo di mantenimento per la durata del tempo di consegna.

Confronto delle due formule EOQ

Per il commercio al dettaglio o all’ingrosso, riteniamo che la nostra formula EOQ ad hoc presentata in cima a questa pagina, che enfatizza gli sconti sul volume, sia più adatta e quindi più redditizia della formula di Wilson. Per i produttori, dipende. In particolare, se l’ordine attiva una nuova produzione, allora effettivamente potrebbe esserci un costo di ordinazione significativo (impostazione della produzione) e pochi o nessun beneficio nel costo marginale dell’unità successivamente. In una situazione del genere, la formula di Wilson è più appropriata.