{
  "_id": "6aaf9c143d719c1f8407fb20",
  "Package": "cppRouting",
  "Type": "Package",
  "Title": "Algorithms for Routing and Solving the Traffic Assignment\nProblem",
  "Version": "4.0",
  "Date": "2025-11-28",
  "Authors@R": "person(given = \"Vincent\",family = \"Larmet\",role = c(\"aut\", \"cre\"),email = \"larmet.vincent@gmail.com\")",
  "Description": "Calculation of distances, shortest paths and isochrones on\nweighted graphs using several variants of Dijkstra algorithm.\nProposed algorithms are unidirectional Dijkstra (Dijkstra, E.\nW. (1959) <doi:10.1007/BF01386390>), bidirectional Dijkstra\n(Goldberg, Andrew & Fonseca F. Werneck, Renato (2005)\n<https://www.cs.princeton.edu/courses/archive/spr06/cos423/Handouts/EPP%20shortest%20path%20algorithms.pdf>),\nA* search (P. E. Hart, N. J. Nilsson et B. Raphael (1968)\n<doi:10.1109/TSSC.1968.300136>), new bidirectional A* (Pijls &\nPost (2009) <https://repub.eur.nl/pub/16100/ei2009-10.pdf>),\nContraction hierarchies (R. Geisberger, P. Sanders, D. Schultes\nand D. Delling (2008) <doi:10.1007/978-3-540-68552-4_24>),\nPHAST (D. Delling, A.Goldberg, A. Nowatzyk, R. Werneck (2011)\n<doi:10.1016/j.jpdc.2012.02.007>). Algorithms for solving the\ntraffic assignment problem are All-or-Nothing assignment,\nMethod of Successive Averages, Frank-Wolfe algorithm (M.\nFukushima (1984) <doi:10.1016/0191-2615(84)90029-8>), Conjugate\nand Bi-Conjugate Frank-Wolfe algorithms (M. Mitradjieva, P. O.\nLindberg (2012) <doi:10.1287/trsc.1120.0409>), Algorithm-B (R.\nB. Dial (2006) <doi:10.1016/j.trb.2006.02.008>), Customizable\nContraction Hierarchies (J. Dibbelt, B. Strasser, D. Wagner\n(2014) <doi:10.1145/2886843>).",
  "License": "GPL (>= 2)",
  "Encoding": "UTF-8",
  "SystemRequirements": "GNU make",
  "URL": "https://github.com/vlarmet/cppRouting",
  "VignetteBuilder": "knitr",
  "NeedsCompilation": "yes",
  "Config/roxygen2/version": "8.0.0",
  "Config/testthat/edition": "3",
  "Config/pak/sysreqs": "cmake make",
  "Repository": "https://vlarmet.r-universe.dev",
  "Date/Publication": "2026-07-22 07:36:11 UTC",
  "RemoteUrl": "https://github.com/vlarmet/cpprouting",
  "RemoteRef": "HEAD",
  "RemoteSha": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
  "Packaged": {
    "Date": "2026-09-20 08:29:29 UTC",
    "User": "root"
  },
  "Author": "Vincent Larmet [aut, cre]",
  "Maintainer": "Vincent Larmet <larmet.vincent@gmail.com>",
  "_user": "vlarmet",
  "_type": "src",
  "_file": "cppRouting_4.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/342582076c18b220a40a7158396e33d195fc4dcf06c984ea3b82b0ceee9eecd2",
  "_filesize": 302996,
  "_sha256": "342582076c18b220a40a7158396e33d195fc4dcf06c984ea3b82b0ceee9eecd2",
  "_expires": "2026-12-29T08:40:50.000Z",
  "_created": "2026-09-20T08:29:29.000Z",
  "_published": "2026-09-20T08:40:52.678Z",
  "_jobs": [
    {
      "job": 106049277494,
      "time": 175,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10602040807"
    },
    {
      "job": 106049277544,
      "time": 196,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10600604954"
    },
    {
      "job": 106049277595,
      "time": 174,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10600949284"
    },
    {
      "job": 106049277532,
      "time": 175,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10602375371"
    },
    {
      "job": 106049277582,
      "time": 211,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "10601794048"
    },
    {
      "job": 106049277527,
      "time": 583,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "10600999556"
    },
    {
      "job": 106049277515,
      "time": 164,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10602270061"
    },
    {
      "job": 106049277545,
      "time": 432,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10602056004"
    },
    {
      "job": 106048673355,
      "time": 295,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10601870989"
    },
    {
      "job": 106049277541,
      "time": 158,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "10602195580"
    },
    {
      "job": 106049277609,
      "time": 413,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10600859595"
    },
    {
      "job": 106049277594,
      "time": 212,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10601841347"
    },
    {
      "job": 106049277573,
      "time": 184,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "10601811558"
    },
    {
      "job": 106049277562,
      "time": 417,
      "config": "windows-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10601623743"
    },
    {
      "job": 106049277569,
      "time": 195,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10601841339"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711",
  "_status": "success",
  "_upstream": "https://github.com/vlarmet/cpprouting",
  "_commit": {
    "id": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
    "author": "vlarmet <vincent.larmet@apeiron.technology>",
    "committer": "vlarmet <vincent.larmet@apeiron.technology>",
    "message": "Merge branch 'test/cch-suite'\n",
    "time": 1784705771
  },
  "_maintainer": {
    "name": "Vincent Larmet",
    "email": "larmet.vincent@gmail.com",
    "login": "vlarmet",
    "description": "",
    "uuid": 48824420
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "RcppParallel",
      "role": "LinkingTo"
    },
    {
      "package": "RcppProgress",
      "role": "LinkingTo"
    },
    {
      "package": "Rcpp",
      "version": ">= 1.0.7",
      "role": "Imports"
    },
    {
      "package": "RcppParallel",
      "role": "Imports"
    },
    {
      "package": "data.table",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "igraph",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "vlarmet",
  "_selfowned": true,
  "_usedby": 6,
  "_updates": [
    {
      "week": "2025-48",
      "n": 2
    },
    {
      "week": "2026-30",
      "n": 2
    }
  ],
  "_tags": [],
  "_topics": [
    "algorithm",
    "algorithm-b",
    "bidirectional-a-star-algorithm",
    "c-plus-plus",
    "contraction-hierarchies",
    "dijkstra-algorithm",
    "distance",
    "frank-wolfe",
    "isochrones",
    "parallel-computing",
    "rcpp",
    "shortest-paths",
    "traffic-assignment",
    "cpp"
  ],
  "_stars": 122,
  "_contributors": [
    {
      "user": "vlarmet",
      "count": 151,
      "uuid": 48824420
    }
  ],
  "_userbio": {
    "uuid": 48824420,
    "type": "user",
    "name": "vlarmet",
    "followers": 13
  },
  "_downloads": {
    "count": 631,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/cppRouting"
  },
  "_devurl": "https://github.com/vlarmet/cpprouting",
  "_searchresults": 78,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/cppRouting.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_homeurl": "https://github.com/vlarmet/cpprouting",
  "_realowner": "vlarmet",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.1",
      "date": "2019-06-21"
    },
    {
      "version": "1.2",
      "date": "2019-09-30"
    },
    {
      "version": "2.0",
      "date": "2020-01-07"
    },
    {
      "version": "3.0",
      "date": "2022-11-28"
    },
    {
      "version": "3.1",
      "date": "2022-12-01"
    },
    {
      "version": "3.2",
      "date": "2025-11-28"
    }
  ],
  "_exports": [
    "assign_traffic",
    "cpp_contract",
    "cpp_customize",
    "cpp_simplify",
    "get_aon",
    "get_detour",
    "get_distance_matrix",
    "get_distance_pair",
    "get_isochrone",
    "get_multi_paths",
    "get_path_pair",
    "makegraph",
    "to_df"
  ],
  "_help": [
    {
      "page": "assign_traffic",
      "title": "Algorithms for solving the Traffic Assignment Problem (TAP).",
      "topics": [
        "assign_traffic"
      ]
    },
    {
      "page": "cpp_contract",
      "title": "Contraction hierarchies algorithm",
      "topics": [
        "cpp_contract"
      ]
    },
    {
      "page": "cpp_customize",
      "title": "Customize a CCH with edge weights",
      "topics": [
        "cpp_customize"
      ]
    },
    {
      "page": "cpp_simplify",
      "title": "Reduce the number of edges by removing non-intersection nodes, duplicated edges and isolated loops in the graph.",
      "topics": [
        "cpp_simplify"
      ]
    },
    {
      "page": "get_aon",
      "title": "Given an origin-destination matrix, compute All-or-Nothing assignment.",
      "topics": [
        "get_aon"
      ]
    },
    {
      "page": "get_detour",
      "title": "Return the nodes that can be reached in a detour time set around the shortest path",
      "topics": [
        "get_detour"
      ]
    },
    {
      "page": "get_distance_matrix",
      "title": "Compute all shortest distance between origin and destination nodes.",
      "topics": [
        "get_distance_matrix"
      ]
    },
    {
      "page": "get_distance_pair",
      "title": "Compute shortest distance between origin and destination nodes.",
      "topics": [
        "get_distance_pair"
      ]
    },
    {
      "page": "get_isochrone",
      "title": "Compute isochrones/isodistances from nodes.",
      "topics": [
        "get_isochrone"
      ]
    },
    {
      "page": "get_multi_paths",
      "title": "Compute all shortest paths between origin and destination nodes.",
      "topics": [
        "get_multi_paths"
      ]
    },
    {
      "page": "get_path_pair",
      "title": "Compute shortest path between origin and destination nodes.",
      "topics": [
        "get_path_pair"
      ]
    },
    {
      "page": "makegraph",
      "title": "Construct graph",
      "topics": [
        "makegraph"
      ]
    },
    {
      "page": "to_df",
      "title": "Convert cppRouting graph to data.frame",
      "topics": [
        "to_df"
      ]
    }
  ],
  "_readme": "https://github.com/vlarmet/cpprouting/raw/HEAD/README.md",
  "_rundeps": [
    "data.table",
    "Rcpp",
    "RcppParallel",
    "RcppProgress"
  ],
  "_sysdeps": [
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "16-20260322-1ubuntu1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_vignettes": [
    {
      "source": "cppRouting.Rmd",
      "filename": "cppRouting.html",
      "title": "cppRouting",
      "author": "Vincent Larmet",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Package presentation",
        "Main functions",
        "Routing algorithms",
        "Traffic assignment algorithms",
        "All-or-Nothing (AON)",
        "User Equilibrium (UE)",
        "Examples and applications using cppRouting"
      ],
      "created": "2022-11-28 13:41:10",
      "modified": "2022-11-28 13:41:10",
      "commits": 1
    }
  ],
  "_score": 8.233726938468536,
  "_indexed": true,
  "_nocasepkg": "cpprouting",
  "_universes": [
    "vlarmet"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "4.0",
      "date": "2026-09-20T08:32:31.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/b68df35e4f87295524a5955717ce2691ddc6dddb37db409a06056f1fa638dc6a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "4.0",
      "date": "2026-09-20T08:32:32.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/0eb86cc629d875c07e7d2f9d1e81bdcc36c9ce75ea2938238002b7cd52328a87",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "4.0",
      "date": "2026-09-20T08:32:32.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/b40a2687c68a377f7e2c82de6b382bb59d5c993b34f8aa938cf833d03220d7a4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "4.0",
      "date": "2026-09-20T08:32:30.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/caf4c65e74ebf957aaab894c2cac2dd956ffe503de0323c0ae5352998266278d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "4.0",
      "date": "2026-09-20T08:33:58.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/f3ffb9fec0ac84092c40533ddc67c9221077c4eea7752720b6646ea224acf9de",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "4.0",
      "date": "2026-09-20T08:35:54.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/666c5ea88522a4de7727f65c56949f4544befcb2dcd3893faec449428df9b9d8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "4.0",
      "date": "2026-09-20T08:32:39.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/f6b6ab86759b5b3a39f27d8d7c1c840b4aa30947d68b4ea790092b6147eb74a4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "4.0",
      "date": "2026-09-20T08:34:36.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/87297f275a58000f0da9707061f50b23e8a1167a998252f47d997efaecbfbfca",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "4.0",
      "date": "2026-09-20T08:32:26.000Z",
      "arch": "emscripten",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/421ebc25e523ad86f89e9d279031826aa74f9a35b22703183ade99d4d27f0062",
      "status": "success",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "4.0",
      "date": "2026-09-20T08:35:18.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/dd85e98ca8ecdef9aa6cf710501cc69cd3e7e81c21652e1c248274d316533ade",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "4.0",
      "date": "2026-09-20T08:31:26.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/26f33de4d57162b47135322d4ef5ae94324b80774ae7fedf2b9836bcfb7dfbc6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "4.0",
      "date": "2026-09-20T08:31:55.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/ff242c082b866ce601399aa9ca43ee8f470c42c305a43cc4a6ea96e81d1cbd45",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "4.0",
      "date": "2026-09-20T08:35:11.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/6f5c21da0e80b06924748e5aad954068186a289e9c982c92805379bcf0cc05c3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "4.0",
      "date": "2026-09-20T08:31:22.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/8d321e0f0fab6f4297f2811c349ccf4e4810224e78659af758335b66b10fc296",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/35499508711"
    }
  ]
}