80 likes | 205 Views
The Traveling Salesman Problem. Importance: Variety of scheduling application can be solved as a traveling salesmen problem. Examples : Ordering drill position on a drill press. School bus routing. THE FEDERAL EMERGENCY MANAGEMENT AGENCY.
E N D
The Traveling Salesman Problem • Importance: • Variety of scheduling application can be solved as atraveling salesmen problem. • Examples: • Ordering drill position on a drill press. • School bus routing.
THE FEDERAL EMERGENCY MANAGEMENT AGENCY • A visit must be made to four local offices of FEMA, going out from and returning to the same main office in Northridge, Southern California.
40 2 3 25 35 50 40 50 1 4 65 45 30 80 Home
FEMA - Traveling Salesman • Solution approaches • Enumeration of all possible cycles. • This results in (m-1)! cycles to enumerate for a graph with m nodes. • Only small problems can be solved with this approach.
FEMA – full enumeration Possible cycles Cycle Total Cost 1. H-O1-O2-O3-O4-H 210 2. H-O1-O2-O4-O3-H 195 3. H-O1-O3-O2-O3-H 240 4. H-O1-O3-O4-O2-H 200 5. H-O1-O4-O2-O3-H 225 6. H-O1-O4-O3-O2-H 200 7. H-O2-O3-O1-O4-H 265 8. H-O2-O1-O3-O4-H 235 9. H-O2-O4-O1-O3-H 250 10. H-O2-O1-O4-O3-H 220 11. H-O3-O1-O2-O4-H 260 12. H-O3-O1-O2-O4-H 260 Minimum For this problem we have (5-1)! / 2 = 12 cycles. Symmetrical problemsneed to enumerate only (m-1)! / 2 cycles.
FEMA – optimal solution 40 2 3 25 35 50 40 1 50 4 65 45 30 80 Home
The Traveling Salesman Problem • Finding the shortest cycle is different than Dijkstra’s shortest path. It is much harder too, no algorithm exists with polynomial worst-case time complexity! • This means that for large numbers of vertices, solving the traveling salesman problem is impractical. • The problem has theoretical importance because it represents a class of difficult problems known as NP-hard problems. • In these cases, we can use efficient approximation algorithms that determine a path whose length may be slightly larger than the traveling salesman’s path.