A Parallel Implementation of A Greedy TSP Algorithm
dc.contributor.advisor | Burtscher, Martin | |
dc.contributor.author | Gonzalez, Andres | |
dc.contributor.committeeMember | Peng, Wuxu | |
dc.contributor.committeeMember | Yang, Kecheng | |
dc.date.accessioned | 2020-11-16T18:26:06Z | |
dc.date.available | 2020-11-16T18:26:06Z | |
dc.date.issued | 2020-11 | |
dc.description.abstract | The Traveling Salesman Problem has often been used as an exploration ground for building heuristics to calculate the shortest path of a complete graph that traverse every vertex exactly once. This has a number of important practical applications. Since it is an NP-hard problem, many heuristics have been proposed to obtain near-optimal solutions in polynomial time. The heuristic explored in this study is based on Kruskal’s algorithm, where the edges of a graph are sorted in non-decreasing order. The smallest edges that meet the eligibility criteria are included in the path until a tour that includes all vertices has been constructed. Whether an edge meets the criteria depends on which smaller edges have been inserted. This makes the algorithm difficult to parallelize. I combined previously published with new parallelization techniques and implemented the algorithm in OpenMP and CUDA. The resulting GPU code is very fast, taking just 0.06 seconds to process a graph with 11,849 vertices and 70,193,476 edges. This is approximately 8 times faster than the serial CPU implementation and has a solution quality that is within 18% of the optimal. Compared to the optimal solver CONCORDE, my code is 1,206,302 times faster. | |
dc.description.department | Computer Science | |
dc.format | Text | |
dc.format.extent | 81 pages | |
dc.format.medium | 1 file (.pdf) | |
dc.identifier.citation | Gonzalez, A. (2020). <i>A parallel implementation of a greedy TSP algorithm</i> (Unpublished thesis). Texas State University, San Marcos, Texas. | |
dc.identifier.uri | https://hdl.handle.net/10877/12922 | |
dc.language.iso | en | |
dc.subject | TSP | |
dc.subject | Traveling Salesman Problem | |
dc.subject.lcsh | Electronic data processing--Distributed processing | |
dc.subject.lcsh | Computer algorithms | |
dc.subject.lcsh | Parallel programming (Computer science) | |
dc.title | A Parallel Implementation of A Greedy TSP Algorithm | |
dc.type | Thesis | |
thesis.degree.department | Computer Science | |
thesis.degree.discipline | Computer Science | |
thesis.degree.grantor | Texas State University | |
thesis.degree.level | Masters | |
thesis.degree.name | Master of Science |
Files
Original bundle
1 - 1 of 1