Articulo de referencia

Intersección de matroides

En la optimización combinatoria , el problema de intersección de matroides consiste en encontrar el mayor conjunto común independiente en dos matroides sobre el mismo conjunto b...

En la optimización combinatoria , el problema de intersección de matroides consiste en encontrar el mayor conjunto común independiente en dos matroides sobre el mismo conjunto base. Si a los elementos del matroide se les asignan pesos reales, el problema de intersección de matroides ponderados consiste en encontrar un conjunto común independiente con el máximo peso posible. Estos problemas generalizan muchos problemas de la optimización combinatoria, entre ellos, la búsqueda de correspondencias máximas y correspondencias de peso máximo en grafos bipartitos y la búsqueda de arborescencias en grafos dirigidos .

El teorema de intersección de matroides , creado por Jack Edmonds [1], dice que siempre existe un límite superior simple, que consiste en una partición del conjunto base entre las dos matroides, cuyo valor (suma de los rangos respectivos ) es igual al tamaño de un conjunto independiente común máximo. Con base en este teorema, el problema de intersección de matroides para dos matroides se puede resolver en tiempo polinomial utilizando algoritmos de partición de matroides .

Ejemplos

Sea G  = ( U , V , E ) un grafo bipartito . Se puede definir un matroide de partición M U sobre el conjunto base E , en el que un conjunto de aristas es independiente si no hay dos de las aristas que tengan el mismo punto final en U . De manera similar, se puede definir un matroide M V en el que un conjunto de aristas es independiente si no hay dos de las aristas que tengan el mismo punto final en V . Cualquier conjunto de aristas que sea independiente tanto en M U como en M V tiene la propiedad de que no hay dos de sus aristas que compartan un punto final; es decir, es un coincidente . Por lo tanto, el mayor conjunto independiente común de M U y M V es un coincidente máximo en G .

De manera similar, si cada borde tiene un peso, entonces el conjunto independiente de peso máximo de M U y M V es una coincidencia de peso máximo en G .

Algoritmos

Existen varios algoritmos de tiempo polinomial para la intersección de matroides ponderados, con diferentes tiempos de ejecución. Los tiempos de ejecución se dan en términos de: - el número de elementos en el conjunto base común, - el máximo entre los rangos de los dos matroides, - el número de operaciones requeridas para un oráculo de búsqueda de circuitos , y - el número de elementos en la intersección (en caso de que queramos encontrar una intersección de un tamaño específico ). norte {\estilo de visualización n} a {\estilo de visualización r} yo {\estilo de visualización T} a {\estilo de visualización k} a {\estilo de visualización k}

  • El algoritmo de Edmonds utiliza programación lineal y poliedros. [1]
  • Algoritmo de Lawler . [2]
  • Algoritmo de Iri y Tomizawa [3]
  • El algoritmo de Andras Frank [4] utiliza operaciones aritméticas. Oh ( norte 3 yo ) Estilo de visualización O(n^{3}T)}
  • Algoritmo de Orlin y Vande-Vate. [5]
  • El algoritmo de Cunningham [6] requiere operaciones sobre matroides generales y operaciones sobre matroides lineales , para dos matrices de r por n . Oh ( a 1.5 norte yo ) Estilo de visualización O(r^{1.5}nT)} Oh ( norte a 2 registro a ) {\displaystyle O(nr^{2}\log {r})}
  • Brezovec, Cornuejos y Glover [7] presentan dos algoritmos para la intersección de matroides ponderadas.
    • El primer algoritmo requiere que todos los pesos sean números enteros y encuentra una intersección de cardinalidad en el tiempo . a {\estilo de visualización k} Oh ( ( norte 3 a 2 + norte a yo ) ( 1 + registro Yo ) ) {\displaystyle O((n^{3}k^{2}+nkT)\cdot (1+\log {W}))}
    • El segundo algoritmo se ejecuta en el tiempo . Oh ( norte a ( registro norte + a + yo ) ) {\displaystyle O(nr\cdot (\log {n}+r+T))}
  • Huang, Kakimura y Kamiyama [8] muestran que el problema de intersección de matroides ponderados se puede resolver resolviendo W instancias del problema de intersección de matroides no ponderados, donde W es el peso dado más grande, asumiendo que todos los pesos dados son integrales. Este algoritmo es más rápido que los algoritmos anteriores cuando W es pequeño. También presentan un algoritmo de aproximación que encuentra una solución e -aproximada resolviendo instancias del problema de intersección de matroides no ponderados, donde r es el rango más pequeño de los dos matroides de entrada. Oh ( o 1 registro a ) {\displaystyle O(\epsilon ^{-1}\log {r})}
  • Ghosh, Gurjar y Raj [9] estudian la complejidad en tiempo de ejecución de la intersección de matroides en el modelo de computación paralela .
  • Bérczi, Király, Yamaguchi y Yokoi [10] presentan algoritmos de tiempo fuertemente polinomial para la intersección de matroides ponderadas utilizando oráculos más restringidos.

