Fundamentos de La Inteligncia Artificial

12
HISTORIA Y EVOLUCIÓN DE LA INTELIGENCIA ARTIFICIAL La Inteligencia Artificial "nació" en 1943 cuando Warren McCulloch y Walter Pitts propusieron un modelo de neurona del cerebro humano y animal. Estas neuronas nerviosas abstractas proporcionaron una representación simbólica de la actividad cerebral. Más adelante, Norbert Wiener elaboró estas ideas junto con otras, dentro del mismo campo, que se llamó "cibernética"; de aquí nacería, sobre los años 50, la Inteligencia Artificial. Los primeros investigadores de esta innovadora ciencia, tomaron como base la neurona formalizada de McCulloch y postulaban que: "El cerebro es un solucionador inteligente de problemas, de modo que imitemos al cerebro". Pero si consideramos la enorme complejidad del mismo esto es ya prácticamente imposible, ni que mencionar que el hardware de la época ni el software estaban a la altura para realizar semejantes proyectos. Se comenzó a considerar el pensamiento humano como una coordinación de tareas simples relacionadas entre sí mediante símbolos. Se llegaría a la realización de lo que ellos consideraban como los fundamentos de la solución inteligente de problemas, pero lo difícil estaba todavía sin empezar, unir entre sí estas actividades simples. Es en los años 50 cuando se logra realizar un sistema que tuvo cierto éxito, se llamó el Perceptrón de Rossenblatt. Éste era un sistema visual de reconocimiento de patrones en el cual se asociaron esfuerzos para que se pudieran resolver una gama amplia de problemas, pero estas energías se diluyeron enseguida. Fue en los años 60 cuando Alan Newell y Herbert Simon, que trabajando la demostración de teoremas y el ajedrez por

description

teoría del fundamento de la inteligencia artificial

Transcript of Fundamentos de La Inteligncia Artificial

