Ejemplo del Algoritmo de Wagner y Whitin (Sistemas de Loteo)

El Algoritmo de Wagner y Whitin (1958) consiste en una extensión natural y dinámica al problema de Tamaño Económico de Pedido (conocido también como Cantidad Económica de Pedido o EOQ) donde la demanda durante el período de planificación presenta variabilidad, no obstante, se sigue manteniendo el supuesto de asumir que dicha demanda es conocida.

De esta forma, dada una demanda que presenta variabilidad en el tiempo, costos de emisión de pedidos asociados a la gestión de los mismos y no al volumen involucrado en ellos, y costos de almacenamiento correspondientes al inventario de los productos almacenados en inventario, se busca determinar una política de pedidos que satisfaga los requerimientos de demanda al menor costo posible.

En este contexto asumiremos que el lead time (tiempo de reposición) es nulo, es decir, el pedido se recibe en el mismo período en el que se realiza y que adicionalmente estamos frente a un Problema de Tamaño de Lote No Capacitado, vale decir, que no existe limitantes de capacidad y que, eventualmente, se podría satisfacer la demanda íntegra del horizonte de planificación a través de un único pedido que se realice en el primer período (mediante la acumulación de inventarios para períodos futuros).

Un problema similar al que se aborda con el Algoritmo de Wagner y Whitin es el Problema de Producción e Inventario, en el cual frecuentemente se incorporan limitantes de capacidad para la cantidad de unidades que se pueden pedir en cada período, constituyendo de esta forma un problema capacitado.

Algoritmo de Wagner-Whitin

Los pasos detallados para la implementación del Algoritmo de Wagner y Whitin pueden encontrarse en la publicación académica original: Dynamic Version of the Economic Lot Size Model, (Versión Dinámica del Tamaño Económico de Pedido) disponible para descarga por un valor de 30 dólares. No obstante, a continuación resumiremos los pasos del algoritmo y presentaremos un ejemplo de su aplicación para favorecer su comprensión.

  • Paso 1: Considere la política de ordenar en el período t^{**}, t^{**}=1,2,…,t^{*} y satisfacer las demandas d_{t}, t=t^{**},t^{**}+1,…,t^{*} en ese orden.
  • Paso 2: Determine el costo total de las t^{*} políticas de pedido, sumando los costos de emisión y almacenamiento asociados a la emisión de un pedido en t^{**}, y el costo de actuar de forma óptima entre el período 1 y el período t^{**}-1 consideradas por si mismas.
  • Paso 3: De las t^{*} alternativas, seleccione la política de mínimo costo del período 1 hasta t^{*} consideradas de forma independiente.
  • Paso 4: Continué al período t^{*}+1 o detengase si t^{*}=N donde N representa el horizonte de planificación.

Ejemplo del Algoritmo de Wagner y Whitin

Consideremos las necesidades asociadas a un producto cualquiera para un período de planificación de 12 meses (N=12). La demanda Dt que se enfrenta cada mes es variable, como así también los costos de emitir un pedido (St), no obstante, el costo unitario de almacenar una unidad en inventario de un mes a otro (Ht) por simplicidad se asumirá que es fijo.

tabla demanda emisión almacenamiento

Aplicamos a continuación el Algoritmo de Wagner y Whitin:

El plan óptimo para el período 1 es ordenar (asumiendo un costo de emisión de $85).

Para el período 2 se deben evaluar 2 posibilidades:

  • ordenar en el período 2 y usar la mejor política para el período 1 considerado por si solo (con un costo de emisión de $102+$85=$187).
  • o emitir un pedido en el período 1 para ambos períodos (1 y 2), almacenando inventario para el período 2 (con un costo total de $85+$29=$114).

En este caso comparativamente es mejor la segunda alterativa.

En el período 3 existen tres alternativas:

  • emitir un pedido en el período 3 y utilizar la mejor política para los períodos 1 y 2 (a un costo de $102+$114=$216).
  • o emitir un pedido en el período 2 para los 2 últimos períodos (2 y 3) y utilizar la mejor política para el período 1 considerado de forma independiente (a un costo de $102+$36+$85=$223).
  • o emitir un pedido en el período 1 para los 3 períodos (con un costo de $85+$29+$36+$36=$186).

En nuestro ejemplo, resulta evidente que no existen incentivos para almacenar productos en inventario en el período 1 o 2 para satisfacer la demanda del período 4, dado que los costos de almacenamiento excederían los costos de emisión de pedido en el período 4. Si lo anterior es cierto, claramente no tiene sentido guardar inventario en el período 1 o 2 para satisfacer demanda de un período superior al 4 (5, 6, 7, etc).

Para los datos propuestos en nuestro ejemplo, la política óptima de pedidos según el Algoritmo de Wagner Whitin es la siguiente:

  1. Pedir 135 unidades (79+56) en el período 11 para satisfacer los requerimientos del período 11 y 12, y utilizar la política óptima para los períodos del 1 al 10.
  2. Emitir un pedido de 67 unidades para el período 10 y utilizar la política óptima de pedidos para los períodos 1 al 9.
  3. Pedir 112 unidades (67+45) en el período 8 para satisfacer la demanda de los períodos 8 y 9, y luego utilizar la mejor alternativa para los períodos del 1 al 7.
  4. Ordenar 121 unidades (61+26+34) en el período 5 para enfrentar la demanda de los períodos 5, 6 y 7.
  5. Pedir 97 unidades (36+61) en el período 3 para satisfacer la demanda de los períodos 3 y 4.
  6. Finalmente pedir 98 unidades (69+29) en el período 1 y con ello cumplir la demanda de los períodos 1 y 2.

La siguiente tabla resume los resultados anteriormente expuestos.

wagner y whitin

Al pie del cuadro resumen se detalla, por ejemplo, «567 indica la política óptima de pedido para los períodos del 1 al 7 es pedir en el período 5 y satisfacer la demanda de los períodos 5, 6 y 7 y adoptar una política óptima para los períodos 1 al 4 considerados de forma separada».

El costo asociado a implementar el Algoritmo de Wagner y Whitin al problema propuesto como ejemplo es de $864. Se propone al lector corroborar que dicha política minimiza los costos de inventario en comparación a otros sistemas de loteo como Costo Total Mínimo, Costo Unitario Mínimo, EOQ, entre otras.

Una forma de corroborar los resultados obtenidos es mediante una aplicación en Excel que permite automatizar los procesos de cálculo. Básicamente ingresando un inventario inicial (en nuestro ejemplo cero), la demanda pronosticada, los costos de emisión de pedidos y los costos de almacenamiento, se puede fácilmente aplicar una política de lotificación como aquellas que tratamos en extenso en el Plan de Requerimientos de Materiales (MRP).

wagner y whitin excel

Observación: La imagen anterior ha sido editada para efectos de una mejor resolución de modo que solo se visualiza los resultados parciales hasta el período 8. El archivo Excel con la aplicación donde se encuentran los resultados del ejemplo desarrollado en este artículo, como también la posibilidad de poder utilizarlo con otras políticas de lotificación se puede descargar a continuación.

[sociallocker]Descarga Aquí el Archivo Excel del Algoritmo de Wagner y Whitin: lotsizing[/sociallocker]

Problema de Tamaño de Lote No Capacitado (Formulación y Resolución en Solver)

El Problema de Tamaño de Lote No Capacitado o ULS (por sus siglas en inglés, Uncapacitated Lot-Sizing), consiste en decidir sobre un Plan de Producción para un horizonte de T periodos para un solo producto. El objetivo consiste en minimizar la sumatoria de los costos de producción, almacenamiento de productos en inventario y setup (costos de emisión), asumiendo que las demandas son conocidas en cada uno de los T periodos y éstas deben ser satisfechas de forma íntegra.

Una formulación típica del Problema de Tamaño de Lote No Capacitado considera los siguientes parámetros y variables de decisión.

Formulación Tradicional Problema de Tamaño de Lote No Capacitado

Variables de Decisión:

  • x_{t} = cantidad producida en el periodo t.
  • s_{t} = inventario al final del periodo t.
  • y_{t} = 1 si la producción ocurre en el periodo t, 0 si no.

Parámetros:

  • f_{t} = costo fijo de producción en el periodo t.
  • p_{t} = costo unitario de producción en el periodo t.
  • h_{t} = costo unitario de almacenamiento en el periodo t.
  • d_{t} = demanda en el periodo t.

La definición anterior da origen al siguiente problema de Programación Entera Mixta (PEM).

formulación tradicional tamaño de lote no capacitado

La función objetivo consiste en minimizar la suma de los costos de producción, costos de almacenamiento de productos en inventario y costos de emisión de pedidos, para todo el horizonte de planificación (T períodos).

Por otra parte las restricciones del problema quedan definidas por:

Balance de Inventario s_{t}=s_{t-1}+x_{t}-d_{t}: El inventario al final de un período t es igual al inventario al final del período anterior (t-1) más lo producido en el período t y menos lo demandado en el período t.

