SlideShare a Scribd company logo
1 of 48
Download to read offline
Shortest Path Search
with pgRouting
What is pgRouting ?
An Extension for
PostgreSQL / PostGIS,
...
An Open

Source

project, ...
A Library providing,
...
Shortest Path
Driving Distance
Traveling Salesperson
v2.0
Feature Highlights
➔ Two new All Pairs Short Path algorithms
➔ Bi-directional Dijkstra and A-star algorithms
➔ One to many nodes shortest path search
➔ New TSP solver (with distance matrix)
➔ Turn Restricted shortest path (replaces Shooting
Star algorithm)
➔ A collection of useful utility and graph analytics
functions
More Highlights
➔ Modular library design
➔ Unit tests and automated tests with Travis
➔ Compatibility with PostgreSQL 9.1+ / PostGIS 2.0+
➔ Installs as PostgreSQL EXTENSION
➔ Added pgr_ prefix to functions and types
➔ Improved build process for Windows
➔ Better documentation in several languages
https://www.transifex.com/projects/p/pgrouting/
Big THANK YOU to
- Steve Woodbridge

- Regina Obe

… and the pgRouting community!
Most users need pgRouting for

Road Networks
How do they look like?
Like this ...
… or like this ...
… or sometimes like this.
What makes them real?

Traffic lights

Signs

Road marking
pgRouting

extends

PostgreSQL/PostGIS
What does this mean?
SQL Function
SELECT * FROM pgr_dijkstra('
SELECT gid as id,
source::integer,
target::integer,
length::float8 as cost
FROM ways',
30, 60, false, false);
Query Result
seq | node | edge |
cost
-----+------+------+--------------------0 |
30 |
53 | 0.0591267653820616
1 |
44 |
52 | 0.0665408320949312
2 |
14 |
15 | 0.0809556879332114
3 |
13 |
14 |
0.072694271986776
4 |
12 |
13 |
0.081239348480584
5 |
11 |
12 | 0.00746935522787469
6 |
10 | 6869 | 0.0164274192597773
7 |
59 |
72 | 0.0109385169537801
8 |
60 |
-1 |
0
(9 rows)
gid,
source,
target,
cost,
reverse_cost,
x1, y1,
x2, y2,
rule,
to_cost

source

target
Traffic lights slow down

… so costs must increase.
B

C
1 min

A
cost(A) = cost(A) + 30sec
cost(B) = cost(B) + 30sec
cost(C) = cost(C) + 30sec
cost(D) = cost(D) + 30sec

D
Signs inform about
restrictions and rules
cost(A) = length(A)
reverse_cost(A) = ∞

A
Sometimes
the costs
have different
meaning.
cost(A) = length(A) / 2
reverse_cost(A) = length(A) * 4

B

A
Road type
can be used
for cost
calculation.
Not only road types
but also conditions
And you know
what is great about pgRouting?
All costs are dynamic!
… which is the opposite to pre-calculated
If the road is closed ...
… or there is an accident, ...
… there is a sign with
restrictions limited
to a certain time, ...
… bad weather conditions ...
You don't need to
rebuild and reload
your network
You only need to adjust the cost
for this particular road,
… and the next search will go another way.
Flexiblity vs. Speed
Cost can be virtually anything
pgRouting can be used for
different kinds of networks
Canals and
Rivers
Hiking trails
… or any other
kind of networks
Roadmap for Version 2.1
➔ Add “Multi-modal public transit routing”
(GSoC 2011)
➔ Add “Time dependent shortest path” algorithm
(GSoC 2011)
➔ Add “Two Queue” Algorithm (GSoC 2012)
➔ Add DARP and VRP (GSoC 2013)
➔ Add Graph network partitioning (GSoC 2013)
➔ …. further improvements and bug fixes.
https://github.com/pgRouting
More Information
Website:

pgrouting.org

Documentation:
Workshop:
日本語 NEW
Support:

docs.pgrouting.org
workshop.pgrouting.org
workshop.pgrouting.org/ja
pgrouting.org/support.html

… or talk contact us directly:
➔ Daniel Kastl daniel@georepublic.co.jp
➔ Hal Seki hal@georepublic.co.jp
Photos from sxc.hu and
flickr under Creative Commons Licence.

More Related Content

What's hot

Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
Computer Science Club
 
Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)
Matthias Trapp
 
Windows Phone
Windows PhoneWindows Phone
Windows Phone
sunflat
 

What's hot (20)

Geohash in mapping applications
Geohash in mapping applicationsGeohash in mapping applications
Geohash in mapping applications
 
Bellman ford algorithm
Bellman ford algorithmBellman ford algorithm
Bellman ford algorithm
 
Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
Andrew Goldberg. Highway Dimension and Provably Efficient Shortest Path Algor...
 
Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014Rethinking metrics: metrics 2.0 @ Lisa 2014
Rethinking metrics: metrics 2.0 @ Lisa 2014
 
