Caja de herramientas de inteligencia artificial para la academia y la investi...
Tipos de Búsqueda- Cuadro Comparativo
1. Búsquedas sin Información (a Ciegas) Búsquedas Informadas (heurísticas) Búsquedas con Adversarios
Búsqueda en
Amplitud
Búsqueda en
Profundidad
Búsqueda General
en Grafos
Búsqueda “1ro
el Mejor”
Búsqueda en
Haz
Algoritmo A* Exploración de
Grafos Y/O
Método
MINIMAX
Método de Poda
Definición
Encuentra los
caminos más cortos
desde un vértice de
origen dado a todos
los demás vértices,
en términos del
número de aristas en
los caminos.
Permite recorrer todos
los nodos de un grafo o
árbol de manera
ordenada, pero no
uniforme. Se centra en
expandir un único
camino desde la raíz;en
el caso de llegar a un
callejón sin salida se
retrocede hasta el nodo
más cercano
desde donde se pueda
tomar una rama
alternativa para poder
seguir avanzando.
Maneja dos listas
denominadas ABIERTA
y CERRADA. En
ABIERTA figuran los
nodos del grafo que
han sido generados,
pero que todavía no
han sido expandidos.
Por otra parte, en
CERRADA se van
almacenando aquellos
nodos de ABIERTA que
son seleccionados para
su expansión; esta
selección puede ser
informada o no
No es más que un
procedimiento
general de búsqueda
en grafos, donde se
realiza en cada paso
del algoritmo una
ordenación de la
lista ABIERTA
Variación del
método “Primero el
Mejor. Esta
estrategia pretende
acelerar el proceso
de búsqueda
reduciendo en cada
paso del algoritmo el
número de nodos
generados que van a
poder ser
expandidos
posteriormente
Es un algoritmo de
búsqueda que puede
ser empleado para el
cálculo de caminos
mínimos en una red.
Es un algoritmo
heurístico,hace uso
de una función de
evaluación
heurística, mediante
la cual etiqueta los
diferentes nodos de
una red, esto servirá
para determinar la
probabilidad de
dichos nodos de
pertenecer al
camino óptimo.
Los nodos de un
grafo Y/O vienen a
representar
subproblemas a
resolver, originados
a partir de un
problema inicial que
se correspondería
con el nodo superior
del grafo. Se pueden
dar dos tipos de
enlaces en estos
grafos: Enlaces O y
enlaces Y.
Realiza una
exploración
exhaustiva del árbol
de búsqueda; el
primero (MAX)
tiende a elegir el
camino que le
conduzca a un nodo
con el mayor valor
posible de la
función. El otro
jugador (MIN) es lo
contrario, tratará de
contrarrestar las
decisiones de MAX,
eligiendo el peor
valor.
Se encarga de llevar
una anotación para
saber cuándo se
puede realizar un
"poda" o corte en el
árbol de búsqueda.
Alfa-Beta es una
mejora del algoritmo
Minimax que evita
revisar porciones
dominadas del árbol,
que no pueden
proveer información
útil sobre la jugada
siguiente.
Características
* Es necesario llevar
la cuenta de los
nodos visitados .
* El recorrido no es
único: depende del
vértice inicial y del
orden .
* El orden de visita
de unos nodos
puede interpretarse
como un árbol.
*Empezando en un
nodo v:
-Primero se visita v.
-Luego se visitan todos
sus vértices adyacentes.
-A continuación, los
adyacentes a éstos… y
así sucesivamente.
*El algoritmo utiliza una
cola de vértices.
Hay que considerar tres
situaciones diferentes a
la hora de realizar la
expansión de un nodo:
-Que el nodo generado
no este ni en ABIERTA
ni en CERRADA.
-Que el nodo generado
esté en ABIERTA
-Que el nodo generado
ya estuviera en
CERRADA
*Analiza
preferiblemente los
nodos con heurística
más baja.
•Ordenar la cola de
abiertos por
heurística, de menor
a mayor .
•Siempre elige
expandir lo que
estima que está más
“cerca” del objetivo
*Guarda la pista de k
estados (no sólo
uno).
* Comienza con
estados generados
aleatoriamente.
* En cada paso, se
generan sucesores
de los k estados. Si
alguno es un
objetivo, se para el
algoritmo.
* Se seleccionan los
k mejores sucesores
de la lista completa y
repite.
* Es usado para
encontrar la ruta
más cercana para ir
de un lugar a otro .
* Es el más usado
debido a que es
sencillo y rápido.
* Como todo
algoritmo en
amplitud, es un
algoritmo completo:
en caso de existir
una solución,
siempre dará con
ella.
* Enlaces O: indican
las diferentes
alternativas
existentes para la
solución de un
problema o nodo del
grafo.
*Enlaces Y: conectan
un nodo padre con
los subproblemas
que hay que
solucionar para que
ese nodo padre se
considere resuelto.
* Algoritmo de
decisión para
minimizar la pérdida
máxima aplicada en
juegos de
adversarios
* Información
completa (cada
jugador conoce el
estado del otro).
* Es un
procedimiento
recursivo
* Si el valor del nodo
MAX (alfa) es menor
al más alto hasta el
momento, entonces
omitir nodo.
*SI el valor del nodo
MIN (beta) es mayor
al nodo más bajo
hasta el momento,
entonces omitir
nodo.
*Permite búsquedas
dos veces más
profunda
Ventajas
* Encuentra la mejor
solución de un
problema de costo
uniforme antes que
ninguna
Tiene menor
complejidad espacial
que búsqueda en
amplitud.
Sólo utiliza información
acerca de si un estado
es o no objetivo para
guiar su proceso
de búsqueda
No depende en
exceso de la función
en evaluación.
Es el más permisible
de las búsquedas
heurísticas
Soluciones más
cercanas a la raíz
Se puede
contradecir al
aplicarse al mismo
problema, creando
con esto confusión.
Capacidad de
aprender de acuerdo
a la información que
se consigue en el
momento
* En la mayoría de
los casos la maquina
queda invicta
*Aprende con base
en la información
que recolecta
Desventajas
* Alto orden de
complejidad
computacional, si no
se mantienen
limitados los
parámetros del
problema, crecenn
rápidamente los
requerimientos y se
vuelven
inaceptables.
* Se pueden
encontrar soluciones qu
e están mas alejadas de
la raíz que otras.
* Existe el riesgo de
presencia de bucles
infinitos.
Explosión combinatoria
aparece
frecuentemente debido
a la alta complejidad
espacial y temporal de
esta técnica .
Excesiva complejidad
espacial, pues se
deben guardar todos
los nodos abiertos.
En caso de que el
sistema sea
irrevocable, este
método no actua
con eficacia
La función de
evaluación de
complica
Nos puede conducir
a errores u
operaciones
equivocadas; aunque
raras veces aparecen
los peores casos en
la práctica.
* Algoritmo de
complejidad elevada
a la hora de
implementar
* Solo vale para
enfrentarse a un
oponente a la vez
* Es de aprendizaje
lento
*El algoritmo es de
difícil
implementación
•Solo puede
enfrentarse a un
adversario a la vez