Extensiones

Maximizar el peso sujeto a cardinalidad

En una variante de la intersección de matroides ponderada, denominada "(P k )", el objetivo es encontrar un conjunto independiente común con el máximo peso posible entre todos los conjuntos con cardinalidad k , si tal conjunto existe. Esta variante también se puede resolver en tiempo polinomial. [7]

Tres matroides

El problema de la intersección de matroides se vuelve NP-difícil cuando están involucradas tres matroides, en lugar de solo dos.

Una prueba de este resultado de dureza utiliza una reducción del problema de la trayectoria hamiltoniana en grafos dirigidos . Dado un grafo dirigido G con n vértices y nodos especificados s y t , el problema de la trayectoria hamiltoniana es el problema de determinar si existe una trayectoria simple de longitud n  − 1 que comienza en s y termina en t . Se puede suponer sin pérdida de generalidad que s no tiene aristas entrantes y t no tiene aristas salientes. Entonces, existe una trayectoria hamiltoniana si y solo si hay un conjunto de n  − 1 elementos en la intersección de tres matroides en el conjunto de aristas del grafo: dos matroides de partición que aseguran que el grado de entrada y el grado de salida del conjunto de aristas seleccionado sean ambos como máximo uno, y la matroide gráfica del grafo no dirigido formada olvidando las orientaciones de las aristas en G , asegurando que el conjunto de aristas seleccionado no tenga ciclos. [11]

Paridad matroide

Otro problema computacional sobre matroides, el problema de paridad de matroides , fue formulado por Lawler [12] como una generalización común de la intersección de matroides y la correspondencia de grafos no bipartitos. Sin embargo, aunque se puede resolver en tiempo polinomial para matroides lineales , es NP-hard para otros matroides y requiere tiempo exponencial en el modelo de oráculo de matroides . [13]

Matroides valorados

Un matroide valuado es un matroide equipado con una función de valor v en el conjunto de sus bases, con la siguiente propiedad de intercambio : para cualesquiera dos bases distintas y , si , entonces existe un elemento tal que ambos y son bases, y : . A {\estilo de visualización A} B {\estilo de visualización B} a A B {\displaystyle a\en A\setmenos B} b B A {\displaystyle b\en B\setmenos A} ( A { a } ) { b } {\displaystyle (A\setmenos \{a\})\cup \{b\}} ( B { b } ) { a } {\displaystyle (B\setminus \{b\})\cup \{a\}} en ( A ) + en ( B ) en ( B { b } { a } ) + en ( A { a } { b } ) {\displaystyle v(A)+v(B)\leq v(B\setminus \{b\}\cup \{a\})+v(A\setminus \{a\}\cup \{b\} )}

Dado un grafo bipartito ponderado G = ( X + Y , E ) y dos matroides valuados, uno en X con bases establecidas B X y valuación v X , y uno en Y con bases B Y y valuación v Y , el problema de asignación independiente valuado es el problema de encontrar un M coincidente en G , tal que M X (el subconjunto de X coincidente con M ) es una base en B X , M Y es una base en B Y , y sujeto a esto, la suma se maximiza. El problema de intersección de matroides ponderados es un caso especial en el que las valuaciones de los matroides son constantes, por lo que solo buscamos maximizar sujeto a que M X es una base en B X y M Y es una base en B Y . [14] Murota presenta un algoritmo de tiempo polinomial para este problema. [15] el ( METRO ) + en incógnita ( METRO incógnita ) + en Y ( METRO Y ) {\displaystyle w(M)+v_{X}(M_{X})+v_{Y}(M_{Y})} el ( METRO ) {\displaystyle w(M)}

Véase también

