Articulo de referencia

Emparejamiento (teoría de grafos)

En la disciplina matemática de la teoría de grafos , un conjunto de aristas coincidentes o independientes en un grafo no dirigido es un conjunto de aristas sin vértices comunes ...

En la disciplina matemática de la teoría de grafos , un conjunto de aristas coincidentes o independientes en un grafo no dirigido es un conjunto de aristas sin vértices comunes . [ 1 ] En otras palabras, un subconjunto de las aristas es un emparejamiento si cada vértice aparece como máximo en una arista de ese emparejamiento.

Encontrar el mayor emparejamiento en un grafo bipartito puede tratarse como un problema de flujo de red . Encontrar el mayor emparejamiento en un grafo general es mucho más difícil; se puede lograr utilizando el algoritmo de floración de Edmonds .

Definiciones

Dado un grafo G = ( V , E ), un M correspondiente en G es un conjunto de aristas no adyacentes por pares , ninguna de las cuales es un bucle ; es decir, no hay dos aristas que compartan vértices comunes.

METRO{\displaystyle M}es una coincidencia deUV{\displaystyle U\subsetequ V}si cada vértice enU{\displaystyle U}es incidente con un borde enMETRO{\displaystyle M}. [ 2 ]

Un ejemplo de emparejamiento en un grafo bipartito.

Un vértice se considera emparejado (o saturado ) si es un extremo de una de las aristas que forman parte del emparejamiento. En caso contrario, el vértice no se considera emparejado (o no saturado ).

Un emparejamiento máximo es un emparejamiento M de un grafo G que no es subconjunto de ningún otro emparejamiento. Un emparejamiento M de un grafo G es máximo si cada arista de G tiene una intersección no vacía con al menos una arista de M. La siguiente figura muestra ejemplos de emparejamientos máximos (en rojo) en tres grafos.

Un emparejamiento máximo (también conocido como emparejamiento de cardinalidad máxima [ 3 ] ) es un emparejamiento que contiene el mayor número posible de aristas. Puede haber muchos emparejamientos máximos. El número de emparejamientosν(GRAMO){\displaystyle \nu (G)}El tamaño de un emparejamiento máximo en un grafo G es un valor absoluto. Todo emparejamiento máximo es máximo, pero no todo emparejamiento máximo es un emparejamiento máximo. La siguiente figura muestra ejemplos de emparejamientos máximos en los mismos tres grafos.

Un emparejamiento perfecto es un emparejamiento que empareja todos los vértices del grafo. Es decir, un emparejamiento es perfecto si cada vértice del grafo es incidente a una arista del emparejamiento. Un emparejamiento es perfecto si|METRO|=|V|/2{\displaystyle |M|=|V|/2}Todo emparejamiento perfecto es máximo y, por lo tanto, maximal. En cierta literatura, se utiliza el término emparejamiento completo . En la figura anterior, solo la parte (b) muestra un emparejamiento perfecto. Un emparejamiento perfecto es también una cobertura de aristas de tamaño mínimo . Por lo tanto, el tamaño de un emparejamiento máximo no es mayor que el tamaño de una cobertura de aristas mínima:ν(GRAMO)ρ(GRAMO){\displaystyle \nu (G)\leq \rho (G)}Un grafo solo puede contener un emparejamiento perfecto cuando tiene un número par de vértices.

Un emparejamiento casi perfecto es aquel en el que exactamente un vértice no está emparejado. Claramente, un grafo solo puede contener un emparejamiento casi perfecto cuando tiene un número impar de vértices, y los emparejamientos casi perfectos son emparejamientos máximos. En la figura anterior, la parte (c) muestra un emparejamiento casi perfecto. Si cada vértice no está emparejado por algún emparejamiento casi perfecto, entonces el grafo se denomina factor-crítico .

Un emparejamiento inducido es un emparejamiento que es el conjunto de aristas de un subgrafo inducido . [ 4 ]

Caminos alternos y crecientes

