UNIDAD I FUNDAMENTOS

UNIDAD I FUNDAMENTOS
CREADO POR: ABRAHAM HERNANDEZ MAR

lunes, 30 de agosto de 2010

1.1 El propósito de la IA y su evolución histórica

La finalidad de la inteligencia artificial consiste en crear teorías y modelos que muestren la organización y funcionamiento de la inteligencia. Actualmente, el mayor esfuerzo en la búsqueda de la inteligencia artificial se centra en el desarrollo de sistemas de procesamientos de datos que sean capaces de imitar a la inteligencia humana, realizando tareas que requieran aprendizaje, solución de problemas y decisiones. A veces llamada inteligencia de máquina, la inteligencia artificial o AI (Artificial Intelligence) cubre una vasta gama de teorías y prácticas.

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 ordenador logran crear un programa llamado GPS (General Problem Solver: solucionador general de problemas). Éste era un sistema en el que el usuario definía un entorno en función de una serie de objetos y los operadores que se podían aplicar sobre ellos. Este programa era capaz de trabajar con las torres de Hanoi, así como con criptoaritmética y otros problemas similares, operando, claro está, con microcosmos formalizados que representaban los parámetros dentro de los cuales se podían resolver problemas. Lo que no podía hacer el GPSera resolver problemas ni del mundo real, ni médicos ni tomar decisiones importantes. El GPS manejaba reglas heurísticas (aprender a partir de sus propios descubrimientos) que la conducían hasta el destino deseado mediante el método del ensayo y el error.
En los años 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 más concretos. Así es como nació el sistema experto.

El primer sistema experto fue el denominado Dendral, un intérprete de espectrograma de masa construido en 1967, pero el más influyente resultaría ser el Mycin de 1974. El Mycin era capaz de diagnosticar trastornos en la sangre y recetar la correspondiente medicación, todo un logro en aquella época que incluso fueron utilizados en hospitales (como el Puff, variante de Mycin de uso común en el Pacific Medical Center de San Francisco, EEUU).

Ya en los años 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 más refinados, como por el ejemplo el EURISKO. Este programa perfecciona su propio cuerpo de reglas heurísticas automáticamente, por inducción.

1.2 Las habilidades cognoscitivas según la psicología. Teorías de la inteligencia (conductismo, Gardner)

Son las facilitadoras del conocimiento, aquellas que operan directamente sobre la información: recogiendo, analizando, comprendiendo, procesando y guardando información en la memoria, para, posteriormente, poder recuperarla y utilizarla dónde, cuándo y cómo convenga. En general, son las siguientes:

1. Atención: Exploración, fragmentación, selección y contradistractoras.

2. Comprensión (técnicas o habilidades de trabajo intelectual): Captación de ideas, subrayado, traducción a lenguaje propio y resumen, gráficos, redes, esquemas y mapas conceptuales. A través del manejo del lenguaje oral y escrito (velocidad, exactitud, comprensión).

3. Elaboración: Preguntas, metáforas, analogías, organizadores, apuntes y mnemotecnias.

4. Memorización / Recuperación (técnicas o habilidades de estudio): Codificación y generación de respuestas.

1.3 El proceso de razonamiento según la lógica (axiomas, teoremas, demostración)

Axioma.

Proposición tan clara y evidente que se admite sin necesidad de demostración. Cada uno de los principios fundamentales e indemostrables sobre los que se construye una teoría.

Ejemplo:

1+1=2

A es hermano de B
C es hijo de A

Entonces podemos decir que B es tío de C, o bien C es sobrino de B

Teorema

Proposición demostrable lógicamente partiendo de axiomas o de otros teoremas ya demostrados, mediante reglas de inferencia aceptadas.

Axiomas sobre alumno:

- Estudia
- Realiza tareas
- Participa
- Programa

Demostración

Demostración matemática, argumento utilizado para mostrar la veracidad de una proposición matemática.

En las matemáticas modernas una demostración comienza con una o más declaraciones denominadas premisas, y prueba, utilizando las reglas de la lógica, que si las premisas son verdaderas, entonces una determinada conclusión debe ser también cierta.

Comprobación, por hechos ciertos o experimentos repetidos, de un principio o de una teoría.

Tablas de verdad de la lógica: conjunción, disyunción, implicación, negación y condicional.

1.4 El modelo de adquisición del conocimiento según la filosofía

La metodologia Common KADS, como cualquier otra ofrece una aproximacion para resolver los probelmas inherentes a la ingenieria del conocimiento provenientes de la experiencia y apoyados por los fundamentos de la ingeniería del software.

Como se ha mencionado anteriormente, la ingeniería del conocimiento debe hacer frente a la recopilación de datos, dar forma a la información y generar más conocimiento.

Todo ello dentro de un determinado ámbito de aplicación o línea de negocio empresarial, que debe plasmarse en una realidad.

Modelo de organización: soporta el análisis de las características principales de una organización, con el fin de descubrir problemas y oportunidades para sistemas de conocimiento, establecer su viabilidad y ponderar los impactos en la organización de las acciones del conocimiento.

