SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Soluzioni open source per la mobilità
Maurizio Napolitano
Fondazione Bruno Kessler
napolitano@fbk.eu
una review dei software che fanno uso dei dati
di OpenStreetMap
Couple of mature tourist on a vacation by Jacob Lund Photography from NounProject.com
´http://www.sardegnamobilita.it/travelplanner/it
Isocrone
Isodistanze
5 minuti a piedi
1km in auto
Map Matching
https://fmm-wiki.github.io/
Map Matching
https://fmm-wiki.github.io/
Time Distance Matrix
https://www.geoapify.com/time-distance-matrix-and-three-ways-to-use-it
Time Distance Matrix
https://www.geoapify.com/time-distance-matrix-and-three-ways-to-use-it
Travel Salesman
Travel Salesman
Riassunto caratteristiche
Gestione profili di più mezzi di trasporto
a piedi, auto, biciclette, mezzi pesanti, multimodale, cavalli, sedia a rotelle ….
API
Routing
Isocrone / Isodistanze
Matrici
Map Matching
Extra
restrizioni di svolta
evitare aree
percorsi alternativi
percorsi circolari
gestione del tempo (es. traffico)
pendenze
VRP
Profili
piedi, auto e biciclette
(possono essere configurati
altri con LUA)
API
Routing
Matrici
Map Matching
Extra
restrizioni di svolta
percorsi alternativi
(può gestire informazioni
di traffico)
nato in ambito accademico
(Karlsruher Institut für Technologie)
Il main developer venne assunto da
Mapbox*
Il più performante in assoluto
Non si possono assegnare pesi al
volo
Comunità molto attiva
https://github.com/Project-OSRM/
Licenza BSD-2
*nel 2019 Mapbox ha rallentato lo sviluppo in
favore di Valhalla
Profili
piedi, auto e biciclette
(possono essere configurati
altri con LUA)
API
Routing
Matrici
Map Matching
Extra
restrizioni di svolta
percorsi alternativi
(può gestire informazioni
di traffico)
nato in ambito accademico
(Karlsruher Institut für Technologie)
Il main developer venne assunto da
Mapbox*
Il più performante in assoluto
Non si possono assegnare pesi al
volo
Comunità molto attiva
https://github.com/Project-OSRM/
Licenza BSD-2
*nel 2019 Mapbox ha rallentato lo sviluppo in
favore di Valhalla
Profili
piedi, auto, biciclette (diverse),
multimodale (GTFS)
moto, escursionismo,
sedia a rotelle
API
Routing
Isocrone/Isodistanze
Matrici
Map Matching
Extra
restrizioni di svolta
evitare aree
percorsi alternativi
percorsi circolari
attributi dinamici ai veicoli
pendenze
VRP
Nato come progetto personale da
uno dei fondatori, si è rapidamente
evoluto in un servizio commerciale
open source con l'obiettivo
principale di risolvere problemi di
routing dei veicoli altamente
complessi.
Ottime performance
personalizzazione dei tipi di mezzi
da codice sorgente
versione community (open) ed
enterprise (closed)
Sviluppo decisamente attivo
https://github.com/graphhopper/gra
phhopper
Licenza Apache-2
Profili
piedi, auto, biciclette (diverse),
multimodale (GTFS)
moto, escursionismo,
sedia a rotelle
API
Routing
Isocrone/Isodistanze
Matrici
Map Matching
Extra
restrizioni di svolta
evitare aree
percorsi alternativi
percorsi circolari
attributi dinamici ai veicoli
pendenze
VRP
Nato come progetto personale da
uno dei fondatori, si è rapidamente
evoluto in un servizio commerciale
open source con l'obiettivo
principale di risolvere problemi di
routing dei veicoli altamente
complessi.
Ottime performance
personalizzazione dei tipi di mezzi
da codice sorgente
versione community (open) ed
enterprise (closed)
Sviluppo decisamente attivo
https://github.com/graphhopper/gra
phhopper
Licenza Apache-2
Profili
piedi, auto, biciclette,
multimodale (GTFS),
camion, taxi, moto,
autobus, scooter
API
Routing
Isocrone/Isodistanze
Matrici
Map Matching
Extra
restrizioni di svolta
evitare aree
percorsi alternativi
attributi dinamici ai veicoli
pendenze
gestione del tempo (es. traffico)
TSP
Progetto creato dall'azienda Mapzen
(ora chiusa) e portato avanti da
Mapbox.
Rumors dicono che sia utilizzato
sulle auto Tesla.
È in grado di adattare il routing in
relazione ad informazioni temporali
statiche (es. orario apertura strada)
o dinamiche (es. traffico).
Gestisce un unico grafo stradale
invece che uno per profilo.
Lento nel calcolo delle matrici.
Pessima documentazione
Sviluppo decisamente attivo
https://github.com/valhalla
Licenza MIT
Profili
piedi, auto, biciclette,
multimodale (GTFS),
camion, taxi, moto,
autobus, scooter
API
Routing
Isocrone/Isodistanze
Matrici
Map Matching
Extra
restrizioni di svolta
evitare aree
percorsi alternativi
attributi dinamici ai veicoli
pendenze
gestione del tempo (es. traffico)
TSP
Progetto creato dall'azienda Mapzen
(ora chiusa) e portato avanti da
Mapbox.
Rumors dicono che sia utilizzato
sulle auto Tesla.
È in grado di adattare il routing in
relazione ad informazioni temporali
statiche (es. orario apertura strada)
o dinamiche (es. traffico).
Gestisce un unico grafo stradale
invece che uno per profilo.
Lento nel calcolo delle matrici.
Pessima documentazione
Sviluppo decisamente attivo
https://github.com/valhalla
Licenza MIT
Profili
piedi, auto, biciclette (varie)
camion, escursionismo,
sedia a rotelle
API
Routing
Isocrone/Isodistanze
Matrici
Extra
evitare aree
percorsi alternativi
percorsi circolari
attributi dinamici ai veicoli
pendenze
VRP
Uno dei primi motori di routing open
source nato nel dipartimento
GIScience dell'Università di
Heidelberg, in Germania, nel 2008k
successivamente si è sviluppato
partendo dal codice di Graphhopper
(calcolo della matrice) per poi
proseguire da solo.
Molto veloce
Richiede molta RAM
Lo sviluppo di nuovi profili avviene
tramite scrittura codice java
Sviluppo molto attivo
https://github.com/GIScience/openr
outeservice
Licenza GPL3
Profili
piedi, auto, biciclette (varie)
camion, escursionismo,
sedia a rotelle
API
Routing
Isocrone/Isodistanze
Matrici
Extra
evitare aree
percorsi alternativi
percorsi circolari
attributi dinamici ai veicoli
pendenze
VRP
Uno dei primi motori di routing open
source nato nel dipartimento
GIScience dell'Università di
Heidelberg, in Germania, nel 2008k
successivamente si è sviluppato
partendo dal codice di Graphhopper
(calcolo della matrice) per poi
proseguire da solo.
Molto veloce
Richiede molta RAM
Lo sviluppo di nuovi profili avviene
tramite scrittura codice java
Sviluppo molto attivo
https://github.com/GIScience/openr
outeservice
Licenza GPL3
https://gis-ops.com/open-source-routing-engines-and-algorithms-an-overview/#user-content-routing-engines
OSRM
ottimo per query a matrice ad alte
prestazioni (scala continentale)
Graphhopper
alte prestazioni … ma con troppe
componenti proprietarie
OpenRouteService
ottima alternativa a Graphhoper non
copre tutte le caratteristiche
Valhalla
Sicuramente il più promettente, ma
lento nel calcolo delle matrici
Fuori classifica ma da menzionare!
PG Routing
estensione di Postgresql / PostGIS per il routing.
Ottimo ma non si presenta come webservice
Routino
il migliore a livello di stato dell'arte per l'implementazione degli algoritmi di routing.
Non si propone come webservice, supporta tantissimi profili di mezzi (si configurano
con LUA)
OpenTripPlanner
nato nel 2009 per la gestione del trasporto multimodale (mezzi pubblici + bike
sharing).
supporta tutte le funzioni multimodali (es. isocrone su trasporto pubblico)
Il più utilizzato in assoluto dalle aziende di trasporto pubblico nel mondo (per questo
ha una grossa comunità dietro)
VRP - Vehicle Routing Problem
VRP - Vehicle Routing Problem
Esempio: tre veicoli che consegnano su un territorio
Esempio: due veicoli con capienza che raccolgono materiale
VROOM
jsprit
Optaplanner
Soluzioni software Open Source
libreria java rilasciata in Apache 2 che risolve il problema
VRP integrata nella versione proprietaria di Graphopper
Risolutore di vincoli con vari moduli. Risolve VRP a partire
da una matrice di costi (java - apache 2)
Libreria C++ con binding Python, C# e Java che risolve
vincoli di combinazioni fra cui VRP a partire da una
matrice dei costi (licenza apache 2)
Programma in C++ con suite client/server che si integra
con OSRM, ORS e Valhalla
VROOM
jsprit
Optaplanner
Soluzioni software Open Source
libreria java rilasciata in Apache 2 che risolve il problema
VRP integrata nella versione proprietaria di Grapphoper
Risolutore di vincoli con vari moduli. Risolve VRP a partire
da una matrice di costi (java - apache 2)
Libreria C++ con binding Python, C# e Java che risolve
vincoli di combinazioni fra cui VRP a partire da una
matrice dei costi (licenza apache 2)
Programma in C++ con suite client/server che si integra
con OSRM, ORS e Valhalla
SUITE
COMPLETA!!!
webservice
proprietario
oppure sviluppo
necessità di
sviluppare
matrice dei costi
necessità di
sviluppare
webservice
VROOM
Integrazione con OSRM, Open Route Service e Valhalla
=> richiesta matrice dei costi per qualsiasi profilo di mezzo disponibile
VROOM EXPRESS
=> software in nodejs per gestire vroom come webservice
JSON in INPUT
=> modellazione dei mezzi con ogni loro caratteristica: profilo mezzo, capienza,
fascia oraria lavorativa, tipologia mezzo, punto partenza/ritorno, pause, ecc…
=> modellazione dei "jobs": punti di ritiro/consegna, dimensioni oggetti
ritiro/consegna, fascia oraria consegna/ritiro, coordinate del luogo….
JSON in OUTPUT
=> soluzioni individuate: tempi totali, tempi di spostamento punto a punto, percorsi
ecc…
=> eventuali punti non raggiungibili per questioni di tempo/spazio
Conclusioni
IN OUT
Se vogliamo evitare l'effetto "garbage
in = garbage out" dobbiamo avere più
cura sulla qualità dei dati di
OpenStreetMap.
Lavoriamo insieme per i beni comuni.
Maurizio Napolitano
http://slideshare.net/napo
napolitano@fbk.eu
@napo
Grazie!!!
Tutte le icone utilizzate vengono dal progetto The Noun Project

