Vous êtes sur la page 1sur 62

NG

E NE
R A
EN
SS
T EMAS E
NFORM
TCA
Mdulo: NTELGENCA ARTFCAL
Docente: ng. Mario Almache Quito-
Ecuador
2013
Presentacin
El presente documento ha sido elaborado para que
sirva como una
gua de estudio en Inteligencia Artificial (IA), dirigida a
los estudiantes de las Carreras de Ingeniera en
Sistemas e Informtica, en el Ecuador
Se han considerado los temas estrat!gicas de la IA,
esperando, sean de mucha utilidad para que el
estudiante desarrolle el conocimiento " las
competencias necesarias en el desarrollo de
aplicaciones verdaderamente inteligentes
El documento, aunque no tiene una visi#n completa del
vasto campo de la IA, s permite tener una idea
clara de los mbitos de investigaci#n " desarrollo ms
prometedores El desarrollo del documento, gira en
base al concepto de $agente de IA%& de esta manera
el ob'etivo pragmtico, siempre apunta al dise(o "
construcci#n de estas entidades
Se invita a la comunidad universitaria, vida por el
conocimiento, para que aproveche de la me'or manera,
esta peque(a compilaci#n de temas, "a sea en su vida
estudiantil o en su desempe(o profesional
Ing )ario *
Almache C
3
El gran secreto del xito es estar
preparado cuando llega la oportunidad
Annimo
4
SYLLABU S
Perodo: 2013 Asignatura: nteligencia Artificial
Profesor: ng. Mario
Almache
Horas semanales: 8 Paralelos:
e-mail:
mga lmache@e spe .edu .e c
Fecha:
I) Objetivos:
- Conocer las reas estratgicas de investigacin en la nteligencia Artificial.
- Entender el mbito multidisciplinario e interdisciplinario de la A
- Utilizar el paradigma de los Agentes de A para el desarrollo de aplicaciones.
- Solucionar problemas de alta complejidad cognitiva, mediante la aplicacin de heursticas
claras, sencillas y elegantes.
- Comprender las principales estrategias de A que permiten la implementacin de la inteligencia
en las mquinas.
- Analizar los fundamentos de las conductas inteligentes en los humanos.
II) Plan curricular de la Asignatura
Captulos !e"
as
#oras$clase
1 Agentes inteligentes y resolucin de problemas
2 Conocimiento e inferencia
3 Procesamiento de la incertidumbre
4 Aprendizaje automtico
5 Redes neuronales y computacin evolutiva
III) Cronogra"a
%ec&a Clas
e
'escripcin$Contenido$Actividad
1 Agentes inteligentes y resolucin de problemas
2 Conocimiento e inferencia
3 Procesamiento de la incertidumbre
4 Aprendizaje automtico
5 Redes neuronales y computacin evolutiva
I() Criterios de evaluacin
1. Proyectos individuales/grupales
2. Laboratorios
3. Talleres
4. Presentaciones orales
5. Participacin en clase
6. Deberes
7. Exmenes
5
() Siste"a de cali)icacin
Actividades Porcentaje de la nota
Laboratorios, Talleres 4
0
Presentaciones orales, Deberes, Participacin
en clase
1
0
Proyectos individuales/grupales 2
0 Examen final 3
0
(I) Bibliogra)a
- Russell, S.; Norvig, P. (2003): nteligencia Artificial Un Enfoque Moderno (2 ed.). Prentice
Hall Hispanoamericana
- Nilsson, N. (2001): nteligencia Artificial Una Nueva Sntesis. McGraw-Hill
- E. Rich y K. Knight. nteligencia Artificial. McGraw-Hill, 1994
- Winston, P. (1992): Artificial ntelligence (3 ed.). Addison Wesley
6
*ndice de contenidos
Capitulo +: Agentes inteligentes y resolucin de problemas............ 7
1.1 Qu es la nteligencia Artificial?........................................................................... 7
1.2 Agentes nteligentes............................ 7
1.3 Agentes que resuelven problemas..................... 8
1.4 Bsqueda de soluciones.......................... 9
1.5 Bsqueda heurstica........................... 1
1 1.6 mplementaciones en Lisp.......................... 1
4 1.7 Ejercicios
Captulo ,: Conocimiento e inferencia..................... 1
6
2.1 Conocimiento informal y sus representaciones formales........... 1
6 2.2 Lgica propositiva y lgica del primer orden (LPO).............. 1
6 2.3 nferencia en LPO ............................ 1
8 2.4 El Principio de Resolucin........................ 2
0 2.5 Las clusulas de Horn......................... 2
2 2.6 Estructura de una Base de Conocimientos en Prolog............. 2
2 2.7 Ejercicios y aplicaciones........................ 2
3
Captulo -: Procesamiento de la ncertidumbre................ 2
5
3.1 ncertidumbre: sus causas y las decisiones racionales............ 2
5 3.2 Probabilidades y regla de Bayes..................... 2
5 3.3 ncertidumbre y los Factores de Certeza................. 2
6 3.4 Razonamiento con lgica difusa...................... 2
8 3.5 Ejercicios............................... 3
0
Captulo .: Aprendizaje automtico..................... 3
2
4.1 Categoras de los aprendizajes...................... 3
2 4.2 Aprendizaje mediante anlisis de diferencias............... 3
2 4.3 Aprendizaje mediante el manejo de varios modelos............ 3
4 4.4 Aprendizaje mediante construccin de rboles de identificacin...... 3
5 4.5 Clustering............................... 3
6 4.6 Aprendizajes alternativos....................... 3
7 4.7 Ejercicios.............................. 3
8
Captulo /: Redes Neuronales y Computacin Evolutiva........... 3
9
5.1 Analoga entre redes neuronales biolgicas y artificiales........... 3
9 5.2 Clasificacin de las RN........................ 4
0 5.3 Redes en cascada y retropropagacin................. 4
0 5.4 Modelos de redes recurrentes..................... 4
1 5.5 Computacin Evolutiva: reas de estudio................ 4
3 5.6 Ejercicios.............................. 4
7
7
Capitulo +: Agentes inteligentes 0 resolucin de proble"as
Objetivo: Comprender la estructura de los agentes inteligentes y las estrategias fundamentales que
stos utilizan para la resolucin de problemas.
+1+ 23u4 es la Inteligencia Arti)icial5
La nteligencia Artificial empez a surgir como concepto a finales del siglo XX, dando paso a la agrupacin
de sus definiciones en cuatro categoras planteadas por Russell y Norvig en su libro nteligencia Artificial
(1996):
1. Sistemas que piensan como humanos
2. Sistemas que actan como humanos
3. Sistemas que piensan racionalmente
4. Sistemas que actan racionalmente
Uno de los conceptos ms reconocidos y aplicados para la definicin de la nteligencia Artificial fue
realizado por Rich y Knight, definindola como "El estudio de cmo lograr que las computadoras realicen
tareas que por el momento, los humanos hacen mejor (1991).
+1, Agentes Inteligentes
Un agente es todo aquello (hardware y/software) que percibe su ambiente mediante sensores y que
responde o acta en tal ambiente por medio de efectores, como se muestra en la figura 1.1.
Fig. 1.1 Agente interactuando con su ambiente
En los siguientes cuadros se muestran algunos ejemplos de sensores y efectores:
Sentido
Percepcin de equilibrio
Propiocepcin
Magnetocepcin
Electrocepcin
Eco localizacin
radiente de presin
Sensor
Acelermetro
Encoder
Magnetmetro
!ensor de "olta#e
!onar
Arreglo de presin
8
Efectores Humanos
M$sculos
%razos & manos Efectores en Mquinas
'otacin de Motores
Apertura&cierre de "(l"ulas
Por consiguiente, los Agentes nteligentes:
No requieren de humanos para operar (autonoma).
Tienen una medida de desempeo (racionalidad).
Usan sensores para enterarse de lo que pasa fuera.
Usan efectores para modificar su entorno.
La "inteligencia est determinada por sus reglas.
Las reglas se pueden pre-grabar nstintos
Las reglas pueden ser aprendidas Aprendizaje
Agente 6acional: En todos los casos de posibles percepciones, un agente racional deber emprender
todas aquellas acciones que favorezcan obtener el mximo de su medida de rendimiento, basndose en
las evidencias aportadas por la secuencia de percepciones y en todo conocimiento incorporado en tal
agente.
7speci)icacion del entorno de trabajo
99
Propiedades de los entornos de trabajo
ENTORNO
+onde se desenvuelve la gente o personas,
- +E.E/)I0IS.A 1S ES.2CAS.IC2
Determinista
A
El estado siguiente depende de un estado anterior sobre el cual se e'ecuta
alguna acci#n
3
Accin
Estocstico
1010
El estado es aleatorio
4 E5IS2+IC2 1S SEC6E0CIA7
E5IS2+IC2
Se divide en partes denominados elementos at#micos conformados por ,
Estado
Acci#n
Acci#n 4
B
Acci#n - --
A
SEC6E0CIA7
7a acci#n que se e'ecute en un tiempo . afectara en un estado .8-
9 .2.A7)E0.E 23SE/1A37E 1S 5A/CIA7)E0.E 23SE/1A37E
.2.A7)E0.E 23SE/1A37E
Agente 5ude 5ercibir +e )anera .otal El Entorno
5A/CIA7)E0.E 23SE/1A37E
5ercibe +e )anera +isminuida El Entorno (Sensores)
: 60 S272 A*E0.E 1S )67.IA*E0.E
5articipa un solo agente
5articipa varios agentes
Colaborativo
Competitivo
1111
; ES.A.IC2 1S +I0A)IC2
Esttico
El agente se queda pensando independiente del tiempo
+inmico
El agente depende del tiempo (e<igencia)
A*E0.E E- E4 E9 E: E;
A'edre= +etermini
sta
Secuencia
l
.otalment
e
2bservabl
e
)ultiagen
te
Esttico
5u=le Estocstic
o
Secuencia
l
.otalment
e
2bservabl
e
6n solo
agente
+inmico
+ )!dico +etermini
sta
Secuencia
l
5arcialme
nte
2bservabl
e
)ultiagen
te
Esttico
1212
+1- Agentes 8ue resuelven proble"as
Una de las reas de mayor inters para la A es la implementacin de agentes que resuelven problemas.
De otro lado, los agentes pueden clasificarse en:
a) Agente re)lejo si"ple: Las acciones del agente se establecen en funcin a una tab la d e
pe rc ep c i n a cc in .
1313
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
b)
Agentes con estado interno: Es un agente reflejo, pero que almacena sus percepciones
anteriores, es decir tie n e m e m o ri a .
1414
1515
1616
c) Agentes basados en "etas: Agente que combina propiedades de los dos anteriores, pero que
tiene una meta a la cual llegar. Necesita bu s c a r el mejor camino y p lan ific a r la secuencia de
acciones.
d) Agentes basados en utilidad: Son aquellos agentes que tienen m ltip le s me ta s que cumplir,
mide el grado de satisfaccin del grado de cumplimiento de sus metas.
1717
Cuando se especifica (n) la (s) meta (s) de un problema, es ms manejable el diseo de un
agente, ya que, es relativamente sencillo especificar las acciones que puede emprender (el agente),
de tal manera que se "empee en alcanzarla. Por lo tanto, los agentes 8ue resuelven
proble"as son agentes basados en metas que determinan las secuencias de acciones que les
permitan obtener estados deseables.
Para solucionar un proble"a es necesario seguir los siguientes pasos:
- Formulacin de metas: se establece el objetivo
- Formulacin del problema: determinacin de acciones y estados intermedios.
- Uso de una estrategia de b9s8ueda: evaluacin de las posibles secuencias de
acciones que lleven a la meta y, eleccin de la ms apta.
- Ejecucin: se lleva adelante la solucin que determine la bsqueda.
Para la formulacin de un problema es necesario establecer:
Un estado inicial: es donde se encuentra el agente.
Un conjunto de acciones que el agente puede emprender.
La prueba de "eta para saber si alcanz un estado meta.
La )uncin costo de ruta que le asigna un valor a una ruta determinada.
7je"plo: se desea construir un agente "Aspiradora nteligente, cuya tarea primordial es dejar limpias
las dos ubicaciones que se muestran a continuacin:
Se supone que los lugares pueden estar limpios o sucios. Entonces se puede formular este problema
identificando:
E st a d o in ic ia l: cualquiera de los siguientes estados (1 al 8)
A cc ione s: ir a la izquierda, aspirar, ir a la derecha
P rue b a d e m e ta : se ha llegado al estado 7 u 8?
Fun ci n co sto d e ru ta : cada accin emprendida cuesta 1
1818
+1. B9s8ueda de soluciones
Una vez definido un problema y con el respectivo mecanismo de identificacin de una solucin, es
necesario emprender la bsqueda de la solucin, para lo cual, ser necesario transitar por el "espacio
de estados, hasta alcanzar la meta. De manera sencilla la bsqueda consiste en escoger una opcin
(estado) haciendo a un lado las dems, para considerarlas posteriormente en caso de no obtener
respuesta alguna mediante la primera opcin.
La eleccin del estado que se desea expandir primero se realiza a travs de una estrategia de
b9s8ueda. Las estrategias de bsqueda se evalan segn los siguientes criterios:
Co"plete;: garantiza encontrar la solucin si es que existe.
Co"plejidad te"poral: cantidad de tiempo necesario para encontrar la solucin.
Co"plejidad espacial: cantidad de memoria necesaria para encontrar la solucin.
Opti"alidad: permite encontrar la mejor solucin en caso de que existan varias.
Clasi)icacin de las estrategias de b9s8ueda
Las estrategias de bsqueda se pueden agrupar en dos grandes categoras:
Bsquedas sin contar con informacin (o bsqueda ciega): no existe informacin acerca de
la cantidad de pasos necesarios o sobre el costo de ruta para pasar del estado de un
momento dado a la meta.
Bsqueda respaldada con informacin (o bsqueda heurstica): se posee informacin muy
valiosa para orientar la bsqueda para que sea ms ptima.
B9s8ueda ciega
Cuando se aplica una estrategia de bsqueda, se va generando el denominado " rbo l d e b s q u e d a , es
decir un grafo que contiene un solo estado "raz y varios estados derivados (o tambin subrboles), sin
llegar a formar "ciclos. Se han identificado algunas estrategias de bsqueda ciega:
- E n a n c hu ra : partiendo del nodo raz se expanden todos los nodos "hijos. Se repite la
expansin en el siguiente nivel, hasta encontrar la meta o hasta cuando no se pueda seguir
expandiendo.
- E n p ro fu nd id ad : empezando en la raz, expandir el rbol tan profundamente como sea
posible, retornando a niveles superiores cuando sea necesario.
- C o sto u n ifo rm e : extender siempre el nodo con menor costo
- P ro fu n d id a d ite ra tiv a : es una variante de la bsqueda en profundidad; se establecen
lmites incrementales de exploracin en profundidad (nivel 0, nivel 1, nivel 2, ., nivel n).
- Bidireccional: se parte simultneamente desde el inicio y la meta, hasta encontrar un
estado intermedio de convergencia.
7je"plo: considere un agente que desea
dirigirse desde la ciudad S hasta la ciudad
G, en la siguiente distribucin de ciudades
y carreteras (fig. 1.2):
Fig. 1.) Mapa de carreteras para un
1919
agente
2020
En las figuras 1.3 y 1.4, se muestran los rboles generados cuando se implementan las bsquedas en
profundidad y anchura, respectivamente.
Fig. 1.* +rbol en pro,undidad Fig. 1.- +rbol en anc.ura
A continuacin se muestra un cuadro comparativo para evaluar las estrategias de bsqueda ciega:
Criterio 7n
anc&ura
Costo
uni)or
"e
7n
pro)undid
ad
Li"itada
en
pro)undidad
Pro)undid
ad
iterativa
Bidirecciona
l
!ie"po
b
d
b
d
b
m
b
l
b
d
b
d/2
7spacio
b
d
b
d
bm bl Bd b
d/2
<pti"a5
Si Si No No Si Si
Co"pleta5
Si Si No
Si
cuando
L>=d
Si Si
Fig 1./ 0omparacin entre estrategias de b$squeda1 b ,actor de rami,icacin1 d
pro,undidad de la solucin1 m pro,undidad m(xima del (rbol1 l l2mite de pro,undidad.
+1/ B9s8ueda &eurstica
Los mtodos de bsqueda heurstica disponen de alguna informacin sobre la proximidad de cada
estado a un estado objetivo, lo que permite explorar en primer lugar los caminos ms prometedores.
Son caractersticas de los mtodos heursticos:
No garantizan que se encuentre una solucin, aunque existan soluciones.
Si encuentran una solucin, no se asegura que sta tenga las mejores propiedades (que
sea de longitud mnima o de coste ptimo).
En algunas ocasiones (que, en general, no se podrn determinar a priori), encontrarn una
solucin (aceptablemente buena) en un tiempo razonable.
Por lo tanto es necesaria la implementacin de una funcin que cuantifique la calidad de un estado
(%uncin &eurstica). Se dice que el verdadero arte de la A se focaliza en la construccin de buenas
funciones heursticas que ayuden a solucionar problemas.
7je"plos de heursticas para algunos problemas concretos.
*** Problema del 8-puzzle ***
2121
a) La basada en la distancia Manhattan (o distancia taxi). Se asocia a cada casilla un nmero que es la
suma de las distancias horizontal y vertical a su posicin en el tablero objetivo (esto es, la suma de
diferencias de sus coordenadas x e y). La funcin heurstica es la suma de las distancias de cada una
de las casillas (excluyendo la que se encuentra vaca).
2 3
1 8 4
7 6 5
H (Ei) =2 (1 de la casilla 1 ms 1 de la casilla 8)
b) Otra heurstica, mucho ms simple, consiste en contar el nmero de casillas que estn fuera de su
sitio (respecto al tablero objetivo). Es una heurstica ms pobre que la anterior, puesto que no usa la
informacin relativa al esfuerzo (nmero de movimientos) necesario para llevar una pieza a su lugar.
*** El problema del viajante ***
- Estado inicial: un viajante se encuentra en una capital de provincia.
- Estado meta: quiere viajar a otra capital por la mejor ruta posible (la ms corta)
- Medios: Las capitales de provincia colindantes estn unidas por carreteras; se dispone de un mapa
con la disposicin de las provincias y sus "coordenadas" en kilmetros respecto al "centro"
(por ejemplo, Madrid, con coordenadas (0,0)).
Una funcin heurstica para ese problema consiste en asignar a cada estado un valor que es la distancia
area (en lnea recta) con el estado objetivo. Dicha distancia es la distancia eucldea entre las
coordenadas de dos ciudades. Se elige una ciudad como siguiente en el camino cuando la suma de la
distancia a la ciudad actual ms la distancia area a la meta sea la menor.
7strategias de b9s8ueda &eurstica
A sc en so d e c o li n a (Hill Climbing): elige en cada paso un estado cuyo valor heurstico sea
mayor que el del estado activo en ese momento.
B s q u e d a a v a ra : elige siempre el estado ms pometedor cuando se aplica una heurstica
h(n).
B s q u e d a A * : combina una funcin de costo uniforme g(n) con la heurstica h(n), para cada
nodo n, a travs de una suma [f(n) = g(n) + h(n) ]
En el caso de Hill Climbing existen algunos inconvenientes como: mximos locales, mesetas, picos.
Existe una mejora para el ascenso de colina conocida denominada E n fri a mi en to S im u lado , que permite
"saltar tales inconvenientes, pues involucra mecanismos de seleccin aleatoria de nuevos estados.
2222
7je"plo: considere el
siguiente mapa de
carreteras, con las
respectivas distancias en
lnea recta. El objetivo
es llegar a Bucarest,
partiendo desde Arad
Fig. 1.3 a4 Mapa de carreteras
Fig. 1.3 b4 5istancias en l2nea recta a %ucarest
En el siguiente grfico se muestra el rbol generado con la estrategia A*
2323
Fig. 1.6 !ecuencia de nodos abiertos con A7
+1= I"ple"entaciones en Lisp
Nota: Ver documento LispBasico.pdf y cargar el software libre Xanalys LispWorks
+1> 7jercicios
1) Diga si los siguientes "sistemas son agentes:
a. Un reloj.
b. Un termostato.
c. Un celular.
d. Un sistema de control de acceso a personas.
e. El sistema de aire acondicionado de un automvil.
f. Una lavadora automtica.
g. Un software para entrenar personas.
h. Un software para ensear a sumar.
i. Un reloj despertador.
j. El sistema que controla si una persona saca un producto sin pagar.
k. nternet.
l. La red telefnica
2) ndique el tipo de agente para cada caso:
- Agente resuelve laberintos.
- Agente que entrega la Raz Cuadrada de un nmero.
- Agente que conduce un automvil.
- Agente del mundo de los wumpus
- Agente que resuelve el problema de los bloques.
3) Cierto agente desea resolver el problema del mundo de la aspiradora. El mundo est conformado por
una cuadrcula de 2x2 (dos con basura).
2424
Disee un agente que usa una tabla de percepcin accin para resolver este problema.
El agente inicia en la parte superior izquierda.
El agente "recuerda las celdas ya visitas, pero no es capaz de ver las otras celdas.
Diga que acciones son necesarias para resolver el problema.
Diga cul es el tamao de la tabla percepcin accin
4) Disear un agente para resolver el problema del rompecabezas mvil o problema de las ocho fichas o
puzzle.
Estado inicial Estado final
5) Construir los rboles de bsqueda en profundidad y en anchura para el problema de los misioneros y
canbales.
2525
Captulo ,: Conoci"iento e in)erencia
Objetivo: Formalizar el conocimiento en los agentes de A, lo que permitir implementar mecanismos
de razonamiento y, por ende, ampliar sus capacidades para resolver problemas.
,1+ Conoci"iento 0 sus representaciones
Una representacin es un conjunto de convenciones sobre la forma de describir un tipo de cosas. Una
descripcin aprovecha las convenciones de una representacin para describir alguna cosa en particular.
Las caractersticas de una buena representacin son:
Los objetos y las relaciones importantes deben aparecer explcitamente y de forma
conjunta.
Las restricciones inherentes al problema se muestran pero no los detalles irrelevantes.
La representacin debe ser transparente: se entiende lo que se dice.
Completa y concisa: Estn representados con eficacia todos los objetos y relaciones.
Rpidos y computables: Se puede almacenar y recuperar la informacin con rapidez, y se
pueden crear mediante un procedimiento ya existente.
Partes de una representacin:
- Pa rte l x ic a : determina qu s"bolos estn permitidos en el vocabulario de la representacin.
- Pa rte e s tru ct u ra l: describe las restricciones sobre la forma en que los s"bolos pueden ordenarse.
- Pa rte o pe ra tiv a : especifica los procedi"ientos de acceso que permiten crear descripciones,
modificarlas y responder a preguntas utilizndolas.
- Pa rte s e m n tica que establece una forma de asociar el signi)icado con las descripciones.
Algunas formas para representar el conocimiento son:
Redes semnticas: representaciones grficas a manera de nodos y enlaces
Reglas de produccin: la forma F-THEN
Lgica funcional: utilizando las denominadas fbf (frmulas bien formadas)
7je"plo: se va representar el conocimiento "todos los hombres son mortales
hombre
es
mortal
Red semntica
F x es hombre THEN x es mortal Regla F-THEN
(Vx) (hombre(x) mortal(x)) Formalismo lgico
,1, Lgica propositiva 0 lgica del pri"er orden ?LPO)
El aspecto ms atractivo del formalismo lgico, como representacin del conocimiento, es que
proporciona un buen mtodo para la obtencin de nuevo conocimiento a partir del antiguo: la deduccin
matemtica (consecuencia lgica). Se puede concluir la verdad de una afirmacin slo demostrando
que es consecuencia de lo ya conocido.
Son parte de este formalismo la Lgica Proposicional y la Lgica del Pri"er Orden. En la primera, el
conocimiento est representado a manera de proposiciones (enunciados verdaderos o falsos); en la
segunda, el conocimiento viene a manera de predicados (funciones que pueden adoptar los valores V
F, dependiendo de sus argumentos).
7je"plo: el conocimiento anterior "todos los hombres son mortales, podramos sustituirle por el trmino
p (proposicin) al que le podemos hacer corresponder el valor de verdad V. Tambin podemos
representarlo en LPO como: (Vx) (hombre(x) mortal(x)); aqu toda la frmula adoptar un valor de
verdad dependiendo del argumento @.
Lenguaje proposicional
Recurdese que en la lgica proposicional, las proposiciones simples se combinan entre s (mediante
conectivos lgicos: and (>), or (V), not(), implicacin( ), doble implicacin(? )).
Es posible construir una tabla de la verdad mostrando las relaciones finales (semntica) entre
proposiciones simples, mediante el uso de las "tablas de verdad, como se muestra a continuacin:
P 8 A
p
p 8 p ( 8 p 8 p? 8
V V F V V V V
V F F F V F F
F V V F V V F
F F V F F V V
Lgica del Pri"er Orden
El lenguaje de la LPO est compuesto por los siguientes elementos:
1. Constantes: romeo, julieta, 3.14
2. Variables: X, Y, Ahora, Luego, Jacinto
3. Funciones: f(X), g(Y,Z) &&no de"uel"en 8 o F
4. Predicados: ama-a/2, mortal/1 &&,unciones que de"uel"en 8 o F
Son parte de la s in ta x is en la LPO:
Vocabulario: constantes , nombres de funciones , predicados, variables y constantes
Trmino se define as :
- Una constante o una variable es un trmino.
- Si t1.,.....tn son trminos y p es el nombre de una funcin n-aria entonces p
( t1 ,....., tn ) es un trmino.
Si t1,,.., tn son trminos y q es un predicado n-ario , entonces
q ( t1 ,....,tn) es un tomo.
Una frmula bien formada (fbf) se define a:
- Un tomo es una fbf
- Si P y Q representan fbf's, tambin lo son:
(VX) P; que se lee para todo 9 se cumple P
(@X) P; que se lee para alg$n 9 se cumple P
AP
P Q
P V Q
P Q
P? Q
7je"plos:
- "Todos los informticos son listos; Juan es informtico, por lo tanto Juan es listo.
- "Todos estn
casados con alguien
- "Algunas relaciones entre pares de alumnos de la clase son simtricas
Es una representacin en Lgica de Segundo Orden; por lo
tanto no pertenece a la
LPO, pues se estn cuantificando funciones predicables!!!
,1- In)erencia en LPO
La in fe ren c ia es un proceso que permite generar nuevo conocimiento en base a datos y declaraciones
establecidas. En el mbito lgico, permite generar conclusiones en base a un conjunto de axiomas y
hechos.
En LPO (y tambin en la proposicional) existe un mecanismo de inferencia llamado R e s o lu c i n , que es
una regla de inferencia usada en la deduccin computacional, debido a que es eficiente, pues trabaja
sobre sentencias que han sido transformadas a una forma cannica llamadas c lu s u la s d isy u n tiv as .
El proceso de resolucin obtiene demostraciones por refutacin, es decir, para probar una proposicin
(su validez) se intenta demostrar que su negacin lleva a una contradiccin con las proposiciones
conocidas (es decir es insatisfactible).
Donde:
A: conjunto de axiomas y hechos
B: cualquier proposicin
Algorit"o de conversin a clBusulas
Para poder realizar el proceso de demostracin por refutacin, las fbf deben estar reducidas a la forma
de clusulas. El proceso de transformacin se muestra en el siguiente ejemplo:
Ejemplo:
19
,1. 7l principio de 6esolucin
7n lgica proposicional
Sea la conclusin, el conjunto de los argumentos:
1. Convertir todas las proposiciones en

