Как мне найти решение проблемы коммивояжера? - PullRequest
0 голосов
/ 31 августа 2018

Я пытаюсь найти решение проблемы коммивояжера.

Я построил свою сеть с использованием igraph и сохранил соответствующие расходы в матрице с именем MyMatrix.

С этого момента, как можно получить самый дешевый тур и его стоимость, начиная с определенного города? Я знаю, что пакет TSP полезен, но у меня ничего не получилось. (Однако я получил минимальное связующее дерево.) Вот что я сделал:

MyMatrix<-matrix(get.adjacency(my.graph, attr = "weights"),5,5) #Typical TSP Matrix    
tsp <- TSP(as.dist(MyMatrix))  
tour <- solve_TSP(tsp, start = 1, method = "two_opt")  
tour  # Gives a different result each time  
my.cor<-abs(cor(MyMatrix, method="kendall", use="pairwise"))  
my.g<-graph.adjacency(my.cor,  
                      mode='undirected',  
                      weighted=TRUE,  
                      diag=FALSE)  
mst<-minimum.spanning.tree(my.g, algorithm='prim')  
plot.igraph(mst,  
            layout=layout.lgl,  
            vertex.label=colnames(my.cor),  
            vertex.label.font=2,  
            vertex.size=12,  
            vertex.color='light blue',  
            vertex.label.cex=0.6,  
            vertex.label.color='black')
...