Presentation: Plotting Systems in R
Presentation: Plotting Systems in RPresentation: Plotting Systems in R
Presentation: Plotting Systems in R
 
Matlab Visualizing Data
Matlab Visualizing DataMatlab Visualizing Data
Matlab Visualizing Data
 
Atomic algorithm and the servers' s use to find the Hamiltonian cycles
Atomic algorithm and the servers' s use to find the Hamiltonian cyclesAtomic algorithm and the servers' s use to find the Hamiltonian cycles
Atomic algorithm and the servers' s use to find the Hamiltonian cycles
 
General Programming on the GPU - Confoo
General Programming on the GPU - ConfooGeneral Programming on the GPU - Confoo
General Programming on the GPU - Confoo
 
Design the High Speed Kogge-Stone Adder by Using
Design the High Speed Kogge-Stone Adder by UsingDesign the High Speed Kogge-Stone Adder by Using
Design the High Speed Kogge-Stone Adder by Using
 
GC3 Beamer
GC3 BeamerGC3 Beamer
GC3 Beamer
 
Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)
 
2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical Visualization2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical Visualization
 
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S..."Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
"Moving CNNs from Academic Theory to Embedded Reality," a Presentation from S...
 
OL3-Cesium: 3D for OpenLayers maps
OL3-Cesium: 3D for OpenLayers mapsOL3-Cesium: 3D for OpenLayers maps
OL3-Cesium: 3D for OpenLayers maps
 
Model-counting Approaches For Nonlinear Numerical Constraints
Model-counting Approaches For Nonlinear Numerical ConstraintsModel-counting Approaches For Nonlinear Numerical Constraints
Model-counting Approaches For Nonlinear Numerical Constraints
 
Windows Phone
Windows PhoneWindows Phone
Windows Phone
 
Proof
ProofProof
Proof
 
ELECTRICAL POWER SYSTEMS ECONOMICS
ELECTRICAL POWER SYSTEMS ECONOMICSELECTRICAL POWER SYSTEMS ECONOMICS
ELECTRICAL POWER SYSTEMS ECONOMICS
 
Geometry Batching Using Texture-Arrays
Geometry Batching Using Texture-ArraysGeometry Batching Using Texture-Arrays
Geometry Batching Using Texture-Arrays
 
Real-time or full-precision CRS imaging using a cloud computing portal: multi...
Real-time or full-precision CRS imaging using a cloud computing portal: multi...Real-time or full-precision CRS imaging using a cloud computing portal: multi...
Real-time or full-precision CRS imaging using a cloud computing portal: multi...
 

Similar to pgRouting 2.0 presentation 2013

Cs403 Parellel Programming Travelling Salesman Problem
Cs403   Parellel Programming Travelling Salesman ProblemCs403   Parellel Programming Travelling Salesman Problem
Cs403 Parellel Programming Travelling Salesman Problem
Jishnu P
 
GPU_based Searching
GPU_based SearchingGPU_based Searching
GPU_based Searching
jpawan33
 
Spanning Tree in data structure and .pptx
Spanning Tree in data structure and .pptxSpanning Tree in data structure and .pptx
Spanning Tree in data structure and .pptx
asimshahzad8611
 
Sigmod11 outsource shortest path
Sigmod11 outsource shortest pathSigmod11 outsource shortest path
Sigmod11 outsource shortest path
redhatdb
 
Streaming Python on Hadoop
Streaming Python on HadoopStreaming Python on Hadoop
Streaming Python on Hadoop
Vivian S. Zhang
 
Writing a TSDB from scratch_ performance optimizations.pdf
Writing a TSDB from scratch_ performance optimizations.pdfWriting a TSDB from scratch_ performance optimizations.pdf
Writing a TSDB from scratch_ performance optimizations.pdf
RomanKhavronenko
 

Similar to pgRouting 2.0 presentation 2013 (20)

Shortest Path Search with pgRouting
Shortest Path Search with pgRoutingShortest Path Search with pgRouting
Shortest Path Search with pgRouting
 
Shortest path search for real road networks and dynamic costs with pgRouting
Shortest path search for real road networks and dynamic costs with pgRoutingShortest path search for real road networks and dynamic costs with pgRouting
Shortest path search for real road networks and dynamic costs with pgRouting
 
141031_Lagrange Relaxation Based Method for the QoS Routing Problem
141031_Lagrange Relaxation Based Method for the QoS Routing Problem 141031_Lagrange Relaxation Based Method for the QoS Routing Problem
141031_Lagrange Relaxation Based Method for the QoS Routing Problem
 
An open source multimodal journey planning system based on 'de facto' standards
An open source multimodal journey planning system based on 'de facto' standardsAn open source multimodal journey planning system based on 'de facto' standards
An open source multimodal journey planning system based on 'de facto' standards
 
