Saltar al contenido principal

Modelo de costos

El modelo de costos que minimiza el optimizador: costo de mantener (holding) + costo de faltante (shortage) = costo total esperado.

Los dos componentes del costo

El optimizador de AInventory minimiza una función de costo con dos términos:

Costo total esperado = E[Holding] + E[Shortage]

Ambos se calculan promediando sobre todos los escenarios Monte Carlo de un SKU.

Holding (costo de mantener inventario)

El holding captura el costo de tener unidades en stock que no se vendieron:

Holding = (Σ_{h=1}^{W} inv_fin[h]) × tarifa_almacenamiento

La tarifa de almacenamiento es el costo por unidad por periodo de mantener inventario (incluye el costo de capital inmovilizado, el espacio físico y el riesgo de obsolescencia). La suma de inventarios finales sobre los W horizontes de la ventana penaliza el exceso acumulado: cuanto más stock sobrante por más tiempo, mayor el holding.

Shortage (costo de faltante)

El shortage captura el costo de no poder satisfacer la demanda:

Shortage = unidades_no_servidas × penalización_por_faltante

La penalización por faltante refleja el costo unitario de no tener inventario cuando se necesita: ventas perdidas, penalizaciones contractuales, urgencias de reposición o daño a la relación con el cliente. En la mayoría de los contextos, la penalización por faltante supera con creces la tarifa de almacenamiento —a veces por un orden de magnitud—, lo que lleva al optimizador a preferir niveles de servicio altos.

Por qué no hay costo de ordenar

El modelo no incluye un costo de ordenar (setup cost o ordering cost). En la práctica, la mayoría de las categorías de productos en AInventory tienen costos de ordenar marginales o nulos (órdenes electrónicas, proveedores con los que ya existe relación comercial). La única restricción sobre el tamaño del pedido es el MOQ (Minimum Order Quantity): si Q calculado es menor que el MOQ del proveedor, se redondea al MOQ.

Implicación del modelo sin costo de ordenar

Sin costo de ordenar, el modelo nunca tiene incentivo para hacer pedidos grandes para "aprovechar el viaje"; el único freno es el MOQ. Esto significa que el tamaño del pedido óptimo refleja genuinamente la cobertura necesaria sin distorsiones de economías de escala artificiales.

La curva de costo total vs k

Para las políticas que usan el factor k, el optimizador evalúa cada valor del grid de k y calcula el costo total esperado correspondiente. La curva resultante tiene forma de U (convexa) con un mínimo:

  • Para k muy bajo: el holding es pequeño pero el shortage domina. El stock es insuficiente para cubrir los escenarios de alta demanda.
  • Para k muy alto: el shortage es casi nulo pero el holding domina. El stock excede lo que la demanda realista puede absorber.
  • En el punto óptimo k*: los incrementos marginales de k ya no reducen el shortage lo suficiente para compensar el aumento de holding.

El sistema identifica k* como el argmin de esa curva:

k* = argmin_{k} E[holding(k) + shortage(k)]

Diagnóstico por dominancia de costo

La composición del costo total en el k óptimo también tiene valor diagnóstico:

  • Si el holding domina: el sistema está sobredimensionado para este SKU. El optimizador podría estar respondiendo a una penalización de shortage excesivamente alta en los parámetros, o bien el SKU tiene un patrón de demanda muy estable que no justifica tanto buffer.
  • Si el shortage domina: el sistema está sub-dimensionado. Probablemente el lead time es largo, la demanda es muy volátil, o la penalización de shortage no refleja el costo real de los faltantes.

Ninguno de los dos casos es un error del modelo: son señales sobre los parámetros de entrada o sobre las características del SKU que el planificador puede investigar.