3. DEFINICIONES
Nodo: estado del problema en un momento dado. Sobre él se pueden aplicar
operadores para generar sus nodos sucesores. Hay tres tipos: nodo inicial, nodo
objetivo y nodo de transición.
Nodo inicial es aquel en donde empieza la resolución del problema
Nodo final es aquel nodo que se persigue encontrar en la búsqueda
Nodo de transición son aquellos que se generan en el proceso de
búsqueda.
4. DEFINICIONES
• Árbol de expansión: estructura arbórea que se genera en la búsqueda del
nodo. Va desde el nodo inicial, que es raíz del mismo al nodo final. Y contiene
aquellos nodos de transición que se generan en el proceso.
5. PROBLEMA
Ir desde el nodo A hasta el nodo Z solo
pudiendo transitar por los arcos definidos en
la imagen.
6. BUSQUEDA POR NIVELES / EN ANCHURA:
ALGORITMO EN LENGUAJE NATURAL
Procedimiento anchura (Grafo):
listaAbierta <- nodo inicial del grafo
mientras la listaAbierta no esté vacía:
nodoActual <- primer elemento de la listaAbierta
si nodoActual es el objetivo: devolver el nodoActual
si no lo es:
añadir los sucesores al comienzo de la listaAbierta si existen
eliminar el nodoActual de la lista abierta
devolver “No hay solución”
7. EJEMPLO NODO
• El nodo es nombrado como la concatenación de todos los nodos previos más
el actual.
• Trayectoria desde el nodo inicial: A,B,C,E entonces el nodo se llama ABCE
• Esto sirve para evitar que dos nodo que comienzan y empiezan en el mismo nodo sean
confundidos.
8. BÚSQUEDA POR NIVELES / EN ANCHURA:
EJEMPLO DE TRAZA
Procedimiento anchura (Grafo):
listaAbierta <- nodo inicial del grafo
mientras la listaAbierta no esté vacía:
nodoActual <- primer elemento de la
listaAbierta
si nodoActual es el objetivo: devolver el
nodoActual
si no lo es: añadir los sucesores al comienzo de
la listaAbierta si existen
eliminar el nodoActual de la
listaAbierta
devolver “No hay solución”
9. PROPIEDADES DE LA BÚSQUEDA EN ANCHURA
• No siempre dará la solución óptima puesto que da la primera solución que
encuentre
• En el peor de los casos recorrerá todo el árbol de expansión del grafo en
busca de la primera solución.
• En el peor de los casos habrá revisado 𝑏 𝑑
nodos donde b es el número de
nodos descendientes de uno dado y d el número de niveles que tendrá como
máximo el árbol de expansión.