Dado un emparejamiento M , un camino alternante es un camino que comienza con un vértice no emparejado [ 5 ] y cuyos bordes pertenecen alternativamente al emparejamiento y no al emparejamiento. Un camino de aumento es un camino alternante que comienza y termina en vértices libres (no emparejados). El lema de Berge establece que un emparejamiento M es máximo si y solo si no hay camino de aumento con respecto aMETRO{\displaystyle M}. Usando el lema de Berge, podemos comenzar desde cualquier coincidenciaMETRO{\displaystyle M}y aplicar repetidamente rutas de aumento hasta que no se encuentren más rutas de aumento. Esto reduce el problema de encontrar una coincidencia grande a encontrar rutas aumentadas. [ 2 ]

Propiedades

En cualquier grafo sin vértices aislados, la suma del número de coincidencias y el número de cobertura de aristas es igual al número de vértices. [ 6 ] Si hay una coincidencia perfecta, entonces tanto el número de coincidencias como el número de cobertura de aristas son | V | / 2 .

Caracterizaciones

El teorema de Kőnig establece que, en grafos bipartitos, el emparejamiento máximo tiene el mismo tamaño que la cobertura mínima de vértices . Gracias a este resultado, los problemas de cobertura mínima de vértices, conjunto independiente máximo y biclique máxima de vértices pueden resolverse en tiempo polinomial para grafos bipartitos.

El teorema de matrimonio de Hall proporciona una caracterización de los grafos bipartitos que tienen un emparejamiento perfecto, y el teorema de Tutte sobre emparejamientos perfectos proporciona una caracterización para grafos arbitrarios.

Hassani Monfared y Mallik dan una caracterización espectral del número de coincidencias de un grafo de la siguiente manera: SeaGRAMO{\displaystyle G}ser un gráfico ennorte{\displaystyle n}vértices yλ1>λ2>>λk>0{\displaystyle \lambda _{1}>\lambda _{2}>\ldots >\lambda _{k}>0}serk{\displaystyle k}números imaginarios puros distintos de cero donde2knorte{\displaystyle 2k\leq n}. Entonces el número correspondiente deGRAMO{\displaystyle G}esk{\displaystyle k}si y solo si (a) existe una matriz antisimétrica realA{\displaystyle A}con gráficoGRAMO{\displaystyle G}y valores propios±λ1,±λ2,,±λk{\displaystyle \pm \lambda _{1},\pm \lambda _{2},\ldots ,\pm \lambda _{k}}ynorte2k{\displaystyle n-2k}ceros, y (b) todas las matrices antisimétricas reales con gráficaGRAMO{\displaystyle G}tener como máximo2k{\displaystyle 2k}autovalores distintos de cero . [ 7 ] Nótese que el gráfico (simple) de una matriz real simétrica o antisimétricaA{\displaystyle A}del ordennorte{\displaystyle n}tienenorte{\displaystyle n}vértices y aristas dados por las entradas fuera de la diagonal no cero deA{\displaystyle A}.

Emparejamientos máximos vs. emparejamientos máximos

Si A y B son dos emparejamientos máximos, entonces | A |   2| B | y | B |   2| A | . Para ver esto, observe que cada arista en B  \ A  puede ser adyacente a como máximo dos aristas en A  \ B  porque A es un emparejamiento; además, cada arista en A  \ B  es adyacente a una arista en B  \ A  por la maximalidad de B , por lo tanto

|AB|2|BA|.{\displaystyle |A\setminus B|\leq 2|B\setminus A|.}

Además, deducimos que

|A|=|AB|+|AB|2|BA|+2|BA|=2|B|.{\displaystyle |A|=|A\cap B|+|A\setminus B|\leq 2|B\cap A|+2|B\setminus A|=2|B|.}

En particular, esto demuestra que cualquier emparejamiento máximo es una aproximación 2 de un emparejamiento máximo y también una aproximación 2 de un emparejamiento máximo mínimo. Esta desigualdad es precisa: por ejemplo, si G es un camino con 3 aristas y 4 vértices, el tamaño de un emparejamiento máximo mínimo es 1 y el de un emparejamiento máximo es 2.