Modelo de tarea: es la parte relevante de un modelo de negocio. Analiza la tarea global, sus entradas y salidas, precondiciones y criterios de realización, así como recursos necesarios y competencias.

Modelo de agente: los agentes son los ejecutores de una tarea. Un agente puede ser humano, un sistema de información, o cualquier otra entidad capaz de llevar a cabo una tarea.

El modelo de agente describe las características de los agentes, en particular sus competencias, autoridad para actuar y restricciones en este aspecto. Además, relaciona los enlaces de comunicación entre agentes a la hora de llevar a cabo una tarea.

Modelo de conocimiento: el propósito de este es explicar los tipos y estructuras de conocimiento utilizados para llevar a cabo una tarea. Proporciona una descripción independiente de la implementación del papel que diferentes componentes de conocimiento juegan en la resolución de problemas, de forma que es comprensible por los humanos. Estohace que el conocimiento sea un vehículo importante para la comunicación con los expertos y los usuarios sobre los aspectos relativos a la solución de problemas de un sistema de conocimiento tanto durante el desarrollo como durante la ejecución del sistema.

Modelo de comunicación: dado que varios agentes pueden verse involucrados en una tarea, es importante modelar las transacciones entre los agentes implicados, esto se realiza mediante el modelo de comunicación, como sucedía en el modelo de conocimiento.

Modelo de diseño: los modelos anteriores juntos pueden verse como constituyendo la especificación de los requisitos para el sistema de conocimiento, desde diferentes aspectos, Basados en los aspectos, el modelo de diseño proporciona la especificación técnica del sistema en términos de arquitectura, plataforma de implementación, módulos de software, construcciones de representación y mecanismos de computación requeridos para implementar las funciones propuestas en los modelos de conocimiento y comunicación. Juntos, los modelos de organización, tarea y agente analizan la organización del entorno y los factores críticos de éxito para un sistema de conocimiento. Los modelos de conocimiento y comunicación proporcionan la descripción conceptual de las funciones de resolución de problemas y los datos que son manejados y entregados por un sistema de conocimiento. El modelo de diseño convierte esto en una especificación que es la base para la implementación del sistema software.

No obstante, no siempre es necesario construir todos los modelos, esto depende de los objetivos del proyecto. Esta elección corresponde al jefe de proyecto, bajo consenso previo con el cliente. Un proyecto de un SBC utilizando la tecnología Common KADS produce tres tipos de producto o entrega:

- Documentos de los modelos.

- Información sobre la gestión del proyecto.

- Software del Sistema de Conocimiento.

El objetivo final de la metodología Common KADS consiste en estructurar el proceso de desarrollo propio de la ingeniería del conocimiento, que se concreta en un sistema que debe resolver los problemas con una capacidad comparable a la del experto humano como poseedor del conocimiento. Obviamente, esta debe circunscribirse a un dominio específico de aplicación. Por ejemplo, si se trata de un sistema para el diagnóstico de una cardiopatía, el ámbito de aplicación sería justamente el de las cardiopatías y no otro aunque el experto supere con creces este dominio. En aras de la consecución del objetivo anteriormente propuesto, resulta necesario diseñar un equipo de desarrollo que lo concrete y materialice, cada uno de los miembros este equipo debe tener encomendados unos roles específicos que son los que se le describen a continuación.

1.5 El modelo cognoscitivo

En toda situación de aprendizaje ( Pozo, 1999), espontáneo o generado en una experiencia educativa, puede identificarse tres componentes básicos:

El qué se aprende (resultados), el cómo se aprende (los procesos cognitivos) y las condiciones del aprendizaje (la acción educativa) que responde a las preguntas cuándo, cuánto, donde, con quién etc. Estos tres componentes se pueden mirar ya sea desde un enfoque conductual o socialcognoscitivo. Desde el enfoque conductual los resultados de aprendizaje son las conductas, los procedimientos cognoscitivos no son importantes para este enfoque y las condiciones se refieren a la forma de organizar situaciones estimulantes y refuerzos continuos a las conductas adecuadas. Desde el enfoque cognoscitivo los resultados de aprendizaje se refieren a representaciones cognitivas internas o estructuras cognoscitivas que pueden tener un correlato en una representación simbólica externa para comprobar su presencia, los procesos cognitivos se refieren a toda aquella actividad mental que hace posible la constitución de representaciones y las condiciones se refieren a las acciones educativas de carácter social educativo o interaccional y a los diferentes recursos culturales con que se apoya el aprendizaje.

Desde el punto de vista social cognoscitivo los resultados de aprendizaje se refieren a la manera como se construye significado al conjunto de categorías que constituyen un discurso disciplinar. Los resultados de aprendizaje no se refieren en especificidad a un saber sino al significado que un aprendiz le da a ese saber. La construcción de esos significados se hace en especial cuando el conocimiento se presenta estructurado.

