我正在阅读Skiena的“算法设计手册”,第5页“机器人巡回赛优化”中有一个问题,他说:“假设给我们一个配备了工具的机器人手臂,比如焊锡铁。在制造电路板时,所有的芯片和其他部件都必须固定在基板上。更具体地说,每个芯片都有一组接触点必须焊接到电路板上。要为这项工作编写机器人手臂的程序,我们必须先构造一个接触点的顺序,以便机器人访问第一个接触点,第二个,等等……”
“我们必须先建立一种秩序”--这在我看来是很奇怪的。
因为,每个芯片都有一定数量的引脚,它们被编号,它们的位置被记录下来,看这里:

我的意思是,芯片没有一组引脚,它有一个有序的引脚列表,好吧,它没有,但是它有非常具体的尺寸和每个侧面的引脚的特定顺序,这样就可以很容易地计算出它们的精确位置(和顺序)。
也许无关,但可能IRL板是移动在某种夹子在X,Y维和焊铁只上升和下降。
作为机器人优化旅行的一个例子,我能给出的最简单的问题是,一个骑着车去拜访所有客户的比萨饼快递员(假设流量接近于零),并尽可能少地使用汽油返回给重新启动的阿姨。所以他需要一个工具(汽车导航仪)来解决这个问题。导航应用程序需要找到最优的路径--所以,它说明了这个问题。
我是对的,原来的机器人手臂的问题说明是错的吗?
发布于 2012-08-22 22:10:12
板上通常有多个大小不一的芯片。你在薯片中按什么顺序移动?你是在假设手臂会完成一个芯片的焊接,然后再进入下一个芯片吗?它可能需要较少的移动机器人手臂焊接在相邻芯片的相邻边缘的引脚之前,完成远侧引脚。
发布于 2012-08-22 22:10:01
的确,芯片上的引脚是有编号的。但是,当找到最好的顺序焊接引脚时,现有的编号不一定是最优的。当引脚布置在边缘的一条线上时,给定的编号可能是最优的。但是,当您有一些奇怪的布局,比如在x86处理器中的布局,它可能不是。

实际上,这样的处理器上的引脚没有编号,而是由行和列引用:

发布于 2012-08-22 21:50:02
在机器人焊接引脚之前,它必须首先知道引脚在哪里,并且按照特定的顺序访问引脚可能比随机访问它们更有效。因此,命令。
记住,机器只知道你告诉他们什么,所以如果你想让他们在一个特定的序列中访问点,你必须告诉他们这个序列是什么,这样它就可以执行计算,把手臂从一个点移到另一个点。
请注意,您的插图中的芯片是一个表面贴装装置;它很可能是使用汽相或对流系统焊接的,该系统可以同时焊接所有的引脚,而不需要机器人手臂。因此,这可能不是一个很好的例子。
https://softwareengineering.stackexchange.com/questions/161921
复制相似问题