
En teoría de grafos , un conjunto independiente maximal ( MIS ) o conjunto estable maximal es un conjunto independiente que no es subconjunto de ningún otro conjunto independiente. En otras palabras, no existe ningún vértice fuera del conjunto independiente que pueda unirse a él, ya que es maximal con respecto a la propiedad de conjunto independiente.
Por ejemplo, en el grafo P3 , un camino con tres vértices a , b y c , y dos aristas ab y bc , los conjuntos { b } y { a , c } son ambos independientes maximales. El conjunto { a } es independiente, pero no es independiente maximal, porque es un subconjunto del conjunto independiente mayor { a , c }. En este mismo grafo, las camarillas maximales son los conjuntos { a , b } y { b , c }.
Un MIS también es un conjunto dominante en el grafo, y todo conjunto dominante que es independiente debe ser máximamente independiente, por lo que los MIS también se denominan conjuntos dominantes independientes .

Un grafo puede tener muchos conjuntos independientes máximos (MIS) de tamaños muy variados; [ a ] el MIS más grande, o posiblemente varios MIS igualmente grandes, de un grafo se denomina conjunto independiente máximo . Los grafos en los que todos los conjuntos independientes máximos tienen el mismo tamaño se denominan grafos bien cubiertos .
La expresión "conjunto independiente máximo" también se utiliza para describir subconjuntos máximos de elementos independientes en estructuras matemáticas distintas de los grafos, y en particular en espacios vectoriales y matroides .

Dos problemas algorítmicos están asociados con los MIS: encontrar un único MIS en un grafo dado y enumerar todos los MIS en un grafo dado .
Definición
Para un gráfico, un conjunto independientees un conjunto independiente maximal si para, una de las siguientes afirmaciones es verdadera: [ 1 ]
- dóndedenota los vecinos de
Lo anterior se puede reformular como que un vértice pertenece al conjunto independiente o tiene al menos un vértice vecino que pertenece al conjunto independiente. Como resultado, cada arista del grafo tiene al menos un extremo que no está enSin embargo, no es cierto que cada arista del grafo tenga al menos un extremo, o incluso un extremo.
Cualquier vecino de un vértice en el conjunto independienteno puede estar enporque estos vértices son disjuntos según la definición de conjunto independiente.
conjuntos de vértices relacionados
Si S es un conjunto independiente maximal en algún grafo, es una camarilla maximal o un subgrafo completo maximal en el grafo complementario . Una camarilla maximal es un conjunto de vértices que induce un subgrafo completo y que no es un subconjunto de los vértices de ningún subgrafo completo mayor. Es decir, es un conjunto S tal que cada par de vértices en S está conectado por una arista y a cada vértice que no está en S le falta una arista con al menos un vértice en S. Un grafo puede tener muchas camarillas maximales, de tamaños variables; encontrar la mayor de ellas es el problema de la camarilla máxima .
Algunos autores incluyen la maximalidad como parte de la definición de camarilla, y se refieren a las camarillas maximales simplemente como camarillas.

