Graph 从A到B的最短路径,包含特定点

Graph 从A到B的最短路径,包含特定点,graph,path,shortest,Graph,Path,Shortest,我有一组N个点,我有坐标(军械测量网格参考)。我想从A点开始,在B点结束,然后用最少的旅行时间参观沿途的所有其他点 我已经获得了Mathematica 9,但我正在努力学习。我尝试了FindShortTour,但这想让我回到起点。有什么建议吗?你的问题是“旅行推销员问题”的变种 建议是引导FindShortestTour函数将BA边包含到巡更中,然后从解决方案中删除BA:手动将BA边设置为,例如,-1000;找到最短的路线(检查BA是否在解决方案中!)并最终删除BA边缘:添加1000以补偿-您最

我有一组N个点,我有坐标(军械测量网格参考)。我想从A点开始,在B点结束,然后用最少的旅行时间参观沿途的所有其他点


我已经获得了Mathematica 9,但我正在努力学习。我尝试了FindShortTour,但这想让我回到起点。有什么建议吗?

你的问题是“旅行推销员问题”的变种


建议是引导FindShortestTour函数将BA边包含到巡更中,然后从解决方案中删除BA:手动将BA边设置为,例如,-1000;找到最短的路线(检查BA是否在解决方案中!)并最终删除BA边缘:添加1000以补偿-您最初设置的1000。

我不理解您的解决方案-我只有Cordinate。这里有一个例子。pts={569314190118}、{568027188950}、{572307188527}、{573703188113}、{574352193316}、{577823186280}、{580669187367}、{570874206069}第一点是起点,最后一点是终点。我想重新排列其他点以最小化总路径长度。在调用FindShortTour时使用距离函数参数:除BA(和AB)之外的所有距离都是标准的欧几里德sqrt((xi-xj)**2+(yi-yj)**2),而BA(和AB)是一个常量小数字,例如-1000