The Traveling Salesman Problem: A Deep Dive on Optimization Algorithms