Sie sind auf Seite 1von 65

Universidad Nacional del Santa

Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

CAPTULO I: INTELIGENCIA ARTIFICIAL


1.1 CONCEPTOS.
La IA es una ciencia que estudia el comportamiento inteligente de las mquinas lo
cual conlleva a realizar tareas como: percibir, razonar, aprender, comunicarse y
actuar en entornos complejos.
La IA. es la parte de la informtica concerniente al diseo de sistemas de
computacin inteligente, es decir, de sistemas que exhiban o simulen las
caractersticas que son comnmente asociadas con la inteligencia en la conducta
humana (Handbook81).

- Modelo computacional del intelecto humano.


- Programas de simulacin de la conducta humana.
Una de las metas a largo plazo de la IA es el desarrollo de mquinas que puedan
hacer todas estas cosas igual, o quiz incluso mejor, que los humanos.
Otra meta de la IA es llegar a comprender este tipo de comportamiento, sea en las
mquinas, en los humanos o en otros animales.

La IA ha estado siempre rodeada de controversia. La cuestin bsica de la IA Pueden


pensar las mquinas? ha interesado tanto a filsofos como a cientficos e ingenieros.

Algunas personas creen que las mquinas pensantes tendran que ser tan complejas, y
disponer de una experiencia tan compleja (por ejemplo, interaccionando con el entorno
o con otras mquinas pensantes), que nunca seremos capaces de disearas o construirlas.

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Otros puntos de vista sobre el tipo de mquinas que podran ser capaces de desarrollar
habilidades pensantes como las de los humanos. Algunas de las hiptesis:
El cerebro procesa la informacin en paralelo, mientras que los ordenadores
convencionales lo hacen secuencialmente. Por tanto, tenemos que construir nuevas
variedades de ordenadores paralelos para realizar progresos en la IA.
La maquinaria computacional convencional est basada en la lgica binaria
(verdadera y falsa). Por tanto, los sistemas realmente inteligentes tendrn que usar
algn tipo de lgica borrosa.
Las neuronas animales son mucho ms complejas que simples conmutadores (los
bloques constructivos bsicos de los ordenadores actuales). Por tanto,
necesitaremos neuronas artificiales verdaderamente realistas para construir
mquinas inteligentes.
Finalmente, llegamos a la palabra ms difcil: pensar. En lugar de intentar definir esta
palabra, Turing propuso un test, el llamado Test de Turing, mediante el cual pudiera
decidirse si una mquina particular es o no inteligente.
Esta versin simplificada del Test de Turing no se considera usualmente como un test de
inteligencia muy til, debido a que es posible, incluso para programas muy simples,
engaar al interrogador humano durante un buen rato
Por ejemplo los programas:
ELIZA de Joseph Weizenbaum (1965)
JULIA de Mauldin (1994).

1.2 DEFINICIN DE LA IA EN 4 DIMENSIONES

Entre ellas tenemos las siguientes:


Sistemas que actan como humanos.
Sistemas que piensan como humanos.
Sistemas que piensan racionalmente.
Sistemas que actan racionalmente.

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Tabla N 1: IA en 4 dimensiones
SISTEMAS QUE PIENSAN COMO

SISTEMAS QUE PIENSAN

HUMANOS

RACIONALMENTE

El nuevo y excitante esfuerzo de hacer El estudio de las facultades mentales


que los ordenadores piensen mquinas mediante
con mentes,

el

uso

de

modelos

en el ms amplio sentido computacionales.

literal.

(Charniak y McDermott, 1985).


(Haugeland, 1985).

"La automatizacin de actividades que

"El estudio de los clculos que hacen

vinculamos con procesos de pensamiento posible percibir, razonar y actuar.


humano, actividades como la toma de
decisiones,

resolucin

de

(Winston, 1992)

problemas,

aprendizaje "
(Bellman, 1978)

SISTEMAS QUE ACTAN COMO

SISTEMAS QUE ACTAN

HUMANOS

RACIONALMENTE

El arte de desarrollar mquinas con "La Inteligencia Computacional es el


capacidad para realizar funciones que estudio
cuando

son

realizadas

por

del

diseo

de

agentes

personas inteligentes.

requieren de inteligencia.
(Kurzweil, 1990).

(Poole et al., 1998).

"El estudio de cmo lograr que los "IA est relacionada con conductas
ordenadores realicen tareas, que por el inteligentes en artefactos.
momento, los humanos hacen mejor.
(Rich y Knight, 1991).

1.2.1.

(Nilsson, 1998).

Sistemas que actan como humanos.


El modelo es el hombre, el objetivo es construir un sistema que pase por
humano.

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Test de Turing: Si un sistema lo pasa es inteligente.


Necesitamos mquinas con:
Procesamiento de lenguaje natural.
Representacin del conocimiento.
Razonamiento automtico.
Aprendizaje automtico.

1.2.2.

Sistemas que piensan como humanos.


Su enfoque es el modelo Cognoscitivo.
Es necesario disponer de mecanismos que permitan determinar cmo
piensan los humanos.
Hay 2 Tcnicas.

Introspeccin: Intentar atrapar nuestros pensamientos conforme van


apareciendo.

Experimentos psicolgicos.

Se intenta elaborar teoras precisas y verificables del funcionamiento de la


mente humana.

1.2.3.

Sistemas que piensan racionalmente.


El enfoque de las leyes del pensamiento racional se fundamenta en la
lgica (silogismos de Aristteles).
La lgica formal est en la base de los programas inteligentes (logicismo).
Hay 2 obstculos:
Es muy difcil formalizar el conocimiento
Hay un gran salto entre la capacidad terica de la lgica y su
realizacin prctica.

1.2.4.

Sistemas que actan racionalmente.


El enfoque del agente racional.

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Actuar racionalmente significa conseguir unos objetivos dadas unas


creencias.
El paradigma es el agente racional, que se aplica, por ejemplo, a muchos
sistemas robticos.
Un agente percibe y acta, siempre teniendo en cuenta el entorno en el que
est situado.
Las capacidades necesarias:
Percepcin.
Procesamiento del lenguaje natural.
Representacin del conocimiento.
Razonamiento.
Aprendizaje automtico.

1.3 OBJETIVOS
Desde el punto de vista de los objetivos, la IA puede considerarse en parte como
ingeniera y en parte como ciencia.
Como ingeniera, el objetivo de la IA es resolver problemas reales, actuando como
un conjunto de ideas acerca de cmo representar y utilizar el conocimiento, y de
cmo desarrollar sistemas informticos.
Como ciencia, el objetivo de la IA es buscar la explicacin de diversas clases de
inteligencia, a travs de la representacin del conocimiento y de la aplicacin que se
da a ste en los sistemas informticos desarrollados.

1.4 FUNDAMENTOS.
La IA ha tenido como fundamento las bases de varias disciplinas, entre las cuales
mencionaremos las siguientes:
Filosofa: Scrates, Platn, Aristteles, Leibniz (abuelo de la IA), desde el ao 428
a.c hasta el presente.
Lgica: Searle.
Matemtica: (Frege, Tarski) desde el ao 800 a.c, proveyeron las herramientas para
manipular las aseveraciones de certeza lgica as como las inciertas de tipo
Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

probabilista. As mismo prepararon el terreno para el manejo del razonamiento con


algoritmos de probabilidad, lgebra booleana.
Psicologa: (Piaget Craik), conductismo, psicologa cognitiva dndose desde el
ao 1869 hasta la actualidad.
Ciencias de la Computacin: Comenz muy poco antes. Las teoras encuentran un
medio para su implementacin (artefactos y modelado cognitivo).
Lingstica: Se desarroll en paralelo con la IA y sirve de base para la
representacin del conocimiento (Chomsky), ao 1957 hasta el presente.
Neurociencia Cmo procesa la informacin el cerebro?

1.5 HISTORIA.
En 1950 con el trabajo de Alan Turing, el matemtico britnico que dise el primer
computador electrnico digital y funcional del mundo en los aos 1940.
Cuando era estudiante de posgrado en Princeton en 1936, Turing public On
Computable Numbers, un artculo que estableci las bases tericas para todas las
ciencias de computacin. Ah describi lo que denomin Mquina de Turing, un
dispositivo terico que poda leer instrucciones de una cinta de papel perforada y
ejecutar todas las operaciones crticas de un computador. El artculo fij los lmites de
las ciencias de la computacin porque demostr que no es posible resolver problemas
con ningn tipo de computador.
Despus de doctorarse en 1938, Turing tuvo la oportunidad de poner en prctica la teora
cuando, al prever una invasin por parte de las fuerzas de Adolf Hitler, el gobierno
britnico reuni un equipo de matemticos e ingenieros con la misin sper secreta de
descifrar el cdigo militar alemn. Turing con un grupo construy COLOSSUS, una
mquina de propsito especfico considerado como el primer computador digital
electrnico.
Desde que se complet el Colossus en 1943 hasta que termin la Segunda Guerra
Mundial, descifr con xito los cdigos nazis. Muchos expertos creen que Colussus fue
responsable de la derrota de los nazis.
Turing inaugur el campo de la inteligencia artificial con su artculo publicado en 1950,
Computing Machinery and Intelligence, en el que propuso una prueba concreta para
determinar si una mquina era inteligente o no. Aos despus Turing se convirti en el

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

adalid que quienes defendan la posibilidad de emular le pensamiento humano a travs


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

Figura N 1: Test de Turing

En 1951 William Shockley inventa el transistor de unin. El invento hizo posible una
nueva generacin de computadoras mucho ms rpidas y pequeas.
En 1956 se acu el trmino "inteligencia artificial" en Dartmouth durante una
conferencia convocada por McCarthy, a la cual asistieron, entre otros, Minsky, Newell y
Simon. En esta conferencia se hicieron previsiones triunfalistas a diez aos que jams se
cumplieron, lo que provoc el abandono casi total de las investigaciones durante quince
aos.
En 1980 la historia se repiti con el desafo japons de la quinta generacin, que dio
lugar al auge de los sistemas expertos pero que no alcanz muchos de sus objetivos, por
lo que este campo sufri una nueva interrupcin en los aos noventa.

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

En 1987 Martn Fiscales y Oscar Firschein describieron los atributos de un agente


inteligente. Al intentar describir con un mayor mbito (no slo la comunicacin) los
atributos de un agente inteligente, la IA se ha expandido a muchas reas que han creado
ramas de investigaciones enormes y diferenciadas.
Podemos entonces decir que la IA incluye caractersticas humanas tales como el
aprendizaje, la adaptacin, el razonamiento, la autocorreccin, el mejoramiento implcito,
y la percepcin modular del mundo. As, podemos hablar ya no slo de un objetivo, sino
de muchos, dependiendo del punto de vista o utilidad que pueda encontrarse a la IA.
Muchos de los investigadores sobre IA sostienen que "la inteligencia es un programa
capaz de ser ejecutado independientemente de la mquina que lo ejecute, computador o
cerebro".

1.6 TCNICAS DE LA IA.


Entre ellas las siguientes:

1.6.1.

Sistemas Expertos.
1.6.1.1.

Concepto:
Consiste de equipos y software que almacenan conocimientos y hacen
inferencias, en forma similar a un experto humano. A finales de los
cincuenta y principios de los sesenta, los ingenieros en computacin
trataron de construir computadoras capaces de realizar tareas
inteligentes. Los esfuerzos se encaminaron a crear un solucionador de
problemas generales, una mquina capaz de imitar el proceso de
razonamiento humano para resolver cualquier problema que un ser
humano pudiera solucionar.
Los esfuerzos se orientaron al diseo de programas que resolvieran
problemas en reas precisas utilizando conocimiento y razonamiento de
expertos.

1.6.1.2.

El propsito de los SE
Es duplicar el conocimiento no estructurado ni documentado de unos
pocos (los expertos) y los pone a disposicin de otros. Debido a la

Dra. Diana Cecilia Muoz Casanova

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

forma en que estn planteados los SE (basados en la experiencia) no


puede ayudar a los usuarios que tratan con sucesos que los expertos no
consideraron durante el periodo de creacin. Sin embargo muchos
programas avanzados que incluyen redes neuronales aprenden de
situaciones nuevas y formulan reglas adhoc en sus bases de
conocimiento

para

resolver

eventualidades

no

consideradas

originalmente en su diseo.
Para construir un SE un ingeniero del conocimiento se entrevista con un
experto, traduce la informacin en cdigo. Por lo general con la regla
SI-Entonces.
Otros mtodos son marcos semnticos integrados por cuadros con listas
de entidades y atributos; y las redes semnticas, mapas de entidades y
sus atributos relacionados.

1.6.1.3.

Caractersticas de un SE
Pueden explicar su razonamiento o decisiones sugeridas: La
capacidad de explicar cmo se lleg a una decisin o solucin.
Puede mostrar un comportamiento inteligente: Al examinar
un grupo de datos, un SE puede proponer nuevas ideas o mtodos
para la solucin del problema, o proporcionar asesoramiento en el
trabajo para los trabajadores.
Puede obtener conclusiones de relaciones complejas: Evaluar
relaciones complejas para llegar a conclusiones y solucionar
problemas, por ejemplo: un SE propuesto trabajar con un sistema
de fabricacin flexible para determinar la mejor utilizacin de las
herramientas, y otro sugerir los mejores procedimientos de
control de calidad.
Puede proporcionar conocimientos acumulados: Se puede usar
para capturar conocimientos de humanos que de lo contrario
podran perderse. Ejemplo es el SE denominado DELTA (Diesel
Electronic Locomotive Troble-shooting Aid), desarrollado para
conservar el conocimiento de David Smith, nico ingeniero
competente para manejar muchas reparaciones extremadamente

