ia agentes

54
Introducción a la IA Introducción a la IA nteligencia Artificial Capítulo I Agentes inteligentes

Upload: edwin-raul-capaquira-chura

Post on 10-Feb-2016

219 views

Category:

Documents


0 download

DESCRIPTION

agentes inteligentes

TRANSCRIPT

Page 1: IA Agentes

Introducción a la IAIntroducción a la IA

Inte

ligen

cia

Art

ifici

al

Cap

ítulo

I

Agentes inteligentes

Page 2: IA Agentes

2

Page 3: IA Agentes

3

Page 4: IA Agentes

4

Un agente inteligente

Comprensión/intencionalidad

Comportamiento

VéOyeTocaGustaHuele

ENTRADAS Procesos INTERNOS

SALIDAS

Sensor del ambiente

Razona

Conoce

Page 5: IA Agentes

5

Tipificando a un agente inteligente

AMBIENTEAGENTE

?

EFECTORES

SENSORES

PERCEPCIONES

ACCIONES

Page 6: IA Agentes

6

Qué es un agente inteligente Un agente inteligente es cualquier cosa que pueda

percibir un mundo perceptual en que esté anidado (“ambiente”) mediante SENSORES y

actuar sobre ese mundo mediante EFECTORES (o actuadores) sinónimo de ambiente es “espacio de problema” sinónimo de agente inteligente es “operador que transforma un input en

output dentro del espacio de problema”

META de la IA Diseñar un agente inteligente/racional que opere o actúe adecuadamente en sus ambientes. Discusión sobre “adecuadamente”

Fijar alguna medida de “adecuadamente” (buen éxito) Tener en cuenta el PRR Principio de Racionalidad Restringida de

Herbert Simon

Page 7: IA Agentes

7

PRR (Herbert Simon) El Principio de la Racionalidad Restringida alega que la

racionalidad óptima ideal NO es el buen éxito perfecto. Ningun ser humano apela a una mayor racionalidad que

justo la necesaria para sus fines prácticos. Las limitaciones de un agente

con los SENSORES que tiene con los EFECTORES que tiene y con la POTENCIA COMPUTACIONAL

– disponible y – (en algunos casos) óptima económica

conducen a que la racionalidad ideal sea imposible e impráctica.

Page 8: IA Agentes

8

Algo más (Herbert Simon) La razón es solamente un

instrumento porque no nos puede predecir hacia donde ir - no nos

propone metas a lo sumo nos ayuda a decidirnos cómo llegar a

una meta (a través del análisis de medios y fines)

Page 9: IA Agentes

Agentes Racionales

Racionalidad e Inteligencia

Page 10: IA Agentes

10

Qué es un agente racional El que actúa maximizando el valor

esperado de la medida de buen éxito (función de utilidad) en el logro de su meta

Racional no es omnisciente Racional no es clarividente Racional ideal en conflicto con el PRR

Page 11: IA Agentes

11

Racionalidad Satisfacción de restricciones Depende de

LA SECUENCIA DE PERCEPCIONES - TODO LO QUE EL AGENTE HA PERCIBIDO HASTA AHORA (GESTIÓN DE LA MEMORIA).

No se puede criticar a un agente por no saber lo que nunca supo LA MEDIDA DE BUEN ÉXITO ELEGIDA

Función de utilidad CUÁNTO CONOCE EL AGENTE DEL AMBIENTE EN QUE

OPERA Lista de hipótesis de cómo es el mundo

LAS ACCIONES QUE EL AGENTE ESTÉ EN CONDICIONES DE REALIZAR

Page 12: IA Agentes

12

Grado de Racionalidad - Nivel de Conocimiento - Newell

Grado de racionalidad grado con el cual el agente racional maximiza su medida de buen éxito en lograr una meta, sujeta a su disponibilidad de sensores, efectores, potencia de cómputo y conocimiento

internalizado.

