Fundamentos de Inteligencia Artificial Ing. Sup. en Informática, 3º Curso académico: 2011/2012 Profesores: Holger Billhardt, Rubén Ortiz
Tema 1: Introducción Resumen: 1. Introducción 1.1 Qué es la IA? 1.2 Agentes de resolución de problemas 1.3 Juegos y sus características
Que es Inteligencia (Artificial)? Real academia de la lengua: inteligencia.(del lat. intelligentĭa). 1. Capacidad de entender o comprender. 2. Capacidad de resolver problemas. 3. Conocimiento, comprensión, acto de entender. 4. Sentido en que se puede tomar una sentencia, un dicho o una expresión. 5. Habilidad, destreza y experiencia. 6. Trato y correspondencia secreta de dos o más personas o naciones entre sí. 7. Sustancia puramente espiritual. ~ artificial. 1. Desarrollo y utilización de ordenadores con los que se intenta reproducir los procesos de la inteligencia humana.
Que es Inteligencia (Artificial)? Pregunta a varias personas Que es inteligencia? Dónde están los límites de la inteligencia? Aristóteles: el hombre es un ser racional porqué algunas personas saben sumar Minsky: inteligencia es la forma de resolver problemas que aún no se entienden Una vez que un ordenador es capaz de realizar algo inteligente, la gente deja de considerarlo inteligencia. La IA es todo lo que no se ha hecho hasta ahora. Cual es la diferencia entre el comportamiento instintivo y el comportamiento inteligente?
Que es Inteligencia (Artificial)? Objetivo: estudiar los entes inteligentes científico: entender (modelar, describir) los entes inteligentes ingenieril: construir entes inteligentes Disciplinas relacionadas: Filosofía leyes del pensamiento, lógica relación entre la mente y la materia (dualismo, materialismo) relación entre el conocimiento y la experiencia relación entre el conocimiento y la acción Matemáticas concepto de algoritmo (al-jawarizmi) teorema de incompletitud (Gödel) intratabilidad y teoría de la completitud NP teoría de la decisión (von Neumann / Morgenstern)
Que es Inteligencia (Artificial)? Disciplinas relacionadas: Psicología: modelos del comportamiento humano conductistas: modelos estimulo-respuesta psicología cognitiva: creencias, objetivos, pasos de razonamiento,... Lingüística: modelos de la interacción verbal humana reconocimiento y generación del habla representación del conocimiento Sociología: modelos del comportamiento humano en grupo psicología social: compromisos, normas, obligaciones,... Ingeniería: modelar y proporcionar el comportamiento inteligente (informática) crear los cuerpos de los artefactos inteligentes (ingeniería)...
Inteligencia Artificial: Objetivos Entender los entes inteligentes: Facultades de los seres inteligentes Comunicación Conocimiento de si mismos Conocimiento y percepción del entorno Interacción con el entorno Intencionalidad comportamiento dirigido por metas Creatividad Capacidad de usar y aplicar su conocimiento Razonamiento e inferencia
Razonamiento e inferencia Inferencia: - hacer suposiciones de lo que significan hechos (observados y/o conocidos) - sacar consecuencias de algo o deducir algo de otra cosa Razonamiento: Capacidad de derivar inferencias a partir de conocimiento y de observaciones con el propósito de alcanzar una meta o resolver un problema. Tipos de razonamiento: Deductivo Inductivo
Tipos de Razonamiento Razonamiento deductivo: - Inferir hechos concretos a partir de otros hechos y de aserciones generales - Ejemplo: Hecho concreto: Pepe es un pájaro. Aserción general: Todos los pájaros pueden volar. Conclusión: Pepe puede volar.
Tipos de Razonamiento Razonamiento inductivo: Inferir suposiciones generales a partir de (muchos) hechos concretos (aprendizaje) Ejemplo: Animal Especie Tamaño Puede volar elefante mamíferos grande no avestruz pájaro grande no paloma pájaro pequeño si urraca pájaro pequeño si tiburón pez grande no gaviota pájaro pequeño si Conclusión: Animales que son pájaros y pequeños pueden volar.
Inteligencia Artificial: Objetivos Construir entes inteligentes: Diferentes enfoques: Sistemas que piensan como humanos IA fuerte La interesante tarea de lograr que las computadoras piensen... Máquinas con mente, en su amplio sentido literal (Haugeland 1985) Sistemas que actúan como humanos El arte de crear máquinas con capacidad de realizar funciones que realizadas por personas requieren inteligencia (Kurzweil 1990) Sistemas que actúan de forma racional La rama de la Informática que se ocupa de la automatización del comportamiento inteligente (Luger & Stubblefield, 1993) IA débil
Pensar como humanos Modelado cognitivo: abrir la caja negra de la mente humana analizar los procesos mentales (introspección, experimentos) desarrollar una teoría acerca de los procesos mentales aplicar esta teoría en la simulación de dichos procesos en un ordenador General Problem Solver (GPS) [Newell & Simon 1961]: resuelve problemas mediante la descomposición en subproblemas más simples se centra en la comparación de los pasos de razonamiento del GPS con los pasos seguidos por una persona al resolver el mismo problema Ciencia Cognitiva: modelos computacionales (IA) + técnicas experimentales (psicología) construir teorías rigurosas y verificables acerca de los procesos mentales
Actuar como humanos Prueba de Turing : [Alan Turing, 1950] Un evaluador humano y dos interlocutores están separados por mamparas Un interlocutor es una persona y el otro un ordenador El evaluador formula preguntas a través de un teletipo, y los interlocutores dan sus respuestas del mismo modo El ordenador supera la prueba, si el evaluador no es capaz de distinguir entre él y el humano Capacidades requeridas : procesamiento del lenguaje natural representación del conocimiento y razonamiento aprendizaje Prueba total de Turing: incluye señales de vídeo y objetos físicos requiere capacidad de visión computacional y robótica
Actuar de forma racional Racionalidad: prescriptivo: como las personas deberían actuar sentido estricto: cómo sacar conclusiones verdaderas? sentido amplio: cómo actuar y sobrevivir en un entorno? Pensar de forma racional: leyes de pensamiento de Aristóteles: razonamiento irrefutable lógica formal : lenguaje formal para representar todo tipo de entes en el mundo modelo riguroso para razonar sobre dichos entes en su estado puro, más estrechamente relacionado con la filosofía y las matemáticas Objetivo de IA: modelar/construir sistemas que actúan de forma racional
Actuar de forma racional Actuar de forma racional: enfoque relativo al contexto: actuar de forma correcta en un entorno no se limita a la inferencia racional (lógica) a veces es imposible determinar formalmente cuál es la mejor acción en algunas situaciones es racional emprender una acción buena inmediatamente en vez de esperar hasta determinar la alternativa óptima se pueden determinar acciones racionales por inferencias no lógicas Ventajas: pone énfasis en una perspectiva ingenieril destaca la relación entre comportamientos inteligentes y el entorno en el que se desarrollan proporciona criterios transparentes para evaluar conducta inteligente permite una concepción integrada de las distintas técnicas y subáreas de la Inteligencia Artificial
Inteligencia Artificial: Historia 1940/50: Programas que resuelven tareas básicas de razonamiento (jugar al ajedrez / jugar a las damas / probar teoremas geométricos) primeros modelos de neuronas artificiales (McCulloch/Pitts) 1960/70: representaciones especializadas del conocimiento (reglas, marcos, guiones) primeros sistemas expertos (Dendral, Prospector, Mycin) declive de la computación neuronal (análisis de los Perceptrones de Minsky) 1980: aplicaciones comerciales de los sistemas expertos proyecto de software de quinta generación en Japón 1990 hasta hoy: regreso de las redes de neuronas modelos de incertidumbre (cadenas de Markov, redes Bayesianas) agentes inteligentes (robots autónomos, sistemas multiagente)...
Inteligencia Artificial: Subáreas Resolución de problemas mediante búsqueda: actuar de forma racional en entornos bien definidos: espacios de estado (entornos accesibles, deterministas, estáticos y discretos) Representación del conocimiento y razonamiento combatir la complejidad : estructurar la representación del entorno entornos inaccesibles / no deterministas: razonamiento no-monótono... Planificación: combatir la complejidad : representación estructurada + inferencia especializada entornos no-deterministas: planificación condicional entornos dinámicos: replanificación Aprendizaje: combatir la complejidad: aprender a actuar más rápido mejorar el rendimiento: aprender a actuar mejor mejorar la autonomía: reducir dependencia de conocimientos a priori
Inteligencia Artificial: Subáreas Incertidumbre: entornos inaccesibles/ no deterministas/ continuos: creencias (lógica borrosa, redes Bayesianas...) medidas de rendimiento basados en la utilidad esperada (Teoría de la Utilidad, inferencia basada en la Teoría de la Decisión) Comunicación: entornos en el que el agente interactúa de forma flexible con humanos (procesamiento del lenguaje natural, actos de habla,...) entornos multiagente (razonar sobre otros agentes, coordinación, lenguajes de comunicación entre agentes,...) Percepción y actuación: robótica: entornos físicos y agentes hardware visión computacional
Tema 1: Introducción a la IA Resumen: 1. Introducción 1.1 Qué es la IA? 1.2 Agentes de resolución de problemas 1.3 Juegos y sus características
Agentes Agente: ente activo embebido en un entorno cuerpo : percibe el entorno por medio de sensores actúa sobre el entorno por medio de efectores mente : determina las acciones a partir de las percepciones medida de rendimiento que guía dicho proceso percepciones acciones entorno
Tipos de Agentes Agentes naturales: cuerpo biológico y entorno natural sensores: ojos, oídos, lengua, etc. efectores: piernas, brazos, manos, etc. medida de rendimiento: sobrevivir, reproducirse,... Agentes artificiales: agentes hardware (robots): interactúan directamente con un entorno físico disponen de un cuerpo físico sensores: cámaras, telémetros infrarojos, etc. efectores: ruedas/piernas, manipuladores, etc. agentes software (softbots): actúan en entornos virtuales (p.e. Internet) todo software: no necesitan manipular físicamente el entorno sensores y efectores: dependientes del entorno
Agente inteligente Agentes inteligentes: actúan de forma racional en su entorno determinantes de un comportamiento racional : medida de rendimiento: define el grado de éxito del agente secuencia de percepciones: la experiencia del agente conocimientos a priori sobre su entorno capacidades: las acciones que el agente pueda emprender Comportamiento racional: a partir de la secuencia de percepciones hasta el momento, y el conocimiento a priori sobre el entorno elegir entre las capacidades la acción que maximice la medida de rendimiento Racionalidad Omnisciencia la selección racional de acciones sólo se basa en la información disponible
Autonomía Problema: los conocimientos a priori compilan la inteligencia del diseñador un agente que no presta atención a sus percepciones no sería inteligente sólo podría actuar en entornos extremadamente simples no puede actuar con éxito en situaciones no anticipadas (escarabajo de estiércol) Autonomía: no bajo el control inmediato de una persona un agente es más autónomo...... cuanto más se rige su comportamiento por su propia experiencia... cuanto menos depende de sus conocimientos a priori Agente inteligente = comportamiento racional + autonomía
Problema: Resolución de problemas Se tiene un problema si se quiere conseguir un objetivo y no se conoce qué acción o qué serie de acciones llevan a conseguir este objetivo. Componentes de un problema: Individuo (agente, humano,...) Estado actual (percepción del mundo real) Estado meta (objetivo) Acciones (que el individuo puede realizar) influyen en el mundo (cambian el estado del mundo) deben existir varias acciones el individuo debe ser capaz de seleccionar una acción las acciones deben repercutir de forma diferente en la consecución del objetivo Voluntad de conseguir el objetivo por parte del individuo el individuo ignora cual es la mejor secuencia de acciones para conseguir el objetivo
Problemas bien definidos discreto: se puede concebir el mundo en estados en cada estado hay conjunto finito de percepciones y acciones accesible: es posible percibir el estado actual del mundo es posible determinar si un estado es un estado meta determinista: el resultado de cada acción es un estado totalmente definido Ejemplos: 8-Puzzle Tres-en-Raya 1 2 3 6 8 4 7 5
Agentes de resolución de problemas Son entes que desean resolver problemas (bien definidos) Realizan acciones para modifican el estado del mundo de acuerdo con sus objetivos 1 2 3 8 7 6 4 5 2 1 7 8 3 4 6 5
Agentes de resolución de problemas Ciclo de actuación del agente: 1. Percibir y clasificar la situación presente 2. Buscar una acción (o un plan de actuación) 3. Ejecutar la acción (o el plan de actuación) Los agentes son especializados: el diseñador dota al agente a priori con conocimientos específicos que definen el entorno del problema que definen los objetivos se supone una percepción y una ejecución ideal Consideramos solamente agentes para problemas bien definidos
Tipos de Agentes Función percepción-acción: Agentes estimulo-reacción (reactivos) : calculan las acciones directamente a partir de las percepciones frecuentemente siguen un enfoque conexionista en muchos dominios permite generar rápidamente acciones buenas Agentes deliberativos: mantienen un modelo simbólico de su entorno anticipan los efectos potenciales de sus acciones a través del modelo permite evitar emprender acciones equivocadas y irrevocables Agentes híbridos: combinan ambos enfoques enfoque reactivo para acciones inmediatas enfoque deliberativo para acciones estratégicos
Tema 1: Introducción a la IA Resumen: 1. Introducción 1.1 Qué es la IA? 1.2 Agentes de resolución de problemas 1.3 Juegos y sus características
Juegos y sus características Juegos: Presentan una gran similitud con problemas reales Están bien formulados Unen riqueza (complejidad) y simplicidad Jugar bien requiere inteligencia: en muchos juegos no se conoce un algoritmo que garantice una solución Son ejemplos claros de problemas de toma de decisiones Se han utilizado tradicionalmente como campo de estudio y de aplicación de IA Agentes que juegan a juegos complejos y son capaces de mejorar su juego pueden ser los precursores de artefactos inteligentes del futuro
Características generales Características generales para el empleo de juegos en IA: Secuenciales: las jugadas se efectúan de forma secuencial y los efectos son inmediatos Discretos: un número finito de jugadas posibles en cada estado del juego Implícitos: no se sabe a priori la ganancia obtenida con una jugada Voluntad de ganar: Existe un conjunto de estados objetivos y la voluntad de conseguirlos Deterministas: los resultados de acciones son estados bien definidos Accesible: se puede percibir el estado actual y se puede determinar si es un estado objetivo Para muchos juegos, jugar bien es un problema bien definido.
Características de Juegos Número de jugadores: unipersonales: 8-puzzle, laberinto, comococos,... varios jugadores: ajedrez, damas, parchis Determinista frente a no determinista: Los acciones del agente en un estado actual determinan completamente el estado resultante? con elementos de azar: backgammon, juegos con dados sin elementos de azar: damas, ajedrez
Características de Juegos Totalmente observable frente a parcialmente observable: El agente puede determinar inequívocamente el estado del juego? información completa: damas, ajedrez información incompleta: laberinto, póker Estático frente a dinámico: El estado del entorno pueda cambiar mientras que el agente delibera? Puede cambiar sin que el agente actúe? estático: laberinto, 8-puzzle semidinámico (cambios previsibles): ajedrez, damas dinámico: videojuegos