Dra. Diana Cecilia Muoz Casanova

10

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

tcnicas de esas mquinas, cuando lleg el momento de su


jubilacin.
Puede hacer frente a la incertidumbre: Una de las
caractersticas ms importantes de un SE es su capacidad para
enfrentar conocimientos incompletos o inexactos en su totalidad.
Mediante el uso de las probabilidades, las estadsticas y las
heursticas.

1.6.1.4.

Caractersticas que limitan su Utilidad


No se han usada o probado en forma extensa: Los SE no se
emplean en un gran nmero de organizaciones.
Dificultad de uso: Algunos sistemas expertos son difciles de
controlar y usar. En algunos casos se requiere del uso de personal
de computacin, o del personas capacitadas en el uso de SE, para
ayudar al usuario a obtener todo lo ms posible de estos sistemas.
Estn limitados a problemas relativamente limitados: Algunos
sistemas expertos pueden realizar anlisis de datos complejos,
otros estn limitados a problemas sencillos.
No pueden enfrentar con facilidad conocimientos mixtos: Un
SE en una aplicacin quiz no pueda hacer frente a conocimientos
que combinen tanto reglas como casos.
Posibilidad

de error: Algunos sistemas expertos tienen

capacidades limitadas para aprender de la experiencia, la fuente


principal de conocimientos es un experto humano. Si este
conocimiento es incorrecto o incompleto, afectar al sistema en
forma negativa.
Dificultad de mantenimiento: Los SE pueden ser difciles de
actualizar. Algunos no responden o no se adaptan a condiciones
cambiantes.
Pueden tener costo altos de desarrollo: Cuando se usan los
lenguajes y mtodos de programacin tradicionales. Se puede
lograr una reduccin considerable en los costos de desarrollo si se
emplea software para el desarrollo de SE.

Dra. Diana Cecilia Muoz Casanova

11

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Ocasionan preocupaciones legales y ticas: Las personas que


toman decisiones y llevan a cabo acciones son responsables, desde
el punto de vista legal y tico, por su comportamiento. Por ejemplo,
una persona puede ser procesado y condenada por un delito.
Cuando los SE se usan para tomar decisiones o ayudan a tomarlas,
quin es el responsable de esta decisin?

1.6.1.5.

Capacidades de los SE
En comparacin con otros tipos de sistemas de informacin, los SE
ofrecen varias capacidades poderosas y beneficios. Por ejemplo, con
frecuencia

se

usa

un

SE

denominado

XCON

para

disear

configuraciones de sistemas computacin, pues realiza, en forma


consistente, un mejor trabajo que los seres humanos.
Los SE se pueden usar para solucionar problemas en todos los campos y
disciplinas y ayudar en la totalidad de las etapas del proceso de solucin
de los problemas.
Fijacin de objetivos estratgicos: Un SE puede ayudar a los
administradores de alto nivel de la compaa a determinar los
costos y beneficios que existen en producir vinos de mayor calidad
y cambiar su imagen en el mercado.
Planeacin: Un SE puede ayudar a este proceso mediante la
sugerencia de factores que se deben considerar al tomar la decisin
final, sobre la base de datos proporcionados por la administracin.
Diseo: Estos SE usan principios

generales de diseo,

comprensin de los procedimientos de fabricacin y un grupo de


reglas de diseo.
Toma de decisiones: Pueden sugerir posibles alternativas, formas
de contemplar los problemas y mtodos lgicos al proceso de toma
de decisiones. Adems, los SE pueden mejorar el proceso de
aprendizaje para aquellos que no tienen tanta experiencia en tomar
decisiones.

Dra. Diana Cecilia Muoz Casanova

12

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Control y supervisin de calidad: Los SE computarizados


pueden ayudar a supervisar varios sistemas y proponer soluciones
a problemas que se presenten en ellos. Los SE tambin se pueden
usar para supervisar la calidad de los productos. Cuando las
mquinas funcionan en forma deficiente, el SE puede ayudar a
determinar las causas posibles.
Diagnstico: Puede proporcionar al mdico la probable causa de
enfermedad y proponer tratamientos u operaciones. En los
negocios tambin diagnstica posibles problemas y soluciones.

1.6.1.6.

Cuando usar los SE


El desarrollo se SE complejos puede ser difcil, costoso y requerir de
tiempo, por lo tanto, es importante asegurarse de que los posibles
beneficios valen el esfuerzo y que las diversas caractersticas del SE se
equilibren, en trminos de costo, control y complejidad.
Proporciona un alto potencial de rendimiento o reduce el riesgo
Puede

capturar

conservar

conocimientos

humanos

irremplazables
Puede desarrollar un sistema ms consistente que los expertos
humanos
Puede proporcionar los conocimientos necesarios en varias
ubicaciones al mismo tiempo o en un ambiente hostil peligroso
para la salud humana.
Puede proporcionar conocimientos costosos y poco comunes.
Puede proporcionar los conocimientos necesarios para la
capacitacin y el desarrollo con el propsito de compartir los
conocimientos y la experiencia de expertos humanos con un gran
nmero de personas.

1.6.1.7.

Componentes de los SE
La Base de Conocimientos: Almacena toda la informacin, datos,
reglas, casos y relaciones importantes que utiliza el SE. Para cada
aplicacin nica se tiene que desarrollar una base conocimientos.

Dra. Diana Cecilia Muoz Casanova

13

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Por ejemplo, un SE mdico contendr hechos sobre enfermedades


y sntomas. La base de conocimientos puede incluir conocimientos
genricos provenientes de teoras generales que se han establecido
con el tiempo y conocimientos especficos que provienen de
experiencias ms recientes y de reglas prcticas.
Propsito de una base de conocimientos: Contener los
hechos y la informacin pertinentes para el SE especfico.
Una base de conocimientos es similar a la suma total de los
conocimientos y experiencias de los expertos humanos que
se obtienen a travs de aos de trabajo en un rea o
disciplina especfica.
Reunin de expertos humanos: Una base que contiene
informacin proporcionada por diversos expertos puede ser
extremadamente eficiente y exacta desde el punto de vista
de sus sugerencias y pronsticos.
Utilizacin de la lgica difusa: Otro reto para los
diseadores

desarrolladores

de

SE

es

capturar

conocimientos y relaciones que no son precisos o exactos.


El uso de reglas: Una regla es una instruccin condicionada
que enlaza determinadas condiciones con acciones o
resultados. La regla se crea por medio de construcciones de
si-entonces.
El uso de casos: Un SE puede usar casos al desarrollar la
solucin a un problema o situacin actual. El proceso
incluye:
1) Encontrar

casos

almacenados

en

la

base

de

conocimientos, que sean similares al problema.


2) Modificar las soluciones a los casos para adaptarlas, o
acomodarlas, al problema o la situacin actual.
El Motor de Inferencias: El propsito general de un motor de
inferencias es buscar informacin y relaciones en la base de
conocimientos,

Dra. Diana Cecilia Muoz Casanova

proporcionar

respuestas,

pronsticos

14

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

sugerencias en la misma forma en que lo hara un experto humano.


En otras palabras, el motor de inferencias es el que proporciona el
consejo experto.
Encadenamiento inverso: Es el proceso de comenzar con
conclusiones y trabajar hacia atrs hasta los hechos de
soporte. Si los hechos no apoyan la conclusin, se elige y
prueba otra.
Encadenamiento hacia delante: Se inicia con los hechos y
trabajo hacia delante hasta las conclusiones.
Comparacin

del

encadenamiento

inverso

el

encadenamiento hacia delante: El encadenamiento hacia


delante puede llegar a conclusiones y producir ms
informacin con menos consultas para el usuario que el
encadenamiento inverso, pero este mtodo requiere ms
procesamiento y un mayor grado de sofisticacin.
Los Recursos de Explicaciones: Una parte importante del SE son
los recursos de explicaciones que le permiten al usuario, o al
responsable de tomar las decisiones comprender en que forma
lleg el SE a ciertas conclusiones o resultados.
Los Recursos de Adquisicin de Conocimientos: una tarea difcil
en el desarrollo de un sistema experto es el proceso de crear y
actualizar la base de conocimientos. En la actualidad, existe
software especializado que le permite a los usuarios y a quienes
toman las decisiones crear y modificar sus propias bases de
conocimientos.
La Interfaz del Usuario: Sirve para disear, crear, actualizar y
usar los SE. El propsito general de la interfaz del usuario es
facilitar a los usuarios y a los tomadores de las decisiones el
desarrollo y el uso de un SE.

Dra. Diana Cecilia Muoz Casanova

15

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.6.1.8.

Manual de Sistemas Expertos


Unidad I

Desarrollo de los SE
Los SE requieren de un mtodo de desarrollo sistemtico para obtener
los mejores resultados.
Proceso De Desarrollo: La especificacin de los requisitos para
un SE se inicia con la identificacin de los objetivos del sistema y
su uso potencial. Identificar a los expertos puede ser difcil. En
algunos casos, una compaa contar con expertos humanos; en
otros, se requerir expertos ajenos a la organizacin.

Para el

desarrollo de los elementos del SE son necesarias habilidades


especiales. La puesta en operacin del SE incluye ponerlo en
accin y asegurarse de que funciona como se desea.

1.6.1.9.

Participantes en el Desarrollo y Utilizacin de los SE


El experto en dominio: Debido al tiempo y el esfuerzo que se
requieren para la tarea, se desarrolla un SE para atender un rea de
conocimiento. A dicha rea se le conoce como dominio. El experto
en dominio es la persona o grupo que tiene la experiencia o el
conocimiento al cual se intenta capturar en el SE. Por lo general
con la siguiente capacidad:
Reconocer el problema real
Desarrollar una estructura general para la solucin de
problemas
Formular teoras sobre la situacin
Desarrollar y usar reglas generales para solucionar un
problema
Identificar cundo deben quebrantarse las reglas
Solucionar problemas con rapidez y eficiencia
Aprender de experiencias anteriores
Identificar lo que es importante y lo que no lo es para
solucionar un problema
Explicar a otros la situacin y las soluciones de problemas.

Dra. Diana Cecilia Muoz Casanova

16

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

El ingeniero del conocimiento y el usuario del conocimiento: El


primero es la persona que tiene el entrenamiento y la experiencia
en el diseo, desarrollo, puesta en operacin y mantenimiento de
un SE, incluyendo entrenamiento y experiencia con shells de SE.
El segundo es quien usa el SE y se beneficia de l.

1.6.1.10.

Herramientas y tcnica para el desarrollo de sistemas expertos


En teora, los sistemas expertos se deben desarrollar a partir de algn
lenguaje de programacin. Desde la introduccin de los sistemas de
computacin, los lenguajes de fciles de usar, ms potentes y cada vez
ms capaces de manejar. En los inicios del desarrollo de SE se usaban
los lenguajes Pascal, FORTRAN Y COBOL. LISP fue uno de los
primeros lenguajes especiales desarrollados y empleados para
aplicaciones de inteligencia artificial. PROLOG es otro. Sin embargo,
actualmente existen otros productos de SE (como los shells) que evitan
el trabajo de programar.
Shells y productos para SE: Un shell (interprete) de SE es un grupo de
paquetes y herramientas de software utilizados para disear, desarrollar,
poner en operacin y mantener SE con una programacin mnima.
Existen shells de SE tanto para computadoras personales como para
sistemas de macrocomputadoras. Algunos son baratos con costo inferior
a los 500 dlares. El usuario introduce los datos o parmetros
apropiados y el SE proporciona el resultado para el problema o
situacin. Algunos de los shells ms populares son Exsys de
MultilLogic, Inc. Level 5, de Rule Machines Corporacin y XpertRule,
de Attar Software.

1.6.1.11.

Ventajas de los shells y los productos de SE


Fciles de desarrollar y modificar: Conforme se dispone de
nuevos hechos y reglas y se hace necesario modificar los ya
existentes, es deseable hacer cambios a la base de conocimientos.
Los sistemas desarrollados por medio de PROLOG y LIPS son

Dra. Diana Cecilia Muoz Casanova

17

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

ms difciles de modificar y ms costosos que los SE desarrollados


con shells.
El uso de la satisfaccin: El mtodo tradicional de solucin de
problemas intenta encontrar la solucin ptima, o la mejor; los
lenguajes avanzados y simblicos pueden hacer frente a problemas
ms complejos y producir decisiones muy buenas, aunque no
siempre ptimas.
El uso de la heurstica: Es necesario que los SE puedan manejar
relaciones imprecisas. La heurstica puede hacerlo y a menudo
producir una buena solucin que deje satisfecho al tomador de las
decisiones.
Desarrollo por los ingenieros y usuarios del conocimiento: Con
los shells de SE, los ingenieros y usuarios del conocimiento
pueden completar el proceso de desarrollo. Es frecuente que al
desarrollar SE con lenguajes de programacin tradicionales se
requieran anlisis de sistemas y programacin de computacin,
que son costosos y que por lo comn requieren de ms tiempo.
1.6.1.12.