Más contenido relacionado

Similar a Soluzioni open source per la mobilità

Evento PIM - Novità QGis 2.8: database e mappe online / webgis
Evento PIM - Novità QGis 2.8: database e mappe online / webgisEvento PIM - Novità QGis 2.8: database e mappe online / webgis
Evento PIM - Novità QGis 2.8: database e mappe online / webgisCity Planner
 
Progetti di tesi Automation Motion Control
Progetti di tesi Automation Motion ControlProgetti di tesi Automation Motion Control
Progetti di tesi Automation Motion ControlLuigi Mancino
 
Middleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmMiddleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmRoberto Navoni
 
Middleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmMiddleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmRoberto Navoni
 
SDK's di sviluppo per il Mapping sul Web e Mobile - Gigante
SDK's di sviluppo per il Mapping sul Web e Mobile - GiganteSDK's di sviluppo per il Mapping sul Web e Mobile - Gigante
SDK's di sviluppo per il Mapping sul Web e Mobile - GiganteCodemotion
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDaniele Mondello
 
JAMP al barcamp CATANIA 2009
JAMP al barcamp CATANIA 2009JAMP al barcamp CATANIA 2009
JAMP al barcamp CATANIA 2009jampslide
 
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-FuzzySviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-FuzzyStefano Ficcadenti
 
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...GIS Day
 
OpenStreetMap Workshop per #piemonteviz
OpenStreetMap Workshop per #piemontevizOpenStreetMap Workshop per #piemonteviz
OpenStreetMap Workshop per #piemontevizStefano Sabatini
 
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google maps
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google mapsLdb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google maps
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google mapslaboratoridalbasso
 
Enterprise Spring and Flex applications
Enterprise Spring and Flex applicationsEnterprise Spring and Flex applications
Enterprise Spring and Flex applicationsmarcocasario
 
Corso GIS Base a03 - gis strumento di lavoro alla base della cartografia e d...
Corso GIS Base a03 - gis  strumento di lavoro alla base della cartografia e d...Corso GIS Base a03 - gis  strumento di lavoro alla base della cartografia e d...
Corso GIS Base a03 - gis strumento di lavoro alla base della cartografia e d...City Planner
 
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...Francesco Passantino
 
Progetto WANDA
Progetto WANDAProgetto WANDA
Progetto WANDAARIANET
 

Similar a Soluzioni open source per la mobilità (20)

Evento PIM - Novità QGis 2.8: database e mappe online / webgis
Evento PIM - Novità QGis 2.8: database e mappe online / webgisEvento PIM - Novità QGis 2.8: database e mappe online / webgis
Evento PIM - Novità QGis 2.8: database e mappe online / webgis
 