Polinomios coincidentes

Una función generadora del número de emparejamientos de k aristas en un grafo se denomina polinomio de emparejamiento. Sea G un grafo y m k el número de emparejamientos de k aristas. Un polinomio de emparejamiento de G es

k0metrokincógnitak.{\displaystyle \sum _{k\geq 0}m_{k}x^{k}.}

Otra definición da como resultado el polinomio correspondiente

k0(1)kmetrokincógnitanorte2k,{\displaystyle \sum _{k\geq 0}(-1)^{k}m_{k}x^{n-2k},}

donde n es el número de vértices del grafo. Cada tipo tiene sus usos; para más información, consulte el artículo sobre polinomios coincidentes.

Algoritmos y complejidad computacional

Coincidencia de cardinalidad máxima

Un problema fundamental en la optimización combinatoria es encontrar el emparejamiento máximo . Este problema cuenta con diversos algoritmos para diferentes clases de grafos.

En un grafo bipartito no ponderado , el problema de optimización consiste en encontrar un emparejamiento de cardinalidad máxima . El problema se resuelve mediante el algoritmo de Hopcroft-Karp en tiempo O ( √VE ) , y existen algoritmos aleatorios más eficientes , algoritmos de aproximación y algoritmos para clases especiales de grafos , como los grafos planares bipartitos , tal como se describe en el artículo principal.

Coincidencia de peso máximo

En un grafo bipartito ponderado , el problema de optimización consiste en encontrar un emparejamiento de peso máximo; un problema dual consiste en encontrar un emparejamiento de peso mínimo. Este problema se suele denominar emparejamiento bipartito de peso máximo o problema de asignación . El algoritmo húngaro resuelve el problema de asignación y fue uno de los inicios de los algoritmos de optimización combinatoria. Utiliza una búsqueda de camino más corto modificada en el algoritmo de camino de aumento. Si se utiliza el algoritmo de Bellman-Ford para este paso, el tiempo de ejecución del algoritmo húngaro se convierte enO(V2mi){\displaystyle O(V^{2}E)}o el costo del borde se puede trasladar con un potencial para lograrO(V2registroV+Vmi){\displaystyle O(V^{2}\log {V}+VE)}tiempo de ejecución con el algoritmo de Dijkstra y el montón de Fibonacci . [ 8 ]

En un grafo ponderado no bipartito , el problema de emparejamiento de peso máximo se puede resolver en tiempo O(V2mi){\displaystyle O(V^{2}E)}utilizando el algoritmo de floración de Edmonds .

Emparejamientos máximos

Se puede encontrar un emparejamiento máximo con un algoritmo voraz simple . Un emparejamiento máximo también es un emparejamiento máximo, y por lo tanto es posible encontrar un emparejamiento máximo más grande en tiempo polinomial. También es posible encontrar un emparejamiento máximo con el uso de algoritmos rápidos de multiplicación de matrices en el tiempoO(norteω){\displaystyle O({n^{\omega }})}para 2.37ω<3{\displaystyle ~2.37\leq \omega <3}[ 9 ] . Sin embargo, no se conoce ningún algoritmo de tiempo polinomial para encontrar unemparejamiento máximo mínimo, es decir, un emparejamiento máximo que contenga elmenornúmero posible de aristas.

Un emparejamiento máximo con k aristas es un conjunto dominante de aristas con k aristas. Recíprocamente, si se nos da un conjunto dominante de aristas mínimo con k aristas, podemos construir un emparejamiento máximo con k aristas en tiempo polinomial. Por lo tanto, el problema de encontrar un emparejamiento máximo mínimo es esencialmente igual al problema de encontrar un conjunto dominante de aristas mínimo. [ 10 ] Se sabe que ambos problemas de optimización son NP-difíciles ; las versiones de decisión de estos problemas son ejemplos clásicos de problemas NP-completos . [ 11 ] Ambos problemas pueden aproximarse con un factor de 2 en tiempo polinomial: simplemente encontrar un emparejamiento máximo arbitrario M. [ 12 ]

