O algoritmo de Wagner-Whitin, criado por Harvey M. Wagner e Thomson M. Whitin em 1958, é uma técnica matemática complexa para o dimensionamento de lotes e que faz uma avaliação das várias formas possíveis de se efectuar uma encomenda de maneira a satisfazer as exigências em cada período do horizonte de planeamento(Dicionário, 2008).
Este algoritmo apenas se aplica a produtos com procura determinística discreta, utilizando a programação dinâmica para minimização dos custos associados à gestão dos stocks e para se obter as quantidades óptimas de encomenda (Gestão, 2008).
Existem duas propriedades que a solução óptima deste algoritmo tem de satisfazer (Gonçalves, 2000, p. 32):
Uma encomenda só chega quando o nível de stocks atinge o zero.
Existe um limite superior para o número de períodos para os quais uma encomenda durará.
O algoritmo de Wagner-Whitin, normalmente é utilizado como benchmark para avaliação de modelos alternativos, pois conduz a soluções óptimas. No entanto, é frequente que se adoptem modelos mais simples para a resolução deste tipo de problemas devido à sua complexidade(Gestão, 2008).
Formulação de Gonçalves
Para este algoritmo utilizam-se as seguintes variáveis:
= custo do conjunto de encomendas desde o início do período até ao início do período . e o início de um período corresponde ao fim do período anterior.
= custo de uma encomenda que chega no período e que satisfaz a procura até ao início do período .
O custo da solução óptima é dado por . Este algoritmo tem início no último período N e repete-se até ao período 1 (Gonçalves, 2000, p. 33).
Para a segunda propriedade, que se justifica pelo facto de um aumento do número de períodos aumentar os custos de posse de tal maneira que é melhor fazer uma nova encomenda, utiliza-se a seguinte expressão(Gonçalves, 2000, p. 33, 38):
Esta propriedade diz que, quando o custo de posse da quantidade é maior que o custo de encomenda, , então a solução óptima deverá ter uma encomenda que chegue no período (Gonçalves, 2000, p. 38).
Segundo Tersine (1988, p. 165) este algoritmo resolve-se em três etapas:
1. Para todas as alternativas possíveis de encomendas, para um horizonte de tempo de períodos, calcular a matriz dos custos variáveis totais. Definir como o custo variável total nos períodos a , de fazer uma encomenda no período que satisfaz as necessidades dos períodos a
2. Definir como o mínimo custo possível nos períodos 1 a . O algoritmo começa com e calcula …, por esta ordem. O valor de é calculado usando a fórmula:
= 1, 2, …,
3. De maneira a traduzir a solução óptima , obtida pelo algoritmo, em quantidades a encomendar, aplicar o seguinte:
A encomenda final ocorre no período e é suficiente para satisfazer a procura nos períodos a .
A penúltima encomenda ocorre no período e é suficiente para satisfazer a procura nos períodos a .
A primeira encomenda ocorre no período 1 e é suficiente para satisfazer a procura nos períodos 1 até .
Um artigo tem um custo unitário de 50 UM, custo de encomenda de 100 UM e uma fracção do custo de posse por período de 0,02. Suponha-se que o nível das existências, no início do período 1, é zero e as procuras são as seguintes:
Período
1
2
3
4
5
6
Procura
75
0
33
28
0
10
A matriz dos custos variáveis totais é calculada da seguinte maneira:
O mínimo custo possível nos períodos 1 a é determinado da seguinte maneira (Tersine, 1988, p. 167):
= (100 + 0) = 100
= 100
= 166
= 228
= 228
= 258
Neste exemplo, é a combinação de e , deste modo a última encomenda é efectuada no período 3 e vai satisfazer as necessidades dos períodos 3 a 6; é a combinação de e , deste modo a encomenda é feita no período 1 e vai satisfazer as necessidades dos períodos 1 a 2. A programação óptima das encomendas e os custos variáveis cumulativos são os seguintes (Tersine, 1988, p. 168):