Mateo Sanabria Ardila
ISIS1105: Diseño y análisis de algoritmos
Algoritmos aproximados
Si cualquier problema NPC es soluble en tiempo polinomial entonces: P = NP
L_2 \in P \ \wedge \ L_1 \leq_P L_2 \rightarrow L_1 \in P
Todos los problemas NPC son solubles en tiempo polinomial.
Even if a problem is NPC, there may be hope
-
Las entradas son suficientemente pequeñas para tener resultados con algoritmos exponenciales, en tiempos razonable.
-
Aislar casos que puedan ser solucionados en tiempo polinomial.
-
Encontrar soluciones aproximadas en tiempo polinomial.
vertex cover
Dado un grafo no dirigido G=(V,E) el problema consiste en encontrar V' como la minima cobertura de vertices para G
Approx-Vertex-Cover devuelve una cobertura de vertices que es como mucho 2 veces mas grandes que la cobertura optima.
Approx-Vertex-Cover es un 2-approximation algorithm
Traveling-salesman
Dado un grafo completo no dirigido G=(V,E) cargado, sin costos negativos. Se debe encontrar el ciclo Hamiltoniano de menor costo.
Una función de costo satisface la desigualdad triangular si para los nodos u,n,w se cumple
c(u,w) \leq c(u,n) + c(n,w)
Por ejemplo, si los nodos del grafo G representan puntos en el plano y la función de costo es la distancia euclidiana, la propiedad se cumple.
Approx-TSP-TOUR devuelve un ciclo hamiltoniano de G cuyo costo (dado c) es como mucho 2 veces mas grande que el ciclo hamiltoniano optimo.
Approx-TSP-TOUR es un 2-approximation algorithm
Una recorrido de un árbol en preorden, recorre recursivamente todos los nodos del árbol listando un nodo cuando se encuentra por primera vez antes de visitar sus hijos. Primero se recorre el sub-árbol izquierdo.
Que pasa si la función de costo no satisface la desigualdad triangular?
Si P NP entonces no existe un algoritmo p aproximado para el problema general de TSP
\not =
Set-covering
X = \bigcup\limits_{c_i\in \ \mathcal{C}} c_i
El tamaño de la cobertura es la cardinalidad de
\mathcal{C}
Sea X un conjunto y se dice que cubre a X si
\mathcal{C} \subseteq \mathcal{P}(X)
\mathcal{C}
Set-covering
SET-COVER = \{\langle X,\mathcal{F}, k \rangle : \\ (\exists C \subseteq \mathcal{F} \ | \ \text{C es una cobertura de X de tamaño k} ) \}
Set-covering
Problema de optimización: Dado X y econtrar la cobertura de tamaño minimo.
\mathcal{C}
\mathcal{F}
Set-covering es NPC
Approx-TSP-TOUR es un (ln|X|+1)-approximation algorithm
Algoritmos aproximados
By Mateo Sanabria Ardila
Algoritmos aproximados
This presentation covers topics related to approximate algorithms and agenda-based algorithms, specifically the DOM algorithm. Learn about the innovative work of Mateo Sanabria Ardila in ISIS1105.
- 291