Progetti di tesi Automation Motion Control
Progetti di tesi Automation Motion ControlProgetti di tesi Automation Motion Control
Progetti di tesi Automation Motion Control
 
Middleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmMiddleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 Osm
 
Middleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 OsmMiddleware Sistemi Di Navigazione Upd09 Osm
Middleware Sistemi Di Navigazione Upd09 Osm
 
RomaJS June 2022
RomaJS June 2022RomaJS June 2022
RomaJS June 2022
 
SDK's di sviluppo per il Mapping sul Web e Mobile - Gigante
SDK's di sviluppo per il Mapping sul Web e Mobile - GiganteSDK's di sviluppo per il Mapping sul Web e Mobile - Gigante
SDK's di sviluppo per il Mapping sul Web e Mobile - Gigante
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
 
JAMP al barcamp CATANIA 2009
JAMP al barcamp CATANIA 2009JAMP al barcamp CATANIA 2009
JAMP al barcamp CATANIA 2009
 
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-FuzzySviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
Sviluppo di tool di gestione ed analisi di un simulatore Neuro-Fuzzy
 
Barrotta
BarrottaBarrotta
Barrotta
 
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...
Barrotta. Interoperabilità E Implementazione Di Servizi Webgis Allinterno Di ...
 
OpenStreetMap Workshop per #piemonteviz
OpenStreetMap Workshop per #piemontevizOpenStreetMap Workshop per #piemonteviz
OpenStreetMap Workshop per #piemonteviz
 
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google maps
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google mapsLdb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google maps
Ldb 25 strumenti gis e webgis_2014-05-29e30 de lorenzis - api di google maps
 
FCD mobile app
FCD mobile appFCD mobile app
FCD mobile app
 
Link. javascript ajax
  Link. javascript ajax  Link. javascript ajax
Link. javascript ajax
 
Spa with Blazor
Spa with BlazorSpa with Blazor
Spa with Blazor
 
Enterprise Spring and Flex applications
Enterprise Spring and Flex applicationsEnterprise Spring and Flex applications
Enterprise Spring and Flex applications
 
Corso GIS Base a03 - gis strumento di lavoro alla base della cartografia e d...
Corso GIS Base a03 - gis  strumento di lavoro alla base della cartografia e d...Corso GIS Base a03 - gis  strumento di lavoro alla base della cartografia e d...
Corso GIS Base a03 - gis strumento di lavoro alla base della cartografia e d...
 
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...
Barrotta: Interoperabilità e implementazione di servizi webgis all'interno di...
 