Referencias

  1. ^ ab Edmonds, Jack (1970), "Funciones submodulares, matroides y ciertos poliedros", en R. Guy; H. Hanam; N. Sauer; J. Schonheim (eds.), Estructuras combinatorias y sus aplicaciones (Proc. Conferencia de Calgary de 1969) , Gordon y Breach, Nueva York, págs. 69–87. Reimpreso en M. Jünger et al. (Eds.): Optimización combinatoria (Edmonds Festschrift), LNCS 2570, págs. 1126, Springer-Verlag, 2003.
  2. ^ Lawler, Eugene L. (1975), "Algoritmos de intersección de matroides", Programación matemática , 9 (1): 31–56, doi :10.1007/BF01681329, S2CID  206801650
  3. ^ Iri, Masao; Tomizawa, Nobuaki (1976). "Un algoritmo para encontrar una" asignación independiente óptima"".日本オペレーションズ・リサーチ学会論文誌. 19 (1): 32–57. doi : 10.15807/jorsj.19.32 .
  4. ^ Frank, András (1981), "Un algoritmo de intersección de matroides ponderados", Journal of Algorithms , 2 (4): 328–336, doi :10.1016/0196-6774(81)90032-8
  5. ^ Orlin, James B.; VandeVate, John (1983). Algoritmo de intersección de matroides "primarios" (Documento de trabajo de la Sloan School of Management n.° 1446-83). hdl :1721.1/2050.
  6. ^ Cunningham, William H. (1 de noviembre de 1986). "Límites mejorados para algoritmos de partición e intersección de matroides". Revista SIAM de Computación . 15 (4): 948–957. doi :10.1137/0215066. ISSN  0097-5397.
  7. ^ ab Brezovec, Carl; Cornuéjols, Gérard ; Glover, Fred (1986), "Dos algoritmos para la intersección de matroides ponderados", Programación matemática , 36 (1): 39–53, doi :10.1007/BF02591988, S2CID  34567631
  8. ^ Huang, Chien-Chung; Kakimura, Naonori; Kamiyama, Naoyuki (1 de septiembre de 2019). "Algoritmos exactos y de aproximación para la intersección de matroides ponderados". Programación matemática . 177 (1): 85–112. doi :10.1007/s10107-018-1260-x. hdl : 2324/1474903 . ISSN  1436-4646. S2CID  254138118.
  9. ^ Ghosh, Sumanta; Gurjar, Rohit; Raj, Roshan (1 de enero de 2022), "Una reducción paralela determinista desde la búsqueda de intersección de matroides ponderada hasta la decisión", Actas del Simposio anual ACM-SIAM de 2022 sobre algoritmos discretos (SODA) , Actas, Sociedad de Matemáticas Industriales y Aplicadas, págs. 1013–1035, doi :10.1137/1.9781611977073.44, ISBN 978-1-61197-707-3, S2CID  245799113 , consultado el 28 de noviembre de 2022
  10. ^ Bérczi, Kristóf; Király, Tamás; Yamaguchi, Yutaro; Yokoi, Yu (28 de septiembre de 2022). "Intersección matroide bajo oráculos restringidos". arXiv : 2209.14516 [cs.DS].
  11. ^ Welsh, DJA (2010) [1976], Teoría matroide , Publicaciones Courier Dover, p. 131, ISBN 9780486474397.
  12. ^ Lawler, Eugene L. (1976), "Capítulo 9: El problema de la paridad matroide", Optimización combinatoria: redes y matroides , Nueva York: Holt, Rinehart y Winston, págs. 356-367, MR  0439106.
  13. ^ Jensen, Per M.; Korte, Bernhard (1982), "Complejidad de los algoritmos de propiedades de matroides", SIAM Journal on Computing , 11 (1): 184–190, doi :10.1137/0211014, MR  0646772.
  14. ^ Murota, Kazuo (1996-11-01). "Intersección matroide valorada I: criterios de optimalidad". Revista SIAM de Matemáticas Discretas . 9 (4): 545–561. doi :10.1137/S0895480195279994. ISSN  0895-4801.
  15. ^ Murota, Kazuo (noviembre de 1996). "Intersección matroide valorada II: algoritmos". Revista SIAM de Matemática Discreta . 9 (4): 562–576. doi :10.1137/S0895480195280009. ISSN  0895-4801.

Lectura adicional

  • Aigner, Martin; Dowling, Thomas (1971), "Teoría de emparejamiento para geometrías combinatorias", Transactions of the American Mathematical Society , 158 (1): 231–245, doi : 10.1090/S0002-9947-1971-0286689-5.
  • Frederickson, Greg N.; Srinivas, Mandayam A. (1989), "Algoritmos y estructuras de datos para una familia expandida de problemas de intersección de matroides" (PDF) , SIAM Journal on Computing , 18 (1): 112–138, doi :10.1137/0218008, hdl :1802/6137, archivado desde el original el 22 de septiembre de 2017.
  • Gabow, Harold N. ; Tarjan, Robert E. (1984), "Algoritmos eficientes para una familia de problemas de intersección de matroides", Journal of Algorithms , 5 (1): 80–131, doi :10.1016/0196-6774(84)90042-7..
Obtenido de "https://es.wikipedia.org/w/index.php?title=Intersección_de_matroid&oldid=1256251113"