O problema do caixeiro-viajante(em inglês traveling salesman problem) foi o primeiro problema de roteamento a ser estudado pela comunidade científica. O objetivo é encontrar o menor caminho (rota), para um caixeiro-viajante, que partindo de uma cidade origem, deve visitar todas as cidades de uma dada lista, exatamente uma vez, e regressar à cidade origem. Para resolver este problema é necessário conhecer as distâncias entre todas as cidades. Quando a distância entre duas cidades é igual independentemente do sentido da viagem dizemos que o problema é simétrico.  O problema pertence à categoria NP-Completo que o remete para um campo de complexidade exponencial, isto é, o esforço computacional necessário para a sua resolução cresce exponencialmente com o tamanho do problema. O objetivo deste trabalho é resolver o problema do caixeiro-viajante para um determinado número de cidades dadas as distâncias entre elas.