dijkstra - 有兴趣通过dijkstra算法在opl cplex中找到k个最短路径
问题描述
我有兴趣通过 dijkstra 算法找到从源节点到目标节点的 k 最短路径。我已经在 dvar boolean 的帮助下解决了同样的问题,以清除链接的布尔变量,如果为路径选择链接,则该变量可以取值为 1,否则为 0,但问题是该变量计算每个流的最短路径,即很费时间。现在我有兴趣摆脱流量守恒约束并使用某种类型的算法来生成列方法,这种方法可以立即解决问题,而不是计算每个变量的路径。我期待着您的回音
解决方案
如果您关心性能,那么使用通用整数规划求解器来解决这个问题可能不是一个好主意。正如你在这里看到的例子,有专门的算法可以有效地解决 k 最短路径问题。如果您想坚持使用 OPL,那么您可以使用 OPLScript 实现这些算法。
推荐阅读
- java - Mockito 可以捕获实现中声明的变量的参数吗?
- reactjs - React Jest/React-testing-Library 路由更改无法正常工作
- video - Prestashop 1.7 主页上的视频自动播放
- html - CSS 不应用于打印
- java - 执行 FreeMarker 时,以下已评估为 null 或缺失
- angular - 移动设备两侧的 Flex 布局排水沟
- jquery - 如何在选定的表格行中重新排列追加表格行和表格数据
- angular - mat-paginator 改变 mat-paginator-range-label 的位置
- python - 致命错误:Python.h 没有这样的文件或目录 - 但已经安装了 python-dev
- c# - 触发自动生成的 DataGrid 列