1. Contexto del proyecto
El proyecto construye un sensor virtual para estimar la concentración actual de penicilina a partir de señales operativas de fermentación. La evaluación se realiza sobre lotes completos que el modelo no ha visto y compara sus estimaciones con una curva típica por tiempo y estrategia de control.
Alcance de los datos: los 100 lotes proceden de IndPenSim y son simulados; no son mediciones reales de una planta. El proyecto no predice concentraciones futuras ni estudia fallas. Los 10 lotes con fallas inyectadas se excluyeron del experimento principal.
2. Herramientas utilizadas
- Python y Pandas: auditoría, preparación de lotes y construcción de características causales.
- Scikit-learn: Ridge, Random Forest, HistGradientBoosting, particiones y métricas.
- XGBoost: modelo final del sensor virtual.
- Matplotlib y Seaborn: trayectorias de concentración, señales, correlaciones y diagnóstico de errores.
- Bootstrap por lotes: estimación de la variación del MAE sin tratar lecturas consecutivas como observaciones independientes.
- Power BI: exportaciones estructuradas para la futura capa de reporting.
3. Desarrollo del notebook
- Auditoría estructural de 113.935 registros, 100 lotes y frecuencia de muestreo de 12 minutos.
- Exclusión de los 10 lotes con fallas y separación estratificada por estrategia: 54 lotes de entrenamiento, 18 de validación y 18 de prueba.
- EDA limitado al entrenamiento para estudiar trayectorias, señales operativas y asociaciones.
- Creación de 29 características de proceso, tiempo, configuración e historial reciente sin usar información futura.
- Comparación de curva típica, Ridge, Random Forest, HistGradientBoosting y XGBoost.
- Selección por MAE medio entre lotes y comprobación interna en tres particiones independientes.
- Reajuste con 72 lotes de desarrollo y una única evaluación final en los 18 lotes reservados.
- Análisis del error por fase temporal, estrategia, concentración y lote.
4. Principales hallazgos
- XGBoost profundidad 6 obtuvo un MAE medio entre lotes de 0,95 g/L, frente a 1,76 g/L de la curva típica: una reducción del 46,3 %.
- Las métricas globales fueron MAE de 0,96 g/L, RMSE de 1,48 g/L y R² de 0,978.
- El intervalo bootstrap del 95 % para el MAE medio entre lotes fue [0,76; 1,16] g/L.
- El modelo superó la referencia en los tres cortes internos, aunque mostró sensibilidad a la composición de los lotes de entrenamiento.
- El error aumentó desde 0,08 g/L antes de 50 horas hasta 1,99 g/L después de 200 horas.
- El tiempo transcurrido fue el grupo predictivo dominante; entre las señales operativas destacaron CO₂ y aireación/O₂.
5. Interpretación y limitaciones
El sensor virtual reproduce con buena precisión la referencia de IndPenSim en lotes normales y estrategias conocidas. Su aplicación propuesta es apoyar el seguimiento de la fermentación, siempre que las señales empleadas estén realmente disponibles al final de cada intervalo.
El resultado no demuestra que el modelo pueda sustituir análisis de laboratorio ni operar directamente en una planta. El objetivo y las señales provienen del mismo simulador, el identificador de lote no representa una fecha y la dependencia del tiempo es elevada. La validación con datos industriales y mediciones independientes queda fuera de este proyecto.
6. Material visual pendiente
La demostración en video y las capturas del dashboard de Power BI se incorporarán en una siguiente actualización. Las tablas de operación, predicciones, métricas, calidad y diccionario ya están exportadas y listas para construir esas vistas.