Optimización del Inventario Multiproducto en Espacios Reducidos: Una guía para la eficiencia en gestión de stocks

¿Alguna vez has sentido que tu almacén es como un rompecabezas imposible? Productos apilados, espacio limitado y clientes que esperan que todo esté listo en un chasquido de dedos. ¡No te preocupes! Hoy te guiaremos por un hechizo de optimización que hará que tu inventario sea tan eficiente como un caldero bien mezclado.
Con nuestro modelo de inventario multiproducto con espacio restringido, aprenderás a decidir qué almacenar, cuánto pedir y cuándo hacerlo, todo mientras mantienes tus costos bajo control y el espacio limitado de 4000 ft². ¡Prepárate para convertir el caos en magia pura!
¿Por Qué Optimizar el Inventario?
En un mundo donde el espacio es oro y los costos pueden salirse de control, optimizar el inventario es clave para:
- Reducir costos: Menos gastos en pedidos y almacenamiento.
- Evitar faltantes: Asegura que los clientes encuentren lo que buscan.
- Maximizar el espacio: Usa cada ft² de tu almacén de manera inteligente.
- Mejorar la satisfacción: Clientes felices = negocio próspero.
Este modelo es como una varita mágica: equilibra la demanda, los costos y el espacio para que tu almacén brille.
Nuestro Escenario Mágico
Imagina que manejas un almacén con dos productos estrella:
- Artículo 1: Varita Encantada
- Demanda (\(D_1\)): 10,000 unidades/año
- Costo de ordenar (\(Co_1\)): $300/orden
- Costo unitario (\(C_1\)): $20/unidad
- Costo de mantener (\(i \cdot C_1\)): 20% ($4/unidad/año)
- Espacio (\(S_1\)): 3 ft²/unidad
- Artículo 2: Poción de Transformación
- Demanda (\(D_2\)): 20,000 unidades/año
- Costo de ordenar (\(Co_2\)): $300/orden
- Costo unitario (\(C_2\)): $25/unidad
- Costo de mantener (\(i \cdot C_2\)): 20% ($5/unidad/año)
- Espacio (\(S_2\)): 4 ft²/unidad
Restricción: El inventario promedio anual debe ocupar exactamente 4000 ft².
El Desafío: Un Almacén Sobrecargado
Inicialmente, calculamos las cantidades económicas de pedido (EOQ) sin considerar la restricción de espacio:
- Varita: \(Q_1 = 1222.74\) unidades por pedido (costo: $4,898.98).
- Poción: \(Q_2 = 1549.19\) unidades por pedido (costo: $7,745.97).
- Espacio total: 4935.5 ft².
¡Ups! Esto excede los 4000 ft² permitidos. Necesitamos un hechizo de optimización para ajustar las cantidades y cumplir con la restricción, sin disparar los costos.
La Magia del Multiplicador de Lagrange
Para resolver este problema, usamos el método de los multiplicadores de Lagrange. Este enfoque combina los costos totales con la restricción de espacio. La función de Lagrange es:
Donde:
- \(Q_1, Q_2\): Cantidades de pedido para cada artículo.
- \(\lambda\): Multiplicador de Lagrange (costo adicional por ft²).
- Restricción: \(1.5 Q_1 + 2 Q_2 = 4000\).
Derivamos con respecto a \(Q_1\), \(Q_2\), y \(\lambda\), e igualamos a cero:
Usando \(\lambda = 0.669 \, \$/\text{ft}^2\) (calculado con Solver), encontramos:
- Varita: \(Q_1 = \sqrt{\frac{10,000 \cdot 300}{\frac{0.2 \cdot 20}{2} + 1.5 \cdot 0.669}} \approx 999.41 \approx 999\) unidades.
- Poción: \(Q_2 = \sqrt{\frac{20,000 \cdot 300}{\frac{0.2 \cdot 25}{2} + 2 \cdot 0.669}} \approx 1250.32 \approx 1250\) unidades.
Resolviendo con Python: Automatizando la Magia
¿Y si usamos código para encontrar \(\lambda\), \(Q_1\), y \(Q_2\)? Aquí te mostramos cómo implementar el método de Lagrange en Python usando la biblioteca SciPy para resolver las ecuaciones no lineales. El siguiente script calcula las cantidades óptimas de pedido y verifica la restricción de espacio.
import numpy as np
from scipy.optimize import fsolve
# Datos del problema
D1, D2 = 10000, 20000 # Demanda anual (unidades/año)
Co1, Co2 = 300, 300 # Costo de ordenar ($/orden)
C1, C2 = 20, 25 # Costo unitario ($/unidad)
i = 0.2 # Tasa de interés (20%)
S1, S2 = 3, 4 # Espacio por unidad (ft²)
R = 4000 # Restricción de espacio (ft²)
# Costo de mantener inventario
h1 = i * C1 # $4/unidad/año
h2 = i * C2 # $5/unidad/año
# Sistema de ecuaciones del método de Lagrange
def equations(vars):
Q1, Q2, lambda_ = vars
eq1 = -D1 * Co1 / Q1**2 + h1 / 2 + 1.5 * lambda_
eq2 = -D2 * Co2 / Q2**2 + h2 / 2 + 2 * lambda_
eq3 = 1.5 * Q1 + 2 * Q2 - R
return [eq1, eq2, eq3]
# Resolver el sistema
Q1, Q2, lambda_ = fsolve(equations, [1000, 1000, 0.5])
# Calcular costos totales
TC1 = (D1 * Co1 / Q1) + (Q1 * h1 / 2)
TC2 = (D2 * Co2 / Q2) + (Q2 * h2 / 2)
total_cost = TC1 + TC2
total_space = (Q1 / 2) * S1 + (Q2 / 2) * S2
# Mostrar resultados
print(f"Cantidad óptima Q1 (Varita): {Q1:.2f} unidades")
print(f"Cantidad óptima Q2 (Poción): {Q2:.2f} unidades")
print(f"Multiplicador de Lagrange (λ): {lambda_:.3f} $/ft²")
print(f"Costo total Varita: ${TC1:.2f}/año")
print(f"Costo total Poción: ${TC2:.2f}/año")
print(f"Costo total combinado: ${total_cost:.2f}/año")
print(f"Espacio total: {total_space:.2f} ft²")
Resultados del código:
- Cantidad óptima \(Q_1\) (Varita): 999.42 unidades
- Cantidad óptima \(Q_2\) (Poción): 1250.32 unidades
- Multiplicador de Lagrange (\(\lambda\)): 0.669 $/ft²
- Costo total Varita: $5000.62/año
- Costo total Poción: $7924.57/año
- Costo total combinado: $12925.19/año
- Espacio total: 3999.77 ft² (¡cumple con 4000 ft²!)
¿Cómo funciona el código?
- Importamos
numpypara cálculos numéricos yfsolvedescipy.optimizepara resolver el sistema no lineal. - Definimos los datos del problema (demandas, costos, espacios).
- Planteamos las tres ecuaciones derivadas de la función de Lagrange.
- Usamos
fsolvecon valores iniciales aproximados para encontrar \(Q_1\), \(Q_2\), y \(\lambda\). - Calculamos los costos totales y el espacio ocupado para verificar los resultados.
Resultados de la Optimización
La nueva política optimizada, confirmada por el código Python, es:
- Varita Encantada: Ordenar 999 unidades.
- Espacio promedio: \(\frac{Q_1}{2} \cdot S_1 = \frac{999}{2} \cdot 3 = 1499.11 \, \text{ft}^2\).
- Costo total: \(\frac{D_1 Co_1}{Q_1} + \frac{Q_1 (i C_1)}{2} = \frac{10,000 \cdot 300}{999} + \frac{999 \cdot 4}{2} \approx 5000.62 \, \$/\text{año}\).
- Poción de Transformación: Ordenar 1250 unidades.
- Espacio promedio: \(\frac{Q_2}{2} \cdot S_2 = \frac{1250}{2} \cdot 4 = 2500.64 \, \text{ft}^2\).
- Costo total: \(\frac{D_2 Co_2}{Q_2} + \frac{Q_2 (i C_2)}{2} = \frac{20,000 \cdot 300}{1250} + \frac{1250 \cdot 5}{2} \approx 7924.57 \, \$/\text{año}\).
Espacio total: \(1499.11 + 2500.64 = 3999.75 \, \text{ft}^2 \approx 4000 \, \text{ft}^2\).
Costo total: \(5000.62 + 7924.57 = 12925.19 \, \$/\text{año}\).
Comparamos con los valores iniciales:
- Costo inicial: $12,644.95.
- Espacio inicial: 4935.5 ft² (¡excede el límite!).
- Reducción: Las cantidades de pedido son ~81% de las iniciales (\(\frac{999}{1222.74} \approx 81.74\%\), \(\frac{1250}{1549.19} \approx 80.71\%\)).
Visualización de Costos
El siguiente gráfico compara los costos iniciales y optimizados:
Análisis del Impacto
¿Qué logramos con esta optimización?
- Cumplimiento del espacio: Redujimos el espacio de 4935.5 ft² a 4000 ft², cumpliendo con la restricción.
- Costos controlados: El costo total aumentó solo un 2.2% (\(\frac{12925.19 - 12644.95}{12644.95} \approx 0.022\)), un pequeño precio por cumplir con el límite de espacio.
- Eficiencia operativa: Menos pedidos más pequeños significan mejor uso del espacio y menos riesgo de sobrestock.
Este modelo demuestra que, con un ajuste mínimo, puedes cumplir restricciones estrictas sin sacrificar demasiado la eficiencia económica.
Consejos para Implementar esta Magia en tu Almacén
¿Listo para aplicar este hechizo en tu negocio? Aquí van algunos consejos prácticos:
- Usa software de optimización: Además de Python, herramientas como Excel Solver o software de gestión de inventarios (SAP, Oracle) pueden calcular \(\lambda\) y las cantidades óptimas.
- Revisa tus datos: Asegúrate de tener demandas, costos y espacios precisos. Un error pequeño puede alterar los resultados.
- Monitorea constantemente: Las demandas cambian. Revisa tu modelo cada trimestre para ajustar los pedidos.
- Capacita a tu equipo: Explica la importancia del modelo para que todos en el almacén estén alineados.
- Explora alternativas: Si el espacio sigue siendo un problema, considera almacenamiento vertical o outsourcing.
Preguntas Frecuentes (FAQ)
¿Qué es el multiplicador de Lagrange?
Es una herramienta matemática que optimiza una función (como los costos) sujeta a una restricción (como el espacio). Aquí, \(\lambda = 0.669 \, \$/\text{ft}^2\) representa el costo adicional por unidad de espacio.
¿Por qué aumentaron los costos?
Al reducir las cantidades de pedido para cumplir con el espacio, aumentan los costos de ordenar (más pedidos frecuentes). Sin embargo, el aumento es mínimo (2.2%) y vale la pena por cumplir la restricción.
¿Puedo usar este modelo con más productos?
¡Sí! El modelo es escalable. Solo necesitas agregar más términos a la función de Lagrange y ajustar la restricción de espacio para cada producto adicional. El código Python también se puede extender para más variables.
Conclusión
La optimización de inventarios es como lanzar un hechizo perfecto: requiere precisión, pero los resultados son mágicos. Con este modelo, ya sea calculado manualmente, excel o Python, logramos ajustar el inventario a 4000 ft², manteniendo los costos bajo control. Usa esta guía, personaliza el código o la hoja de cálculo, y transforma tu almacén en un ejemplo de eficiencia.
Créditos: Basado en Operations and Supply Chain Management por Prof. G. Srinivasan, IIT Madras.