diff --git a/docs/diary/2024-04-08.md b/docs/diary/2024-04-08.md new file mode 100644 index 0000000..016df1b --- /dev/null +++ b/docs/diary/2024-04-08.md @@ -0,0 +1,59 @@ +# 2024-04-08 + +Plus d'une semaine sans avoir travaillé sur ce projet, c'est dur de savoir où je m'en suis arrêté. + +J'ai l'impression qu'il me reste plus qu'à enregistrer les données dans un fichier. +Une fois fait, je me demande si je ne pourrais pas retirer les paths dans les routes. En réalité, j'enregistre déjà les +paths dans les stations adjacentes, donc je n'en ai pas besoin. + +D'ailleurs, l'export se fait en moins de 40 secondes, c'est plutôt OK, sachant que j'ai besoin de le faire uniquement +quand il y a de nouvelles stations de métro, ou lignes. Comparons la taille des données, avant, nous avions 831+365 Ko, +avec le GTFS, j'obtiens un JSON de 931Ko, alors que j'ai des informations en plus. + +Maintenant, il faut utiliser ces nouvelles données. Pour ça, il faut modifier plusieurs choses : + +- Le calcul du plus court chemin +- L'affichage des stations +- L'affichage des chemins entre les stations + +Rien d'insurmontable, mais Eat The Frog, je vais commencer par le plus dur, le calcul du plus court chemin. + +Je vais donc modifier les signatures des fonctions, actuellement la fonction computeShortestPath prend en paramètre le +nom des stations, je vais plutôt lui passer les unique_id. Il manque l'`unique_id` dans les `stops`, je vais ainsi le +rajouter d'abord. + +Ah voilà, qui est intéressant les noms entre les stations généralisées et les stations du GTFS ne sont pas les mêmes, +comme : + +- GTFS : `Michel-Ange - Molitor` / Généralisée : `Michel-Ange-Molitor` +- GTFS : `Pointe du Lac` / Généralisée : `Créteil - Pointe du Lac` + +C'est un peu embêtant, mais je vais faire avec. Je vais donc faire une regex pour supprimer espaces et tirets, et voir +si c'est inclut. + +Ce n'est pas suffisant il y a aussi les accents comme : + +- GTFS : `Cour Saint-Emilion` / Généralisée : `Cour Saint-Émilion` + +Je vais récupérer le code du champ de recherche. Il y a aussi le problème d'un nom plus court dans les données +généralisées : + +- GTFS : `Javel - André Citroën` / Généralisée : `Javel` + +Puis, j'ai un souci avec les Champs-Élysées, qui ont un tiret différent : + +- GTFS : `Champs-Élysées - Clemenceau` / Généralisée : `Champs-Élysées – Clemenceau` + +Et maintenant où le problème vient de l'apostrophe : + +- GTFS : `Créteil - L'Échat` / Généralisée : `Créteil–L’Échat` + +J'ai à mon avis une dernière erreur, la station Barbara ne remonte pas, je vais regarder pourquoi. +Elle a bien le mode `METRO`, mais la colonne `metro` est à `0` au lieu de `1`. Je préviens IDFM sur leur Slack. + +J'ai corrigé le souci en attendant. Revenons, à la création du graph, ce qui est embêtant, c'est que je n'ai pas les +unique_id dans les adjacentStations. Le fait de ne pas les avoir m'oblige à fournir les stations, je ne suis pas +vraiment sûr de l'utilité je vais les ajouter directement aux `adjacentStations`. + +J'ai modifié le Dijkstra pour prendre en compte le nouveau format de données, et réussir à faire quelque chose avec les +unique_id vs les stop_ids en général, mais je n'ai pas réussi à faire ce que je voulais. Je me suis arrêté là.