我在2D Grid
上安排了一个节点网络。我想连接具有连接的节点对,然后占用2D网格上的物理空间。现在这些连接本身就是障碍,未来的连接将不得不走一条避免相交的路径。
我目前正在使用A* algorithm
并逐步建立连接。虽然它找到从开始到结束节点的最短路径,但它不考虑需要进行的其他连接,因此连接所有对之后的总路径成本不是最佳的。
有谁知道是否有一种算法可以解决这个问题,或者这是一个NP完全问题?关于相关材料的任何指示也将受到赞赏。
答案 0 :(得分:0)
您似乎正在尝试查找minimum genus graph embedding, 其中您的节点是图形顶点,所需的连接是其边缘。 您的案例中的最小属可以解释为所需的最小边数交叉。 寻找最小长度的连接使它更难(或者它?)
最小图形属本身是NP完全的(特别是它的决策版本 - 图形是否可以嵌入到小于k
的属的表面中)。
因此,如果任务是找到交叉次数最少的路径,那么你的问题也是NP难的。
但是,如果仅考虑平面图形,则可以在线性时间内完成平面嵌入。