a su forma de clusulas
2. Negar y convertir el resultado en clusula. Agregar la o las clusulas resultantes al conjunto de
clusulas obtenidas en 1
3. Hasta encontrar una contradiccin o no se pueda seguir avanzando:
Seleccionar dos clusulas que tienen como literales una L y la otra L
Resolverlas juntas. El resolvente ser la disyuncin de todos los literales que contienen los
padres excepto L y L
Si el resolvente es la clusula vaca, es que se ha encontrado una contradiccin. Si no lo es
agregarla al conjunto de clusulas disponibles
7je"plo: considere los siguientes hechos
Juan est cansado o enfermo
Si Juan est cansado, se queda en casa
20
No se queda en casa
Luego est enfermo
Una representacin ser
Otra representacin en
La Uni)icacin
En Lgica Proposicional la con
Pero en Clculo de Predicados
Estudia(x) ^ Estudia(y)
contradiccin
P(a) y P(x) no son comparable
ambas frmulas idnticas. Este
conoce como unificacin.
Lo que se puede sustituir en u
trminos.
6esolventes
El proceso de demostracin
puedan unificar, tratando sie
seleccionadas se llaman padre
A continuacin se muestran al
ClBusulas Padres
Fig. ).1 :e;es lgicas
,1/ ClBusulas de #orn
Son clusulas que tienen como
Las clBusulas deter"
slo tienen un literal po
(p
1
p
2
... p
Caso particular son
decir, conocimiento
Los objetivos deter"
tienen ningn literal po
(p
1
p
2
... p
En este caso, las f
sean todas verdade
debe obtener media
,1= 7structura de una Base d
Prolog es la realizacin ms u
Prolog tiene menos que ver
programacin imperativa; y m
ocurren en el contexto de u
relaciones que conforman la
conocimiento a manera de clu
7je"plo: A continuacin se m
familia.
Fig. ).) 'elaciones de parentesco
% Hechos
progenitor(pam,bob).
progenitor(tom,bob).
progenitor(tom,liz).
progenitor(bob,ann).
progenitor(bob,pat).
progenitor(pat,jim).
%Regla (s)
%en la forma convencional sera:
%progenitor(X,Y) vastago(Y,X)
vastago(Y,X) :- progenitor(X,Y).
Fig. ).* E#emplo de una base de conocimientos en Prolog
Nota: para un mejor entendimiento ver el archivo Prolog.pdf e instalar la herramienta gratuita SW Prolog
,1> 7jercicios
1) Considere los siguientes hechos
o Marco era un hombre
o
Marco era pompeyano
o Todos los pompeyanos eran romanos
o Csar fue un gobernante
o
Todos los romanos o eran leales a Csar o lo odiaban
o Todo el mundo es leal a alguien
o La gente slo intenta a asesinar los gobernantes a los que no es leal
o Marco intent asesinar a Csar
3434
a) Representarlos en LPO
b) Reducirlos a la forma clausal
c) ntent Marco asesinar a Csar? (demostrarlo por Resolucin)
2) Construya una Base de Conocimientos en Prolog referida a las relaciones de
parentesco en una familia, con al menos 10 reglas. Haga las consultas respectivas
desde el prompt.
Captulo -: Procesa"iento de la Incertidu"bre
Objetivo: Explotar las tcnicas que permiten a los agentes de A solventar problemas bajo condiciones
de incertidumbre, para mejorar su desempeo.
-1+ Incertidu"bre: causas 0 las decisiones racionales
El modelo ideal del razonamiento (humano o mecnico) es el razonamiento exacto. Sin embargo, en el
mundo real se suele razonar con informacin que es incierta o imprecisa. Las fuentes de la incertidumbre
pueden tener algunos orgenes:
Deficiencias de la informacin
Caractersticas del mundo real
Deficiencias del modelo
7je"plos:
- nformacin incompleta: falta historial, falta memoria, pruebas caras
- nformacin errnea: descripcin incorrecta, historial incorrecto, falsos positivos, engao
- nformacin imprecisa: dificultad para cuantificar
- Mundo real no determinista: aleatoriedad, excepciones
- Modelo incompleto: enfermedades desconocidas, desacuerdos, imposibilidad
- Modelo inexacto: estimaciones subjetivas, problemas en mecanismos de razonamiento
Es clara la necesidad de contar con algunos modelos de razonamiento aproximado; de esta manera, los
agentes de A podrn reducir, lo que ms se pueda, la incertidumbre; y por ende, el proceso de decisin
ser ms racional. El tratamiento de la incertidumbre es, junto con la representacin del conocimiento y
el aprendizaje, uno de los problemas fundamentales de la nteligencia Artificial.
La incertidumbre ha sido abordada desde diversas pticas: teora de las probabilidades, factores de
certeza, lgica difusa, entre otras.
-1, 6edes Ba0esianas
Una red bayesiana est conformada por:
Un conjunto de nodos que representan variables o entidades del mundo real
Un conjunto de enlaces que representan relaciones de influencia causal entre los
nodos
Una serie de parB"etros (probabilidades condicionadas de cada nodo dados sus
padres) que cuantifican la relacin entre los nodos.
7je"plo:
La interpretacin de los parmetros sera:
Dada una red bayesiana, la distribucin de probabilidad conjunta puede expresarse como:
P(x
1
, ..., x
n
) = P(x
i
/pa(x
i
))
Propagacin en redes Ba0esianas
Los algoritmos de propagacin en redes bayesianas permiten hacer inferencias:
De tipo abductivo: dado que el alumno ha respondido a ciertas preguntas, cul es la
probabilidad de que conozca los conceptos?
De tipo predictivo: dado que el alumno conoce ciertos conceptos, cul es la
probabilidad de que responda correctamente a la pregunta?
Cuando un nodo (grupo de nodos) se instancia, la in)or"acin se propaga por la red de forma que se
calculan las probabilidades a posteriori de cada uno de los nodos dado el valor que haya tomado el
nodo (grupo de nodos) instanciado.
7je"plo: La red Asia
Fig. *.1 'ed ba;esiana para abduccin ; prediccin
-1- %actores de Certe;a
Es la forma ms comn de representar pesos heursticos, pues, utiliza tcnicas pseudo-probabilsticas
para manejar la incertidumbre. Los Factores de Certeza (FC) indican el grado de certeza en los que se
cree que cada regla o hecho es verdadero. Fueron aplicados en el sistema MYCN, que intentaba
recomendar terapias a pacientes con infecciones bacterianas.
Los FC se utilizan en los sistemas expertos, donde a cada regla se le asocia un valor de credibilidad a la
conclusin. Un factor de certeza se define en trminos de dos componentes:
MB [h, e]: es la medida (entre 0 y 1) de credibilidad en la hiptesis h dada la evidencia
e. Mide el grado en que la evidencia confirma la hiptesis.
MB = 1 si p(h) = 1
= ( p(h/e) -p(h) ) / (1 - p(h) ) en otro caso
MD [h, e]: es la medida (entre 0 y 1) de incredulidad de la hiptesis h dada la evidencia
e. Mide el grado en el que la evidencia confirma negativamente la hiptesis.
MD = 1 si p(h) = 0
= (p(h) - p(h/e) ) / p(h) en otro caso
Entonces factor de certeza se mide como:
FC(h,e) = ( MB - MD) / ( 1 - min(MB,MD) ) que cumple -1 > FC(H,E) > +1
Un FC positivo indica que la evidencia con)ir"a (total o parcialmente) la hiptesis ya que MB >
MD.
Un FC negativo significa que la evidencia descarta (total o parcialmente) la hiptesis, ya que
MB < MD.
Le0es de los %C
Sea la regla R : F e THEN h
Considere tambin que:
FC(h|e): factor de certeza de la regla
FC(e): factor de certeza de la premisa
Entonces
i) FC(h) = FC(e) * FC(h|e)
ii) FC(e) = mn( FC(e) de la premisas ) para el AC'
iii) FC(e) = mx( FC(e) de la premisas ) para el O6
iv) Combinacin de Reglas Convergentes
Sean FC(h|e1) y FC(h|e2), entonces se puede calcular FC(h|e1,e2) de la siguiente forma:
x+y-xy si x,y >
0 fcomb(x,y)= (x+y)/(1-min(|x|,|y|)) si xy
<= 0 x+y+xy si x,y <
0
donde x = FC(h|e1), y = FC(h|e2)
v) Encadenado de Reglas
Si A entonces B con FC(B|A)
Si B entonces C con FC(C|B)
-------------------------------------
Si A entonces C con FC(C|A)
Con: FC(C|A)= FC(C|B) FC(B|A) si FC(B|
A)>=0 0
cc.
FC(B|
A)<0
7je"plo: Dadas siguientes reglas, calcular el factor de certeza de la proposicin A^B^E F
-1. 6a;ona"iento con lgica di)usa
La lgica difusa (Fuzzy Logic) tiene sus races en la teora de conjuntos difusos desarrollada por Zadeh
en la dcada de los 60, y propone que, un ele"ento sie"pre pertenece en un cierto grado a un
conjunto, esto permite establecer una manera eficiente para trabajar con incertezas, as como para
acondicionar el conocimiento en forma de reglas hacia un plano cuantitativo, factible de ser procesado
por computadores. Toda lgica consiste en formalizar el pensamiento humano, desde este punto de
vista.
Un Conjunto 'i)uso A est formado por: Variable lingstica + funcion de pertenencia, como se
muestra a continuacin:
A = {x / A(x) x X}
X: representa el Universo del discurso
A(x): es la funcin de pertenencia; asocia a cada valor x un nmero en el intervalo (0,1)
La principal ventaja de esta lgica es que permite utilizar trminos lingsticos como: a "ediasD
bastante, casiD un pocoD "uc&oD algo, etc, posibilitando plantear el problema en los mismos trminos
en los que lo hara un experto humano. El esquema bsico de un sistema basado en lgica difusa se
muestra en la fig. 3.2:
Fig. *.) Esquema b(sico de un sistema con lgica di,usa
Una regla tpica en lgica difusa puede adoptar la forma: "Si x1 es A1 y x2 es A2 entonces z1 es Z,
donde A1, A2 y Z son conjuntos difusos. En un sistema de control difuso, la informacin de entrada tiene
que ser fuzzificada para poder aplicar las reglas difusas; la salida tendr que ser nuevamente
transformada a un valor no difuso (defuzzificacin) para que se operativo.
7je"plo: Se muestra a continuacin un ejemplo de la terminologa usada en lgica difusa, con las
respectivas funciones de pertenencia.
Fig. *.* 0on#untos di,usos con sus respecti"as ,unciones de pertenencia
En el siguiente esquema se muestra un ejemplo de una base de conocimientos, implementada con
reglas difusas:
Fig. *.- 0on#unto de reglas di,usas
Fig. *./ E,ectos de las regla di,usas en la salida <propina4
-1/ 7jercicios
+) Sea el siguiente conjunto de reglas de produccin, que utilizan como medida de certeza los factores
de certeza:
R1: if a then d 0.3
R2: if a then e 0.5
R3: if b then f 0.8
R4: if c then g 1
R5: if f and g then e 1
R6: if d then h 1
R7: if e then h 0.3
R8: if i then f 0.7
Se pide:
a) Dibujar la red de inferencia definida implcitamente por el conjunto de reglas.
b) Determinar el factor de certeza de h, conocidos los siguientes factores de certeza: a1, b1,c0.6, i
- 0.2.
,) Supongamos que tenemos un termostato con el que queremos regular la temperatura de una
habitacin mediante un dispositivo que puede enfriar o calentar segn sea la temperatura que haya en
la habitacin. El objetivo es que la temperatura de la habitacin siempre se mantenga en un intervalo de
[+18,22]. Se pide:
a) Definir el universo del discurso, las variables lingsticas, las posibles particiones y sus posibles
etiquetas para describirlos.
4141
b) Construir los conjuntos difusos necesarios para representar los tres posibles estados, diciendo qu
valores comprende y proponiendo grficamente una funcin de pertenencia acorde a cada uno de los
estados.
c) Si el valor de verdad de la proposicin "la habitacin est caliente es de 0.3, y el valor de verdad de
la proposicin "la habitacin est fra es de 0.82, cul es el valor de verdad de la proposicin "La
habitacin est caliente o fra, utilizando la funcin de verdad estndar en lgica difusa?
4242
Captulo .: Aprendi;aje auto"Btico
Objetivo: Entender las estrategias de aprendizaje que se puedan implementar en los agentes de A,
posibilitando su adaptabilidad al entorno y, por ende, su autonoma.
.1+ Categoras de los aprendi;ajes
El Aprendi;aje auto"Btico o Aprendi;aje de EB8uina es una rama de la nteligencia Artificial cuyo
objetivo es desarrollar tcnicas que permitan a las computadoras aprender (definicin tomada de
Wikipedia). De forma ms concreta, se trata de crear programas capaces de generalizar comportamientos
a partir de una informacin no estructurada suministrada en forma de ejemplos. Es, por lo tanto, un
proceso de induccin del conocimiento.
En muchas ocasiones el campo del Aprendizaje Automtico se solapa con el de la Estadstica, ya que
las dos disciplinas se basan en el anlisis de datos. Sin embargo, el Aprendizaje Automtico se centra
ms en el estudio de la Complejidad Computacional de los problemas. Muchos problemas son de clase
NP-duros, por lo que gran parte de la investigacin realizada en Aprendizaje Automtico est enfocada
al diseo de soluciones factibles a esos problemas.
Se han propuestos los siguientes tipos de aprendizaje:
- Supervisado: Existe una entidad externa al agente que establece una correspondencia
entre las entradas y las salidas deseadas del sistema. Un ejemplo de este tipo de
algoritmo es el problema de clasificacin, donde el sistema de aprendizaje trata de
etiquetar (clasificar) una serie de vectores utilizando una entre varias categoras
(clases). La base de conocimiento del sistema est formada por ejemplos de
etiquetados anteriores.
- Co supervisado: Todo el proceso de modelado se lleva a cabo sobre un conjunto de
ejemplos formado tan slo por entradas al sistema. No se tiene informacin sobre las
categoras de esos ejemplos.
- Por re)uer;o: El algoritmo aprende observando el mundo que le rodea, en base a
premios y/o castigos. Su informacin de entrada es el feedbac! o re troa lime n ta c i n que
obtiene del mundo exterior como respuesta a sus acciones.
A continuacin discutiremos algunas tcnicas de aprendizaje automtico, de tipo supervisado
.1, Aprendi;aje "ediante anBlisis de di)erencias
Recibe incrementalmente ejemplos y contraejemplos de un concepto y genera una de sc rip c i n e st ru ct u ra l
de dicho concepto que debe cubrir todos los ejemplos positivos y ninguno de los negativos. Esta
descripcin debera servir para clasificar correctamente los casos futuros. Es de tipo supervisado y
sensible al orden de los ejemplos; adems realiza un recorrido primero en profundidad en el espacio de
posibles descripciones de conceptos.
7je"plo: Un agente va aprender el concepto "arco, para lo cual, se le muestran los siguientes
ejemplos de entrenamiento:
4343
Fig. -.1 :a idea es que, nuestro agente, mediante los e#emplos positi"os <=4 pueda generalizar el
concepto1 los e#emplos negati"os <-4 sir"en para especi,icar el concepto a aprenderse.
Las relaciones relevantes se
representan con redes semnticas:
Fig. -.) 'ed sem(ntica para el concepto arco
Luego, la secuencia de aprendizaje sera:
Paso +: anlisis de la instancia A1 (ejemplo positivo de arco)
tiene_parte(A1, B1) & tiene_parte(A1, C1) & tiene_parte(A1, D1) & apoyado_en(C1, B1) &
apoyado_en(C1, D1) & es_un(B1, ladrillo) & es_un(C1, ladrillo) & es_un(D1, ladrillo) & no_union(B1, D1)
Paso ,: anlisis de la instancia A2 (ejemplo positivo de arco)
tiene_parte(A2, B2) & tiene_parte(A2, C2) & tiene_parte(A2, D2) & apoyado_en(C2, B2) &
apoyado_en(C2, D2) & es_un(B2, ladrillo) & es_un(C2, cilindro) & es_un(D2, ladrillo) & no_union(B2,
D2)
Luego, la descripcin se generaliza para incluir a ambas instancias
tiene_parte(A, B) & tiene_parte(A, C) & tiene_parte(A, D) & apoyado_en(C, B) & apoyado_en(C, D) &
es_un(B, ladrillo) & es_un(C,objeto) & es_un(D, ladrillo) & no_union(B, D)
Paso -: se considera la instancia S1 (semejante, ejemplo negativo)
tiene_parte(S1, T1) & tiene_parte(S1, U1) & tiene_parte(S1,V1) & apoyado_en(U1, T1) &
apoyado_en(U1,V1) & es_un(T1,ladrillo) & es_un(U1, ladrillo) & es_un(V1, ladrillo)
La definicin del concepto debe modificarse para que el semejante sea excluido. La descripcin queda
de la siguiente manera:
tiene_parte(A, B) & tiene_parte(A, C) & tiene_parte(A, D) & apoyado_en(C, B) & apoyado_en(C,D) &
4444
es_un(B, ladrillo) & es_un(C2, objeto) & es_un(D, ladrillo) & no_debe_union(B, D)
4545
Para llevar a efecto el aprendizaje por anlisis de diferencias, se utilizan algunas &eursticas (de
generalizacin y de especializacin) :
- Enlace necesario
- Prohibicin de enlace
- Ascenso de rbol
- ntervalo cerrado
- Ampliacin de conjunto
- Eliminacin de enlace
.1- Aprendi;aje "ediante el "anejo de varios "odelos ?espacio de versiones)
Como en el esquema anterior, el objetivo es producir una descripcin de un concepto a partir de un
entrenamiento con ejemplos positivos y negativos, pero no se ve afectado por el orden en que se
presentan los ejemplos. Adems, se va manteniendo un conjunto de descripciones posibles hasta llegar
a la definicin del mismo.
El objetivo es producir una descripcin que sea consistente con todos los ejemplos de entrenamiento
positivos y que no lo sea con los ejemplos de entrenamiento negativos. Dado que existen descripciones
ms generales que otras se puede establecer un orden parcial entre ellas. La jerarqua completa
constituye el espacio de descripciones de conceptos.
La idea fundamental es ir configurando un conjunto de modelos compatibles con los ejemplos positivos,
a partir de dos modelos bsicos:
(?,?,?,.,?) "odelo "Bs general, compatible con todos los ejemplos (+ y -)
(0,0,0,.,0) "odelo "Bs espec)icoD incompatible con todos los ejemplos (+ y -)
El modelo ms general se ir especializando con los ejemplos negativos; el modelo ms especfico se
ir generalizando con los ejemplos positivos, hasta encontrar una convergencia de modelos.
7je"plo: considere el siguiente ejemplo en donde se muestran algunas situaciones en las que una
persona disfruta o no disfruta de un deporte
Una vez procesado cada ejemplo, el espacio de versiones resultante ser:
4646
Fig. -.* :a ,lec.a representa relaciones de eneralizacin entre modelos
.1. Aprendi;aje "ediante construccin de Brboles de identi)icacin
Un rbol de identificacin es una representacin que permite establecer cada conjunto de posibles
conclusiones implcitas, mediante una lista de muestras de una clase conocida; por ende, permitir
clasificar los futuros casos no vistos. Permite aprender varios conceptos simultneamente (no slo un
concepto y su negacin) y trabaja sobre la totalidad del conjunto inicial de ejemplos.
Un agente basado en esta tcnica, tendr como objetivo construir el rbol de decisin ms simple para
clasificar los ejemplos de entrenamiento.
Para construir un rbol de identificacin es necesario colocar en su raz, el atributo que tiene la "enor
entropa (menor desorden) con respecto a los ejemplos de entrenamiento, e ir descendiendo por dicho
rbol hasta tener plenamente identificados a cada ejemplo (entropa cero).
7je"plo: La
siguiente
tabla
muestra
diferentes
situaciones
de riesgo de
inundacin:
4747
Fig. -.- !ituaciones de riesgo de inundacin
El rbol generado, que identifica plenamente a cada ejemplo, sera:
4848
Fig. -./ +rbol de identi,icacin para el problema de las inundaciones
.1/ Clustering
El anlisis de clsters o clustering, es una coleccin de mtodos estadsticos que permiten agrupar
casos sobre los cuales se miden diferentes variables o caractersticas. Uno de los problemas del anlisis
de clster es que no existe una definicin precisa de clster, lo cual ha originado el desarrollo de una
gran cantidad de mtodos, es as que, los dos grandes grupos de mtodos de clustering son: los
jerrquicos y los no jerrquicos o particionales.
En los primeros la pertenencia a un grupo o clster en un nivel de la jerarqua condiciona la pertenencia
a grupos de un nivel superior. Los mtodos particionales obtienen una nica particin de los datos
mediante la optimizacin de alguna funcin adecuada.
Los mtodos particionales utilizan la matriz de datos mientras que los jerrquicos parten de una matriz
de distancias o similaridades.
Fig. -.3 :a idea del clustering es di"idir un con#unto de datos en grupos mutuamente exclu;entes
de tal manera que cada miembro de un grupo est lo m(s cercano posible a otro, ; grupos
di,erentes estn lo m(s le#os posible uno del otro, donde la distancia est( medida con respecto a
todas las "ariables disponibles.
7l algorit"o F-"eans
4949
Tambin conocido como terative Distance-based Clustering necesita que se le proporcione a priori el
nmero de grupos k. Los pasos de este algoritmo son:
1) seleccionar al azar k ejemplos como centros iniciales de cada grupo;
2) repeat
- asignar cada ejemplo al grupo con menor distancia a su centro;
- recalcular los nuevos centros de cada grupo;
until ?los grupos sean estables)
Los centros de cada grupo, tambin denominados centroides pueden corresponderse con ejemplos o
no; en ese caso se les denomina prototipos. Los grupos se consideran estables cuando los ejemplos no
cambian de grupo respecto la iteracin anterior.
Aplicaciones
En n v e st ig a c ione s E s p a c ial e s : Durante seis aos, el Second Palomar Observatory Sky Survey (POSS-
) coleccion tres terabytes de imgenes que contenan aproximadamente dos millones de objetos en el
cielo. Tres mil fotografas fueron digitalizadas a una resolucin de 16 bits por pxel con 23.040 x 23.040
pxeles por imagen. El objetivo era formar un catlogo de todos esos objetos. El sistema Sky mage
Cataloguing and Analysis Tool (SKYCAT) se basa en tcnicas de agrupacin (clustering) y rboles de
decisin para poder clasificar los objetos en estrellas, planetas, sistemas, galaxias, etc. con una alta
confiabilidad. Los resultados han ayudado a los astrnomos a descubrir diecisis nuevos qusars, con
corrimiento hacia el rojo, que los incluye entre los objetos ms lejanos del universo y, por consiguiente,
ms antiguos. Estos qusars son difciles de encontrar y permiten saber ms acerca de los orgenes del
universo.
.1= Aprendi;ajes alternativos
Simon (1983), define el aprendizaje como los cambios que se producen en el sistema, de manera que
permiten llevar a cabo la misma tarea de un modo ms eficiente y eficaz.
En la prctica, el aprendizaje se usa para resolver problemas y puede representar la diferencia entre la
resolucin rpida y la imposibilidad de resolverlo. La idea de poder aprender de la propia experiencia en
la resolucin de problemas nos lleva a esperar obtener mejores soluciones en un futuro.
El aprendizaje est relacionado con el conocimiento. Puede definirse como el proceso mediante el cual
un ente adquiere conocimiento. Este conocimiento puede ser suministrado por otro ente denominado
profesor o puede adquirirse sin la ayuda del mismo.
Podemos referenciar otras formas de aprendizaje, entre las cuales se destacan:
- Aprendizaje m e m o rst ic o : es la actividad de aprendizaje ms bsica y rudimentaria;
consiste en el simple almacenamiento de la informacin computada. Este proceso al
cual muchos no llamaran aprendizaje, puede considerarse como tal desde el punto de
vista que puede mejorar el rendimiento de un programa existente.
- Aprendizaje a tra v s d e c on s e jo s : stos son suministrados por una persona en un
lenguaje de alto nivel, por ej. lucha por controlar el centro del tablero de ajedrez. El
programa es capaz de traducir el consejo en un lenguaje ms operativo y usarlo para
5050
modificar su comportamiento, por ej., ajuste de la funcin de evaluacin para introducir
factor basado en el nmero de cuadros del centro ocupados por piezas de un color.
- Aprendizaje mediante e x p e ri en c ia e n la re s o lu c i n d e p ro b le m a s : un agente puede
mejorar (sin ayuda externa) a travs de la generalizacin de sus propias experiencias.
Por ejemplo, Samuel (1963), en su juego de damas, usa una funcin de evaluacin f =
c1 * p1 + ... + c16 * p16, con 16 caractersticas que contribuyen a la evaluacin, y 16
pesos que van actualizndose automticamente conforme el agente experimenta
nuevos juegos.
- Aprendizaje ba s ad o e n e x pli c a c iones : a veces se aprende mejor a partir de una nica
experiencia en lugar de miles de ejemplos positivos y negativos. El uso de conocimiento
especfico permite identificar los aspectos crticos del ejemplo de entrenamiento. Este
enfoque se denomina aprendizaje basado en explicaciones (explanation-based learning
EBL).
- D e sc ub rimi en to : a veces, no existe un maestro que posean el conocimiento que busca
el agente. El descubrimiento es una forma de aprendizaje, en la que, un agente
adquiere conocimiento sin la ayuda de un profesor. En esta categora podemos ubicar:
descubrimiento conducido por teoras, conducido por datos, y clustering.
- Ana lo g a : la analoga es una correspondencia entre conceptos aparentemente
diferentes; es una herramienta de inferencia utilizada naturalmente en nuestro lenguaje
y razonamiento. Por ejemplo, si tomamos la frase: "el mes pasado la bolsa era como
una montaa rusa, por analoga podemos entender que la bolsa sufri grandes
fluctuaciones. La analoga puede ser transformacional o deri"acional.
.1> 7jercicios
1) Proponga un modelo de aprendizaje a travs del anlisis de diferencias, de tal manera que:
a) Se plantee el objetivo del aprendizaje con cada ejemplo
b) Se utilicen las seis heursticas de esta tcnica
2) Construya una tabla de datos con al menos 5 atributos, en donde se muestre, situaciones en las
que Ud. ha faltado a sus clases regulares en la universidad. Con tales informaciones, genere un
rbol de identificacin que muestre las respectivas conclusiones implcitas.
3) Profundice ms acerca de las tcnicas alternativas de aprendizaje (tem 4.6) y construya una
tabla comparativa que permita establecer criterios de seleccin de una tcnica u otra.
5151
Captulo /: 6edes Ceuronales 0 Co"putacin 7volutiva
Objetivo: Analizar la estructura y funcionamiento de paradigmas computacionales inspirados en la
biologa, como son: las redes neuronales artificiales y la computacin evolutiva, para solventar
problemas de bsqueda y aprendizaje.
/1+ Analoga entre redes neuronales biolgicas 0 arti)iciales
Aunque todava se ignora mucho sobre la forma en que el cerebro aprende a procesar la informacin, se
han desarrollado modelos que tratan de mimetizar tales habilidades; denominados redes neuronales
artificiales modelos de computacin conexionista (otras denominaciones son computacin neuronal y
procesamiento distribuido paralelo o P.D.P.). La elaboracin de estos modelos supone en primer lugar la
deduccin de los rasgos o caractersticas esenciales de las neuronas y sus conexiones, y en segundo
lugar, la implementacin del modelo en una computadora de forma que se pueda simular.
Una neurona tpica (fig. 5.1) recoge seales procedentes de otras neuronas a travs de una plyade de
delicadas estructuras llamadas dendritas. La neurona emite impulsos de actividad elctrica a lo largo de
una fibra larga y delgada denominada axn, que se escinde en millares de ramificaciones. Neurona y
conexiones sinpticas
Fig. /.1 Esquema b(sico de una neurona natural
Las extremidades de estas ramificaciones llegan hasta las dendritas de otras neuronas y establecen
unas conexiones llamadas sinBpsis, en las cuales se produce una transformacin del impulso elctrico
en un mensaje neuroqumico, mediante la liberacin de unas sustancias llamadas neurotransmisores.
Las neuronas arti)iciales se modelan mediante unidades de proceso. Cada unidad de proceso se
compone de una red de conexiones de entrada, una funcin de red (de propagacin), encargada de
computar la entrada total combinada de todas las conexiones, un ncleo central de proceso, encargado
de aplicar la funcin de activacin, y la salida, por dnde se transmite el valor de activacin a otras
unidades.
5252
Fig. /.) Esquema b(sico de una neurona arti,icial
/1, Clasi)icacin de las 6C
En el siguiente grfico (fig. 5.3) se muestra una clasificacin de las RN, tomando en consideracin el
tipo de conectividad entre sus elementos (neuronas individuales).
Fig. /.* 0ategor2as para '>
Las RN feed forward (en cascada) se caracterizan porque las conexiones se dirigen siempre en
direccin de las neuronas de la capa de salida; en cambio en las RN feedback, se pueden detectar
conexiones de ida y retorno entre capas de neuronas.
/1- 6edes en cascada 0 retropropagacin
Fig. /.- ?na '> en cascada de tres capas
5353
En una RN encontramos tres ti
- Funcin de R
de todas las e
se utiliza la fu
- Funcin de A
tipo lineal, u
implementacio
- Funcin de Sa
utilizar la funci
BacFpropagation
En las redes feed forward se
alguna tarea especfica (apre
apreciacin de la red, a travs
tal minimizacin. Se llama re
salida hacia la capa de entrada
En trminos sencillos, el algori
1.- Tomar un parmetro de rap
2.- nicializar los pesos
3.- Mientras la red no tenga un
Por cada muestra de e
a.- Calcular la salida re
b.- Para los nodos de l
c.- Para los dems nod
d.- Calcular los cambio
e.- Acumular los camb
Cambiar los pesos con
/1. Eodelos de redes recurre
Se caracterizan porque puede
podemos tener diversas forma
Fig. /./ 0onexiones recurrentes@ una neurona con ella misma, entre neuronas de una misma
capa, entre neuronas de una capa con otra capa anterior.
Al permitir conexiones recurrentes au"enta el nmero de pesos o de parB"etros ajustables de la red;
aumenta la capacidad de representacin. Por otro lado, se complica el aprendizaje, pues, las activaciones
no dependen slo de las activaciones de la capa anterior sino tambin de la activacin de cualquier otra
neurona conectada a ella, e incluso de su propia activacin.
En estas redes es necesario incluir la variable tiempo:
La variable tiempo hace que las redes tengan un
comportamiento dinmico o temporal. Existen dos
formas de entender el modo de actuacin y
aprendizaje:
Evolucin de las activaciones de la red hasta alcanzar un punto estable
Evolucin de las activaciones de la red en modo continuo
6ed de #op)ield
Modelo de memoria asociativa, capaz de recuperar patrones almacenados a partir de informacin
incompleta e incluso a partir de patrones con ruido.
Acta como memoria asociativa procesando patrones estticos (sin variable tiempo)
Todas las neuronas estn conectadas con todas las dems
5555
Fig. /.3 5os ,ormas de
"er una misma red de
Aop,ield
5656
Algunas caractersticas de la red de Hopfield son:
- Matriz de pesos W=(wij), orden n x n.
- wij; peso de la conexin de neurona i a neurona j
- Matriz simtrica: wij=wji
- Los elementos de la diagonal son nulos (no existen conexiones reflexivas)
- Las neuronas poseen dos estados -1 y 1
- Estado de la neurona i en t#1:
La red de Hopfield tiene Dos fases de operacin
%ase de al"acena"iento: se determinan los valores que tendrn los pesos para almacenar un
conjunto de patrones.
%ase de recuperacin: mecanismo para recuperar la informacin almacenada a partir de informacin
incompleta.
/1/ Co"putacin 7volutiva: Breas de estudio
Es un rea de los algoritmos bio-inspirados que comprende: programacin gentica y los algoritmos
genticos. Est fundamentada en la aplicacin de las leyes de evolucin de las especies (Charles
Darwin) para la implementacin de algoritmos de bsqueda y aprendizaje.
Progra"acin Gen4tica
Consiste en la evolucin automtica de programas usando ideas basadas en la seleccin natural. No
slo se utiliza para generar programas, sino que cualquier otro tipo de soluciones cuya estructura sea
similar a la de un programa, por ejemplo, frmulas matemticas, circuitos electrnicos.
La evolucin se produce en la naturaleza gracias a que:
Existe reproduccin entre individuos de una poblacin.
Las caractersticas de los individuos afectan su probabilidad de supervivencia.
Existe herencia.
Existen recursos finitos, que ocasionan competencia.
En programacin gentica se busca que p ob la c ion e s d e p rog ra m a s evolucionen, transmitiendo su
herencia de manera que se adapten mejor al medio. Los mejores individuos tienen mayores
probabilidades de reproducirse. Por lo tanto se requiere cuantificar la calidad de cada individuo I; para
5757
esto, es necesario definir una funcin de desempeo )itness?I), misma que califica los atributos
relevantes de los individuos.
Un algorit"o de progra"acin gen4tica sigue el siguiente esquema:
1. Genera una poblacin inicial.
2. Mientras no se cumple el criterio de terminacin:
a) Seleccionar individuos (para reproduccin y eliminacin), considerando su calidad.
b) Combinar y/o variar individuos nuevos.
c) Agregar y eliminar individuos.
En programacin gentica, los programas (o individuos) se representan como rboles. Es as como el
segmento de cdigo:
while (a<10) {
print(a);
a++;
}
Puede representarse por el rbol:
Lo s e le m en to s q u e c o n fig u ra n u n in d iv idu o son:
terminales y funciones.
- El conjunto de terminales (T) est
compuesto por las entradas posibles al
individuo:
constantes y funciones de aridad 0.
- El conjunto de funciones (F) est
compuesto por los operadores,
sentencias y funciones que pueden componer a un individuo. Ejemplos:
Funciones booleanas: AND, OR, NOT, XOR. Funciones
aritmticas: PLUS, MNUS, MULT, DV. Sentencias
condicionales: F, THEN, ELSE, CASE, SWTCH Sentencias
para iteraciones: WHLE, FOR, REPEAT, UNTL
Pob la cin in icia l
Usualmente, se utilizan dos mtodos para generar esta poblacin: grow y el full.
5858
Grow
Se elige aleatoriamente un elemento de F para que conforme la raz del rbol. El contenido de los nodos
hijos de la raz se elige desde F U T. Si el valor elegido es una funcin, se repite este procedimiento con
los hijos. (si el valor elegido es una constante, se termina esa rama del rbol.)
Full
El mtodo full hace crecer el rbol en forma similar al mtodo grow, pero siempre se eligen elementos
del conjunto de funciones, a menos que el nodo est a profundidad mxima, en cuyo caso slo se eligen
elementos de T. El resultado de este mtodo son siempre rboles balanceados de profundidad mxima.
Si se usa el nmero de nodos como lmite de tamao, el crecimiento se termina cuando el tamao del
rbol ha alcanzado el lmite.
Ope ra do re s ge n tico s
Para generar nuevos individuos desde una cualquier poblacin, se suelen utilizar los siguientes
operadores genticos:
- Cruce (crossover)
- Mutacin
- Reproduccin
En la figura 5.7 se aprecia la aplicacin del operador gentico crossover para la generacin de dos
vstagos. Note los puntos de corte en los padres.
Fig. /.6 ?n e#emplo de crosso"er con dos indi"iduos padres.
5959
Algorit"os Gen4ticos ?AG)
Un AG es una tcnica de programacin que imita a la evolucin biolgica como estrategia para resolver
problemas. Dado un problema especfico a resolver, la entrada del AG es un conjunto de soluciones
potenciales a ese problema (individuos candidatos), codificadas de alguna manera, y una mtrica
llamada funcin de aptitud (fitness) que permite evaluar cuantitativamente a cada individuo. Estos
candidatos pueden ser soluciones que ya se sabe que funcionan, con el objetivo de que el AG las
mejore, pero se suelen generar aleatoriamente.
La mayor ventaja de los algoritmos genticos es que son intrnsecamente paralelos. La mayora de los
otros algoritmos son en serie y slo pueden explorar el espacio de soluciones hacia una solucin en una
direccin al mismo tiempo, y si la solucin que descubren resulta subptima, no se puede hacer otra
cosa que abandonar todo el trabajo hecho y empezar de nuevo. Sin embargo, ya que los AG tienen
descendencia mltiple, pueden explorar el espacio de soluciones en mltiples direcciones a la vez
M todo s d e rep re sen ta ci n
Antes de que un algoritmo gentico pueda ponerse a trabajar en un problema, se necesita un mtodo
para codificar las soluciones potenciales del problema de forma que una computadora pueda procesarlas.
Un enfoque comn es codificar las soluciones como cadenas binarias: secuencias de 1s y
0s, donde el dgito de cada posicin representa el valor de algn aspecto de la solucin. Otro mtodo
similar consiste en codificar las soluciones como cadenas de enteros o nmeros decimales, donde cada
posicin, de nuevo, representa algn aspecto particular de la solucin. Este mtodo permite una mayor
precisin y complejidad que el mtodo comparativamente restringido de utilizar slo nmeros binarios, y
a menudo ``est intuitivamente ms cerca del espacio de problemas''.
7je"plo ?agente viajero): Una persona debe recorrer varias ciudades distintas, con la condicin de que
debe pasar solamente una vez por cada una de ellas y volver a la ciudad de origen, recorriendo la
menor distancia posible. En este caso se han considerado 4 ciudades.
Podramos adoptar la siguiente representacin binaria de un individuo:
bit 6 bit 5 bit 4 bit 3 bit 2 bit 1
AB BC CD DA AC BD
Cada bit puesto a 1 indicar que el tramo respectivo est activo
6060
Para cumplir con los requerimientos del problema, ser necesario definir dos funciones de desempeo:
una evaluar la calidad de los individuos en trminos de las ciudades visitadas, y la otra medir la
calidad en trminos de la menor distancia recorrida. Por lo tanto la evaluacin final deber cuantificar la
visita exclusivamente a 4 ciudades con el menor recorrido, as:
A continuacin se muestran los desempeos de 6 individuos tomados al azar:
Donde:
- Fitness(w): valor devuelto por la funcin de aptitud al aplicar sobre ella el individuo w
- FitTOT: es la aptitud total de la poblacin actual
- Aptitud(w): aptitud del individuo w respecto del resto de individuos
Aptitud(w3) = Fitness(w3)/FitTOT
/1= 7jercicios
1) Se tiene un tablero de ajedrez, donde se ubican 8 reinas, el objetivo es colocarlas tal que ellas
no se ataquen unas a otras.
a) Dar una representacin gentica de los individuos
b) Escriba una funcin de aptitud
c) Probar la funcin de aptitud con 3 individuos
2) Defina una topologa de red neuronal, con los respectivos ejemplos de entrenamiento, para que
esta red aprenda a identificar mamferos, reptiles y aves. mplemente su propuesta en Matlab.
3) Un motor elctrico puede girar en ambos sentidos por medio de dos contactores: "D para el giro
a la derecha e " para el giro a la izquierda. Estos dos contactores son comandados por dos
pulsadores de giro "d (derecha) e "i (izquierda) y un interruptor de seleccin "L de acuerdo con
las siguientes condiciones:
- Si slo se pulsa uno de los botones de giro, el motor gira en el sentido correspondiente.
- Si se pulsan los dos botones de giro simultneamente, el sentido de giro depende del
estado del interruptor "L de forma que:
6161
* Si "L est activado, el motor gira a la derecha.
* Si "L est en reposo , el motor gira a la izquierda
a) Enuncie las entradas y salidas.
b) Disee la red neuronal que soluciona el problema.
c) Qu funcin de activacin se utiliza?. Justifique su respuesta
6262

Vous aimerez peut-être aussi