Alternativas de desarrollo de SE
Los SE se pueden desarrollar desde cero por medio de un shell de SE o
mediante un paquete de software de SE ya existente. El mtodo
seleccionado depende de los beneficios del sistema comparados con el
costo, el control y la complejidad de cada alternativa. Es ms fcil y
menos costoso desarrollar un SE utilizando un paqueta ya existente o un
shell de SE. Sin embargo, si la organizacin no cuenta ya con este tipo
de software, habr un costo adicional para desarrollar un paquete
existente o adquirir un shell de SE
Desarrollo en la propia empresa (desde cero): Es el mtodo ms
costoso, pero la organizacin tiene ms control sobre las
caractersticas y los elementos del SE.
Desarrollo en la propia empresa (desde un shell): Puede ser
menos complejo y ms fcil de mantener que desarrollarlo desde

Dra. Diana Cecilia Muoz Casanova

18

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

cero. Sin embargo, quiz sea necesario modificar el SE resultante


para que sea idneo para aplicaciones especficas.
Compra paquetes ya existentes (uso de paquetes existentes):
Mtodo menos costoso y ms rpido. Aquel cuyo desarrollo corri
a cargo de una compaa de software o de asesora para un campo
o rea especficos, tales como el diseo de un nuevo
microprocesador para computacin o un sistema para pronosticar y
predecir el clima. Estos sistemas pueden ser ms fciles de
mantener y actualizar al transcurso del tiempo, pero no pueden
satisfacer las necesidades especiales de la organizacin.
1.6.1.13.

Aplicaciones de los SE y de la IA
Otorgar crdito: Para revisar la solicitud de crdito de una
persona y el historial crediticio que mantiene con las agencias
dedicadas a este rubro, para tomar la decisin de otorgar el crdito.
Administracin y recuperacin de informacin: Los SE pueden
ayudar a este proceso mediante el uso de agentes. Los agentes de
SE ayudan a los gerentes a encontrar los datos y la informacin
correctos, al mismo tiempo que eliminan hechos sin importancia
que puedan obstaculizar la toma de decisiones oportunas.
IA y SE incorporados a los productos: El sistema de frenos
antibloqueo de los automviles modernos es un ejemplo de un SE
rudimentario. Los investigadores de IA tambin estn encontrando
formas para usar las redes neuronales y la robtica en dispositivos
de uso diario, tales como tostadoras de pan, relojes despertadores y
aparatos de TV.
Disposicin de plantas: FLEXPERT es un SE que usa la lgica
difusa para realizar el trazado de plantas. El software ayuda a las
compaas a determinar la mejor ubicacin para los equipos y las
instalaciones de fabricacin.

Dra. Diana Cecilia Muoz Casanova

19

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Instalaciones de hospitales y mdicas: Algunos hospitales usan


SE para determinar la posibilidad de que un paciente contraiga
cncer u otras enfermedades. MYCIN es un SE creado en la
Universidad Stanfor para analizar infecciones en la sangre.
Departamento de ayuda y asistencia: Los departamentos de
servicios de ayuda al cliente usan SE para proporcionar asistencia
oportuna y exacta. Kaiser Permanente, un HMO (Health
Mantenance Organization) de gran tamao, usa un SE y repuesta
verbal para automatizar la funcin del su departamento de ayuda.
Evaluacin del desempeo de empleados: Un SE de AustinHayne, llamado Employee Appreiser, les proporciona asesora
experta a los gerentes para que la utilicen en las revisiones del
desempeo de los empleados y el desarrollo de carreras.
Anlisis de prstamos: KPMG Peat Marwick usa un SE llamado
Loan Probe para revisar las reservas para prdidas en prstamos,
con el propsito de determinar si se han reservado fondos
suficientes para cubrir riesgos de que algunos prstamos se
vuelvan incobrables.
Deteccin de virus: IBM utiliza la tecnologa de red neuronal para
ayudar a crear software ms avanzado en la erradicacin de los
virus de computacin, un problema importante para las empresas
estadounidenses.
Reparacin y mantenimiento: AT&T usa el SE ACE para
analizar el mantenimiento de las redes telefnicas. Nynex (New
York and New England Telephone Exchange) tiene sistemas
expertos para ayudar a sus trabajadores a localizar y resolver
problemas telefnicos con referencia a sus clientes.

Dra. Diana Cecilia Muoz Casanova

20

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Embarques: Lufthansa, una aerolnea alemana, usa un SE,


CARGEX-Cargo, para ayudar a determinar las mejores rutas de
embarque.
Mercadotecnia: CoverStory es un SE que trae informacin de una
base de datos y elabora, en forma automtica, informes de
mercadotecnia.
Optimizacin de almacenes: Unite Distillers emplea un SE para
determinar las mejores combinaciones de existencias, para
producir su mezcla de whisky escocs.
Integracin de SE: Un SE se puede integrar con otros sistemas en
una organizacin mediante una base de datos comn. Un SE que
identifique a los clientes que demoran sus pagos y que no deben
recibir crdito adicional puede tomar los datos de la misma base de
datos que un MIS de facturacin que elabora informes semanales
de las cuentas vencidas. La misma base de datos podra usarse para
un sistema de apoyo a las decisiones que realice anlisis de que
sucedera s, para determinar la repercusin de los pagos
demorados sobre los flujos ejecutivo, ingresos y niveles generales
de utilidad.

1.6.1.14.

Limitaciones de los SE
Los SE slo manejan reas precisas del conocimiento:
Funcionan bien si el dominio al que se enfocan est bien definido.
Por ejemplo, es difcil que se encuentre un SE mdico general.
Los SE no tienen sentido comn: El sistema slo resolver
aquellos problemas para los que est especficamente programado.
Los SE Tienen una capacidad limitada de aprendizaje: Los
ingenieros del conocimiento deben dirigir los sistemas y
proporcionar retroalimentacin continua para que aprenda.

Dra. Diana Cecilia Muoz Casanova

21

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.6.2.

Manual de Sistemas Expertos


Unidad I

Lgica Difusa.
1.6.2.1.

Historia
Esta simple idea naci en un artculo de Lofti A. Zadeh publicado en
1965 y titulado "Fuzzy Sets" (Conjuntos Difusos). La lgica difusa
permite representar de forma matemtica conceptos o conjuntos
imprecisos, tales como das fros, meses calurosos, personas altas,
salarios bajos, guisos con mucho condimento, profesores poco
valorados, etc.
Pero hay que tener en cuenta que la idea en s de que las cosas no son
blancas o negras, sino que existen infinitos matices de grises viene ya
desde la poca de los primeros grandes filsofos como Platn.
Posteriormente a ellos, otros grandes pensadores como David Hume o
Kant apoyaban esta idea manteniendo que el razonamiento vena dado
por las observaciones de las que somos testigos a lo largo de nuestra
vida y la deteccin de algunos principios contradictorios en la lgica
clsica.
Tras la publicacin de Lotfi A. Zadeh, se comenz rpidamente a usar
la lgica difusa en distintas aplicaciones prcticas, llegando a su
mximo auge a principios de los aos 90, y continuando ste hasta la
poca actual.

1.6.2.2.

Concepto:
La lgica difusa se funda en el concepto de que todo es cuestin de
grado, lo cual permite manejar informacin vaga o de difcil
especificacin, importante para la resolucin de un problema, por
medio de una serie de reglas de "sentido comn" aprendidas con
sistemas adaptativos que se nutren de la observacin de las personas o
de la formulacin por parte del experto humano.
En la actualidad hay un nmero creciente de aplicaciones entre las
cuales podemos mencionar:
La construccin de artefactos electrnicos de uso domstico y de
entretenimiento.
El diseo de dispositivos artificiales de deduccin automtica.

Dra. Diana Cecilia Muoz Casanova

22

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

El diseo de sistemas de diagnstico y de control de complejos


procesos industriales, etc.

1.6.2.3.

Funcionamiento
La lgica difusa se adapta mejor al mundo real en el que vivimos, e
incluso puede comprender y funcionar con nuestras expresiones, del
tipo "hace mucho calor", "no es muy alto", "el ritmo del corazn est un
poco acelerado", etc.
La clave de esta adaptacin al lenguaje, se basa en comprender los
cuantificadores de nuestro lenguaje (en los ejemplos de arriba
"mucho", "muy" y "un poco").
En la teora de conjuntos difusos se definen tambin las operaciones de
unin, interseccin, diferencia, negacin o complemento, y otras
operaciones sobre conjuntos (ver tambin subconjunto difuso), en los
que se basa esta lgica.
Para cada conjunto difuso, existe asociada una funcin de pertenencia
para sus elementos, que indican en qu medida el elemento forma parte
de ese conjunto difuso. Las formas de las funciones de pertenencia ms
tpicas son trapezoidales, lineales y curvas.
Se basa en reglas heursticas de la forma SI (antecedente)
ENTONCES (consecuente), donde el antecedente y el consecuente son
tambin conjuntos difusos, ya sea puros o resultado de operar con ellos.
Sirvan como ejemplos de regla heurstica para esta lgica (ntese la
importancia de las palabras "muchsimo", "drsticamente", "un poco" y
"levemente" para la lgica difusa):
SI hace muchsimo calor ENTONCES disminuyo drsticamente la
temperatura.
SI voy a llegar un poco tarde ENTONCES aumento levemente la
velocidad.
Los mtodos de inferencia para esta base de reglas deben ser simples,
veloces y eficaces. Los resultados de dichos mtodos son un rea final,
fruto de un conjunto de reas solapadas entre s (cada rea es resultado
de una regla de inferencia). Para escoger una salida concreta a partir de

Dra. Diana Cecilia Muoz Casanova

23

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

tanta premisa difusa, el mtodo ms usado es el del centroide, en el que


la salida final ser el centro de gravedad del rea total resultante.
Las reglas de las que dispone el motor de inferencia de un sistema
difuso pueden ser formuladas por expertos, o bien aprendidas por el
propio sistema, haciendo uso en este caso de Redes neuronales para
fortalecer las futuras tomas de decisiones.
Los datos de entrada suelen ser recogidos por sensores, que miden las
variables de entrada de un sistema. El motor de inferencias se basa en
chips difusos, que estn aumentando exponencialmente su capacidad
de procesamiento de reglas ao a ao.
Un esquema de funcionamiento tpico para un sistema difuso podra ser
de la siguiente manera:

Figura N 2: Funcionamiento de un sistema de control difuso

En la figura, el sistema de control hace los clculos en base a sus reglas


heursticas, comentadas anteriormente. La salida final actuara sobre el
entorno fsico, y los valores de las nuevas entradas sobre el entorno
fsico (modificado por la salida del sistema de control) seran tomados
por sensores del sistema.
Por ejemplo, imaginando que nuestro sistema borroso fuese el
climatizador de un coche que se autorregula segn las necesidades: Los
chips borrosos del climatizador recogen los datos de entrada, que en
este caso bien podran ser la temperatura y humedad simplemente.
Estos datos se someten a las reglas del motor de inferencia (como se ha
comentado antes, de la forma SI... ENTONCES...), resultando un rea
de resultados. De esa rea se escoger el centro de gravedad,

Dra. Diana Cecilia Muoz Casanova

24

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

proporcionndola como salida. Dependiendo del resultado, el


climatizador

podra

aumentar

la

temperatura

disminuirla

dependeiendo del grado de la salida.

1.6.2.4.

Ventajas e Inconvenientes
Como principal ventaja, cabe destacar los excelentes resultados que
brinda un sistema de control basado en lgica difusa: ofrece salidas de
una forma veloz y precisa, disminuyendo as las transiciones de estados
fundamentales en el entorno fsico que controle. Por ejemplo, si el aire
acondicionado se encendiese al llegar a la temperatura de 30, y la
temperatura actual oscilase entre los 29-30, nuestro sistema de aire
acondicionado estara encendindose y apagndose continuamente, con
el gasto energtico que ello conllevara. Si estuviese regulado por lgica
difusa, esos 30 no seran ningn umbral, y el sistema de control
aprendera a mantener una temperatura estable sin continuos apagados y
encendidos.
Del mismo ejemplo puede observarse otra de las principales ventajas de
estos sistemas, que es la capacidad de adelantarse en el tiempo a los
acontecimientos, estabilizando siempre el entorno fsico que controla.
Como principal incoveniente cabe destacar la dificultad de elegir una
correcta funcin de pertenencia para los conjuntos difusos, ya que en
ocasiones no es sencillo especificar el efecto de los cuantificadores de
nuestro lenguaje en dicha funcin. El hecho de que cualquier funcin de
pertenencia del sistema estuviese mal especificada, hara fallar, muy
probablemente, todo el sistema completo.
Tambin est la indecisin de decantarse por los expertos o por la
tecnologa (principalmente mediante Redes neuronales) para reforzar
las reglas heursticas iniciales de cualquier sistema de control basado en
este tipo de lgica.

1.6.2.5.

Aplicaciones
La lgica difusa se utiliza cuando la complejidad del proceso en
cuestin es muy alta y no existen modelos matemticos precisos, para

Dra. Diana Cecilia Muoz Casanova

25

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

procesos altamente no lineales y cuando se envuelven definiciones y


