Διαδρομή για TSP

Mathletic
Δημοσιεύσεις: 275
Εγγραφή: Πέμ Μαρ 21, 2013 11:25 pm

Διαδρομή για TSP

#1

Μη αναγνωσμένη δημοσίευση από Mathletic » Παρ Αύγ 12, 2016 1:43 am

Γειά σας!!

Έχουμε την είσοδο για το TSP με 6 σημεία με τις εξής αποστάσεις:
distances.PNG
distances.PNG (6.84 KiB) Προβλήθηκε 1326 φορές


Θέλω να βρω την προσέγγιση για μια TSP-διαδρομή χρησιμοποιώντας το NEAREST NEIGHBOR και το NEAREST INSERTION ξεκινώντας με τον κόμβο 1.

Από τον παραπάνω πίνακα έχουμε το εξής γράφημα, ή όχι;
travelling_salesman_problem.png
travelling_salesman_problem.png (15.35 KiB) Προβλήθηκε 1326 φορές
Χρησιμοποιώντας το NEAREST NEIGHBOR ξεκινάμε από τον κόμβο 1 και μετά επισκεπτόμαστε σε κάθε βήμα έναν κόμβο, που δεν έχει επισκεφθεί, με την μικρότερη απόσταση, σωστά;
Οπότε, χρησιμοποιώντας αυτόν τον αλγόριθμο παίρνουμε την εξής διαδρομή:
1\rightarrow 6\rightarrow 4\rightarrow 3\rightarrow 2\rightarrow 5\rightarrow 1 με συνολική απόσταση 48
ή
1\rightarrow 6\rightarrow 4\rightarrow 5\rightarrow 2\rightarrow 3\rightarrow 1 με συνολική απόσταση 49
σωστά;


Ο αλγόριθμος NEAREST INSERTION είναι ο εξής:

Κώδικας: Επιλογή όλων

T <- {1} 
while |T|<n do 
   j <- vertex with minimal d(T,j), j notin T 
   insert j with minimal cost into T 
return T
όπου d(T,j)=\min_{i\in T}d(i,j) και τα κόστη, να προσθέσουμε το j ανάμεσα στα i και k είναι \text{cost}(j)=\min_{(i,k)\in T} d(i,j)+d(j,k)-d(i,k)

Οπότε χρησιμοποιώντας αυτόν τον αλγόριθμο έχουμε:

Κώδικας: Επιλογή όλων

T = {1} 
j = 6 , d(1,6)=2 
T = {1,6} 
j = 2 , d(1,2)=3 
T = {1,6,2} 
j = 4 , d(1,4)=d(6,4)=4 
T={1,6,2,4} 
j = 3 , d(2,3)=d(4,3)=10  ή    j = 5 , d(4,5)=d(6,5)=10 
T = {1,6,2,4,3}                T = {1,6,2,4,5}
j = 5 , d(4,5)=d(6,5)=10       j = 3 , d(4,3)=d(2,3)=10
T = {1,6,2,4,3,5}              T = {1,6,2,4,5,3} 
με συνολική απόσταση 2+3+4+10+10=29.

Είναι σωστά αυτά που έχω κάνει;


Απάντηση

Επιστροφή σε “Μαθηματική Λογική & Θεμέλια Μαθηματικών”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης