Algoritmo de ChristofidesEl algoritmo de Christofides es un algoritmo aproximado que permite resolver instancias del problema del viajante de comercio (designado convencionalmente por su acrónimo en inglés, TSP) en donde los pesos de las aristas del grafo satisfacen la desigualdad triangular. Fue desarrollado en 1976 por Nicos Christofides, profesor del Imperial College London.[1] Supongamos que representa una instancia del TSP, en donde es un grafo completo definido por: un conjunto de vértices o nodos y una función que asocia un peso o valor real positivo a cada arista del grafo . DescripciónA continuación, se describen las fases del algoritmo en pseudocódigo:[2]
DemostraciónEl coste de la solución obtenida por el algoritmo es 3/2 de la solución óptima. La prueba es la siguiente:[3] Sea A el conjunto de aristas de la solución óptima del TSP para G. Como (V,A) es conexo, contendrá varios árboles recubridores T, y por tanto, w(A) ≥ w(T). Además, sea B el conjunto de aristas de la solución óptima del TSP para el grafo completo sobre los vértices de O. Como los pesos asociados a las aristas son "triangulares" (visitar más nodos no reduce, en ningún caso, el coste total), se tiene que w(A) ≥ w(B). Se demuestra así que existe un apareamiento perfecto de vértices de O con peso tal que w(B)/2 ≤ w(A)/2, de forma que este límite constituye una cota superior para M (ya que M es un apareamiento perfecto de mínimo coste). Debido a que O debe contener un número par de vértices, existe apareamiento perfecto. Sea e1, ..., e2k el (único) camino euleriano en (O,B). Es evidente que tanto e1, e3, ...,e2k-1 como e2, e4, ..., e2k son apareamientos perfectos, y que el peso de (al menos) uno de ellos es menor o igual que w(B)/2. Así, se tiene que w(M)+w(T) ≤ w(A) + w(A)/2, y de la desigualdad triangular se deduce que el algoritmo se aproxima en 3/2 al óptimo. Referencias
|