繁体   English   中英

我可以使用增强图实现潜在的场/深度优先避障方法吗?

[英]Can I implement potential field/depth first method for obstacle avoidance using boost graph?

我在Matlab中实现了一个避障算法,它为图中的每个节点分配一个潜力,并试图降低这个潜力(路径规划的目标是全局最小值)。 现在可能会出现局部最小值,因此(全局)规划需要一种方法来摆脱这些局面。 我使用该策略获得了一个可以从已访问过的节点访问的开放节点列表。 我访问下一个具有最小潜力的开放节点。

我想用C ++实现它,我想知道Boost Graph是否已经有了这样的算法。 如果不是 - 如果我必须自己编写算法,那么使用这个库是否有任何好处,我还必须创建自己的图类,因为图形太大而无法作为邻接列表/边缘列表存储在内存中。

任何建议赞赏!

boost::graph提供最短路径/成本最小化算法列表 您可能对以下内容感兴趣: Dijkstra Shortest pathA *
算法可以轻松定制。 如果这不完全符合您的需求,请查看访问者概念 它允许您在某个预定义的事件点自定义算法。

最后, 分布式BGL处理巨大的图形(可能有数百万个节点)。 如果您的图形不适合内存,它将适用于您。

您可以在此处找到Boost Graph Library的概述。 当然,请不要犹豫,在stackoverflow上询问有关BGL的更具体问题。

在我看来, boost::graph对于实现新算法来说真的很棒,因为它提供了各种数据持有者,适配器和常用的东西(显然可以用作新构造算法的一部分)。

由于访问者和其他智能模式的使用,最后的也可以自定义。

实际上, boost::graph可能需要一些时间才能习惯,但在我看来,它确实值得。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM