Herramienta interactiva para resolver el ejercicio "Juego Stocks - ITBA GO" de la materia Gestión de Operaciones - Unidad 5: Planificación y Control de la Producción (PCP).
- Python 3.8 o superior
- pip (gestor de paquetes de Python)
- Navegar a la carpeta del proyecto:
cd inventory-optimizer-web- Instalar dependencias:
pip install -r requirements.txt- Ejecutar la aplicación:
streamlit run streamlit_app.pyLa aplicación se abrirá automáticamente en tu navegador en http://localhost:8501
Todos los archivos necesarios están contenidos en esta carpeta:
inventory-optimizer-web/
├── streamlit_app.py # Aplicación principal Streamlit
├── juego_stocks_simulacion.py # Módulo de simulación (completo)
├── run_custom_policy.py # Script para ejecutar políticas personalizadas desde JSON
├── analyze_service_levels.py # Script para analizar costo vs nivel de servicio
├── debug_storage.py # Script de análisis de almacenamiento extra
├── requirements.txt # Dependencias Python
├── README.md # Este archivo
├── .gitignore # Archivos a ignorar en Git
├── core/
│ ├── __init__.py
│ ├── config.py # Configuración y constantes
│ └── simulation_original.py # Backup del script original
└── utils/
├── __init__.py
└── visualizer.py # Utilidades para visualización
Nota: La aplicación es completamente autocontenida. No requiere archivos externos.
- ⚙️ Configuración de Parámetros: Ajusta todos los parámetros del modelo según las consignas
- 🔍 Buscar Política Óptima: Encuentra automáticamente la mejor política (S_N, S_U) para diferentes niveles de servicio
- 📊 Evaluar Política: Prueba políticas específicas (S_N, S_U) o pedidos personalizados
- 📈 Comparar Políticas: Compara diferentes estrategias lado a lado
- 📄 Generar Reportes: Exporta resultados en formato Markdown
- 📉 Visualizaciones: Gráficos interactivos de evolución del inventario
- 🎯 Análisis de Nivel de Servicio: Analiza cómo aumenta el costo al incrementar el nivel de servicio (90% a 99.9%)
- 📦 Políticas Personalizadas: Evalúa políticas con pedidos fijos en semanas específicas
- 🔬 Análisis Detallado: Desglose de costos (compra, flete, mantenimiento, almacenamiento extra)
- Consignas:
Juego Stocks - ITBA GO PPT.pdf - Plantilla:
Juego Stocks - ITBA GO XLS.xlsm - Script original:
juego stocks simulacion.py
python run_custom_policy.pyEjecuta una simulación con una política personalizada definida en un archivo JSON.
python analyze_service_levels.pyEncuentra políticas óptimas para diferentes niveles de servicio (90%, 92%, 94%, 96%, 98%, 99%, 99.9%) y genera un gráfico comparativo.
Esta herramienta está diseñada para facilitar el aprendizaje de:
- Políticas de inventario (order-up-to S_N, reorder point S_U)
- Análisis de trade-offs entre costo y nivel de servicio
- Simulación Monte Carlo para evaluación de políticas
- Optimización mediante búsqueda en grilla
- Comparación entre políticas reactivas (S_N/S_U) y políticas fijas (pedidos programados)
- Demanda: Normal(10, 3) truncada a enteros ≥ 0
- Lead Times: Normal 7 semanas, Urgente 2 semanas
- Precios: Normal $300, Urgente $400
- Flete: $600 si Q ≤ 48, gratis si Q ≥ 49
- Almacenamiento Extra: $1,200/semana si stock > 100 unidades
- Costo de Mantenimiento: 60% anual sobre costo normal