Está en la página 1de 9

Agentes Inteligentes 5.

Discreto
- Discreto: Si se puede contar. La cantidad de
¿Qué es un Agente? percepciones es limitada igual que las
acciones. Ej ajedrez.
• La palabra ‘Agente’ viene del latin agere (hacer),
- Continuo: no se puede contar (muchos
por lo que su principal función es actuar ante su
sensores). Ej. Cámara de reconocimiento
entorno.
facial, taxi.
6. Multiplicidad
- Multi-agente: si la cantidad de agentes
Ambientes acutuando es mayor que 1. Ej, Ajedrez -> 2
Agentes, Tráfico -> muchísimos agentes.
- Individual
Ejemplos

• Mientras más restringido el problema ↔


Menos elementos tenga el entorno ↔ Más
sencillo el agente a diseñar.

Clasificación del Ambiente


1. Accesibilidad
- Totalmente: si el agente es capaz de captar
o visualizar todos los datos de su entorno.
(Esto libera al agente de
mantener en memoria estados
internos sobre el exterior). Clasificación de los Agentes
- Parcialmente
2. Determinismo 1. AGENTE REACTIVO SIMPLE: actúan según reglas
- Determinista: Si hago algo sé qué pasará. Si if then según la percepción actual.
hago x acción, tendré y resultado. (Recomendados en ambientes totalmente
- Estratégico observables.
o Accesible → Determinista. CARACTERÍSTICAS:
o No Accesible → Aparentemente no  Tiene acciones predefinidas para cada
Determinista. sensor.
3. Episódico  Tiene una representación interna de su
- Episódico: cuando el agente necesita tomar entorno.
una decisión basada en un instante y esta  No tiene historial de percepciones.
no tiene consecuencias futuras. (No tiene  Tiene un sistema de reglas.
repercusión en el futuro). PROBLEMAS:
- Secuencial: tiene repercusión en el futuro,  Cada situación se registra en el sistema de
incluso a largo plazo. (ej: ajedrez). reglas.
o OBS: El primero es mucho más  No tiene aprendizaje continuo.
sencillo.  No razona.
4. Dinamismo  No planea a largo plazo.
- Dinámico: El entorno cambia mientras toma
una decisión. El agente debe preocupare
por el tiempo que pasa desde la percepción
y la acción.
- Semi-dinámico: si el que cambia es la
medida de calificación de rendimiento.
- Estático: tiene tiempo para tomar una
decisión. (El entorno no cambia).
2. Agente Reactivo basado en modelos: Poseen CARACTERÍSTICAS:
un modelo del ambiente y estados internos.  Tiene una medida de rendimiento.
(Pueden trabajar en ambientes no totalmente  Tiene una medida de utilidad.
observables).  Funciona de la siguiente manera:
CARACTERÍSTICAS:  La medida de rendimiento determina la
 Tiene un estado interno. utilidad
 Sabe "cómo funciona el mundo".  Analiza la utilidad interna y externa.
 Implementa " modelo del mundo".  Cuando tiene muchos objetivos por cumplir,
 Tiene la función " update-state". lautilidad cumple los que conduzcan aun
mayor éxito.

3. Agente basado en metas: Se le añade


información de la meta a la cual se quiere llegar Agente de aprendizaje: se basa en su performance para
para tomar una acción. (Generalmente más realizar mejoras a su comportamiento, y desde ahí
lentos, pero más flexibles). genera acción al ambiente. Tiene un elemento de
CARACTERÍSTICAS: aprendizaje, encargado dehacer mejoras. Se mejora a si
 Descripción del estado actual. mismo.
 Tiene metas. CARACTERÍSTICAS:
 Tiene acciones elegidas en base a sus  Tiene un elemento de rendimiento.
metas.  Tiene una parte crítica, que indica el éxito del
 Se pregunta ¿qué pasa si hago tal o tal agente.
cosa? Y¿qué me hará feliz?  Generador del problema, éste realiza las
 Puede razonar. accionesmás convenientes.
 Es flexible.  Como consecuencia el agente es capaz de
trabajar enentornos desconocidos.

4. Agente basado en utilidad: Estos se utilizan


cuando no solo es necesario llegar a unos
determinados objetivos de forma concreta, sino
que es necesario llegar de una forma eficiente.
Las acciones se toman basadas en la utilidad del
próximo estado. (Las acciones se toman
basadas en la utilidad del próximo evento).
 Basado en metas: Blanco y Negro.
 Basado en Utilidad: Escala de grises.
Solución por búsqueda acciones (no tiene una secuencia pre-
Agentes Basados En Metas determinada).
• El agente basado en Metas u Objetivos Problema de Exploración
determina las acciones que debe realizar para • Ambiente:
alcanzar un estado deseable. – No-observable y No-Determinista.
• Puntos a definir: – Dinámico, Secuencial y Continuo
– Problema: Tomando en consideración • Básicamente el agente no conoce el resultado
la situación actual, se quiere alcanzar de sus acciones, pudiendo entrampar su propia
una meta. solución. Si el agente logra sobrevivir, puede
– Búsqueda: Las acciones que toma un crear un mapa para resolver problemas futuros
agente genera una cadena de estados (bebés).
del mundo, hasta encontrar el estado
meta. Ejemplos
– Solución, Objetivo o Meta: Conjunto de • Problema UniEstado
estados deseados. – Aspiradora en Espacio Pequeño.
• Problema MultiEstado
• Cuando un agente tiene diversas opciones, para – Misma Aspiradora, espacio grande.
decidir lo que hará evalúa diversas secuencias • Problema de Contingencia
de acción que le conducirá a estados deseados, – Mismo problema anterior, pero se va
y luego decide por la mejor. ensuciando constantemente.
• Secuencia de acciones: Solución. • Problema de Exploración
• Hallar la secuencia: Búsqueda. – Un bebé.

• Si el agente no cuenta con la información UniEstado


necesaria para la búsqueda, elije al azar • Problema Bien definido
acciones. – Estado Inicial
– Conjunto de acciones
Tipos de Problemas – Test Objetivo
– Función Costo
Problema UniEstado
Solución: Ruta de estado inicial a un estado final.
• Ambiente:
– Totalmente observable. MultiEstado
– Determinista. • Problema Bien definido
• Esto permite saber que estamos en un solo – Estados Iniciales
estado, y nuestra acción nos lleva a otro estado – Conjunto de operadores
totalmente determinable. – Test Objetivo
Problema MultiEstado – Función Costo
• Ambiente: Solución: Ruta de estados iniciales a un estado final.
– No-totalmente observable. Medir eficiencia de resolución
– No-determinista, pero estático. • ¿Encuentra una solución?
• Esto permite saber qué consecuencias traen • ¿Es una buena solución?
nuestras acciones en lo poco que observamos. – Costo
Generalmente se asume que estamos en un – Utilidad
conjunto posible de estados y vamos a otro. • Complejidad temporal y espacial.
Problema de Contingencia • Costo total = Costo ruta + costo búsqueda.
• Ambiente:
– No-Totalmente observable.
– No-Determinista y dinámico.
• Agente no sabe con exactitud de las
consecuencias de las acciones. El agente debe
actuar contingentemente a medida que realiza
¿Qué estábamos buscando?
 Recordemos que tenemos un problema, en el cual queremos alcanzar una meta a través de una solución.
 El problema es la descripción del ambiente al cual nos enfrentamos.
 La solución es una secuencia de acciones que nos lleva a nuestra meta.
Recordemos con ejemplo
 Veamos el problema típico de la ruta más corta.
 Este problema es muy común (aka WAZE, GMAP).
 Se requiere encontrar la ruta más corta desde un punto A a un punto B.
Problema: Ruta más corta entre Chillán y Concepción.
 Estados: 11 (ciudades)
 Árbol de búsqueda:

Estructura de datos para los arboles de búsqueda:


- Estado: El estado del espacio de estados al que corresponde un nodo.
- Nodo Padre: El nodo en el árbol de búsqueda que ha generado este nodo.
- Operador: El operador que se aplicó para generar el nodo actual.
- Profundidad: El número de pasos a lo largo del camino desde el estado inicial.
- Costo del Camino: El costo de un camino desde el estado inicial al nodo, indicado por los punteros a los padres.
Medidas para evaluar el rendimiento de una estrategia de búsqueda
- Completitud.
- Optimización.
- Complejidad Temporal
- Complejidad Espacial.
Para medir las últimas:
- b: Máximo número de hijos.
- d: Profundidad primera solución.
- m: Longitud máxima de caminos.

Búsquedas No Informadas
Una búsqueda no informada ocurre cuando el agente no tiene información sobre su avance, sólo de la meta.

Búsqueda por Anchura.


o Búsqueda que expande todos los hijos de cada nodo padre que revisa.
 Es posible implementarla con una FIFO (First In First Out).
Medidas para evaluar el rendimiento de una estrategia de búsqueda
- Completitud.
o Si, encuentra la solución si existe.
- Optimización.
o Sólo si costo de paso es 1.
- Complejidad Temporal
o 𝛩(𝑏 𝑑 )
- Complejidad Espacial.
o 𝛩(𝑏 𝑑 )
o Exponencial no es una buena medida.
Búsqueda por Profundidad.

 Búsqueda que elige un camino y lo sigue hasta el final.


 Es posible implementarla con una LIFO (Last In First Out).

Medidas para evaluar el rendimiento de una estrategia de búsqueda


- Completitud.
o No cuando 𝑚 = ∞.
- Optimización.
o Sólo si costo de paso es 1.
- Complejidad Temporal
o 𝛩(𝑏 𝑚 )
- Complejidad Espacial.
o 𝛩(𝑏 ∙ 𝑚)

Búsqueda Costo Uniforme.


 Igual a Anchura, pero se expanden los nodos en
orden de costo.
Medidas para evaluar el rendimiento de una
estrategia de búsqueda
- Completitud.
 Si.
- Optimización.
 Si.
- Complejidad Temporal
 𝛩(𝑏 𝑑 )
- Complejidad Espacial.
 𝛩(𝑏 𝑑 )
Búsqueda en Profundidad Limitada.
 Búsqueda por profundidad limitada por profundidad 𝑙.
 No siempre es posible calcular l

Medidas para evaluar el rendimiento de una estrategia de búsqueda


- Completitud.
o No si 𝑙 es pequeño.
- Optimización.
o No.
- Complejidad Temporal
o 𝛩(𝑏 𝑙 )
- Complejidad Espacial.
o 𝛩(𝑏 ∙ 𝑙)
Búsqueda en Profundidad Iterativa.
- Búsqueda por profundidad limitada por profundidad 𝑙,
con 𝑙 incremental.
Medidas para evaluar el rendimiento de una estrategia de
búsqueda
- Completitud.
o Si.
- Optimización.
o Si.
- Complejidad Temporal
o 𝛩(𝑏 𝑑 )
- Complejidad Espacial.
o 𝛩(𝑏 ∙ 𝑑)
Búsqueda Bidireccional.

 Busca desde el inicio y desde el final.


 No siempre factible. Operador debe ser reversible.

Medidas para evaluar el rendimiento de una estrategia de búsqueda


- Completitud.
o Si.
- Optimización.
o Si, costo 1.
- Complejidad Temporal
o 𝛩(𝑏 𝑑/2 )
- Complejidad Espacial.
o 𝛩(𝑏 𝑑/2 )
Comparativo
Búsqueda Informada Primero el mejor: Aplicado
-Primero el mejor: se basa en la heurística (que tan
cerca esta de la solución), puede retroceder.
-Primero el mejor voraz: Igual al anterior, pero no
puede retroceder, si no pilla solución muere.
-A*: Igual al primero el mejor pero considera costo.
-Hill Climbing: Busca un conjunto solución azaroso,
luego va escalando hasta hallar un conjunto mejor.
-Enfriamiento controlado: Lo mismo que el anterior
pero realiza saltos azarosos iterativos.
Información!
 La búsqueda no informada trata ciegamente de
encontrar una solución.
 Se habla de búsqueda informada cuando aplicamos  Como ven, llegamos al resultado óptimo usando
conocimiento a la búsqueda de manera de reducir heurística, además de no tener que expandir todos
los recursos usados. los nodos.
 Este conocimiento está dado por una función de  Si ℎ es un buen indicador del costo restante, el
bondad h: algoritmo será más rápido. Si ℎ sobreestima al
o Se le denomina Heurística (de Eureka). costo restante, puede que no encontremos la
solución óptima.
Interpretaciones
 Bajo el concepto de búsqueda informada, tenemos Una buena Heurística
2 interpretaciones generales:  La función ℎ debe cumplir con las siguientes
 Fuerte: Se usa heurística para tratar de resolver el condiciones:
problema lo mejor posible, pero no se asegura la  Es admisible:
solución. - Es Optimista (no sobreestima al costo
 Débil: Heurística se conjuga con un método riguroso restante).
para llegar a la mejor solución. Muchas veces sigue  Es Consistente
siendo infactible de resolver en el peor caso. - Desigualdad Triangular.
 Teorema:
Ejemplos de Heurísticas - Consistente→Admisible
 Heurística para shortest path:
- Distancia en línea recta a la meta. Primero el mejor
 Heurística para 8-puzzle: Recordemos m=profundidad total, b=máximo de hijos,
- Número de piezas fuera de su lugar. d=profundidad primera solución.
 Heurística para N-reinas:
- Completo.
- Número de reinas siendo atacadas.
o Si cuando existe cola CERRADOS.
Búsquedas Informadas - Óptimo.
o No.
Primero el mejor. - Complejidad Temporal.
 Este algoritmo es parecido a la búsqueda de costo o 𝛩(𝑏 ∙ 𝑑), pero depende de ℎ.
uniforme, salvo que el primer nodo que se expande - Complejidad Espacial.
no es el de menor costo actual, sino el de mejor o 𝛩(𝑏 ∙ 𝑑), pero depende de ℎ.
heurística.
Primero el mejor voraz
 Para este caso, es bueno usar una lista llamada
CERRADOS, que incluye los nodos analizados.  El algoritmo Primero el Mejor Voraz es simplemente
usar una aproximación Voraz con heurística.
 Analicemos este algoritmo con el mapa provisto en
la clase anterior.  Una vez elegimos un camino o hijo en el árbol de
búsqueda, no podemos volver atrás.
 En este caso, podemos perfectamente llegar a un
death-end, y no encontrar solución.
Rendimiento A*
 Completo.
o Si.
 Óptimo.
o Si, si heurística es admisible. Incluir costo
ayuda a este hecho.
 Complejidad Temporal.
o Depende de ℎ.
 Completo.
o No.  Complejidad Espacial.
o Depende de ℎ, puede ser exponencial.
 Óptimo.
o No. ‘Mejorar’ A*
 Complejidad Temporal.  El problema que nos surge ahora es el uso de
o 𝛩(𝑑). memoria (exponencial nunca es bueno).
 Complejidad Espacial.  Para ello, existen varias alternativas:
o 𝛩(𝑑). o BRPM. (Búsqueda Recursiva Primero el
Mejor).
A* o A* PI. (A* con Profundidad Iterativa).
 En 1968, Nils Nilsson tenía un problema o A* MS. (A* con memoria simplificada).
con Shakey.
 Shakey usaba Dijkstra para navegar por BRPM
obstáculos, pero no funcionaba del todo  Búsqueda Recursiva Primero el Mejor.
bien.  Es igual a Primero el Mejor, pero sólo mantiene un
 Nilsson llamó a su mejora algoritmo A1. tamaño lineal de elementos en memoria.
 Bertram Raphael puso varias mejoras,  Almacena el valor 𝑓 del mejor hijo de cada nodo, de
llegando a A2. manera de expandirlo si llegamos a un punto que
 Finalmente Peter Hart hizo una mejora mínima y tengamos un peor valor 𝑓.
juntos hicieron la demostración de que A* (versión
A* PI
final) era óptimo.
Cómo funciona A*
 Interesantemente hablando, A* es Primero el
mejor, pero tiene la siguiente diferencia:
 No ocupa la función ℎ como heurística, sino que
ocupa la función:
o 𝑓(𝑛) = ℎ(𝑛) + 𝑐(𝑛)
o Esto es: La suma entre la heurística y el
costo hasta el minuto. A*MS

 A* con memoria simplificada.


Grafo con A*  Es A*, pero si la expansión del nodo es poco
prometedora, lo cierra.
 Una vez descartado todas las otras posibilidades,
ahí recién vuelve a buscar la expansión de dicho
nodo.
 El valor 𝑓 de un nodo al expandirse es actualizado
para reflejar los cambios en esta estimación cuando
sus hijos se expanden.
 Un nodo completamente expandido tendrá un valor
𝑓 por lo menos tan alto como la de sus sucesores.
 Además, el nodo almacena el valor 𝑓 del sucesor
mejor olvidado.
 Este valor se restablece si el sucesor resulta ser el
mejor actual.
Búsqueda local o Si el vecino mejora la solución (tiene menor
 Otra forma de trabajar es a través de búsquedas energía), se elige con probabilidad 1.
locales. o Sino, se elige un vecino que pueda
 La idea es partir desde una solución (generalmente empeorar la solución (mayor energía), con
al azar) y luego moverse entre vecinos en busca de probabilidad directamente proporcional a T.
mejores soluciones.  La disminución de T implica que tan rápido es el
 Los algoritmos paran cuando un criterio es algoritmo.
alcanzado:  La disminución de T más usada es la exponencial.
o Solución es suficientemente buena.  Mientras más baja la temperatura, menor la
o Máximo local. probabilidad de elegir estados con mayor energía.
o Tiempo/memoria.  Una vez la energía llega a 0, sólo se aceptarán
estados que disminuyan la energía.
Subida de Colina
 Subida o ascensión de colina (Hill Climbing) trata de
Agentes inteligentes
simplemente ascender hasta encontrar un máximo.
 En cierto sentido, es igual a Voraz, salvo que no Tres leyes de la robótica: Daño, Órdenes y Auto-
generamos una solución, sino que de una solución sustento.
generada, buscamos el máximo local más cercano.
Agente es un paradigma, tal cual POO. La idea de
Ejemplo de Hill Climbing programar a través de agentes es seguir el lineamiento
 Supongamos el problema de la mochila. siguiente:
 Una mochila tiene cierta capacidad y queremos
llenarla de manera de llevar cosas de mayor valor. – Persistencia
– Autonomía
 La solución voraz es elegir la caja de mayor valor
cada vez que nos quede espacio. – Habilidad social
– Reactividad
 La solución por hill climbing es, teniendo una
solución al azar, generar vecinos (cambiar una caja
por otra) y elegir el mejor vecino, incluyendo la El siguiente diagrama muestra cómo actúa un agente:
solución actual y repetir.
Mejoras al Hill Climbing
 Hill Climbing puede entramparse en malas
soluciones si la solución inicial es mala.
 Para ello, existen distintos enfoques:
o Estocástica: Elige un vecino al azar según su
mejora.
o Resetear: Recomenzamos guardando la
mejor solución conocida.
o …
• Agente Humano:
Enfriamiento Simulado – Percepción: Sentidos
 Debe el nombre (Simulated Annealing) a la técnica – Actuación: Muchos
de donde se crean cristales de menor energía al • Agente robótico:
enfriar metales. – Percepción: Sensores
 El metal se calienta y luego se enfría lentamente, de – Actuación: Actuadores
manera que permita la reconfiguración atómica y • Agente Software:
luego permita la formación de cristales de baja – Percepción: Fuentes de datos
energía. – Actuación: Resultados

Enfriamiento Simulado: Pasos


 Comenzamos con una temperatura que disminuye
con cada paso.
 En cada paso, se eligen los vecinos de la siguiente
manera:

También podría gustarte