Progetto WANDA
Progetto WANDAProgetto WANDA
Progetto WANDA
 

Más de Maurizio Napolitano

I dati AGCOM del pluralismo politico sociale in televisione
I dati AGCOM del pluralismo politico sociale in televisioneI dati AGCOM del pluralismo politico sociale in televisione
I dati AGCOM del pluralismo politico sociale in televisioneMaurizio Napolitano
 
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...Maurizio Napolitano
 
Il diritto all'oblio nell'era digitale
Il diritto all'oblio nell'era digitaleIl diritto all'oblio nell'era digitale
Il diritto all'oblio nell'era digitaleMaurizio Napolitano
 
Ten years of opendata: what has happened and what is there to do
Ten years of opendata: what has happened and what is there to doTen years of opendata: what has happened and what is there to do
Ten years of opendata: what has happened and what is there to doMaurizio Napolitano
 
Infographics & data visualization - corso base FBK
Infographics & data visualization - corso base FBKInfographics & data visualization - corso base FBK
Infographics & data visualization - corso base FBKMaurizio Napolitano
 
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...Maurizio Napolitano
 
Dati: catalizzatori di innovazione per la smarticity
Dati: catalizzatori di innovazione per la smarticityDati: catalizzatori di innovazione per la smarticity
Dati: catalizzatori di innovazione per la smarticityMaurizio Napolitano
 
la comunicazione attraverso i social media
la comunicazione attraverso i social mediala comunicazione attraverso i social media
la comunicazione attraverso i social mediaMaurizio Napolitano
 
creare cruscotti per investigare i dati
creare cruscotti per investigare i daticreare cruscotti per investigare i dati
creare cruscotti per investigare i datiMaurizio Napolitano
 
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitale
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitaleFollow the white Rabbit: opportunità e trabocchetti nella nostra vita digitale
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitaleMaurizio Napolitano
 
Strumenti e suggerimenti per creare grafici
Strumenti e suggerimenti per creare graficiStrumenti e suggerimenti per creare grafici
Strumenti e suggerimenti per creare graficiMaurizio Napolitano
 
Gli strumenti di Google per il giornalismo
Gli strumenti di Google per il giornalismoGli strumenti di Google per il giornalismo
Gli strumenti di Google per il giornalismoMaurizio Napolitano
 
Il ruolo dei dati nella economia del XXI secolo
Il ruolo dei dati nella economia del XXI secoloIl ruolo dei dati nella economia del XXI secolo
Il ruolo dei dati nella economia del XXI secoloMaurizio Napolitano
 
OpenStreetMap - Karten und Wandern
OpenStreetMap - Karten und WandernOpenStreetMap - Karten und Wandern
OpenStreetMap - Karten und WandernMaurizio Napolitano
 
Introduzione all'analisi delle reti sociali #datajournalism
Introduzione all'analisi delle reti sociali #datajournalismIntroduzione all'analisi delle reti sociali #datajournalism
Introduzione all'analisi delle reti sociali #datajournalismMaurizio Napolitano
 

Más de Maurizio Napolitano (20)

I dati AGCOM del pluralismo politico sociale in televisione
I dati AGCOM del pluralismo politico sociale in televisioneI dati AGCOM del pluralismo politico sociale in televisione
I dati AGCOM del pluralismo politico sociale in televisione
 
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...
FIPAV - allievo allenatore Il protocollo di allenamento - Modulo 2 - napolita...
 
La gestione del gruppo
La gestione del gruppoLa gestione del gruppo
La gestione del gruppo
 
percorsi ciclabili e stress
percorsi ciclabili e stresspercorsi ciclabili e stress
percorsi ciclabili e stress
 
Il diritto all'oblio nell'era digitale
Il diritto all'oblio nell'era digitaleIl diritto all'oblio nell'era digitale
Il diritto all'oblio nell'era digitale
 
Strumenti per il Fact Checking
Strumenti per il Fact CheckingStrumenti per il Fact Checking
Strumenti per il Fact Checking
 
Estrarre contenuti da Web
Estrarre contenuti da WebEstrarre contenuti da Web
Estrarre contenuti da Web
 