Allen Newell define el nivel de conocimiento por el número de reglas usadas respecto de su disponibilidad total de reglas. Ningun robot es responsable por no usar reglas que no conoce.

…a un termostato le han dado dos reglas y las usa…

Page 13: IA Agentes

13

AGENTE INTELIGENTE IDEAL El agente inteligente ideal es el que,

para cualquier secuencia arbitraria de percepciones, logre con su ACCION maximizar la medida de su buen éxito.

Para ello usa conocimiento interiorizado secuencia de percepciones

Page 14: IA Agentes

14

Agentes autónomos

Son agentes autónomos los que no se guían por reglamento externo alguno.

Page 15: IA Agentes

Agentes Racionales y problemas

Complejidad y racionalidad

Page 16: IA Agentes

16

P, NP, NP completo, NP duro P. Son problemas que se pueden resolver en tiempo polinómico (lo

cual significa rápido). Son muy frecuentes. Son P los que tienen tiempos de ejecución O(n) y O(log n)

NP. Un problema es NP si se puede verificar rapidamente (esto es, en tiempo polinómico) que la solución hallada es correcta (aunque haya sido complicadísimo hallar dicha solución). NP se refiere a “tiempo polinomial no-determinístico” donde la voz “no-determinístico” significa en la práctica “obtenida por adivinación”. Si alguien adivina alguna solución, es rápido verificar si es correcta como solución.

No se ha podido probar que un arbitrario problema NP se pueda reducir a P, lo cual lleva al tema de la clase de problemas NP-duros.

La subclase “de problemas NP-completos” se interpretan como que la voz “completo” indica el ejemplo más difícil de resolver dentro del tipo de problema.

Page 17: IA Agentes

17

Teoría de la completitud NPProblemas NP-duros. Si fuesen polinómicos se verificaría P =

NP. Algunos problemas, como quizás el clásico del viajante de comercio, es probable que sean imposibles de resolver en cualquier computadora arbitraria (se trata de un problema NP-duro, hasta donde se conoce). Se lo debe resolver, p. ej., de forma aproximada y no exacta, o usando heurísticas.

De ello se deduce que ya sea la inteligencia natural o la inteligencia artificial

NO son ilimitadas en sus capacidades. De ello se vuelve a deducir que la racionalidad práctica resulta

estar restringida. Nadie debe esmerarse por aplicar la racionalidad más allá de

sus necesidades prácticas. PRR Caso límite el termóstato con sus dos reglas - Alto nivel de conocimiento.

Page 18: IA Agentes

Agentes Racionales

Percepciones y acciones

Page 19: IA Agentes

19

Mapeo idealpercepciones acciones

El diseño o mapeo ideal especifica qué acciones debe encarar el agente ideal en respuesta a cualquier secuencia arbitraria de percepciones

Se concreta con una tabla real o virtual Ejercicio de la racionalidad

Sandwich Percepciones Razonamiento Acciones

Page 20: IA Agentes

20

Cometido de la IAEl cometido de la I A es el diseño de un Programade agente : una f unción que permita implantar elmapeo del agente para pasar de percepcionesa acciones. Este programa se ejecutará enalgún tipo de dispositivo de cómputo, al que sedenominará arquitectura (puede ser unacomputadora sencilla o hardware especial). Enalguno ámbitos se utilizan agentes de sof tware(o robots de sof tware o sof tbots).

Agente = arquitectura + programa

Page 21: IA Agentes

21

Funciones y programas de agentes El agente queda completamente especificado con la función del

agente que mapea lo que describe la ecuación– a = f (P,M,A)

sobre todo el componente principal a = f (P) en principio uno puede suministrar cualquier secuencia perceptual posible para ver

qué sucede - una tabla que resuma esa información podría ser inmensa

El programa de agente trata de implementar la función de agente en forma concisa (ejemplo: cálculo de la raiz cuadrada en una calculadora de bolsillo)

Un programa de agente toma una percepción singular como input y mantiene el estado interno

Page 22: IA Agentes

22

PaMAEstrategia de “divide y vencerás”

