INTELIGENCIA ARTIFICIAL 1er. Cuatrimestre 2011 PROPÓSITOS DE FORMACIÓN Al terminar el curso, el estudiante conocerá los conceptos básicos en Inteligencia Artificial y estará en capacidad de aplicar algunas técnicas para la solución de problemas. El curso tiene una orientación más informativa que formativa y los trabajos y ejercicios que se darán durante el curso buscarán que el alumno tome dimensión de la problemática que se busca abordar. EVALUACIÓN Habrán tres trabajos prácticos y un trabajo final. Los mismos se realizarán de grupos de tres alumnos. Los tres trabajos prácticos serán sobre: Métodos de Búsqueda, Representación de Conocimiento y Aprendizaje. Al final de la presentación de cada tema se darán los ejercicios a resolver. Tendrán dos semanas para resolverlos. El trabajo final tendrá por objetivo aplicar en un problema algunas de las técnicas aprendidas durante el curso. Nosotros propondremos una serie de problemas para que los alumnos elijan. Tendrán cuatro semanas para hacerlo. CRONOGRAMA Teórica 28/03 04/04 11/04 18/04 25/04 02/05 9/05 16/05 23/05 30/05 06/06 13/06 20/06 27/06 Temas Introducción: Historia y Motivaciones de IA. Resolución de Problemas por Búsqueda Desinformada Resolución de Problemas por Búsqueda Informada Razonamiento Representación del Conocimiento Aprendizaje desde observaciones Aprendizaje con conocimiento. Aprendizaje: Redes Neuronales Aprendizaje por refuerzo Comunicación Procesamiento de Lenguaje Natural I Procesamiento de Lenguaje Natural II Vision en Robótica Conclusiones y perpectivas filosófica Docente a cargo Ricardo Rodriguez Ricardo Rodriguez Ricardo Rodriguez Ricardo Rodriguez Ricardo Rodriguez Ernesto Mislej Ernesto Mislej Adrian Martinez Adrian Martinez José Castaño José Castaño José Castaño Marta Mejail A confirmar. Lectura Part. I 1-2 Part. II 3-4 Part. II 5-6 Part. III 7-8 Part. III 9-10 Part VI 18 Part VI 19 Part. VI 20 Part VI 21 Part.VII 22 Part VII 23 Part VII 24 Part VII 25 Part VIII agenda PARTE 1 Que es la Inteligencia Artificial Paradigmas de IA Fundamentos PARTE 2 Historia Áreas de la IA Algunas Aplicaciones ¿Qué es la inteligencia artificial? ¿Qué es la inteligencia artificial? No existe una definición única. Podemos clasificar las definiciones de Inteligencia Artificial de acuerdo con los siguientes cuatro enfoques. define: IA antes de ir a los 4 enfoques, vamos a revisar algunas definiciones sobre la IA, utilizando el servicio de Google Define. (archivo externo) (John McCarthy , Basic Questions) What is artificial intelligence? It is the science and engineering of making intelligent machines, especially intelligent computer programs. It is related to the similar task of using computers to understand human intelligence, but AI does not have to confine itself to methods that are biologically observable. Yes, but what is intelligence? Intelligence is the computational part of the ability to achieve goals in the world. Varying kinds and degrees of intelligence occur in people, many animals and some machines. ¿Qué es la inteligencia artificial? • Hollywood sigue creando expectaciones no realistas para los androides y las máquinas inteligentes en general. • Quisiéramos robots como C-3PO que se parecen a los humanos, y actúan y responden como ellos (quejándose menos, posiblemente). • ¿Por qué no los tenemos y solo tenemos autómatas capaces de construir coches en cadenas de montaje? ¿Qué es la inteligencia artificial? • A pesar de algoritmos sofisticados y muchos años de experimentación, aún no somos muy buenos en modelar la vida. – Los motores no replican los músculos. – Las cámaras no son ojos. – Y los ordenadores definitivamente no son cerebros. • Sin embargo, seguimos con la idea de tener robots humanoides. ¿Qué es la inteligencia artificial? • Estamos perfeccionando continuamente la bio-imitación, la visión por ordenador y las técnicas de inteligencia artificial. • En cada una de estas áreas se ha visto frustrada la carrera de muchos científicos. • La disciplina entera parece marchar hacia un callejón sin salida y las aplicaciones prometidas son una continua decepción. ¿Qué es la inteligencia artificial? • No se están obteniendo resultados en máquinas de propósito general, ni en robots humanoides que pueden andar. • Los avances reales son en cambio en: – la comprensión de cómo funcionan cerebro y conciencia; – bots especializados en un único propósito. • El futuro, de momento, es más Roomba que Asimo. Roomba 6 Asimo http://www.youtube.com/watch?v=P9ByGQ GiVMg&feature=player_detailpage Los 4 enfoques Sistemas que piensan como humanos Sistemas que piensan racionalmente Sistemas que actúan como humanos Sistemas que actúan racionalmente Los 4 enfoques • Actuar como humano: el enfoque de la prueba de Turing. • Pensar como humano: el enfoque del modelo cognitivo. (Ciencia Cognitiva) • Pensar racionalmente: el enfoque de las leyes del pensamiento. (silogismos, lógica) • Actuar en forma racional: el enfoque del agente racional. (agentes, percepción, acciones) 1 - sistemas que actúan como un ser humano “El arte de crear máquinas con capacidad de realizar funciones que realizadas por personas requieren de inteligencia” (Kurzweil, 1990) “El estudio de como lograr que las computadoras realicen tareas que, por el momento, los humanos hacen mejor.” (Rich y Knight, 1991) 2 - sistemas que piensan como humanos “la interesante tarea de lograr que las computadoras piensen... maquinas con mente, en su amplio sentido literal.” (Haugeland, 1985) “La automatización de actividades que vinculamos con procesos de pensamiento humano, actividades tales como toma de decisiones, resolución de problemas, aprendizaje...” (Bellman, 1978) 3 - sistemas que piensan racionalmente “El estudio de las facultades mentales mediante el uso de modelos computacionales.” (Charniak y McDermott, 1985). “El estudio de los cálculos que permiten percibir, razonar y actuar.” (Winston, 1992). 4 - sistemas que actúan racionalmente “Un campo de estudio que se enfoca a la explicación y emulación de la conducta inteligente en función de procesos computacionales” (Schalkoff, 1990). “La rama de la ciencia de la computación que se ocupa de la automatización de la conducta inteligente” (Luger y Stubblefield, 1993). Sistemas que actúan como humanos • El modelo es el hombre; el objetivo es construir un sistema que pase por humano. • Prueba de Turing (1950): si un sistema la pasa es inteligente. • Capacidades necesarias: – – – – procesamiento del lenguaje natural representación del conocimiento razonamiento aprendizaje • Pasar la Prueba no es el objetivo primordial de la IA. • La interacción de programas con personas hace que sea importante que éstos puedan actuar como humanos. La prueba de Turing el test de Turing idea: obtener una forma satisfactoria de definir la inteligencia operacionalmente. Definición de inteligencia de Turing: “la habilidad de obtener una performance de nivel humano en todas las tareas cognitivas de forma a engañar a un interrogador humano”. Sistemas que piensan como humanos • El modelo es el funcionamiento de la mente humana. • Se intenta establecer una teoría sobre el funcionamiento de la mente (experimentación psicológica). • A partir de la teoría se pueden establecer modelos computacionales. • Influencia de las neurociencias y de las ciencias cognitivas. ¿como piensa el ser humano? Los procesos cognitivos son estudiados a través de experimentos. Introspección Ciencias Cognitivas Neurociencias Psicología experimental El misterio de la conciencia • Si identificamos el núcleo cognitivo de la conciencia (que no es el simple conocimiento de nuestra existencia), ¿podemos incorporarlo en una máquina? • Las mayores religiones localizan la conciencia en un ánima que sobrevive a la muerte del cuerpo. • Woody Allen: “No quiero alcanzar la inmortalidad a través de mi obra. Quiero alcanzarla no muriéndome”. • Estas cuestiones, antes objeto solo de especulaciones teológicas, ahora son estudiadas por la neurociencia cognitiva. Problemas fáciles y difíciles • David Chalmers trata el tema de la conciencia en términos de dos problemas: – Problema Fácil: distinguir entre pensamiento consciente e inconsciente (Freud): • • • • • • superficies que tenemos delante planes para el día sueños con ojos abierto durante las clases control del latido del corazón reglas que ordenan las palabras cuando hablamos secuencias de contracciones musculares – Problema Difícil: explicar cómo puede nacer la experiencia subjetiva de la computación neuronal El cerebro como máquina • La “hipótesis asombrosa” de Francis Crick: – Nuestros pensamientos, sensaciones, alegrías, dolores consisten enteramente de actividad fisiológica en los tejidos del cerebro. • La conciencia es un producto biológico natural, tan vacía de elementos sobrenaturales como la digestión o la circulación de la sangre. sistemas que piensan racionalmente los humanos no son siempre racionales. Aristóteles fue el primero en intentar definir un proceso de raciocinio irrefutable. El desarrollo los silogismos Los silogismos establecen estructuras de argumentación que siempre llevan a conclusiones correctas, a partir de premisas correctas. “Sócrates es un hombre” “Todos los hombres son mortales” entonces “Sócrates es mortal”. sistemas que piensan racionalmente Esto inicio el campo de la lógica. Este campo fue expandido en el siglo XIX por Boole, Pascal, Bayes, etc. Existen dos problemas con este enfoque: Dificultad de definir el conocimiento informal y colocarlo en notación lógica (especialmente cuando el conocimiento no es 100% preciso). Existe una gran diferencia entre resolver un problema en la teoría y en la práctica. Sistemas que actúan racionalmente • • • • Actuar racionalmente significa conseguir unos objetivos dadas unas creencias. El paradigma es el agente racional, que se aplica, por ejemplo, a muchos sistemas robóticos. Un agente percibe y actúa, siempre teniendo en cuenta el entorno en el que está situado. Las capacidades necesarias: – – – – – • • percepción procesamiento del lenguaje natural representación del conocimiento razonamiento aprendizaje automático Visión de la actuación general y no centrada en el modelo humano Ejemplos: – Stanley (Grand challenge) – Asimo sistemas que actúan racionalmente Comportamiento racional: Cumplir los objetivos a partir de las informaciones disponibles. Un agente es algo o alguien que percibe y hace. El enfoque racional da énfasis a las inferencias correctas. Para actuar racionalmente, es necesario un proceso de inferencia racional. sistemas que actúan racionalmente La dificultad viene cuando no hay una probable acción correcta, pero una decisión debe ser tomada de todas maneras. Existen formas de actuar racionalmente que no necesitan inferencia. Sacar la mano de una hornalla. Pestañear cuando alguien pasa su mano cerca de nuestros ojos. ¿Es la IA posible? ¿Es la IA posible? • La posibilidad de la inteligencia artificial plantea problemas filosóficos complejos. • ¿Las máquinas pensantes poseen consciencia? • La habitación china (Searle, 1980) • ¿Es la inteligencia una propiedad emergente de los elementos biológicos que la producen? • No hay una conclusión definitiva. La habitación china Paradigmas de IA Simbólico: metáfora lingüística Ej.: Sistemas expertos, agentes, ... Conexionista: metáfora cerebral Ej.: Redes neuronales. Evolucionista: metáfora de la naturaleza Ej.: Algoritmos genéticos, vida artificial. Estadístico/Probabilístico/Posibilístico: Ej.: Redes Bayesianas, sistemas difusos. Paradigma Simbólico West es criminal o no? “La ley americana dice que esta prohibido vender armas a una nación hostil. Cuba posee algunos misiles y todos ellos fueron vendidos por el Capitán West, que es americano. El Capitán West vendió los misiles a un traficante de armas español, que se los vendió a Cuba” Como podemos resolver automáticamente este problema? Según la IA (simbólica), es necesario: ● ● ● Identificar el conocimiento del domínio. Representarlo utilizando un lenguaje formal. Implementar un mecanismo de inferencia para utilizar este conocimiento. Paradigma Conexionista Definición “Romántica”: Técnica inspirada en el funcionamiento del cerebro, donde las neuronas artificiales, conectadas en una red, son capaces de aprender y de generalizar. Definición “Matemática”: Técnica de aproximación de funciones por regresión no lineal. Paradigma Conexionista Paradigma Evolucionista Evolución La diversidad es generada por cruzamiento y mutaciones. Los seres mas adaptados a sus ambientes sobreviven (selección natural). Las características genéticas de tales seres son heredadas por las próximas generaciones. Paradigma Evolucionista Definición: Método probabilístico de búsqueda para la resolución de problemas (optimización) “inspirado” en la teoría de la evolución. Idea: Hacer evolucionar un conjunto de individuos mas adaptados por cruzamiento a través de sucesivas generaciones. Paradigma Estatístico/Probabilístico/Posibilístico Probabilidades Razonamiento con Incertidumbre Posibilidades Razonamiento con Imprecisión Fundamentos Filosofía Matemática Lógica Psicología Lingüística Ingeniería computacional Fundamentos de la IA • Filosofía. Debate sobre la posibilidad de una inteligencia mecánica: • Descartes, Leibniz: la mente está ligada al mundo físico. • John Locke: en el principio fue la Mente (1690). • Hume (1779), Russell: el conocimiento es fruto de la percepción, se adquiere por la experiencia (inducción) y está representado por teorías lógicas. • Darwin (1857): destrucción del ex nihilo nihil fit a través de la teoría de la evolución por selección natural. Fundamentos de la IA • Matemáticas. Las bases filosóficas necesitan reglas formales: • Boole, Frege: fundamentos de la lógica matemática. • Gödel, Turing: límites de lo computable (teorema de incompletitud). • Fermat, Bernoulli, Bayes: probabilidad, razonamiento probabilístico. Fundamentos de la IA • Psicología cognitiva. Teorías sobre la conducta, bases del comportamiento racional: • Representación de los estímulos externos • Manipulación consciente de la representación • Actuación consecuente Fundamentos de la IA • Ingeniería computacional: • Para la existencia de la IA es necesario un mecanismo para soportarlo (hardware). • También son necesarias herramientas para desarrollar programas de IA. • Lingüística computacional: • Chomsky: representación del conocimiento, gramática de la lengua. agenda PARTE 1 Que es la Inteligencia Artificial Paradigmas de IA Fundamentos PARTE 2 Historia Áreas de la IA Algunas Aplicaciones Historia http://en.wikipedia.org/wiki/History_of_artificial_intelligence http://library.thinkquest.org/2705/history.html http://www.aaai.org/AITopics/pmwiki/pmwiki.php/AITopics/BriefHistory Historia – intentos La historia original, publicada por Mary Shelley en 1818, describe el intento del Dr. Frankenstein, de crear vida. Historia de la IA Los inicios (1943-1956) • McCulloch y Pitts: primer modelo de neurona, demostración de que cualquier función es computable por una red de neuronas, aprendizaje • Hebb: regla de aprendizaje Hebbiano o de Hebb • Minsky, Edmonds: primer simulador de red neuronal (40 neuronas) • Taller de Dartmouth (bautizo de la IA): McCarthy, Minsky, Shannon, Rochester, More, Samuel, Solomonoff, Selfridge, Newell, Simon • Newell, Simon: Teórico Lógico (TL) el nacimiento de la IA Dartmouth Conference (1956) Organizada por John McCarthy para establecer una nueva área para estudiar computación y la inteligencia. John McCarthy bautiza el área introduciendo el término “artificial intelligence” durante la conferencia. Los siguientes 20 años testimonian el crecimento del área, siendo conducido por los pioneros que participaron en esta conferencia. entusiasmo inicial (1952-1969) Alan Newell y Herbert Simon desarrollaron el “General Problem Solver” (GPS) Proyectado para imitar protocolos humanos de resolución de problemas. El GPS fue el primer programa en incorporar el enfoque: “Pensar como humanos”. Arthur Samuel (1952) escribió una serie de programas para jugar damas y probo lo contrario al sentido común de la época: “la idea que las computadores podían hacer solamente lo ordenado” Sus programas aprendían rápidamente a jugar mejor que su creador. Herbert Gelernter (1959) – Geometry Theorem Prover Desarrolló un demostrador de teoremas entusiasmo inicial (1952-1969) McCarthy (1958) desarrolló el LISP, que se tornó el lenguaje dominante en la IA. Robinson (1963) descubrió el método de resolución. Minsky supervisó a una serie de estudiantes que eligieron problemas limitados, que parecían requerir inteligencia para ser resueltos. Historia de la IA La dura realidad (1966-1973) • Muchos sistemas de IA actuaban de manera prometedora en problemas sencillos y fallaban ante problemas reales. • Muchos problemas eran intratables (NP); el tamaño del problema es relevante. • La búsqueda exhaustiva es impracticable. • Minsky, Papert: en Perceptrons se demuestra la escasa capacidad de representación de los perceptrones. ELIZA (1966) • Conversación con ELIZA -> Hello. I am ELIZA. How can I help you? +> I am feeling sad. -> I am sorry to hear you are sad. +> I had some nightmares tonight. -> You say you had some nightmares tonight. +> Yes, my dreams are worrying me. -> What does that dream suggest to you? +> Thrill, scare. -> I am not sure I understand you fully. +> My dreams annoy me. -> Do you dream often? +> Yes, daily. Historia de la IA Los sistemas basados en el conocimiento (1969-1979) • Los mecanismos generales de resolución de problemas no son practicables (métodos débiles). • DENDRAL: el conocimiento del dominio del problema ayuda a resolverlo mejor. • Sistemas Expertos (MYCIN, PROSPECTOR): incertidumbre, factores de certeza • Representación del conocimiento y razonamiento (redes semánticas, marcos, Prolog, ontologías) Renacimento (1969 – 1979) 1971: T. Winograd’s Ph.D. thesis (MIT) crea un sistema capaz de comprender ingles en un dominio reducido. 1972: nace PROLOG y se torna una alternativa al LISP. Renascimento (1969 – 1979) 1978: El Version Space algorithm fue desarrollado por Tom Mitchell en Stanford. Primer algoritmo de aprendizaje. Es considerado el padre del “Machine Learning”. 1979: Lógicas no-monótonas. Formalizadas por John McCarthy y sus colegas. Historia de la IA La IA se industrializa (1980 hasta el presente) • El éxito de los sistemas expertos lleva a su uso comercial: R1, XCON (sistema de configuración en Digital Equipment Corporation). • Japoneses: quinta generación de ordenadores • Estadounidenses: MCC • Software para el desarrollo de la IA • Máquinas de arquitectura dedicada Eventos recientes (1987-1995-2000-hoy) Avances y utilización de tecnología para el reconocimiento de imágen, voz y sonido. Belief networks, "probabilidades" que permiten formalismo para tratar incertidumbre. Desarrollo de mecanismos lógicos para tratar incertidumbre. Ej.: lógica difusa, lógica modal, etc. IA en la actualidad • RAZONAMIENTO: – Satisfacción de restricciones – Búsqueda heurística – Razonamiento basado en modelos – Razonamiento no monotónico – Planificación de tareas y scheduling – Razonamiento cualitativo – Razonamiento con incertidumbre – Razonamiento temporal y espacial IA en la actualidad • APRENDIZAJE AUTOMÁTICO: – Razonamiento basado en casos – Análisis de datos – Computación evolutiva – Redes de neuronas – Aprendizaje por refuerzo IA en la actualidad • INGENIERÍA DEL CONOCIMIENTO Y APLICACIONES: – Lógica – Sistemas de apoyo a la decisión – Interacción hombre-máquina inteligente – Gestión del conocimiento – Representación del conocimiento – Ontologías y Web semántica – Sistemas multi-agente e IA distribuida IA en la actualidad • ROBÓTICA, PERCEPCIÓN, PROCESAMIENTO DEL LENGUAJE NATURAL: – Robótica y control – Procesamiento del lenguaje natural – Percepción (visión, reconocimiento del habla) – Creatividad, juegos, inteligencia ambiental agenda PARTE 1 Introducción Que es la Inteligencia Artificial? Paradigmas de IA Fundamentos PARTE 2 Historia Áreas de la IA ( <<<<) Algunas Aplicaciones Redes Neuronales Razonamiento basado en casos Agentes Inteligentes Computación Evolutiva Razonamiento basado con reglas otros Lógica difusa Robótica Lenguaje natural agenda PARTE 1 Introducción Que es la Inteligencia Artificial? Paradigmas de IA Fundamentos PARTE 2 Historia Áreas de la IA Algunas Aplicaciones ( <<<< ) Deep Blue Deep Blue vs Kasparov En 1997 la Deep Blue venció al gran maestro Garry Kasparov un antecedente de la Deep Blue 1915 automata – electromagnetico – 1 rey y 1 torre contra 1 rey http://en.wikipedia.org/wiki/El_Ajedrecista control de tráfico aéreo OASIS – es un sofisticado sistema de control de tráfico aéreo basado en el paradigma multiagente, utilizado en el aeropuerto de Sydney, Australia para ayudar al director de trafico a tomar sus decisiones Robots – Dante II 1994 Dante II (CMU) explora el volcán Mt. Spurr (Aleutian Range, Alaska). Un ambiente inhóspito para humanos. Búsqueda en la Web ¿como hacer para localizar rápidamente la información relevante? Recomendación de productos ¿Como hacer recomendaciones personalizadas de productos? ¿Como modelar el perfil de los compradores? Predecir comportamientos Como predecir el valor del dólar (o del clima) de mañana? Que datos son relevantes? Hay comportamientos recurrentes? Detección de intrusos y filtrado de Spam Sistemas de Control ¿Como detener un coche sin que las ruedas se bloqueen? ¿Como enfocar una cámara en función de la luminosidad, distancia, etc.? ¿Como determinar el tiempo y el programa del lavado a partir de la ropa que se ha introducido? ¿que tienen en común problemas? Una enorme complejidad (número de variables, variedad y naturaleza de las tareas). A veces no hay una “solución algorítmica”, pero si existe conocimiento para resolverlo. Modelado del comportamiento de un ser inteligente (conocimiento, aprendizaje, iniciativa, sentido común, etc.) Lectura sugerida LIBROS Russel, Norvig, Artificial Intelligence: A Modern Approach, Cap. 1. ARTICULOS John McCarthy. What is artificial intelligence?. http://www-formal.stanford.edu/jmc/whatisai.html Alan Turing "Computing Machinery and Intelligence" http://cogprints.org/499/0/turing.html Fin gracias Eduardo Fermé actualizado por Ariel Aizemberg (marzo/2010)