osrm - 为什么 OSRM 实施收缩层次结构和 MLD 而不是 A*?
问题描述
我正在经历 OSRM 的实施;他们实现了路由算法 CH 和 MLD。我想知道使用这些算法背后的动机。更重要的是,我们不能在这两种算法中动态改变边缘权重。
解决方案
在 OSRM 中实现的 CH 和 MLD 算法是“加速算法”——它们可以在增强图上更快地找到最短路径。
使用这些类型的算法的典型权衡是您失去了灵活性 - 增强图的形状取决于权重,因此如果您更改它们,您需要重新生成增强图以使其继续有效。
推荐阅读
- time-series - 如何从时间序列中消除严重错误?
- java - Java/操作系统中的信号量
- firefox - Firefox 56+ 打破了跨多个窗口/标签的 Gamepad API
- python - 为什么舵机要按箭头键 3 次才能移动?
- sql - HANA:数据类型 BLOB 的数据库列中的未知字符
- arduino - ASP.NET Core + ESP32 HTTP 请求,GET 返回代码 200,但内容不可读
- jquery - ASP。NET MVC 数据表类型错误:$(...).DataTable 不是函数
- sql-server - 将###-###-####电话号码转换为字符串而不是数学运算
- sql - 有条件地从不同的表中选择
- python - 如何在 X 轴上设置刻度以仅在值更改时显示?