El Problema ELSP

Economic Lot Scheduling Problem: cuando múltiples productos comparten capacidad de producción limitada, no basta con calcular el EOQ de cada uno por separado.

El problema

Imagina una fábrica con una única máquina capaz que debe fabricar varios productos distintos. Si solo hubiera un producto, el problema sería sencillo: calcular el lote óptimo (EOQ) y repetirlo indefinidamente. El verdadero problema aparece cuando hay varios productos que compiten por el mismo recurso.

Si no hubiera tiempos de setup, la máquina podría pasar de un producto a otro de forma instantánea y sin coste. Podría fabricar lotes infinitamente pequeños, reponiendo cada producto exactamente cuando se necesita. El stock sería prácticamente nulo. El setup es la raíz del problema.

Pero los setups existen y consumen tiempo de máquina. Cada vez que se cambia de producto hay que limpiar, ajustar, calibrar. Ese tiempo no produce nada y, sin embargo, consume la capacidad más escasa del sistema.

Lotes cortos

Poco stock, alta flexibilidad, respuesta rápida a la demanda. Pero muchos cambios de producto: los setups se acumulan y pueden agotar la capacidad disponible. El plan deja de ser factible.

Lotes largos

Pocos setups, capacidad garantizada, plan siempre factible. Pero cada producto acumula grandes cantidades antes de consumirse: se necesitan más almacenes y más capital inmovilizado.

El ELSP busca el equilibrio: lotes suficientemente grandes para que la máquina pueda fabricar todos los productos dentro del tiempo disponible, pero tan pequeños como sea posible para no disparar el stock. La solución pasa por coordinar el ritmo de todos los productos a la vez, no optimizar cada uno por separado.

Del EOQ al ELSP

Recordatorio: EOQ básico

El modelo EOQ asume que podemos pedir (o fabricar) cualquier cantidad en cualquier momento. La fórmula óptima es:

\[ Q^* = \sqrt{\frac{2DS}{h}} \]

Donde:

  • D: Demanda anual
  • S: Coste de setup (preparación de máquina)
  • h: Coste de almacenamiento unitario

¿Qué pasa con múltiples productos?

Caso sin restricción

Si cada producto tiene su propia máquina o línea, calculamos EOQ independientemente para cada uno. No hay problema.

Caso ELSP

Si todos comparten la misma máquina, hay una restricción de capacidad. Los EOQ individuales pueden no ser factibles. ¡Problema!

La Restricción de Capacidad

Formulación matemática

Definimos la notación del problema:

  • \( K \) — horas disponibles por semana en la máquina
  • \( d_i \) — demanda semanal del producto \(i\) (uds/semana)
  • \( p_i \) — ritmo de producción del producto \(i\) (uds/hora)
  • \( TS_i \) — tiempo de setup del producto \(i\) (horas)

Si adoptamos un ciclo básico común de duración \(T\) semanas, en cada ciclo se produce una vez cada producto. Por ciclo, el tiempo total consumido debe caber en el tiempo disponible:

\[ \sum_{i=1}^{n} \left( TS_i + \frac{d_i \cdot T}{p_i} \right) \leq K \cdot T \]

Tiempo de producción por ciclo

\( \dfrac{d_i \cdot T}{p_i} \) = Unidades del ciclo ÷ Ritmo

Ejemplo: 200 uds/sem × 2 sem ÷ 20 uds/h = 20 h

Tiempo de setup por ciclo

\( TS_i \) = horas de preparación (una vez por ciclo)

Ejemplo: 2 horas de cambio de herramienta

Despejando \(T\) se obtiene el ciclo mínimo factible:

\[ T \geq \frac{\displaystyle\sum_{i} TS_i}{K - \displaystyle\sum_{i} \dfrac{d_i}{p_i}} \]
Si los EOQ individuales hacen que la suma supere \(K\), el plan NO es factible. Hay que coordinar los lotes con un ciclo común.

El Trade-off del ELSP

El ELSP añade un nuevo trade-off al clásico setup vs inventario:

Lotes pequeños

  • Menos inventario
  • Muchos setups
  • Puede no caber en capacidad

Lotes grandes

  • Menos setups
  • Cabe en capacidad
  • Mucho inventario

El dilema del ELSP

No podemos minimizar inventario Y setup simultáneamente mientras respetamos la capacidad. Hay que encontrar un equilibrio coordinado entre todos los productos.

Ejemplo Numérico

Caso: Prensa de estampación con 3 productos

Una prensa trabaja \( K = 40 \) horas/semana. Fabrica 3 piezas de chapa con estos parámetros:

