https://github.com/mathieu2301/pbsc-tracker
Expérience de tracking des vélos en libre service fonctionnants avec PBSC
https://github.com/mathieu2301/pbsc-tracker
ai data-analysis data-mining data-science data-visualization libelo machine-learning pbsc valence velib-tracker
Last synced: 8 months ago
JSON representation
Expérience de tracking des vélos en libre service fonctionnants avec PBSC
- Host: GitHub
- URL: https://github.com/mathieu2301/pbsc-tracker
- Owner: Mathieu2301
- Created: 2021-02-11T15:29:20.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-06-03T15:00:07.000Z (over 2 years ago)
- Last Synced: 2025-03-05T03:26:56.251Z (11 months ago)
- Topics: ai, data-analysis, data-mining, data-science, data-visualization, libelo, machine-learning, pbsc, valence, velib-tracker
- Language: Vue
- Homepage: https://libelotracker.colmon.fr
- Size: 189 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PBSC Tracker
Expérience de tracking des vélos en libre service fonctionnants avec [PBSC](https://www.pbsc.com/fr)
Les données stockées sont celles de la ville de Valence dont le système utilisé est [Libélo](https://www.vrd-mobilites.fr/velo/).
Les résultats de cette expérience sont disponibles sur [libelotracker.colmon.fr](https://libelotracker.colmon.fr/)
L'objectif de ce projet est de développer un algorithme de prédiction permettant de calculer,
lors du retrait d'un vélo, les probabilités des différentes destinations.
## Fonctionnement actuel
Un serveur se charge de récupérer la liste des stations et d'enregistrer le nombre de vélos lorsqu'il y a un changement.
En résulte donc l'évolution des quantités de vélos de chaques stations de laquelle on peut déduire une liste d'opérations entrées/sorties de vélos.
Pour émettre des hypothèses sur les trajets on procède de la manière suivante:
### **➜ Étape 1: Premier balayage des trajets courts et directs**
- Pour chaque arrivée dans une station, on regarde la liste des départs qui précèdent cette arrivée.
- On élimine les départs qui mettraient plus de temps que le trajet théorique le plus élevé
(Pour Valence, le trajet "Portes-lès-Valence -> Romans" a une durée théorique de 1h30)
- Pour chaque potentielle station départ, on compare le temps passé avec le temps de trajet théorique calculé par *GMaps Directions API*.
- On trie les hypothèses (différence "réelle/théorique" la plus faible = probabilité plus élevée)
- (Si l'hypothèse correspond à dire que la vitesse moyenne du cycliste était supérieure à 30km/h, on la considère directement fausse)
- Les hypothèses de trajets cours sont prioritaires sur les trajets longs.
### **➜ Étape 2: Résoudre les conflits**
- Le premier balayage créera des conflits d'hypothèses.
- Pour un conflit dans lequel plusieurs arrivées seraient affectées au même départ, c'est l'arrivée ayant le nombre d'hypothèses
**le plus faible** qui est prioritaire.
### **➜ Étape 3: Allers-retours et grands détours**
- Le premier balayage ne prend pas en compte les allers-retours et les grands détours. Ces types
de trajets serons ceux qui restent à traiter donc, si une arrivée n'a pas trouvé d'affectation à un départ:
- On regarde les départs qui précèdent cette arrivée et qui mettraient **plus de temps** que le trajet théorique le plus élevé.
- Les départs potentiels associés à ces arrivées seront triées dans l'ordre du trajet le plus court au trajet le plus long en
gardant l'hypothèse d'un aller-retour (qui sera donc le premier résultat).
## Participer
N'hésitez pas à créer une discussion [ici](https://github.com/Mathieu2301/PBSC-Tracker/discussions).
Vous pouvez consulter:
- Les résultats des expériences: [libelotracker.colmon.fr](https://libelotracker.colmon.fr/)
- La liste des stations Libélo: [/getStations](https://libelostats.apis.colmon.fr/getStations)
- Les données stockées en brut: [/getRawData](https://libelostats.apis.colmon.fr/getRawData)
- Les données exploitables: [/getData](https://libelostats.apis.colmon.fr/getData)
- Les temps de trajets théoriques: [/getPaths](https://libelostats.apis.colmon.fr/getPaths)
L'API PHP est hébergée sur [libelostats.apis.colmon.fr](https://libelostats.apis.colmon.fr/) et fonctionne avec le système [Libélo](https://www.vrd-mobilites.fr/velo/) de Valence.
L'endpoint `/update` est automatiquement appelé dès qu'un changement est détecté par le script `updater/main.js` pour assurer le suivi précis des données.