cppRouting v3.1
- cppRouting use tinythread as parallel backend
cppRouting v3.0
Major changes
- All C++ code have been rewritten in a much more OOP way, and can be
easily used outside of Rcpp
- All routing algorithms are now implemented in subclasses of
RcppParallel::Worker and are natively multithreaded
- graph are now internally represented as adjacency lists (3 vectors),
which is generally 20% faster for routing
get_path_pair
, get_isochrone
,
get_detour
and get_multi_paths
are now
multithreaded
- aggregating a secondary weight along shortest path is now
implemented for
get_distance_pair
and
get_distance_matrix
, for both normal and contracted
network, and multithreaded
- implementation of all-or-nothing assignment for both normal and
contracted network, multithreaded
- link-based algorithms for the calculation of the User Equilibrium
(UE) : Method of Successive Averages, variants of Frank-Wolfe algorithm
(normal, conjugate, bi-conjugate). Multithreaded
- bush-based algorithm for the calculation of the User Equilibrium
(UE) : algorithm-B from R.B. Dial (with batching for large OD matrix).
Partially multithreaded.
- implementation of stall-on-demand technique (see Geisberger, 2008)
which speed-up routing computation on a contracted network (both
pairwise and matrix)
Minor changes
- bug fix in
get_path_pair
and
get_multi_paths
: node sequence listed from
origin
to destination
node.
cppRouting v2.0
Major changes
- implementation of contraction hierarchies algorithm
- thread-safe implementation of all parallel algorithms with
RcppParallel
package instead of parallel
- implementation of one-to-one query algorithm on contracted
graph
- implementation of many-to-many query algorithm on contracted
graph
- implementation of PHAST algorithm on contracted graph
Minor changes
- new options
long
and keep
for
get_path_pair
, get_isochrone
and
get_multi_paths
functions
- remove
allcores
option for get_detour
function
- optimization of
cpp_simplify
function
- optimization of
makegraph
function
cppRouting v1.2
Major changes
- new functions
cpp_simplify
, get_detour
and
to_df
Minor changes
- bug fix in
get_distance_pair
and
get_path_pair
: verify that origin / destination nodes are
present in the graph before running c++ function
- modification of
get_distance_pair
and
get_path_pair
Rd. files : clearer explanation about the
choice between algorithms
- optimization of
get_distance_matrix
function : if
length(to) < length(from) then Dijkstra algorithm is ran from
destination nodes on reversed graph
cppRouting v1.1
First CRAN release