Participación en la Brewing Datacup 2020 por Juan Javier Santos Ochoa y Jorge Juvenal Campos Ferreira.
Para ejecutar el modelo realizado por el equipo durante el Datatón, hay que descargar los archivos que componen el presente repositorio.
-
Python 3.0 o más reciente.
-
Una distribución de
Jupyter Notebook
instalada en el ordenador.
El objetivo es generar un modelo original, escalable y con lógica de negocio que permita proponer un esquema de logística para la repartición de producto proveniente de un Centro de Distribución Regional a lo largo de una semana.
Las restricciones presentadas en el conjunto de datos son las siguientes:
-
Existencia de 3,625 puntos de demanda de producto.
-
La frecuencia de entrega para estos puntos es variable, variando desde 1 entrega a 3 entregas a la semana.
-
El volumen de demanda de producto por parte de las tiendas es variable.
-
Las entregas que se lleven a cabo en los distintos centros de distribución deben estar balanceadas, es decir, por motivos de logística, las entregas llevadas a cabo a lo largo de la semana tienen que ser lo más similares posible en distancia recorrida, volumen de producto entregado y número de paradas realizadas.
Se utilizó un ensamble de modelos de Machine Learning de clustering para la clasificación de zonas de venta de cerveza, combinado con Programación Lineal.
Los modelos de ML y PL utilizados fueron:
-
Clustering con k-means.
-
Corrección de clustering en las fronteras utilizando el algorítmo de k-Nearest Neighbors.
-
Introducción de restricciones de balanceo a través del módulo de Python
pulp
, para forzar las condiciones de balanceo en la formación de los clusters de repartición.
Se obtuvo un modelo con los siguientes resultados:
Dia | No. Paradas | Volumen repartido | Distancia |
---|---|---|---|
D1 | 666 | 9247.000 | 7124 |
D2 | 656 | 8886.000 | 5799 |
D3 | 650 | 9246.667 | 7234 |
D4 | 676 | 8886.833 | 7493 |
D5 | 653 | 9247.500 | 6019 |
D6 | 676 | 8886.000 | 7607 |
Los territorios de reparto óptimo obtenidos bajo este método son los siguientes:
La presentación de 5 diapositivas se puede consultar en este enlace.