Exploitez pleinement les données Viriato : des analyses avancées pour une vision système enrichie

Une question récurrente posée par les utilisateurs d’outils tels que Viriato est : « Comment extraire davantage de valeur de mes données, et le faire plus rapidement ? »

Les utilisateurs ont toujours eu la possibilité d’exporter leurs données vers des outils tiers afin de les analyser et les post-traiter, mais cela s’avérait souvent chronophage et complexe, et restait limitée aux fonctionnalités proposées par ces outils, sans réelle souplesse ou capacité d’extension. L’essor des API (« interfaces de programmation applicative », qui permettent à un programme de communiquer avec le cœur d’un autre logiciel) combiné à la montée en compétence en programmation des  utilisateurs et des ingénieurs -notamment en Python – a profondément changé la donne. Qu’il s’agisse d’écrire des scripts directement ou d’adopter des pratiques plus récentes comme le « vibe coding » (où l’utilisateur décrit ses besoins à un système IA par des « prompts », et le code est en grande partie  généré automatiquement), il n’a jamais été aussi simple d’extraire des données de Viriato pour les exploiter dans d’autres systèmes. Les usages sont alors uniquement limités par l’imagination de l’utilisateur. Parmi les cas d’usage courants figurent par exemple, la création de représentations graphiques via un SIG (« Système d’Information Géographique ») où des visualisations complexes et attrayantes des données ferroviaires peuvent être produites sur des cartes, des systèmes d’information métiers permettant d’exploiter les données brutes issues de Viriato pour obtenir des analyses approfondies de l’horaire prévu, ou encore des projets d’optimisation s’appuyant sur un solveur mathématique externe pour générer des solutions algorithmiques sophistiquées à des problèmes complexes de planification. Travailler avec la plateforme algorithmique de Viriato (“Viriato Algorithm Platform”) permet en outre de concevoir des processus intégrés : une interface personnalisée dans Viriato fournit le contexte pour la sélection des données et les trains modifiés peuvent être directement réinjectés dans Viriato pour une utilisation ultérieure.

L’un des principaux avantages de ces approches réside dans la capacité d’exploiter simultanément des données issues de sources multiples. Il est ainsi par exemple possible de combiner les données de Viriato et les données démographiques fournies par les instituts nationaux de statistiques. Il est ainsi possible de produire des analyses et des visualisations riches, directement basées sur les horaires définis dans Viriato, sans avoir à les reconstruire lors de l’analyse.


Voici quelques exemples récents de workflows d’analyse et de visualisation issus de projets de conseil concrets auxquels nous avons contribué :

  • Évaluation de la qualité de l’offre via l’analyse des temps de parcours : En utilisant l’export CSV du module d’analyse des temps de parcours contenant les liaisons entre les paires de gares origine-destination, il est possible de définir des indicateurs clés de performance pour comparer différents scénarios. Ces indicateurs incluent notamment le nombre de connexions, les temps de parcours, le nombre de correspondances ou encore les temps de trajet généralisés. En pondérant ces durées selon le mode de transport et en calculant les améliorations relatives, cette analyse peut être étendue à l’estimation de la demande. Cet export permet également d’évaluer la performance nodale des gares en quantifiant le nombre de correspondances possibles entre différentes branches de service.

  • Analyse de réseau et d’horaire par section via l’export XML : L’interface d’export XML de Viriato offre un moyen pratique de réaliser des analyses détaillées au niveau des sections. Parmi les applications récentes, on retrouve le calcul des normes de succession en ligne, l’analyse des temps de parcours et des indicateurs de l’hétérogénéité entre type de circulations, le calcul du nombre de trains par heure et le suivi des variations temporelles sur différentes périodes, que ce soit sur une journée ou sur l’ensemble du plan de service annuel. Associé aux données de capacité d’emport du matériel roulant, ce workflow a permis de produire des visualisations sophistiquées des taux d’occupation sur l’ensemble du réseau.

  • Analyse des coûts opérationnels du personnel : L’export CSV du module de planification des roulements de véhicules de Viriato fournit une liste complète des activités pour chaque horaire. Sur cette base, un ensemble d’outils d’analyse a été développé, où le roulement de véhicules est utilisé pour générer des plannings macroscopiques du personnel de conduite. Les plannings sont ensuite exportés vers un script externe qui vérifie que les contraintes opérationnelles concernant les temps de travail, les pauses des conducteurs et le stationnement au dépôt sont bien respectées. Ce processus efficace permet de déterminer le personnel nécessaire, d’optimiser leurs plannings, et d’effectuer des projections précises des coûts opérationnels.
  • Optimisation des horaires du personnel : Une étude interne a été menée pour déterminer si les roulements du personnel de conduite pouvaient être générés automatiquement à l’aide d’un solveur. Les activités sont extraites directement de l’horaire planifié dans Viriato grâce à la Viriato Algorithm Platform, puis transmises à un algorithme d’optimisation afin de produire des plannings respectant les règles telles que l’amplitude de la journée de travail, la durée maximale de conduite, le temps de travail sans pause, les trajets à vide et en taxi, etc. Les résultats peuvent ensuite être visualisés sous forme de diagrammes de Gantt et de tableaux.

  • Analyse de la robustesse par simulation Monte Carlo : L’outil d’analyse stochastique de la robustesse de Viriato génère des fichiers CSV pouvant être traités par des scripts externes. Un processus Python a été développé pour calculer des indicateurs de fiabilité et de disponibilité à partir des résultats de ces simulations. En plus des indicateurs agrégées, l’outil permet de visualiser ces simulations sous forme d’horaire graphique, offrant ainsi une compréhension claire de la stabilité des horaires dans divers scénarios opérationnels.


Ces exemples illustrent comment il est possible de développer des analyses innovantes et spécifiques aux besoins des clients en utilisant des données issues de Viriato et en les transformant, grâce à une variété d’outils et de techniques, en résultats utiles.

SMA utilise déjà ces méthodes pour fournir des solutions à nos clients dans le cadre de projets de conseil, où il est essentiel de présenter une visualisation, à la fois informative et précise des résultats, fondée sur les horaires établis lors de l’étude. Nous encourageons et accompagnons également les utilisateurs de Viriato à explorer avec nous les possibilités offertes par les données générées dans l’outil afin de produire des analyses complémentaires.