Capacidad de Producción x_{t}\leq M\cdot y_{t}: Si bien hemos definido el problema como no capacitado, esta restricción permite vincular la decisión de producción en un período con la cantidad (volumen) de dicha producción. De esta forma se evita situaciones anómalas como que en un período cualquiera se produzca y al mismo tiempo el y_{t} respectivo sea cero.

Además, asumiremos que la constante M es lo suficientemente grande (por ejemplo, la suma de las demandas para el horizonte de planificación). En términos prácticos esto hace que el problema no tenga limitantes de capacidad (es decir, es no capacitado) y que, en un extremo, podría producir en el primer período todo lo requerido durante el horizonte de planificación para luego ir satisfaciendo dichos requerimientos con los remanentes de inventario.

Inventario Inicial s_{0}=0: Se asume que no se dispone de inventario al inicio del horizonte de planificación.

Finalmente se establecen condiciones de no negatividad y binarios a las variables según corresponda.

Alternativamente se propone otra formulación como alternativa al Problema de Tamaño de Lote No Capacitado.

Formulación Dinámica Problema de Tamaño de Lote No Capacitado

Variables de Decisión:

  • w_{ts} = cantidad producida en el periodo t para satisfacer la demanda en el periodo s.
  • s_{ts} = inventario al final del periodo t destinado para el periodo s.
  • y_{t} = 1 si la producción ocurre en el periodo t, 0 si no.

Al conservar la definición de parámetros definida para la formulación anterior, se propone el siguiente modelo de Programación Entera:

formulación dinámica tamaño de lote no capacitado

De modo de corroborar la equivalencia de las formulaciones anteriores se propone una instancia sencilla que corresponde a 5 períodos de planificación (T=5) y donde los valores de los parámetros se resumen en la siguiente tabla. Por ejemplo, p_{1}=3 representa el costo de producción unitario en el período 1.

parámetros uls

La solución óptima alcanzada con la Formulación Tradicional del Problema de Tamaño de Lote No Capacitado ULS se observa en las celdas de color amarillo en la imagen a continuación. Se producen 32, 125 y 20 unidades en los períodos 1, 2 y 5, respectivamente, almacenando sólo productos en inventario al final del período 2 y 3 (84 y 36 unidades, respectivamente). El valor óptimo (costo total) asciende a $781.

solución óptima formulación tradicional uls

De forma análoga la solución óptima obtenida con la Formulación Dinámica del Problema de Tamaño de Lote No Capacitado ULS se observa en las celdas de color amarillo en la tabla a continuación.

Notar que w_{11}=32, es decir, en el primer período se produce sólo lo necesario para satisfacer los requerimientos de dicho período. Adicionalmente w_{22}=41, w_{23}=48 y w_{24}=36, es decir, en el período 2 se producen en total 125 unidades (41+48+36), para satisfacer la demanda de los períodos 2, 3 y 4. Por último en el período 5 se produce simplemente 20 unidades (w_{55}=20) para cumplir lo requerido.

Naturalmente dado lo descrito, la solución alcanzada en la Formulación Dinámica del ULS es equivalente a la obtenida en la Formulación Tradicional del ULS.

solución óptima formulación dinámica uls

Se puede consultar otras variantes de Problemas de Planificación de la Producción en nuestro sitio donde se detalla diversas formulaciones e instancias de problemas de esta naturaleza, donde destaca la contribución de la Investigación de Operaciones como herramienta de apoyo para la toma de decisiones.

[sociallocker]Descarga Aquí el Problema de Tamaño de Lote No Capacitado (ULS)[/sociallocker]

Problema de Transbordo en una Red Logística de Transporte Multiperíodo

Una empresa multinacional de productos de consumo masivo que opera a nivel nacional tiene 2 plantas de producción donde fabrican un solo producto para transportar a 2 locales con capacidad máxima de producción de 1.000 y 1.500 unidades mensuales, respectivamente. Uno de los locales está en el norte y otro en el sur de Chile. Para llegar a estos locales se tiene un centro de distribución que sólo abastece el norte y otro que sólo abastece el sur. Además de esto se tiene un centro de distribución en la ciudad capital (Santiago) que se abastece de los otros 2 centros de distribución y que despacha tanto al norte como al sur. Una red logística que representa el Problema de Transporte con Transbordo anterior se presenta a continuación:

red-logistica-de-transporte

La demanda de los locales para los próximos 2 meses es:

demanda-problema-transbordo

Adicionalmente sólo los centros de distribución norte y sur tienen capacidad para almacenar unidades de inventario de modo de satisfacer una demanda futura. El costo unitario mensual de almacenar inventario es de $1,5 y $0,8, para el centro de distribución norte y sur, respectivamente.

