位置优化

问题描述

问题:

我有多个几何图形,它们可能相互连接,也可能不相互连接。每个连接都有一个值。我想通过重新定位数字来最小化连接。为了更好地理解,您可以将其想象为具有多个节点的无向​​图:

enter image description here

我想重新定位节点以最小化所有边的总和,而不是搜索最短路径。在节点不相交的约束下。边缘的权重不仅仅是到中心的欧几里得距离。首先,因为在我的具体问题中,距离是从“质心”开始测量的。其次,正如我之前所说,节点可以是任何几何图形。图形无法旋转,因此唯一的变量是节点的 x,y 位置。

我有什么:

我有一个碰撞函数,可以检测节点是否相交。我有一个函数,它根据节点的位置计算所有边的总和。

我需要什么:

我需要一个合适的算法来通过重新定位节点来最小化边的总和。我认为这个问题没有贪心算法,因为节点的位置可以互相阻塞。但请纠正我。基本上我有一个动态约束的优化问题,每次迭代都会改变。目前,如果数字发生冲突,我会为函数添加一个非常高的惩罚值。我不想使用神经网络。我使用python进行计算。所以目前我正在使用 scipy.optimize.minimze 函数,但我对所有这些算法都不太熟悉。

如有必要,请要求明确。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)