PEREIRA, RISARALDA INGENIERÍA DE SISTEMAS Y …
Transcript of PEREIRA, RISARALDA INGENIERÍA DE SISTEMAS Y …
PROPUESTA DE LA LÍNEA DE INTELIGENCIA ARTIFICIAL PARA EL PROGRAMA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN DE LA
UNIVERSIDAD TECNOLÓGICA DE PEREIRA.
JORGE ADRIAN MARTINEZ GARCIA CESAR ANDRÉS GONZÁLEZ MURCIA
UNIVERSIDAD TECNOLÓGICA DE PEREIRA FACULTAD DE INGENIERÍAS
INGENIERÍA DE SISTEMAS Y COMPUTACIÓN PEREIRA, RISARALDA
2011
3
PROPUESTA DE LA LÍNEA DE INTELIGENCIA ARTIFICIAL PARA EL PROGRAMA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN DE LA
UNIVERSIDAD TECNOLÓGICA DE PEREIRA.
JORGE ADRIAN MARTINEZ GARCIA CESAR ANDRÉS GONZÁLEZ MURCIA
Trabajo de grado presentado como requisito para optar al título de Ingeniero en Sistemas y Computación
Director Ing. Julio Cesar Chavarro
UNIVERSIDAD TECNOLÓGICA DE PEREIRA FACULTAD DE INGENIERÍAS
INGENIERÍA DE SISTEMAS Y COMPUTACIÓN PEREIRA, RISARALDA
2011
4
Nota de aceptación:
______________________________ ______________________________ ______________________________ ______________________________ ______________________________ ______________________________ _____________________________
______________________________ Firma del presidente del jurado
______________________________ Firma del jurado
______________________________ Firma del jurado
Pereira, 21 de Octubre 2011
5
Dedicatoria
Este proyecto se lo dedicamos a todas las personas que lo han hecho posibles entre ellos y sin pretender hacer una lista completa, se encuentran nuestras familias con su presencia incondicional y su apoyo, nuestros docentes y el estado colombiano.
6
Texto del Agradecimiento
Queremos agradecer especialmente por su tiempo y dedicación al Ingeniero Julio
Cesar Chavarro, quien fue nuestro asesor a lo largo de este proyecto y un
miembro más este nuestro proyecto.
Queremos dar nuestros agradecimientos por todo el tiempo dedicado, la buena
disposición y la atención a los ingenieros Carlos Augusto Meneses y Omar Ivan
Trejos de la facultad de Ingeniería de Sistemas, quienes siempre se mostraron
muy atentos a lo largo del desarrollo de este proyecto.
A la Universidad Tecnológica de Pereira, por la formación académica brindada a
lo largo de la carrera.
Finalmente a los compañeros de estudio, quienes a lo largo de la carrera nos
acompañaron y ayudaron en nuestra formación.
7
CONTENIDO
Pág.
CAPÍTULO 1. PLANTEAMIENTO DEL PROBLEMA .......................................... 11
1.1 Definición del problema ...................................................................................... 11
1.2 Justificación ...................................................................................................... 12
1.3 Objetivos .......................................................................................................... 14
1.3.1 Objetivo General ............................................................................................ 14
1.3.2 Objetivos Específicos ....................................................................................... 14
1.4 Marco Referencial ............................................................................................. 15
1.4.1 Antecedentes ................................................................................................. 15
1.4.2 Marco Conceptual .......................................................................................... 16
1.4.3 Marco Teórico ................................................................................................. 18
CAPÍTULO 2. DIVISIÓN TEMÁTICA DE LA IA ................................................... 39
2.1 Agentes Inteligentes .......................................................................................... 39
2.1.1 Tipos de Agentes ........................................................................................... 39
2.1.2 Agentes que aprenden .................................................................................... 42
2.1.3 Sistemas Multiagentes ................................................................................... 43
8
2.2 Resolución de Problemas (Problem-Solving) ....................................................... 44
2.2.1 Búsquedas en espacios de estados ................................................................. 44
2.2.2 Búsqueda Adversarial ..................................................................................... 46
2.2.3 Computación Evolutiva ................................................................................... 47
2.3 Conocimiento y Razonamiento (Knowledge and Reasoning) ................................. 48
2.4 Planificación (Planning) ...................................................................................... 48
2.5 Aprendizaje de Maquina (Machine Learning) ....................................................... 48
2.6 Percepción (Perception) ..................................................................................... 49
2.7 Comunicación (Communicating) ......................................................................... 49
2.7.1 Procesamiento del Lenguaje Natural ................................................................ 49
2.7.2 Robótica ........................................................................................................ 50
CAPÍTULO 3. ORGANIZACIÓN POR ASIGNATURA ......................................... 52
3.1 Metodología Utilizada ........................................................................................ 52
3.2 División por Temas ............................................................................................ 54
3.2.1 Inteligencia Artificial I ...................................................................................... 54
3.2.2 Inteligencia Artificial II ..................................................................................... 56
3.2.3 Aprendizaje de Maquina .................................................................................. 58
3.2.4 IA Aplicada .................................................................................................... 60
3.3 Herramientas Metodológicas .............................................................................. 63
9
3.3.1 Introducción ................................................................................................... 63
3.3.2 Herramientas para el modelado de agentes inteligentes .................................... 63
3.3.3 Herramientas que modelan soluciones para computación evolutiva .................... 64
3.3.4 Herramientas que modelan soluciones para aprendizaje de maquina .................. 64
3.4 Método de Enseñanza basado en problemas ....................................................... 65
3.4.1 Introducción ................................................................................................... 65
3.4.2 Aprendizaje basado en problemas ................................................................... 65
CAPÍTULO 4. CONCLUSIONES Y RECOMENDACIONES ................................ 74
4.1 Conclusiones .................................................................................................... 74
4.2 Recomendaciones ............................................................................................. 74
A. Referencia de las figuras ............................................................................... 75
BIBLIOGRAFÍA ...................................................................................................... 76
10
LISTA DE FIGURAS
Pág. Figura 1.1 Agente de reflejo simple ................................ ................................ ..................14
Figura 1.2 Agente de reflejo basado en modelo ................................ ............................... 15
Figura 1.3 Agente basado en objetivos ................................ ................................ ............16
Figura 1.4 Agente basado en utilidad................................ ................................ ................20
Figura 1.5 Agente que aprenden ................................ ................................ ......................20
11
CAPÍTULO 1. PLANTEAMIENTO DEL PROBLEMA
1.1 DEFINICIÓN DEL PROBLEMA
La Universidad Tecnológica de Pereira, en su programa de Ingeniería de Sistemas
y Computación provee al estudiante una serie de conocimientos y herramientas
con el propósito de generar habilidades que permitan la identificación, análisis y
solución de problemas que surgen en diferentes áreas.
Aunque el programa se encuentra acreditado, una de las tareas que actualmente
desarrolla es el estudio de una reforma curricular que le permita actualizar sus
áreas temáticas y adecuar su currículo; Lo anterior con el propósito de afrontar los
nuevos retos que, en el campo de la formación profesional, se advierten en este
campo tecnológico donde el cambio y la actualización deben ser permanentes.
Para ello, existen diferentes líneas de conocimiento dentro del currículo que
permiten al estudiante definir sus fortalezas y habilidades a través de las líneas
escogidas por su interés; Sin embargo, existe una notable deficiencia dentro del
currículo actual al no haber una estructura temática organizada y un tratamiento
adecuado para la línea de conocimiento de la Inteligencia Artificial.
Hoy en día, es notable la fuerza y velocidad con la que avanza esta área del
conocimiento, capturando el interés de investigadores y grandes empresas a nivel
mundial precisamente por sus aportes y aplicaciones en diferentes campos,
ganando así una reconocida y creciente importancia. Es indispensable reaccionar
ante esta situación, y permitirle al estudiante contar adecuadamente con esta
importante herramienta.
12
1.2 JUSTIFICACIÓN
Debido a la intención del programa ingeniería de sistemas y computación de la
Universidad Tecnológica de Pereira de mejorar su oferta educativa al permitir al
estudiante tomar líneas de profundización, es pertinente para el programa
empezar a estructurar estas líneas.
Debido a la importancia de la inteligencia artificial y su importancia en la industria y
la ciencia, se hace imperativo que se evalué su inclusión como línea de
profundización en la formación de los ingenieros de sistemas de la universidad
tecnológica de Pereira, por lo tanto el objetivo de este documento es presentar
una propuesta que permita tratar este tema.
La inteligencia artificial es una rama muy importante de la ciencia de la
computación. Su importancia se puede demostrar gracias a la gran cantidad de
problemas que se han solucionado por medio de esta y la gran cantidad de
aplicaciones que utilizan técnicas de la inteligencia artificial como son ejemplo:
Mercados Financieros: Sistemas expertos se han creado para automatizar el
intercambio de bienes en los mercados abiertos y mercados de valores, algunas
veces teniendo mejor desempeño que los humanos. [BBC2011]
Emisión y recolección de tarjetas de crédito: El sistema bancario utiliza
sistemas expertos para analizar si se debe entregar o no un a tarjeta de crédito.
[McCarthy]
Aseguramiento: Se están usando sistemas expertos para evaluar la viabilidad
para la escogencia de un candidato a una póliza de seguro. [LITTLE]
13
Medicina: Se utilizan sistemas expertos en la medicina para ayudar con el
diagnostico de determinadas enfermedades y sugerir tratamientos . [McCarthy]
14
1.3 OBJETIVOS
1.3.1 OBJETIVO GENERAL
Elaborar una propuesta de organización temática de los temas abordados por la
inteligencia artificial para que se incorporen en el pensum del programa de
ingeniería de sistemas y computación de la Universidad Tecnológica de Pereira.
1.3.2 OBJETIVOS ESPECÍFICOS
Establecer el estado del arte en la enseñanza de la inteligencia artificial en
Colombia.
Proponer una perspectiva de organización temática, que fac ilite el estudio
de los distintos modelos, tecnologías y familias de problemas que son
abordados desde la Inteligencia Artificial.
Proponer un modelo pedagógico para abordar los diferentes temas de la
línea propuesta y que sirva de mecanismo unificador del modelo de
enseñanza - aprendizaje.
15
1.4 MARCO REFERENCIAL
1.4.1 ANTECEDENTES
El programa de ingeniería de sistemas y computación se creó en 1991, e inicio
clases en el año 1995. Siendo un programa relativamente joven y además debido
al compromiso de la Universidad Tecnológica de Pereira y del mismo programa
con la calidad, se tiene una política de mejoramiento continuo.
Debido a lo expresado anteriormente, desde el año 2003 el programa ha venido
estudiando su estructura con el ánimo de reformar su currículo. Se empezó con el
estudio de los modelos internacionales de ciencias de la computación propuestos
por ACM, IEEE, Career Space, Espacio Europeo y Libros Blancos. En varios de
estos modelos se plantea la inteligencia artificial como un área temática
fundamental para la ciencia de la computación.
En el año 2009, el programa fue acreditado como un programa de alta calidad.
Entre las más importantes sugerencias hechas por los pares académicos, se
encuentra la de ofrecer líneas de profundización opcionales a los estudiantes del
programa.
Actualmente el programa está adelantando los trámites administrativos y
académicos para una reforma curricular que satisfaga las sugerencias propuestas
por los pares académicos. Esto genera una situación coyuntural apropiada para
generar propuestas curriculares que apunten a enriquecer la calidad de la
formación brindada por el programa.
16
1.4.2 MARCO CONCEPTUAL
Minería de Datos: La minería de datos es la extracción implícita de información
previamente desconocida y potencialmente útil de los datos. La idea, es construir
programas de computador que filtren automáticamente a través de las bases de
datos, buscando regularidades o patrones. Los fuertes patrones, si se encuentran,
es probable generalizarlos para hacer predicciones exactas sobre datos futuros.
[Witten11]
La minería de datos, también conocida como la extracción de conocimiento a partir
de datos, tiene como objeto la extracción de un conocimiento oculto a partir de
grandes cantidades de datos, por métodos automáticos o semiautomáticos. La
minería de datos es considerada una tecnología poderosa con gran potencial para
ayudar a las compañías a enfocarse en la información más importante de sus
almacenes de datos. [Thearling11]
Lógica Difusa: La lógica difusa es una forma de lógica multivaluada, que trata con
el razonamiento aproximado en lugar del razonamiento fijo y exacto. En contraste
con la teoría lógica tradicional, donde conjuntos binarios se adhieren a una lógica
de dos valores: verdadero o falso, las variables en la lógica difusa pueden tomar
un valor de verdad que esté entre 0 y 1. La lógica difusa ha sido diseñada para
modelar el concepto de una verdad parcial, donde el valor de verdad puede
ubicarse entre totalmente verdadero y totalmente falso. [Novak99]
Redes Neuronales Artificiales: Las Redes Neuronales Artificiales (ANNs de
Artificial Neural Networks) fueron en sus inicios una simulación abstracta de los
sistemas nerviosos biológicos, formados por un conjunto de unidades llamadas
"neuronas" o "nodos" conectadas unas con otras. Estas conexiones tienen una
gran semejanza con las dendritas y los axones en los sistemas nerviosos
biológicos. [Gur97]
17
Hoy en día, las Redes Neuronales Artificiales (RNAs) son conocidas como
modelos computacionales que surgieron en un intento de conseguir
formalizaciones matemáticas acerca de la estructura del cerebro. Las Redes
Neuronales Artificiales imitan la estructura física del sistema nervioso, centrándose
en el funcionamiento del cerebro humano, basado en el aprendizaje a través de la
experiencia, con la consiguiente extracción de conocimien to a partir de la misma.
[LyF08]
El Primer modelo de red neuronal fue propuesto en 1943 por McCulloch y Pitts en
términos de un modelo computacional de "actividad nerviosa". El modelo de
McCulloch-Pitts es un modelo binario, y cada neurona tiene un escalón o umbral
prefijado. Este primer modelo sirvió de ejemplo para los modelos posteriores de
Jhon Von Neumann, Marvin Minsky, Frank Rosenblatt, entre muchos otros.
[Kas98]
Algoritmos Evolutivos: Es un algoritmo que mantiene una población de
estructuras generalmente inicializadas al azar, que evoluciona de acuerdo a reglas
de selección, recombinación, mutación y supervivencia conocidos como
operadores genéricos. Los algoritmos evolutivos son usados hoy en día para
optimizar el diseño de sistemas y resolver problemas multidimensionales de
manera más eficiente que software producido por diseñadores humanos para este
propósito. [Jamshidi03]
Máquinas de Aprendizaje: Es una rama de la inteligencia artificial y considerada
como disciplina científica, interesada en el diseño y desarrollo de algoritmos que
permitan a los computadores desarrollar su comportamiento basado en datos
empíricos. Las máquinas de aprendizaje basan su interés en el desarrollo de
algoritmos que permitan a la máquina aprender a través de una in ferencia
18
inductiva basada en la observación de los datos que representan información
incompleta relacionada con un fenómeno estadístico [Mit97].
Máquinas de Soporte Vectorial (SVM): Las máquinas de soporte vectorial son
un concepto dentro de la ciencia computacional que tienen relación con los
métodos de aprendizaje supervisado para el análisis de datos y reconocimiento de
patrones, utilizadas comúnmente para la clasificación y análisis de regresión.
[Teu07]
1.4.3 MARCO TEÓRICO
1.4.3.1 Reseña Histórica de la Inteligencia Artificial
Si bien, las referencias existentes hoy en día de lo que pudo originar lo que se
conoce como Inteligencia Artificial apuntan a los filósofos de la antigua Grecia y su
mitología, existen diferentes interpretaciones publicadas por investigadores
actualmente reconocidos; de los conceptos, personajes e ideas que pudieron
sembrar los inicios de esta ciencia. Algunos hablan de los primeros pasos de la
Inteligencia Artificial cuando Aristóteles (384-322 A.C) planteó la codificación de
ciertos estilos de razonamiento deductivo llamados silogismos [Nilsson98]. Otros
explican los inicios de la Inteligencia Artificial cuando Prometeo (Mitología Griega),
al robar el fuego para los mortales, ilumina a la humanidad a través del regalo de
la inteligencia conocido como la mente racional; planteando así, que esta
inteligencia forma el fundamento de toda la tecnología humana y al final, toda la
civilización humana [Luger2005].
Los orígenes de la Inteligencia Artificial moderna y su gestación como tal se
encuentran enmarcados entre el periodo 1943 y 1955. El primer trabajo de IA del
cual se tiene conocimiento, fue realizado por Warren McCulloch y Walter Pitts
(1943). Ellos plantearon teorías acerca de las relaciones entre los elementos de la
19
computación simple y las neuronas biológicas. Ellos propusieron un modelo de
neuronas artificiales. McCulloch y Pitts también sugirieron que las redes definidas
adecuadamente pueden aprender. Más adelante, dos estudiantes de la
Universidad Harvard, Marvin Minsky y Dean Edmonds, construyen el primer
computador de red neuronal en 1950 llamado SNARC. [Nilsson98]
Hubo una serie de ejemplos que se pueden caracterizar como IA, pero la visión de
Alan Turing era tal vez la más influyente. Dio conferencias sobre el tema cerca de
1947 en la Sociedad de Matemáticos de Londres y articuló una persuasiva agenda
en su artículo Computing Machinery and Intelligence (1950). En ella, él introduce
el Test de Turing, Aprendizaje de Maquina (Machine Learning), algoritmos
genéticos y el aprendizaje por refuerzo. [RusNorv10]
En el verano de 1956 es inventado el término Inteligencia Artificial por John
McCarthy, Marvin Minsky, Claude Shannon y Nathaniel Rochester en la
Conferencia de Dartmouth, un congreso en el que se hicieron previsiones
triunfalistas a diez años. [Lung07] Dentro del taller de trabajo propuesto en
Dartmouth, dos investigadores del Carnegie Tech (CMU - Carnegie Mellon
University), Allen Newell y Hebert Simon, hicieron un programa de razonamien to
llamado Logic Theorist
programa de computador capaz de pensar de una forma no numérica, y de este
modo solucionar el venerable problema de cuerpo-mente (Mind-Body Problem).
Poco después del taller de trabajo, el programa fue capaz de demostrar la mayoría
de los teoremas de Principia Mathematica de Russell y Whitehead. [Luger2005]
El taller de trabajo de Dartmouth no condujo a nuevos avances significativos, pero
logro reunir a las grandes figuras de la época. En los siguientes 20 años, el campo
de la Inteligencia Artificial estaría dominado por este grupo, sus estudiantes y
colegas del MIT (Massachusetts Institute of Technology), CMU, Stanford e IBM.Tal
vez el resultado obtenido del taller de trabajo que más duración ha tenido fue el
20
acuerdo de adoptar el nuevo nombre ofrecido por McCarthy para el campo:
Inteligencia Artificial. [RusNorv10]
Grandes expectativas y un temprano entusiasmo abarcan el periodo comprendido
entre 1952 y 1969, con avances algo limitados como computadores primitivos y
algunas herramientas de programación. El éxito inicial de Newell y Simon continuó
con el GPS (General Problem Solver), que a diferencia de la lógica teórica, este
programa fue diseñado desde sus inicios para imitar lo s protocolos humanos
utilizados en la resolución de problemas. El éxito de GPS y los posteriores
programas como modelos de cognición llevaron a Newell y Simon (1976) a
formular la famosa hipótesis Physical Symbol System un
sistema físico de símbolos tiene la necesidad y los medios suficientes para poner
en marcha la Inteligencia general
(humano o máquina) que muestre inteligencia debe operar mediante la
manipulación de estructuras de datos compuestas de símbolos. [RusNorv10]
En IBM, Nathaniel Rochester y sus colegas realizaron algunos de los primeros
programas de IA. En 1958, John McCarthy ingresa al MIT, y define lenguaje de
programación de alto nivel llamado LISP, el cual se convirtió en el le nguaje de
programación de IA dominante en los siguientes 30 años. Con LIPS, McCarthy
tenía la herramienta que necesitaba pero el acceso a los escasos y costosos
recursos de computación era otro serio problema. También para 1958, McCarthy
publicó un artículo titulado Programs with Common Sense, en el cual describe el
Advice Taker, un programa hipotetico que podría ser visto como el primer sistema
completo de IA. Inmerso en el Advice Taker, se encuentran los principios
fundamentales de la representación del conocimiento y el razonamiento.
[Nilsson98]
En esos años, Minsky supervisaba grupos de estudiantes que eligieron problemas
limitados que parecieran requerir de inteligencia para resolverlos. Estos dominios
21
limitados se conocieron como Micromundos (Microworlds). Entre los resultados
más relevantes se encuentra el programa SAINT (1963) de James Slagle, que
podía resolver de forma cerrada los problemas del cálculo integral típicos en los
cursos universitarios de primer año. El programa ANALOGY (1968) de Tom
Evans, que resolvía problemas de analogía geométrica que aparecían en las
pruebas de IQ. El programa STUDENT (1967) de Daniel Bobrow, que solucionaba
problemas de tipo algebra story. [RusNorv10]
Un futuro más prometedor y claro se empezaba a observar para el periodo
comprendido entre 1966 y 1973 con el poder computacional, que había crecido y
con ello las posibilidades de obtener mejores resultados en programas enfocados
a la solución de problemas y experimentos en maquinas evolutivas, hoy en día
conocidas como algoritmos genéticos. Sin embargo, esta época de la IA sirvió
para identificar varias dificultades que afectaban los resultados de las
investigaciones y a su vez ofrecer una dosis de realidad a los objetivos. Entre las
dificultades identificadas se encuentra: La traducción de los idiomas, la
intratabilidad de algunos problemas y las limitaciones en las estructuras básicas
que eran usadas para generar un comportamiento inteligente. [RusN orv10]
Para los años comprendidos entre 1969 y 1979 surgen los sistemas basados en
conocimiento. Entre los resultados más relevantes se encuentra el programa
DENDRAL (Buchanan et al., 1969), que fue desarrollado en la Universidad de
Stanford, donde Ed Feigenbaum (Estudiante de Herbert Simon), Bruce Buchanan
(Filosofo y científico de las ciencias de la computación) y Joshua Lederberg
(Genetista ganador del premio Nobel), se asociaron para resolver el problema de
la inferencia de las estructuras moleculares a partir de información provista por un
espectrómetro de masas. La importancia del área del conocimiento fue evidente
en el entendimiento del lenguaje natural. [RusNorv10]
22
Desde 1980, se ha usado la IA en la industria a nivel mundial; Es el caso del
primer sistema experto comercial exitoso llamado RI, que comenzó a funcionar en
Digital Equipment Corporation (McDermott, 1982), el cual ayudaba a configurar los
pedidos de nuevos sistemas de cómputo. En 1981 los japoneses anunciaron un
Quinta Generación
en 10 años computadores inteligentes que corrieran Prolog. En respuesta a esto,
los Estados Unidos formaron La Corporación de Microelectronica y Tecnologia
Computacional (MMC - Microelectronics and Computer Technology Corporation),
como un consorcio de investigación diseñado para asegurar la competitividad
nacional. En general, la industria de la IA tuvo un auge de unos cuantos millones
de dólares en 1980 a billones de dólares en 1988, incluyendo cientos de empresas
especializadas en la construcción de sistemas expertos, sistemas de visión,
robots, y software y hardware de estos propósitos. [RusNorv10]
Desde el año 1986, se ve el retorno de las redes neuronales en la IA. Teniendo
sus comienzos este periodo a mediados de 1980, donde al menos cuatro grupos
diferentes reinventaron el algoritmo de aprendizaje que se conoce como
propagación hacia atrás (Back-Propagation), dado a conocer por primera vez en
1969 por Bryson y Ho. El algoritmo fue aplicado a varios problemas de aprendizaje
en las ciencias de la computación y en la psicología, y la amplia difusión de los
resultados en la recopilación conocida como Parallel Distributed Processing
(Rumelhart and McClelland, 1986), logro causar un gran entusiasmo. Es tos
modelos llamados modelos conexionistas de sistemas inteligentes (Connectionist
Models of Intelligent Systems) fueron vistos por algunos como competidores
directos tanto de los modelos simbólicos promovidos por Newell y Simon, como
del enfoque logicista (Logicist Approach) de McCarthy y otros (Smolensky, 1988).
[RusNorv10]
Para 1987, empieza a verse una revolución tanto en el contenido como en la
metodología de trabajo en la IA, conociéndose así el momento en que la
23
Inteligencia Artificial adopta el método científico para la producción de
conocimiento. Hoy en día es más común construir sobre teorías existentes que
proponer unas totalmente nuevas. En términos de metodología, la IA finalmente ha
llegado con firmeza bajo el método científico.
Una amplia variedad de arquitecturas y enfoques fueron tratados en el campo del
reconocimiento del habla desde 1970; Sin embargo, muchas de esas estructuras
eran frágiles y desarrolladas como una solución de propósito específico. Después
de esto, surgieron enfoques basados en los modelos ocultos de Markov (HMMs -
Hidden Markov Models) que han llegado a dominar este campo. Existen dos
aspectos relevantes de los HMMs: El primero es que estos modelos se basan en
una teoría matemática rigurosa, lo que ha permitido a los investigadores del
reconocimiento del habla construir sobre varias décadas de resultados
matemáticos desarrollados en otros campos. El segundo aspecto, es que los
HMMs son generados por un proceso de entrenamiento sobr e una amplia
colección de textos relacionados con información real del habla. Los avances
obtenidos han permitido identificar las capacidades que tienen los HMMs para
proveer una estructura matemática para el entendimiento de problemas.
[RusNorv10]
El surgimiento de los agentes inteligentes es reconocido en 1995, algunos años
después que los investigadores se vieran alentados por el progreso en la
resolución de subproblemas de la IA. El trabajo de Allen Newell, John Laird y Paul
Rosenbloom en el proyecto SOAR (Newell, 1990; Laird et al., 1987) es el mejor
ejemplo conocido de una completa arquitectura de agente. Al parecer, el intento
de construir agentes completos genera ciertas consecuencias; Una de ellas es que
la realización de estos agentes previamente aislados como subareas de la IA,
podrían necesitar ser reorganizados un poco, cuando sus resultados se unan. En
particular, hoy en día es generalmente apreciado que los sistemas sensoriales
(visión, sonar, reconocimiento del habla, etc.) no puedan entregar información
24
totalmente confiable acerca del entorno. De ahí, los sistemas de razonamiento y
planificación deben ser capaces de manejar la incertidumbre. Una segunda
consecuencia importante de la perspectiva de agentes es que la IA ha sido
elaborada en contacto muy cercano con otros campos, tales como la teoría de
control y la economía, que también tratan con agentes. [RusNorv10]
Durante los 60 años de historia de las ciencias de la computación, se ha puesto
mayor importancia en el algoritmo como el principal sujeto de estudio, pero
algunos trabajos recientes en IA sugieren que tiene más sentido preocuparse por
los datos que por el algoritmo que hay que aplicar. Esto tiene sentido debido al
incremento de disponibilidad de conjuntos de datos muy grandes; por ejemplo,
trillones de palabras del inglés y billones de palabras desde La Web (World Wide
Web) (Kilgarriff y Grefenstette, 2006); o billones de par de bases de secuencias
genómicas (Collins et al., 2003). Las técnicas usadas para la desambiguación del
lenguaje natural como muestran Michele Banko y Eric Brill (2001), funcionan
incluso mejor que la cantidad de texto disponible que va de un millón de palabras
a billones y que el incremento en rendimiento del uso de más datos, excede
cualquier diferencia en la elección de algoritmos; Un algoritmo mediocre con 100
millones de palabras que provienen de datos de entrenamiento no etiquetados,
supera al mejor algoritmo conocido con un millón de palabras. [RusNorv10]
1.4.3.2 Definiciones de Inteligencia Artificial
Debido a que la Inteligencia Artificial es una ciencia relativamente nueva, se han
presentado múltiples definiciones cuestionadas por unos y defendidas por otros.
Existen varias definiciones que tratan de explicar lo que se conoce como
Inteligencia Artificial. Algunas de esas definiciones son:
25
las ciencias de la
computación que tiene que ver con la automatización del comportamiento
que ver con el diseño de sistemas de computación inteligente, que son sistemas
que exhiben las características que nosotros asociamos con la inteligencia en la
r87]
que se comporten de manera inteligente. Estos programas son construidos para
funcionar como lo haría un humano o un animal cuyo comportamiento
consideramos inteligent
humano, actividades tales como toma de decisiones, resolución de problemas,
(Winston, 1992).
"Inteligencia Computacional es el estudio del diseño de agentes inteligentes".
(Poole et at, 1998).
"La Inteligencia Artificial... tiene que ver con el comportamiento inteligente en los
artefactos". [Nilsson98].
26
l arte de crear máquinas con capacidad de realizar funciones que realizadas por
ight, 1991).
comportamiento inteligente y a su vez que este se parezca al comportamiento de
los seres humanos. Dar la capacidad a las computadoras de tratar de implementar
cierto comportamiento y este a su vez tenga la habilidad de tomar decisiones
La definición de lo que conocemos como Inteligencia Artificial se ha visto afectada
por la perspectiva de las personas y los métodos que se utilizan; Sin em bargo, se
han podido identificar cuatro enfoques que durante la historia de la IA han sido
seguidos. Estos enfoques son: Sistemas que piensan como humanos, Sistemas
que piensan racionalmente, Sistemas que actúan como humanos y Sistemas que
actúan racionalmente. [RusNorv10]
1.4.3.3 Fundamentos de la Inteligencia Artificial Filosofía: Aristóteles fue el primero en formular un juego preciso de reglas que
gobiernan la parte racional de la mente. El desarrollo un sistema informal de
silogismos para el correcto razonamiento, lo cual en principio permitía generar
conclusiones mecánicamente, dado un conjunto de premisas iniciales. Después de
Aristóteles la idea que el razonamiento se podía modelar como un proceso
mecánico cobro fuerza con los trabajos de Ramon Lull y Thomas Hobbes más
adelante en la historia los esfuerzos se concentraron en cr ear dispositivos que
hicieran realidad estas ideas, con los trabajo de Leonardo Da Vinci que diseño una
calculadora mecánica y Wilhelm Schickard que creó la primera máquina que
calculaba, después en 1662 apareció la Pascalina construida por Blaise Pascal
27
q máquina aritmética produce efectos que parecen más cercano al
construyo un dispositivo mecánico que realizaba operaciones sobre conceptos en
lugar de números pero su alcance era limitado. Aun así Leibniz sobrepaso el
trabajo de Pascal al construir una calculadora que podía sumar, restar, multiplicar
y tomar raíces mientras que la Pascalina solo podía sumar y restar. Más adelante
Rene Descartes proponía la discusión que planteaba la distinción entre mente y
materia y los problemas que surgen al hacer tal distinción.
Dada una mente física que manipula el conocimiento, el próximo problema se
encuentra en establecer la fuente del conocimiento. El movimiento espiritis ta,
comenzado con Francis Bacon está caracterizado con una frase de John Locke
naturaleza humana de David Hume propuso lo que ahora se conoce como el
principio de la inducción: que las reglas generales son adquiridas por las
exposiciones a asociaciones repetitivas entre sus elementos. La doctrina del
positivismo lógico desarrollada por el circulo de Vienna, esta propone que todo el
conocimiento puede ser caracterizado por teorías lóg icas conectadas,
últimamente. A frases de observación que corresponden a entradas sensoriales;
así el positivismo lógico combina el racionalismo y el espiritismo. La teoría de
confirmación de Catnap y Carl Hempel intento analizar la adquisición del
conocimiento a partir de la experiencia. El libro de Camap la estructura lógica del
mundo (1928) definió un procedimiento computacional explicito para extraer el
conocimiento de experiencia elementales. Fue probablemente la primera teoría de
la mente como un proceso computacional.
Matemática: Los filósofos plantearon algunas ideas fundamentales de lo que es la
inteligencia artificial, pero el salto de esta a una ciencia formal requería de un nivel
de formalización matemática en tres áreas: lógica, computación y probabilidad. La
idea de lógica formal puede ser rastreada a los filósofos de la antigua Grecia pero
28
el desarrollo matemático de esta idea empezó realmente con el trabajo de George
Boole, quien planteo los detalles de la lógica booleana proposicional, o lóg ica
Booleana. En 1879 Gottlob Frege extendió la lógica de Bool para incluir objetos y
relaciones, creando la lógica de primer orden que es usada hoy en día.
El próximo paso que siguió fue determinar los límites de lo que podía ser hecho
con la lógica y la computación. El primer algoritmo no trivial se atribuye a Euclides,
y su algoritmo para computar el máximo común divisor. En 1931 Godel mostro que
los limites en la deducción existen. Su teorema de la incompletitud m ostro que
cualquier teoría formal tan fuerte como la peano aritmética (La teoría elemental de
los números naturales), hay proposiciones que son indecidibles en el sentido que
no tienen prueba dentro de la teoría. Este resultado fundamental inspiro a Alan
Turing a tratar de caracterizar exactamente cuales funciones son posibles de
computar.
Aunque la decibilidad y la computabilidad son importantes para entender la
computación, la noción de la trazabilidad tiene mayor impacto. A grandes rasgos
un problema es llamado intrazable si el tiempo requerido para resolver instancias
del problema crece exponencialmente con el tamaño de las instancias. La
distinción entre crecimiento polinómico y exponencial en la complejidad fue
primero enfatizado por Cobham y Edmonds en la década del sesenta. Esto es
importante porque instancias moderadamente grandes no pueden ser resueltas en
un tiempo razonable. Entonces, uno debería tratar de dividir el problema en varios
problemas trazables en lugar de problemas intrazables. El problema de la
intrazabilidad contrasta con los anuncios de prensa que se hacían de los primeros
Además de la lógica y la computación la tercera gran contribución de las
matemáticas a la IA es la de la teoría de la probabilidad. El italiano Gerolamo
29
Cardano pensó en la idea de probabilidad, describiéndola en términos de los
posibles resultados de eventos aleatorios. Blaise Pascal en una carta a Pierre
Fermat, mostro como predecir el futuro de una apuesta sin finalizar al asignar las
ganancias promedio que podrían tener los jugadores. La probabilidad rápidamente
se convirtió en una parte invaluable de todas las ciencias cuantitativas. Y a través
de los años fue mejorada y refinada por James Bernoulli, Pierre Laplace, y otros.
Thomas Bayes propuso una regla para actualizar las probabilidades en la luz de
nueva evidencia. La regla de Bayes es usada hoy en día en la mayoría de las
aproximaciones al razonamiento con incertidumbre en sistemas de inte ligencia
artificial.
Economía: La ciencia de la economía empezó en 1776 con el filósofo escocés
Adam Smith público el libro la riqueza de las naciones. Mientras los antiguos
griegos y tors habían hecho contribuciones al pensamiento económico, Smith fue
el primero en tratarlo como una ciencia, usando la idea que las economías pueden
ser modeladas como consistiendo de un grupo de agentes maximizando su propio
bienestar económico. La mayoría de la gente piensa que la economía trata más
que todo del dinero, pero los economistas dicen que realmente están estudiando
cómo la gente toma decisiones que llevan a destinos preferidos. Estos destinos
preferidos o utilidad fueron primero formalizados matemáticamente por Leon
Walras y fue mejorada por Frank Ramsey y después por John von Newmann y
Oskar Morgenstern en su libro la teoría de juegos y comportamiento económico.
La teoría de decisión que combina la teoría de la probabilidad con la teoría de la
utilidad, provee un marco formal completo para las decisiones hechas bajo
incertidumbre eso es, en casos donde la descripción probabilística
apropiadamente captura la decisión del entorno del mercado. Esto es más
acertado en economías grandes donde cada agente no necesita tomar atención
sobre las acciones de los otros agentes como individuos. Para pequeñas
economías, la situación es mucho más como un juego: las acciones de un jugador
30
pueden afectar significativamente la utilidad de otro (positiva o negativamente). El
desarrollo de la teoría de juegos de Von Neumann y Morgenstern incluyo el
resultado sorprendente que, para algunos juegos, un agente racional debería
adoptar políticas que son(o al menos parecen ser) aleatorias. A diferencia de la
teoría de decisión, la teoría de juegos no ofrece una forma no ambigua para
seleccionar acciones.
La pregunta sobre como tomar decisiones racionales cuando las ganancias de las
acciones no son inmediatas sino resultado de varias acciones tomadas en
secuencia. Este tema fue perseguido en el campo de la investigación d e
operaciones, el cual emergió en la segunda guerra mundial debido a los esfuerzos
de Gran Bretaña de optimizar instalaciones de Radar, y después encontró
aplicaciones civiles en decisiones complejas de manejo. El trabajo de Richar
Bellman formalizo una clase de problemas de decisión secuenciales llamadas
Procesos de decisión de Marko.
Psicología: Los orígenes de la psicología científica pueden ser usualmente puede
ser rastreado al trabajo del médico Hermann vos Helmholtz y su estudiante
Wilhelm Wundt. Helmholtz aplico el método científico al estudio de la visión
humana. Wundt desarrollo una serie de experimentos con humanos que debido al
rigor científico ayudaron a establecer a la psicología como una ciencia, el
problema era que el experimento pedía a los sujetos de pruebas que dijeran como
pensaban que sus procesos mentales se estaban formando en cada etapa del
experimento, esto a su vez ingresaba un componente de subjetividad que hacía
que los resultados de sus experimentos fueran irrebatibles. Los biolo gistas
estudiando el comportamiento animal en cambio desarrollaron métodos objetivos
debido a la imposibilidad de preguntarle a sus sujetos sobre sus procesos
cognitivos. Estos procesos aplicados a los seres humanos dieron nacimiento al
movimiento de la psicología comportamental, liderada por John Watson, la cual
rechazaba cualquier otra teoría involucrando procesos mentales debido a que la
31
introspección no aportaba evidencia confiable. Los psicólogos del comportamiento
insistieron en estudiar solo métodos objetivos o los preceptos(o estímulos) dados
a un animal y sus acciones resultantes(o respuestas). Esto llevo a
descubrimientos sobre el comportamiento de los animales pero tuvo poco suceso
en entender a los humanos.
La psicología cognitiva, la cual ve el cerebro humano como un dispositivo de
procesamiento de información puede ser rastreada a los trabajos de William
James(1842-1910). Helmholtz también insistió en que la percepción involucraba
una forma de inferencia lógica inconsciente. La naturaleza de la explicación, por
Kenneth Craik especifico los tres pasos claves de una agente basado en
conocimiento: Los estímulos deben ser traducidos a una representación interna, la
representación es manipulada por procesos cognitivos para derivar nuevas
representaciones internas, y por ultimo estas deben ser retraducidas en acciones.
Más adelante fue Donald Broadbent, cuyo libro Percepción y comunicación fue
uno de los primeros trabajos en modelar fenómenos psicológicos como
procesamiento de información. Este trabajo apoyado en el de George MIller, Noam
Chomsky y Allen Newell y Herbert Simon ayudaron a demostrar como modelos
computacionales pueden ser usados para representar la memoria, el lenguaje y el
pensamiento lógico.
Lingüística: En 1957 B.F. Skinner publico el comportamiento verbal. En este
documento fue una aproximación detallada del aprendizaje del lenguaje desde el
punto de vista del comportamiento. Un crítico muy famoso de este documento fue
Noam Chomsky, quien justo había publicado un libro con su propia teoría,
estructuras sintácticas. Chomsky alegaba que la teoría comportamentalista no
explicaba como un niño podía entender y crear frases que nunca había
escuchado. La teoría de Chomsky basada en modelos sintácticos podía explicar
esto, y era lo suficientemente formal como para ser programado.
32
Los lingüistas modernos y la inteligencia artificial nacieron casi al mismo tiempo y
crecieron juntos, cruzandose en un campo hibrido llamado lingüística
computacional o procesamiento del lenguaje natural. El problema de entender el
lenguaje pronto se volvió más complejo de lo que parecía inicialmente. Entender el
lenguaje requiere sujeto objeto y además un contexto, no solo la comprensión de
estructuras y frases, esto puede parecer obvio, pero no fue apreciado en 19 60.
Mucho del trabajo en representación del conocimiento estaba relacionado con el
lenguaje e informado por la investigación en lingüística, lo cual estaba conectado a
su vez a décadas de trabajo en el análisis filosófico del lenguaje.
Neurociencia: Es el estudio del sistema nervioso, particularmente el cerebro.
Aunque la forma exacta en el que el cerebro permite el pensamiento es uno de los
grandes misterios de la ciencia, el hecho que lo hace ha sido apreciado por miles
de años debido a la evidencia que golpes en el cerebro puede llevar a la
incapacidad mental.
El estudio sobre la afasia de Paul Broca en pacientes con daño cerebral en 1861
demostró la existencia de áreas localizadas del cerebro responsables de funciones
cognitivas específicas. En particular, el demostró que la producción del habla
estaba localizada en la porción del hemisferio izquierdo llamada ahora el área de
Broca. Para esa época era conocido que el cerebro consistía de células nerviosas
o neuronas pero no fui sino hasta 1872 que Camil o Golgi desarrollo una técnica de
tinturado que permitía la observación de neuronas individuales en el cerebro. Esta
técnica fue usada por Santiago Ramón y Cajal es sus estudios pioneros de las
estructuras neuronales del cerebro. Nicolas Rashevsky fue el primero en aplicar
modelos matemáticos para estudiar el sistema nervioso.
Hoy en día se tiene información sobre cómo están mapeadas las funciones del
cerebro a ciertas áreas de este, pero se sabe también que estos mapeos pueden
cambiar radicalmente en el transcurso de semanas, y algunos animales parecen
33
tener múltiples mapeos. Además que no se entiende claramente como otras áreas
pueden tomar funciones cuando un área está dañada. No hay teorías sobre como
la memoria individual es guardada. La medición de la actividad neuronal de
individuos vivos comenzó en 1929 con la invención de Hans Berger del
electroencefalograma. El desarrollo reciente de la imagen por resonancia
magnética le da a los neurocientificos imágenes detalladas de la actividad
cerebral, permitiendo mediciones que corresponden en formas interesantes a
procesos cognitivos.
La conclusión a la que ha llegado la ciencia hoy en día es que una colección de
células simples pueden llevar al pensamiento, acción y conciencia o en las
palabras de John Searle los cerebros causan las mentes.
1.4.3.4 Escuelas de Pensamiento La inteligencia artificial se divide en dos escuelas de pensamiento que son
reconocidas como:
Inteligencia Artificial Convencional: Tiene que ver con métodos como máquinas
de aprendizaje. Algunos métodos de esta rama son: sistemas expertos,
razonamientos basados en casos, red Bayesiana e Inteligencia artificial basada en
comportamientos.
Inteligencia Artificial Computacional: Es un área de investigación que tiene por
objetivo el desarrollo de técnicas computacionales inspiradas en la observación de
los mecanismos exitosos aplicados por la naturaleza. La muestra computacional
ha dado origen a una nueva disciplina, paralela a la inteligencia artificial, bajo el
nombre de vida artificial.
34
1.4.3.5 Dominios del Problema Deducción razonamiento solución de problemas: La investigación en IA
temprana desarrollo algoritmos que imitaban el razonamiento paso a paso que los
humanos utilizan cuando resuelven acertijos y hacen deducciones lógicas. Para
1980 y 1990 la investigación en IA había desarrollado métodos exitosos para lidiar
con la incertidumbre o la información incompleta, empleando conceptos
provenientes de la probabilidad y la economía. La mayoría de estos problemas
presentan una explosión combinatorial cuando el número de variables sobrepasa
cierto límite.
Los seres humanos solucionan la mayoría de sus problemas usando la intuición
en lugar de deducciones paso a paso como se modelaba antiguamente en la IA.
Se ha hecho progreso al imitar la intuición: en la forma de redes neuronales y
agentes con cuerpo.
Representación del conocimiento: La representación del conocimiento y la
ingeniería del conocimiento son esenciales para la investigación en IA. Muchos de
los problemas que se esperan que las maquinas resuelvan requieren conocimiento
extensivo sobre el mundo. Entre las cosas que la IA necesita representar son:
objetos, propiedades, categorías y relaciones entre objetos; las situaciones,
eventos estados y tiempo; causas y efectos, conocimiento sobre el
conocimiento(lo que sabemos que otra gente sabe); entre otros. Una
representación de lo que existe se define como ontología. Entre los problemas
más difíciles que se encuentran en la IA están:
1. Razonamiento por defecto.
2. La amplitud del conocimiento del sentido común.
3. La forma subsimbolica del conocimiento del sentido común.
35
Planificación: Los agentes inteligentes deben ser capaces de ponerse metas y
alcanzarlas. Ellos necesitan una forma de visualizar el futuro( deben ser capaces
de tener una representación del estado del mundo y ser capaces de hacer
predicciones sobre cómo sus acciones lo pueden cambiar) y ser capaces de tomar
decisiones que maximicen la utilidad o valor de las opciones disponibles.
En los problemas de planificación clásicos, el agente puede asumir que es el único
que actúa sobre el entorno y puede estar seguro sobre las consecuencias que sus
acciones le traen. Aunque si no se cumplen sus predicciones debe estar listo para
cambiar su plan si es necesario, requiriendo que el agente razone bajo
incertidumbre. La planificación multiagente usa la cooperación y la competencia de
muchos agentes para alcanzar una meta dada. Comportamiento emergente como
este es usado por algoritmos evolucionarios y la inteligencia de enjambre.
Aprendizaje: El aprendizaje de maquina ha sido central a la investigación en IA
desde el comienzo. En 1956, en la conferencia original de Dartmouth, Ray
Solomonoff escribió un reporte sobre el aprendizaje de maquina sin supervisión
probabilística máquina
supervisarían es la habilidad de encontrar patrones en un flujo de datos. El
aprendizaje supervisado incluye clasificación y regresión numérica. La
clasificación es usada para determinar a qué categoría algo pertenece, después
de ver un número de ejemplos de cosas provenientes de varias categorías. La
regresión toma un juego de ejemplos de entradas/salidas e intenta descubrir una
función continua que genere las salidas a partir de las entradas. En el aprendizaje
por refuerzo el agente es recompensado por buenas respuestas y castigado por
malas. Estos pueden ser analizados en términos de la teoría de decisión, usando
conceptos como la utilidad. El análisis matemático de los algoritmos de
aprendizaje de máquina y su rendimiento es una rama de la ciencia de la
computación teórica conocida como la teoría del aprendizaje computacional.
36
Procesamiento del lenguaje natural: El procesamiento del lenguaje natural le da
a las maquinas la habilidad de leer y entender los lenguajes que las maquinas
hablan.
Movimiento y manipulación: El campo de la robótica está estrechamente
relacionado con la IA. La inteligencia es requerida para que los robots sean
capaces de manejar ciertas tareas como la manipulación de los objetos la
navegación, con subproblemas como la localización, el mapeo y la planeación del
movimiento.
Percepción: La percepción de maquina es la habilidad de usar entradas desde
sensores para deducir aspectos del mundo. La visión de maquina es la habilidad
de analizar la entrada visual. Algunos ejemplos de subproblemas son
reconocimiento del habla, reconocimiento facial y reconocimiento de objetos.
Inteligencia social: La emoción y las habilidades sociales juegan dos roles para
un agente inteligente. Primero debe ser capaz de predecir las acciones de otros, al
entender sus motivos y estados emocionales(esto involucra teoría de juegos,
teoría de decisión, también como la habilidad de modelar las emociones humanas
y las habilidades perceptuales que detectan las emociones) también, para la
buena interacción entre humanos y computadores, una maquina inteligente
también necesita mostrar emociones.
Creatividad: Una subarea de la IA se refiere a la creatividad tanto teóricamente
como prácticamente. Algunos subproblemas tratan de la Intuición artificial y la
imaginación artificial.
1.4.3.9. Aplicaciones Lingüística computacional: Un campo multidisciplinar de la lingüística y la
informática que utiliza la informática para estudiar y tratar el lenguaje humano.
37
Para lograrlo, intenta modelar de forma lógica el lenguaje natural desde un punto
de vista computacional.
Minería de datos (Data Mining): Se puede definir como "extracción no trivial de
información implícita, desconocida previamente, y potencialmente útil desde los
datos", y consiste en el conjunto de técnicas avanzadas para la extracción de
información escondida en grandes bases de datos.
Mundos virtuales: Se trata de la simulación de mundos o entornos, denominados
virtuales, en los que el hombre interacciona con la máquina en entornos artificiales
semejantes a la vida real.
Procesamiento de lenguaje natural (Natural Language Processing): es una
subdisciplina de la Inteligencia Artificial y la rama ingenieril de la lingüística
computacional. El PLN se ocupa de la formulación e investigación de mecanismos
eficaces computacionalmente para la comunicación entre personas o entre
personas y máquinas por medio de lenguajes naturales.
Robótica: Es una ciencia o rama de la tecnología, que estudia el diseño y
construcción de máquinas capaces de desempeñar tareas realizadas por el ser
humano o que requieren del uso de inteligencia.
Sistemas de apoyo a la decisión: Sistemas de apoyo a la decisión (DSS) son
sistemas de tipo OLAP o de minería de datos que proporcionan información y
soporte para tomar decisiones.
Entretenimiento (Videojuegos): Un programa informático, creado expresamente
para divertir, basado en la interacción entre una persona y un aparato electrónico
donde se ejecuta el videojuego. Estos recrean entornos virtuales en los cuales el
jugador puede controlar a un personaje o cualquier otro elemento de dicho
38
entorno, para conseguir uno o varios objetivos por medio de unas reglas
determinadas.
39
CAPÍTULO 2. DIVISIÓN TEMÁTICA DE LA INTELIGENCIA ARTIFICIAL
2.1 AGENTES INTELIGENTES
El agente inteligente es una entidad autónoma, la cual observa y actúa de acuerdo
a un ambiente y dirige su actividad a conseguir metas. Los agentes inteligentes
pueden aprender o usar conocimiento para conseguir sus metas. Estos pueden
ser muy simples o bastante complejos. Los agentes inteligentes son a menudo
descritos esquemáticamente como un sistema abstracto funcional. Por esta razón,
estos a veces son llamados agentes de inteligencia abstracta (AIA) para
distinguirlos de sus implementaciones del mundo real como sistemas de
computación, sistemas biológicos o de organizaciones. Algunas definiciones de
agentes inteligentes enfatizan su autonomía, y por esto prefieren el término
agentes inteligentes autónomos.
2.1.1 TIPOS DE AGENTES Agentes de Reflejo Simple: Solo actúan basados en la percepción que está
ocurriendo en el momento, ignorando el resto de percepciones históricas. La
función de este agente solo es exitosa cuando el entorno es completamente
observable. Algunos agentes de reflejo también pueden contener información
sobre su estado actual, lo que les permite hacer caso omiso de las condiciones
que ya tuvieron lugar por los actuadores. Los bucles infinitos son a menudo
inevitables para agentes de reflejo simples que operan en entornos parcialmente
observables pero si el agente puede aleatoria sus acciones, puede ser posible
escapar de los bucles infinitos.
40
Figura 1.1 Agente de reflejo simple
Agentes de Reflejo basados en modelo: Un agente basado en modelo puede
manejar un entorno parcialmente observable. Su estado actual es almacenado
dentro del agente manteniendo algún tipo de estructura que describe la parte del
mundo que no puede ser visto. Este conocimiento acerca de "cómo funciona el
mundo" se llama un modelo del mundo, de ahí el nombre de "agente basado en
modelo". Un agente de reflejo basado en modelo debe mantener algún tipo de
modelo interno que depende de la historia de percepción y lo que refleja por lo
menos algunos de los aspectos no observables de la situación actual. A
continuación, elige una acción en la misma forma que el agente de reflejo.
Figura 1.2 Agente de reflejo basado en modelo
41
Agentes Basados en Objetivos: Amplían aún más las capacidades de los
agentes basados en modelos, mediante el uso de información de "objetivo". La
Información objetivo describe las situaciones que son deseables. Esto permite que
el agente tenga una manera de elegir entre varias posibilidades, seleccionando la
que alcanza un estado objetivo. Búsqueda y planificación son los sub áreas de la
inteligencia artificial dedicada a la búsqueda de secuencias de acción que
permitan alcanzar los objetivos del agente. En algunos casos el agente basado en
objetivos parece ser menos eficiente, es más flexible porque el conocimiento que
apoya sus decisiones está representado de forma explícita y se puede modificar.
Figura 1.3 Agente basado en objetivos
Agentes Basados en la Utilidad: Agentes basados en objetivos solo distinguen
entre los estados objetivo y los estados no-objetivo. Es posible definir una medida
de qué tan deseable es un estado en particular. Esta medida se puede obtener
mediante el uso de una función de utilidad que los mapas de un Estado a una
medida de la utilidad del estado. Una medida de desempeño más general debe
permitir la comparación de los estados del mundo diferentes de acuerdo a
exactamente lo feliz que haría el agente. El termino utilidad, puede ser usado par a
describir que tan ¨feliz¨ es el agente.
42
Figura 1.4 Agente basado en utilidad
Un agente basado en la utilidad ha de modelar y realizar un seguimiento de su
entorno, tareas que ha involucrado una gran cantidad de investigaciones sobre la
percepción, representación, razonamiento y aprendizaje.
2.1.2 AGENTES QUE APRENDEN
El aprendizaje tiene una ventaja que permite a los agentes puedan operar en
entornos desconocidos y llegar a ser más competentes de lo que su conocimiento
inicial podría haber permitido. La distinción más importante es entre el "elemento
de aprendizaje", que se encarga de hacer mejoras, y el "elemento de desempeño",
que se encarga de seleccionar las acciones externas.
43
Figura 1.5 Agentes que aprenden
El elemento de aprendizaje utiliza la retroalimentación de la "crítica" en la forma en
que el agente está haciéndolo y determina como el elemento de rendimiento debe
ser modificado para hacerlo mejor en el futuro. El elemento de desempeño es lo
que hemos considerado anteriormente como el agente entero: toma las
percepciones y decide sobre las acciones. El último componente del agente de
aprendizaje es el "generador de problemas", que es responsable de sugerir
acciones que lleven a nuevas experiencias e informativas.
2.1.3 SISTEMAS MULTIAGENTES
Un sistema multiagente (SMA) es un sistema compuesto por múltiples agentes
inteligentes que interactúan entre ellos. Los sistemas multiagente pueden ser
utilizados para resolver problemas que son difíciles o imposibles de resolver para
un agente individual o un sistema monolítico. Los ámbitos en los que la
investigación de sistemas multiagente puede ofrecer un enfoque adecuado
incluyen el comercio online , la respuesta a desastres y el modelado de
estructuras sociales.
44
2.2 RESOLUCION DE PROBLEMAS (PROBLEM-SOLVING)
2.2.1 BUSQUEDAS EN ESPACIOS DE ESTADOS Búsquedas A*: El algoritmo de búsqueda A* usa la búsqueda mejor-primero y
encuentra el camino de menor costo desde el nodo inicial hasta un nodo objetivo.
Esto ocurre usando una función heurística distancia más costo (conocida como
f(x)) para determinar el orden en el cual la búsqueda visita los nodos en el árbol. El
Algoritmo de búsqueda A* ha sido generalizado dentro de un algoritmo de
búsqueda heurística bidireccional.
Hill Climbing: Conocido como el algoritmo de búsqueda en escalada. Se trata
simplemente de un ciclo que continuamente se mueve en la dirección de valor
creciente, es decir, cuesta arriba. Se termina cuando se llega a un "Pico", donde
ningún vecino tiene un valor más alto. El algoritmo no mantiene un árbol de
búsqueda, por lo que el nodo actual de estructura de datos sólo necesita registrar
el estado y el valor de su función objetivo. Los algoritmos Hill Climbing suelen
elegir al azar entre el conjunto de los mejores sucesores, si hay más de uno.
Grasp: Es un algoritmo de metaheurística que se aplica comúnmente a problemas
de optimización combinatoria. GRASP, por lo general consiste en iteraciones
hechas de construcciones sucesivas de una solución codiciosa aleatoria y
posteriores mejoras iterativas de la misma a través de una búsqueda l ocal. Las
soluciones codiciosas al azar son generadas por la adición de elementos a la
solución del problema establecido de una lista de elementos clasificados por una
función codiciosa de acuerdo a la calidad de la solución que va a lograr. Para
obtener la variabilidad en el candidato de un conjunto de soluciones codiciosas,
los elementos candidatos bien clasificados a menudo se colocan en una lista de
candidatos restringida (también conocido como RCL), y escogidos al azar en la
construcción de la solución.
45
Búsquedas Tabú: Es un método de optimización matemática, perteneciente a la
clase de técnicas de búsqueda local. La búsqueda tabú aumenta el rendimiento
del método de búsqueda local mediante el uso de estructuras de memoria: una
vez que una potencial solución es determinada, se la marca como " tabú" de modo
que el algoritmo no vuelva a visitar esa posible solución. La búsqueda tabú es
atribuida a Fred Glover.
La búsqueda tabú es un algoritmo metaheurístico que puede utilizarse para
resolver problemas de optimización combinatoria, tales como el problema del
viajante (TSP - Travelling Salesman Problem). La búsqueda tabú utiliza un
procedimiento de búsqueda local o por vecindades para moverse iterativamente
desde una solución x hacia una solución x' en la vecindad de x, hasta satisfacer
algún criterio de parada. Para poder explorar regiones del espacio de búsqueda
que serían dejadas de lado por el procedimiento de búsqueda local, la búsqueda
tabú modifica la estructura de vecinos para cada solución a medida que la
búsqueda progresa. Las soluciones admitidas para N * (x), el nuevo vecindario,
son determinadas mediante el uso de estructuras de memoria. La búsqueda
entonces progresa moviéndose iterativamente de una solución x hacia una
solución x' en N * (x).
Búsquedas Desinformadas: El término significa que no tienen ninguna
información adicional sobre los estados más allá de lo previsto en la definición del
problema. Todo lo que pueden hacer es generar sucesores y distinguir un estado
objetivo de un estado no objetivo. Estrategias que saben si un estado objetivo es
"más prometedor" que otro se llama búsqueda informada o búsqueda heurística.
Todas las estrategias de búsqueda se distinguen por el orden en el que los nodos
se expanden.
Búsqueda en Anchura: La búsqueda en amplitud es una estrategia simple en la
que se expande el nodo raíz, luego todos los sucesores del nodo raíz se
46
expanden, luego sus sucesores, y así sucesivamente. En general, todos los nodos
se expanden a una determinada profundidad en el á rbol de búsqueda antes que
los nodos en el próximo nivel se expandan.
Búsqueda primero en profundidad: La búsqueda en profundidad siempre se
expande el nodo más profundo en la franja actual del árbol de búsqueda. La
búsqueda se efectuará de inmediato al nivel más profundo del árbol de búsqueda,
donde los nodos no tienen sucesores. Como los nodos se expanden, se eliminan
de la franja, por lo que entonces la búsqueda de "una copia de seguridad o
respaldo" para los próximos nodos superficiales que todavía tienen sucesores
inexplorados.
La búsqueda en profundidad tiene requerimientos muy modestos de memoria.
Necesita almacenar un solo camino desde la raíz hasta un nodo hoja, junto con el
resto de nodos hermanos sin expandir para cada nodo en el camino. Una vez que
un nodo se ha expandido, se puede quitar de la memoria tan pronto como todos
sus descendientes se hayan explorado completamente.
Backtracking: Una variante de la búsqueda en profundidad (Depth-First Search)
llamada búsqueda backtracking utiliza la memoria mucho menos. En backtracking,
sólo un sucesor se genera en un momento en lugar de todos los sucesores, c ada
nodo parcialmente ampliado recuerda cual sucesor generar después. De esta
manera, sólo O(m) de memoria se necesita en lugar de O(bm).
2.2.2 BUSQUEDA ADVERSARIAL
Existen entornos competitivos en los cuales, los objetivos de un agente inteligente
en particular se encuentran en conflicto, lo que ocasiona problemas de búsqueda
entre adversarios o adversarial. Comúnmente, también son conocidos estos
problemas como juegos. La forma de responder en un problema o juego, es
47
mediante un árbol de juegos, que es un tipo especial de árbol semántico en el que
los nodos representan configuraciones del tablero, y las ramas indican como una
configuración puede transformarse en otra por medio de un solo movimiento.
2.2.3 COMPUTACIÓN EVOLUTIVA
La computación evolutiva es un subcampo de la inteligencia artificial (en particular
la inteligencia computacional) que implica problemas de optimización
combinatoria. Utiliza el progreso iterativo, como el crecimiento o desarrollo de una
población. Esta población se selecciona en una búsqueda guiada al azar utilizando
procesamiento en paralelo para lograr el fin deseado. Estos procesos son a
menudo inspirados en los mecanismos biológicos de la evolución.
Así como la evolución puede producir procesos y redes altamente optimizados ,
que tienen muchas aplicaciones en la informática, las simulaciones de la
evolución, usando algoritmos evolutivos y la vida artificial iniciada con la obra de
Nils Aall Barricelli en la década de 1960, y extendida por Alex Fraser, quien
publicó una serie de documentos sobre simulación de la selección artificial, la
evolución artificial se convirtió en un ampliamente reconocido método de
optimización. Como resultado del trabajo de Ingo Rechenberg en la década de
1960 y principios de 1970, que utiliza estrategias de evolución para resolver
problemas complejos de ingeniería, los algoritmos genéticos en particular, se
hicieron populares a través de los escritos de John Holland. Según creció el
interés académico, el dramático aumento en el poder de las computado ras
permitió aplicaciones prácticas, incluyendo la evolución automática de programas
de computador. Los algoritmos evolutivos son utilizados para resolver problemas
multidimensionales de manera más eficiente que el software producido por los
diseñadores humanos.
48
2.3 CONOCIMIENTO Y RAZONAMIENTO (KNOWLEDGE AND REASONING)
La representación del conocimiento es un área de investigación dentro de lo que
es la inteligencia artificial que apunta a representar el conocimiento en símbolos
para facilitar la inferencia de nuevo conocimiento a partir del conocimiento inicial
esto lo que se conoce como razonamiento.
2.4 PLANIFICACION (PLANNING)
La tarea de dar con una secuencia de acciones que logren un objetivo es llamada
planificación. Se desarrolla un lenguaje expresivo pero cuidadosamente limitado
para la representación de problemas de planificación, incluyendo las acciones y
los estados. El lenguaje está estrechamente relacionado a la proposición y
representaciones de primer orden de las acciones. Muestra cómo avanzar y
retroceder algoritmos de búsqueda pueden tomar ventaja de esta representación,
principalmente a través de heurística precisa que se pueden derivar de forma
automática a partir de la estructura de la representación.
2.5 APRENDIZAJE DE MAQUINA (MACHINE LEARNING) El aprendizaje de maquina es una disciplina científica que trata con el diseño y
desarrollo de algoritmos que le permiten a los computadores evolucionar
comportamientos basados en datos empíricos. El aprendizaje de maquina se
preocupa del desarrollo de algoritmos que le permiten a una maquina aprender vía
inferencia inductiva basada en la observación de datos que representan
información incompleta sobre un fenómeno estadístico y lo generalizan a reglas y
hacen predicciones sobre los datos futuros. Una tarea importante del aprendizaje
de maquina es la clasificación a la cual también se le llama reconocimiento de
patrones, en el cual las maquinas aprenden a reconocer automáticamente
49
patrones complejos, para distinguir entre ejemplos basados en los diferentes
patrones, y para hacer predicciones inteligentes sobre su clase.
2.6 PERCEPCION (PERCEPTION)
La percepción provee a los agentes con información del mundo en el que habitan
por medio de la interpretación de las respuestas obtenidas a través de los
sensores. Un sensor mide algún aspecto en particular del entorno en una forma
que pueda ser usada como entrada por un programa agente. El sensor podría ser
tan simple como un interruptor, el cual entrega un bit diciendo si esta encendido o
apagado, o tan complejo como el ojo humano. Una variedad de modalidades
sensoriales están disponibles en los agentes artificiales. Aquellos sensores que se
comparten con los humanos incluyen a la visión, la escucha y el tacto. Las
modalidades que no están disponibles para los humanos sin equipos
especializados, incluyen la radio, infrarrojo, GPS y señales wireless. Algunos
robots hacen detección activa (active sensing), lo que significa que mandan una
señal, tal como la de radar o ultrasonido, y detectan la reflexión de estas señales
fuera del entorno.
2.7 COMUNICACION (COMMUNICATING)
La comunicación es conocida como el intercambio intencional de información
producida y percibida de señales provenientes de un sistema compartido de
señales convencionales.
2.7.1 PROCESAMIENTO DEL LENGUAJE NATURAL
En la que vemos por qué los agentes podrían desear el intercambio de mensajes
de carga-informática con los demás y cómo pueden hacerlo. La comunicación es
el intercambio de información intencional provocada por la producción y
50
percepción de los signos extraídos de un sistema compartido de símbolos
convencionales.
2.7.2 ROBOTICA
La robótica es un área de la inteligencia artificial en la que los agentes están
dotados de efectores físicos para interactuar con el mundo real. Los robots son
agentes físicos que realizan tareas mediante la manipulación del mundo físico.
Para ello, están equipados con efectores, tales como las piernas, ruedas,
articulaciones, y pinzas. Los Efectores tienen un solo propósito: hacer valer las
fuerzas físicas en el medio ambiente. Los robots están equipados con sensores,
que les permiten percibir su entorno. La robótica actual emplea un conjunto
diverso de sensores, incluyendo cámaras y rayos láser para medir el medio
ambiente, los giroscopios y acelerómetros para medir el movimiento del propio
robot.
La mayoría de los robots actuales se dividen en tres categorías pri ncipales.
Manipuladores, brazos robots, están físicamente anclados en su lugar de trabajo,
por ejemplo, en una línea de montaje de una fábrica o en la Estación Espacial
Internacional. Manipulador de movimiento por lo general implica una cadena de
articulaciones controlables, lo que permite a estos robots colocar sus efectores en
cualquier posición dentro del lugar de trabajo. Los manipuladores son, de lejos el
tipo más común de los robots industriales, con aproximadamente un millón de
unidades instaladas en todo el mundo. Algunos manipuladores móviles se utilizan
en los hospitales para ayudar a los cirujanos. Pocos fabricantes de coches podrían
sobrevivir sin manipuladores robóticos, y algunos manipuladores han sido
utilizados para generar obras de arte originales.
La segunda categoría es el robot móvil. Robots móviles se mueven de su entorno
utilizando las ruedas, las piernas, o mecanismos similares. Han sido objeto de un
51
uso entrega de alimentos en los hospitales, el movimiento de contenedores en los
muelles de carga, y otras tareas similares. Vehículos terrestres no tripulados, o
UGVs, conducen de manera autónoma en las calles, carreteras y fuera de la
carretera. El planetario móvil exploró Marte durante un período de 3 meses en
1997. Posteriores robots de la NASA incluyen el gemelo Mars Exploration Rovers,
que aterrizó en 2003 y seguían funcionando seis años después. Otros tipos de
robots móviles incluyen vehículos aéreos no tripulados (UAVs), comúnmente
utilizados para la vigilancia, fumigación y operaciones militares. UAV usados
comúnmente por el ejército estadounidense.
52
CAPÍTULO 3. ORGANIZACIÓN POR ASIGNATURA
3.1 METODOLOGIA UTILIZADA
El análisis de los libros más reconocidos mundialmente sobre Inteligencia Artificial,
la recopilación de información en algunas bases de datos y el estudio de los
diferentes cursos y planes de estudio que ofrecen varias universidades dentro y
fuera del país con relación a la IA ha permitido estructurar desde la perspectiva de
los autores un conjunto de áreas temáticas que permiten organizarse y distribuirse
apropiadamente en cuatro materias.
La metodología que se utilizó para identificar y plantear las áreas temáticas de la
IA se basa principalmente en tres factores:
Libros más reconocidos.
¿Qué existe en otras Universidades sobre IA?
Tendencias actuales de la IA.
Estos tres factores permitieron indagar acerca de cuáles podrían ser las grandes
áreas temáticas que permitirían estructurar las materias propuestas y el conjunto
de materias como línea de profundización.
Estructura Temática de los Libros Identificados:
Artificial Intelligence: A New Synthesis - Nilsson 1. INTRODUCCION
2. MAQUINAS REACTIVAS
3. BUSQUEDA EN ESPACIO DE ESTADOS
53
4. REPRESENTACION DEL CONOCIMIENTO Y RAZONAMIENTO
5. METODOS DE PLANEACION BASADOS EN LA LOGICA
6. COMUNICACIÓN E INTEGRACIÓN
Artificial Intelligence: A Modern Approach - Norvig 1. INTELIGENCIA ARTIFICIAL
2. SOLUCION DE PROBLEMAS
3. CONOCIMIENTO, RAZONAMIENTO Y PLANEACION
4. CONOCIMIENTO CON INCERTIDUBRE Y RAZONAMIENTO
5. INCERTIDUMBRE CONOCIMIENTO Y RAZONAMIENTO
6. APRENDIZAJE
7. COMUNICACION, PERCEPCION Y ACTUACION
8. CONCLUSIONES
Artificial Intelligence: Structures and Strategies for Complex Problem Solving - Luger
1. INTELIGENCIA ARTIFICIAL: LAS RAICES Y EL ÁMBITO
2. INTELIGENCIA ARTIFICIAL COMO REPRESENTACIÓN Y BUSQUEDA
3. REPRESENTACION E INTELIGENCIA: EL DESAFIO DE LA INTELIGENCIA
ARTIFICIAL
4. MAQUINAS DE APRENDIZAJE
5. TEMAS AVANZADOS PARA LA RESOLUCIÓN DE PROBLEMAS DE
INTELIGENCIA ARTIFICIAL
6. TECNICAS DE PROGRAMACIÓN Y LENGUAJES PARA LA INTELIGENCIA
ARTIFICIAL
54
3.2 DIVISIÓN POR TEMAS
3.2.1 INTELIGENCIA ARTIFICIAL I Es la primera materia y como tal, una materia introductoria que permite al
estudiante tener una general pero concreta visión de lo que es la Inteligencia
Artificial a través una breve introducción, y percibir el potencial que tiene esta
ciencia a través de los agentes inteligentes que fue planteado como hilo conductor
de las cuatro materias. La materia contiene dos grandes área s temáticas que son:
Resolución de Problemas Parte I (Problem-Solving) y Computación Evolutiva. A
continuación se presentan los temas planteados para esta materia:
INTRODUCCION A LA INTELIGENCIA ARTIFICIAL
¿Qué es la Inteligencia Artificial?
Enfoques de la IA
Áreas de aplicación de la IA
Tendencias Actuales de la IA
AGENTES INTELIGENTES
Teoría de Agentes
o Estructura de los Agentes
o Autonomía
Entornos
o Tipos de Entornos
o Propiedades de los Entornos
Tipos de Agentes
o Agentes de Reflejo Simple
o Agentes de Reflejo basados en modelo
o Agentes basados en Metas
o Agentes basados en Utilidad
Arquitecturas de Agentes
55
o Arquitecturas de 3 Niveles
o Arbitraje de Objetivos
o Arquitectura Triple-torre
o Bootstrapping
BUSQUEDAS EN ESPACIOS DE ESTADOS
Búsquedas Informadas
o A*
o Hill climbing
o Graps
o Tabu Search
Búsquedas Desinformadas
o BSF.
o DSF.
o BackTracking
Agentes que Planifican
o Memoria vs Computación
o Gráficos en espacios de estados
o Búsqueda explicita en espacios de estados
o Noción de Grafico
COMPUTACION EVOLUTIVA
Machine Evolución
o Programación Genética
o Algoritmos Genéticos
Computación Swarm
o Colonia de hormigas.
o Sistemas inmunes artificiales.
o Sistemas de búsquedas cargados.
o Algoritmo Firefly
56
o Partículas de optimización SWARM
3.2.2 INTELIGENCIA ARTIFICIAL IIEs la segunda materia, que permite concretar el área de resolución de problemas
y continuar con la línea de IA a través del conocimiento, el razonamiento y la
planificación; que mediante el hilo conductor de los agentes inteligentes, permitirá
al estudiante obtener las bases necesarias para avanzar hacia el aprendizaje de
máquina. La materia contiene tres grandes áreas temáticas que son: Resolución
de Problemas Parte II (Problem-Solving), Conocimiento y Razonamiento
(Knowledge and Reasoning), Planificación (Planning). A continuación se
presentan los temas planteados para esta materia:
RESOLUCION DE PROBLEMAS
Búsqueda Adversarial
o Juegos
Decisiones Óptimas
Estocásticos
Parcialmente Observables
o Alfa-Beta Pruning
o Decisiones Imperfectas en Tiempo Real
o Proceso Minimax
Problemas que Satisfacen Restricciones
o Definición de problemas
o Propagación restringida
o Backtracking Search
Agentes Inteligentes
o Búsquedas con Agentes
o Agentes que Solucionan Problemas
57
CONOCIMIENTO Y RAZONAMIENTO
Representación del Conocimiento
o Ontologías. o Lógica descriptiva.
o Redes semánticas.
Representación del Conocimiento con Información Incierta
o Cuantificando la incertidumbre.
o Razonamiento probabilístico.
o Razonamiento probabilístico en el tiempo.
o Tomando decisiones simples.
o Tomando decisiones complejas.
o Lógica Difusa
Razonamiento
o Sistemas de producción.
o Máquinas de estado.
o Logical agents.
o Lógica de primer orden.
o Inferencia en la lógica del primer orden.
o Razonamiento basado en lógica de descripción.
Razonamiento con Información Incierta
o Inferencia Probabilística
o Redes Bayesianas
o Patrones de Inferencia en Redes Bayesianas
o Evidencia Incierta
o Separación-D
o Inferencia Probabilística en Poliarboles
o Modelos Ocultos de Markov
Sistemas Basados en Conocimiento
o Confrontación del mundo real
o Razonamiento usando clausulas Horn
58
o Reglas de aprendizaje
o Sistemas expertos
PLANIFICACIÓN
Planificación clásica
o Calculo situacional o Gráficos de Planificación
o Algoritmos del Planificación
Planificación y actuando en el mundo real
o Tiempos, Horarios y recursos
o Planificación Jerárquica
o Planificación y actuación en dominios no determinísticos
o Sistemas de planificación STRIPS
o Planes de Aprendizaje
3.2.3 APRENDIZAJE DE MAQUINAEs la tercera materia, donde el estudiante aprenderá los conceptos necesarios
para comprender el aprendizaje de máquina, los tipos de aprendizaje, la
percepción y a través de los conceptos vistos en las anteriores materias como la
resolución de problemas, el conocimiento, el razonamiento y la planificación. El
estudiante logrará empezar a estructurar un agente inteligente con diferentes
componentes que aluden un comportamiento inteligente. Por último se mostrará al
estudiante una introducción a una de las tecnologías con mayor éxito en la
industria hoy en día: La minería de datos. La materia contiene tres grandes áreas
temáticas que son: Aprendizaje de Maquina (Machine Learning), Percepción
(Perception) e Introducción a la Minería de Datos (Data Mining). A continuación se
presentan los temas planteados para esta materia:
APRENDIZAJE BASADO EN SIMBOLOS
Conocimiento en Aprendizaje
59
o Aprendizaje basado en Explicación
o Aprendizaje usando Información Relevante
o Programación Lógico-Inductiva
Aprendizaje No Supervisado
Aprendizaje por Refuerzo
o Por Refuerzo Pasivo
o Por Refuerzo Activo
o Políticas de búsqueda
o Aprendizaje Q
o Aplicaciones
APRENDIZAJE CONEXIONISTA
Aprendizaje Supervisado
min
Arboles de Decisión
Redes Neuronales
Redes Bayesianas
Aprendizaje y Acción con Redes de Bayes
Máquinas de Soporte Vectorial
Modelos no paramétricos
APRENDIZAJE SOCIAL Y EMERGENTE
Modelos de Aprendizaje social y emergente
Sistemas Clasificadores
Vida artificial
MODELOS DE APRENDIZAJE PROBABILISTICO
Aprendizaje Estadístico
Aprendizaje con Información Completa
60
Aprendizaje con Variables Ocultas
PERCEPCION
Formación de Imágenes
Operaciones de procesamiento de Imágenes
Reconocimiento de objetos y apariencias
Reconstrucción del mundo en 3D
Usando la visión
Agentes Estimulo-Respuesta
o Acción y Percepción
o Representación e Implementación de funciones de acción
INTRODUCCION AL DATA MINING
Minería de datos y aprendizaje de máquina
Ejemplos simples de minería de datos
Aplicaciones de campo
Minería de datos y estadística
3.2.4 IA APLICADA Es la cuarta y última materia, en la que se pretende guiar al estudiante hacia las
ramas aplicadas de la IA que surgen a raíz de los conceptos propuestos en las
anteriores materias. El estudiante por medio de las herramientas y conceptos
adquiridos, podrá modelar adecuadamente, mediante la estructura temática
ofrecida en la línea de profundización, agentes inteligentes. Sin lugar a dudas esta
materia tiene un propósito más que teórico, motivando al estudiante a ver los
alcances de la IA y estimular la capacidad creativa mediante resultados que puede
lograr sustentados en el conocimiento adquirido. La materia contiene cuatro
grandes áreas temáticas aplicadas que son: Minería de Datos (Data Mining),
Robótica (Robotics), Procesamiento del Lenguaje Natural (Natural Language
61
Processing) y Sistemas Multiagentes (MAS - Multi-Agent System). A continuación
se presentan los temas planteados para esta materia:
PROCESAMIENTO DEL LENGUAJE NATURAL
Entendimiento del Lenguaje Natural
o Modelos lenguaje
Procesamiento del Lenguaje Natural
o Clasificación de textos
o Captura de información
o Extracción de información
Lenguaje Natural para la Comunicación
o Estructura gramatical de las frases
o Análisis Sintáctico
o Interpretación Semántica
o Traducción de maquina
o Reconocimiento del habla
SISTEMAS MULTIAGENTES
Multiagentes
o Planificación con Multiagentes
o Decisiones con Multiagentes
o Agentes Interactivos
o Modelos de otros Agentes
o Modelo lógico del conocimiento
Comunicación entre Agentes
o El acto de hablar
o Entendiendo cadenas de lenguajes
o Comunicación eficiente
Agentes BDI
62
ROBOTICA
Robot Hardware
Percepción Robótica
Planeación del Movimiento
Planeación Incierta del Movimiento
Movimiento
Arquitecturas del Software Robótico
Visión Artificial
o Procesamiento de Imágenes
o Análisis de Escenas
o Estereovisión e Información de Profundidad
DATA MINING
Conceptos entradas y atributos
Inferencia Estadística
Arboles de decisiones
Reglas de construcción
Modelos lineares
Aprendizaje basado en instancias
Clusterizacion
Aprendizaje multinstancia
63
3.3 HERRAMIENTAS TECNOLÓGICAS
3.3.1 INTRODUCCION
Existen múltiples herramientas tecnológicas que permiten el modelado de
soluciones que utilizan inteligencia artificial, se enumeran las herramientas que
tienen licencias GPL. Debido a que el alcance de es te documento nos limitamos a
enumerar las múltiples alternativas que existen, más no de calificarlas o elegir una
sobre la otra.
3.3.2 HERRAMIENTAS PARA EL MODELADO DE AGENTES INTELIGENTES
A-globe
ABLE
Ascape
Breve
Cormas
Cougaar
EcoLab
EVO
JADE
JAS
MASON
metaABM (A meta-modeling environment supporting multiple ABM
platforms)
Mobidyc
Quicksilver
Repast
SIM_AGENT
SeSAm
64
SimPy
Swarm
Xholon
Zeus
deX
NetLogo
StarLogo
StarLogoT
AgentSheets
iGEN
AnyLogic
MASS
3.3.3 HERRAMIENTAS QUE MODELAN SOLUCIONES QUE SE BASAN EN COMPUTACION EVOLUTIVA
Bioconductor.
BioPerl.
BioJava.
BioRuby.
Bioclipse.
EMBOSS.
Taverna workbench.
3.3.4 HERRAMIENTAS COMPUTACIONALES QUE MODELAN SOLUCIONES QUE UTILIZAN EL APRENDIZAJE DE MAQUINA
RapidMiner.
KNIME.
Weka.
ODM.
65
Shogun toolbox.
Orange.
Apache Mahout.
3.4 MÉTODO DE ENSEÑANZA BASADO EN PROBLEMAS
3.4.1 Introducción
El aprendizaje basado en problemas es una técnica de enseñanza que presenta
una serie de ventajas con respecto a la enseñanza tradicional catedrática que se
viene implementando en el programa ingeniería de sistemas y computación de la
universidad tecnológica de Pereira, entre estas ventajas se encuentran:
Exige el trabajo en grupo.
Mejora las capacidades de aprendizaje de los estudiantes.
Crean competencias de adquisición de conocimiento que acompañan a los
estudiantes de por vida.
3.4.2 Aprendizaje basado en problemas 3.4.2.1 Contexto histórico El aprendizaje basado en problemas es un desarrollo de currículo y sistema de
enseñanza, que reconoce la necesidad de desarrollar habilidades de solución de
problemas así como también la necesidad de ayudar a los estudiantes a
desarrollar el conocimiento y la habilidad requerida.
La primera aplicación de PBL, y quizás la forma más estricta y pura de PBL, fue en
escuelas de medicina las cuales rigurosamente prueban el conocimiento de sus
graduados.
66
3.4.2.2 Características del PBL
El aprendizaje basado en problemas tiene distintas características que se deben
tener en cuenta al diseñar un currículo. Estas son:
1. Uso de problemas del mundo real. Los problemas son relevantes y están
contextualizados. Es en el proceso de luchar con problemas que los
estudiantes aprenden contenido y habilidades criticas de pensamiento.
2. Confiar en los problemas para presentar el currículo. Esto significa que los
problemas no prueban habilidades; asisten en el desarrollo de habilidades
en sí mismos.
3. Los problemas están mal estructurados. No se supone que exista una única
solución a estos problemas, y a medida que nueva información es
recopilada de manera reiterativa, la percepción del problema y su solución
cambian.
4. El PBL está centrado en el educando, a estos se les va dando
progresivamente más responsabilidad por su propia educación y se
convierten incrementalmente más independientes de su docente para su
educación.
5. PBL produce que los estudiantes adquieran habilidades de aprendizaje
independiente que los acompañaran el resto de sus vidas y una forma de
pensar que permitirán a futuro, que incorporen experiencias en su carrera y
en su vida a su conocimiento más fácilmente.
3.4.2.3 Tipos de PBL 3.4.2.3.1 PBL Estimulado por Problemas: El PBL estimulado por problemas usa
problemas relevantes al área de conocimiento para introducir y aprender nuevo
conocimiento. Los objetivos del PBL estimulado por problemas son:
Desarrollo de habilidades especificas del dominio.
Desarrollo de habilidades de solución de problemas.
67
Adquisición de conocimiento específico del dominio.
El proceso de PBL estimulado por problemas:
1. Los estudiantes reciben el siguiente material de aprendizaje.
El problema.
Una lista de objetivos que el estudiante debe ir cumpliendo a medida
que trabaja sobre el problema.
Una lista de materiales de referencia que conciernen a los objetivos
básicos.
Preguntas que se enfocan en conceptos importantes y aplicaciones
de la base de conocimiento.
2. Los estudiantes trabajan en equipos para completar el proyecto, resolver el
problema, y lograr los objetivos de aprendizaje.
Cada estudiante tiene un rol particular en el equipo. Como líder,
facilitador, anotador o miembro del equipo
La cantidad de tiempo que se debe invertir en cada proyecto es
limitada.
El equipo planea sus propias actividades y decide cómo usar el
tiempo permitido.
3. El desempeño de los estudiantes es evaluado por instructores, pares, por
medio de la autoevaluación, cuestionarios, entrevistas, observación y otros
métodos de evaluación.
A través del proceso, los instructores sirven como recursos para los equipos y
proveen de guía y dirección si el equipo lo pide o se estanca en el desarrollo del
proyecto.
3.4.2.3.2 PBL Centrado en el Estudiante: El PBL centrado en el estudiante es
similar al PBL basado en problemas en algunos aspectos. El basado en el
estudiante tiene los mismos objetivos que el estimulado por problemas, pero
68
incluye un objetivo más: enseñar habilidades de aprendizaje que acompañen al
estudiante por el resto de su vida.
El proceso del PBL centrado en el estudiante:
1. Los estudiantes reciben la situación problema.
2. Los estudiantes trabajan en el problema en equipo.
3. Los estudiantes son evaluados en múltiples formas por los instructores,
pares y si mismos.
El proceso se ve similar al PBL estimulado por problemas, pero hay diferencias
significativas en cada paso, las cuales se deben principalmente al objetivo de
desarrollar competencias de aprendizaje. Las principales diferencias se
encuentran en las responsabilidades del estudiante. En el PBL centrado en el
estudiante:
Los estudiantes identifican que temas que desean explorar.
Los estudiantes determinan el contenido que debe ser dominado.
Los estudiantes determinan y localizan los recursos que deben ser usados.
En pocas palabras, los estudiantes deben definir los temas a aprender. Como es
el caso del PBL estimulado por problemas, los estudiantes deciden como
apropiadamente usar la nueva información adquirida y el conocimiento de manera
que puedan resolver el problema que se les presenta.
3.4.3.3 Porque usar PBL: Existen varias razones por las cuales usar PBL. Entre
las cuales se encuentran:
1. Los estudiantes retienen poco de lo que aprenden cuando se les enseña en
la forma de cátedra tradicional.
69
2. Los estudiantes usualmente no usan el conocimiento que han aprendido
apropiadamente.
3. Dado que los estudiantes olvidan mucho de lo que han aprendido se les
deben dar habilidades que permitan en un futuro reaprender el
conocimiento que se pierda con el tiempo.
4. El PBL crea las tres condiciones que la teoría de la información asocia con
uso de nueva información:
Activación de conocimiento previo. Los estudiantes aplican
conocimiento para entender nueva información.
La similitud de contextos en los cuales la información es aprendida y
después aplicada. La investigación demuestra que el conocimiento
es mucho más fácil de recordar en el contexto que fue originalmente
aprendido. El PBL provee problemas dentro de un contexto parecido
al que se encontrara en el futuro profesional.
La oportunidad de elaborar con la información que es aprendida
durante el proceso de solución del problema. Esto provee
redundancia en la memoria lo que hace más difícil que se olvide y
facilita el recordar. La elaboración ocurre cuando se discute con los
pares, cuando los pares corrigen, en el intercambio de puntos de
vista, y por medio de la preparación de ensayos sobre lo que los
estudiantes han aprendido durante el proceso de solución de
problema.
3.4.3.4 EL PBL en la Aula de Clase: Existen varios modelos sobre como el PBL
funciona en la aula de clase. Todos están de acuerdo en que en un currículo de
PBL:
1. Los estudiantes trabajan a través de una serie de problemas diseñados
para:
70
Ser auténticos(ser problemas del mundo real).
Tener relación con las diferentes áreas del currículo.
través de
la búsqueda de un mínimo de información.
Se problemas del mundo real, así los estudiantes se encuentran
interactuando con el problema y no simplemente siendo
observadores.
2. guía que
3. Los estudiantes trabajan colaborativamente en pequeños grupos hacia la
resolución del problema.
Proceso Propósito
Los estudiantes leen y evalúan el problema sin
una preparación previa. Le enseña a los estudiantes a codificar
y organizar la información de manera
útil.
Le permito a los estudiantes encontrar
lo que ellos saben y lo que no. Las
concepciones pueden ser identificadas
y corregidas cuando se discute el
problema.
Los estudiantes discuten y analizan el
problema usando conocimiento previo y los
recursos disponibles.
El tutor propone preguntas como: Necesitas
más información? Estas seguro de los hechos
o necesitas de mi intervención? Piensas que
más información sobre este tema sería útil?.
Desarrollo de habilidades cognitivas
para el proceso de solución de
problemas.
Desarrollo de habilidades de auto
monitoreo para identificar las
necesidades de aprendizaje.
Desarrollo del cuestionamiento iniciado
por el estudiante habitual.
Los estudiantes deciden que necesitan saber y Estudio auto dirigido.
71
como encontrar esa información. Deciden que
recursos usar (gente, publicaciones, etc.).
El estudiante revisita el problema con nueva
información y conocimiento adquirido durante
el autoestudio.
Los estudiantes critican los recursos de
aprendizaje usados.
El grupo decide hipótesis apropiadas y criticas
antes de actuar.
Nueva organización de la información
para solucionar el problema.
Autovaloración.
Valoración por los pares.
Los estudiantes piensan sobre como lo que
aprendieron ha ayudado a su entendimiento. Reflexión.
Autovaloración.
3.4.3.5 El funcionamiento de los grupos en PBL: Los equipos son responsables
de programar sus propias actividades y decidir cómo usar el tiempo para resolver
el problema y dominar los objetivos de aprendizaje. Dependiendo de la versión de
PBL los equipos tienen mayor o menor responsabilidad en determinar los temas
de aprendizaje y localizar los recursos necesarios para resolver el problema.
Los grupos usualmente consisten de 5 a 7 estudiantes. Cada miembro del equipo
mantiene un rol particular a través de la duración del proyecto. Los cuatro roles
posibles son:
1. Líder de proyecto que es el que propone las agendas de encuentros,
sugiere la división del trabajo, y desarrolla el plan general del proyecto.
2. facilitador que es quien describe los procesos que se seguirán durante cada
paso del plan proyectado, determina el momento apropiado para proceder
en el plan y sugiere los ajustes que necesite el plan.
3. El digitador, que es quien toma notas de cada reunión del grupo.
72
4. Un miembro del equipo que toma notas individuales, participa en la
discusión, y revisa los recursos.
Otros modelos de PBL incluyen un mentor o tutor dentro del grupo. Este
generalmente es un miembro de facultad, pero otro estudiante a veces funciona en
este rol.
3.4.3.6 Organización de los equipos: 3.4.3.6.1 equipos organizados verticalmente: El líder del proyecto toma
decisiones cruciales en caso que el equipo no llegue al consenso.
3.4.3.6.2 equipos organizados horizontalmente: Las decisiones cruciales se
toman democráticamente.
3.4.3.7 Roles Individuales: El PBL requiere que los estudiantes tomen
responsabilidad de su aprendizaje e identifiquen los temas que quieren y
necesitan aprender o reforzar. De acuerdo con Schmidt y Moust, el estudiante
1. Clarificar términos desconocidos y conceptos en la descripción del
problema.
2. Definir los problemas. Listar los fenómenos o eventos a ser explicados.
3. Analizar el problema. Tratar de producir cuantas explicaciones diferentes
para el fenómeno como se pueda, usando conocimiento previo y sentido
común.
4. Analizar el problema. Discutirlo. Criticar las explicaciones propuestas y
tratar de producir una descripción coherente de los procesos que, de
acuerdo con lo que se piensa causa los fenómenos o eventos.
5. Formular los temas a aprender para el aprendizaje auto dirigido.
73
6. Llenar los vacíos en el conocimiento a través de autoestudio.
7. Compartir los descubrimientos con el grupo y tratar de integrar el
conocimiento adquirido dentro de una explicación comprensiva de los
fenómenos o eventos. Verificar si se conoce lo suficiente sobre el tema para
resolver el problema.
3.4.3.8 El Papel del Instructor: En el PBL el instructor sirve como un recurso
para los equipos de estudiantes. EL instructor frecuentemente actúa como un
mentor o tutor para el grupo. El tutor abandona el rol como dispensador de
información. El papel en el que el instructor debe estar más activo en la planeación
del contenido del PBL y en el orden de los proyectos o problemas, entregando
retroalimentación inmediata en el trabajo de los estudiantes y la discusión, y
evaluándolos.
En el aula, los docentes deberían actuar como tutores meta cognitivos, sirviendo
como modelos, pensando en voz alta y practicando el comportamiento que
quieren que sus estudiantes aprendan.
74
CAPÍTULO 4. CONCLUSIONES Y RECOMENDACIONES
4.1 CONCLUSIONES
.
Uno de los grandes retos a la hora de construir este documento fue encontrar una
descripción unificada de lo que es la inteligencia artificial, y el mayor gasto
energético en el desarrollo de este proyecto además de uno de sus grandes
resultados es haber desarrollado una visión completa de las subareas que definen
a la inteligencia artificial moderna desde un punto de vista académico.
4.2 RECOMENDACIONES
En la creación de este documento no se tuvieron en cuenta ciertas limitaciones
que pueden llevar a que el proyecto sea actualmente inviable como son la
disponibilidad de personal calificado que pueda orientar sobre los temas que aquí
se tratan, problemas del tipo económicos que hagan inviable el proyecto en la
actualidad, problemas de tipo organizacionales debido a que el proyecto asume
que la reforma estructural del programa en la forma que permita la creación de
líneas de profundización es una realidad.
Todos estos factores se deben evaluar y sopesarlos contra la ganancia que puede
obtener el programa de ingeniería de sistemas y computación de la universidad
tecnológica de Pereira en calidad, al formar ingenieros un gran arsenal de
herramientas computacionales y un alto grado de diferenciación con respecto a la
mayoría de los ingenieros de sistemas del país.
75
Anexos
A. REFERENCIAS DE LAS FIGURAS
REFERENCIAS BIBLIOGRAFICAS
Número de la figura Referencia
1.1 1.2 1.3 1.4 Artificial Intelligence a modern approach, 3rd
edition.
76
BIBLIOGRAFÍA
[Barr82] Barr, A.; Cohen, P.; Feigenbaum, E. (Editor). The Handbook of
Artificial Intelligence: Volume II, William Kaufmann, Los Altos, CA.,
1982.
[Bellman78] Bellman, R. E., An Introduction to Artificial Intelligence: Can
Computers Think?. Boyd & Fraser Publishing Company, San
Francisco. 1978.
[Buchan69] Buchanan, B. G., Sutherland, G. L., and Feigenbaum, E. A.,
Heuristic DENDRAL: A program for generating explanatory
hypotheses in organic chemistry. In Meltzer, B., Michie, D., and
Swann, M. (Eds.). Edinburgh University Press, Edinburgh,
Scotland. 1969.
[Littell00] B. How will Artificial Intelligence systems and Expert Systems
impact the estate planning field? Journal of Financial Service
Professionals, vol. 54, Issue 1,January, pp. 26-27, 2000.
[Cagnoni00] Cagnoni, S. et al, Real-World Applications of Evolutionary
Computing. Springer-Verlag Lecture Notes in Computer Science,
Berlin, 2000.
[Char87] Charniak, E. and McDermott, D., Introduction to Artificial
Intelligence, Addison-Wesley, 1987.
77
[Collins03] Collins, E S., Morgan, M., and Patrinos. A., The human genome
project: Lessons from large-scale biology. Science, 2003.
[Jong06] De Jong, K. A., Evolutionary computation: A unified approach. MIT
Press, Cambridge MA, 2006.
[Dean95] Dean, T.; Allen, J; Aloimonos, Y., Artificial Intelligence: Theory and
Practice, Benjamin/Cummings, 1995.
[Eiben03] Eiben, A. and Smith, J.E., Introduction to Evolutionary Computing .
Springer, 2003.
[Fau94] Fausett L., Fundamentals of Neural Networks, Prentice-Hall, 1994.
[Shappiro96] Fayyad, Usama; Gregory Piatetsky-Shapiro, and Padhraic Smyth.
From Data Mining to Knowledge Discovery in Databases [online].
Artificial Intelligence Magazine. 1996. Available from World Wide
Web: http://www.kdnuggets.com/gpspubs/aimag-kdd-overview-
1996-Fayyad.pdf
[Goldberg89] Goldberg, D., Genetic algorithms in search, optimization and
machine learning. Addison Wesley, 1989.
[Gur97] Gurney K., An Introduction to Neural Networks, UCL Press, 1997.
[Witten11] Ian H. Witten; Eibe Frank; Mark A. Hall (30 January 2011). Data
Mining: Practical Machine Learning Tools and Techniques (3 ed.).
Elsevier. ISBN 978-0-12-374856-0.
78
[Jamshidi03] Jamshidi, M., Tools for intelligent control: fuzzy controllers, neural
networks and genetic algorithms. Philosophical transactions.
Series A, Mathematical, physical, and engineering sciences 361.
2003.
[Kas98] Kasabov, N., Foundations of Neural Networks, Fuzzy Systems,
and Knowledge Engineering, UK: The MIT Press, 1998.
[Kilgarriff03] Kilgarriff. A. and Grefenstette, G., Introduction to the Special Issue
on the Web as Corpus. Association for Computational Linguistics,
2003.
[Kurzweil90] Kurzweil, R., The Age of Intelligent Machines. MIT Press,
Cambridge, Massachusetts. 1990.
[Laird87] Laird, J. E., Newell, A,, and Rosenbloom, P. S., SOAR: An
architecture for general intelligence . Artificial Intelligence, 1987.
[Lin04] Lin, W., A Case Study on Support Vector Machines Versus
Artificial Neural Networks. Thesis. University of Pittsburgh. 2004.
[Luger2005] Luger, George. Artificial Intelligence: Structures and Strategies for
Complex Problem Solving (5th ed.). The Benjamin/Cummings
Publishing Company, Inc. 2005.
[Lung07] Lungarella, M; Lida, F; Bongard, J; R. Pfeifer. "50 years of artificial
intelligence: Essays dedicated to the 50th anniversary of artificial
intelligence
79
[Arb03] M. Arbib. The Handbook of Brain Theory and Neural Network . UK:
The MIT Press, 2003.
[Car07] M. Carter, Minds and Computers, Scotland: Edinburgh University
Press Ltd, 2007.
[McDerm82] McDermott, J., R1: A rule-based configure of computer systems.
Artificial Intelligence, 1982.
[McLeod06] McLeod, R. and Schell, G., Management Information Systems.
Prentice Hall, 10th Edition, 2006.
[McCarthy] McCarthy, John. Applications of AI [online]. What is Artificial
Intelligence?. Formal Reasoning Group. Stanford University, 2007.
Available from World Wide Web: <http://www-
formal.stanford.edu/jmc/whatisai/node3.html>, accesado el 16 de
Septiembre de 2011.
[Minsky69] Minsky, Marvin. Semantic Information Processing. The MIT Press,
1969.
[Mit97] Mitchell, T. Machine Learning, McGraw Hill, 1997.
[Newell90] Newell, A., Unified Theories of Cognition. Harvard University
Press, Cambridge, Massachusetts, 1990.
[Nilsson98] Nilsson, Nils. Artificial Intelligence: A New Synthesis. (Eds.),
Morgan Kaufmann Publishers, 1998.
80
[Nord2001] Nordlander, Tomas Eric. AI Surveying: Artificial Intelligence in
Business. M.Sc. Thesis. Leicester, England. Montfort University,
Department of Management Science and Statistics, 2001.
[Novak99] Mathematical
principles of fuzzy logic Dodrecht: Kluwer Academic. ISBN 0-7923-
8595-0.
[Poole98] Poole, D., Mackworth, A. K., and Goebel, R., Computational
intelligence: A logical approach. Oxford University Press, Oxford,
UK. 1998.
[Teu07] Press, WH; Teukolsky, SA; Vetterling, WT; Flannery, B., "Section
16.5. Support Vector Machines". Numerical Recipes: The Art of
Scientific Computing (3rd Ed.). New York: Cambridge University
Press, 2007.
[LyF08] R. López y J. Fernández, Las Redes Neuronales Artificiales,
España, Netbiblo, S.L, 2008.
[Rich91] Rich, E. and Knight, K., Artificial Intelligence (Second edition).
McGraw-Hill, New York. 1991.
[BBC2011] Robots beat humans in trading battle [online]. BBC News, 2001.
Available from World Wide Web:
<http://news.bbc.co.uk/2/hi/business/1481339.stm>, accesado el 8
de septiembre del 2011.
[Rumel86] Rumelhart, D. E. and McClelland, J. L. (Eds.). Parallel Distributed
Processing. MIT Press, Cambridge, Massachusetts, 1986.
81
[RusNorv10] Russell, Stuart and Norvig, Peter. Artificial Intelligence: A Modern
Approach (3rd Ed.), Upper Saddle River, New Jersey: Prentice
Hall, 2010.
[Smolen88] Smolensky, P., On the proper treatment of connectionism.
Behavioral and Brain Sciences, 1988.
[Thearling11] Thearling, Kurt. An Introduction to Data Mining, sur thearling.com.
Consulté le 2 mai 2011.
[Winston92] Winston, P. H., Artificial Intelligence (Third edition). Addison-
Wesley, Reading, Massachusetts. 1992.