Ten years of opendata: what has happened and what is there to do
Ten years of opendata: what has happened and what is there to doTen years of opendata: what has happened and what is there to do
Ten years of opendata: what has happened and what is there to do
 
Infographics & data visualization - corso base FBK
Infographics & data visualization - corso base FBKInfographics & data visualization - corso base FBK
Infographics & data visualization - corso base FBK
 
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...
Percorso di specializzazione per i ruoli di ricevitore–attaccante, opposto e ...
 
Dati: catalizzatori di innovazione per la smarticity
Dati: catalizzatori di innovazione per la smarticityDati: catalizzatori di innovazione per la smarticity
Dati: catalizzatori di innovazione per la smarticity
 
la comunicazione attraverso i social media
la comunicazione attraverso i social mediala comunicazione attraverso i social media
la comunicazione attraverso i social media
 
creare cruscotti per investigare i dati
creare cruscotti per investigare i daticreare cruscotti per investigare i dati
creare cruscotti per investigare i dati
 
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitale
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitaleFollow the white Rabbit: opportunità e trabocchetti nella nostra vita digitale
Follow the white Rabbit: opportunità e trabocchetti nella nostra vita digitale
 
Strumenti e suggerimenti per creare grafici
Strumenti e suggerimenti per creare graficiStrumenti e suggerimenti per creare grafici
Strumenti e suggerimenti per creare grafici
 
Data Journalism e Fake News
Data Journalism e Fake NewsData Journalism e Fake News
Data Journalism e Fake News
 
Gli strumenti di Google per il giornalismo
Gli strumenti di Google per il giornalismoGli strumenti di Google per il giornalismo
Gli strumenti di Google per il giornalismo
 
Il ruolo dei dati nella economia del XXI secolo
Il ruolo dei dati nella economia del XXI secoloIl ruolo dei dati nella economia del XXI secolo
Il ruolo dei dati nella economia del XXI secolo
 
OpenStreetMap - Karten und Wandern
OpenStreetMap - Karten und WandernOpenStreetMap - Karten und Wandern
OpenStreetMap - Karten und Wandern
 
Introduzione all'analisi delle reti sociali #datajournalism
Introduzione all'analisi delle reti sociali #datajournalismIntroduzione all'analisi delle reti sociali #datajournalism
Introduzione all'analisi delle reti sociali #datajournalism
 

