SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Búsqueda en Profundidad
(Depth – First)
Algoritmo:
1. Definir una Lista L con los nodos iniciales. En cualquier momento
asumir que L es una lista de los nodos que no han sido examinados.
2. Si L está vacía, falla. De otro modo, se toma un nodo N de L.
3. Si N es una meta. Regrese el nodo y el trayecto desde el nodo inicial
al nodo N.
4. Si N no es una meta. Elimine N de L y añada todos los hijos al
comienzo/frente de L de N, etiquetándolos con la trayectoria desde el
inicio. Retorne al paso 2.
• Se tiene un árbol en un
estado inicial y se cuenta
con cuatro metas: M1, M2,
M3 y M4.
• Se introduce A como primer
elemento de la lista.
• A no es la meta así que se
saca de la lista.
• Se introducen los hijos de A
al frente de la lista
guardando siempre el orden
de descendencia y
empezando de izquierda a
derecha.
• Se saca AB de la lista ya
que no se llego a ninguna
meta.
• Se introducen los hijos de B
siguiendo siempre el orden
de izquierda a derecha.
• En el frente de la lista
quedan ABD y ABE.
• Al no ser ABD una meta se
saca de la lista.
• Se introducen los hijos de D
al frente de la lista.
• Queda como resultado el
estado mostrado.
• No se encuentra una meta
en H.
• Se introducen los hijos de H
y se puede ver que uno de
los hijos es una meta.
• Se comprueba de que P no
es una meta y se saca
ABDHP de la lista.
• Se comprueba de que M2
es una de las metas y se
registra el recorrido
completo.
• Se Obtiene el recorrido
hacia la meta.
• Existe mas de una meta en
el árbol, el algoritmo
alcanza el éxito cuando
encuentra una meta y no
distingue cual de ellas sea
• En el caso hipotético de que M2 no fuese una meta el siguiente
paso habría sido sacar ABDHM2 de la lista y analizar el nodo I.
• Como I no es una meta el siguiente estado de la lista seria: L7
= {ABDIQ ABDIR ABDE AC}
• Se comprueba que ni Q ni R son metas y se sacan de la lista
hasta llegar al estado de la lista L9 = {ABEJ ABEM1 AC}.
• Se expanden los hijos de J y la lista queda como L10 = {ABEJS
ABEJT ABEM1 AC}.
• Ni S ni J son metas así que se sacan de la lista y finalmente se
llega al estado meta M1 con la lista L12 = {ABEM1 AC}.
• Se hace el recorrido que lleva desde A hasta M1: A  B  E
 M1.

Weitere ähnliche Inhalte

Andere mochten auch (13)

TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA TIPOS DE BUSQUEDA
TIPOS DE BUSQUEDA
 
Búsqueda inteligencia artificial
Búsqueda inteligencia artificialBúsqueda inteligencia artificial
Búsqueda inteligencia artificial
 
Profundidad k
Profundidad kProfundidad k
Profundidad k
 
SOLUCIÓN DE PROBLEMAS MEDIANTE BÚSQUEDA
SOLUCIÓN DE PROBLEMAS MEDIANTE BÚSQUEDASOLUCIÓN DE PROBLEMAS MEDIANTE BÚSQUEDA
SOLUCIÓN DE PROBLEMAS MEDIANTE BÚSQUEDA
 
Ascenso a la Colina
Ascenso a la ColinaAscenso a la Colina
Ascenso a la Colina
 
Búsqueda A*
Búsqueda A*Búsqueda A*
Búsqueda A*
 
Búsqueda en Anchura
Búsqueda en AnchuraBúsqueda en Anchura
Búsqueda en Anchura
 
Búsqueda Primero el Mejor
Búsqueda Primero el MejorBúsqueda Primero el Mejor
Búsqueda Primero el Mejor
 
Solución de problemas mediante busqueda
Solución de problemas mediante busquedaSolución de problemas mediante busqueda
Solución de problemas mediante busqueda
 
Tipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia ArtificialTipos de búsqueda en Inteligencia Artificial
Tipos de búsqueda en Inteligencia Artificial
 
Tipos de búsqueda en inteligencia artificial
Tipos de búsqueda  en inteligencia artificialTipos de búsqueda  en inteligencia artificial
Tipos de búsqueda en inteligencia artificial
 
Tipos de busquedas ia
Tipos de busquedas iaTipos de busquedas ia
Tipos de busquedas ia
 
REDES NEURONALES Algoritmos de Aprendizaje
REDES NEURONALES Algoritmos  de AprendizajeREDES NEURONALES Algoritmos  de Aprendizaje
REDES NEURONALES Algoritmos de Aprendizaje
 

Búsqueda en Profundidad

  • 1.
  • 2. Búsqueda en Profundidad (Depth – First) Algoritmo: 1. Definir una Lista L con los nodos iniciales. En cualquier momento asumir que L es una lista de los nodos que no han sido examinados. 2. Si L está vacía, falla. De otro modo, se toma un nodo N de L. 3. Si N es una meta. Regrese el nodo y el trayecto desde el nodo inicial al nodo N. 4. Si N no es una meta. Elimine N de L y añada todos los hijos al comienzo/frente de L de N, etiquetándolos con la trayectoria desde el inicio. Retorne al paso 2.
  • 3. • Se tiene un árbol en un estado inicial y se cuenta con cuatro metas: M1, M2, M3 y M4.
  • 4. • Se introduce A como primer elemento de la lista.
  • 5. • A no es la meta así que se saca de la lista. • Se introducen los hijos de A al frente de la lista guardando siempre el orden de descendencia y empezando de izquierda a derecha.
  • 6. • Se saca AB de la lista ya que no se llego a ninguna meta. • Se introducen los hijos de B siguiendo siempre el orden de izquierda a derecha. • En el frente de la lista quedan ABD y ABE.
  • 7. • Al no ser ABD una meta se saca de la lista. • Se introducen los hijos de D al frente de la lista. • Queda como resultado el estado mostrado.
  • 8. • No se encuentra una meta en H. • Se introducen los hijos de H y se puede ver que uno de los hijos es una meta.
  • 9. • Se comprueba de que P no es una meta y se saca ABDHP de la lista.
  • 10. • Se comprueba de que M2 es una de las metas y se registra el recorrido completo. • Se Obtiene el recorrido hacia la meta. • Existe mas de una meta en el árbol, el algoritmo alcanza el éxito cuando encuentra una meta y no distingue cual de ellas sea
  • 11. • En el caso hipotético de que M2 no fuese una meta el siguiente paso habría sido sacar ABDHM2 de la lista y analizar el nodo I. • Como I no es una meta el siguiente estado de la lista seria: L7 = {ABDIQ ABDIR ABDE AC} • Se comprueba que ni Q ni R son metas y se sacan de la lista hasta llegar al estado de la lista L9 = {ABEJ ABEM1 AC}. • Se expanden los hijos de J y la lista queda como L10 = {ABEJS ABEJT ABEM1 AC}. • Ni S ni J son metas así que se sacan de la lista y finalmente se llega al estado meta M1 con la lista L12 = {ABEM1 AC}. • Se hace el recorrido que lleva desde A hasta M1: A  B  E  M1.