Mathematics and development of fast TLS handshakes
Mathematics and development of fast TLS handshakesMathematics and development of fast TLS handshakes
Mathematics and development of fast TLS handshakes
 
Cs403 Parellel Programming Travelling Salesman Problem
Cs403   Parellel Programming Travelling Salesman ProblemCs403   Parellel Programming Travelling Salesman Problem
Cs403 Parellel Programming Travelling Salesman Problem
 
GPU_based Searching
GPU_based SearchingGPU_based Searching
GPU_based Searching
 
Spanning Tree in data structure and .pptx
Spanning Tree in data structure and .pptxSpanning Tree in data structure and .pptx
Spanning Tree in data structure and .pptx
 
Sigmod11 outsource shortest path
Sigmod11 outsource shortest pathSigmod11 outsource shortest path
Sigmod11 outsource shortest path
 
Algo labpresentation a_group
Algo labpresentation a_groupAlgo labpresentation a_group
Algo labpresentation a_group
 
dsa.pptx
dsa.pptxdsa.pptx
dsa.pptx
 
Streaming Python on Hadoop
Streaming Python on HadoopStreaming Python on Hadoop
Streaming Python on Hadoop
 
Automobile Route Matching with Dynamic Time Warping Using PySpark with Cather...
Automobile Route Matching with Dynamic Time Warping Using PySpark with Cather...Automobile Route Matching with Dynamic Time Warping Using PySpark with Cather...
Automobile Route Matching with Dynamic Time Warping Using PySpark with Cather...
 
NVIDIA CUDA
NVIDIA CUDANVIDIA CUDA
NVIDIA CUDA
 
MapReduceAlgorithms.ppt
MapReduceAlgorithms.pptMapReduceAlgorithms.ppt
MapReduceAlgorithms.ppt
 
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
PL/CUDA - Fusion of HPC Grade Power with In-Database AnalyticsPL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
PL/CUDA - Fusion of HPC Grade Power with In-Database Analytics
 
Design Of 64-Bit Parallel Prefix VLSI Adder For High Speed Arithmetic Circuits
Design Of 64-Bit Parallel Prefix VLSI Adder For High Speed Arithmetic CircuitsDesign Of 64-Bit Parallel Prefix VLSI Adder For High Speed Arithmetic Circuits
Design Of 64-Bit Parallel Prefix VLSI Adder For High Speed Arithmetic Circuits
 
Flight-schedule using Dijkstra's algorithm with comparison of routes findings
Flight-schedule using Dijkstra's algorithm with comparison of  routes findingsFlight-schedule using Dijkstra's algorithm with comparison of  routes findings
Flight-schedule using Dijkstra's algorithm with comparison of routes findings
 
Writing a TSDB from scratch_ performance optimizations.pdf
Writing a TSDB from scratch_ performance optimizations.pdfWriting a TSDB from scratch_ performance optimizations.pdf
Writing a TSDB from scratch_ performance optimizations.pdf
 
Dijkstra’S Algorithm
Dijkstra’S AlgorithmDijkstra’S Algorithm
Dijkstra’S Algorithm
 

More from Daniel Kastl

Location-based Task Management
Location-based Task ManagementLocation-based Task Management
Location-based Task Management
Daniel Kastl
 
pgRouting (Deutsch)
pgRouting (Deutsch)pgRouting (Deutsch)
pgRouting (Deutsch)
Daniel Kastl
 

More from Daniel Kastl (9)

Location-based Task Management
Location-based Task ManagementLocation-based Task Management
Location-based Task Management
 
Routing in der Datenbank
Routing in der DatenbankRouting in der Datenbank
Routing in der Datenbank
 
Speed up your GIS server - run GIS software on solid-state drives (SSD)
Speed up your GIS server - run GIS software on solid-state drives (SSD)Speed up your GIS server - run GIS software on solid-state drives (SSD)
Speed up your GIS server - run GIS software on solid-state drives (SSD)
 
OSM Japan before and after the Tsunami
OSM Japan before and after the TsunamiOSM Japan before and after the Tsunami
OSM Japan before and after the Tsunami
 
Where the streets have no name
Where the streets have no nameWhere the streets have no name
Where the streets have no name
 
pgRouting (Deutsch)
pgRouting (Deutsch)pgRouting (Deutsch)
pgRouting (Deutsch)
 
OpenVRP (Deutsch)
OpenVRP (Deutsch)OpenVRP (Deutsch)
OpenVRP (Deutsch)
 
OpenVRP Introduction
OpenVRP IntroductionOpenVRP Introduction
OpenVRP Introduction
 
Shortest Path Search in Real Road Networks with pgRouting
Shortest Path Search in Real Road Networks with pgRoutingShortest Path Search in Real Road Networks with pgRouting
Shortest Path Search in Real Road Networks with pgRouting
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

pgRouting 2.0 presentation 2013