a = f(datos) a = f(P,M,A)

Ejemplo - Piloto automático (taxista reemplazado por un agente inteligente ) Percepciones ?? acciones ?? Metas ?? Ambiente ??

Page 23: IA Agentes

23

PaMA Para identificar a un agente debemos analizar su PaMA:

Ejemplos de descripciones PaMA de un dado agente típicoP-percepcióna-acciónM-metaA-ambiente

Page 24: IA Agentes

24

Análisis PaMA En cualquier algoritmo aplicado a la IA debemos reconocer cómo cada parte

contribuye a dicha meta. Analicemos las máquinas (limitadas) de la IA como agentes inteligentes. La meta planteada por la medida del buen éxito de ese agente suele ser

combinación de varias submetas. El análisis PaMA es un ejemplo de

la estrategia general de la ingeniería de “dividir para conquistar” P+a+M+A cada sumando es más fácil que la suma ponderada.

la aplicación del ANÁLISIS DE REQUISITOS , que resuelve un problema analizando qué es obtenible como input y qué es deseado como output.

Otro Ejemplo: al analizar un sistema de imágenes por satelite, percepciones: pixels de intensidad y longitud de onda variables acciones: mover la cámara, cambiar el filtro, imprimir información metas: identificación cercana a la realidad de todos los objetos de la

imagen ambiente: imágenes distorsionadas provenientes de una cámara de

satelite.

Page 25: IA Agentes

25

Taxista Robotpiloto automático Percepciones

– video– acelerómetro, instrumental del tablero– sensores del motor – teclado

acciones – gestión del volante– acelerar y frenar– bocina– hablar/dibujar

Metas– seguridad, llegar a destino, maximizar ganancias, obedecer las leyes,

satisfacción del cliente

Ambiente– calles urbanas, avenidas, tráfico, peatones, clima, tipo de cliente

Page 26: IA Agentes

26

Estructura de un agente inteligente ESQUEMA GENÉRICO DE UN AGENTE:

Desde un punto de vista estricto, no es necesario que el agente guarde en su memoria las percepciones entrantes dependería del dominio. Un dominio es un fragmento del mundo acerca del que deseamos adquirir conocimiento.

El esquema del agente no incorpora la medida de buen éxito en su meta se entiende que ella está siendo aplicada externamente.

function Skeleton-Agent(percept) returns action static: memory, the agent's memory of the world memory Update-Memory(memory, percept) action Choose-Best-Action(memory) memory Update-Memory(memory, action) return action

Page 27: IA Agentes

Estructura de los Agentes Racionales

Tipos de Agentes

Page 28: IA Agentes

28

Tipos de Agentes

Agentes sin información actualizada de su mundo

Tabla encontrar la acción siguiente usar una tabla en memoria del tipo “secuencia de

percepciones/acción”. Sería una tabla demasiado voluminosa para repetir la acción ya experimentada antes.

Agentes reflejos con un único estado (simples) se basan en reglas condición/acción y se implementan con un sistema de

PRODUCCIÓN. Carecen de memoria referida a estados pasados del mundo.

Page 29: IA Agentes

29

Lo más sencillo:DISPONER DE UNA TABLA

¿Por qué fracasa el ideal de disponer de una tabla de consulta? Esta arquitectura tiene los siguientes inconvenientes

tamaño excesivo (no factible) falta de adaptación.

¿Qué tamaño tendría que tener la tabla? (Caso límite, el ajedrez) El agente ¿podrá aprender de sus errores? ¿De dónde provendría dicha table en primera instancia?

function Table-Driven-Agent(percept) returns action static: percepts, a sequence, initially empty table, a table indexed by percept sequences, initially fully specified

append percept to the end of percepts action LookUp(percepts, table)return action

Page 30: IA Agentes

30

Agente reactivo simpleA

mbiente

Am

biente

Reglas Si-Reglas Si-EntoncesEntonces

Qué acción deboQué acción debohacer en este hacer en este