El complemento de un conjunto independiente maximal, es decir, el conjunto de vértices que no pertenecen al conjunto independiente, forma una cubierta de vértices mínima . Es decir, el complemento es una cubierta de vértices , un conjunto de vértices que incluye al menos un extremo de cada arista, y es mínimo en el sentido de que no se puede eliminar ninguno de sus vértices sin que deje de ser una cubierta. Las cubiertas de vértices mínimas se han estudiado en mecánica estadística en relación con el modelo de gas reticular de esferas duras , una abstracción matemática de las transiciones de estado fluido-sólido. [ 2 ]
Todo conjunto independiente maximal es un conjunto dominante , un conjunto de vértices tal que cada vértice del grafo pertenece a dicho conjunto o es adyacente a él. Un conjunto de vértices es un conjunto independiente maximal si y solo si es un conjunto dominante independiente.
Caracterizaciones de familias de grafos
Ciertas familias de grafos también se han caracterizado en términos de sus cliques máximos o conjuntos independientes máximos. Ejemplos incluyen los grafos irreducibles de clique máximo y los grafos irreducibles de clique máximo hereditario. Se dice que un grafo es irreducible de clique máximo si cada clique máximo tiene una arista que no pertenece a ningún otro clique máximo, e irreducible de clique máximo hereditario si la misma propiedad es cierta para cada subgrafo inducido. [ 3 ] Los grafos irreducibles de clique máximo hereditario incluyen grafos sin triángulos , grafos bipartitos y grafos de intervalo .
Los cografos pueden caracterizarse como grafos en los que cada camarilla maximal interseca cada conjunto independiente maximal, y en los que la misma propiedad es cierta en todos los subgrafos inducidos.
Limitar el número de conjuntos
Moon y Moser (1965) demostraron que cualquier grafo con n vértices tiene como máximo 3 n /3 camarillas maximales. Complementariamente, cualquier grafo con n vértices también tiene como máximo 3 n /3 conjuntos independientes maximales. Un grafo con exactamente 3 n /3 conjuntos independientes maximales es fácil de construir: simplemente se toma la unión disjunta de n /3 grafos triangulares . Cualquier conjunto independiente maximal en este grafo se forma eligiendo un vértice de cada triángulo. El grafo complementario, con exactamente 3 n /3 camarillas maximales, es un tipo especial de grafo de Turán ; debido a su conexión con la cota de Moon y Moser, estos grafos también se denominan a veces grafos de Moon-Moser. Se pueden obtener cotas más ajustadas si se limita el tamaño de los conjuntos independientes maximales: el número de conjuntos independientes maximales de tamaño k en cualquier grafo de n vértices es como máximo
Los grafos que alcanzan esta cota son de nuevo grafos de Turán. [ 4 ]
Sin embargo, ciertas familias de grafos pueden tener límites mucho más restrictivos en el número de conjuntos independientes máximos o cliques máximos. Si todos los grafos de n vértices en una familia de grafos tienen O( n ) aristas, y si cada subgrafo de un grafo en la familia también pertenece a la familia, entonces cada grafo en la familia puede tener como máximo O( n ) cliques máximos, todos los cuales tienen tamaño O(1). [ 5 ] Por ejemplo, estas condiciones son verdaderas para los grafos planares : cada grafo planar de n vértices tiene como máximo 3n − 6 aristas, y un subgrafo de un grafo planar siempre es planar, de lo cual se deduce que cada grafo planar tiene O( n ) cliques máximos (de tamaño como máximo cuatro). Los grafos de intervalos y los grafos cordales también tienen como máximo n cliques máximos, aunque no siempre son grafos dispersos .
El número de conjuntos independientes máximos en grafos de ciclos de n vértices viene dado por los números de Perrin , y el número de conjuntos independientes máximos en grafos de caminos de n vértices viene dado por la secuencia de Padovan . [ 6 ] Por lo tanto, ambos números son proporcionales a potencias de 1,324718, la razón plástica .
Encontrar un único conjunto independiente maximal
Algoritmo secuencial
Dado un grafo G(V,E), es fácil encontrar un único MIS utilizando el siguiente algoritmo:
- Inicializa I como un conjunto vacío .
- Mientras V no esté vacío:
- Elija un nodo v∈V;
- Añade v al conjunto I;
- Eliminar de V el nodo v y todos sus vecinos.
- Regreso I.
Algoritmo paralelo de selección aleatoria [Algoritmo de Luby]
El siguiente algoritmo encuentra un MIS en tiempo O(log n ). [ 1 ] [ 7 ] [ 8 ]
- Inicializa I como un conjunto vacío.
- Mientras V no esté vacío:
- Elija un conjunto aleatorio de vértices S ⊆ V, seleccionando cada vértice v de forma independiente con una probabilidad de 1/(2d(v)), donde d es el grado de v (el número de vecinos de v).
- Para cada arista en E, si ambos extremos pertenecen al conjunto aleatorio S, se elimina de S el extremo cuyo grado sea menor (es decir, que tenga menos vecinos). Los empates se resuelven arbitrariamente, por ejemplo, utilizando un orden lexicográfico en los nombres de los vértices.
- Añade el conjunto S a I.
- Eliminar de V el conjunto S y todos los vecinos de los nodos en S.
- Regreso I.
ANÁLISIS : Para cada nodo v, divida sus vecinos en vecinos inferiores (cuyo grado es menor que el grado de v) y vecinos superiores (cuyo grado es mayor que el grado de v), resolviendo los empates como en el algoritmo.
Un nodo se considera malo si más de 2/3 de sus vecinos son vecinos superiores. Una arista se considera mala si ambos extremos son malos; de lo contrario, la arista es buena .
- Al menos la mitad de todas las aristas son siempre buenas. PRUEBA: Construimos una versión dirigida de G dirigiendo cada arista al nodo con el grado más alto (resolviendo los empates arbitrariamente). Así, para cada nodo malo, el número de aristas salientes es más del doble del número de aristas entrantes. Por lo tanto, cada arista mala que entra en un nodo v puede emparejarse con un conjunto distinto de dos aristas que salen del nodo v. En consecuencia, el número total de aristas es al menos el doble del número de aristas malas.
- Para cada nodo bueno u, la probabilidad de que un vecino de u sea seleccionado para S es al menos una cierta constante positiva. PRUEBA: la probabilidad de que NINGÚN vecino de u sea seleccionado para S es como máximo la probabilidad de que ninguno de los vecinos inferiores de u sea seleccionado. Para cada vecino inferior v, la probabilidad de que no sea seleccionado es (1-1/2d(v)), que es como máximo (1-1/2d(u)) (ya que d(u)>d(v)). El número de tales vecinos es al menos d(u)/3, ya que u es bueno. Por lo tanto, la probabilidad de que ningún vecino inferior sea seleccionado es como máximo 1-exp(-1/6).
- Para cada nodo u seleccionado para S, la probabilidad de que u sea eliminado de S es como máximo 1/2. PRUEBA: Esta probabilidad es como máximo la probabilidad de que un vecino superior de u sea seleccionado para S. Para cada vecino superior v, la probabilidad de que sea seleccionado es como máximo 1/2d(v), que es como máximo 1/2d(u) (ya que d(v)>d(u)). Por el límite de la unión, la probabilidad de que ningún vecino superior sea seleccionado es como máximo d(u)/2d(u) = 1/2.
- Por lo tanto, para cada nodo bueno u, la probabilidad de que un vecino de u sea seleccionado para S y permanezca en S es una constante positiva. En consecuencia, la probabilidad de que u sea eliminado, en cada paso, es al menos una constante positiva.
- Por lo tanto, para cada arista válida e, la probabilidad de que e sea eliminada en cada paso es al menos una constante positiva. Así, el número de aristas válidas disminuye al menos en un factor constante en cada paso.
- Dado que al menos la mitad de las aristas son buenas, el número total de aristas también disminuye en un factor constante en cada paso.
- Por lo tanto, el número de pasos es O(log m ), donde m es el número de aristas. Esto está acotado por.
Un gráfico del peor caso, en el que el número promedio de pasos eses un grafo formado por n /2 componentes conexas, cada una con 2 nodos. El grado de todos los nodos es 1, por lo que cada nodo se selecciona con una probabilidad de 1/2, y con una probabilidad de 1/4 no se eligen ambos nodos de una componente. Por lo tanto, el número de nodos se reduce en un factor de 4 en cada paso, y el número esperado de pasos es.
Algoritmo paralelo de prioridad aleatoria
El siguiente algoritmo es mejor que el anterior en que siempre se agrega al menos un nodo nuevo en cada componente conectado: [ 9 ] [ 8 ]
- Inicializa I como un conjunto vacío.
- Mientras V no esté vacío, cada nodo v realiza lo siguiente:
- Selecciona un número aleatorio r(v) en [0,1] y lo envía a sus vecinos;
- Si r(v) es menor que el número de todos los vecinos de v, entonces v se inserta en I, se retira de V y se lo comunica a sus vecinos;
- Si v se entera de que uno de sus vecinos entró en I, entonces v se retira de V.
- Regreso I.
En cada paso, el nodo con el número más pequeño en cada componente conexa siempre entra en I, por lo que siempre hay algún progreso. En particular, en el peor caso del algoritmo anterior ( n /2 componentes conexas con 2 nodos cada una), se encontrará un MIS en un solo paso.
ANÁLISIS :
- Un nodotiene probabilidad al menosde ser eliminado. PRUEBA: Para cada arista que conecta un par de nodos, reemplácelo con dos aristas dirigidas, una desdey el otro.ahora es el doble de grande. Por cada par de aristas dirigidas, defina dos eventos:y,elimina de forma preventivayelimina de forma preventiva, respectivamente. El eventoocurre cuandoy, dóndees vecino deyes vecinoRecordemos que a cada nodo se le asigna un número aleatorio en el mismo rango [0, 1]. En un ejemplo sencillo con dos nodos disjuntos, cada uno tiene una probabilidadde ser el más pequeño. Si hay tres nodos disjuntos, cada uno tiene probabilidad de ser el más pequeño. En el caso detiene probabilidad al menos de ser el más pequeño porque es posible que un vecino detambién es vecino de, por lo que un nodo se cuenta dos veces. Usando la misma lógica, el eventotambién tiene probabilidad al menos de ser removido.
- Cuando los eventosyocurren, ellos eliminanyaristas salientes dirigidas, respectivamente. PRUEBA: En el caso , cuandose elimina, todos los nodos vecinosTambién se eliminan. El número de aristas dirigidas salientes deeliminado es. Con la misma lógica,eliminabordes salientes dirigidos.
- En cada iteración del paso 2, en promedio, se eliminan la mitad de los bordes. PRUEBA: Si el evento entonces sucede que todos los vecinos dese eliminan; por lo tanto, el número esperado de aristas eliminadas debido a este evento es al menosLo mismo ocurre con el evento inverso., es decir, el número esperado de aristas eliminadas es al menosPor lo tanto, para cada arista no dirigida, el número esperado de aristas eliminadas debido a que uno de estos nodos tiene el valor más pequeño esSumando sobre todas las aristas,, da un número esperado deLos bordes se eliminan en cada paso, pero cada borde se cuenta dos veces (una vez por dirección), lo que da como resultado Los bordes se eliminan según se espera en cada paso.
- Por lo tanto, el tiempo de ejecución esperado del algoritmo esque es. [ 8 ]
Algoritmo paralelo de permutación aleatoria [Algoritmo de Blelloch]
En lugar de aleatorizar en cada paso, es posible aleatorizar una sola vez, al comienzo del algoritmo, fijando un orden aleatorio en los nodos. Con este orden fijo, el siguiente algoritmo paralelo logra exactamente el mismo MIS que el algoritmo #Sequential (es decir, el resultado es determinista): [ 10 ]
- Inicializa I como un conjunto vacío.
- Mientras V no esté vacío:
- Sea W el conjunto de vértices en V que no tienen vecinos anteriores (según el orden fijo);
- Suma W a I;
- Elimina de V los nodos del conjunto W y todos sus vecinos.
- Regreso I.
Entre los algoritmos totalmente secuenciales y los totalmente paralelos, existe un continuo de algoritmos que son parcialmente secuenciales y parcialmente paralelos. Dado un orden fijo en los nodos y un factor δ∈(0,1], el siguiente algoritmo devuelve el mismo MIS:
- Inicializa I como un conjunto vacío.
- Mientras V no esté vacío:
- Seleccione un factor δ∈(0,1].
- Sea P el conjunto de δ n nodos que son los primeros en el orden fijo.
- Sea W un MIS en P que utiliza el algoritmo totalmente paralelo.
- Suma W a I;
- Elimina de V todos los nodos del prefijo P y todos los vecinos de los nodos del conjunto W.
- Regreso I.
Si se establece δ=1/ n , se obtiene el algoritmo totalmente secuencial ; si se establece δ=1, se obtiene el algoritmo totalmente paralelo.
ANÁLISIS : Con una selección adecuada del parámetro δ en el algoritmo parcialmente paralelo, es posible garantizar que finalice después de como máximo log(n) llamadas al algoritmo totalmente paralelo, y el número de pasos en cada llamada es como máximo log(n). Por lo tanto, el tiempo total de ejecución del algoritmo parcialmente paralelo esPor lo tanto, el tiempo de ejecución del algoritmo totalmente paralelo también es como máximoLos pasos principales de la demostración son:
- Si, en el paso i , seleccionamosdonde D es el grado máximo de un nodo en el grafo, entonces WHP todos los nodos restantes después del paso i tienen grado como máximo. Por lo tanto, después de log( D ) pasos, todos los nodos restantes tienen grado 0 (ya que D < n ), y pueden eliminarse en un solo paso.
- Si, en cualquier paso, el grado de cada nodo es como máximo d , y seleccionamos(para cualquier constante C ), entonces WHP el camino más largo en el grafo dirigido determinado por el orden fijo tiene longitudPor lo tanto, el algoritmo totalmente paralelo toma como máximopasos (ya que el camino más largo es un límite en el peor de los casos para el número de pasos en ese algoritmo).
- La combinación de estos dos hechos nos da que, si seleccionamos, entonces WHP el tiempo de ejecución del algoritmo parcialmente paralelo es.
Enumerar todos los conjuntos independientes máximos
Un algoritmo para listar todos los conjuntos independientes máximos o camarillas máximas en un grafo puede usarse como subrutina para resolver muchos problemas de grafos NP-completos. Obviamente, las soluciones al problema del conjunto independiente máximo, al problema de la camarilla máxima y al problema del conjunto independiente mínimo dominante deben ser conjuntos independientes máximos o camarillas máximas, y pueden encontrarse mediante un algoritmo que lista todos los conjuntos independientes máximos o camarillas máximas y conserva los de mayor o menor tamaño. De manera similar, la cobertura mínima de vértices puede encontrarse como el complemento de uno de los conjuntos independientes máximos. Lawler (1976) observó que la lista de conjuntos independientes máximos también puede usarse para encontrar 3-coloraciones de grafos: un grafo puede ser 3-coloreado si y solo si el complemento de uno de sus conjuntos independientes máximos es bipartito . Utilizó este enfoque no solo para la 3-coloración, sino también como parte de un algoritmo de coloración de grafos más general , y otros autores han perfeccionado enfoques similares para la coloración de grafos desde entonces. [ 11 ] Otros problemas más complejos también pueden modelarse como la búsqueda de una camarilla o un conjunto independiente de un tipo específico. Esto motiva el problema algorítmico de enumerar de manera eficiente todos los conjuntos independientes máximos (o, equivalentemente, todas las camarillas máximas).
Es sencillo convertir una demostración de la cota de Moon y Moser de 3n / 3 para el número de conjuntos independientes máximos en un algoritmo que enumera todos esos conjuntos en tiempo O(3n / 3 ). [ 12 ] Para grafos que tienen el mayor número posible de conjuntos independientes máximos, este algoritmo requiere un tiempo constante por conjunto de salida. Sin embargo, un algoritmo con esta cota de tiempo puede ser muy ineficiente para grafos con un número más limitado de conjuntos independientes. Por esta razón, muchos investigadores han estudiado algoritmos que enumeran todos los conjuntos independientes máximos en tiempo polinomial por conjunto de salida. [ 13 ] El tiempo por conjunto independiente máximo es proporcional al de la multiplicación de matrices en grafos densos, o más rápido en varias clases de grafos dispersos. [ 14 ]
Conteo de conjuntos independientes máximos
El problema de conteo asociado a conjuntos independientes máximos se ha investigado en la teoría de la complejidad computacional . El problema consiste en determinar, dado un grafo no dirigido , cuántos conjuntos independientes máximos contiene. Este problema es #P -difícil incluso cuando la entrada se restringe a un grafo bipartito . [ 15 ]
Sin embargo, el problema es tratable en algunas clases específicas de grafos, por ejemplo, es tratable en cografos . [ 16 ]
Comportamiento en el caso promedio
El problema del conjunto máximo independiente en el gráfico aleatorio de Erdős-RényiSe sabe que presenta una brecha entre lo estadístico y lo computacional. Un argumento clásico de segundo momento muestra que el conjunto independiente más grande tiene tamaño, mientras que el mejor algoritmo conocido de tiempo polinomial, debido a Karp, encuentra un conjunto independiente de tamaño aproximadamenteA pesar de la simplicidad de este algoritmo voraz secuencial , actualmente no se conoce ningún algoritmo de tiempo polinomial que encuentre un conjunto independiente de tamañopara cualquier fijoSe cree que esta tarea es difícil.
Paralelización del cálculo de conjuntos independientes máximos
Historia
El problema del conjunto independiente máximo se consideró originalmente no trivial de paralelizar debido a que el conjunto independiente máximo lexicográfico resultó ser P-completo ; sin embargo, se ha demostrado que una solución paralela determinista podría ser dada por unreducción ya sea del problema de empaquetamiento de conjuntos máximos o del problema de emparejamiento máximo o por unreducción del problema de 2-satisfacibilidad . [ 17 ] [ 18 ] Por lo general, la estructura del algoritmo dado sigue otros algoritmos de grafos paralelos, es decir, subdividen el grafo en problemas locales más pequeños que se pueden resolver en paralelo ejecutando un algoritmo idéntico.
La investigación inicial sobre el problema del conjunto independiente máximo se basó en el modelo PRAM y, posteriormente, se amplió para generar resultados sobre algoritmos distribuidos en clústeres de computadoras . Los numerosos desafíos del diseño de algoritmos paralelos distribuidos también se aplican al problema del conjunto independiente máximo. En particular, se trata de encontrar un algoritmo que presente un tiempo de ejecución eficiente y sea óptimo en la comunicación de datos para subdividir el grafo y fusionar el conjunto independiente.
Clase de complejidad
En 1984, Karp et al. demostraron que una solución paralela determinista en PRAM para el conjunto independiente máximo pertenecía al zoológico de complejidad de clases de Nick .. [ 19 ] Es decir, su algoritmo encuentra un conjunto independiente maximal enusando, dóndees el tamaño del conjunto de vértices. En el mismo artículo, también se proporcionó una solución paralela aleatoria con un tiempo de ejecución deusandoprocesadores. Poco después, Luby y Alon et al. mejoraron independientemente este resultado, llevando el problema del conjunto independiente máximo al ámbito decon untiempo de ejecución usandoprocesadores, dondees el número de aristas en el grafo. [ 18 ] [ 7 ] [ 20 ] Para demostrar que su algoritmo está en, inicialmente presentaron un algoritmo aleatorio que utilizaprocesadores pero podría desaleatorizarse con un adicionalprocesadores. Hoy en día, sigue siendo una cuestión abierta si el problema del conjunto independiente máximo está en.
Comunicación e intercambio de datos
Los algoritmos distribuidos de conjunto independiente máximo están fuertemente influenciados por los algoritmos del modelo PRAM. El trabajo original de Luby y Alon et al. ha dado lugar a varios algoritmos distribuidos. [ 21 ] [ 22 ] [ 23 ] [ 20 ] En términos de intercambio de bits, estos algoritmos tenían un límite inferior del tamaño del mensaje por ronda debits y requeriría características adicionales del grafo. Por ejemplo, sería necesario conocer el tamaño del grafo o consultar el grado máximo de los vértices vecinos para un vértice dado. En 2010, Métivier et al. redujeron el tamaño de mensaje requerido por ronda a, lo cual es óptimo y eliminó la necesidad de cualquier conocimiento adicional sobre grafos. [ 24 ]
Notas a pie de página
- ↑ Erdős (1966) muestra que el número de tamaños diferentes de MIS en un grafo de n vértices puede ser tan grande como n – log n – O (log log n ) y nunca es mayor que n – log n .
Notas
- 1 2 Algoritmo de Luby, en: Apuntes de clase sobre algoritmos aleatorios, última actualización de Eric Vigoda el 2 de febrero de 2006
- ↑ Weigt y Hartmann (2001) .
- ↑ Sistema de información sobre inclusiones de clases de grafos: grafos irreducibles de clique maximal Archivado el 09/07/2007 en Wayback Machine y grafos irreducibles de clique maximal hereditario Archivado el 08/07/2007 en Wayback Machine .
- ↑ Byskov (2003) . Para resultados anteriores relacionados, véanse Croitoru (1979) y Eppstein (2003) .
- ↑ Chiba y Nishizeki (1985) . Chiba y Nishizeki expresan la condición de tener O( n ) aristas de forma equivalente, en términos de que la arboricidad de los grafos de la familia sea constante.
- ↑ Bisdorff y Marichal (2008) ; Euler (2005) ; Furedi (1987) .
- 1 2 Luby, M. (1986). "Un algoritmo paralelo simple para el problema del conjunto independiente máximo". SIAM Journal on Computing . 15 (4): 1036– 1053. CiteSeerX 10.1.1.225.5475 . doi : 10.1137/0215074 .
- 1 2 3 "Principios de computación distribuida (lección 7)" (PDF) . ETH Zúrich. Archivado del original (PDF) el 21 de febrero de 2015. Recuperado el 21 de febrero de 2015 .
- ↑ Métivier, Y.; Robson, JM; Saheb-Djahromi, N.; Zemmari, A. (2010). "Un algoritmo MIS distribuido aleatorio con complejidad de bits óptima". Distributed Computing . 23 ( 5– 6): 331. doi : 10.1007/s00446-010-0121-5 . S2CID 36720853 .
- ↑ Blelloch, Guy; Fineman, Jeremy; Shun, Julian (2012). "Greedy Sequential Maximal Independent Set and Matching are Parallel on Average". arXiv : 1202.3205 [ cs.DS ].
- ↑ Epstein (2003) ; Byskov (2003) .
- ↑ Eppstein (2003) . Para una cota de coincidencia para el algoritmo Bron-Kerbosch ampliamente utilizado , véase Tomita, Tanaka y Takahashi (2006) .
- ^ Bomze y col. (1999) ; Eppstein (2005) ; Jennings y Motycková (1992) ; Johnson, Yannakakis y Papadimitriou (1988) ; Lawler, Lenstra y Rinnooy Kan (1980) ; Liang, Dhall y Lakshmivarahan (1991) ; Makino y Uno (2004) ; Mishra y Pitt (1997) ; Stix (2004) ; Tsukiyama et al. (1977) ; Yu y Chen (1993) .
- ↑ Makino y Uno (2004) ; Eppstein (2005) .
- ↑ Provan, J. Scott; Ball, Michael O. (noviembre de 1983). "La complejidad del conteo de cortes y del cálculo de la probabilidad de que un grafo esté conectado" . SIAM Journal on Computing . 12 (4): 777– 788. doi : 10.1137/0212053 . ISSN 0097-5397 .
- ↑ Corneil, DG; Lerchs, H.; Burlingham, L. Stewart (1981-07-01). "Grafos reducibles por complemento". Matemáticas Aplicadas Discretas . 3 (3): 163– 174. doi : 10.1016/0166-218X(81)90013-5 . ISSN 0166-218X .
- ↑ Cook, Stephen (junio de 1983). "Una visión general de la complejidad computacional" . Commun. ACM . 26 (6): 400– 408. doi : 10.1145/358141.358144 . S2CID 14323396 .
- 1 2 Barba, Luis (octubre de 2012). "REVISIÓN DE LA LITERATURA: Algoritmos paralelos para el problema del conjunto independiente máximo en grafos" (PDF) .
- ↑ Karp, RM; Wigderson, A. (1984). "Un algoritmo paralelo rápido para el problema del conjunto independiente máximo". Actas del 16.º Simposio ACM sobre Teoría de la Computación .
- 1 2 Alon, Noga ; Laszlo, Babai; Alon, Itai (1986). "Un algoritmo paralelo aleatorio rápido y simple para el problema del conjunto independiente máximo". Journal of Algorithms . 7 (4): 567– 583. doi : 10.1016/0196-6774(86)90019-2 .
- ↑ Peleg, David (2000). Computación distribuida: un enfoque sensible a la localidad . doi : 10.1137/1.9780898719772 . ISBN 978-0-89871-464-7.
- ↑ Lynch, NA (1996). "Algoritmos distribuidos". Morgan Kaufmann .
- ↑ Wattenhofer, R. "Capítulo 4: Conjunto independiente maximal" (PDF) .
- ↑ Métivier, Y.; Robson, JM; Saheb-Djahromi, N.; Zemmari, A. (2010). "Un algoritmo MIS distribuido aleatorio de complejidad de bits óptima". Computación distribuida .
Referencias
- Bisdorff, Raymond; Marichal, Jean-Luc (2008), "Contando conjuntos independientes máximos no isomorfos del gráfico de n ciclos" , Journal of Integer Sequences , 11 : 08.5.7, arXiv : math.CO/0701647.
- Bomze, IM; Budinich, M.; Pardalos, PM; Pelillo, M. (1999), "El problema del clique máximo", Manual de optimización combinatoria , vol. 4, Kluwer Academic Publishers, pp. 1–74 , CiteSeerX 10.1.1.48.4074 .
- Byskov, JM (2003), "Algoritmos para k -coloración y búsqueda de conjuntos independientes máximos" , Actas del decimocuarto simposio anual ACM-SIAM sobre algoritmos discretos , Soda '03, pp. 456–457 , ISBN 978-0-89871-538-5.
- Chiba, N.; Nishizeki, T. (1985), "Arboricidad y algoritmos de listado de subgrafos", SIAM Journal on Computing , 14 (1): 210– 223, doi : 10.1137/0214017 , S2CID 207051803 .
- Croitoru, C. (1979), "Sobre establos en gráficos", Proc. Tercer Col. Investigación de operaciones , Universidad Babeș-Bolyai , Cluj-Napoca, Rumania, págs . 55-60 .
- Eppstein, D. (2003), "Conjuntos independientes máximos pequeños y coloración exacta de grafos más rápida" (PDF) , Journal of Graph Algorithms and Applications , 7 (2): 131– 140, arXiv : cs.DS/0011009 , CiteSeerX 10.1.1.342.4049 , doi : 10.7155/jgaa.00064 .
- Eppstein, D. (2005), "Todos los conjuntos independientes máximos y dominancia dinámica para grafos dispersos", Actas del Decimosexto Simposio Anual ACM-SIAM sobre Algoritmos Discretos , vol. 5, págs. 451–459 , arXiv : cs.DS/0407036 , doi : 10.1145/1597036.1597042 , S2CID 2769046 .
- Erdős, P. (1966), "Sobre las camarillas en grafos", Israel Journal of Mathematics , 4 (4): 233– 234, doi : 10.1007/BF02771637 , MR 0205874 , S2CID 121993028 .
- Euler, R. (2005), "El número de Fibonacci de un grafo de cuadrícula y una nueva clase de secuencias de enteros", Journal of Integer Sequences , 8 (2): 05.2.6, Bibcode : 2005JIntS...8...26E.
- Füredi, Z. (1987), "El número de conjuntos independientes máximos en grafos conectados", Journal of Graph Theory , 11 (4): 463– 470, doi : 10.1002/jgt.3190110403.
- Jennings, E.; Motycková, L. (1992), "Un algoritmo distribuido para encontrar todas las camarillas máximas en un grafo de red", Actas del Primer Simposio Latinoamericano de Informática Teórica , Lecture Notes in Computer Science, vol. 583, Springer-Verlag, pp . 281–293
- Johnson, DS ; Yannakakis, M.; Papadimitriou , CH (1988), "Sobre la generación de todos los conjuntos independientes máximos", Information Processing Letters , 27 (3): 119–123 , doi : 10.1016/0020-0190(88)90065-8.
- Lawler, EL (1976), "Una nota sobre la complejidad del problema del número cromático" , Information Processing Letters , 5 (3): 66– 67, doi : 10.1016/0020-0190(76)90065-X.
- Lawler, EL ; Lenstra, JK ; Rinnooy Kan, AHG (1980), "Generación de todos los conjuntos independientes máximos: NP-dureza y algoritmos de tiempo polinomial" (PDF) , SIAM Journal on Computing , 9 (3): 558–565 , doi : 10.1137/0209042 , S2CID 29527771 .
- Leung, JY-T. (1984), "Algoritmos rápidos para generar todos los conjuntos independientes máximos de grafos de intervalos, arcos circulares y cordales", Journal of Algorithms , 5 : 22–35 , doi : 10.1016/0196-6774(84)90037-3.
- Liang, YD; Dhall, SK; Lakshmivarahan, S. (1991), "Sobre el problema de encontrar todos los conjuntos independientes de peso máximo en grafos de arcos circulares y de intervalo", Actas del Simposio de Computación Aplicada de 1991 , pp. 465–470 , doi : 10.1109/SOAC.1991.143921 , ISBN 0-8186-2136-2, S2CID 122685841
- Makino, K.; Uno, T. (2004), "Nuevos algoritmos para enumerar todas las camarillas maximales", Actas del Noveno Taller Escandinavo sobre Teoría de Algoritmos , Lecture Notes in Computer Science, vol. 3111, Springer-Verlag, pp. 260–272 , CiteSeerX 10.1.1.138.705 , doi : 10.1007/978-3-540-27810-8_23 , ISBN 978-3-540-22339-9ISBN 9783540223399,9783540278108.
- Mishra, N.; Pitt, L. (1997), "Generación de todos los conjuntos independientes máximos de hipergrafos de grado acotado", Actas de la Décima Conferencia sobre Teoría del Aprendizaje Computacional , págs. 211–217 , doi : 10.1145/267460.267500 , ISBN 978-0-89791-891-6, S2CID 5254186 .
- Moon, JW; Moser, L. (1965), "Sobre las camarillas en grafos", Israel Journal of Mathematics , 3 : 23–28 , doi : 10.1007/BF02760024 , MR 0182577 , S2CID 9855414 .
- Stix, V. (2004), "Finding all maximal cliques in dynamic graphs", Computational Optimization and Applications , 27 (2): 173– 186, CiteSeerX 10.1.1.497.6424 , doi : 10.1023/B:COAP.0000008651.28952.b6 , S2CID 17824282
- Tomita, E.; Tanaka, A.; Takahashi, H. (2006), "La complejidad temporal del peor caso para generar todos los cliques máximos y experimentos computacionales", Theoretical Computer Science , 363 (1): 28–42 , doi : 10.1016/j.tcs.2006.06.015.
- Tsukiyama, S.; Ide, M.; Ariyoshi, H.; Shirakawa, I. (1977), "Un nuevo algoritmo para generar todos los conjuntos independientes máximos", SIAM Journal on Computing , 6 (3): 505– 517, doi : 10.1137/0206036.
- Weigt, Martin; Hartmann, Alexander K. (2001), "Recubrimientos de vértices mínimos en grafos aleatorios de conectividad finita: una imagen de gas reticular de esfera dura", Phys. Rev. E , 63 (5) 056127, arXiv : cond-mat/0011446 , Bibcode : 2001PhRvE..63e6127W , doi : 10.1103/PhysRevE.63.056127 , PMID 11414981 , S2CID 16773685 .
- Yu, C.-W.; Chen, G.-H. (1993), "Generar todos los conjuntos independientes máximos en grafos de permutación", Internat. J. Comput. Math. , 47 ( 1– 2): 1– 8, doi : 10.1080/00207169308804157.
- objetos de la teoría de grafos
- Problemas computacionales en la teoría de grafos