← Despacho v2
📊 Estado del día
0Servicios totales
0Preasignados Excel
0Conductores libres
0%Nivel de cobertura
🗄️ Datos cargados
Se cargan solos al abrir la página, con la fecha de hoy (o la más reciente que tenga datos). Cambia la fecha solo si necesitas ver otro día.
Carga servicios pendientes y conductores conectados para la fecha elegida.
Reporte Central (servicios)Ver ▸
No cargado
Reporte Conexión (conductores)Ver ▸
No cargado
📄 Ver tabla completa de servicios
⚙️ Motor de Asignación
Duración basada en historial real (percentiles por zona/hora/tipo)
40 min
5
⏰ Rango Horario
Desmarca uno para que el rango solo filtre al otro (ej. solo conductores → ellos quedan acotados a la hora, pero pueden tomar cualquier servicio).
5
km vacío máx.
2
h espera 1er svc
5
svc/conductor
30
min entre svc
25
min buffer ETA
15
min traslado
20
min duración mín.
5
min recogida
3
min destino
0
S/ ticket mín.
S/ 0
⚙ Ajustes avanzados
🔧 Parámetros
Gap adaptativo: cerca (<3km) → 90min · medio (3-6km) → 60min · lejos (6-10km) → 45min · muy lejos (>10km) → 30min
5 km
2 h
8 h
Un conductor solo recibe servicios dentro de esta ventana desde su hora de activación (ej. activó 03:00 → hasta las 11:00 con 8h) — evita huecos absurdos como asignarle un servicio de la tarde a alguien que activó de madrugada. No aplica al "Bloque por zona" ni al "Último recurso" (esos priorizan cobertura total).
30 min
Ajusta el gap y la espera máxima según la densidad de servicios por hora — más servicios cercanos → gap más ceñido; menos servicios → más permisivo. Los sliders quedan como techo/piso (±50%).
🔗 Cadenas de servicios Siempre activo: antes de asignar servicio por servicio, el motor detecta grupos de 2+ servicios que un mismo conductor puede hacer en secuencia (mismo criterio que "Sugerir grupos" de la Bandeja Manual) y los asigna completos, sin romperlos, al mejor conductor real disponible — luego sigue con el resto de la lógica normal.
Apagado por defecto. La decisión de si hay alta demanda es tuya, no del motor — si activas este filtro antes de "Ejecutar Ruteo", un conductor URBANO puede arrancar su turno con un servicio DESTINO. Si lo dejas apagado, nunca lo hace.
25 min
15 min
20 min
5 min
3 min
💰 Umbrales de ticket
S/ 35
S/ 60
El motor prioriza AltoMedioBajo para cada conductor.
👤 Prioridad por productividad
Conductores nuevos, sin preasignaciones previas o con menos servicios en los últimos días reciben asignaciones primero — siempre, no es opcional.
7
🚦 Velocidades (km/h)
📜 Reglas de negocio
  • Solo servicios con Estado Libre/Buscando/Preasignado · Grupo URBANO o DESTINO
  • Excluye tripulantes: JETSMART AIRLINES PERU S.A.C. – TRIPULANTE (pasajeros regulares de Jetsmart sí entran)
  • Excluye: LATAM SERVICIOS ESPECIALES
  • Excluye por completo (no solo del motor): servicios que requieren aprobación (aún no confirmados) y servicios con estado de aprobación distinto de vacío (Aprobado, Rechazado o Vencido) — cualquier servicio tocado por ese flujo se deja fuera, para no arriesgar asignar algo que puede cambiar de estado
  • Servicios "por tiempo" (Lite x horas, Comfort x horas, Van x horas, etc. — cualquier tipo que termine en X HORAS) no se auto-asignan: el motor los salta al armar rutas punto-a-punto, pero quedan visibles en "Sin asignar" con la etiqueta X HORAS para asignarlos a mano
  • Servicios con más de un destino (MULTI-DESTINO) — un único origen, varias paradas en secuencia — sí se auto-asignan: el motor suma el traslado de CADA tramo (origen→parada 1→parada 2→...→última) más la espera en cada parada intermedia para calcular cuándo el conductor queda realmente libre para el siguiente servicio, no solo origen→última parada en línea recta. Se distinguen en el Gantt con el ícono 📍
  • Grupo de negocio: servicios URBANO → solo conductores Urbano · servicios DESTINO → solo conductores Aeropuerto, salvo 2 excepciones puntuales: (1) un URBANO puede sumar un DESTINO después de un servicio de costo bajo (compensación económica), nunca como primer servicio del turno · (2) un AEROPUERTO puede tomar un URBANO como último recurso real, solo si no queda ningún conductor URBANO con cupo en todo el pool -- una 3ra excepción opt-in (DESTINO como PRIMER servicio de un URBANO) está en Ajustes avanzados
  • Tipo de vehículo: XL → solo XL · Comfort → solo Comfort · Van → solo Van · Lite → Lite, Comfort o XL (nunca Van)
  • Preasignados: los servicios ya preasignados en el Excel/BD se respetan como bloques fijos (color naranja en Gantt). El motor asigna nuevos servicios en los huecos antes, entre y después de los preasignados, sin superponerlos
  • Productividad (siempre activo, no es opcional): conductores nuevos, sin preasignaciones previas o con menos servicios recientes reciben asignaciones primero — el único parámetro ajustable es cuántos días de historial se consideran
  • Motor por conductor, en 2 pasadas: primero con gap dinámico entre servicios (según distancia real del traslado), luego una pasada de relleno libre para los huecos que queden — ambas respetan el mismo límite de espera máxima configurado
  • La "distancia de empalme" (mismo distrito/corto/aceptable/no empalmar) se muestra como referencia al abrir el detalle de un servicio, pero no limita las pasadas del motor — la decisión real de asignación usa el tiempo de traslado en minutos, no esa clasificación
  • Conductores filtrados por día de la semana
  • Base de datos: aplica el filtro de estado/grupo/exclusiones directamente en la consulta SQL, y usa el tiempo mediano real de traslado entre zonas (tabla de traslados de Motor Ciudad) en vez de estimarlo por distancia en línea recta. Carga manual (Excel): aplica las mismas exclusiones en el navegador; si subes un archivo de zonas, se usa para la referencia de distancia de empalme del punto anterior.
Gantt de Preasignación
Zoom
📍 MULTI-DESTINO = servicio con más de una parada (un origen, varios destinos en secuencia) — la duración mostrada ya incluye TODAS las paradas, no solo origen→última
📟 Registro y cobertura
🧩 Motor de Ruteo MC (Backend)
Paso 0 — Fase de prioridad (≤3 candidatos)
Pasos 1-2 — Matriz de costos & Rondas Húngaras
Inserción — Optimización de posición en cadena
Paso 3 — Backtracking e Intercambios
Paso 4 — Bloque por zona (Último recurso)
📊 Estado de Cobertura
Conductores totales0
Servicios totales0
Asignados0
Sin asignar0
Cobertura0%
// Sistema listo. Carga datos y ejecuta.
ℹ️ Carga los datos en la pestaña Inicio antes de ejecutar.
⚡ Bandeja de Emparejamiento Manual Inteligente Sugerencias por Proximidad
Seleccione un servicio sin asignar a la izquierda para ver los conductores libres más adecuados a la derecha y emparejar con 1 clic.
⚠ SERVICIOS PENDIENTES (0)Haz clic para ver conductores · ☑ para elegir varios
👥 TODOS LOS CONDUCTORES (0)
📊
Ejecuta el ruteo primero
Preasignación Final
📋
Sin resultados aún