stringtranslate.com

búsqueda de haz

Búsqueda de haz con ancho 3 (animación)

En informática , la búsqueda de haces es un algoritmo de búsqueda heurística que explora un gráfico expandiendo el nodo más prometedor en un conjunto limitado. La búsqueda por haz es una modificación de la búsqueda "mejor primero" que reduce sus requisitos de memoria. La búsqueda del mejor primero es una búsqueda de gráficos que ordena todas las soluciones parciales (estados) de acuerdo con alguna heurística. Pero en la búsqueda por haces sólo se mantiene como candidatas un número predeterminado de mejores soluciones parciales. [1] Es, por tanto, un algoritmo codicioso .

Detalles

La búsqueda por haz utiliza la búsqueda en amplitud para construir su árbol de búsqueda . En cada nivel del árbol, genera todos los sucesores de los estados en el nivel actual, clasificándolos en orden creciente de costo heurístico. [2] Sin embargo, solo almacena un número predeterminado, de los mejores estados en cada nivel (llamado ancho del haz). Sólo esos estados se amplían a continuación. Cuanto mayor es el ancho del haz, menos estados se podan. Con un ancho de haz infinito, no se elimina ningún estado y la búsqueda del haz es idéntica a la búsqueda del mejor primero . [3] Por el contrario, un ancho de haz de 1 corresponde a un algoritmo de escalada . [3] El ancho del haz limita la memoria necesaria para realizar la búsqueda. Dado que un estado objetivo podría potencialmente podarse, la búsqueda por haz sacrifica la integridad (la garantía de que un algoritmo terminará con una solución, si existe). La búsqueda por haz no es óptima (es decir, no hay garantía de que encontrará la mejor solución).

Usos

Una búsqueda por haz se utiliza con mayor frecuencia para mantener la manejabilidad en sistemas grandes con una cantidad de memoria insuficiente para almacenar todo el árbol de búsqueda. [4] Por ejemplo, se ha utilizado en muchos sistemas de traducción automática . [5] (El estado de la técnica ahora utiliza principalmente métodos basados ​​en traducción automática neuronal , especialmente modelos de lenguaje grandes ). Para seleccionar la mejor traducción, se procesa cada parte y aparecen muchas formas diferentes de traducir las palabras. Se conservan las mejores traducciones según la estructura de sus oraciones y el resto se descarta. A continuación, el traductor evalúa las traducciones según un criterio determinado y elige la traducción que mejor cumple sus objetivos.

Historia

El sistema de reconocimiento de voz Harpy (introducido en una disertación de 1976 [6] ) fue el primer uso de lo que se conocería como búsqueda por haz. [7] Si bien el procedimiento se denominó originalmente "modelo de búsqueda de locus", el término "búsqueda por haz" ya estaba en uso en 1977. [8]

Variantes

La búsqueda de haces se ha completado combinándola con la búsqueda en profundidad , lo que da como resultado una búsqueda en pila de haces [9] y una búsqueda de haces en profundidad , [4] y con una búsqueda de discrepancia limitada, [4] que da como resultado una búsqueda de haces usando un retroceso de discrepancia limitada [4] (BOMBILLA). Los algoritmos de búsqueda resultantes son algoritmos en cualquier momento que encuentran rápidamente soluciones buenas pero probablemente subóptimas, como la búsqueda por haz, luego retroceden y continúan encontrando soluciones mejoradas hasta la convergencia a una solución óptima.

En el contexto de una búsqueda local , llamamos búsqueda de haz local a un algoritmo específico que comienza seleccionando estados generados aleatoriamente y luego, para cada nivel del árbol de búsqueda, siempre considera nuevos estados entre todos los posibles sucesores de los actuales, hasta que alcanza una meta. [10] [11]

Dado que la búsqueda de haz local a menudo termina en máximos locales, una solución común es elegir los siguientes estados de forma aleatoria, con una probabilidad que depende de la evaluación heurística de los estados. Este tipo de búsqueda se llama búsqueda de haz estocástico . [12]

Otras variantes son la búsqueda de haz flexible y la búsqueda de haz de recuperación . [11]

Referencias

  1. ^ "búsqueda de haz". Diccionario gratuito en línea de informática . Consultado el 27 de marzo de 2024 .
  2. ^ "BÚSQUEDA DEL MUSEO BRITÁNICO". bradley.bradley.edu . Consultado el 11 de abril de 2016 .
  3. ^ ab Norvig, Peter (1992). Paradigmas de la programación de inteligencia artificial: estudios de caso en LISP común. Morgan Kaufman. pag. 196.ISBN 9781558601918.
  4. ^ abcd Furcy, D.; Koenig, S. (2005). "Búsqueda de haz de discrepancia limitada". Actas de la 19ª conferencia internacional conjunta sobre inteligencia artificial . Morgan Kaufman. págs. 125-131.
  5. ^ Tillmann, C.; Ney, H. (2003). "Reordenación de palabras y algoritmo de búsqueda de haz de programación dinámica para traducción automática estadística". Ligüística computacional . 29 (1): 97-133. doi : 10.1162/089120103321337458 . S2CID  7829066.
  6. ^ Lowerre, Bruce T. (1976). El sistema de reconocimiento de voz Harpy (PDF) (Doctor). Universidad de Carnegie mellon.
  7. ^ Ay, Peng Si; Morton, Thomas E. (1988). "Búsqueda de haz filtrado en programación†". Revista Internacional de Investigación sobre Producción . 26 (1): 35–62. doi :10.1080/00207548808947840. ISSN  0020-7543.
  8. ^ Centro de Información Técnica de Defensa (1 de agosto de 1977). DTIC ADA049288: Sistemas de Comprensión del Habla. Resumen de los resultados del esfuerzo de investigación de cinco años en la Universidad Carnegie-Mellon. pag. 6.
  9. ^ Zhou, Rong; Hansen, Eric (2005). "Beam-Stack Search: integración del retroceso con Beam Search". ICAPS . págs. 90–98. Archivado desde el original el 2021-04-20 . Consultado el 9 de abril de 2011 .
  10. ^ Svetlana Lázebnik . «Algoritmos de búsqueda local» (PDF) . Universidad de Carolina del Norte en Chapel Hill, Departamento de Ciencias de la Computación. pag. 15. Archivado (PDF) desde el original el 5 de julio de 2011.
  11. ^ ab Pushpak Bhattacharyya. "Búsqueda de haz". Instituto Indio de Tecnología de Bombay, Departamento de Ingeniería y Ciencias de la Computación (CSE). págs. 39–40. Archivado desde el original el 21 de noviembre de 2018.
  12. ^ James Parker (28 de septiembre de 2017). "Búsqueda local" (PDF) . Universidad de Minnesota. pag. 17. Archivado (PDF) desde el original el 13 de octubre de 2017 . Consultado el 21 de noviembre de 2018 .