Soluzioni open source per la mobilità

  • 1. Soluzioni open source per la mobilità Maurizio Napolitano Fondazione Bruno Kessler napolitano@fbk.eu una review dei software che fanno uso dei dati di OpenStreetMap
  • 2. Couple of mature tourist on a vacation by Jacob Lund Photography from NounProject.com
  • 3.
  • 12. Riassunto caratteristiche Gestione profili di più mezzi di trasporto a piedi, auto, biciclette, mezzi pesanti, multimodale, cavalli, sedia a rotelle …. API Routing Isocrone / Isodistanze Matrici Map Matching Extra restrizioni di svolta evitare aree percorsi alternativi percorsi circolari gestione del tempo (es. traffico) pendenze VRP
  • 13. Profili piedi, auto e biciclette (possono essere configurati altri con LUA) API Routing Matrici Map Matching Extra restrizioni di svolta percorsi alternativi (può gestire informazioni di traffico) nato in ambito accademico (Karlsruher Institut für Technologie) Il main developer venne assunto da Mapbox* Il più performante in assoluto Non si possono assegnare pesi al volo Comunità molto attiva https://github.com/Project-OSRM/ Licenza BSD-2 *nel 2019 Mapbox ha rallentato lo sviluppo in favore di Valhalla
  • 14. Profili piedi, auto e biciclette (possono essere configurati altri con LUA) API Routing Matrici Map Matching Extra restrizioni di svolta percorsi alternativi (può gestire informazioni di traffico) nato in ambito accademico (Karlsruher Institut für Technologie) Il main developer venne assunto da Mapbox* Il più performante in assoluto Non si possono assegnare pesi al volo Comunità molto attiva https://github.com/Project-OSRM/ Licenza BSD-2 *nel 2019 Mapbox ha rallentato lo sviluppo in favore di Valhalla
  • 15. Profili piedi, auto, biciclette (diverse), multimodale (GTFS) moto, escursionismo, sedia a rotelle API Routing Isocrone/Isodistanze Matrici Map Matching Extra restrizioni di svolta evitare aree percorsi alternativi percorsi circolari attributi dinamici ai veicoli pendenze VRP Nato come progetto personale da uno dei fondatori, si è rapidamente evoluto in un servizio commerciale open source con l'obiettivo principale di risolvere problemi di routing dei veicoli altamente complessi. Ottime performance personalizzazione dei tipi di mezzi da codice sorgente versione community (open) ed enterprise (closed) Sviluppo decisamente attivo https://github.com/graphhopper/gra phhopper Licenza Apache-2
  • 16. Profili piedi, auto, biciclette (diverse), multimodale (GTFS) moto, escursionismo, sedia a rotelle API Routing Isocrone/Isodistanze Matrici Map Matching Extra restrizioni di svolta evitare aree percorsi alternativi percorsi circolari attributi dinamici ai veicoli pendenze VRP Nato come progetto personale da uno dei fondatori, si è rapidamente evoluto in un servizio commerciale open source con l'obiettivo principale di risolvere problemi di routing dei veicoli altamente complessi. Ottime performance personalizzazione dei tipi di mezzi da codice sorgente versione community (open) ed enterprise (closed) Sviluppo decisamente attivo https://github.com/graphhopper/gra phhopper Licenza Apache-2
  • 17. Profili piedi, auto, biciclette, multimodale (GTFS), camion, taxi, moto, autobus, scooter API Routing Isocrone/Isodistanze Matrici Map Matching Extra restrizioni di svolta evitare aree percorsi alternativi attributi dinamici ai veicoli pendenze gestione del tempo (es. traffico) TSP Progetto creato dall'azienda Mapzen (ora chiusa) e portato avanti da Mapbox. Rumors dicono che sia utilizzato sulle auto Tesla. È in grado di adattare il routing in relazione ad informazioni temporali statiche (es. orario apertura strada) o dinamiche (es. traffico). Gestisce un unico grafo stradale invece che uno per profilo. Lento nel calcolo delle matrici. Pessima documentazione Sviluppo decisamente attivo https://github.com/valhalla Licenza MIT
  • 18. Profili piedi, auto, biciclette, multimodale (GTFS), camion, taxi, moto, autobus, scooter API Routing Isocrone/Isodistanze Matrici Map Matching Extra restrizioni di svolta evitare aree percorsi alternativi attributi dinamici ai veicoli pendenze gestione del tempo (es. traffico) TSP Progetto creato dall'azienda Mapzen (ora chiusa) e portato avanti da Mapbox. Rumors dicono che sia utilizzato sulle auto Tesla. È in grado di adattare il routing in relazione ad informazioni temporali statiche (es. orario apertura strada) o dinamiche (es. traffico). Gestisce un unico grafo stradale invece che uno per profilo. Lento nel calcolo delle matrici. Pessima documentazione Sviluppo decisamente attivo https://github.com/valhalla Licenza MIT
  • 19. Profili piedi, auto, biciclette (varie) camion, escursionismo, sedia a rotelle API Routing Isocrone/Isodistanze Matrici Extra evitare aree percorsi alternativi percorsi circolari attributi dinamici ai veicoli pendenze VRP Uno dei primi motori di routing open source nato nel dipartimento GIScience dell'Università di Heidelberg, in Germania, nel 2008k successivamente si è sviluppato partendo dal codice di Graphhopper (calcolo della matrice) per poi proseguire da solo. Molto veloce Richiede molta RAM Lo sviluppo di nuovi profili avviene tramite scrittura codice java Sviluppo molto attivo https://github.com/GIScience/openr outeservice Licenza GPL3
  • 20. Profili piedi, auto, biciclette (varie) camion, escursionismo, sedia a rotelle API Routing Isocrone/Isodistanze Matrici Extra evitare aree percorsi alternativi percorsi circolari attributi dinamici ai veicoli pendenze VRP Uno dei primi motori di routing open source nato nel dipartimento GIScience dell'Università di Heidelberg, in Germania, nel 2008k successivamente si è sviluppato partendo dal codice di Graphhopper (calcolo della matrice) per poi proseguire da solo. Molto veloce Richiede molta RAM Lo sviluppo di nuovi profili avviene tramite scrittura codice java Sviluppo molto attivo https://github.com/GIScience/openr outeservice Licenza GPL3
  • 21. https://gis-ops.com/open-source-routing-engines-and-algorithms-an-overview/#user-content-routing-engines OSRM ottimo per query a matrice ad alte prestazioni (scala continentale) Graphhopper alte prestazioni … ma con troppe componenti proprietarie OpenRouteService ottima alternativa a Graphhoper non copre tutte le caratteristiche Valhalla Sicuramente il più promettente, ma lento nel calcolo delle matrici
  • 22. Fuori classifica ma da menzionare! PG Routing estensione di Postgresql / PostGIS per il routing. Ottimo ma non si presenta come webservice Routino il migliore a livello di stato dell'arte per l'implementazione degli algoritmi di routing. Non si propone come webservice, supporta tantissimi profili di mezzi (si configurano con LUA) OpenTripPlanner nato nel 2009 per la gestione del trasporto multimodale (mezzi pubblici + bike sharing). supporta tutte le funzioni multimodali (es. isocrone su trasporto pubblico) Il più utilizzato in assoluto dalle aziende di trasporto pubblico nel mondo (per questo ha una grossa comunità dietro)
  • 23. VRP - Vehicle Routing Problem
  • 24. VRP - Vehicle Routing Problem
  • 25. Esempio: tre veicoli che consegnano su un territorio
  • 26. Esempio: due veicoli con capienza che raccolgono materiale
  • 27. VROOM jsprit Optaplanner Soluzioni software Open Source libreria java rilasciata in Apache 2 che risolve il problema VRP integrata nella versione proprietaria di Graphopper Risolutore di vincoli con vari moduli. Risolve VRP a partire da una matrice di costi (java - apache 2) Libreria C++ con binding Python, C# e Java che risolve vincoli di combinazioni fra cui VRP a partire da una matrice dei costi (licenza apache 2) Programma in C++ con suite client/server che si integra con OSRM, ORS e Valhalla
  • 28. VROOM jsprit Optaplanner Soluzioni software Open Source libreria java rilasciata in Apache 2 che risolve il problema VRP integrata nella versione proprietaria di Grapphoper Risolutore di vincoli con vari moduli. Risolve VRP a partire da una matrice di costi (java - apache 2) Libreria C++ con binding Python, C# e Java che risolve vincoli di combinazioni fra cui VRP a partire da una matrice dei costi (licenza apache 2) Programma in C++ con suite client/server che si integra con OSRM, ORS e Valhalla SUITE COMPLETA!!! webservice proprietario oppure sviluppo necessità di sviluppare matrice dei costi necessità di sviluppare webservice
  • 29. VROOM Integrazione con OSRM, Open Route Service e Valhalla => richiesta matrice dei costi per qualsiasi profilo di mezzo disponibile VROOM EXPRESS => software in nodejs per gestire vroom come webservice JSON in INPUT => modellazione dei mezzi con ogni loro caratteristica: profilo mezzo, capienza, fascia oraria lavorativa, tipologia mezzo, punto partenza/ritorno, pause, ecc… => modellazione dei "jobs": punti di ritiro/consegna, dimensioni oggetti ritiro/consegna, fascia oraria consegna/ritiro, coordinate del luogo…. JSON in OUTPUT => soluzioni individuate: tempi totali, tempi di spostamento punto a punto, percorsi ecc… => eventuali punti non raggiungibili per questioni di tempo/spazio
  • 30. Conclusioni IN OUT Se vogliamo evitare l'effetto "garbage in = garbage out" dobbiamo avere più cura sulla qualità dei dati di OpenStreetMap. Lavoriamo insieme per i beni comuni.