Des contraintes avant le score
Le planning tient compte des compétences, des zones postales, des horaires, des indisponibilités et des distances des techniciens. Certaines règles sont éliminatoires : une affectation incompatible, en chevauchement avec un autre rendez-vous ou hors du rayon d’intervention du technicien est refusée.
Pour les candidats restants, les suggestions exposent un score et des raisons lisibles. Le dispatcher voit pourquoi un technicien est proposé, pas seulement lequel.
L’affectation automatique, sous condition
Une intervention planifiée sur un créneau complet peut être affectée automatiquement. FieldFlow ne retient le meilleur candidat que si son score atteint le seuil configuré, puis revalide toutes les contraintes sous verrou avant d’écrire l’affectation.
Chaque exécution conserve le résultat, le candidat, le score, la charge, la distance, le temps de trajet estimé, les explications et l’auteur. Si aucun candidat n’est assez sûr, rien n’est forcé : la raison reste visible dans l’historique.
Prévisualiser, puis appliquer
Le dispatcher peut préparer un lot de 200 interventions au maximum. La prévisualisation est enregistrée sans toucher au planning et fige, pour chaque intervention, le technicien proposé, son score et ses explications.
L’application passe par un second appel explicite. La proposition est recalculée et doit rester la meilleure option ; si les conditions ont changé entre-temps, l’intervention est ignorée et une nouvelle prévisualisation est demandée. L’application d’un lot est :
- transactionnelle : tout le lot ou rien ;
- verrouillée : deux dispatchers ne peuvent pas l’appliquer en même temps ;
- idempotente : rejouer la requête ne crée aucun doublon.
Optimiser la tournée d’une journée
Pour un technicien et une journée, FieldFlow prévisualise une tournée de 2 à 50 interventions déjà affectées. Le moteur part du dépôt, construit un premier ordre de passage par recherche du plus proche voisin, puis l’améliore avec l’heuristique 2-opt, qui inverse des portions du trajet tant que la distance totale diminue.
La durée de chaque intervention est conservée et de nouveaux horaires successifs sont proposés. Le moteur compare la distance au planning actuel, retour au dépôt compris, et indique si la tournée tient dans les horaires du technicien. Rien ne bouge sans validation : l’application refuse un calcul périmé, un conflit, une absence ou des horaires devenus incompatibles, puis replanifie, prévient les clients et publie les changements en temps réel.
Des distances estimées, et assumées comme telles
Chaque site porte une latitude et une longitude, chaque technicien une position de départ et un rayon maximal. La distance est calculée à vol d’oiseau avec la formule de Haversine, puis majorée pour estimer le trajet. C’est volontairement simple et déterministe : le même planning donne toujours le même résultat.