HISTORIA Y EVOLUCIN DE LA INTELIGENCIA ARTIFICIALLa Inteligencia Artificial "naci" en 1943 cuando Warren McCulloch y Walter Pitts propusieron un modelo de neurona del cerebro humano y animal. Estas neuronas nerviosas abstractas proporcionaron una representacin simblica de la actividad cerebral.Ms adelante, Norbert Wiener elabor estas ideas junto con otras, dentro del mismo campo, que se llam "ciberntica"; de aqu nacera, sobre los aos 50, la Inteligencia Artificial.Los primeros investigadores de esta innovadora ciencia, tomaron como base la neurona formalizada de McCulloch y postulaban que:"El cerebro es un solucionador inteligente de problemas, de modo que imitemos al cerebro".Pero si consideramos la enorme complejidad del mismo esto es ya prcticamente imposible, ni que mencionar que el hardware de la poca ni el software estaban a la altura para realizar semejantes proyectos.Se comenz a considerar el pensamiento humano como una coordinacin de tareas simples relacionadas entre s mediante smbolos. Se llegara a la realizacin de lo que ellos consideraban como los fundamentos de la solucin inteligente de problemas, pero lo difcil estaba todava sin empezar, unir entre s estas actividades simples.Es en los aos 50 cuando se logra realizar un sistema que tuvo cierto xito, se llam el Perceptrn de Rossenblatt. ste era un sistema visual de reconocimiento de patrones en el cual se asociaron esfuerzos para que se pudieran resolver una gama amplia de problemas, pero estas energas se diluyeron enseguida.Fue en los aos 60 cuando Alan Newell y Herbert Simon, que trabajando la demostracin de teoremas y el ajedrez por ordenador logran crear un programa llamado GPS (General Problem Solver: solucionador general de problemas). ste era un sistema en el que el usuario defina un entorno en funcin de una serie de objetos y los operadores que se podan aplicar sobre ellos. Este programa era capaz de trabajar con las torres de Hanoi, as como con criptoaritmtica y otros problemas similares, operando, claro est, con microcosmos formalizados que representaban los parmetros dentro de los cuales se podan resolver problemas. Lo que no poda hacer el GPS era resolver problemas ni del mundo real, ni mdicos ni tomar decisiones importantes. El GPS manejaba reglas heursticas (aprender a partir de sus propios descubrimientos) que la conducan hasta el destino deseado mediante el mtodo del ensayo y el error.En los aos 70, un equipo de investigadores dirigido por Edward Feigenbaum comenz a elaborar un proyecto para resolver problemas de la vida cotidiana o que se centrara, al menos, en problemas ms concretos. As es como naci el sistema experto.El primer sistema experto fue el denominado Dendral, un intrprete de espectrograma de masa construido en 1967, pero el ms influyente resultara ser el Mycin de 1974. El Mycin era capaz de diagnosticar trastornos en la sangre y recetar la correspondiente medicacin, todo un logro en aquella poca que incluso fueron utilizados en hospitales (como el Puff, variante de Mycin de uso comn en el Pacific Medical Center de San Francisco, EEUU).Ya en los aos 80, se desarrollaron lenguajes especiales para utilizar con la Inteligencia Artificial, tales como el LISP o el PROLOG. Es en esta poca cuando se desarrollan sistemas expertos ms refinados, como por el ejemplo el EURISKO. Este programa perfecciona su propio cuerpo de reglas heursticas automticamente, por induccin.Desarrollo Histrico (segn Jackson, 1986)1950-1965 Periodo "clsico" Gestacin (McColluck y Pitts, Shannon, Turing) Inicio - reunin de Darmouth College en 1956 (Minsky, McCarthy) Redes neuronales, robtica (Shakey) Bsqueda en un espacio de estados, Heursticas, LISP Solucionador general de problemas (GPS) (Newell, Simon) Juegos, prueba de teoremas Limitaciones de pura bsqueda, explosin combinatoria.1965-1975 Periodo "romntico" Representacin "general" del conocimiento. Redes semnticas (Quillian) Prototipos (frames) (Minsky) Perceptrn (Minsky y Papert) Lgica (Kowalski) Mundo de bloques (SHDRLU) (Winograd) Compresin de lenguaje, visin, robtica. Dificultades de representacin "general", problemas de "juguete".1975-Hoy Periodo "moderno". Inteligencia "especifica" vs. "general" Representacin explcita del conocimiento especfico del dominio. Sistemas expertos o basados en conocimiento. Regreso de redes neuronales (Hopfield, Rumelhart, Hinton), algoritmos genticos (Holland, Goldberg) Reconocimiento de voz (HMM), incertidumbre (RB, Lgica difusa), planeacin, aprendizaje. Aplicaciones "reales" (medicina, finanzas, ingeniera, exploracin, etc.). Limitaciones: conocimiento "superficial"Desarrollo Histrico (segn Russell y Norvig, 1995):Gestacin (1943-1956): McCullock y Pitts (1943) Hebb (1949) Shannon (1950) Turing (1953) Minsky y Edmonds (1951) Darmouth College (1956) McCarthy, Newell y Simon, The Logic TheoristEntusiasmo y grandes expectativas (1952-1969): Samuel - checkers (1952) McCarthy (1958): LISP: time sharing, Programs with common sense. Minsky y McCarthy en MIT moldearon mucho del rea. Minsky, Evans, Student, Waltz, Winston, Winograd, etc. Trabajo en RN: Hebb, Widrow, RosenblattDosis de realidad (1966-1974): Simon predeca que en 10 aos se tendra una mquina inteligente. Predicciones similares en traduccin automtica y ajedrez. Teora de NP- completness. Experimentos en machine evolution (ahora algoritmos genticos; estaban bien fundados pero no produjeron nada.) (Friedberg, 1958) Minsky y Papert Perceptrons (1969) (aunque irnicamente el mismo ao se descubri backpropagation (Bryson y Ho))Sistemas basados en conocimiento (1969-1979): Dendral, Mycin, HPP, Prospector, Winograd, SHDRLU, Shank (no hay sintxis), frames, Prolog, PlannerIA como industria (1980-1988): R1/XCON, proyecto de la quinta generacin, shells y mquinas de LISP.Regreso de redes neuronales (1986-presente): Hopfield, Rumelhart y Hinton y descenso de los SEEventos recientes (1987-presente): Cambio gradual hacia los tcnicos y lejos de los rudos (implica cierto grado de madurez y estabilidad) ej., reconocimiento de voz (HMM), incertidumbre (Bayes), planeacin (Tweak), robtica, aprendizaje (PAC), etc.

1.1. Historia de la IA.La Inteligencia Artificial surge definitivamente a partir de algunos trabajos publicados en la dcada de 1940 que no tuvieron gran repercusin, pero a partir del influyente trabajo en 1950 de Alan Turing, matemtico britnico, se abre una nueva disciplina de las ciencias de la informacin.