momentomomento

cambioscambios

conocimientoconocimiento

EfectoresEfectores

Sensores

Cómo es el mundo en este momento

Agente

Page 31: IA Agentes

31

¿Qué es un agente reactivo simple?

function Simple-Reflex-Agent(percept) returns action static: rules, a set of condition-action rules

state Interpret-Input(percept) rule Rule-Match(state, rules) action Rule-Action[rule] return action

Las reglas condición-acción permiten establecer la conexión entre percepción y acción.

Se indica el estado interno, único en un momento dado del proceso de decisión.

Se indica la base de conocimiento en forma de reglas de producción.

Programa del agente:

Interpret-input genera una descripción abstracta del estado mostrado por la percepción

Rule-match proporciona una regla del conjunto que satisface la percepción

Page 32: IA Agentes

32

Tipos de Agentes

Bien informados de lo que pasa en su mundo

Agentes con memoria con un estado interno que sirve para seguirle la pista a los estados pasados de su mundo.

Agentes focalizados en encontrar la meta además de disponer de información sobre el estado, tienen información sobre

situaciones deseables para alcanzar la meta. Lógicamente, agentes de este tipo tienen bajo consideración eventos del futuro.

Utilidad focalizados en mejorar la utilidad de sus acciones basan su decisión en la teoría axiomática clásica de la utilidad para actuar racionalmente.

Page 33: IA Agentes

33

¿Qué es un agente bien informado?A

mbiente

Am

biente

Reglas Si Reglas Si - Entonces- Entonces

Qué acción deboQué acción debohacer en estehacer en este

momentomomentoconocimientoconocimiento

Cómo evoluciona el mundoCómo evoluciona el mundo

Qué producen mis acciones

Estado

Cómo es el mundo en este momento

SensoresAgente

Efectores

Page 34: IA Agentes

34

Agentes bien informados

function Reflex-Agent-With-State(percept) returns action static: rules, a set of condition-action rules state, a description of the current world

state Update-State(state, percept) rule Rule-Match(state, rules) action Rule-Action[rule] state Update-State(state, action) return action

La actualización del estado interno requiere dos tipos de conocimiento codificado conocimiento acerca de la forma en

que el mundo cambia, independientemente de las acciones del agente.

conocimiento acerca de la forma en que el mundo cambia con motivo de la acción del agente

Pero el conocimiento del estado interno no siempre es suficiente al elegir entre dos rutas alternativas

(en una intersección ¿girar o no girar el volante del coche?) no se alcanzará el objetivo final

pues se requiere conocer la meta a lograr para finalizar la tarea con éxito

Page 35: IA Agentes

35

¿Qué es un agente orientado a metas?

Am

bienteA

mbiente

Reglas Si Reglas Si - Entonces- Entonces

Qué acción deboQué acción debohacer en estehacer en este

momentomomentoconocimientoconocimiento

¿¿Cómo evoluciona el mundo?Cómo evoluciona el mundo?

¿Qué producenmis acciones?

Estado

Cómo es el mundo en este momento

SensoresAgente

Efectores

¿Qué sucedería siemprendo la acción A?

Page 36: IA Agentes

36

Agentes basados en Metas

Razonando acerca de acciones un agente reflejo solo actúa basado en conocimientos precomputados (reglas) la búsqueda y la planificación ayudan a razonar acerca de qué acción logra la meta el agente es menos eficiente pero más adaptativo y flexible

Qué argumentar acerca de acciones alternativas que llegan a la meta hay que maximizar la utilidad de las acciones, esto es, elegir aquella que logra la meta mejor de

todas.

Page 37: IA Agentes

37

Arquitectura General de Agentes basados en Metas

Los agentes simples no tienen acceso a su medida de buen éxito En ese caso el diseñador elige la meta y la incorpora por diseño a su agente

Similarmente, los agentes tontos no pueden formular su propio problema en cuyo caso dicha formulación tambien se debe incorporar al diseño

