En la plataforma de JCDecaux necesito manejar la disponibilidad de la flota, y es realmente complejo: que una campaña se pueda vender en una ciudad depende de muchos criterios que se combinan entre sí, no solo de cuántos vehículos hay. ¿Cómo lo modelarías para que los comerciales no puedan sobrevender una ciudad?

Antes de proponerte un modelo, pasame la lista completa de criterios que determinan si un vehículo está disponible. La estructura de los datos condiciona todo el diseño, así que prefiero no adivinarla.

Esto es lo que tenemos, por ciudad:

  • Una cantidad de vehículos por tipo: taxi o Uber, híbrido o no.
  • Los soportes disponibles en cada uno: qué opciones de ploteo se pueden vender realmente en ese vehículo.
  • Si ya está comprometido en una campaña en curso.

El problema: son aproximaciones. Tenemos números aproximados por ciudad, no una lista exacta de cada auto.

Entonces no modeles la capacidad como conteos globales: ahí es exactamente donde este tipo de sistema falla. Armá una flota concreta:

  • Generá registros sintéticos de vehículos. A partir de tus números aproximados, creá una fila por vehículo con un ID generado y guardale los atributos a cada uno: tipo, híbrido o no, soportes elegibles, campaña actual. La flota pasa a ser un conjunto de registros concretos, no solo un número.
  • Trabajá sobre filas reales. Los chequeos de capacidad y las reservas de campaña corren contra esos vehículos individuales, así que tenés en tiempo real, vehículo por vehículo, qué está libre en cada ciudad, en vez de hacer cuentas sobre un total.
  • Vinculá de a poco la flota sintética con la realidad. Después de cada campaña, asociá cada registro sintético con el vehículo real en cuanto conozcas su identidad (la patente y demás datos), para que la flota simulada se acerque cada vez más a la real.

Arrancás con aproximaciones, pero todos los chequeos corren sobre una flota concreta y consultable, y se vuelve más precisa con cada campaña.

Mandale un email a Eliott

Currículum de Eliott Baylot

Claude es una IA y puede cometer comete errores. Chequeá las respuestas tres veces.