Problemas de conteo

El número de emparejamientos en un grafo se conoce como el índice de Hosoya del grafo. Es #P-completo calcular esta cantidad, incluso para grafos bipartitos. [ 13 ] También es #P-completo contar emparejamientos perfectos , incluso en grafos bipartitos , porque calcular el permanente de una matriz arbitraria 0-1 (otro problema #P-completo) es lo mismo que calcular el número de emparejamientos perfectos en el grafo bipartito que tiene la matriz dada como su matriz de biadyacencia . Sin embargo, existe un esquema de aproximación aleatoria de tiempo totalmente polinomial para contar el número de emparejamientos bipartitos. [ 14 ] Un teorema notable de Kasteleyn establece que el número de emparejamientos perfectos en un grafo planar se puede calcular exactamente en tiempo polinomial mediante el algoritmo FKT .

El número de emparejamientos perfectos en un grafo completo K n (con n par) viene dado por el doble factorial ( n 1)!!. [ 15 ] El número de emparejamientos en grafos completos, sin restringir que los emparejamientos sean perfectos, viene dado por los números de teléfono . [ 16 ]  

El número de emparejamientos perfectos en un grafo también se conoce como el hafniano de su matriz de adyacencia .

Encontrar todos los bordes que mejor se puedan emparejar.

Uno de los problemas básicos en la teoría de emparejamientos es encontrar en un grafo dado todas las aristas que pueden extenderse hasta un emparejamiento máximo en el grafo (dichas aristas se denominan aristas máximamente emparejables o aristas permitidas ). Los algoritmos para este problema incluyen:

  • Para grafos generales, un algoritmo determinista en tiempoO(Vmi){\displaystyle O(VE)}y un algoritmo aleatorio en el tiempoO~(V2.376){\displaystyle {\tilde {O}}(V^{2.376})}. [ 17 ] [ 18 ]
  • Para grafos bipartitos, si se encuentra un único emparejamiento máximo, se ejecuta un algoritmo determinista en tiempoO(V+mi){\displaystyle O(V+E)}. [ 19 ]

Emparejamiento bipartito en línea

El problema del desarrollo de un algoritmo en línea para emparejamiento fue considerado por primera vez por Richard M. Karp , Umesh Vazirani y Vijay Vazirani en 1990. [ 20 ]

En el entorno en línea, los nodos de un lado del grafo bipartito ("clientes") llegan de uno en uno y deben emparejarse inmediatamente con el otro lado del grafo ("servidores") o descartarse. Esta es una generalización natural del problema de la secretaria y tiene aplicaciones en subastas de anuncios en línea. Un algoritmo voraz simple es 1/2- competitivo . Para el caso de maximización no ponderada con un modelo de llegada aleatoria, Karp, Vazirani y Vazirani dieron un algoritmo aleatorio que alcanza una razón competitiva de 0,632 . El límite se mejoró posteriormente a 0,696 . [ 21 ] El problema también se estudió en un modelo donde los clientes pueden cambiar de servidor para mejorar el emparejamiento, y el objetivo es economizar en el número de cambios mientras se logra un emparejamiento máximo. [ 22 ]

Aplicaciones

Emparejamiento en gráficos generales

Emparejamiento en grafos bipartitos

  • El problema de la graduación consiste en elegir el conjunto mínimo de clases a partir de los requisitos establecidos para la graduación.
  • El problema de transporte de Hitchcock incluye el emparejamiento bipartito como subproblema.
  • El problema del isomorfismo de subárboles incluye el emparejamiento bipartito como un subproblema.

Véase también