conocimiento no estrictamente definido (impreciso o subjetivo).
En cambio, no es una buena idea usarla cuando algn modelo
matemtico ya soluciona eficientemente el problema, cuando los
problemas son lineales o cuando no tienen solucin.
Esta tcnica se ha empleado con bastante xito en la industria,
principalmente en Japn, y cada vez se est usando en gran multitud de
campos. La primera vez que se us de forma importante fue en el metro
japons, con excelentes resultados. A continuacin se citan algunos
ejemplos de su aplicacin:
Sistemas de control de acondicionadores de aire
Sistemas de foco automtico en cmaras fotogrficas
Electrodomsticos familiares (Frigorficos, lavadoras...)
Optimizacin de sistemas de control industriales
Sistemas de reconocimiento de escritura
Mejora en la eficiencia del uso de combustible en motores
Sistemas expertos del conocimiento (simular el comportamiento de
un experto humano)
Tecnologa informtica
Bases de datos difusas: Almacenar y consultar informacin
imprecisa. Para este punto, por ejemplo, existe el lenguaje FSQL.
Y, en general, en la gran mayora de los sistemas de control que no
dependen de un S/No.

1.6.3.

Redes Neuronales.
1.6.3.1.

Historia de las Redes Neuronales


Conseguir disear y construir mquinas capaces de realizar procesos
con cierta inteligencia ha sido uno de los principales objetivos de los
cientficos a lo largo de la historia. De los intentos realizados en este
sentido se han llegado a definir las lneas fundamentales para la
obtencin de mquinas inteligentes: En un principio los esfuerzos
estuvieron dirigidos a la obtencin de autmatas, en el sentido de
mquinas que realizaran, con ms o menos xito, alguna funcin tpica

Dra. Diana Cecilia Muoz Casanova

26

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

de los seres humanos. Hoy en da se contina estudiando en sta misma


lnea, con resultados sorprendentes, existen maneras de realizar
procesos similares a los inteligentes y que podemos encuadrar dentro de
la llamada Inteligencia Artificial (IA).
A pesar de disponer de herramientas y lenguajes de programacin
diseados expresamente para el desarrollo de mquinas inteligentes,
existe un enorme problema que limita los resultados que se pueden
obtener: estas mquinas se implementan sobre computadoras basadas en
la filosofa de Von Neumann, y que se apoyan en una descripcin
secuencial del proceso de tratamiento de la informacin. Si bien el
desarrollo de estas computadoras es espectacular, no deja de seguir la
lnea antes expuesta: una mquina que es capaz de realizar tareas
mecnicas de forma increblemente rpida, como por ejemplo clculo,
ordenacin o control, pero incapaz de obtener resultados aceptables
cuando se trata de tareas como reconocimiento de formas, voz, etc.
La otra lnea de la investigacin ha tratado de aplicar principios fsicos
que rigen en la naturaleza para obtener mquinas que realicen trabajos
pesados en nuestro lugar. De igual manera se puede pensar respecto a la
forma y capacidad de razonamiento humano; se puede intentar obtener
mquinas con esta capacidad basadas en el mismo principio de
funcionamiento.
No se trata de construir mquinas que compitan con los seres humanos,
sino que realicen ciertas tareas de rango intelectual con que ayudarle,
principio bsico de la Inteligencia Artificial.
Las primeras explicaciones tericas sobre el cerebro y el pensamiento
ya fueron dadas ya por Platn (427-347 a.C.) y Aristteles (348-422
a.C.). Las mismas ideas tambin las mantuvo Descartes (1569-1650) y
los filsofos empiristas del siglo XVIII.
La clase de las llamadas mquinas cibernticas, a la cual la
computacin neuronal pertenece, tiene ms historia de la que se cree:
Hern (100 a.C) construy un autmata hidrulico.
1936 - Alan Turing. Fue el primero en estudiar el cerebro como una
forma de ver el mundo de la computacin. Sin embargo, los primeros

Dra. Diana Cecilia Muoz Casanova

27

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

tericos que concibieron los fundamentos de la computacin neuronal


fueron Warren McCulloch, un neurofisilogo, y Walter Pitts, un
matemtico, quienes, en 1943, lanzaron una teora acerca de la forma de
trabajar de las neuronas (Un Clculo Lgico de la Inminente Idea de la
Actividad Nerviosa - Boletn de Matemtica Biofsica 5: 115-133).
Ellos modelaron una red neuronal simple mediante circuitos elctricos.
1949 - Donald Hebb. Escribi un importante libro: La organizacin
del comportamiento, en el que se establece una conexin entre
psicologa y fisiologa. Fue el primero en explicar los procesos del
aprendizaje (que es el elemento bsico de la inteligencia humana) desde
un punto de vista psicolgico, desarrollando una regla de como el
aprendizaje ocurra. Aun hoy, este es el fundamento de la mayora de
las funciones de aprendizaje que pueden hallarse en una red neuronal.
Su idea fue que el aprendizaje ocurra cuando ciertos cambios en una
neurona eran activados. Tambin intent encontrar semejanzas entre el
aprendizaje y la actividad nerviosa. Los trabajos de Hebb formaron las
bases de la Teora de las Redes Neuronales.
1950 - Karl Lashley. En sus series de ensayos, encontr que la
informacin no era almacenada en forma centralizada en el cerebro
sino que era distribuida encima de l.
1956 - Congreso de Dartmouth. Este Congreso frecuentemente se
menciona para indicar el nacimiento de la inteligencia artificial.
1957 - Frank Rosenblatt. Comenz el desarrollo del Perceptrn. Esta
es la red neuronal ms antigua; utilizndose hoy en da para aplicacin
como reconocedor de patrones. Este modelo era capaz de generalizar, es
decir, despus de haber aprendido una serie de patrones poda reconocer
otros similares, aunque no se le hubiesen presentado anteriormente. Sin
embargo, tena una serie de limitaciones, por ejemplo, su incapacidad
para resolver el problema de la funcin OR-exclusiva y, en general, era
incapaz de clasificar clases no separables linealmente. En 1959, escribi
el libro Principios de Neurodinmica, en el que confirm que, bajo
ciertas condiciones, el aprendizaje del Perceptrn converga hacia un
estado finito (Teorema de Convergencia del Perceptrn).

Dra. Diana Cecilia Muoz Casanova

28

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

1960 - Bernard Widrow/Marcial Hoff. Desarrollaron el modelo


Adaline (ADAptative LINear Elements). Esta fue la primera red
neuronal aplicada a un problema real (filtros adaptativos para eliminar
ecos en las lneas telefnicas) que se ha utilizado comercialmente
durante varias dcadas.
1961 - Karl Steinbeck: Die Lernmatrix. Red neuronal para simples
realizaciones tcnicas (memoria asociativa).
1967 - Stephen Grossberg. A partir de sus conocimientos fisiolgicos,
ha escrito numerosos libros y desarrollado modelo de redes neuronales.
Realiz una red: Avalancha, que consista en elementos discretos con
actividad que vara en el tiempo que satisface ecuaciones diferenciales
continuas, para resolver actividades como reconocimiento contino de
habla y aprendizaje de los brazos de un robot.
1969 - Marvin Minsky/Seymour Papert. En este ao surgieron
crticas que frenaron, hasta 1982, el crecimiento que estaban
experimentando las investigaciones sobre redes neuronales. Minsky y
Papera, del Instituto Tecnolgico de Massachussets (MIT), publicaron
un libro Perceptrons. Probaron (matemticamente) que el Perceptrn no
era capaz de resolver problemas relativamente fciles, tales como el
aprendizaje de una funcin no-lineal. Esto demostr que el Perceptrn
era muy dbil, dado que las funciones no-lineales son extensamente
empleadas en computacin y en los problemas del mundo real. A pesar
del libro, algunos investigadores continuaron su trabajo. Tal fue el caso
de James Anderson, que desarroll un modelo lineal, llamado
Asociador Lineal, que consista en unos elementos integradores lineales
(neuronas) que sumaban sus entradas. Este modelo se basa en el
principio de que las conexiones entre neuronas son reforzadas cada vez
que son activadas. Anderson dise una potente extensin del
Asociador Lineal, llamada Brain State in a Box (BSB).
1974 - Paul Werbos. Desarroll la idea bsica del algoritmo de
aprendizaje de propagacin hacia atrs (backpropagation); cuyo
significado qued definitivamente aclarado en 1985.

Dra. Diana Cecilia Muoz Casanova

29

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

1977 - Stephen Grossberg. Teora de Resonancia Adaptada (TRA). La


Teora de Resonancia Adaptada es una arquitectura de red que se
diferencia de todas las dems previamente inventadas. La misma simula
otras habilidades del cerebro: memoria a largo y corto plazo.
1977 - Teuvo Kohonen. Ingeniero electrnico de la Universidad de
Helsinki, desarroll un modelo similar al de Anderson, pero
independientemente.
1980 - Kunihiko Fukushima. Desarroll un modelo neuronal para el
reconocimiento de patrones visuales..
1985 - John Hopfield. Provoc el renacimiento de las redes neuronales
con su libro: Computacin neuronal de decisiones en problemas de
optimizacin.
1986 - David Rumelhart/G. Hinton. Redescubrieron el algoritmo de
aprendizaje de propagacin hacia atrs (backpropagation). A partir de
1986, el panorama fue alentador con respecto a las investigaciones y el
desarrollo de las redes neuronales. En la actualidad, son numerosos los
trabajos que se realizan y publican cada ao, las aplicaciones nuevas
que surgen (sobretodo en el rea de control) y las empresas que lanzan
al mercado productos nuevos, tanto hardware como software (sobre
todo para simulacin).
Actualmente, son numerosos los trabajos que se realizan y se publican,
las aplicaciones nuevas que surgen y las empresas que lanzan al
mercado productos nuevos, tanto hardware como software, sobre todo
para simulacin.

1.6.3.2.

Definiciones de una red neuronal


Existen numerosas formas de definir a las redes neuronales; desde las
definiciones cortas y genricas hasta las que intentan explicar ms
detalladamente qu son las redes neuronales. Por ejemplo:
1) Una nueva forma de computacin, inspirada en modelos
biolgicos.
2) Un modelo matemtico compuesto por un gran nmero de
elementos procesales organizados en niveles.

Dra. Diana Cecilia Muoz Casanova

30

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

3) Un sistema de computacin compuesto por un gran nmero de


elementos simples, elementos de procesos muy interconectados,
los cuales procesan informacin por medio de su estado
dinmico como respuesta a entradas externas.
4) Redes

neuronales

artificiales

son

redes

interconectadas

masivamente en paralelo de elementos simples (usualmente


adaptativos) y con organizacin jerrquica, las cuales intentan
interactuar con los objetos del mundo real del mismo modo que
lo hace el sistema nervioso biolgico.
1.6.3.3.

Ventajas que ofrecen las redes neuronales


Debido a su constitucin y a sus fundamentos, las redes neuronales
artificiales presentan un gran nmero de caractersticas semejantes a las
del cerebro. Por ejemplo, son capaces de aprender de la experiencia, de
generalizar de casos anteriores a nuevos casos, de abstraer
caractersticas esenciales a partir de entradas que representan
informacin irrelevante, etc. Esto hace que ofrezcan numerosas ventajas
y que este tipo de tecnologa se est aplicando en mltiples reas. Entre
las ventajas se incluyen:
Aprendizaje Adaptativo: La capacidad de aprendizaje adaptativo
es una de las caractersticas ms atractivas de redes neuronales.
Esto es, aprenden a llevar a cabo ciertas tareas mediante un
entrenamiento con ejemplos ilustrativos. Como las redes neuronales
pueden aprender a diferenciar patrones mediante ejemplos y
entrenamientos, no es necesario elaborar modelos a priori ni
necesidad de especificar funciones de distribucin de probabilidad.
Las redes neuronales son sistemas dinmicos autoadaptativos. Son
adaptables debido a la capacidad de autoajuste de los elementos
procesales (neuronas) que componen el sistema. Son dinmicos,
pues son capaces de estar constantemente cambiando para adaptarse
a las nuevas condiciones.
En el proceso de aprendizaje, los enlaces ponderados de las
neuronas se ajustan de manera que se obtengan ciertos resultados

Dra. Diana Cecilia Muoz Casanova

31

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

especficos. Una red neuronal no necesita un algoritmo para


resolver un problema, ya que ella puede generar su propia
distribucin de pesos en los enlaces mediante el aprendizaje.
Tambin existen redes que continan aprendiendo a lo largo de su
vida, despus de completado su perodo de entrenamiento.
La funcin del diseador es nicamente la obtencin de la
arquitectura apropiada. No es problema del diseador el cmo la
red aprender a discriminar. Sin embargo, s es necesario que
desarrolle un buen algoritmo de aprendizaje que le proporcione a la
red la capacidad de discriminar, mediante un entrenamiento con
patrones.
Auto-organizacin: Las redes neuronales emplean su capacidad de
aprendizaje adaptativo para auto organizar la informacin que
reciben durante el aprendizaje y/o la operacin. Mientras que el
aprendizaje es la modificacin de cada elemento procesal, la
autoorganizacin consiste en la modificacin de la red neuronal
completa para llevar a cabo un objetivo especfico.
Cuando las redes neuronales se usan para reconocer ciertas clases
de patrones, ellas auto organizan la informacin usada. Por
ejemplo, la red llamada backpropagation, crear su propia
representacin caracterstica, mediante la cual puede reconocer
ciertos patrones.
Esta autoorganizacin provoca la generalizacin: facultad de las
redes neuronales de responder apropiadamente cuando se les
presentan datos o situaciones a las que no haba sido expuesta
anteriormente. El sistema puede generalizar la entrada para obtener
una respuesta. Esta caracterstica es muy importante cuando se tiene
que solucionar problemas en los cuales la informacin de entrada
no es muy clara; adems permite que el sistema d una solucin,
incluso cuando la informacin de entrada est especificada de
forma incompleta.

Dra. Diana Cecilia Muoz Casanova

32

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Tolerancia a fallos: Las redes neuronales fueron los primeros


mtodos computacionales con la capacidad inherente de tolerancia
a fallos. Comparados con los sistemas

computacionales

tradicionales, los cuales pierden su funcionalidad cuando sufren un


pequeo error de memoria, en las redes neuronales, si se produce un
fallo en un nmero no muy grande de neuronas y aunque el
comportamiento del sistema se ve influenciado, no sufre una cada
repentina.
Hay dos aspectos distintos respecto a la tolerancia a fallos:
a) Las redes pueden aprender a reconocer patrones con ruido,
distorsionados o incompletos. Esta es una tolerancia a fallos
respecto a los datos.
b) Las redes pueden seguir realizando su funcin (con cierta
degradacin) aunque se destruya parte de la red.
La razn por la que las redes neuronales son tolerantes a los fallos
es que tienen su informacin distribuida en las conexiones entre
neuronas, existiendo cierto grado de redundancia en este tipo de
almacenamiento. La mayora de los ordenadores algortmicos y
sistemas de recuperacin de datos almacenan cada pieza de
informacin en un espacio nico, localizado y direccionable. En
cambio, las redes neuronales almacenan informacin no localizada.
Por lo tanto, la mayora de las interconexiones entre los nodos de la
red tendrn sus valores en funcin de los estmulos recibidos, y se
generar un patrn de salida que represente la informacin
almacenada.
Operacin en tiempo real: Una de las mayores prioridades, casi
en la totalidad de las reas de aplicacin, es la necesidad de realizar
procesos con datos de forma muy rpida. Las redes neuronales se
adaptan bien a esto debido a su implementacin paralela. Para que
la mayora de las redes puedan operar en un entorno de tiempo real,
la necesidad de cambio en los pesos de las conexiones o
entrenamiento es mnima.

Dra. Diana Cecilia Muoz Casanova

33

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Fcil insercin dentro de la tecnologa existente: Una red


individual puede ser entrenada para desarrollar una nica y bien
definida tarea (tareas complejas, que hagan mltiples selecciones de
patrones, requerirn sistemas de redes interconectadas). Con las
herramientas computacionales existentes (no del tipo PC), una red
puede ser rpidamente entrenada, comprobada, verificada y
trasladada a una implementacin hardware de bajo coste. Por lo
tanto, no se presentan dificultades para la insercin de redes
neuronales en aplicaciones especficas, por ejemplo de control,
dentro de los sistemas existentes. De esta manera, las redes
neuronales se pueden utilizar para mejorar sistemas en forma
incremental y cada paso puede ser evaluado antes de acometer un
desarrollo ms amplio.
1.6.3.4.

Redes neuronales y computadoras digitales.


Para entender el potencial de la computacin neuronal, sera necesario
hacer una breve distincin entre sistemas de computaciones neuronales
y digitales: los sistemas neurolgicos no aplican principios de circuitos
lgicos o digitales.
Un sistema de computacin digital debe ser sncrono o asncrono. Si
fuera asncrono, la duracin de los impulsos neuronales debera ser
variable para mantener uno de los valores binarios por periodos de
tiempo indefinido, lo cual no es el caso. Si el principio fuera sncrono,
se necesitara un reloj global o maestro con el cual los pulsos estn
sincronizados. ste tampoco es el caso. Las neuronas no pueden ser
circuitos de umbral lgico, porque hay miles de entradas variables en la
mayora de las neuronas y el umbral es variable con el tiempo, siendo
afectado por la estimulacin, atenuacin, etc. La precisin y estabilidad
de tales circuitos no es suficiente para definir ninguna funcin
booleana. Los procesos colectivos que son importantes en computacin
neuronal no pueden implementarse por computacin digital. Por todo
ello, el cerebro debe ser un computador analgico.

Dra. Diana Cecilia Muoz Casanova

34

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Ni las neuronas ni las sinapsis son elementos de memoria biestable.


Todos los hechos fisiolgicos hablan a favor de las acciones de las
neuronas como integradores analgicos, y la eficiencia de la sinapsis
cambia de forma gradual, lo cual no es caracterstico de sistemas
biestables.
Los circuitos del cerebro no implementan computacin recursiva y por
lo tanto no son algortmicos. Debido a los problemas de estabilidad, los
circuitos neuronales no son suficientemente estables para definiciones
recursivas de funciones como en computacin digital. Un algoritmo,
por definicin, define una funcin recursiva.
1.6.3.5.

Fundamentos de las Redes Neuronales


El modelo Biolgico
Se estima que el cerebro humano contiene ms de cien mil millones
de neuronas estudios sobre la anatoma del cerebro humano
concluyen que hay ms de 1000 sinpsis a la entrada y a la salida de
cada neurona. Es importante notar que aunque el tiempo de
conmutacin de la neurona (unos pocos milisegundos) es casi un
milln de veces menor que en los actuales elementos de las
computadoras, ellas tienen una conectividad miles de veces
superior que las actuales supercomputadoras.
Las neuronas y las conexiones entre ellas (sinpsis) constituyen la
clave para el procesado de la informacin.
Algunos elementos ha destacar de su estructura histolgica son:
Las dendritas, que son la va de entrada de las seales que se
combinan en el cuerpo de la neurona. De alguna manera la neurona
elabora una seal de salida a partir de ellas.
El axn, que es el camino de salida de la seal generada por la
neurona.
Las sinapsis, que son las unidades funcionales y estructurales
elementales que median entre las interacciones de las neuronas. En
las terminaciones de las sinapsis se encuentran unas vesculas que
contienen unas sustancias qumicas llamadas neurotransmisores,

Dra. Diana Cecilia Muoz Casanova

35

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

que ayudan a la propagacin de las seales electroqumicas de una


neurona a otra.

Fgura N 3: Red Neuronal

Lo que bsicamente ocurre en una neurona biolgica es lo siguiente: la


neurona es estimulada o excitada a travs de sus entradas (inputs) y
cuando se alcanza un cierto umbral, la neurona se dispara o activa,
pasando una seal hacia el axn.
Posteriores investigaciones condujeron al descubrimiento de que estos
procesos son el resultado de eventos electroqumicos. Como ya se sabe,
el pensamiento tiene lugar en el cerebro, que consta de billones de
neuronas interconectadas. As, el secreto de la inteligencia -sin
importar como se defina- se sita dentro de estas neuronas
interconectadas y de su interaccin.
La forma que dos neuronas interactan no est totalmente conocida,
dependiendo adems de cada neurona. En general, una neurona enva su
salida a otras por su axn. El axn lleva la informacin por medio de
diferencias de potencial, u ondas de corriente, que depende del
potencial de la neurona.
Este proceso es a menudo modelado como una regla de propagacin
representada por la funcin de red u (.). La neurona recoge las seales

Dra. Diana Cecilia Muoz Casanova

36

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

por su sinpsis sumando todas las influencias excitadoras e inhibidoras.


Si las influencias excitadoras positivas dominan, entonces la neurona da
una seal positiva y manda este mensaje a otras neuronas por sus
sinpsis de salida. En este sentido la neurona puede ser modelada como
una simple funcin escaln f (.). Como se muestra en la prxima figura,
la neurona se activa si la fuerza combinada de la seal de entrada es
superior a un cierto nivel, en el caso general el valor de activacin de la
neurona viene dado por una funcin de activacin f (.).

Fgura N 4: Funcin de Activacin

1.6.3.6.

Otras definiciones de Redes Neuronales


Una red neuronal es un procesador masivamente paralelo distribuido
que es propenso por naturaleza a almacenar conocimiento experimental
y hacerlo disponible para su uso. Este mecanismo se parece al cerebro
en dos aspectos [SH1]:
El conocimiento es adquirido por la red a travs de un proceso
que se denomina aprendizaje.
El conocimiento se almacena mediante la modificacin de la
fuerza o peso sinptico de las distintas uniones entre neuronas.

Una red neuronal es un modelo computacional con un conjunto de


propiedades especficas, como son la habilidad de adaptarse o aprender,
generalizar u organizar la informacin, todo ello basado en un
procesamiento eminentemente paralelo.

Dra. Diana Cecilia Muoz Casanova

37

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.6.3.7.

Manual de Sistemas Expertos


Unidad I

Elementos de una Red Neuronal Artificial


Las redes neuronales son modelos que intentan reproducir el
comportamiento del cerebro. Los mismos constan de dispositivos
elementales de proceso:
Las neuronas. A partir de ellas, se pueden generar
representaciones especficas, de tal forma que un estado
conjunto de ellas puede significar una letra, un nmero u otro
objeto.

Generalmente se pueden encontrar tres tipos de

neuronas:
1) Aquellas que reciben estmulos externos relacionados
con el aparato sensorial, que tomarn la informacin de
entrada. Dicha informacin se transmite a ciertos
elementos internos que se ocupan de su procesamiento.
2) Es en las sinapsis y neuronas correspondientes a este
segundo nivel donde se genera cualquier tipo de
representacin interna de informacin. Como no tienen
relacin directa con la informacin de entrada ni con la
salida, estos elementos se denominan unidades ocultas.
3) Una vez finalizado el perodo de procesado, la
informacin llega a las unidades de salida, cuya misin
es dar la respuesta al sistema.
A continuacin se puede ver en la siguiente figura.

Fgura N 5: Esquema de una red neuronal

Dra. Diana Cecilia Muoz Casanova

38

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

La misma est constituida por neuronas interconectadas y arregladas en


tres capas (esto ltimo puede variar). Los datos ingresan por medio de
la capa de entrada, pasan a travs de la capa oculta y salen por la
capa de salida. Cabe mencionar que la capa oculta puede estar
constituida por varias capas.
En la siguiente figura se compara una neurona biolgica con una
neurona artificial. En la misma se pueden observar las similitudes entre
ambas (tienen entradas, utilizan pesos y generan salidas).

Fgura N 6: Comparacin de una neurona biologica con una


neurona artificial
La neurona artificial pretende mimetizar las caractersticas ms
importantes de las neuronas biolgicas. Cada neurona i-sima est
caracterizada en cualquier instante por un valor numrico denominado
valor o estado de activacin ai (t ) ; asociado a cada unidad, existe una
funcin de salida, f i , que transforma el estado actual de activacin en
una seal de salida. Dicha seal es enviada a travs de los canales de
comunicacin unidireccionales a otras unidades de la red; estos canales
la seal se modifica de acuerdo con la sinpsis (el peso, w ji ) asociada a
cada uno de ellos segn determinada regla. Las seales moduladas que
han llegado a la unidad j-sima se combinan Net j yi w ji entre ellas,
i

generando as la entrada total

Net j

Una funcin de activacin, F, determina el nuevo estado de activacin

a j (t 1)

de la neurona, teniendo en cuenta la entrada total calculada y el

anterior estado de activacin

Dra. Diana Cecilia Muoz Casanova

a j (t )

39

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Fgura N 7: Funcin de Activacin F

La dinmica que rige la actualizacin de los estados de las unidades


puede ser de dos tipos: asncrono y modo sncrono. En el primer caso,
las neuronas evalan su estado continuamente segn les va llegando
informacin, y lo hacen de forma independiente, En el segundo caso, la
informacin llega de forma continua, pero los cambios se realizan
simultneamente, como si existiera un reloj interno que decidiera
cuando

cambiar

su

estado.

Los

sistemas

biolgicos

quedan

probablemente entre ambas posibilidades.

1.6.3.8.

Aplicaciones.
Las caractersticas de las RNA las hacen bastante apropiadas para
aplicaciones en las que no se dispone a priori de un modelo
identificable que pueda ser programado, pero se dispone de un conjunto
bsico de ejemplos de entrada (previamente clasificados o no).
Asimismo, son altamente robustas tanto al ruido como a la disfuncin
de elementos concretos y son fcilmente paralelizables.
Esto incluye problemas de clasificacin y reconocimiento de patrones
de voz, imgenes, seales, etc. Asimismo se han utilizado para
encontrar patrones de fraude econmico, hacer predicciones en el
mercado financiero, hacer predicciones de tiempo atmosfrico, etc.
Tambin se pueden utilizar cuando no existen modelos matemticos
precisos o algoritmos con complejidad razonable; por ejemplo la red de
Kohonen ha sido aplicada con un xito ms que razonable al clsico

Dra. Diana Cecilia Muoz Casanova

40

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

problema del viajante (un problema para el que no se conoce solucin


algortmica de complejidad polinmica).
Otro tipo especial de redes neuronales artificiales se ha aplicado en
conjuncin con los algoritmos genticos (AG) para crear controladores
para robots. La disciplina que trata la evolucin de redes neuronales
mediante algoritmos genticos se denomina Robtica Evolutiva. En este
tipo de aplicacin el genoma del AG lo constituyen los parmetros de la
red (topologa, algoritmo de aprendizaje, funciones de activacin, etc.)
y la adecuacin de la red viene dada por la adecuacin del
comportamiento exhibido por el robot controlado (normalmente una
simulacin de dicho comportamiento).
Ejemplos

Quake II Neuralbot
Un bot es un programa que simula a un jugador humano. El Neuralbot
es un bot para el juego Quake II que utiliza una red neuronal para
decidir su comportamiento y un algoritmo gentico para el aprendizaje.
Es muy fcil probarlo y ver su evolucin.
Clasificador No Sesgado de Protenas
Es un programa que combina diversas tcnicas computacionales con el
objetivo de clasificar familias de protenas. Un posible mtodo consiste
en

utilizar

mtricas

adaptativas

como

por

ejemplo:

mapas

autoorganizados y algoritmos genticos.


El problema de clasificacin no sesgada basada en la expresin de las
protenas en Aminocidos puede reducirse, conceptualmente, a lo
siguiente:
La identificacin de grupos de protenas que compartan
caractersticas comunes.
La determinacin de las razones estructurales por las cuales las
protenas en cuestin se agrupan de la manera indicada.
Evitar la idea de establecer criterios de clasificacin
(sesgados) fundamentados en ideas preconcebidas para lograr

Dra. Diana Cecilia Muoz Casanova

41

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

su clasificacin. En este sentido, hay dos asuntos que


considerar:
1) Cmo lograr la caracterizacin de las protenas de
manera no sesgada
2) Cmo lograr lo anterior sin apelar a medidas de
agrupamiento que, a su vez, impliquen algn tipo de
sesgo sobre dicho agrupamiento.

Las RNA han sido aplicadas a un nmero en aumento de problemas en


la vida real y de considerable complejidad, donde su mayor ventaja es
en la solucin de problemas que son bastante complejos para la
tecnologa actual, tratndose de problemas que no tienen una solucin
algortmica cuya solucin algortmica es demasiado compleja para ser
encontrada.
En general, debido a que son parecidas al las del cerebro humano, las
RNA son bien nombradas ya que son buenas para resolver problemas
que el humano puede resolver pero las computadoras no. Estos
problemas incluyen el reconocimiento de patrones y la prediccin del
tiempo. De cualquier forma, el humano tiene capacidad para el
reconocimiento de patrones, pero la capacidad de las redes neuronales
no se ve afectada por la fatiga, condiciones de trabajo, estado emocional,
y compensaciones.
Se conocen cinco aplicaciones tecnolgicas aplicadas:
Reconocimiento de textos manuscritos
Reconocimiento del habla
Simulacin de centrales de produccin de energa
Deteccin de explosivos
Identificacin de blancos de radares

1.6.4.

Los Algoritmos genticos.


1.6.4.1.

Antecedentes
El algoritmo gentico es una tcnica de bsqueda basada en la teora de
la evolucin de Darwin, que ha cobrado tremenda popularidad en todo

Dra. Diana Cecilia Muoz Casanova

42

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

el mundo durante los ltimos aos. Se presentarn aqu los conceptos


bsicos que se requieren para abordarla, as como unos sencillos
ejemplos que permitan a los lectores comprender cmo aplicarla al
problema de su eleccin.
En los ltimos aos, la comunidad cientfica internacional ha mostrado
un creciente inters en una nueva tcnica de bsqueda basada en la
teora de la evolucin y que se conoce como el algoritmo gentico.
Esta tcnica se basa en los mecanismos de seleccin que utiliza la
naturaleza, de acuerdo a los cuales los individuos ms aptos de una
poblacin son los que sobreviven, al adaptarse ms fcilmente a los
cambios que se producen en su entorno. Hoy en da se sabe que estos
cambios se efectan en los genes de un individuo (unidad bsica de
codificacin de cada uno de los atributos de un ser vivo), y que sus
atributos ms deseables (i.e., los que le permiten adaptarse mejor a su
entorno) se transmiten a sus descendientes cuando ste se reproduce
sexualmente.
Un investigador de la Universidad de Michigan llamado John Holland
era consciente de la importancia de la seleccin natural, y a fines de los
60s desarroll una tcnica que permiti incorporarla a un programa. Su
objetivo era lograr que las computadoras aprendieran por s mismas. A
la tcnica que invent Holland se le llam originalmente "planes
reproductivos", pero se hizo popular bajo el nombre "algoritmo
gentico" tras la publicacin de su libro en 1975.
Una definicin bastante completa de un algoritmo gentico es la
propuesta por John Koza:
"Es un algoritmo matemtico altamente paralelo que transforma un
conjunto de objetos matemticos individuales con respecto al tiempo
usando operaciones modeladas de acuerdo al principio Darwiniano de
reproduccin y supervivencia del ms apto, y tras haberse presentado de
forma natural una serie de operaciones genticas de entre las que
destaca la recombinacin sexual. Cada uno de estos objetos
matemticos suele ser una cadena de caracteres (letras o nmeros) de

Dra. Diana Cecilia Muoz Casanova

43

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

longitud fija que se ajusta al modelo de las cadenas de cromosomas, y


se les asocia con una cierta funcin matemtica que refleja su aptitud.

1.6.4.2.

Definiciones
Los Algoritmos Genticos (AGs) son mtodos adaptativos que
pueden usarse para resolver problemas de bsqueda y optimizacin.
Estn basados en el proceso gentico de los organismos vivos. A lo
largo de las generaciones, las poblaciones evolucionan en la
naturaleza de acorde con los principios de la seleccin natural y la
supervivencia de los ms fuertes, postulados por Darwin. Por
imitacin de este proceso, los Algoritmos Genticos son capaces de
ir creando soluciones para problemas del mundo real. La evolucin
de dichas soluciones hacia valores ptimos del problema depende en
buena medida de una adecuada codificacin de las mismas.
Un algoritmo gentico consiste en una funcin matemtica o una
rutina de software que toma como entradas a los ejemplares y
retorna como salidas cuales de ellos deben generar descendencia
para la nueva generacin.
Versiones ms complejas de algoritmos genticos generan un ciclo
iterativo que directamente toma a la especie (el total de los
ejemplares) y crea una nueva generacin que reemplaza a la antigua
una cantidad de veces determinada por su propio diseo. Una de sus
caractersticas principales es la de ir perfeccionando su propia
heurstica en el proceso de ejecucin, por lo que no requiere largos
perodos de entrenamiento especializado por parte del ser humano,
principal defecto de otros mtodos para solucionar problemas, como
los Sistemas Expertos.
Los algoritmos genticos son el resultado de los recientes avances
de la computacin evolutiva y la gentica y se constituyen en una de
las principales herramientas tecnolgicas de la inteligencia artificial.
Estos algoritmos simulan la mecnica de la seleccin natural y de la
gentica utilizando la informacin histrica para encontrar nuevos
puntos de bsqueda de una solucin ptima, permitiendo obtener

Dra. Diana Cecilia Muoz Casanova

44

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

soluciones a un problema que por su complejidad no tiene ningn


mtodo de solucin de forma preciso. Dicha solucin exige clculos
complejos que de manera normal tomaran demasiado tiempo.

1.6.4.3.

Ventajas y Desventajas
No necesitan conocimientos especficos sobre el problema que intentan
resolver.
Operan de forma simultnea con varias soluciones, en vez de
trabajar de forma secuencial como las tcnicas tradicionales.
Cuando se usan para problemas de optimizacin maximizar una
funcin objetivo- resultan menos afectados por los mximos
locales (falsas soluciones) que las tcnicas tradicionales.
Resulta

sumamente

fcil

ejecutarlos

en

las

modernas

arquitecturas masivamente paralelas.


Usan operadores probabilsticas, en vez de los tpicos
operadores determinsticos de las otras tcnicas.
Pueden tardar mucho en converger, o no converger en absoluto,
dependiendo en cierta medida de los parmetros que se utilicen
tamao de la poblacin, nmero de generaciones, etc.-.
Pueden converger prematuramente debido a una serie de
problemas de diversa ndole.

1.6.4.4.

Limitaciones
El poder de los Algoritmos Genticos proviene del hecho de que se trata
de una tcnica robusta, y pueden tratar con xito una gran variedad de
problemas provenientes de diferentes reas, incluyendo aquellos en los
que otros mtodos encuentran dificultades. Si bien no se garantiza que
el Algoritmo Gentico encuentre la solucin ptima, del problema,
existe evidencia emprica de que se encuentran soluciones de un nivel
aceptable, en un tiempo competitivo con el resto de algoritmos de
optimizacin combinatoria. En el caso de que existan tcnicas
especializadas para resolver un determinado problema, lo ms probable
es que superen al Algoritmo Gentico, tanto en rapidez como en

Dra. Diana Cecilia Muoz Casanova

45

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

eficacia. El gran campo de aplicacin de los Algoritmos Genticos se


relaciona con aquellos problemas para los cuales no existen tcnicas
especializadas. Incluso en el caso en que dichas tcnicas existan, y
funcionen bien, pueden efectuarse mejoras de las mismas hibridndolas
con los Algoritmos Genticos.

1.6.4.5.

Como saber si es posible usar un Algoritmo Gentico


La aplicacin ms comn de los algoritmos genticos ha sido la
solucin de problemas de optimizacin, en donde han mostrado ser muy
eficientes y confiables. Sin embargo, no todos los problemas pudieran
ser apropiados para la tcnica, y se recomienda en general tomar en
cuenta las siguientes caractersticas del mismo antes de intentar usarla:
Su espacio de bsqueda (i.e., sus posibles soluciones) debe estar
delimitado dentro de un cierto rango.
Debe poderse definir una funcin de aptitud que nos indique qu
tan buena o mala es una cierta respuesta.
Las soluciones deben codificarse de una forma que resulte
relativamente fcil de implementar en la computadora.
El primer punto es muy importante, y lo ms recomendable es intentar
resolver problemas que tengan espacios de bsqueda discretos aunque
stos sean muy grandes. Sin embargo, tambin podr intentarse usar la
tcnica con espacios de bsqueda continuos, pero preferentemente
cuando exista un rango de soluciones relativamente pequeo.
La funcin de aptitud no es ms que la funcin objetiva de nuestro
problema de optimizacin. El algoritmo gentico nicamente maximiza,
pero la minimizacin puede realizarse fcilmente utilizando el recproco
de la funcin maximizante (debe cuidarse, por supuesto, que el
recproco de la funcin no genere una divisin por cero). Una
caracterstica que debe tener esta funcin es que tiene ser capaz de
"castigar" a las malas soluciones, y de "premiar" a las buenas, de forma
que sean estas ltimas las que se propaguen con mayor rapidez.
La codificacin ms comn de las soluciones es a travs de cadenas
binarias, aunque se han utilizado tambin nmeros reales y letras. El

Dra. Diana Cecilia Muoz Casanova

46

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

primero de estos esquemas ha gozado de mucha popularidad debido a


que es el que propuso originalmente Holland, y adems porque resulta
muy sencillo de implementar.

1.6.4.6.

Marco de Desarrollo
Antes de continuar ahondando en la tcnica de los Algoritmos
Genticos sera interesante dejarla situada dentro de un marco ms
amplio. Nos referimos a la rama de la Inteligencia Artificial que se ha
denominado Computacin Evolutiva.
El trmino Computacin Evolutiva se refiere al estudio de los
fundamentos y aplicaciones de ciertas tcnicas heursticas de bsqueda
basadas en los principios naturales de la evolucin. Una gran variedad
de algoritmos evolutivos han sido propuestos pero principalmente
pueden clasificarse en: Algoritmos Genticos, Programacin Evolutiva,
Estrategias Evolutivas, Sistemas Clasificadores y Programacin
Gentica. Esta clasificacin se basa sobre todo en detalles de desarrollo
histrico ms que en el hecho de un funcionamiento realmente diferente,
de hecho las bases biolgicas en las que se apoyan son esencialmente
las mismas. Las diferencias entre ellos se centran en los operadores que
se usan en cada caso y en general en la forma de implementar la
seleccin, reproduccin y sustitucin de individuos en una poblacin.
Aunque los detalles de la evolucin no han sido completamente
comprendidos, incluso hoy en da, existen algunos puntos en los que se
fundamentan:
La evolucin es un proceso que opera a nivel de cromosomas, y
no a nivel de individuos. Cada individuo es codificado como un
conjunto de cromosomas.
La seleccin natural es el mecanismo mediante el cual los
individuos mejor adaptados son los que tienen mayores
posibilidades de reproducirse.
El proceso evolutivo tiene lugar en la etapa de la reproduccin.
Es en esta etapa donde se producen la mutacin, que es la
causante de que los cromosomas de los hijos puedan ser

Dra. Diana Cecilia Muoz Casanova

47

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

diferentes a los de los padres, y el cruce, que combina los


cromosomas de los padres para que los hijos tengan
cromosomas diferentes.
De forma breve, pasamos a comentar cada una de los algoritmos
mencionados anteriormente, para que pueda tener una idea de las
similitudes y diferencias entre ellos.
Los Algoritmos Genticos resuelven los problemas generando
poblaciones sucesivas a las que se aplican los operadores de
mutacin y cruce. Cada individuo representa una solucin al
problema, y se trata de encontrar al individuo que represente a la
mejor solucin.
La Programacin Gentica funciona igual que la tcnica
anterior pero se centra en el estudio de problemas cuya solucin
es un programa. De manera que los individuos de la poblacin
son programas que se acercan ms o menos a realizar una tarea
que es la solucin.
La Programacin Evolutiva es otro enfoque de los algoritmos
genticos, en este caso el estudio se centra en conseguir
operadores genticos que imiten lo mejor posible a la naturaleza,
en cada caso, ms que en la relacin de los padres con su
descendencia. En este caso no se utiliza el operador de cruce,
tomando la mxima importancia el operador de mutacin.
Estrategias Evolutivas se centran en el estudio de problemas de
optimizacin e incluyen una visin del aprendizaje en dos
niveles: a nivel de genotipo, y a nivel de fenotipo. Y por ltimo
los Sistemas Clasificadores engloban el estudio de problemas en
los que la solucin buscada se corresponde con toda una
poblacin.
Para finalizar se muestra un esquema en el que se sitan las tcnicas
mencionadas con respecto a otros procedimientos de bsqueda
conocidos.

