fbpx
Wikipedia

Algoritmo de Boruvka

Historia

El Algoritmo de Borůvka es un algoritmo para encontrar el árbol recubridor mínimo en un grafo ponderado en el que todos sus arcos tienen distinto peso.

Fue publicado por primera vez en 1926 por Otakar Borůvka como un método eficiente para construir la red eléctrica de Moravia.[1][2]​ El algoritmo fue redescubierto por Choquet en 1938;[3]​ de nuevo por Florek, Łukasiewicz, Perkal, Steinhaus y Zubrzycki en 1951; y de nuevo por Sollin a principio de la década de 1960. Debido a que Sollin fue el único de ellos que era científico en computación, este algoritmo es frecuentemente llamado Algoritmo de Sollin, especialmente en la literatura sobre computación paralela.

Algoritmo

El algoritmo comienza examinando cada vértice y añadiendo el arco de menor peso desde ese vértice a otro en el grafo, sin tener en cuenta los arcos ya agregados, y continua uniendo estos grupos de la misma manera hasta que se completa un árbol que cubra todos los vértices. Si denominamos a cada vértice o conjunto de vértices conectados como «componente», el pseudocódigo del Algoritmo de Boruvka es:

  • Comenzar con un grafo conexo G en el que todos sus arcos tengan distinto peso, y un conjunto vacío de arcos T.
  • Mientras los vértices de G conectados por T sean disjuntos:
    • Crear un conjunto vacío de arcos S
    • Para cada componente:
      • Crear un conjunto vacío de arcos S
      • Para cada vértice v en el componente:
        • Agregar el arco de menor peso desde el vértice v a otro vértice en un componente disjunto a S
      • Añadir el arco de menor peso en S a E
    • Añadir el conjunto resultante E a T.
  • El conjunto de aristas resultante T es el árbol de expansión mínimo de G.

Complejidad

Con el Algoritmo de Boruvka se puede obtener una complejidad de   iteraciones en el bucle externo antes de terminar, y por lo tanto su complejidad temporal es  , donde   es el número de arcos, y   es el número de vértices de  . En grafos planos puede implementarse para ejecutarse en tiempo lineal, eliminando los arcos de menor peso entre cada par de nodos después de cada etapa del algoritmo.[4]

Otros algoritmos

Entre otros algoritmos para este problema se incluyen el Algoritmo de Prim (realmente descubierto por Vojtech Jarnik) y el Algoritmo de Kruskal. Algoritmos más rápidos pueden ser obtenidos combinando el Algoritmo de Prim con el Algoritmo de Boruvka.

El algoritmo más rápido para hallar el árbol de recubrimiento mínimo aleatorio está basado en parte en el algoritmo de Boruvka gracias a Karger, Klein y Tarjan y se obtiene una complejidad  .

El mejor algoritmo (determinista) conocido para encontrar el árbol recubridor mínimo de Bernard Chazelle está también basado en parte en el Algoritmo de Boruvka y tiene complejidad temporal  , donde   es la inversa de la Función de Ackermann. Estos algoritmos aleatorios y deterministas combinan pasos del Algoritmo de Boruvka reduciendo el número de nodos que quedan por conectar, con pasos de diferente tipo que reduzcan el número de arcos entre cada par de nodos.

Referencias

  1. Borůvka, Otakar (1926). «O jistém problému minimálním (About a certain minimal problem)». Práce mor. přírodověd. spol. v Brně III (en czech, German summary) 3: 37-58. 
  2. Borůvka, Otakar (1926). «Příspěvek k řešení otázky ekonomické stavby elektrovodních sítí (Contribution to the solution of a problem of economical construction of electrical networks)». Elektronický Obzor (en checo) 15: 153-154. 
  3. Choquet, Gustave (1938). «Étude de certains réseaux de routes». Comptes-rendus de l’Académie des Sciences (en francés) 206: 310-313. 
  4. Eppstein, David (1999), «Spanning trees and spanners», en Sack, J.-R.; Urrutia, J., eds., Handbook of Computational Geometry, Elsevier, pp. 425-461 .; Mareš, Martin (2004), , Archivum mathematicum 40 (3): 315-320, archivado desde el original el 9 de mayo de 2009, consultado el 1 de junio de 2009 ..
  •   Datos: Q1468211
  •   Multimedia: Borůvka's algorithm / Q1468211