Referencias

  1. "is_matching" . Documentación de NetworkX 2.8.2 . Consultado el 31 de mayo de 2022. Cada nodo es incidente a lo sumo una arista en la correspondencia. Se dice que las aristas son independientes.
  2. ^ Diestel , Reinhard (2025). Teoría de grafos . Textos de Graduado en Matemáticas (Sexta Edición 2025 ed.). Erscheinungsort nicht ermittelbar: Springer. ISBN  978-3-662-70106-5.
  3. Alan Gibbons, Teoría algorítmica de grafos, Cambridge University Press, 1985, Capítulo 5.
  4. Cameron, Kathie (1989), "Emparejamientos inducidos", Número especial para la Primera Conferencia de Montreal sobre Combinatoria y Ciencias de la Computación, 1987, Matemáticas Aplicadas Discretas , 24 ( 1–3 ): 97–102 , doi : 10.1016/0166-218X(92)90275-F , MR 1011265 
  5. "Vista previa" .
  6. ^ Gallai, Tibor (1959), "Über extreme Punkt- und Kantenmengen", Ann. Univ. Ciencia. Budapest. Secta Eötvös. Matemáticas. , 2 : 133-138.
  7. Keivan Hassani Monfared y Sudipta Mallik, Teorema 3.6, Caracterización espectral de emparejamientos en grafos, Álgebra lineal y sus aplicaciones 496 (2016) 407–419, https://doi.org/10.1016/j.laa.2016.02.004 , https://arxiv.org/abs/1602.03590
  8. Fredman, Michael L.; Tarjan, Robert Endre (1987), "Montículos de Fibonacci y sus usos en algoritmos mejorados de optimización de redes", Journal of the ACM , 34 (3): 596– 615, doi : 10.1145/28869.28874 , S2CID 7904683 
  9. Mulmuley, Ketan; Vazirani, Umesh; Vazirani, Vijay (1987). "El emparejamiento es tan fácil como la inversión de matrices". Actas del decimonoveno simposio anual de la ACM sobre Teoría de la Computación (STOC '87) . págs. 345–354 . doi : 10.1145/28395.383347 . ISBN  0-89791-221-7.
  10. Yannakakis, Mihalis; Gavril, Fanica (1980), "Conjuntos dominantes de aristas en grafos" (PDF) , SIAM Journal on Applied Mathematics , 38 (3): 364–372 , doi : 10.1137/0138030.
  11. Garey, Michael R. ; Johnson, David S. (1979), Computers and Intractability: A Guide to the Theory of NP-Completeness , WH Freeman, ISBN 0-7167-1045-5El conjunto dominante de aristas (versión de decisión) se analiza en el problema del conjunto dominante, que es el problema GT2 en el Apéndice  A1.1. El emparejamiento máximo mínimo (versión de decisión) es el problema GT10 en el Apéndice  A1.1.
  12. Ausiello, Giorgio; Crescenzi, Pierluigi; Gambosi, Giorgio; Kann, Viggo; Marchetti-Spaccamela, Alberto; Protasi, Marco (2003), Complexity and Approximation: Combinatorial Optimization Problems and Their Approximability Properties , SpringerEl problema GT3 del Apéndice B (página 370) corresponde al conjunto dominante de aristas mínimo (versión de optimización). El problema GT10 del Apéndice B (página 374) corresponde al emparejamiento máximo mínimo (versión de optimización). Véase también Conjunto dominante de aristas mínimo y Emparejamiento máximo mínimo en el compendio web .
  13. Leslie Valiant , La complejidad de los problemas de enumeración y fiabilidad , SIAM J. Comput., 8(3), 410–421
  14. Bezáková, Ivona; Štefankovič, Daniel; Vazirani, Vijay V .; Vigoda, Eric (2008). "Aceleración del recocido simulado para problemas de conteo permanente y combinatorio". Revista SIAM de Computación . 37 (5): 1429–1454 . CiteSeerX 10.1.1.80.687 . doi : 10.1137/050644033 . S2CID 755231 .  
  15. Callan, David (2009), Un estudio combinatorio de identidades para el factorial doble , arXiv : 0906.1317 , Bibcode : 2009arXiv0906.1317C.
  16. Tichy, Robert F.; Wagner, Stephan (2005), "Problemas extremos para índices topológicos en química combinatoria" (PDF) , Journal of Computational Biology , 12 (7): 1004–1013 , doi : 10.1089/cmb.2005.12.1004 , PMID 16201918 .
  17. Rabin, Michael O.; Vazirani, Vijay V. (1989), "Emparejamientos máximos en grafos generales mediante aleatorización", Journal of Algorithms , 10 (4): 557– 567, CiteSeerX 10.1.1.228.1996 , doi : 10.1016/0196-6774(89)90005-9 
  18. ^ Cheriyan, Joseph (1997), "AleatorizadoO~(METRO(|V|)){\displaystyle {\widetilde {O}}(M(|V|))}algoritmos para problemas en teoría de emparejamiento", SIAM Journal on Computing , 26 (6): 1635– 1655, doi : 10.1137/S0097539793256223
  19. Tassa, Tamir (2012), "Encontrar todos los bordes máximamente coincidentes en un grafo bipartito", Theoretical Computer Science , 423 : 50–58 , doi : 10.1016/j.tcs.2011.12.071
  20. Karp, Richard M.; Vazirani , Umesh V .; Vazirani, Vijay V. (1990). "Un algoritmo óptimo para el emparejamiento bipartito en línea" (PDF) . Actas del 22.º Simposio Anual de la ACM sobre Teoría de la Computación (STOC 1990) . págs. 352–358 . doi : 10.1145/100216.100262 . ISBN  0-89791-361-2.
  21. Mahdian, Mohammad; Yan, Qiqi (2011). "Emparejamiento bipartito en línea con llegadas aleatorias: un enfoque basado en LP que revelan factores importantes". Actas del Cuadragésimo Tercer Simposio Anual de la ACM sobre Teoría de la Computación . págs. 597–606 . doi : 10.1145/1993636.1993716 . 
  22. Bosek, Bartlomiej; Leniowski, Dariusz; Sankowski, Piotr; Zych, Anna (2014). "Emparejamiento bipartito en línea en tiempo fuera de línea". 55º Simposio Anual del IEEE sobre Fundamentos de la Informática . IEEE. págs. 384– 393. doi : 10.1109/FOCS.2014.48 . 
  23. Véase, por ejemplo, Trinajstić, Nenad ; Klein, Douglas J.; Randić, Milan (1986), "Sobre algunos problemas resueltos y no resueltos de la teoría de grafos químicos", International Journal of Quantum Chemistry , 30 (S20): 699–742 , doi : 10.1002/qua.560300762.

Lecturas adicionales

  1. Lovász, László ; Plummer, MD (1986), Teoría de correspondencias , Annals of Discrete Mathematics, vol.  29, Holanda Septentrional, ISBN 0-444-87916-1, MR 0859549 
  2. Thomas H. Cormen , Charles E. Leiserson , Ronald L. Rivest y Clifford Stein (2001), Introducción a los algoritmos (segunda  edición), MIT Press y McGraw-Hill, Capítulo 26, págs. 643-700 , ISBN 0-262-53196-8{{citation}}: CS1 maint: varios nombres: lista de autores ( enlace )
  3. András Frank (2004). Sobre el método húngaro de Kuhn: un homenaje desde Hungría (PDF) (Reporte técnico). Grupo de Investigación Egerváry.
  4. Michael L. Fredman y Robert E. Tarjan (1987), "Montículos de Fibonacci y sus usos en algoritmos mejorados de optimización de redes", Journal of the ACM , 34 (3): 595– 615, doi : 10.1145/28869.28874 , S2CID 7904683 . 
  5. SJ Cyvin e Ivan Gutman (1988), Estructuras de Kekulé en hidrocarburos bencenoides , Springer-Verlag
  6. Marek Karpinski y Wojciech Rytter (1998), Algoritmos paralelos rápidos para problemas de emparejamiento de grafos , Oxford University Press, ISBN 978-0-19-850162-6
  • Una biblioteca de grafos con implementación de coincidencia de cardinalidad máxima basada en Hopcroft-Karp y Push-Relabel.