我试图解决c ++中的旅行商问题,但我必须遍历一组poylgons而不是一组点之间的最短距离.为此,我试图通过代表性的"平均"内部点来表示每个多边形,以便我可以在这些平均内部点上执行TSP.
我很容易在凸多边形中找到一个平均内点,因为它只是算术平均点(并且总是位于凸多边形的内部),但这种方法不适用于凹多边形,因为它不一定在多边形的内部.
帮忙吗?谢谢.:-)
我有以下积分方程:

我试图解决积分方程,看看f(u)是否被预测为cos(2u).因为我们知道,解决了积分方程为cos(2U),我们可以从0近似积分到无穷大的极限0说,5如果能让积分值从5到无穷大可忽略不计,这样就可以通过选择t来做小.我已经为0到5之间的积分选择了100个评估点,这意味着我正在求解f(u)的100个值.由于我需要求解100个f(u)值,我需要生成100个方程,因此需要100个时间t值.我为1到1.3之间的时间t选择100个值,因为这将确保积分对于5和更大的值可忽略不计.以下是执行此操作的scipy代码:
from scipy import*
from matplotlib.pyplot import*
Nt_samples=100 #100 evaluation points for the time t
t=linspace(1.0,1.3,100)
number_eval_points=100 #100 evaluation points for u
eval_points=linspace(0.005,5,number_eval_points)
delta=eval_points[1]-eval_points[0]
R=zeros(100,1)
R=0.5*sqrt(2*3.14)*t*exp(-2*t*t)
A=zeros((Nt_samples,number_eval_points))
for i in range(100):
for j in range(100):
A[i,j]=delta*exp(-(eval_points[j]*eval_points[j])/(2*(t[i]*t[i])))
Z=cos(2*eval_points)
Fu=dot(linalg.inv(A),R)
plot(eval_points,Fu,eval_points,Z)
Run Code Online (Sandbox Code Playgroud)
不知何故,我对f(u)的结果与cos(2u)相差甚远.事实上,它们看起来像很多随机噪音,完全没有图案!而且,f(u)的大小非常大.我试过玩评估点的数量和t的值,但我没有运气.
参数/逻辑的代码/设置有什么问题吗?
太感谢了!
我正在尝试用大约10,000个城市来解决一个非常大的TSP.为了并行化我的任务,我想将这些城市划分为多个群集,并为每个群集解决TSP问题.
我想要一种方法,我可以将我的城市分成几组(根据城市密度/该群中每个城市之间的距离).
有没有人知道这样做有效的命令?