1 Inteligencia Artificial Prof. M. Angélica Pinninghoff J. 5 ¿Qué es IA? 6 ¿Qué es IA? “Una película de Steven Spielberg” Eamonn Keogh “La capacidad de un computador de realizar tareas asociadas comunmente a procesos intelectuales complejos que caracterizan típicamente a los seres humanos, tales como la habilidad de razonar, descubrir significados, generalizar o aprender de sus experiencias.” Encyclopaedia Britannica. IA trata de resolver mediante computadores cualquier problema que un ser humano puede resolver más rápido y/o mejor “FOLDOC” (Free Online Dictionary of Computing) 7 El Test de Turing ? Alan Turing 1912-54 8 Categoría de las definiciones Procesos mentales y razonamiento b) Sistemas que piensan como humanos c) Sistemas que piensan racionalmente Eficiencia humana Racionalidad a) Sistemas que d) Sistemas que actúan como actúan humanos racionalmente Conducta Se considera que un sistema es racional si hace lo correcto 9 Intereses de la IA John Nash Juegos Demostración de teoremas Percepción de imágenes y reconocimiento de patrones Procesamiento lenguaje natural y traducción automática Sistemas Expertos Robótica Recuperación de información 10 Pregunta: ¿Qué sería para usted un “sistema inteligente”? 11 Aspectos importantes de la IA El uso de computadores para realizar razonamiento, reconocimiento de patrones, aprendizaje, o alguna otra forma de inferencia. Apunta a problemas que no obedecen a soluciones algorítmicas. Resolución de problemas con información inexacta o incompleta (difusa). 12 Aspectos importantes de la IA Razonamiento sobre características cualitativas significativas de una situación. Genera respuestas que sin ser exactas u “óptimas” en algún sentido son suficientes. El uso de meta-conocimiento para el uso de estrategias complejas de solución de problemas. ¿Por qué estudiar IA? 13 Los primeros intentos de vuelo consistían en máquinas que imitaban el movimiento de las alas de las aves. No obstante los actuales aviones tripulados pueden acarrear grandes catidades de carga a velocidades mayores que la velocidad del sonido; y no se trata de aviones que imiten el movimiento de las alas de las aves. 13 14 Concepto de estados y árboles de búsqueda 15 Estados Estado: conjunto de variables/valores Estado inicial Estado actual Estado objetivo Espacio de estados: estados posibles Combinación de valores de variables 16 Búsqueda Componentes de un sistema de búsqueda Definición Razonamiento 17 Búsqueda Componentes Base de Datos: Estado actual y objetivo Conjunto de operadores: Transforman un estado en otro Estrategia de control: Decide qué hacer a continuación 18 Búsqueda Definición Una secuencia de operadores finita que transforman el estado inicial en el estado objetivo Razonamiento Forward A partir del estado inicial encuentra el estado objetivo Backward A partir del estado objetivo encuentra el estado inicial 19 Búsqueda Espacio de estados Un operador produce un nuevo estado Reducción de problema Un operador produce un conjunto de subproblemas que deben ser resueltos 20 Ejemplo Una persona fue a buscar 8 litros de agua a un pozo cercano. Para ello leva dos baldes, uno de 11 litros y uno de 6 litros sin medidas intermedias. ¿Cómo puede medir la cantidad de agua pedida? Una persona fue a buscar 8 litros de agua a un pozo cercano. Para ello leva dos baldes, uno de 11 litros y uno de 6 litros sin medidas intermedias. ¿Cómo puede medir la cantidad de agua pedida? Puzzle-8 ¿Es posible colocar 8 reinas en un tablero de ajedrez de forma que no se ataquen entre ellas? 21 Encontrar una ruta desde la Estación a la Universidad tal que el tiempo de conducción sea mínimo, ... tal que el kilometraje sea mínimo, ... tal que el número de semáforos sea mínimo ... 22 Búsqueda El problema del Granjero, el Lobo la Cabra y el Repollo Granjero, Lobo, Cabra, Repollo Granjero, Zorro, Pollo, Trigo Granjero Perro, Conejo, Lechuga 23 Un granjero con su lobo, una cabra y un repollo, llegan a la orilla de un río que desean cruzar. Hay un bote en la orilla del río, pero por supuesto sólo el granjero puede remar. El bote puede contener sólo hasta dos objetos a la vez (incluido el remero). Si el lobo es dejado solo con la cabra en una orilla, se la comerá; de forma similar, si la cabra es dejada sola con el repollo en una orilla, se lo comerá. ¿Cómo puede el granjero cruzar el río de manera que los cuatro “objetos” lleguen sin novedad a la otra orilla? Este problema se remonta al siglo VIII de los escritos de Alcuin, un poeta, educador, clérigo y amigo de Carlomagno. 24 El problema del Granjero, el Lobo, ... Puede ser resuelto fácilmente usando búsqueda. La pregunta es ¿por qué perder el tiempo con una técnica no trivial para resolver problemas? El problema del Granjero, el Lobo, ... ¡tiene un espacio de búsqueda pequeño! Sin embargo, muchos problemas reales tienen espacios de búsqueda muy grandes (posiblemente infinitos). ¿Cómo buscamos en un espacio que tiene más estados que la cantidad de electrones del universo? 25 El problema visto supone que tenemos un conocimiento completo (siempre sabemos donde está cada cosa) y un mundo estático (el río no cambia, el bote es siempre el mismo, etc.) Sin embargo en los problemas reales no tenemos un conocimiento completo del estado actual del mundo, más aún, el mundo está cambiando de formas que no podemos predecir ni controlar. Esto significa que todos los objetos/persona están al mismo lado del río Esto significa que de algún modo hemos llevado al lobo al otro lado del río 26 GLCR G CR L G L C R L C R G C R G L 27 Arbol de Búsqueda para “Granjero, Lobo, Cabra, Repollo” L G R C Estado Ilegal L C G R G L C R L C R G C R L G L G G L R L C C R G R G L C R C 28 Arbol de Búsqueda para “Granjero, Lobo, Cabra, Repollo” Estado Ilegal Estado Repetido G L C R L C R C R G L G L G G L R L C C G R R G L C R C L G G R R R C L G L C G L L C R G C G C R G L L G L C C R C R R G L C R C G L C G L G C L L C R G L C R G G R G L R C R G L R C L R G C R C R L C G L R 29 Arbol de Búsqueda para “Granjero, Lobo, Cabra, Repollo” G L C R Estado Estado Ilegal Estado Repetido Objetivo 30 Continuará Fuerte San José de Alcudia Río Bueno 31 Agentes inteligentes 32 Agentes Inteligentes Motivación Objetivos Introducción Agentes y sus acciones Estructura del agente Ambientes 33 Motivación Los agentes se usan para dar un punto de vista consistente en varios tópicos de I.A. Necesitan habilidades esenciales para realizar tareas que requieren inteligencia Los agentes inteligentes usan métodos y técnicas del campo de la I.A. 34 Objetivos Presentar los conceptos fundamentales de agentes inteligentes Definir los requerimientos básicos de comportamiento y de estructura de los agentes Establecer los mecanismos de interacción del agente con su ambiente 35 ¿Qué es un agente? En general, una entidad que interactúa con su ambiente percepción a través de sensores acciones a través de “actuadores” Diagrama del Agente 36 Sensores Cómo es el mundo ahora Reglas condición-acción Qué debo hacer ahora Actuadores Ambiente Agente Ejemplos de Agentes 37 Agente humano ojos, oidos, piel, detector gusto, etc. como sensores manos, dedos, piernas, boca, etc. como actuadores a través de músculos Robot camara, infrarrojos, topes, etc. como sensores pinzas, ruedas, luces, parlantes, etc. como actuadores a menudo a través de motores Agente software funciones como sensores información suministrada como entrada funciones como actuadores resultados como salida 38 Agentes y sus acciones Un agente racional hace “lo correcto” la acción que lleva al éxito problemas: ¿qué es “ lo correcto”? ¿cómo se mide el “éxito” 39 Comportamiento de agentes Criterio para medir el éxito y los costos del agente a menudo subjetivo, aunque debiera ser objetivo depende de la tarea el factor tiempo es importante, cuándo medir 40 Evaluación de Comportamiento Ejemplos Agente aspiradora número de baldosas limpiadas durante un cierto período basado en el informe del agente, o validado por alguna autoridad objetiva no considera costos del agente, efectos colaterales energía, ruido, pérdida de objetos útiles, daño de los muebles, piso arañado puede llevar a actividades no deseadas agente limpia de nuevo baldosas ya limpias, cubre parcialmente la pieza, etc. Agente Racional 41 Consideraciones importantes rendimiento medido por la completación exitosa de una tarea (medida del éxito) historia perceptual completa (secuencia de percepciones) conocimiento de respaldo especialmente sobre el ambiente dimensiones, estructura, “leyes” básicas tarea, usuario, otros agentes acciones factibles en el medio capacidades del agente Sabiduría 42 un agente racional no es “sabio” no tiene noción del éxito de sus acciones puede desconocer ciertos aspectos del ambiente racionalidad toma en cuenta las limitaciones del agente percibe secuencias, conocimiento de respaldo, acciones factibles tiene que ver con las expectativas de éxito de sus acciones 43 Agente Racional Ideal Selecciona la acción que se espera maximice su operación (resultados) basado en una medida de comportamiento depende de la secuencia de percepciones, conocimiento de respaldo, y acciones factibles Emprender acciones para obtener información útil es importante en la racionalidad Desde Percepciones a Acciones 44 Si un agente reacciona sólo a sus percepciones, es posible describir en una tabla la secuencia de percepciones a las acciones en vez de tabla, se puede usar una función simple puede usarse para describir agentes que resuleven problemas bien definidos en ambientes bien definidos e.g. Cálculo de funciones matemáticas Agente vs Programa 45 Los criterios se pueden aplicar tanto a agentes como a programas Autonomía los agentes resuelven tareas de forma independiente sistemas autónomos basan sus acciones en su propia experiencia y conocimiento requieren conocimiento inicial y capacidad de aprender ofrecen flexibilidad para tareas complejas los programas dependen de usuarios o de otros programas como guía Estructura de Agentes Inteligentes 46 Agente = Arquitectura + Programa arquitectura plataforma operacional del agente sistema computacional, hardware específico, posiblemente funciones del Sistema Operativo programa función que implementa el mapeamiento desde percepciones a acciones Agentes Software 47 Se les conoce como “softbots” viven en ambientes artificiales donde computadores y redes suministran la infraestructura pueden ser muy complejos con restricciones severas sobre el agente World Wide Web, restricciones en tiempo real ambientes naturales y artificiales pueden combinarse interacción con el usuario sensores y actuadores del mundo real cámara, temperatura, brazos, ruedas, etc. Programas Agentes 48 El énfasis está en los programas que especifican el comportamiento del agente a través de mapeamientos desde percepciones a acciones menor preocupación con ambiente y metas los agentes perciben una cosa a la vez pueden (o no) guardar una historia de la secuencia de percepciones la evaluación de rendimiento es hecha por una autoridad externa (no por el agente) más objetivo, menos complicado Estructura Programa Agente 49 Marco básico para un programa agente function MARCO-AGENTE(percibe) returns acción static: memoria memoria := ACTUALIZA-MEMORIA(memoria, percibe) acción := ELIGE-MEJOR-ACCION(memoria) memoria := ACTUALIZA-MEMORIA(memoria, acción) return acción Tipos de Programas Agente 50 Hay diferentes formas de mapeamiento desde percepciones a acciones hay diferentes niveles de complejidad agentes reflejos simples agentes que almacenan una memoria del mundo (con estado interno) agentes basados en objetivos agentes basados en la utilidad Agentes Reflejos Simples 51 Se registran las asociaciones comunes entrada-salida requiere el procesamiento de percepciones para alcanzar un grado de abstracción el método frecuente de especificación es el uso de reglas del tipo condición-acción if percepción then acción similar a los reflejos innatos o respuestas aprendidas en los humanos la implementación es eficiente pero la potencia es limitada Agente Reflejo Simple 52 Sensores Cómo es el mundo ahora Agente Reglas condición-acción Qué debo hacer ahora Actuadores Ambiente Programa Agente Reflejo 53 Aplicación de reglas simples a situaciones function AGENTE-REFLEJO-SIMPLE (percepción) returns acción static: reglas //conjunto de reglas condición-acción condición := INTERPRETA-ENTRADA (percepción) regla := REGLA-MATCH (condición, reglas) acción := REGLA-ACCION(regla) return acción 54 Agente reflejo con Estado Interno Un estado interno mantiene información importante de percepciones previas sensores suministran sólo una visión parcial del ambiente Agente Reflejo (Diagrama de Estado) 55 Sensores Estado Cómo es el mundo ahora Cómo evoluciona mundo Qué hacen mis acciones Reglas condición-acción Qué debo hacer ahora Agente Efectores Ambiente Agente reflejo con programa de estados 56Aplicación de reglas simples a situaciones function AGENTE-REFLEJO-CON-ESTADOS(percepción) returns acción static: reglas //conjunto de reglas condición-acción estado //descripción estados actuales del mundo estado := ACTUALIZA-ESTADO(estado, percepción) regla := PAREA-REGLA(estado, reglas) acción := ACCION-REGLA(regla) estado := ACTUALIZA-ESTADO(estado, acción) return acción Agente Basado en metas 57 El agente trata de alcanzar un estado objetivo puede ser suministrado desde el exterior (usuario, diseñador), o inherente al agente mismo Se consideran los resultados de posibles acciones con respecto a la meta puede requerir búsqueda o planificación Muy flexible, pero no muy eficiente Diagrama Agente Basado en Metas 58 Sensores Estado Cómo evoluciona mundo Cómo es el mundo ahora Qué ocurre al realizar una acción Qué hacen mis acciones Metas Qué debo hacer ahora Agente Efectores Ambiente 59 Agente Basado en la Utilidad Distinción más sofisticada entre diferentes estados del mundo estados se asocian con un número real puede interpretarse como “grado de felicidad” permite la resolución de conflictos entre metas permite múltiples metas Diagrama Agente Basado en Utilidad 60 Sensores Estado Cómo evoluciona el mundo Qué hacen mis acciones Cómo es el mundo ahora Qué ocurre si hago una acción Cuán feliz seré entonces Utilidad Qué debo hacer ahora Agente Efectores Ambiente 61 Ambientes Determinan la interacción entre el “mundo exterior” y el agente el “mundo exterior” no necesariamente es el “mundo real” como lo percibimos En muchos casos, los ambientes son implementados en los computadores pueden tener o no una correspondencia estrecha con el “mundo real” Propiedades del Ambiente 62 Accesible vs. inaccesible sensores suministran toda la información relevante Determinísticos vs. no-determinísticos cambios en el ambiente son predecibles Episódico vs. no-episódico episodios independientes percepción-acción Estático vs. dinámico sin cambios mientras el agente está “pensando” Discreto vs. continuo número limitado de percepciones/acciones diferentes Programas Ambiente 63 Simuladores de ambiente para experimentar con agentes entregan una percepción a un agente reciben una acción actualizan el ambiente a menudo divididos en clases de ambientes para tareas relacionadas o tipos de agente frecuentemente suministran mecanismos para medir la eficiencia del agente 64 Eso sería... Volcán Osorno y lago Llanquihue