Formule y resuelva un modelo de Programación Lineal que permita determinar el plan de distribución óptimo para el problema de transbordo que representa la Gestión de una Cadena de Suministro. Defina claramente las variables de decisión, función objetivo y restricciones.

Problema de Transbordo en una Red Logística de Transporte

Variables de Decisión:

variables-de-decision-trans

Parámetros:

parametros-transbordo

Función Objetivo: se busca minimizar durante el período de planificación los costos de la logística de transporte desde las plantas a los centros de distribución, desde los centros de distribución a los locales, desde los centros de distribución a Santiago y desde Santiago a los locales, en conjunto con los costos de inventario en los centros de distribución.

funcion-objetivo-transbordo

Restricciones:

Capacidad de Producción de las Plantas: lo que envía mensualmente cada planta a cada uno de los centros de distribución (norte y sur) no puede superar la capacidad máxima de producción de la respectiva planta.

capacidad-plantas-transbord

Balance en los Centros de Distribución: la cantidad de productos que recibe un centro de distribución desde las plantas en un mes, considerando adicionalmente el inventario inicial y lo que se desee dejar en inventario al final del mes respectivo, deberá ser igual a lo que dicho centro de distribución envíe en aquel mes a los locales y al centro de distribución en Santiago.

balance-distribucion-transb

Demanda de los Locales: los productos que demande mensualmente cada local (1 o 2) deberá ser satisfecho desde los centros de distribución, incluyendo lo que eventualmente se envíe desde Santiago.

demanda-locales-transbordo

Balance en Santiago: los productos que recibe mensualmente Santiago desde los centros de distribución norte y sur deberá ser igual a lo que este centro de distribución envíe a los 2 locales que abastece (Santiago a diferencia de los centros de distribución norte y sur no almacena inventario).

balance-santiago

Rutas Infactibles: no es posible enviar productos de forma directa (en cualquiera de los meses) desde el centro de distribución norte al local 2 y desde el centro de distribución sur al local 1.

rutas-infactibles-transbord

No Negatividad: naturalmente las variables de decisión definidas inicialmente deberán adoptar valores mayores o iguales a cero.

A continuación se muestra un extracto de la implementación computacional del problema de transbordo haciendo uso de Solver de Excel. El valor óptimo es de $24.370.

solucion-optima-transbordo

Por otra parte las celdas en color amarillo corresponden a las variables de decisión (con color naranjo se identifican los parámetros), donde destaca que no se utiliza el centro de distribución sur. En cuanto al centro de distribución norte, éste se abastece de 1.620 unidades durante el mes de Julio (1.000 de la Planta 1 y 620 de la Planta 2), de los cuales envía 1.500 unidades a Santiago y las restantes 120 las almacena en inventario. De las 1.500 que dispone Santiago en el mes de Julio, envía 900 al Local 1 (Norte) y 600 al Local 2 (Sur) satisfaciendo la demanda. En cuanto al mes de Agosto, el centro de distribución norte recibe en total 2.500 unidades las cuales suma a las 120 en inventario que quedaron a fines de Julio, enviando todas ellas a Santiago. Luego de las 2.620 disponibles en Santiago en el mes de Agosto, envía 1.750 al Local 1 y 870 al Local 2, satisfaciendo la demanda de dichos destinos y minimizando el costo total de la logística de transporte.

¿Quieres tener el archivo Excel con la resolución en Solver del Problema de Transbordo en una Red Logística de Transporte Multiperíodo presentado en este ejemplo?

[sociallocker]

MUCHAS GRACIAS!. DESCARGA AQUÍ EL ARCHIVO

[/sociallocker]

Evaluación de Proveedores y Determinación del Tamaño Óptimo de Pedido utilizando EOQ con Descuentos

El siguiente artículo representa la evaluación de 2 proveedores que ofrecen un esquema de descuentos por cantidad por las unidades vendidas, asumiendo que se satisfacen los supuestos simplificadores del modelo de Cantidad Económica de Pedido o EOQ. En particular consideraremos que la demanda del producto es constante y conocida y adicionalmente que el costo unitario de compra dependerá del tamaño del pedido (en este sentido utilizaremos el modelo de Cantidad Económica de Pedido (EOQ) con Descuentos por Cantidad).

Ejemplo EOQ con Descuentos

Una compañía necesita comprar controles remotos y tiene una demanda semestral de 4.800 unidades. Los controles pueden ser comprados o del proveedor A o del B. Los precios por cantidad de cada proveedor están en la tabla abajo:

proveedores-eoq-con-descuen

