/ OCT 2018
Búsqueda en la Inteligencia Artificial (parte I)
por Javier Fernández
| Búsqueda en la Inteligencia Artificial
Índice
● Repaso
● Agentes reactivos simples
● Agentes que planifican
● Formulación de problemas de búsqueda
○ Componentes
○ Representación
● Algoritmos de búsqueda
○ Clasificación
○ Propiedades
● Algoritmos de búsqueda no informada
● Complicaciones en la búsqueda
REPASO
| Búsqueda en la Inteligencia Artificial
Repaso
● Un agente inteligente es una entidad
capaz de percibir su entorno, procesar
esas percepciones y actuar en su
entorno de forma racional
● Clasificación por tipo de agente y tipo
de entorno
AGENTES REACTIVOS
SIMPLES
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Eligen la acción en base a la percepción actual
● Ignoran el resto de percepciones históricas
● No considera las futuras consecuencias de las
acciones
● Considera cómo es el mundo en ese momento
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Ir hacia el norte y luego al oeste
| Búsqueda en la Inteligencia Artificial
Agentes reactivos simples
● Demo
AGENTES QUE
PLANIFICAN
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
● Tipo de agente basado en objetivos
● Eligen la acción en base a la percepción actual
y las consecuencias de las acciones
● Se necesita un modelo del entorno donde
probar las acciones y ver sus consecuencias
● Considera cómo el mundo sería
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
| Búsqueda en la Inteligencia Artificial
Agentes que planifican
COMPONENTES DE
PROBLEMAS DE
BÚSQUEDA
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Espacio de estados
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Función sucesora: dado un estado es el conjunto de pares
(acción,estado) posibles
Ir a Vigo
Ir a Valladolid
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Estado inicial
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Estado final
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Función de costes: dado un estado y una acción se obtiene
el coste asociado
Ir a Vigo →
171
Ir a Valladolid → 455
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Solución: secuencia de acciones que transforman el estado
inicial en un estado final
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Abstracción del estado
Estado del mundo Estado de búsqueda
| Búsqueda en la Inteligencia Artificial
Componentes de problemas de búsqueda
● Abstracción de las acciones
Acciones del mundo Acciones de búsqueda
EJERCICIO
| Búsqueda en la Inteligencia Artificial
Ejercicio
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuáles son los estados de los siguientes problemas?
○ Problema: salir del laberinto
○ Problema: comer todos los quesos del laberinto
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuál es el estado inicial de los siguientes problemas?
○ Problema: salir del laberinto
○ Problema: comer todos los quesos del laberinto
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuál es el estado final de los siguientes problemas?
○ Problema: salir del laberinto
○ Problema: comer todos los quesos del laberinto
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuáles son las posibles acciones de los siguientes problemas?
○ Problema: salir del laberinto
○ Problema: comer todos los quesos del laberinto
Ir al norte
Ir al este
Ir al sur
Ir al oeste
Ir al norte
Ir al este
Ir al sur
Ir al oeste
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuáles son las funciones sucesoras de los siguientes problemas?
○ Problema: salir del laberinto
Ir al norte
Ir al sur
Ir al este
Ir al oeste
Se actualiza la posición del ratón
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuáles son las funciones sucesoras de los siguientes problemas?
○ Problema: comer todos los quesos del laberinto
Se actualiza la posición del ratón y la existencia del queso
Ir al norte
Ir al sur
Ir al este
Ir al oeste
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuántos estados del mundo hay?
○ Mundo:
■ 50 posiciones del ratón
■ 5 quesos
○ Problema: salir del laberinto
■ Solución: 50*2⁵ = 1600
○ Problema: comer todos los quesos del laberinto
■ Solución: 50*2⁵ = 1600
| Búsqueda en la Inteligencia Artificial
Ejercicio
● ¿Cuántos estados de búsqueda hay?
○ Mundo:
■ 50 posiciones del ratón
■ 5 quesos
○ Problema: salir del laberinto
■ Solución: 50
○ Problema: comer todos los quesos del laberinto
■ Solución: 50*2⁵ = 1600
REPRESENTACIÓN DE
LOS PROBLEMAS DE
BÚSQUEDA
| Búsqueda en la Inteligencia Artificial
Representación de problemas de búsqueda
● Grafo del espacio de búsqueda
○ Nodos: estados de búsqueda. Cada
estado sólo ocurre una vez en el grafo
○ Arcos: acciones de búsqueda
○ Objetivo: alcanzar un nodo meta
○ Problema: grafo exponencialmente
grande (mucho tiempo y memoria)
| Búsqueda en la Inteligencia Artificial
Representación de problemas de búsqueda
● Grafo del espacio de búsqueda
...
...
...
| Búsqueda en la Inteligencia Artificial
Representación de problemas de búsqueda
● Árbol de búsqueda
○ Raíz: estado inicial
○ Nodo: estados de búsqueda y representan
un plan
○ Objetivo: alcanzar un nodo meta
○ Problema: mismo que el grafo
○ Solución: algoritmos de búsqueda que
encuentran una solución ignorando gran
parte del árbol
| Búsqueda en la Inteligencia Artificial
Representación de problemas de búsqueda
● Árbol de búsqueda
...
CLASIFICACIÓN DE LOS
ALGORITMOS DE
BÚSQUEDA
| Búsqueda en la Inteligencia Artificial
Clasificación de algoritmos de búsqueda
● Algoritmos de búsqueda no informada:
○ Sin conocimiento sobre cómo llegar al
objetivo
○ Son generales: aplicables a cualquier
circunstancia
○ Son exhaustivos: es posible recorrer
todos los nodos para hallar la solución
| Búsqueda en la Inteligencia Artificial
Clasificación de algoritmos de búsqueda
● Algoritmos de búsqueda informada:
○ Utiliza conocimiento específico del
problema para alcanzar el objetivo
■ Ejemplo: distancia euclídea entre
2 ciudades
○ Más eficientes
○ Menos generales
PROPIEDADES DE LOS
ALGORITMOS DE
BÚSQUEDA
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
● Completitud: ¿se garantiza encontrar una solución cuando exista?
● Optimización: ¿se encuentra la solución óptima (menor coste)?
● Complejidad en tiempo: ¿cuántos nodos se necesitan explorar para
encontrar una solución?
● Complejidad en espacio: ¿cuál es el número máximo de nodos
almacenados en memoria para ser explorados?
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
b: factor de ramificación (acciones)
...
1 nodo
b nodos
b
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
b: factor de ramificación (acciones)
...
1 nodo
b nodos
b² nodos
b
| Búsqueda en la Inteligencia Artificial
Propiedades de algoritmos de búsqueda
b: factor de ramificación (acciones)
m: profundidad máxima m
...
1 nodo
b nodos
b² nodos
bm
nodos
b
ALGORITMOS DE
BÚSQUEDA NO
INFORMADA
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Expandir nodo más profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en profundidad
● Propiedades:
○ No es completo
○ No es óptimo
○ Complejidad en tiempo: O(bm
)
○ Complejidad en espacio: O(bm)
● Demo m
1 nodo
b nodos
b² nodos
bm
nodos
b
...
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Expandir primero el nodo menos profundo
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda en anchura
● Propiedades:
○ Es completo
○ Es óptimo (si costes iguales)
○ Complejidad en tiempo: O(bd+1
)
○ Complejidad en espacio: O(bd+1
)
● Demo
d
1 nodo
b nodos
b² nodos
bm
nodos
b
...
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Búsqueda en profundidad con un límite de profundidad l
A
B
F
C
E
K
D
G H I
N OJ ML
l=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad limitada
● Propiedades:
○ No es completo
○ No es óptimo
○ Complejidad en tiempo: O(bl
)
○ Complejidad en espacio: O(bl)
1 nodo
b nodos
b² nodos
b
...
l
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=0
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=1
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=1
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=1
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Búsqueda en profundidad en el que se va incrementando el límite de
profundidad d
A
B
F
C
E
K
D
G H I
N OJ ML
d=2
| Búsqueda en la Inteligencia Artificial
Búsqueda con profundidad iterativa
● Propiedades:
○ Es completo
○ Es óptimo (si costes iguales)
○ Complejidad en tiempo: O(bd
)
○ Complejidad en espacio: O(bd)
1 nodo
b nodos
b² nodos
b
...
d
| Búsqueda en la Inteligencia Artificial
Búsqueda bidireccional
● Búsqueda simultáneamente desde el estado inicial y final
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda bidireccional
● Búsqueda simultáneamente desde el estado inicial y final
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda bidireccional
● Búsqueda simultáneamente desde el estado inicial y final
A
B
F
C
E
K
D
G H I
N OJ ML
| Búsqueda en la Inteligencia Artificial
Búsqueda bidireccional
● Propiedades:
○ Es completo si búsquedas en anchura
○ Es óptimo si búsquedas en anchura
y costes iguales
○ Complejidad en tiempo: O(bd/2
)
○ Complejidad en espacio: O(bd/2
)
● Demo
1 nodo
b nodos
b² nodos
bm
nodos
b
...d
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
23
4
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
23
4
8 3 4
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
23
4
8 3 4
8 7
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
23
4
8 3 4
8 7
8
5
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Expandir primero el nodo con menor coste
A
B
F
C
E
K
D
G H I
N OJ ML
4
2
3
61
2
4
3 31
1
5 4
2
23
4
8 3 4
8 7
8
5
8 7
| Búsqueda en la Inteligencia Artificial
Búsqueda con coste uniforme
● Propiedades:
○ Es completo
○ Es óptimo
○ Complejidad en tiempo: O(b[C*/ɛ]
)
○ Complejidad en espacio: O(b[C*/ɛ]
)
C*
es el coste de la solución óptima
ɛ es lo que cuesta al menos cada acción
● Demo
1 nodo
b nodos
b² nodos
bm
nodos
b
...
| Búsqueda en la Inteligencia Artificial
Comparativa de algoritmos de búsqueda no informada
En
profundidad
En
anchura
Con profundidad
limitada
Con profundidad
iterativa
Bidireccional Con coste
uniforme
Completo No Sí No Sí Sí* Sí
Óptimo No Sí* No Sí* Sí* Sí
Complejidad
en tiempo
O(bm
) O(bd+1
) O(bl
) O(bd
) O(bd/2
) O(b[C*/ɛ
)
Complejidad
en espacio
O(bm) O(bd+1
) O(bl) O(bd) O(bd/2
) O(b[C*/ɛ
)
COMPLICACIONES EN
LA BÚSQUEDA
| Búsqueda en la Inteligencia Artificial
Complicaciones en la búsqueda
● Estados repetidos:
○ Pérdida de tiempo expandiendo estados
ya expandidos
○ Árboles de búsqueda infinitos
○ Un problema resoluble pasa a ser
irresoluble
○ Soluciones:
■ Poda del árbol
■ Lista con nodos expandidos (lista
cerrada)
S
A
B
G
S
A B
B G GA
GA B G
... ...
| Búsqueda en la Inteligencia Artificial
Complicaciones en la búsqueda
● Entorno no ideal (información parcial)
○ Problemas sin sensores
■ El agente no sabe el estado inicial
■ Solución: se busca en el espacio
de estados de creencia (conjunto
de estados de búsqueda)
| Búsqueda en la Inteligencia Artificial
Complicaciones en la búsqueda
○ Problemas sin sensores
| Búsqueda en la Inteligencia Artificial
Complicaciones en la búsqueda
● Entorno no ideal (información parcial)
○ Problemas de contingencia
■ Acciones inciertas
○ Problemas de exploración
■ Se desconocen los estados y acciones del entorno
■ El agente debe actuar para descubrirlos
| Descubriendo la Inteligencia Artificial
Preguntas
Búsqueda IA

Búsqueda IA

  • 1.
    / OCT 2018 Búsquedaen la Inteligencia Artificial (parte I) por Javier Fernández
  • 2.
    | Búsqueda enla Inteligencia Artificial Índice ● Repaso ● Agentes reactivos simples ● Agentes que planifican ● Formulación de problemas de búsqueda ○ Componentes ○ Representación ● Algoritmos de búsqueda ○ Clasificación ○ Propiedades ● Algoritmos de búsqueda no informada ● Complicaciones en la búsqueda
  • 3.
  • 4.
    | Búsqueda enla Inteligencia Artificial Repaso ● Un agente inteligente es una entidad capaz de percibir su entorno, procesar esas percepciones y actuar en su entorno de forma racional ● Clasificación por tipo de agente y tipo de entorno
  • 5.
  • 6.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Eligen la acción en base a la percepción actual ● Ignoran el resto de percepciones históricas ● No considera las futuras consecuencias de las acciones ● Considera cómo es el mundo en ese momento
  • 7.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 8.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 9.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 10.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 11.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 12.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 13.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 14.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 15.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 16.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 17.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Ir hacia el norte y luego al oeste
  • 18.
    | Búsqueda enla Inteligencia Artificial Agentes reactivos simples ● Demo
  • 19.
  • 20.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican ● Tipo de agente basado en objetivos ● Eligen la acción en base a la percepción actual y las consecuencias de las acciones ● Se necesita un modelo del entorno donde probar las acciones y ver sus consecuencias ● Considera cómo el mundo sería
  • 21.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican
  • 22.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican
  • 23.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican
  • 24.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican
  • 25.
    | Búsqueda enla Inteligencia Artificial Agentes que planifican
  • 26.
  • 27.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Espacio de estados
  • 28.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Función sucesora: dado un estado es el conjunto de pares (acción,estado) posibles Ir a Vigo Ir a Valladolid
  • 29.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Estado inicial
  • 30.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Estado final
  • 31.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Función de costes: dado un estado y una acción se obtiene el coste asociado Ir a Vigo → 171 Ir a Valladolid → 455
  • 32.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Solución: secuencia de acciones que transforman el estado inicial en un estado final
  • 33.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Abstracción del estado Estado del mundo Estado de búsqueda
  • 34.
    | Búsqueda enla Inteligencia Artificial Componentes de problemas de búsqueda ● Abstracción de las acciones Acciones del mundo Acciones de búsqueda
  • 35.
  • 36.
    | Búsqueda enla Inteligencia Artificial Ejercicio
  • 37.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuáles son los estados de los siguientes problemas? ○ Problema: salir del laberinto ○ Problema: comer todos los quesos del laberinto
  • 38.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuál es el estado inicial de los siguientes problemas? ○ Problema: salir del laberinto ○ Problema: comer todos los quesos del laberinto
  • 39.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuál es el estado final de los siguientes problemas? ○ Problema: salir del laberinto ○ Problema: comer todos los quesos del laberinto
  • 40.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuáles son las posibles acciones de los siguientes problemas? ○ Problema: salir del laberinto ○ Problema: comer todos los quesos del laberinto Ir al norte Ir al este Ir al sur Ir al oeste Ir al norte Ir al este Ir al sur Ir al oeste
  • 41.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuáles son las funciones sucesoras de los siguientes problemas? ○ Problema: salir del laberinto Ir al norte Ir al sur Ir al este Ir al oeste Se actualiza la posición del ratón
  • 42.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuáles son las funciones sucesoras de los siguientes problemas? ○ Problema: comer todos los quesos del laberinto Se actualiza la posición del ratón y la existencia del queso Ir al norte Ir al sur Ir al este Ir al oeste
  • 43.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuántos estados del mundo hay? ○ Mundo: ■ 50 posiciones del ratón ■ 5 quesos ○ Problema: salir del laberinto ■ Solución: 50*2⁵ = 1600 ○ Problema: comer todos los quesos del laberinto ■ Solución: 50*2⁵ = 1600
  • 44.
    | Búsqueda enla Inteligencia Artificial Ejercicio ● ¿Cuántos estados de búsqueda hay? ○ Mundo: ■ 50 posiciones del ratón ■ 5 quesos ○ Problema: salir del laberinto ■ Solución: 50 ○ Problema: comer todos los quesos del laberinto ■ Solución: 50*2⁵ = 1600
  • 45.
  • 46.
    | Búsqueda enla Inteligencia Artificial Representación de problemas de búsqueda ● Grafo del espacio de búsqueda ○ Nodos: estados de búsqueda. Cada estado sólo ocurre una vez en el grafo ○ Arcos: acciones de búsqueda ○ Objetivo: alcanzar un nodo meta ○ Problema: grafo exponencialmente grande (mucho tiempo y memoria)
  • 47.
    | Búsqueda enla Inteligencia Artificial Representación de problemas de búsqueda ● Grafo del espacio de búsqueda ... ... ...
  • 48.
    | Búsqueda enla Inteligencia Artificial Representación de problemas de búsqueda ● Árbol de búsqueda ○ Raíz: estado inicial ○ Nodo: estados de búsqueda y representan un plan ○ Objetivo: alcanzar un nodo meta ○ Problema: mismo que el grafo ○ Solución: algoritmos de búsqueda que encuentran una solución ignorando gran parte del árbol
  • 49.
    | Búsqueda enla Inteligencia Artificial Representación de problemas de búsqueda ● Árbol de búsqueda ...
  • 50.
  • 51.
    | Búsqueda enla Inteligencia Artificial Clasificación de algoritmos de búsqueda ● Algoritmos de búsqueda no informada: ○ Sin conocimiento sobre cómo llegar al objetivo ○ Son generales: aplicables a cualquier circunstancia ○ Son exhaustivos: es posible recorrer todos los nodos para hallar la solución
  • 52.
    | Búsqueda enla Inteligencia Artificial Clasificación de algoritmos de búsqueda ● Algoritmos de búsqueda informada: ○ Utiliza conocimiento específico del problema para alcanzar el objetivo ■ Ejemplo: distancia euclídea entre 2 ciudades ○ Más eficientes ○ Menos generales
  • 53.
  • 54.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda ● Completitud: ¿se garantiza encontrar una solución cuando exista? ● Optimización: ¿se encuentra la solución óptima (menor coste)? ● Complejidad en tiempo: ¿cuántos nodos se necesitan explorar para encontrar una solución? ● Complejidad en espacio: ¿cuál es el número máximo de nodos almacenados en memoria para ser explorados?
  • 55.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda
  • 56.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda
  • 57.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda b: factor de ramificación (acciones) ... 1 nodo b nodos b
  • 58.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda b: factor de ramificación (acciones) ... 1 nodo b nodos b² nodos b
  • 59.
    | Búsqueda enla Inteligencia Artificial Propiedades de algoritmos de búsqueda b: factor de ramificación (acciones) m: profundidad máxima m ... 1 nodo b nodos b² nodos bm nodos b
  • 60.
  • 61.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 62.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 63.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 64.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 65.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 66.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 67.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 68.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Expandir nodo más profundo A B F C E K D G H I N OJ ML
  • 69.
    | Búsqueda enla Inteligencia Artificial Búsqueda en profundidad ● Propiedades: ○ No es completo ○ No es óptimo ○ Complejidad en tiempo: O(bm ) ○ Complejidad en espacio: O(bm) ● Demo m 1 nodo b nodos b² nodos bm nodos b ...
  • 70.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 71.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 72.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 73.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 74.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 75.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 76.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Expandir primero el nodo menos profundo A B F C E K D G H I N OJ ML
  • 77.
    | Búsqueda enla Inteligencia Artificial Búsqueda en anchura ● Propiedades: ○ Es completo ○ Es óptimo (si costes iguales) ○ Complejidad en tiempo: O(bd+1 ) ○ Complejidad en espacio: O(bd+1 ) ● Demo d 1 nodo b nodos b² nodos bm nodos b ...
  • 78.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 79.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 80.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 81.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 82.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 83.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 84.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Búsqueda en profundidad con un límite de profundidad l A B F C E K D G H I N OJ ML l=2
  • 85.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad limitada ● Propiedades: ○ No es completo ○ No es óptimo ○ Complejidad en tiempo: O(bl ) ○ Complejidad en espacio: O(bl) 1 nodo b nodos b² nodos b ... l
  • 86.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=0
  • 87.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=1
  • 88.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=1
  • 89.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=1
  • 90.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=2
  • 91.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=2
  • 92.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Búsqueda en profundidad en el que se va incrementando el límite de profundidad d A B F C E K D G H I N OJ ML d=2
  • 93.
    | Búsqueda enla Inteligencia Artificial Búsqueda con profundidad iterativa ● Propiedades: ○ Es completo ○ Es óptimo (si costes iguales) ○ Complejidad en tiempo: O(bd ) ○ Complejidad en espacio: O(bd) 1 nodo b nodos b² nodos b ... d
  • 94.
    | Búsqueda enla Inteligencia Artificial Búsqueda bidireccional ● Búsqueda simultáneamente desde el estado inicial y final A B F C E K D G H I N OJ ML
  • 95.
    | Búsqueda enla Inteligencia Artificial Búsqueda bidireccional ● Búsqueda simultáneamente desde el estado inicial y final A B F C E K D G H I N OJ ML
  • 96.
    | Búsqueda enla Inteligencia Artificial Búsqueda bidireccional ● Búsqueda simultáneamente desde el estado inicial y final A B F C E K D G H I N OJ ML
  • 97.
    | Búsqueda enla Inteligencia Artificial Búsqueda bidireccional ● Propiedades: ○ Es completo si búsquedas en anchura ○ Es óptimo si búsquedas en anchura y costes iguales ○ Complejidad en tiempo: O(bd/2 ) ○ Complejidad en espacio: O(bd/2 ) ● Demo 1 nodo b nodos b² nodos bm nodos b ...d
  • 98.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2
  • 99.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2 23 4
  • 100.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2 23 4 8 3 4
  • 101.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2 23 4 8 3 4 8 7
  • 102.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2 23 4 8 3 4 8 7 8 5
  • 103.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Expandir primero el nodo con menor coste A B F C E K D G H I N OJ ML 4 2 3 61 2 4 3 31 1 5 4 2 23 4 8 3 4 8 7 8 5 8 7
  • 104.
    | Búsqueda enla Inteligencia Artificial Búsqueda con coste uniforme ● Propiedades: ○ Es completo ○ Es óptimo ○ Complejidad en tiempo: O(b[C*/ɛ] ) ○ Complejidad en espacio: O(b[C*/ɛ] ) C* es el coste de la solución óptima ɛ es lo que cuesta al menos cada acción ● Demo 1 nodo b nodos b² nodos bm nodos b ...
  • 105.
    | Búsqueda enla Inteligencia Artificial Comparativa de algoritmos de búsqueda no informada En profundidad En anchura Con profundidad limitada Con profundidad iterativa Bidireccional Con coste uniforme Completo No Sí No Sí Sí* Sí Óptimo No Sí* No Sí* Sí* Sí Complejidad en tiempo O(bm ) O(bd+1 ) O(bl ) O(bd ) O(bd/2 ) O(b[C*/ɛ ) Complejidad en espacio O(bm) O(bd+1 ) O(bl) O(bd) O(bd/2 ) O(b[C*/ɛ )
  • 106.
  • 107.
    | Búsqueda enla Inteligencia Artificial Complicaciones en la búsqueda ● Estados repetidos: ○ Pérdida de tiempo expandiendo estados ya expandidos ○ Árboles de búsqueda infinitos ○ Un problema resoluble pasa a ser irresoluble ○ Soluciones: ■ Poda del árbol ■ Lista con nodos expandidos (lista cerrada) S A B G S A B B G GA GA B G ... ...
  • 108.
    | Búsqueda enla Inteligencia Artificial Complicaciones en la búsqueda ● Entorno no ideal (información parcial) ○ Problemas sin sensores ■ El agente no sabe el estado inicial ■ Solución: se busca en el espacio de estados de creencia (conjunto de estados de búsqueda)
  • 109.
    | Búsqueda enla Inteligencia Artificial Complicaciones en la búsqueda ○ Problemas sin sensores
  • 110.
    | Búsqueda enla Inteligencia Artificial Complicaciones en la búsqueda ● Entorno no ideal (información parcial) ○ Problemas de contingencia ■ Acciones inciertas ○ Problemas de exploración ■ Se desconocen los estados y acciones del entorno ■ El agente debe actuar para descubrirlos
  • 111.
    | Descubriendo laInteligencia Artificial Preguntas