Si bien las ideas fundamentales se remontan a la lgica y algoritmos de los griegos, y a las matemticas de los rabes, varios siglos antes de Cristo, el concepto de obtener razonamiento artificial aparece en el siglo XIV. A finales del siglo XIX se obtienen lgicas formales suficientemente poderosas y a mediados del siglo XX, se obtienen mquinas capaces de hacer uso de tales lgicas y algoritmos de solucin.

En su histrico artculo de 1950, Turing propuso que la pregunta puede pensar una mquina? era demasiado filosfica para tener valor y, para hacerlo ms concreto, propuso un juego de imitacin. En la prueba de Turing intervienen dos personas y una computadora. Una persona, el interrogador, se sienta en una sala y teclea preguntas en la terminal de una computadora. Cuando aparecen las respuestas en la terminal, el interrogador intenta determinar si fueron hechas por otra persona o por una computadora. Si acta de manera inteligente, segn Turing es inteligente. Turing, seal que una mquina podra fracasar y an ser inteligente. Aun as crea que las mquinas podran superar la prueba a finales del siglo XX.

De todas maneras esta prueba no tuvo el valor prctico que se esperaba, aunque sus repercusiones tericas son fundamentales. El enfoque de Turing de ver a la inteligencia artificial como una imitacin del comportamiento humano no fue tan prctico a lo largo del tiempo y el enfoque dominante ha sido el del comportamiento racional, de manera similar, en el campo de la aeronutica se dej de lado el enfoque de tratar de imitar a los pjaros y se tom el enfoque de comprender las reglas de aerodinmica. Aunque desde luego, el enfoque del comportamiento humano y el del pensamiento humano siguen siendo estudiados por las ciencias cognitivas y continan aportando interesantes resultados a la Inteligencia Artificial, y viceversa.

1.2. Conceptos y tcnicas (Estado del arte) .

ConceptosSe define la Inteligencia Artificial como aquella inteligencia exhibida por artefactos creados por humanos (es decir, artificial). A menudo se aplica hipotticamente a los computadores. El nombre tambin se usa para referirse al campo de la investigacin cientfica que intenta acercarse a la creacin de tales sistemas. La Inteligencia Artificial trata de conseguir que los ordenadores simulen en cierta manera la inteligencia humana. Se acude a sus tcnicas cuando es necesario incorporar en un sistema informtico, conocimiento o caractersticas propias del ser humano.La Inteligencia Artificial ha tenido gran auge en nuestros das, teniendo aplicabilidad en la informtica, la ciencia, la salud y otros campos. Ha sido un gran reto tratar de acercar la mente de una mquina al pensamiento humano, y sin dudar que en un futuro no muy lejano no sepamos distinguir si estamos en presencia de una Inteligencia Artificial o una verdadera mente humana.TcnicasA medida que los juegos de vdeos fueron evolucionando, y fueron surgiendo nuevos gneros la necesidad de tcnicas de Inteligencia Artificial fue aumentando en gran medida.

Uno de los principales objetivos de un juego de vdeo es ofrecer retos al usuario, esto se logra introduciendo tcnicas de Inteligencia Artificial, ya que ellas son las que deciden cules son las mejores opciones que pueden tomar los elementos del juego de vdeo a partir de las condiciones del entorno que los rodea. Las tcnicas que se utilizan para un juego de vdeo dependen mucho del tipo de juego de vdeo que estemos diseando.

Este Procesamiento del Lenguaje Natural, depende de la lingstica computacional. Por ello, se le atribuyen numerosas aplicaciones, como: indizacin y traduccin automtica (empleando el lenguaje natural como punto de partida), creacin de resmenes de textos, respuesta a preguntas (comunicacin hombre - mquina) o reconocimiento del habla (verificacin del lenguaje natural) entre otras.

