22
HUG Grand Ouest #1, Rennes Optimisation des vélos en libre-service 30 septembre 2015 Franck Gallos Adrien Pavie

Optimisation des vélos en libre service

  • Upload
    data2b

  • View
    384

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Optimisation des vélos en libre service

HUG Grand Ouest #1, Rennes

Optimisation des vélosen libre-service

30 septembre 2015Franck GallosAdrien Pavie

Page 2: Optimisation des vélos en libre service

2

Présentation Import Traitement Résultat

Vélo libre-service

v v

Page 3: Optimisation des vélos en libre service

3

Présentation Import Traitement Résultat

Des limites

Rééquilibrage estimé par expérience

Différence régulière offre/demande

Difficulté à prévoir la maintenance

~≠±

Page 4: Optimisation des vélos en libre service

4

Présentation Import Traitement Résultat

Données variées

Météo

Vélos & GPS

Réseau de vélo existant

OpenStreetMap

v

Page 5: Optimisation des vélos en libre service

5

Présentation Import Traitement Résultat

Objectif

vDonnées DataSet

Point de départpour le data scientist

Page 6: Optimisation des vélos en libre service

6

Présentation Import Traitement Résultat

Chaîne de traitement

Données

Hadoop/Hive

DataSet

Import

Traitement

Page 7: Optimisation des vélos en libre service

7

Présentation Import Traitement Résultat

Types de données

Traditionnelles Géographiques

Page 8: Optimisation des vélos en libre service

8

Présentation Import Traitement Résultat

Import des données

● CSV : OK

● Météo : OK

● OpenStreetMap : pas OK

Jusqu'à présent...

Page 9: Optimisation des vélos en libre service

9

Présentation Import Traitement Résultat

Hive & MétéoSYNOP

06458 41/58 73315 10070 20047 40122 57012 76080 77521 333 86533 84365 85385=

Page 10: Optimisation des vélos en libre service

10

Présentation Import Traitement Résultat

<osm version='0.6'>

<node id='1091' visible='true' lat='48.13' lon='1.65' />

<node id='1089' visible='true' lat='48.12' lon='1.66' />

<node id='1088' visible='true' lat='48.11' lon='1.67' />

<way id='1090' visible='true'>

<nd ref='1088' />

<nd ref='1089' />

<nd ref='1091' />

<nd ref='1088' />

<tag k='amenity' v='bench' />

</way>

</osm>

Hive & OpenStreetMap

Chemin

Noeuds

Dépendance&

Structuredifférente

Nécessite untraitement particulier

Page 11: Optimisation des vélos en libre service

11

Présentation Import Traitement Résultat

OSM2Hive

● Fonction d'import pour Hive

● Sous licence Apache 2.0

ADD JAR /path/to/osm2hive.jar;CREATE TEMPORARY FUNCTION OSMImportNodes

AS 'info.pavie.osm2hive.controller.HiveNodeImporter';

CREATE TABLE osmdata(osm_content STRING) STORED AS TEXTFILE;LOAD DATA LOCAL INPATH '/path/to/data.osm'

OVERWRITE INTO TABLE osmdata;

CREATE TABLE osmnodesAS SELECT OSMImportNodes(osm_content) FROM osmdata;

Ajout Fonction

Fichier OSM

Import noeuds

Page 12: Optimisation des vélos en libre service

12

Présentation Import Traitement Résultat

Traitement

Dataset

=

Données fusionnées

Requêtes de traitement

Page 13: Optimisation des vélos en libre service

13

Présentation Import Traitement Résultat

Requête #1● Différence du nombre de vélos entre

deux relevés

CREATE TABLE velo_usage_rownb ASSELECT id, date, slots_avail, bike_avail,ROW_NUMBER() OVER

(PARTITION BY id ORDER BY date ASC) as rownbFROM velo_usage;

SELECT a.id, a.date, (a.bike_avail - b.bike_avail) AS diff_bikeFROM velo_usage_rownb a, velo_usage_rownb bWHERE a.id == b.idAND a.rownb == b.rownb + 1;

Numérotationdes relevés

Diff.Vélos

Page 14: Optimisation des vélos en libre service

14

Présentation Import Traitement Résultat

ESRI for Hadoop

Fonctions géospatiales

pour Hive

Page 15: Optimisation des vélos en libre service

15

Présentation Import Traitement Résultat

Requête #2

● Longueur des pistes cyclables autour des stations de vélos

Reconstructiongéométrie OSMpistes cyclables

Zone tamponautour des

stations de vélos

Pistes danszones tampons

Intersection

Longueur de pistesautour de chaque

station de vélo

Agrégation+ longueur

Requête de plus de 700 caractères

Page 16: Optimisation des vélos en libre service

16

Présentation Import Traitement Résultat

Dataset obtenu

Page 17: Optimisation des vélos en libre service

17

Présentation Import Traitement Résultat

Visualisation des relevés

Page 18: Optimisation des vélos en libre service

18

Présentation Import Traitement Résultat

Page 19: Optimisation des vélos en libre service

19

Présentation Import Traitement Résultat

Page 20: Optimisation des vélos en libre service

20

Présentation Import Traitement Résultat

Page 21: Optimisation des vélos en libre service

21

Conclusion

Innovation pour SmartCities

Données variées

= meilleure prévision

À venir : prévision météo

& véhicules connectés

λ-architecture

Page 22: Optimisation des vélos en libre service

22

Merci pour votre attention !

To be continued...