Dra. Diana Cecilia Muoz Casanova

48

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.6.4.7.

Manual de Sistemas Expertos


Unidad I

Aplicaciones
Como hemos podido observar, el rea de aplicacin de los AG es muy
amplia, y en general sus aplicaciones se pueden implementar a muchos
de los problemas de la vida cotidiana, de igual forma, se hayan aplicado
a diversos problemas y modelos en ingeniara, y en la ciencia en general
cabe destacar entre ellos:
Las principales aplicaciones de los algoritmos genticos en el campo de
la gestin financiera empresarial son:
La prediccin de la bancarrota de una empresa.
Evaluacin y prediccin de la capacidad financiera de una
empresa para absorber un prstamo y con el fin de decidir el
otorgamiento del mismo, la inferencia de reglas que indiquen las
mejores decisiones sobre la asignacin de recursos con base en
informacin histrica de varios aos.
Generalmente, los algoritmos genticos se emplean con bastante xito
en la investigacin de operaciones para resolver problemas de
optimizacin numrica y combinatoria.

1.6.4.8.

Ciclo general de un algoritmo gentico estndar


El AG estndar se puede expresar en pseudocdigo con el siguiente
ciclo:
1. Generar aleatoriamente la poblacin inicial de individuos P (0).
2.

Mientras ( numero _ generaciones <= mximo _ nmeros _


generaciones)
Hacer:
{
Evaluacin;
Seleccin;
Reproduccin;
Generacin ++;
}

3. Mostrar resultados.
4. Fin de la generacin.

Dra. Diana Cecilia Muoz Casanova

49

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.6.4.9.

Manual de Sistemas Expertos


Unidad I

Funcin de evaluacin y seleccin


La funcin de evaluacin define el criterio para ordenar las hiptesis
que potencialmente pueden pasar a formar parte de la siguiente
generacin.
La seleccin de las hiptesis que formarn parte de la siguiente
generacin o que sern usadas para aplicarles los operadores genticos,
puede realizarse de varias formas. Las ms usuales son:
Seleccin proporcional. En este mtodo la probabilidad de que una
hiptesis sea seleccionada viene determinada por:

Seleccin mediante torneo. Se eligen dos hiptesis al azar.


Seleccin por rango. La probabilidad de que una hiptesis sea
seleccionada ser proporcional a su posicin en dicha lista ordenada,
en lugar de usar el valor devuelto por la funcin de evaluacin.

1.6.4.10.

Clases de algoritmos genticos


Algoritmos Genticos Generacionales.
Algoritmos Genticos de estado Fijo.
Algoritmos Genticos Paralelos.
Modelos de Islas.
Modelo Celular

1.6.4.11. Operadores genticos


Los dos operadores ms comunes son la mutacin y el cruce.
Adems existen varios tipos de cruce:

Dra. Diana Cecilia Muoz Casanova

50

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Cruce Simple

Cruce Doble

Mutacin. Generalmente se aplica despus de hacer uso del


operador cruce. Su objetivo es producir diversidad en la
poblacin.

1.6.5.

Razonamiento basado en Casos.


1.6.5.1.

Concepto
Se ocupa del estudio de los mecanismos mentales necesarios para
repetir lo que se ha hecho o vivido con anterioridad, ya sea por
experiencia propia o por casos concretos recopilados en la
bibliografa o en la sabidura popular. Los diversos casos son del
tipo "Si X, entonces Y" con algunas adaptaciones y crticas segn las
experiencias previas en el resultado de cada una de dichas reglas.
RBC es razonar por recuerdo
RBC resuelve problemas nuevos adaptando soluciones que se han
usado en la solucin de problemas viejos

Dra. Diana Cecilia Muoz Casanova

51

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

RBC es una nueva aproximacin a la resolucin de problemas y el


aprendizaje
RBC es una forma con que las personas resolvemos problemas
usando casos a la vez que una manera para construir mquinas que
los usen.

1.6.5.2.

Ventajas:
Tcnica de adquisicin de conocimientos.
Tcnica de resolucin de problemas.
Dominios de difcil estructuracin.

1.6.5.3.

Inconvenientes
Memoria
Manipulacin de la incertidumbre.

1.6.5.4.

Etapas
Recuperacin
Adaptacin
Evaluacin
Aprendizaje

1.6.5.5.

El ciclo del razonamiento basado en casos


Un ciclo de vida CBR est formado esencialmente por los cuatro
procesos siguientes (ver figura):
Recuperar el caso casos pasados ms similares (RETRIEVE). Esto es,
retomar
1. La experiencia de un problema anterior que se cree es similar al
nuevo.
2. Reutilizar la informacin y conocimiento de este caso casos
recuperados para resolver el nuevo problema (REUSE). Esto es,
copiar o integrar la solucin del caso casos recuperados.
3. Revisar la solucin propuesta (REVISE).

Dra. Diana Cecilia Muoz Casanova

52

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

4. Guardar la nueva solucin una vez ha sido confirmada validada


(RETAIN). Se guardan aquellas partes de la experiencia de una
manera tal que sea til para resolver problemas futuros.

Es decir, un problema nuevo se resuelve recuperando uno o ms casos


previos (ya experimentados), reutilizando el caso de una manera u otra,
revisando la solucin propuesta, y guardando la nueva experiencia
incorporndola a la base de conocimiento existente (base de casos).
A este respecto hay que hacer varias aclaraciones:
Los cuatro procesos no son tareas nicas, es decir, cada uno de ellos
implica llevar a cabo una serie de tareas ms especficas
Si bien se ha dado a entender que en el proceso de reutilizacin se
lleva a cabo toda la problemtica de adaptacin del caso casos
recuperados para el nuevo problema, en muchas aplicaciones
prcticas las fases de reutilizacin y revisin apenas se distinguen, y
muchos investigados hablan de fase de adaptacin, que combina
ambas. No obstante, la adaptacin es quiz uno de los frentes ms
abiertos en los sistemas CBR debido a su complejidad.

Fgura N 8: Ciclo bsico de un sistema CBR


Dra. Diana Cecilia Muoz Casanova

53

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

En la figura podemos observar lo comentado sobre el ciclo CBR. Una


descripcin de un problema define un nuevo caso, que se usa en la
RECUPERACIN de un caso de entre la coleccin de casos pasados.
El caso recuperado se combina con el nuevo caso para, a travs de la
REUTILIZACIN, proponer un caso que sea una solucin al problema
inicial. En una fase de EVALUACIN se verificar el xito de la
solucin, por ejemplo siendo comprobada en el mundo real
(habitualmente por un agente humano), y se reparar si falla. Durante
el ALMACENAMIENTO, la experiencia til se guarda para una futura
reutilizacin, y el caso base se actualiza por un nuevo caso aprendido, o
por una modificacin de algunos casos existentes.
Adems, la figura nos muestra cmo el conocimiento general juega un
papel importante en el ciclo, dando soporte a los procesos CBR.
Dependiendo del tipo de mtodo CBR, este soporte puede variar, desde
una consideracin dbil ( nula) a un soporte muy fuerte. Se trata, por
tanto, de un conocimiento general, frente al conocimiento especfico
encerrado en los casos. Por ejemplo, en el diagnstico mdico por
analoga con casos de pacientes previos, el conocimiento general podra
consistir en un modelo de anatoma junto con relaciones causales entre
estados patolgicos, formulados quiz a modo de un conjunto de reglas.

1.7 REAS DE LA IA

Las definiciones anteriores implican que las mquinas para ser consideradas inteligentes
deben exhibir ciertas habilidades, suficientemente complejas como para ser tratadas
como reas independientes. La forma de abordaje de cada una de estas reas suele ser
tan dismil, que es difcil reconocerles un origen comn.

1.7.1.

Procesamiento del lenguaje natural.


Una de las ramas ms importantes de la Inteligencia Artificial es aquella
orientada a facilitar la comunicacin hombre-computadora por medio del
lenguaje humano, o lenguaje natural.

Dra. Diana Cecilia Muoz Casanova

54

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

El Procesamiento del Lenguaje Natural (PLN) es la disciplina encargada de


producir sistemas informticos que posibiliten dicha comunicacin, por medio
de la voz o del texto. Se trata de una disciplina tan antigua como el uso de las
computadoras (aos 50), de gran profundidad, y con aplicaciones tan
importantes como la traduccin automtica o la bsqueda de informacin en
Internet.

El procesamiento del lenguaje natural presenta mltiples aplicaciones:


Correccin de textos: Permite la deteccin y correccin de errores
ortogrficos y gramaticales, Para detectar este tipo de errores, la
computadora necesita entender en cierto grado el sentido del texto. Los
correctores de gramtica detectan las estructuras incorrectas en las
oraciones aunque todas las palabras en la oracin estn bien escritas en
el lenguaje en cuestin. El problema de detectar los errores de este tipo
es complejo debido a la existencia de gran variedad de estructuras
permitidas.
Para describir las estructuras de las oraciones en el idioma, se usan las
llamadas gramticas formales, o sea conjuntos de reglas de
combinacin de palabras y su orden relativo en las oraciones.
La traduccin automtica: Se refiere a la traduccin correcta de un
lenguaje a otro, tomando en cuenta lo que se quiere expresar en cada
oracin.
En el campo de la recuperacin de la informacin han desarrollado
sistemas que permiten obtener informacin sobre

estadsticas

deportivas, informacin turstica, geografa etc. En lugar de buscar los


documentos para encontrar en ellos la respuesta a su pregunta, el
usuario podra hacer su pregunta a la computadora: Cmo se llama el
Presidente de Francia?, Cules son los centros ms avanzados en
Procesamiento del Lenguaje Natural?, y otras.
Por otra parte Se han desarrollado sistemas con la capacidad de crear
resmenes de documentos a partir de los datos suministrados. Estos

Dra. Diana Cecilia Muoz Casanova

55

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

sistemas son capaces de realizar un anlisis detallado del contenido del


texto y elaborar un resumen.
Tambin se han desarrollado sistemas inteligentes que permiten
modelar el comportamiento del estudiante, reconocer y procesar sus
errores, desarrollar habilidades en la resolucin de problemas y otras
actividades del proceso enseanza y aprendizaje. En ellos el
Procesamiento del Lenguaje Natural juega un papel de relevante
importancia en la creacin y desarrollo de interfaces amigables.

1.7.2.

Visin Artificial.
La visin artificial (machine vision) es la adquisicin automtica de imgenes
sin contacto y su anlisis tambin automtico con el fin de extraer la
informacin necesaria para controlar un proceso o una actividad como:
Control de calidad.
Ordenacin por calidades (grading).
Manipulacin de materiales.
Test y calibracin de aparatos.
Monitorizacin de procesos.

El propsito de la visin artificial es programar un computador para que


"entienda" una escena o las caractersticas de una imagen.

Los objetivos tpicos de la visin artificial incluyen:


La deteccin, segmentacin, localizacin y reconocimiento de ciertos
objetos en imgenes (por ejemplo, caras humanas).
La evaluacin de los resultados (ej.: segmentacin, registro).
Registro de diferentes imgenes de una misma escena u objeto, i.e.,
hacer concordar un mismo objeto en diversas imgenes.
Seguimiento de un objeto en una secuencia de imgenes.
Mapeo de una escena para generar un modelo tridimensional de la
escena; tal modelo podra ser usado por un robot para navegar por la
escena.

Dra. Diana Cecilia Muoz Casanova

56

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Estimacin de las posturas tridimensionales de humanos.


Bsqueda de imgenes digitales por su contenido.
Estos objetivos se consiguen por medio de reconocimiento de patrones,
aprendizaje estadstico, geometra de proyeccin, procesado de
imgenes, teora de grficos y otros campos. La visin artificial
cognitiva est muy relacionada con la psicologa cognitiva y la
computacin biolgica.

1.7.3.

Robtica.
Es la ciencia encaminada a disear y construir aparatos y sistemas capaces de
realizar tareas propias de un ser humano. No es un campo propio de la
Inteligencia Artificial pero es quiz todo un conjunto de circuito compacto que
van a permitir tener como base para que una computadora pensante pueda
desplazarse y lograr as la movilidad.

1.7.3.1. Robots Fsicos


Robtica Industrial: Es la parte de la Ingeniera que se dedica a la
construccin de mquinas capaces de realizar tareas mecnicas y
repetitivas de una manera muy eficiente y con costes reducidos.
Robtica de Servicio: Es la parte de la Ingeniera que se centra en
el diseo y construccin de mquinas capaces de proporcionar
servicios directamente a los miembros que forman sociedad.
Robtica Inteligente: Son robots capaces de desarrollar tareas que,
desarrolladas en un ser humano, requieren el uso de su capacidad de
razonamiento.
Robtica Humanoide: Es la parte de la ingeniera que se dedica al
desarrollo de sistemas robotizados para imitar determinadas
peculiaridades del ser humano.

1.7.3.2. Robots Software


Robtica de Exploracin: Es la parte de la Ingeniera del Software
que se encarga de desarrollar programas capaces de explorar

Dra. Diana Cecilia Muoz Casanova

57

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

documentos en busca de determinados contenidos. Existen diversos


servicios en Internet dedicados a esta parcela de la robtica.

1.7.4.