1.3. Desarrollos actuales.En cuanto al desarrollo actual de la investigacin en el campo de los sistemas expertos, la primera fase corresponde al desarrollo de sistemas y programas que traten directamente el lenguaje natural, si bien persisten todava dos escollos importantes. Por un lado, el problema de cmo emplear de un modo eficaz una gran cantidad de informacin sin necesidad de echar mano de la combinatoria; es decir, cmo conseguir un sistema dotado de conocimientos (metaconocimientos) que le permitan utilizar los conocimientos del sistema y que, a su vez, le permitan deducir automticamente nuevos conocimientos, ya que no cabe pensar en la reunin de todos los conocimientos necesarios en casos de campos tan sumamente vastos como el del diagnstico en la medicina.1.3.1. Procesamiento de Lenguaje Natural (PLN).El Procesamiento de Lenguaje Natural, es una rama dependiente de la Inteligencia artificial. El PLN, se encarga de desarrollar la comunicacin entre hombres y mquinas de tal manera que esta pueda realizarse de un modo natural, es decir, como si fuese una comunicacin entre humanos.1.3.2. Reconocimiento de patrones.Es la asociacin de una observacin, a una experiencia pasada o conocimiento. Para el ser humano, ciertas tareas de R.P. son naturales y las llevamos a cabo en todo momento: cuando reconocemos la voz de un conocido en una conversacin telefnica, al recordar la cara de alguien al escuchar su nombre, cuando resolvemos las tareas cotidianas de cada una de nuestras profesiones en las que aplicamos una solucin dada a un problema especfico y al recordar el telfono de un amigo, sin embargo, existen algunas tareas que no son para nosotros tan naturales yfcilescomo predicciones ssmicas y predicciones de financieras entre otras.En el R.P., se llevan a cabo bsicamente dos tipos de tareas de las cuales parten todas las tareas que se puedan imaginar, es decir, todas las tareas que se resuelvan en R.P. son casos especiales o se pueden categorizar como uno de estos dos tipos: Clasificacin y Estimacin.1.3.3. Robtica.La robtica es la ciencia y la tecnologa de los robots. Se ocupa del diseo, manufactura y aplicaciones de los robots La robtica combina diversas disciplinas como son: la mecnica, la electrnica, la informtica, la inteligencia artificial y la ingeniera de control. Otras reas importantes en robtica son el lgebra, los autmatas programables y las mquinas de estados.1.3.4. Sistemas Expertos.En los aos 70 que surgi un nuevo paradigma en la Inteligencia Artificial los Sistemas Expertos, cuya funcin es desarrollar trabajos similares a los que desarrollara un especialista en un rea determinada, la idea no es sustituir a los expertos, sino que estos sistemas sirvan de apoyo a los especialistas en un dominio de aplicacin especfico.Estos sistemas expertos son en lo esencial sistemas de computacin basados en conocimientos cuyos componentes representan un enfoque cualitativo de la programacin. Muchas personas pueden creer que un Sistema Experto (SE) es un sistema compuesto por subsistemas y a su vez estos por otros subsistemas hasta llegar a los programas, y que los SE se miden por la cantidad de programas que contienen. Sin embargo la cantidad no es lo que prima en los SE, si no la cualidad del mismo, esta cualidad est dada por la separacin de las reglas que describen el problema (Base de Conocimientos), del programa de control que es quien selecciona las reglas adecuadas (Motor de inferencias).Podemos decir que un Sistema Experto es una Base de Conocimientos (BC), una Base de Hechos (BH) y un Motor (o Mquina) de Inferencias (MI). Por otra parte estos sistemas no se miden por la cantidad de instrucciones o programas sino por la cantidad de reglas que hay contenida en su Base de Conocimientos.Para desarrollar los sistemas expertos primero es necesario abordar un rea de inters, dentro de esta rea se seleccionan a los expertos, que son los especialistas capaces de resolver los problemas en dicha rea. Por ejemplo el rea de inters de las empresas de proyectos, son precisamente los proyectos y un especialista podra ser un arquitecto, un ingeniero civil, etc. Ahora bien, casi siempre estos especialistas, son expertos en un dominio especfico y es sobre este dominio, donde poseen su mayor experiencia (Dominio de Experticidad), por ejemplo un Ing. civil especializado en cimientos.Una vez seleccionado al experto o a los expertos y estos estn de acuerdo en dar sus conocimientos, comienza a jugar su papel el Ingeniero de Conocimientos, que es el encargado de extraerle los conocimientos al experto y darle una representacin adecuada, ya sea en forma de reglas u otro tipo de representacin, conformando asi la base de conocimientos del sistema experto.Formas de representacin de los conocimientos: Reglas de produccin Redes semnticas Marcos (Frames).

1.3.5. Lgica Difusa (Fuzzy logic).