El bucle “while” (mientras) - ver arriba - es la fase de ejecución de la conducta de este tipo de agentes Nótese que en esta arquitectura se sobreentiende que para la fase de ejecución no

importa monitorizar el ambiente.

Input perceptstate Update-State(state, percept)goal Formulate-Goal(state, perf-measure)search-space Formulate-Problem (state, goal)plan Search(search-space , goal)while (plan not empty) do action Recommendation(plan, state) plan Remainder(plan, state) output actionend

Page 38: IA Agentes

38

¿Qué es un agente basado en utilidad?

Am

bienteA

mbiente

UTILIDADUTILIDAD ¿¿Soy feliz así?Soy feliz así?¿Qué hago ahora?¿Qué hago ahora?

conocimientoconocimiento

¿¿Cómo evoluciona el mundo?Cómo evoluciona el mundo?

¿Qué producenmis acciones?

Estado

Cómo es el mundo en este momento

SensoresAgente

Efectores

¿Qué sucedería siemprendo la acción A?

Page 39: IA Agentes

39

Agentes basados en Utilidad

Función Utilidad es un mapeo de estados bajo la forma de números reales lleva a decisiones racionales en dos tipos de situaciones

evaluación de compromisos entre metas en conflicto evaluación de metas en conflicto

Page 40: IA Agentes

40

Agentes basados en utilidad Las metas no bastan para generar una conducta de alta

calidad.

Las metas permiten establecer una distinción entre estados “felices” e “infelices”.

Si se prefiere un estado en lugar de otro, se dice que ese estado ofrece mayor “utilidad” al agente.

Utilidad Función que caracteriza el grado de satisfacción En temas venideros se mencionará frecuentemente el

PRINCIPIO DE MAXIMA UTILIDAD ESPERADA

Page 41: IA Agentes

Ambientes

Características y tipos

Page 42: IA Agentes

42

Propiedades de los Ambientes Accesible/Inaccesible

Si los sensores proporcionan todo lo que hay que saber sobre el estado completo del ambiente - necesario para elegir una acción - entonces el ambiente es accesible al agente. Esos ambiente resultan convenientes, ya que liberan al agente de la tarea de mantener actualizado su inventario del mundo.

Determinístico/No-determinístico (estocástico) Si el estado siguiente del ambiente está determinado plenamente por el estado

presente del mismo, y por la acción del agente - se trata de un ambiente determinístico. Así el agente escapa de la incertidumbre.

Episódico/No-episódico Un ambiente episódico implica que los episodios siguientes no dependen de las

acciones que ocurrían en episodios previos (como en las clásicas cadenas de Markov). Esto permite al agente que no se preocupe por la planificación de lo que pueda ocurrir.

Page 43: IA Agentes

43

Propiedades de los Ambientes (2) Estático/Dinámico

Será estático todo ambiente que no cambie mientras el agente está “pensando”. No tiene importancia el tiempo que se usa en pensar y no necesita monitorizar el mundo mientras piensa. El tiempo carece de valor mientras se computa una buena estrategia. En otro caso será dinámico.

Discreto/Continuo Discreto - con escaso número de percepciones y acciones en el ambiente. Continuo - en otro caso.

Sin adversario/con adversarios racionales Sin adversario - ausencia de otros agentes racionales adversarios: la

consecuencia es que el agente se libera de competir con dichos adversarios en el mismo juego.

Los ambientes ingenieriles suelen ser sin adversario. Los ambientes sociales y económicos aumentan en su complejidad por la

presencia de interacciones entre uno o más adversarios (por ejemplo en la Bolsa).

Page 44: IA Agentes

44

Tipos de ambientes y sus características Solitario Taxi

Accesible ?? Determinístico ?? Episódico ?? Estático ?? Discreto ??

Page 45: IA Agentes

45

Tipos de ambientes y sus características Solitario sí - sí - no - sí - sí Taxi no - no -no - no - no

Accesible Determinístico Episódico Estático Discreto