algoritmo, boruvka, Índice, historia, algoritmo, complejidad, otros, algoritmos, referenciashistoria, editarel, algoritmo, borůvka, algoritmo, para, encontrar, árbol, recubridor, mínimo, grafo, ponderado, todos, arcos, tienen, distinto, peso, publicado, primer. Indice 1 Historia 2 Algoritmo 3 Complejidad 4 Otros algoritmos 5 ReferenciasHistoria EditarEl Algoritmo de Boruvka es un algoritmo para encontrar el arbol recubridor minimo en un grafo ponderado en el que todos sus arcos tienen distinto peso Fue publicado por primera vez en 1926 por Otakar Boruvka como un metodo eficiente para construir la red electrica de Moravia 1 2 El algoritmo fue redescubierto por Choquet en 1938 3 de nuevo por Florek Lukasiewicz Perkal Steinhaus y Zubrzycki en 1951 y de nuevo por Sollin a principio de la decada de 1960 Debido a que Sollin fue el unico de ellos que era cientifico en computacion este algoritmo es frecuentemente llamado Algoritmo de Sollin especialmente en la literatura sobre computacion paralela Algoritmo EditarEl algoritmo comienza examinando cada vertice y anadiendo el arco de menor peso desde ese vertice a otro en el grafo sin tener en cuenta los arcos ya agregados y continua uniendo estos grupos de la misma manera hasta que se completa un arbol que cubra todos los vertices Si denominamos a cada vertice o conjunto de vertices conectados como componente el pseudocodigo del Algoritmo de Boruvka es Comenzar con un grafo conexo G en el que todos sus arcos tengan distinto peso y un conjunto vacio de arcos T Mientras los vertices de G conectados por T sean disjuntos Crear un conjunto vacio de arcos S Para cada componente Crear un conjunto vacio de arcos S Para cada vertice v en el componente Agregar el arco de menor peso desde el vertice v a otro vertice en un componente disjunto a S Anadir el arco de menor peso en S a E Anadir el conjunto resultante E a T El conjunto de aristas resultante T es el arbol de expansion minimo de G Complejidad EditarCon el Algoritmo de Boruvka se puede obtener una complejidad de O log V displaystyle O log V iteraciones en el bucle externo antes de terminar y por lo tanto su complejidad temporal es O E log V displaystyle O E log V donde E displaystyle E es el numero de arcos y V displaystyle V es el numero de vertices de G displaystyle G En grafos planos puede implementarse para ejecutarse en tiempo lineal eliminando los arcos de menor peso entre cada par de nodos despues de cada etapa del algoritmo 4 Otros algoritmos EditarEntre otros algoritmos para este problema se incluyen el Algoritmo de Prim realmente descubierto por Vojtech Jarnik y el Algoritmo de Kruskal Algoritmos mas rapidos pueden ser obtenidos combinando el Algoritmo de Prim con el Algoritmo de Boruvka El algoritmo mas rapido para hallar el arbol de recubrimiento minimo aleatorio esta basado en parte en el algoritmo de Boruvka gracias a Karger Klein y Tarjan y se obtiene una complejidad O E displaystyle O E El mejor algoritmo determinista conocido para encontrar el arbol recubridor minimo de Bernard Chazelle esta tambien basado en parte en el Algoritmo de Boruvka y tiene complejidad temporal O E a V displaystyle O E alpha V donde a displaystyle alpha es la inversa de la Funcion de Ackermann Estos algoritmos aleatorios y deterministas combinan pasos del Algoritmo de Boruvka reduciendo el numero de nodos que quedan por conectar con pasos de diferente tipo que reduzcan el numero de arcos entre cada par de nodos Referencias Editar Boruvka Otakar 1926 O jistem problemu minimalnim About a certain minimal problem Prace mor prirodoved spol v Brne III en czech German summary 3 37 58 Boruvka Otakar 1926 Prispevek k reseni otazky ekonomicke stavby elektrovodnich siti Contribution to the solution of a problem of economical construction of electrical networks Elektronicky Obzor en checo 15 153 154 Choquet Gustave 1938 Etude de certains reseaux de routes Comptes rendus de l Academie des Sciences en frances 206 310 313 Eppstein David 1999 Spanning trees and spanners en Sack J R Urrutia J eds Handbook of Computational Geometry Elsevier pp 425 461 Mares Martin 2004 Two linear time algorithms for MST on minor closed graph classes Archivum mathematicum 40 3 315 320 archivado desde el original el 9 de mayo de 2009 consultado el 1 de junio de 2009 Datos Q1468211 Multimedia Boruvka s algorithm Q1468211 Obtenido de https es wikipedia org w index php title Algoritmo de Boruvka amp oldid 132650412, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos