开源改变世界

在 gcode 上使用 TSP? #423

推推 grbl 2年前 (2023-02-04) 154次浏览
打开
jorgerobles 打开了这个问题 2017 年 10 月 8 日 · 10 条评论
打开

在 gcode 上使用 TSP?#423

jorgerobles 打开了这个问题 2017 年 10 月 8 日 · 10 条评论

评论

在 gcode 上使用 TSP? #423
合作者

@tbfleming您如何看待在生成的 GCODE 上使用旅行商的可能性?

这是使用 WEBGL 加速的方法!https://amoffat.github.io/held-karp-gpu-demo/?gpu=1

在 gcode 上使用 TSP? #423
成员

该演示将 GPU 求解器限制为 16 个节点。我们需要数百个。如果它能在短时间内解决数百个问题,那就值得考虑了。我怀疑(我还没有确定)GPU 代码不能在 worker 上运行。

在 gcode 上使用 TSP? #423
合作者作者
jorgerobles 评论了 2017 年 10 月 8 日  

是的,我一直在寻找现成的库,但一无所获。我认为最有前途的是(非 gpu)http://parano.github.io/GeneticAlgorithm-TSP/ 和http://francisshanahan.com/tsa/tsaGAworkers.htm

在 gcode 上使用 TSP? #423
成员

需要注意的事项:我们没有纯 TSP 配方。我们有以下节点而不是节点:

  • 开放路径:2 个端点。TSP 必须决定进入哪个端点和退出哪个端点。
  • 封闭路径:TSP 必须决定环路上的哪一点应该是入口点。它也将是出口点。

完全优化的 TSP 方法可能没有明显的方法来扩展它来处理我们的案例。

在 gcode 上使用 TSP? #423
合作者作者

我们可以使用预定义的坐标(如归巢位置)作为原点吗?这很天真,但也许适合第一种方法?

在 gcode 上使用 TSP? #423
合作者作者

嗯,在 gcodes 上做了一些工作http://xyzbots.com/gcode-optimizer/

在 gcode 上使用 TSP? #423

几个月前,我写了一个简单但非常有效的 gcode 优化器,在我的例子中,它大大减少了无用的 G0 移动。我在 LaserWeb3 中实现了它,但我从未将它推到上游(https://github.com/Biondilbiondo/LaserWeb3)。如果你喜欢它,我会很乐意在 laserweb 4 中实现它。在我的工作中,我没有使用真正的解决方案来解决 TSP 问题,它非常复杂并且 CPU(或 GPU)密集(也在 euristhic 方法中,参见例如,据我所知解决 tsp 的最佳程序之一http://www.math.uwaterloo.ca/tsp/concorde.html) 任务,但我只是应用最近邻搜索,它给出的路径不是最佳路径,但比默认路径好得多(至少在 laserweb3 中,它只采用与 svg 文件中相同的路径顺序)。如果你喜欢这种工作,请帮我找到应该实现优化器的地方(我想是在 cam.js 的 cut 函数中的某个地方?)
Biondilbiondo

在 gcode 上使用 TSP? #423
成员

cam.js 中的 mergePaths() 进行最近邻搜索。

在 gcode 上使用 TSP? #423
合作者作者

@Biondilbiondo感谢您的支持!但似乎确实有一个 NN 算法 @tbfleming说。

我找到了另一个https://github.com/lovasoa/salesman.js并且看起来很有前途。

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

3人参加
在 gcode 上使用 TSP? #423在 gcode 上使用 TSP? #423在 gcode 上使用 TSP? #423

喜欢 (0)