Page 46: IA Agentes

46

Ambientes en Internet e_mail Grupos de noticias WWW FTP Juegos en línea Foros Buscadores con diversos agentes Ambiente apto para minería de datos Bibliotecas virtuales (p.ej., de IA)

Page 47: IA Agentes

47

Tipos de ambientes y sus características

Page 48: IA Agentes

48

34

An Agent Portfolio

Broker-Corredor de comercio---Spider-Buscador, literal araña.

Page 49: IA Agentes

49

Programa básico para el ambienteprocedure Run-Environment(state, Update-Fn, agents, termination) input: state, the initial state of the environment Update-Fn, function to modify the environment agents, a set of agents termination, a predicate to test when we are done

repeat for each agent in agents do Percept[agent] Get-Percept(agent, state) end for each agent in agents do Action[agent] Program[agent](Percept[agent]) end state Update-Fn(actions, agents, state) until termination(state)

Programa básico para simular ambientes proporciona las percepciones a los agentes anidados en ese ambiente absorbe una acción de cada agente en la unidad de tiempo actualiza el ambiente cada unidad de tiempo

Page 50: IA Agentes

50

Simulador de ambiente al tanto de las medidas de buen éxito de los agentes

function Run-Eval-Environment(state, Update-Fn, agents,termination, Performance-Fn) returns scores

local : scores, a vector the same size as agents, initially all 0

repeat for each agent in agents do Percept[agent] Get-Percept(agent, state) end for each agent in agents do Action[agent] Program[agent](Percept[agent]) end state Update-Fn(actions, agents, state) scores Performance-Fn(scores, agents, state) until termination(state) return scores

Casi siempre, los agentes se han diseñado para satisfacer una cierta clase de ambiente medición de buen éxito en ese ambiente, definido por un estado inicial singular

y una función de actualización particular.

Page 51: IA Agentes

Resumen

Tema I

Page 52: IA Agentes

52

ResumenLos principales contenidos del tema I son: Un agente percibe y actúa en un cierto ambiente, posee una

arquitectura dada y está implementado a través de un programa de agente.

Un agente ideal (omnisciente) siempre elige aquella acción mediante la cual se maximiza su logro esperado, sujeta a la secuencia de percepciones recibida hasta ese momento.

Un agente autónomo usa su experiencia propia en lugar de usar conocimiento incorporado por su diseñador referente al ambiente.

Un programa de agente mapea la ruta entre percepción y acción y actualiza el estado interno de dicho agente.

Un agente reflejo (o reactivo) responde de inmediato a las percepciones según la regla acción/percepción. (jugador de ping pong).

Page 53: IA Agentes

53

Resumen

Un agente basado en metas actúa de tal manera que pueda obtener el logro de la meta programada.

Un agente basado en utilidad maximiza su propia función de utilidad.

Poder representar el conocimiento (y a veces lograr que ese conocimiento pueda ser legible por el humano) es importante para que el diseño tenga buen éxito.

No todos los ambientes son iguales para el agente. Hay unos que son más difíciles que otros. Los más difíciles son los ambientes inaccesibles, no-determinísticos, no-episódicos, dinámicos y continuos.

Uno fácil sería el de un robot encargado de hacer tostadas.

Page 54: IA Agentes

54

Resumen y conclusiones razonadas La inteligencia artificial se ha presentado como la tecnología de la

construcción de agentes inteligentes, con lo cual se unifican temas que no tenían relación con otros enfoques (caso de la robótica y la visión).

Es evidente que el hilo conductor es el de ir complicando gradualmente los programas de agente , las funciones de agente ( utilidad,, actualización y desempeño) y los programas de ambiente ( información básica y detallada).

Obviamente la noción de agente aglutina en una meta clara a toda la inteligencia artificial, la cual, sin embargo, al estar enlazada con los ambientes, pierde – por suerte – toda posibilidad de ser una disciplina auto-contenida, pasando a tener condición de multi-disciplinar.