Diseño de redes: Problema de Steiner Generalizado Graciela Ferreira Octubre/2016
Contenido Introducción Problema de Steiner Generalizado (GSP) Casos considerados –Caso 1: Two-Node-Connected Star Problem with Steiner Nodes (2NCSPSN) –Caso 2: Hop Constrained Survivable Network Design Problem (HCSNDP) Reflexiones finales
Introducción Motivación: Estudiar y diseñar algoritmos/herramientas para el diseño de redes robustas, resistentes a las fallas y que aseguren un mínimo de calidad de servicio. Principales características modeladas: Topologías que permitan mantener la red en estado operativo ante un número preestablecido de fallas o destrucciones de links o nodos (equipos) de la red (propiedad de sobrevivencia). Diferentes tipos de nodos: nodos terminales (pueden ser especiales u ordinarios según el tipo de conectividad requerida), nodos opcionales o de Steiner. Con requerimientos de calidad mínima.
Introducción Generalidades: El problema de diseño de redes a mínimo costo considerando restricciones de sobrevivencia (SNDP) se puede modelar a través del Problema de Steiner Generalizado (GSP) Propiedad de sobrevivencia: se modela aquí introduciendo restricciones de conexión mínima entre los nodos terminales: cantidad mínima de caminos nodo-disjuntos (arista disjuntos), para cada pareja de nodos terminales especiales. Calidad de servicio: cantidad máxima de aristas en cada camino. Problema de diseño de redes con requerimientos de confiabilidad y calidad, se denomina ‘Hop Constrained Survivable Network Design Problem (HCSNDP)’, donde hop = cantidad de aristas de un camino Modelo para representar el HCSNDP, se definiría como “Generalized Steiner Problem with weighted Steiner nodes and diameter constrained” (GSPWDC).
Introducción Casos estudiados: Caso 1: “Two-Node-Connected Star Problem with Steiner Nodes” (2NCSPSN) Caso 2: “Generalized Steiner Problem with weighted Steiner nodes and diameter constrained” (GSPWDC). El primer caso se puede ver como una variante del segundo, ambos son problemas NP-difíciles. A los efectos del curso AP, desarrollaremos el caso 1 y se comentarán algunos aspectos del caso 2. Metodología de trabajo: Formulación del problema Desarrollo de algoritmos exactos para tamaños reducidos. Análisis y cálculo: –Posibles descomposiciones –Cotas inferiores y superiores al óptimo Desarrollo de heurísticas y algoritmos aproximados.
Problema de Steiner Generalizado (GSP) GSP: dada una red modelada con un grafo G, con costos asociados a las aristas, con un conjunto T de nodos terminales, el problema consiste en encontrar un subgrafo de costo mínimo que verifique un conjunto de requerimientos de conexiones mínimas entre los pares de nodos terminales Sobrevivencia: modelada aquí como requisito de nodo-conectividad Aplicaciones: –Caso 1: se trata de una red con restricciones de sobrevivencia en una parte de ella, en el backbone y se admiten además conexiones en estrella de nodos terminales (las conexiones en estrella es una decisión, dependerá de los costos si un nodo terminal se conecta en estrella o al backbone. El backbone debe tener una topología 2CON, eventualmente se pueden agregar nodos opcionales (Steiner) si esto reduce costos. –Caso 2: se trata de redes con restricciones de sobrevivencia, con largo máximo de caminos acotado y costos en los nodos de Steiner. Modelo: GSPWDC
Caso 1 Two-Node-Connected Star Problem with Steiner Nodes (2NCSPSN) Planteo del problema Complejidad Formulación Cotas Algoritmos aproximados Referencias: –G. Baya. Msc. Thesis, Capacitated m Two-Node-Survivable Star Problem. INCO –R.Recoba. Msc. Thesis, 2-Node-Connected Star Problem. INCO. 2015
Caso1: 2NCSPSN - Planteo del problema El problema 2NCSP consiste en encontrar un subgrafo con topología 2-nodo conexa minimizando la suma de los costos de conexión (i.e. costo de la componente 2-nodo conexa más el costo de las aristas colgantes). El 2NCSPSN agrega a 2NCSP la posibilidad de integrar nodos de Steiner a la componente 2 conexa de forma de reducir costos.
Caso1: 2NCSPSN - Planteo del problema Los costos de conexión en estrella son menores a los costos de conexión en el backbone. Los nodos de Steiner sólo pueden estar en la estructura 2-conexa Los nodos terminales pueden estar conectados en estrella o integrados en el backbone. La forma de conexión de los nodos terminales a la red es una variable de decisión.
Caso1: 2NCSPSN - Complejidad El problema 2NCSPSN pertenece a la clase de problemas NP-Completo. Demostración: Demostración por reducción al Minimun-Weight Two-Connected Spanning Problem (MW2CSP), el cual es NP-Completo como se demuestra en [C.L Monma, “Minimum-Weight Two- Connected Spanning Networks”, Mathematical Programming, 46: , 1990]. Sea =(,) un grafo simple y la función de costos de conexión no negativos, costos de asignación =∞ y costos de conexión de nodos de Steiner =∞. Con esas matrices de costos el problema se reduce a resolver el MW2CSP, por lo tanto el 2NCSPSN también es NP-Completo
Caso1: Cotas Supuestos: Grafos simples, completos, G=(V,E) representando red los costos de conexión en el backbone cumplen la propiedad métrica. c ij : costo de conectar en estrella, un nodo i a un nodo j del backbone α. c ij : costo de conectar, un nodo i a un nodo j en el backbone, con α>=1, constante. Propiedades: Los nodos de Steiner tienen grado >=3. La cantidad de nodos de Steiner en la solución no es mayor a la cantidad de nodos terminales.
Caso1: Cotas Soluciones factibles cuyos costos son cotas superiores al óptimo: 1.Ciclo hamiltoniano entre todos los nodos terminales de costo mínimo. 2.Subgrafo con topología 2NCON, S=(T, E’) con T conjunto de nodos terminales. 3.Backbone con topología de ciclo hamiltoniano más conexión en estrella.
Caso1: Algoritmos aproximados Algoritmo para encontrar solución factible: 1.Encontrar ciclo hamiltoniano en T de costo mínimo 2.Cada 3 nodos terminales, agregar 1 nodo de Steiner y dejar uno colgante si esto mejora costos. 3.Devolver solución factible F y su costo C(F). Sean: –C(OPT) el costo de la solución óptima OPT de 2NCSPSN. –C(Hopt )el costo de un ciclo hamiltoniano óptimo entre los nodos terminales T –C(Hopt*) el costo de un ciclo hamiltoniano óptimo entre los nodos terminales T U S, con S=conjunto de nodos de Steiner en OPT –Opt-2NCON un subgrafo 2 nodo conexo de costo mínimo recubriendo T U S. –Opt-2ECON un subgrafo 2 arista conexo de costo mínimo recubriendo T U S. Por construcción C(OPT) ≤ C(F) ≤ C(Hopt) ≤ C(Hopt*) (1) Por teorema: C(Hopt*) ≤ 4/3.C(Opt-2NCON) (2)
Caso1: Algoritmos aproximados Por otro lado, la solución OPT se compone de una estructura 2NCON con costos α. c ij, para todo (i,j) en el backbone, mas un conjunto L de nodos terminales conectados con costos simples c rj, con r perteneciente a L y j en el backbone. Sea F’ otra solución factible, obtenida a partir de OPT duplicando los arcos rj y asignándole costos α. c rj a cada uno. Entonces por ser F’ una solución 2 arista-conexa, se cumple: C(Opt-2NCON) = C(Opt-2ECON) ≤ C(F’) = costo backbone óptimo + ∑ c rj + (2α-1). ∑ c rj = C(OPT)+ (2α-1). ∑ c rj ≤ 2α.C(OPT)
Caso1: Algoritmos aproximados Resumiendo: –C(OPT) ≤ C(F) ≤ C(Hopt*) ≤ 4/3.C(Opt-2NCON) –C(Opt-2NCON) ≤ 2α.C(OPT) Entonces: –C(OPT) ≤ C(F) ≤ 8/3.α.C(OPT), con α≥1 Utilizando un algoritmo aproximado para el cálculo del ciclo hamiltoniano mínimo, por ejemplo el algoritmo de Christofides, el factor de aproximación resultante se incrementa aún más.
Caso1: Algoritmos aproximados Caso particular topología de anillo en el backbone: Si se pudiera asegurar que la solución óptima en el backbone es un anillo, por ejemplo, trabajando con grafos en R 2 (conjetura…), tendríamos que las desigualdades (1) se siguen cumpliendo: C(OPT) ≤ C(F) ≤ C(Hopt) ≤ C(Hopt*) (1) Sea F’ la otra solución factible, obtenida a partir de OPT duplicando los arcos ij que van a los terminales colgantes, asignándole costos α. c ij a cada uno. Sea C(F’) = C(OPT)+ (2α-1). ∑ c ij.
Caso1: Algoritmos aproximados Por la propiedad métrica de los costos podemos asegurar que c kj ≤ c ij + c ik, sustituyendo en F’ los arcos (i,k), (i,j) por (k,j) obtenemos una solución F” que es un ciclo hamiltoniano de menor costo que F’: C(OPT) ≤ C(F) ≤ C(Hopt) ≤ C(Hopt*) ≤ C(F”) ≤ C(F’) = C(OPT)+ (2α-1). ∑ c rj C(OPT) ≤ C(F) ≤ 2α.C(OPT)
Caso 1: Reflexiones finales Cálculo de un factor de aproximación: –Función de costos y sus propiedadesFunción de costos y sus propiedades –modelado del problema –Amplitud y acotación del dominio ¿El problema es aproximable? ¿Qué tipo de algoritmo de aproximación se puede utilizar en un determinado problema APX? Relevancia vs dificultad del cálculo de cotas y garantía de cercanía al óptimo…
Metric and Euclidean TSP, Martin Zachariasen, 2006
Caso 2 Hop Constrained Survivable Network Design Problem (HCSNDP) Planteo del problema Complejidad Formulación Cotas Algoritmos aproximados
Caso 2: HCSNDP - Planteo del problema Definición: “Survivable Network Design Problem (SNDP)” Sea un grafo G = (V,E). Un subgrafo H ⊆ G es node- survivable (edge-survivable) si ∀ (s,t) ∈ V, H contiene al menos un cierto número de caminos nodo-disjuntos de s a t. Definición: “Node Survivable Network Design Problem (NSNDP)” Sea c(e) el costo asociado a cada e ∈ E / c(e) ≥ 0, el problema NSNDP consiste en encontrar un subgrafo H ⊆ G, node-survivable, de mínimo costo.
Caso 2: HCSNDP - Planteo del problema Definición: k-Nodo Conectividad Un grafo G = (V,E) es k-nodo conectado si ∀ (i,j) ∈ V hay al menos k caminos nodo-disjuntos conectándolos en G. Definición: k-Nodo Sobrevivencia Dado un grafo G = (V,E) y un subconjunto T ⊆ V, G es k-nodo ‘survivable’ con respecto a T, si ∀ (i,j) ∈ T hay al menos k caminos nodo-disjuntos conectándolos en G. Definición: Generalized Steiner Problem (GSP) Sea un grafo simple no dirigido G = (V,E), un subconjunto de nodos T ⊆ V denominados terminales, una matriz C = {cij} ∀ (i,j) ∈ E de costos reales positivos asociados a las aristas E, una matriz R = {rij} ∀ i ∀ j ∈ T de requerimientos de nodo-conectividad (o de arista-conectividad) entre pares de nodos de T. GSP consiste en encontrar un subgrafo H ⊆ G de costo mínimo que cubra T tal que ∀ (i,j) ∈ T en H existen al menos rij caminos nodo-disjuntos comunicando i con j.
Caso 2: HCSNDP - Planteo del problema Definición : Generalized Steiner Problem with weighted Steiner nodes and diameter constrained (GSPWDC) Sea un grafo simple no dirigido G = (V,E), un subconjunto de nodos T ⊆ V denominado terminales, una matriz C = {cij}(i,j) ∈ E de costos reales positivos asociados a las aristas E, una matriz R = {rij} ∀ i, ∀ j ∈ T de requerimientos de nodo-conectividad entre pares de nodos de T, un vector w = {wi},i ∈ V\T de costos reales positivos asociados a los nodos de V\T (nodos de Steiner u opcionales) y una matriz de enteros positivos D = {dij} ∀ (i,j) ⊆ T. GSPWDC consiste en encontrar un subgrafo H ⊆ G de costo mínimo que cubra T tal que ∀ (i,j) ∈ T en H existen al menos rij caminos nodo- disjuntos comunicando i con j, cada uno de ellos con a lo sumo dij hops (aristas).
Caso 2: HCSNDP - Planteo del problema Casos particulares de SNDP: vector de conectividad ru = k, uniforme en todos los nodos, donde k es un entero positivo. Es el problema de k-nodo conectividad en una red. Si k = 2, es el problema del viajero: un circuito simple que pase por todos los nodos, a costo mínimo. ru ∈ {0,1}, ∀ u ∈ V ∈⇒ es el problema del árbol de Steiner, donde los nodos terminales son aquellos nodos u/ ru = 1 y los de Steiner son los u / ru = 0. Si la cantidad de nodos de Steiner o la de nodos terminales está ja, el problema se puede resolver en tiempo polinomial en grafos serie-paralelo. NOTA: esta equivalencia entre STP y SNDP se cumple sólo si los costos asociados a las aristas son reales positivos. ru = 1, ∀ u ∈ V ⇒ SNDP es equivalente al problema de árbol de cubrimiento mínimo. Este caso particular es polinomial. Si c(e) = 1 ∀ e ∈ E ⇒ el problema es equivalente a encontrar una NSNDP con mínimo número de aristas.
Caso 2: HCSNDP - Complejidad Complejidad: SNDP es NP-hard en sentido fuerte. GSTP es NP-hard en la mayoría de los casos. GSPWDC es NP-hard en la mayoría de los casos y GSP es un caso particular de GSPWDC.