Producto Demanda \(d_i\)
uds/semana
Setup \(TS_i\)
horas
Ritmo \(p_i\)
uds/hora
Coste inv. \(h_i\)
€/ud·semana
A 200 2 20 1.0
B 150 3 12.5 1.5
C 100 4 10 2.0

Paso 1: Calcular EOQ individual

Si no hubiera restricción de capacidad compartida, calcularíamos el lote óptimo de cada producto por separado:

Producto A: \[ Q_A^* = \sqrt{\frac{2 \cdot d_A \cdot TS_A}{h_A}} = \sqrt{\frac{2 \times 200 \times 2}{1.0}} = \sqrt{800} \approx 28 \text{ uds} \]
Producto B: \[ Q_B^* = \sqrt{\frac{2 \cdot d_B \cdot TS_B}{h_B}} = \sqrt{\frac{2 \times 150 \times 3}{1.5}} = \sqrt{600} \approx 24 \text{ uds} \]
Producto C: \[ Q_C^* = \sqrt{\frac{2 \cdot d_C \cdot TS_C}{h_C}} = \sqrt{\frac{2 \times 100 \times 4}{2.0}} = \sqrt{400} = 20 \text{ uds} \]

Paso 2: Verificar factibilidad

Con esos lotes, ¿cabe todo en las \(K = 40\) h/semana disponibles?

Carga de producción (tiempo de fabricación pura por semana):

\[ \sum_i \frac{d_i}{p_i} = \frac{200}{20} + \frac{150}{12.5} + \frac{100}{10} = 10 + 12 + 10 = 32 \text{ h/semana} \]

Carga de setups con los lotes EOQ (frecuencia = \(d_i/Q_i^*\) setups/semana):

\[ \sum_i \frac{d_i}{Q_i^*} \cdot TS_i = \frac{200}{28}\times 2 + \frac{150}{24}\times 3 + \frac{100}{20}\times 4 = 14.3 + 18.8 + 20.0 = 53.1 \text{ h/semana} \]

Total necesario: \( 32 + 53.1 = 85.1 \text{ h/semana} \gg K = 40 \text{ h/semana} \)

NO ES FACTIBLE: Se necesitan 85 horas pero solo hay 40 disponibles. Los EOQ individuales exigen demasiados setups.

Paso 3: Ciclo básico común — encontrar la T mínima factible

La estrategia del ciclo básico común sincroniza todos los productos: cada producto se fabrica exactamente una vez cada \(T\) semanas. El valor mínimo de \(T\) que garantiza la factibilidad es:

\[ T \geq \frac{\displaystyle\sum_{i} TS_i}{K - \displaystyle\sum_{i} \dfrac{d_i}{p_i}} \]

Aplicando los datos del ejemplo:

Suma de setups: \( \sum_i TS_i = 2 + 3 + 4 = 9 \text{ horas} \)

Carga de producción: \( \sum_i \dfrac{d_i}{p_i} = 10 + 12 + 10 = 32 \text{ h/semana} \)

Slack de capacidad: \( K - \sum_i \dfrac{d_i}{p_i} = 40 - 32 = 8 \text{ h/semana} \)

Ciclo mínimo:

\[ T_{\min} = \frac{9}{8} = 1.125 \text{ semanas} \]

Redondeando al entero superior: \( T = \lceil 1.125 \rceil = \mathbf{2 \text{ semanas}} \)

Verificación: ¿es factible con T = 2 semanas?

Por ciclo, los lotes son \( Q_i = d_i \cdot T \):

  • A: \(200 \times 2 = 400\) uds  →  producción: \(400/20 = 20\) h  +  setup: 2 h = 22 h
  • B: \(150 \times 2 = 300\) uds  →  producción: \(300/12.5 = 24\) h  +  setup: 3 h = 27 h
  • C: \(100 \times 2 = 200\) uds  →  producción: \(200/10 = 20\) h  +  setup: 4 h = 24 h

Total por ciclo: \(22 + 27 + 24 = 73\) h

Disponible por ciclo: \(K \cdot T = 40 \times 2 = 80\) h

\( 73 \leq 80 \) ✅ — quedan 7 horas de margen

FACTIBLE: Con un ciclo de 2 semanas todos los productos caben en la capacidad disponible. La política de ciclo básico común resuelve la infactibilidad del EOQ.

Conceptos Clave

Restricción de capacidad

El tiempo total (producción + setups) no puede superar el tiempo disponible de la máquina.

Infactibilidad del EOQ

Los lotes óptimos individuales pueden hacer que el plan sea imposible de ejecutar.

Trade-off adicional

No solo setup vs inventario, sino también factibilidad vs optimalidad.

Necesidad de coordinación

Hay que sincronizar la producción de todos los productos para evitar conflictos.