Los procesos cognoscitivos en términos de aprendizaje se dan por niveles de complejidad ya sea en relación con el desarrollo (edad) o con los niveles de complejidad en una tarea. En términos del desarrollo, las teorías de Piaget o de Vigotsky definen una serie de características según ciclos de vida de los individuos y según la complejidad de las tareas, los enfoques computacionales representacionales, definen una serie de procesos y subprocesos subyacentes a la solución de problemas y a la toma de decisiones. En relación con la complejidad como se estructura un conocimiento se pueden definir 4 grandes procesos básicos: conceptualización, interpretación, transferencia, creatividad.

Conceptualización se refiere a la manera como se define un concepto en relación con una experiencia asociada o con otro concepto en una proposición o estructura conceptual. La interpretación se refiere a la manera como un concepto o conjunto de conceptos o proposiciones toma significados en relación con un contexto lingüístico o discursivo o en relación con un fenómeno. Dentro de la interpretación se juegan procesos cognoscitivos como la deducción, la inferencia, el análisis, la síntesis y diferentes modalidades de categorización. La transferencia se refiere a la manera como se aplica un conocimiento a la solución de problemas surgidos en contextos diferentes a aquellos en donde se dio la situación de aprendizaje. La creatividad se refiere a la manera como se reestructura o se proponen estructuras diferentes a las aprendidas. Los niveles cognoscitivos del aprendizaje no son totalmente lineales y su recorrido se puede dar en espiral. Lo cierto es que en términos de organización de las experiencias educativas definir niveles de aprendizaje permite organizar una educación para el desarrollo de habilidades cognitivas.

Las condiciones de aprendizaje se refieren a la organización de las experiencias educativas para la consecución de aprendizajes. Las experiencias educativas son de carácter interaccional y los aprendizajes cognoscitivos, desde el punto de vista social cognoscitivo. Las condiciones de aprendizaje desde el punto de vista social cognoscitivo se refieren a la manera como se organiza un modelo curricular- pedagógico y una serie de acciones educativas para la consecución de aprndizajes cognoscitivos con referencia a un tema de conocimiento (Parra, 2000).

1.6 El modelo del 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 característica que posee una elección de ser correcta, más específicamente, de tender a maximizar un resultado esperado. Este concepto de racionalidad es más general y por ello más 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 física o virtual. Si bien el término agente racional se refiere a agentes artificiales en el campo de la Inteligencia Artificial, también puede considerarse agentes racionales a los animales incluido el hombre.

Es posible clasificar los agentes inteligentes en 5 categorías 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 algún fin. Vamos a mostrarlo con un contraejemplo: cuando un fotón con la suficiente energía incide sobre un átomo, puede arrancar de él un electrón. Podríamos considerar al átomo inteligente puesto que percibe su entorno (la incidencia del fotón) y actúa sobre su entorno (emite un electrón). La ausencia de relación entre la emisión del electrón y cualquier hipotético interés del átomo muestra que este no es un agente inteligente pese a verificar la definición de Bertrand Russell.

La conducta de un agente no suele ser la óptima.

Paradójicamente, la conducta de un agente rara vez es la optima. La razón es muy sencilla calcular el optimo de un criterio lo suficientemente bueno para ser considerado razonable teniendo en cuenta las múltiples restricciones que concurren es muy difícil. Ejemplos de ello es lo difícil que es calcular la mejor ala para un avión, el mejor perfil para un coche o la mejor hélice para un barco. Para un estudiante es fácil calcular el máximo 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 restricción.

Cuando el criterio es una función real de muchas variables y las restricciones también, los cálculos son mucho más complicados. Algunas veces se puede lograr una buena aproximación; pero, si un agente inteligente debe tomar una decisión en muy poco tiempo, deberá conformarse con la mejor aproximación que pueda calcular en el escaso tiempo de que dispone.

1.7 El papel de la heurística

Se denomina heurística a la capacidad de un sistema para realizar de forma inmediata innovaciones positivas para sus fines. La capacidad heurística es un rasgo característico de los humanos, desde cuyo punto de vista puede describirse como el arte y la ciencia del descubrimiento y de la invención o de resolver problemas mediante la creatividad y el pensamiento lateral o pensamiento divergente.

En computación, dos objetivos fundamentales son encontrar algoritmos con buenos tiempos de ejecución y buenas soluciones, usualmente las óptimas. Una heurística es un algoritmo que abandona uno o ambos objetivos; por ejemplo, normalmente encuentran buenas soluciones, aunque no hay pruebas de que la solución no pueda ser arbitrariamente errónea en algunos casos; o se ejecuta razonablemente rápido, aunque no existe tampoco prueba de que siempre será así. Las heurísticas generalmente son usadas cuando no existe una solucion óptima bajo las restricciones dadas (tiempo,espacio,etc.), o cuando no existe del todo.

A menudo, pueden encontrarse instancias concretas del problema donde la heurística producirá resultados muy malos o se ejecutará muy lentamente. Aún así, estas instancias concretas pueden ser ignoradas porque no deberían ocurrir nunca en la práctica por ser de origen teórico. Por tanto, el uso de heurísticas es muy común en el mundo real.