{
  "_id": "6a60854614e95619b75dab72",
  "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": "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-07-22 08:45:35 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/e204bce40ac33dc6f6d639f3776a55604845eeb8e99e3893a91fc276b6d8fc15",
  "_filesize": 300113,
  "_sha256": "e204bce40ac33dc6f6d639f3776a55604845eeb8e99e3893a91fc276b6d8fc15",
  "_expires": "2026-10-30T08:54:28.000Z",
  "_created": "2026-07-22T08:45:35.000Z",
  "_published": "2026-07-22T08:54:30.717Z",
  "_jobs": [
    {
      "job": 88875227792,
      "time": 155,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8523621116"
    },
    {
      "job": 88875227878,
      "time": 197,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8523639665"
    },
    {
      "job": 88875227808,
      "time": 159,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523623008"
    },
    {
      "job": 88875227856,
      "time": 187,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523635136"
    },
    {
      "job": 88875227848,
      "time": 165,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8523617047"
    },
    {
      "job": 88875227837,
      "time": 441,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8523730126"
    },
    {
      "job": 88875227874,
      "time": 237,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523644842"
    },
    {
      "job": 88875227812,
      "time": 367,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523702159"
    },
    {
      "job": 88874187744,
      "time": 295,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523554260"
    },
    {
      "job": 88875227799,
      "time": 150,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "8523619068"
    },
    {
      "job": 88875227880,
      "time": 217,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8523650358"
    },
    {
      "job": 88875227809,
      "time": 184,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8523634220"
    },
    {
      "job": 88875227802,
      "time": 200,
      "config": "windows-release",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8523642389"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682",
  "_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": 7,
  "_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": 121,
  "_contributors": [
    {
      "user": "vlarmet",
      "count": 151,
      "uuid": 48824420
    }
  ],
  "_userbio": {
    "uuid": 48824420,
    "type": "user",
    "name": "vlarmet",
    "followers": 13
  },
  "_downloads": {
    "count": 692,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/cppRouting"
  },
  "_devurl": "https://github.com/vlarmet/cpprouting",
  "_searchresults": 77,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/cppRouting.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_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.29149539022285,
  "_indexed": true,
  "_nocasepkg": "cpprouting",
  "_universes": [
    "vlarmet"
  ],
  "_previous": "3.2",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "4.0",
      "date": "2026-07-22T08:48:17.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/b8a76b0090e714285ffcb12b4ce0ec8c225d707b5990c2cb9f345d37a8c09b05",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "4.0",
      "date": "2026-07-22T08:48:46.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/f7af3adea06f16ef55c281f527cd8b753076b7bb2690953b42071de1fd54fff5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "4.0",
      "date": "2026-07-22T08:48:22.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/faea8c74d8784485b90c0744da065228c8ad5727acefed91d5947ec70963a352",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "4.0",
      "date": "2026-07-22T08:48:41.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/6176db79dc08f85aca39533347f507dabd2c57f3b49ac6c49a3fc1a35320fc8b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "4.0",
      "date": "2026-07-22T08:48:24.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/dfcf76f0b7bc76d1aa1be8962147a780884eb7874599a97b38c1a0a76d2fb867",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "4.0",
      "date": "2026-07-22T08:49:58.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/79c5f255fe0355537445335a85da3e12d0552205398ab14b13ced80f2a967c20",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "4.0",
      "date": "2026-07-22T08:48:48.000Z",
      "arch": "aarch64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/59be0d225b8fa7ddfc1e0bc110191733e8eab1f25e7408a6a9d81e5a88b165e8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "4.0",
      "date": "2026-07-22T08:49:57.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/23535eaf29016719a4c91f400d9ba5744378a2f42ffb1a5c0cf1be897f70fb69",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "4.0",
      "date": "2026-07-22T08:48:29.000Z",
      "arch": "emscripten",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/5782f45a4044320378cc79d878d9a026451c4266eaecf50a1a3c85ccacb08e5c",
      "status": "success",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "4.0",
      "date": "2026-07-22T08:47:52.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/eca8f5e55342b184ef30006894834ee15328d97e7290a7436714d704d0312ae7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "4.0",
      "date": "2026-07-22T08:47:30.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/e610b22866189a9064bb9cbecb9305c05d924cf77b99662af0a412e49f135436",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "4.0",
      "date": "2026-07-22T08:47:44.000Z",
      "arch": "x86_64",
      "commit": "7c5f9345a4e2d13e4aceccdbee4687105ed54fa0",
      "fileid": "https://r2.ropensci.org/acb8a0b94cd4cbc166f4a152ffe17816b82c01abc24243df1261253ec3880863",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/vlarmet/actions/runs/29904975682"
    }
  ]
}