Supported versions: latest (3.8) 3.7 3.6 3.5 3.4 3.3 3.2 3.1 3.0 main dev
Unsupported versions:2.6 2.5 2.4 2.3 2.2 2.1 2.0

Table of Contents

pgRouting extends the PostGIS/PostgreSQL geospatial database to provide geospatial routing and other network analysis functionality.

This is the manual for pgRouting v4.0.0-dev.

Creative Commons Attribution-Share Alike 3.0 License

The pgRouting Manual is licensed under a Creative Commons Attribution-Share Alike 3.0 License. Feel free to use this material any way you like, but we ask that you attribute credit to the pgRouting Project and wherever possible, a link back to https://pgrouting.org. For other licenses used in pgRouting see the Licensing page.

General

  • Sample Data that is used in the examples of this manual.

Pgrouting Concepts

Function Families

All Pairs - Family of Functions

A* - Family of functions

Bidirectional A* - Family of functions

Bidirectional Dijkstra - Family of functions

Components - Family of functions

Contraction - Family of functions

Dijkstra - Family of functions

Flow - Family of functions

Kruskal - Family of functions

Metrics - Family of functions

  • pgr_degree - Returns a set of vertices and corresponding count of incident edges to the vertex.

Prim - Family of functions

Reference

Topology - Family of Functions

The following functions modify the database directly therefore the user must have special permissions given by the administrators to use them.

Traveling Sales Person - Family of functions

pgr_trsp - Turn Restriction Shortest Path (TRSP)

Utilities family

pgr_findCloseEdges

Functions by categories

Cost - Category

Cost Matrix - Category

Driving Distance - Category

K shortest paths - Category

  • pgr_KSP - Yen’s algorithm based on pgr_dijkstra

Spanning Tree - Category

BFS - Category

DFS - Category

Available Functions but not official pgRouting functions

Release Notes

pgRouting 4.0.0 Release Notes

To see all issues & pull requests closed by this release see the Git closed milestone for 4.0.0

Functions promoted to official

  • pgr_trsp

  • pgr_trspVia

  • pgr_trspVia_withPoints

  • pgr_trsp_withPoints

  • pgr_withPoints

  • pgr_withPointsCost

  • pgr_withPointsCostMatrix

  • pgr_withPointsDD

  • pgr_withPointsKSP

  • pgr_withPointsVia

Signatures promoted to official

  • pgr_aStar(Combinations)

  • pgr_aStarCost(Combinations)

  • pgr_bdAstar(Combinations)

  • pgr_bdAstarCost(Combinations)

  • pgr_bdDijkstra(Combinations)

  • pgr_bdDijkstraCost(Combinations)

  • pgr_dijkstra(Combinations)

  • pgr_dijkstraCost(Combinations)

  • pgr_KSP(All signatures)

  • pgr_boykovKolmogorov(Combinations)

  • pgr_edmondsKarp(Combinations)

  • pgr_maxFlow(Combinations)

  • pgr_pushRelabel(Combinations)

code enhancements:

  • Removal of unused C/C++ code

Removal of SQL deprecated functions

  • pgr_trsp(text,integer,double precision,integer,double precision,boolean,boolean,text)

  • pgr_trsp(text,integer,integer,boolean,boolean,text)

  • pgr_trspviaedges(text,integer[],double precision[],boolean,boolean,text)

  • pgr_trspviavertices(text,anyarray,boolean,boolean,text)

Removal of SQL deprecated internal functions

  • _pgr_dijkstranear(text,anyarray,anyarray,bigint,boolean)

  • _pgr_dijkstranear(text,anyarray,bigint,bigint,boolean)

  • _pgr_dijkstranear(text,bigint,anyarray,bigint,boolean)

  • _pgr_dijkstra(text,anyarray,anyarray,boolean,boolean,boolean,bigint)

  • _pgr_dijkstra(text,text,boolean,boolean,boolean)

  • _pgr_drivingdistance(text,anyarray,double precision,boolean,boolean)

  • _pgr_kruskal(text,anyarray,text,bigint,double precision)

  • _pgr_prim(text,anyarray,text,bigint,double precision)

  • _pgr_trsp(text,integer,double precision,integer,double precision,boolean,boolean,text)

  • _pgr_trsp(text,text,anyarray,anyarray,boolean)

  • _pgr_trsp(text,text,anyarray,bigint,boolean)

  • _pgr_trsp(text,text,bigint,anyarray,boolean)

  • _pgr_trsp(text,text,bigint,bigint,boolean)

  • _pgr_trspviavertices(text,integer[],boolean,boolean,text)

  • _pgr_withpointsvia(text,bigint[],double precision[],boolean)

  • _trsp(text,text,anyarray,anyarray,boolean)

  • _v4trsp(text,text,anyarray,anyarray,boolean)

  • _v4trsp(text,text,text,boolean)

Deprecation of internal C/C++ functions

  • _pgr_drivingdistance(text,anyarray,double precision,boolean,boolean)

  • _pgr_kruskal(text,anyarray,text,bigint,double precision)

  • _pgr_prim(text,anyarray,text,bigint,double precision)

Internal C/C++ functions in legacy

  • _trsp(text,text,anyarray,anyarray,boolean)

  • _v4trsp(text,text,anyarray,anyarray,boolean)

  • _v4trsp(text,text,text,boolean)

All releases

Indices and tables