El costo por pedido es de $30 para cualquiera de los proveedores y el costo anual de inventario es 25% del costo unitario. Adicionalmente la compañía incurre en un costo fijo por emitir un pedido de $10 por concepto de gastos administrativos. ¿De cuál proveedor la compañía debe comprar y cuál es el tamaño del pedido si el objetivo es minimizar costos totales anuales?.

En primer lugar determinamos el tamaño de pedido para cada uno de los tramos de descuentos por cantidad que aplican al Proveedor A. Notar que se considera una demanda anual de 9.600 controles remotos (un año tiene 2 semestres). Para el tramo 1 el pedido se aproxima a la cota superior de dicho intervalo; para el tramo 2 se mantiene el lote obtenido dado que pertenece al intervalo de [200,499] y en el tramo 3 se aproxima el tamaño de pedido a la cota inferior del intervalo (500 unidades) lo cual permite acceder a un precio unitario de $13,60.

eoq-tramos-proveedor-a

En consecuencia los candidatos a óptimo son pedidos de 199, 472 y 500 unidades para el Proveedor A. Para ver cuál de ellos reporta el menor costo total anual se evalúa en la función de costos totales:

costos-totales-proveedor-a

El tamaño óptimo de pedido en caso de seleccionar el Proveedor A es de 500 unidades por pedido.

En el caso del Proveedor B el procedimiento es similar al descrito para el Proveedor A. En este caso los candidatos a óptimo son pedidos de 149, 349 y 474 unidades.

eoq-tramos-proveedor-b

Al evaluar en la función de costos totales (anual) se observa que el tamaño de lote que minimiza los costos para el Proveedor B son 474 controles por pedido.

costos-totales-proveedor-b

Finalmente se procede a comparar los costos mínimos para cada proveedor con lo cual se concluye que se debe comprar al Proveedor A y hacer pedidos de 500 controles, alcanzando un costo total anual de $132.178 (que incluye los costos que se incurren anualmente por concepto de compra, emisión de pedidos y almacenamiento).

Cómo Construir el Gráfico de Costos Totales del Modelo EOQ con Excel

En el artículo Deducción de la Fórmula del modelo de Tamaño Económico de Pedido (EOQ) discutimos los fundamentos que permiten obtener la solución de dicho modelo, en particular aquel tamaño de pedido que permite minimizar la función de costos totales. Siguiendo dicho desarrollo conceptual, a continuación presentaremos un ejemplo tipo del modelo de Cantidad Económica de Pedido (EOQ) donde con el apoyo de una planilla Excel construiremos la función de costos totales, mediante la evaluación del costo total para distintos tamaños de pedido.

La Joyería Caminante es representante exclusivo de los relojes Ballon Bleu, de la prestigiosa Maison Cartier™, elaborados con oro gris y cubiertos con alrededor de 500 diamantes. Se sabe que:

  • Caminante le paga a Maison Cartier 40.000€ por cada reloj que importa al país.

  • Los costos de transporte e internación ascienden a 4.000€ por orden, independiente del número de relojes transportados.

  • Una vez en el país, los relojes representan un costo de almacenamiento anual del 20% de su precio, debido a los elevados seguros involucrados.

  • El mercado de compradores para este artículo de lujo es obviamente limitado en el país, pero en los últimos años las ventas de este producto se han estabilizado en la cantidad de 3 relojes mensuales.

Determine el número de relojes que Caminante debe pedir cada vez que pone una orden con Maison Cartier™, de modo de minimizar sus costos totales. ¿Cual es el costo total anual que enfrenta Caminante sin incluir el costo de comprar los productos?.

El tamaño óptimo de pedido que permite minimizar el valor de la función de costos totales es:

q-optimo-eoq-relojes

Donde el costo total (mínimo) asociado a dicho tamaño de pedido es:

costo-total-relojes

Notar que se han omitido los costos de compra los cuales en este ejemplo al no existir descuentos por cantidad es el mismo independiente del tamaño del pedido.

Con la ayuda de una planilla Excel se puede evaluar cuál es el costo total anual para distintos tamaños de pedido. En particular resulta de interés evaluar el valor que alcanza la función de costos totales para tamaños de pedido entre 1 y 36 relojes (la siguiente tabla muestra un extracto de dicho procedimiento).

tabla-costo-total-en-funcio

La información completa se puede graficar lo que permite apreciar la convexidad de la función de costos totales. Se ha incluido una línea punteada de color rojo que intercepta el eje vertical (costo total anual) para un valor de 48.000€ el cual se alcanza para un tamaño de pedido de 6 relojes.

grafico-costo-total-eoq