La lgica difusa es una herramienta de gran potencial para el desarrollo de nuevos mtodos o tcnicas de la Inteligencia Artificial. Como habamos mencionado anteriormente este tipo de lgica permite valores intermedios para poder definir estados convencionales como s/no, verdadero/falso, negro/blanco, etc. Este tipo de nociones como ms caliente o poco fro pueden expresarse matemticamente y ser procesados por computadoras. Al hacer esto se esta realizado el intento de aplicar la forma del pensamiento humano a la programacin de computadoras, que es lo que busca la inteligencia artificial con sus aplicaciones en diferentes sistemas.

1.4. Modelos de agente inteligente.Un agente inteligente, es una entidad capaz de percibir su entorno, procesar tales percepciones y responder o actuar en su entorno de manera racional, es decir, de manera correcta y tendiendo a maximizar un resultado esperado. En este contexto la racionalidad es la caracterstica que posee una eleccin de ser correcta, ms especficamente, de tender a maximizar un resultado esperado. Este concepto de racionalidad es ms general y por ello ms adecuado que inteligencia (la cual sugiere entendimiento) para describir el comportamiento de los agentes inteligentes. Por este motivo es mayor el consenso en llamarlos agentes racionales. Un agente inteligente puede ser una entidad fsica o virtual. Si bien el trmino agente racional se refiere a agentes artificiales en el campo de la Inteligencia Artificial, tambin puede considerarse agentes racionales a los animales incluido el hombre.Es posible clasificar los agentes inteligentes en 5 categoras principales:- Agentes reactivos- Agentes reactivos basados en modelo- Agentes basados en objetivos- Agentes basados en utilidad- Agentes que aprenden

La racionalidad es necesaria En muchos textos se define agente inteligente como todo agente capaz de tener conciencia de su entorno y actuar sobre l. No obstante es necesario exigir que estas decisiones sean racionales en el sentido de que persigan algn fin. Vamos a mostrarlo con un contraejemplo: cuando un fotn con la suficiente energa incide sobre un tomo, puede arrancar de l un electrn. Podramos considerar al tomo inteligente puesto que percibe su entorno (la incidencia del fotn) y acta sobre su entorno (emite un electrn). La ausencia de relacin entre la emisin del electrn y cualquier hipottico inters del tomo muestra que este no es un agente inteligente pese a verificar la definicin de Bertrand Russell.

La conducta de un agente no suele ser la ptima.

Paradjicamente, la conducta de un agente rara vez es la optima. La razn es muy sencilla calcular el optimo de un criterio lo suficientemente bueno para ser considerado razonable teniendo en cuenta las mltiples restricciones que concurren es muy difcil. Ejemplos de ello es lo difcil que es calcular la mejor ala para un avin, el mejor perfil para un coche o la mejor hlice para un barco. Para un estudiante es fcil calcular el mximo de un polinomio de segundo grado derivando e igualando a cero. En este caso el criterio es muy sencillo -es un polinomio de segundo grado- y no concurre ninguna restriccin.

Cuando el criterio es una funcin real de muchas variables y las restricciones tambin, los clculos son mucho ms complicados. Algunas veces se puede lograr una buena aproximacin; pero, si un agente inteligente debe tomar una decisin en muy poco tiempo, deber conformarse con la mejor aproximacin que pueda calcular en el escaso tiempo de que dispone.1.5. Heurstica.Las funcione heursticas son la forma ms comn de transmitir el conocimiento tradicional del problema al algoritmo de bsqueda.La capacidad heurstica consiste en la capacidad de realizar innovaciones positivas para conseguir los fines que se pretenden.En las ciencias de la computacin, el mtodo heurstico es usado en determinadas circunstancias, cuando no existe una solucin ptima bajo las restricciones dadas. En general la manera de actuar de los programas heursticos consiste en encontrar algoritmos con buenos tiempos de ejecucin y buenas soluciones.Dadas las caractersticas de la heurstica, sta es muy usada en juegos informticos que se adelantan a lo que va a hacer el usuario basndose en la experiencia y los pasos que ha seguido en otras ocasiones.Muchos algoritmos en la inteligencia artificial son heursticos por naturaleza, o usan reglas heursticas. Un ejemplo claro son los programas que detectan si un correo electrnico es o no spam. Cualquiera de las reglas usadas de forma independiente pueden llevar a errores de clasificacin, pero cuando se unen mltiples reglas heursticas, la solucin es ms robusta y creble.