Reconocimiento de Patrones.
Tambin llamado lectura de patrones, identificacin de figuras y
reconocimiento de formas es el reconocimiento de patrones en seales. No
slo es un campo de la informtica sino un proceso fundamental que se
encuentra en casi todos las acciones humanas.
El punto esencial del reconocimiento de patrones es la clasificacin: se quiere
clasificar una seal dependiendo de sus caractersticas. Seales, caractersticas
y clases pueden ser de cualquiera forma, por ejemplo se puede clasificar
imgenes digitales de letras en las clases A a Z dependiente de sus pxeles
o se puede clasificar ruidos de cantos de los pjaros en clases de rdenes
aviares dependiente de las frecuencias.
El objetivo es clasificar patrones con base en un conocimiento a priori o
informacin estadstica extrada de los patrones. Los patrones a clasificar
suelen ser grupos de medidas u observaciones, definiendo puntos en un espacio
multidimensional apropiado.
Un sistema de reconocimiento de patrones completo consiste en un sensor que
recoge las observaciones a clasificar, un sistema de extraccin de
caractersticas que transforma la informacin observada en valores numricos o
simblicos, y un sistema de clasificacin o descripcin que, basado en las
caractersticas extradas, clasifica la medicin.

A continuacin se sugieren algunos ejemplos relevantes al rea de


reconocimiento de patrones:
Parmetros para reconocer la cara de una persona.
Agrupacin de palabras para hacer sentido en una frase.
Buscar la llave para abrir una chapa.
Olores para saber si una naranja esta fresca o podrida.

Dra. Diana Cecilia Muoz Casanova

58

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

1.7.5.

Manual de Sistemas Expertos


Unidad I

La realidad Virtual.
La realidad virtual (RV) es una simulacin tridimensional generada o asistida
comnmente por computadora de algn aspecto del mundo real o ficticio, en el
cual el usuario tiene la sensacin de pertenecer a ese ambiente sinttico o
interactuar con l. La RV permite interactuar con mundos tridimensionales de
una manera ms natural, por ejemplo, un usuario puede realizar acciones
dentro de un modelo virtual, desplazarse, moverse, caminar a travs de l o
levantar cosas, y de esta forma experimentar situaciones que se asemejan al
mundo real.
Se destacan tres caractersticas idneas de la RV:
Es un ambiente tridimensional generado por computadora.
Es interactiva.
Es inmersiva, es decir, el usuario se siente parte del ambiente virtual.

Las partes bsicas de un sistema de realidad virtual son: el modelo de


simulacin, la representacin del ambiente virtual, la entrada/salida y por
supuesto el usuario.

Figura N 9: Modelo genrico de un ambiente virtual

1.7.6.

Ciberntica.
Es la ciencia que se ocupa de los sistemas de control y de comunicacin en las
personas y en las mquinas, estudiando y aprovechando todos sus aspectos y
mecanismos comunes. El nacimiento de la ciberntica se estableci en el ao
1942, en la poca de un congreso sobre la inhibicin cerebral celebrado en
Nueva York, del cual surgi la idea de la fecundidad de un intercambio de
conocimiento entre fisilogos y tcnicos en mecanismos de control. Cinco aos
ms tarde, Norbert Wiener uno de los principales fundadores de esta ciencia,
propuso el nombre de ciberntica, derivado de una palabra griega que puede
traducirse como piloto, timonel o regulador. Por tanto la palabra ciberntica

Dra. Diana Cecilia Muoz Casanova

59

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

podra significar ciencia de los mandos. Estos mandos son estructuras con
elementos especialmente electrnicos y en correlacin con los mecanismos que
regulan la psicologa de los seres vivientes y los sistemas sociales humanos, y a
la vez que permiten la organizacin de mquinas capaces de reaccionar y
operar con ms precisin y rapidez que los seres vivos, ofrecen posibilidades
nuevas para penetrar ms exactamente las leyes que regulan la vida general y
especialmente la del hombre en sus aspectos psicolgicos, econmicos,
sociales etc.

Dentro del campo de la ciberntica se incluyen las grandes mquinas


calculadoras y toda clase de mecanismos o procesos de autocontrol semejantes
y las mquinas que imitan la vida. Las perspectivas abiertas por la ciberntica y
la sntesis realizada en la comparacin de algunos resultados por la biologa y
la electrnica, han dado vida a una nueva disciplina, la binica. La binica es la
ciencia que estudia los: principios de la organizacin de los seres vivos para su
aplicacin a las necesidades tcnicas. Una realizacin especialmente
interesante de la binica es la construccin de modelos de materia viva,
particularmente de las molculas proteicas y de los cidos nucleicos.

1.7.7.

Multimedia.
Es un sistema que utiliza ms un medio de comunicacin al mismo tiempo en
la presentacin de la informacin, como el texto, la imagen, la animacin, el
vdeo y el sonido.
Tipos de informacin multimedia:
Texto: sin formatear, formateado, lineal e hipertexto.
Grficos: utilizados para representar esquemas, planos, dibujos lineales...
Imgenes: son documentos formados por pxeles. Pueden generarse por
copia del entorno (escaneado, fotografa digital) y tienden a ser ficheros
muy voluminosos.
Animacin: presentacin de un nmero de grficos por segundo que
genera en el observador la sensacin de movimiento.

Dra. Diana Cecilia Muoz Casanova

60

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Vdeo: Presentacin de un nmero de imgenes por segundo, que crean en


el observador la sensacin de movimiento. Pueden ser sintetizadas o
captadas.
Sonido: puede ser habla, msica u otros sonidos.

1.7.8.

Juegos.
La mayor parte de los juegos estn construidos usando tcnicas de inteligencia
artificial.

1.7.9.

Otras reas
Planificacin y soporte a la decisin.
Programacin Automtica.
Prueba Automtica de teoremas y matemticas simblica.
Problemas de optimizacin combinatorios y de itinerarios.
Aprendizaje.

1.8 ALGUNAS APLICACIONES DE LA IA


80s

SE en diferentes dominios (Mycin, R1,Prospector, Dendral.)

89

HITECH

92

MARVEL

94 PEGASUS

Programa de ajedrez.
S.E. En tiempo real que monitorea nave espacial
Realiza reservas de vuelos

Sistemas de conduccin de automviles.


Newstracker: Este programa recupera datos especficos.
Cuando el usuario indica el tipo de informacin que le interesa, Newstracker
comprende el mensaje y, despus de revisar durante horas miles de artculos en
peridicos, agencias de noticias o revistas conectadas a Internet, cada maana
"edita" un peridico personalizado.
Si la seleccin de noticias no satisface por completo al lector, Newstracker toma
nota, rectifica y es capaz de aprender de sus errores. Una vez que haya estudiado
durante cierto tiempo los hbitos de lectura del usuario, le proporciona informacin
a su medida.

Dra. Diana Cecilia Muoz Casanova

61

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Los expertos definen a este sofisticado programa como un "asistente polivalente" de


la primera generacin.
Racter: Creado en 1980 por Thomas Etter, un programador-analista de San
Francisco y William Chamberlain, un escritor neoyorquino. La intencin de ambos
era crear un programa que crease cuentos. Posteriormente, lo modificaron para
permitirle mantener conversaciones con seres humanos, veamos un extracto de una
conversacin entre Racter y Chamberlain.
Racter: Hemos hablado antes?
Chamberlain: No
Racter: De qu sexo eres?
Chamberlain: Masculino
Racter: Cul es tu nombre completo?
Chamberlain: Bill Chamberlain
Racter: Qu eres?
Chamberlain: Cronorreflectometrista
Racter: De dnde eres?
Chamberlain: De la ciudad de Nueva York
Racter: Ya veo. As que cronorreflectometrista, verdad? Escucha. Gritemos
juntos con decisin. Me gusta la cautivadora msica italiana. Qu clase de
msica te gusta a ti?
Chamberlain: el jazz
Racter: El jazz est bien. Qu me dices de la clsica?
Chamberlain: Me gusta la msica clsica
Racter: Y de qu nacionalidad?
Chamberlain: Tambin me gusta la msica italiana
Racter: A m, personalmente, Palestrina me inflama. Adems de Italia, otros
pases produjeron en el siglo XVII embelesados msicos. Sewall fue un
importante y furibundo maestro del Renacimiento. Amrica fue su nacin. Yo
saco de la msica amoroso placer.
El dilogo prosigue por similares derroteros, mezclando sin pudor Bach con el
rodaballo y las lechugas. Al comparar este dilogo con el que yo mismo he

Dra. Diana Cecilia Muoz Casanova

62

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

mantenido con el programa Doctor se aprecia una diferencia; el dilogo de Racter es


mucho ms rico y fluido que el de Doctor, si bien es bastante ms disparatado.
En el test de Turing Racter podra pasar por un humano con una marcada tendencia a
la divagacin. Cul es el funcionamiento de Racter? Al principio de la
conversacin hace una serie de preguntas a su interlocutor, cuyas respuestas va
almacenando en una base de datos. En cuanto juzga que dispone de suficiente
informacin empieza a elaborar frases, en las que combina los elementos de que
dispone en su memoria con aquellos que ha recibido de su interlocutor, con lo que
logra implicarlo en la conversacin. Para construir las frases sigue un mismo
esquema gramatical, en el que los sustantivos, adjetivos y verbos se eligen al azar
entre una amplia variedad que pertenecen a una misma categora, y los artculos se
adecuan a la forma gramatical correspondiente. Esto hace que las frases sean
sintcticamente correctas, pero en tanto los sustantivos, adjetivos y verbos se
escogen al azar el sentido suele ser disparatado.
Mycin: Se trataba de un sistema experto para el diagnstico de enfermedades
infecciosas. Desde los resultados de anlisis de sangre, cultivos bacterianos y dems
datos, el programa era capaz de determinar, o en lo menos, sugerir el
microorganismo que estaba causando la infeccin. Despus de llegar a una
conclusin, MYCIN prescriba una medicacin que se adaptaba perfectamente a las
caractersticas de la persona, tales como el peso corporal de este. Despus del
reconocido xito que tuvo.
Mondrian: Un agente grfico
Un agente autnomo que no slo interacta con la interfaz modificndola (agente
autnomo de interfaz) sino que se utiliza para facilitar labores de diseo grfico.
Mondrian parte "conociendo" solamente figuras geomtricas bsicas. Se puede
seleccionar alguna en su paleta de comandos y luego determinar su posicin y
tamao, y eventualmente desplazar y borrar. Pero, lo ms interesante y caracterstica
esencial del agente es que, teniendo alguna figura diseada en base a los
componentes fundamentales, se pueden agrupar, nombrar y de este modo agregar
como nuevo recurso en la paleta

Dra. Diana Cecilia Muoz Casanova

63

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

Progresivamente, el agente "aprende" as nuevas confi-guraciones y las agrega a su


base de conocimientos, el diseador llegando a disponer de una gran cantidad de
figuras reutilizables.
En cualquier momento el usuario puede obtener informacin acerca del modo en que
el componente fue construido gracias a otra funcionalidad del agente.
Express: Este programa permite realizar mltiples bsquedas simultneas en
diferentes buscadores, y localizar informacin en Internet de manera fcil y rpida a
travs de una interfaz sencilla.
Un sistema experto para la diagnosis de enfermedades de los ganglios linfticos,
capaz de emitir una diagnosis y de dar una explicacin de la misma que sirva para
sealar los factores que la han motivado (Heckerman, 1991).
Un sistema robtico integrado en un coche, que recoge imgenes de video y seales
de sensores, las integra con la experiencia adquirida en conducciones de
entrenamiento, y es capaz de conducir en una autopista sin la intervencin humana
(Pomerleau, 1993).
Un sistema de monitorizacin de trafico capaz de reconocer distintas escenas a
partir de las imgenes tomadas desde una cmara en un cruce, e incluso de realizar
llamadas automticas a los servicios de emergencia en caso de accidentes (King et
al., 1993).
Pegasus: Un programa de comprensin del habla capaz de entender los detalles de
una peticin de reserva de vuelo y de tramitar la transaccin (Zue et al. 1994).
Deep Blue: Mquina paralela que juega ajedrez y primera en derrotar al campen
mundial [IBM 97].
Aibo: De Sony, es un perro inteligente el cual fue introducido al mercado en Japn y
Estados

Unidos

en

1999,

solo

era

vendido

por

la

red.

El robot cuenta con mltiples sensores a lo largo de su cuerpo para la iteracin con
su dueo, as como para darle su ubicacin. Tambin cuenta con luces, con las
cuales

expresa

su

Dra. Diana Cecilia Muoz Casanova

estado

de

nimo

en

distintas

situaciones.
64

Universidad Nacional del Santa


Facultad de Ingeniera
E. A. P Ingeniera de Sistemas e Informtica

Manual de Sistemas Expertos


Unidad I

La unidad de procesamiento central es


un procesador RISK de 64 bits con 32
Mb en RAM de memoria, con un
sistema operativo OPEN-R v.1.1.2 de
sony. Adems se pueden conseguir
programas

para

modelar

su

comportamiento.
Manejador inteligente de bases de datos.
Proceso automtico inteligente para realizar taladros sobre una placa
Robot angular de movimiento contino.
Control virtual-remoto de la trayectoria de un vehiculo autnomo.
Central inteligente de alarmas
Central inteligente de atencin de emergencias medicas.
Proceso automtico inteligente para cortar piezas de cuero para zapatos,
carteras y otros.

Dra. Diana Cecilia Muoz Casanova

65