Escolar Documentos
Profissional Documentos
Cultura Documentos
UNIVERSIDAD SALESIANA
DE BOLIVIA
INGENIERIA DE SISTEMA
DOSSIER
MATERIA :INTELIGENCIA ARTICIAL I
PARALELO :C1
DOCENTES : Lic. ADRIAN QUISBERT VILELA
Inteligencia Artificial I Pagina 3
INDICE
INDICE.................................................................................................................................. 3
PRESENTACIN
El objetivo del presente dossier es desarrollar un recurso pedaggico que permita recuperar la
memoria educativa durante el proceso de enseanza aprendizaje para apoyar el logro de los
resultados esperados en la materia de Inteligencia artificial I, como as de la Universidad Salesiana
Inteligencia Artificial I Pagina 6
1.1.-Que es la inteligencia?
La inteligencia por otra parte esta relacionada con la habilidad para reconocer patrones,
deducir conclusiones razonables, analizar sistemas complejos como elementos simples y
resolver sus contradicciones, y aun es mucho ms que todo lo mencionado. La inteligencia
esta en un nivel mayor que la informacin y el conocimiento pero debajo de la sabidura.
SABIDURIA
INTELIGENCIA
I N F O R M A C I O N
Una de la formas mas aceptadas para explicar la inteligencia desde el punto de vista
computacional, constituye la prueba de Alan Turing elaborado en 1950. La idea de la
prueba de Turing es que si el interrogador decide errneamente que una maquina es una
persona, entonces se dice que dicha maquina exhibe inteligencia.
1.3. Aprendizaje.
Cambio adaptativo que permite, al repetir una tarea sobre la misma poblacin, realizarla
mas efectivamente. Cuando una persona realiza la misma tarea, una y otra vez. Sin
realizarla de una manera mas efectiva, decimos que esa persona no aprendido, al menos
en relacin a esa tarea.
Es obvio que la inteligencia es de por si un concepto bastante difcil de definir. Es por esta
razn definir una inteligencia artificial complicada.
La Inteligencia Artificial es el estudio de cmo hacer que los ordenadores hagan cosas que
por el momento, los seres humanos hacemos mejor. Elaine Rich.
expresan como programas que capacitan a las mquinas para hacer cosas que requeriran
inteligencia si las hiciesen las personas. Margaret Boden.
Estudia como lograr que las mquinas realicen tareas que, por el momento, son realizadas
mejor por los seres humanos.
De la filosofa durante mas de 2000 aos han surgido diversas teoras del
razonamiento y aprendizaje , y la idea de que la mente se reduce al funcionamiento
de un sistema fsico.
Ejercicio 1.1.
DETERMINANTE Qu es?
Categora ms
general que la
contiene
Marco Conceptual
ATRIBUTOS Cmo es?
Cualidades
Caractersticas
Atributos
Qu lo hace ser lo
que es y no otra
cosa
Como puedes observar aunque sepamos que somo inteligentes, definir el concepto con
precisin no es tan trivial.
1.5 Qu es la IA?
Para clasificar una mquina como pensante, se necesita definir inteligencia y sta no es
una definicin trivial (como te habrs dado cuenta en el ejercicio anterior); por ejemplo,
Cul es el grado de inteligencia necesario para resolver problemas complejos, o para
hacer generalizaciones y relaciones? y Qu grado de inteligencia es necesario para
comprender el lenguaje o percibir el mundo? Quiz hasta ahora la nica prueba que
tenemos para clasificar una mquina como pensante es la propuesta por el cientfico
britnico Alan Turing. Turing estableci que una computadora podra llamarse inteligente si
pudiera hacer creer a un humano que (la computadora) era un humano [1 Russell].
Inteligencia Artificial I Pagina 10
Tarea 1.1.
La IA siempre ha sido pionera en las ciencias computacionales. Los lenguajes de alto nivel,
las interfaces hombre-mquina y los procesadores de palabras deben su existencia a las
investigaciones en inteligencia artificial. Generalmente, las teorias que surgen en la IA
establecen la tendencia en el futuro de la computacin.
Tarea 1.2
Ejercicio 1.2.
1.7 Historia de la IA
Fecha Acontecimiento
Aristteles inventa los silogismos lgicos, como el primer sistema formal de
5 A.C.
razonamiento deductivo.
Gutemberg inventa la imprenta, como un sistema de impresin movible
S 15 dc
Aparecen los primeros mecanismos para medir el tiempo, los relojes.
S 15-16
Los relojeros crean mecanismos que imitan movimientos animales
S 16
Descartes propone que los cuerpos de animales no son nada mas que
S 17
mquinas complejas.
Pascal inventa el primer mecanismo de clculo digital
Leibniz mejora la maquina de pascal para realizar multiplicaciones y
divisiones.
Surgen muchos juguetes mecanicos y mecanismos para jugar ajedrez
S 18
Mary Shelley publica la historia de Frankistein en 1818.
S 19
Bool desarrolla el algebra binaria o Booleana.
Charles Babbage & Ada Byron trabajan en la realizacin de mquinas de
clculo programables.
S 20 Bertrand Russell and Alfred North Whitehead publican su Principia
primera Mathematica que revolucion la lgica.
mitad Warren McCulloch & Walter Pitts publiscan A Logical Calculus of the Ideas
Immanent in Nervous Activity" (1943), que sent las bases de las redes
neuronales.
Inteligencia Artificial I Pagina 13
Fecha Acontecimiento
Arturo Rosenblueth, Norbert Wiener & Julian Bigelow, acuan el Trmino
S 20
Cibernetica en una publicacin en 1943.
pri
A.M. Turing publica "Computing Machinery and Intelligence" (1950)., una
me
introduccin a la prueba de Turing.
ra
Isaac Asimov publica sus 3 leyes robtica en 1950
mit
ad
Norbert Wiener publica The feedback theory. Formul la teora de que
1950s
todo comportamiento inteligente era el resultado de mecanismos de
retroalimentacin que probablemente podran ser simulados con mquinas.
John McCarthy acua el termino artificial intelligence" durante la primera
1956
conferencia dedicada a esta rea.
Newell y Simon desarrollan el General Problem Solver (GPS). El programa
1957
era una extensin del principio de retroalimentacin de Wiener y era capaz
de resolver una gran extensin de problemas de sentido comn.
John McCarthy, considerado como el padre de la IA, anunci su nuevo
1958
desarrollo: el lenguaje LISP, el cual todavia es utilizado en la actualidad.
James Slagle escribi en Lisp el primer programa de integracin simblica
1961
SAINT, que resolvia problemas de calculo.
Thomas Evans desarrolla el programa Analogy, que demuestra que las
1963
computadoras pueden resolver los mismo problemas de las pruebas de IQ.
Joseph Weizenbaum (MIT) construye ELIZA, un programa interactivo que
1965
puede sostener un dialogo en Ingls sobre cualquier tpico.
Desarrollo de los Sistemas Expertos. Los Sistemas Expertos predicen la
Finales
probabilidad de una solucin bajo un conjunto de condiciones.
19
David Marr propone nuevas teoras acerca de visin artificial, por ejemplo,
60
cmo distinguir una imagen basndose en su sombra, informacin bsica
sobre formas, color, lados y textura
Jaime Carbonell desarrolla SCHOLAR, un programa interactivo para de
1970
aprendizaje con ayuda por computadora basado en redes semanticas y en
representacin del conocimiento.
Desarrollo del Prolog por Alain Colmerauer.
1972
Las redes neuronales son ampliamente usadas en algoritmos de
Mediado
propagacin.
s
Desarrollo de la Lgica Difusa
de
19
80
La milicia pone a prueba la IA en la guerra denominada Desert Storm
1990s
(Tormenta del Desierto). En esta guerra se utiliz con xito la tecnologa
basada en IA en los sistemas de misiles.
La IA entra tambin el los hogares con aplicaciones como reconocimiento de
voz y caracteres.
Por una autopista en las afueras de Pittsburgh, a una velocidad de 80 kph, el hombre
que viaja en el asiento del conductor de una camioneta se ve completamente
relajado. Es natural: durante los ltimos 135 kilmetros recorridos no ha tocado ni el
volante, ni el freno ni el acelerador. De hecho, el verdadero conductor es un
sistema de robtica que obtiene informacin de unas cmaras de video, un sonar y
de telmetros de lser instalados en la camioneta. El sistema combina estas
entradas con experiencia obtenida durante viajes de entrenamiento y eficientemente
determina cmo conducir el vehculo.
1.9 Objetivos de la IA
1.10 Aplicaciones de la IA
Tareas formales
Juegos
Ajedrez
Backgammon
Damas
Matemticas
Geometra
Lgica
Clculo integral
Demostracin de las propiedades de los
programas
1.11 Tcnicas de la IA
Una tcnica de IA es un mtodo que utiliza conocimiento representado de tal forma que:
Debe ser comprendido por las personas que lo proporcionan. La manera de visualizar
el conocimiento almacenado en una mquina debe ser entendible por las personas
fcilmente, independientemente de su forma de representacin en la mquina.
Debe poder modificarse fcilmente para corregir errores y reflejar los cambios en el
mundo y en nuestra visin del mundo.
Debe poder usarse en gran cantidad de situaciones, aun cuando no sea totalmente
preciso o completo.
2.1 INTRODUCCIN
Cambia constantemente.
Se distingue de los datos en que se organiza en forma tal que se corresponde con
la forma en que va a ser utilizado. Tcnicas de IA Una tcnica de IA es un mtodo
que utiliza el conocimiento, de tal forma que:
Para solucionar problemas complicados, los programas que utilizan las tcnicas de IA
presentan numerosas ventajas con respecto a los que no lo hacen:
son menos frgiles, es decir, que no se despistan frente a una perturbacin pequea
de la entrada
el conocimiento del programa es comprendido fcilmente por la gente
usa generalizaciones
tiene facilidad de extensin
2.2 DEFINICIN
Otra definicin sostiene que la representacin de conocimiento puede ser algo como la
correspondencia de reglas conocidas y el estado del mundo en alguna estructura
apropiada.
Mundo W
Conocimie
nto
Seleccin
K(L)
Combinacin
Refino
Interpretacin y Lenguaje L
correspondencia
Mundo W
Conocimiento
K(D,W)
Ejemplo
2.5 Conocimiento
No existe una teora superior para explicar la organizacin del conocimiento humano o una
tcnica superior para estructurar los datos en un programa convencional, no existe una
estructura ideal para representar el conocimiento. Una de las principales responsabilidades
como ingeniero del conocimiento es elegir la mejor tcnica para representar el
conocimiento que satisfaga a una aplicacin dada.
TIPOS DE CONOCIMIENTO
Conocimiento Procedimental Reglas
Estrategias
Agendas
Procedimientos
Es aquel conocimiento compilado que se refiere a la forma de realizar una cierta tarea (el
saber como hacerlo). Por ejemplo, los pasos necesarios para resolver una ecuacin
algebraica son expresados como conocimiento procedimental.
Inteligencia Artificial I Pagina 21
Describe que es lo que sabe sobre el problema. Este incluye declaraciones simples que
son evaluadas como verdaderas o falsas. Este incluye tambin una lista de enunciados
los cuales describen mayormente los objetos o los conceptos.
Otros trminos relacionados con el conocimiento y que son ocasionalmente empleados son
epistemologa y meta-conocimiento. Epistemologa es el estudio de la naturaleza del
conocimiento, mientras que meta-conocimiento es conocimiento acerca del conocimiento
esto es conocimiento acerca de lo que se conoce.
Conocimiento heurstico es un tipo especial de conocimiento usado por los humanos para
resolver problemas complejos. El adjetivo heurstico significa medio para descubrir. Esta
relacionado con la palabra griega heuriskein que significa descubrir, encontrar, se entiende
por heurstico a un criterio, estrategia, mtodo o truco utilizado para simplificar la solucin
de problemas. El conocimiento heurstico se lo adquiere a travs de mucha experiencia.
Describe las estructuras del conocimiento. Este tipo de conocimiento describe el modelo
mental del experto respecto a un problema , el cual contiene conceptos , sub-conceptos y
objetos tpicos de esta clase de representacin.
Inteligencia Artificial I Pagina 22
Tarea 2.1.
Las oraciones tienen que estar escritas en un lenguaje para la representacin del
conocimiento. Hay dos formas de construir una BC
Sensores Hechos
Cambios en el
mundo
Memoria
Mundo real Computadora BC
Proceso de inferencia
Accin
Mecanismo Seal
Robot
Los Hechos:
Verdades en un cierto mundo.
Es aquello que queremos representar.
Para que las representaciones sean tiles debe haber una funcin que permita ir de los
hechos a las representaciones y viceversa. La figura siguiente muestra este proceso.
Representacin del
castellano
Representar ste en forma manejable por la computadora de manera que se pueda utilizar
como un auxiliar en el desempeo de los sistemas basados en conocimientos.
La sintaxis:
o Explica las posibles configuraciones mediante las cuales se forman las
oraciones.
La semntica:
o Determina los hechos del mundo a los que hacen alusin las oraciones.
Mediante la semntica cada oracin expresa algo relacionado con el mundo.
Ejemplo 1:
A: O estudiaba o iba a la fiesta
B: Y que hiciste?
A: Pues no fui a la fiesta
Ejemplo 2:
A qu conclusin llegamos?
Por qu se pudo llegar a una conclusin?
Ejercicio 2.1.
2.18. Lgica
Interpretacin (Semntica). Ninguna oracin tiene significado por s misma. Para poder
dar a entender lo que significa, quien la escriba tiene que proporcionar su respectiva
interpretacin.
Ejemplos:
P: Juan es un estudiante
Q: Juan trabaja los fines de semana
Inteligencia Artificial I Pagina 30
Concectivos bolanos. Smbolos que permiten combinar oraciones para formar oraciones
ms complejas (and, or, si entonces, si y solo si)
Smbolos:
Constantes lgicas Verdadero / Falso
Smbolos proposicionales P, Q, R, S, T, etc.
Conectivos lgicos , , , ,
Reglas de sintaxis:
Reglas de Semntica.
Validez e Inferencia.
P P PP
V F V
F V V
((PH) H) P
P H PH (PH)H ((PH) H) P
V V V F V
V F V V V
F V V F V
F F F F V
Ejemplos:
Relaciones: hermano de, mayor que, dentro de, parte de, sucedi luego de, etc.
Ejercicio 2.3
(atomo=objeto)
Oracin atmica Predicado(Trmino,) | Trmino = Trmino
Conector | | |
Cuantificador |
Constante A | X1 | Juan |.
Variable a | b | x | s |
Aunque para nosotros el argumento debe ser juzgado como vlido, su validez no depende
de la estructura de los enunciados y no podramos obtener que sea vlido siguiendo la
lgica proposicional. La inferencia en (1) requiere de un anlsis que rompa los
enunciados. Especficamente, se deben considerar las relaciones sujeto-predicado.
Adems, se debe tomar en cuenta el significado de la palabra todas.
La lgica de primer orden es una extensin de la lgica proposicional y nos permite entrar
a un enunciado y obtener conclusiones a partir de la estructura interna de dicho enunciado.
Para manejar la lgica de primer orden se necesita introducir nuevas definiciones. Para
empezar, un trmino puede ser una variable, una constante o una funcin. En espaol un
trmino puede ser un pronombre o un sustantivo. La variable x, donde x se establece para
cualquier objeto, es un trmino. En (1), la constante DG4 es una instancia de x que se
Inteligencia Artificial I Pagina 34
establece para cualquier tipo de computadoras. Cuando una variable toma el valor de una
constante conocida, se dice que la variable est instanciada.
COMPUTADORA (DG4)
Ejemplo:
Si la expresin
x [COMPUTADORA (x) FUNCIONA(x)] es verdadera
y si
entonces
Inteligencia Artificial I Pagina 35
FUNCIONA(JAG) es verdadera
FUNCIONA(DG4) es verdadera
FUNCIONA(PEN) es falsa
x [ FUNCIONA(x)] es falsa
x [ FUNCIONA(x)] es verdadera
Dadas las reglas que utiliza la Lgica Proposicional: Modus Ponen, Modus Tollen, Y-
Eliminacin, Y-Introduccin, O-Introduccin, Silogismo Hipottico y Silogismo Disyuntivo.
Estas reglas tambin son vlidas en la LPO, pero se necesitan reglas adicionales para
poder manejar las oraciones de la lgica de primer orden con cuantificadores.
Para poder aplicar estas reglas emplearemos la notacin SUST(d, a) para representar el
resultado de aplicar la sustitucin d en la oracin a. Es decir,
Conjunto de sustituciones
Oracin
Ejemplo:
SUST({x/Sam, y/Pam}, Le_gusta(x, y)) = Le_gusta(Sam, Pam)
Es muy importante que la constante empleada para sustituir la variable en las reglas de la
eliminacin existencial sea un nombre nuevo. De no cumplir con este requisito es fcil que
se den consecuencias ilgicas. Por ejemplo, considrese la oracin x Padre(x, Juan). Si
se sustituye a la variable x por la constante Juan, se obtiene Padre(Juan, Juan), lo que
evidentemente no es una consecuencia lgica de la oracin original. Lo que la oracin
existencial est diciendo es que existe un cierto objeto que satisface la condicin, y el
proceso de eliminacin lo que hace es precisamente dar un nombre a ese objeto. Es obvio
que ese nombre no debe haber sido asignado con anterioridad a otro objeto.
7. El pais Nono:
La idea del Modus Ponen Generalizado es reducir el tiempo de bsqueda. Por ejemplo, si
tenemos las siguientes expresiones
Proyectil(M1)
Posee(Nono, M1)
x Proyectil(x) Posee(Nono, x) Vende(West, Nono, x)
Ejercicio 2.4.
Lo que se quiere ahora es construir un mecanismo de inferencia que utilice nicamente una
regla: el Modus Ponen Generalizado. Lo anterior implica que todas las oraciones de la
base de conocimientos estn expresadas en forma tal que coincidan con una de las
premisas del Modus Ponen. Es decir, la forma cannica del Modus Ponen determina que
cada oracin de la base de conocimientos sea una oracin simple (sin cuantificadores) o
una implicacin con una conjuncin de oraciones simples en el lado izquierdo y slo una
oracin atmica del lado derecho. A este tipo de oraciones se les denomina oraciones de
Horn.
Ejercicio 2.5.
2.20.2. 3 Unificacin.
UNIFICAR(p, q) = SUST(t, q)
Ejemplo:
Conoce(Juan, x) Odia(Juan, x)
y queremos saber a quien odia Juan. Suponga que la Base de Conocimientos contiene las
oraciones:
Conoce(Juan, Jane)
Conoce(y, Lenidas)
Conoce(y, Madre(y))
Conoce(x, Isabel)
al unificar el antecedente de la regla con la primera oracin tenemos
Ahora que ya contamos con un lenguaje razonable para representar el conocimiento y con
una regla razonable de inferencia, estudiaremos como construir un programa de
razonamiento.
Empezar por las oraciones que estan en la base de conocimientos y generar nuevas
conclusiones, de las que, a su vez, se pueden obtener nuevas inferencias.
Esta oracin no unifica con ninguna anterior por lo que se aade la siguiente oracin
atmica
6. Nacin(Nono)
Esta oracin unifica con la 4 sustituyendo x/Nono, por lo que produce la oracin
8. Hostil(Nono)
Se aade la siguiente oracin atmica
9. Posee(Nono, M1)
Esta ltima oracin unifica junto con 5, 11, 6, 8 con la implicacin 1, por lo que podemos
deducir
13. Delincuente(West)
Busca todas las respuestas posibles a una pregunta formulada a la base de conocimientos.
El proceso consiste en buscar si la consulta se puede obtener a partir de las oraciones de
la base de conocimientos. Luego busca todas las implicaciones cuyas conclusiones
respectivas unifican con la consulta y trata de establecer cules son las premisas de tales
implicaciones, tambin mediante el encadenamiento hacia atrs. La siguiente figura ilustra
el encadenamiento hacia atrs.
Inteligencia Artificial I Pagina 42
Delincuente(x)
Si {x/West} Si {z/Nono}
Proyectil(M1) Enemigol(Nono, America)
Si Si
Posee(Nono, M1)
Proyectil(M1)
Si Si
Tarea 2.2.
Problema: Juan tiene un perro. Todos los que tienen perros aman a los animales. Nadie
que ame a los animales los mata. Juan, o Curiosidad, mat al gato que se llamaba Tuna.
Mat Curiosidad al gato?
Inteligencia Artificial I Pagina 43
Los sistemas modelados con lgica proposicional o lgica de primer orden representan
explcitamente el conocimiento y pueden efectuar razonamientos sobre ste. La principal
ventaja de estos sistemas es su alto grado de modularidad. Los sistemas que utilizan algn
tipo de lgica se les denomina sistemas de razonamiento lgico. Estos sistemas son muy
deiversos y se clasifican en grupos, de los cuales podemos citar los siguientes:
Ejemplo
Inteligencia Artificial I Pagina 46
2.23. GUIONES
Los guiones son un formalismo de representacin de conocimientos utilizado para
representar secuencias estereotipadas de sucesos. Por tanto, un guin es una
estructura que representa una secuencia de acontecimientos
que ocurren comnmente tales como: cambiar la batera de un coche si est
averiada, ir a comprar una impresora, cmo operar de amgdalas, etc.
Una vez que el cliente se ha sentado en la mesa, y tras un breve periodo de conversacin,
decide leer la carta. Entonces, el cliente pide la carta al
camarero, si sta no se encuentra encima de la mesa, o si el camarero no la ha trado
despus de una espera prudencial. En el primer caso, el cliente tiene que atraer la atencin
del camarero para que ste vaya a la mesa, entonces, le pide la carta y espera mientras
el camarero va a por ella. En cualquier caso, si el cliente pide la carta o el camarero la
trae directamente,, una vez que tiene la carta encima de la mesa, el cliente la lee, decide
qu es lo que va a pedir y lo pide al camarero.
Si todos los platos pedidos estn disponibles, el camarero ordena la comida al cocinero que
la prepara. En caso contrario, el camarero le dice al cliente que no queda ese plato y le
pregunta si desea algn otro, entonces, el cliente vuelve a leer la carta y realiza las mismas
acciones que hizo la vez anterior, o bien se va del restaurante sin pagar porque ningn plato
es de su agrado.
Una vez que el cocinero tiene disponible la comida, el camarero la trae a la mesa y el
cliente come. Si se queda con hambre vuelve a pedir la carta, y si no, decide irse del
restaurante. En cualquier caso, y si la comida le ha gustado, se lo comunica al camarero.
A5
avestruz
LOC : caminan
A4
Av. B. A.
LOC : vuelan
Av. B. A. A3
y V. C.
LOC : caminan
A1 A2
Inteligencia Artificial I Pagina 48
HP-1 HP-2
TAMBIEN-HABLA:
NACE: Francia NOMBRE: Luis
TAMBIEN-HABLA: Francs
NOMBRE: Pepe
avestruz
LOC : caminan
a) b)
Inteligencia Artificial I Pagina Nro 50
Los sistemas basados en reglas usan una memoria de trabajo y una base de reglas
50
Inteligencia Artificial I Pagina Nro 51
Las reglas pueden ser utilizadas para expresar un amplio rango de asociaciones, por
ejemplo:
SI est manejando un vehculo Y se aproxima una ambulancia,
ENTONCES baje la velocidad Y hgase a un lado para permitir el paso
de la ambulancia.
Un sistema basado en reglas utiliza el modus ponens para manipular las afirmaciones y
las reglas durante el proceso de inferencia. Mediante tcnicas de bsqueda y procesos
de unificacin, los sistemas basados en reglas automatizan sus mtodos de
razonamiento y proporcionan una progresin lgica desde los datos iniciales, hasta las
conclusiones deseadas. Esta progresin hace que se vayan conociendo nuevos hechos
o descubriendo nuevas afirmaciones, a medida que va guiando hacia la solucin del
problema.
51
Inteligencia Artificial I Pagina Nro 52
Sntesis Qumica
52
Inteligencia Artificial I Pagina Nro 53
alguna de las reglas. Si una regla es satisfecha, es ejecutada derivando nuevos hechos
que pueden ser utilizados por otras reglas para derivar hechos adicionales. Este
proceso de chequear reglas para ver si pueden ser satisfechas se denomina
interpretacin de reglas.
La interpretacin de reglas es realizada por una mquina de inferencia en un sistema
basado en conocimiento. La interpretacin de reglas, o inferencia, en el razonamiento
progresivo involucra la repeticin de los pasos que se indican en la siguiente figura.
53
Inteligencia Artificial I Pagina Nro 54
El sistema empieza con un conjunto de hechos conocidos que tpicamente est vaco.
Se proporciona una lista ordenada de objetivos (o conclusiones), para las cuales el
sistema trata de derivar valores. El proceso de razonamiento regresivo utiliza esta lista
de objetivos para coordinar su bsqueda a travs de las reglas de la base de
conocimientos. Esta bsqueda consiste de los siguientes pasos:
1. Conformar una pila inicialmente compuesta por todos los objetivos prioritarios
definidos en el sistema.
54
Inteligencia Artificial I Pagina Nro 55
de la pila y retornar al paso (2). Si la pila est vaca parar y anunciar que se ha
terminado el proceso.
Algunas veces las conclusiones derivadas de las reglas pueden ser hechos que se
identifican en forma exacta con las premisas de otras reglas. En estos casos, se puede
visualizar una base de conocimientos como una red de reglas y hechos
interconectados.
En otros casos, las conclusiones derivadas pueden ser ms generales. Como resultado,
la visualizacin de la base de conocimiento como una red, no es posible aplicarla. En
lugar de esto, nos vemos forzados a pensar que las conclusiones derivadas de las
reglas son una coleccin de hechos que podran o no unificarse o identificarse con los
varios patrones descritos por las premisas de otras reglas.
Cabe sealar que ambas arquitecturas pueden trabajar con encadenamiento progresivo
o regresivo. Sin embargo, tradicionalmente se ha utilizado el proceso de razonamiento
regresivo en redes de inferencia y el proceso de razonamiento progresivo en sistemas
de unificacin de patrones.
2.28 Redes de Inferencia
Una red de inferencia puede ser representada como un grfico en el que los nodos
representan parmetros que son los hechos obtenidos como datos o derivados de otros
datos. Cada parmetro es una declaracin acerca de algn aspecto del problema bajo
anlisis y puede servir como un antecedente o consecuente de una regla. Estas
declaraciones pueden copar un rango que va desde la conclusin final de un sistema,
hasta hechos simples, observados o derivados. Cada uno de estos parmetros puede
tener uno o ms valores asociados, donde cada valor tiene una medida correspondiente
de incertidumbre que representa cuan creble es el valor particular de un parmetro.
Las reglas en el sistema estn representadas dentro del grfico por las interconexiones
entre los varios nodos. Este conocimiento es utilizado por el proceso de inferencia para
propagar resultados a travs de la red.
55
Inteligencia Artificial I Pagina Nro 56
Ntese que todas las interconexiones entre los varios nodos de la red de inferencia son
conocidas previa a la ejecucin del sistema. Esto trae como consecuencia la
minimizacin del proceso de bsqueda de hechos que se identifiquen con las premisas.
Adicionalmente, simplifican la implementacin del mecanismo de inferencia y el manejo
de las facilidades de explicacin.
Las redes de inferencia son muy tiles para dominios donde el nmero de diferentes
soluciones alternativas es limitado. Por ejemplo, la clasificacin de elementos en las
ciencias naturales y problemas de diagnstico. Una red de inferencia es fcil de
implementar, pero es menos poderosa ya que se debe conocer de antemano todas las
relaciones entre reglas y hechos.
56
Inteligencia Artificial I Pagina Nro 57
3.1 Problemas
Los problemas en IA son muy variados. Sin embargo, para construir cualquier sistema
en IA que resuelva un problema especfico, es necesario realizar las siguientes acciones
[Winston, 94]:
1. El estado inicial. El estado a partir del cual buscaremos la solucin del problema
2. El conjunto de acciones. El conjunto de las posibles acciones que se pueden
realizar para pasar de un estado a otro.
57
Inteligencia Artificial I Pagina Nro 58
Espacio de estados: el conjunto de todos los estados que pueden alcanzarse a partir
del estado inicial mediante cualquier secuencia de acciones.
Estado inicial
El conjunto de acciones.
Estado
final
Estado
inicial
3.3 Ejemplos
Los juegos como el ajedrez, el gato, el 8-puzzle, las damas inglesas, etc., se pueden
representar fcilmente con el mtodo de espacio-estados.
58
Inteligencia Artificial I Pagina Nro 59
Estado meta cualquier posicin de las piezas en la cual el rey contrario est en
jaque y no tenga ningn otro movimiento legal
Espacio de estados Todas las posiciones posibles de las piezas que se puedan
lograr a partir del estado inicial
Acciones o transacciones Todos lo movimientos legales de cada una de las piezas
Ejercicio 3.1.
5 4 1 2 3
6 1 8 8 4
7 3 2 7 6 5
Enfoque:
Estados: ubicacin de cada una de las 8 placas, se debe incluir tambien el
vacio.
Operadores: el espacio vacio puede moverse a la derecha, izquierda, arriba o
abajo.
Prueba de Meta: el estado debe coincidir con el de la figura de la derecha
Costo de ruta: cada paso cuesta 1.
59
Inteligencia Artificial I Pagina Nro 60
Ejercicio 3.2
Solucin:
60
Inteligencia Artificial I Pagina Nro 61
Una vez formalizado el problema, solo resta hacer una bsqueda del estado inicial al
estado final a travs del espacio de estados. La figura 3.2 muestra una posible solucin
al problema de las jarras de agua
0 0
0 3 2
3 0 7
3 3 2
4 2 5
0 2 3
2 0 7
61
Inteligencia Artificial I Pagina Nro 62
Solucin:
Definir los estados inicial y final.
Estado inicial: (3,3,1)= 3 misioneros, 3 canibales, 1 barca.
Estado final: (0,0,0)= 0 misioneros, 0 canibales, 0 barca.
Torres de Hanoi: Mueve los discos del poste 1 al poste tres con la
condicin de solo mover un disco a la vez y que ningn disco debe
quedar debajo de un disco ms grande
Solucin:
Definir los estados inicial y final.
Estado inicial: (1,1,1,1)= b1,b2,b3 en poste1.
Estado final: (1,1,1,3)= b1,b2,b3 en poste 3.
Tarea 3.1
62
Inteligencia Artificial I Pagina Nro 63
Para explicar estos mtodos suponga que desea hallar una trayectoria de una ciudad a
otra mediante un mapa de carreteras como el de la figura 3.3. La trayectoria deber
empezar en la ciudad S, su punto inicial y terminar en la ciudad G, su meta.
En la figura 3.4. se muestra el rbol de bsqueda que representa todas las trayectorias
posibles que salen del nodo inicial de la red de la figura 3.3.
A B C
S
G
D E F
63
Inteligencia Artificial I Pagina Nro 64
D
A
S
B A E
D
C E E B B F
D E A C G
D F B F
F
G C G
Una forma sencilla de hallar una trayectoria es tomar uno de los hijos en cada nodo que
se visita, y avanzar a partir de ese hijo. Otras alternativas del mismo nivel se ignoran
por completo, en tanto haya posibilidad de alcanzar la meta mediante la seleccin
original. Esta estrategia es la esencia de la bsqueda primero en profundidad. Un
ejemplo de bsqueda en profundidad se muestra en la figura 3.5. A partir del nodo
inicial (S) se elige una alternativa y se le sigue en cada nodo hasta llegar a la meta o a
un nodo en el que ya no es posible seguir hacia abajo, la bsqueda se reinicia en el
antecesor ms cercano que posea hijos sin explorar
64
Inteligencia Artificial I Pagina Nro 65
C E
D F
La bsqueda en amplitud revisa todas las trayectorias de una longitud dada antes de
avanzar a una trayectoria ms larga. En la figura 3.6, la bsqueda en amplitud
encuentra una trayectoria completa al nodo G en el cuarto nivel a partir del nivel raz.
A D
B D S
A E
C E E B B F
D F B F D E A C G
65
Inteligencia Artificial I Pagina Nro 66
Desventaja
Si existen trayectorias largas, incluso infinitamente largas, que no llegan a
callejones sin salida ni se vuelven completas. En tales ocasiones se requieren
mtodos alternativos de bsqueda.
Bsqueda en Amplitud
Ventaja:
La bsqueda en amplitud funciona aun con rboles infinitamente profundos o de
profundidad prcticamente infinita.
La bsqueda en amplitud resulta una buena idea cuando se tiene la certeza de
que el factor de ramificacin es pequeo.
Tambin se puede optar por la bsqueda en amplitud, en lugar de la bsqueda
en profundidad, si preocupa el hecho de que puede haber trayectorias largas y
hasta infinitas, incapaces de llegar a callejones sin salida o volverse completas.
Desventaja:
L a bsqueda en amplitud constituye un
desperdicio cuando todas las trayectorias conducen a la meta aproximadamente
a la misma profundidad.
La bsqueda en amplitud no es una buena idea si el factor de ramificacin es
grande o infinito, debido a la expansin exponencial.
Ejercicio 3.4.
66
Inteligencia Artificial I Pagina Nro 67
A) B)
A
C A B
S
B
S
C D G
G
E F
Ejercicio 3.5.
(0,0)
(3,0) (4,0)
(3m,3c,1,0,0,0)
1m,1c 2c 2m
(2m,2c,0,1m,1c,1) (3m,1c,0,2c,0,1) (1m,3c,0,2m,0,1)
(3m,3c,1,0,0,0) (3m,2c,1,0,1c,0)
67
Inteligencia Artificial I Pagina Nro 68
4.1 Introduccion
Porqu los mtodos heursticos? Por que aunque en un principio se pens que toda
tarea de bsqueda poda ser completada por un computador sin mas que realizar una
exploracin de todos los caminos que llevan a una solucin y una posterior seleccin
del mejor de tales caminos, mas tarde se comprob que aunque esta suposicin era
cierta, no era eficaz debido a la explosin combinatoria que aparece en este tipo de
problemas.
68
Inteligencia Artificial I Pagina Nro 69
Ejemplos:
4. Forme una lista con una trayectoria que contenga el nodo inicial.
5. Hasta que la lista est vaca
2a. Eliga trayectoria de menor distancia heurstica
2b. Si la trayectoria llega al nodo meta vaya al paso 3
2c. Si no, genere nuevas trayectorias extendiendo la trayectoria elegida
2d. Si alguna trayectoria generada contiene ciclos, elimnela
2e. Agrege las trayectorias generadas, si existen, a la lista
6. Si se encontr el nodo meta notificar xito, si no notificar fracaso.
69
Inteligencia Artificial I Pagina Nro 70
Ejercicio 4.1.
A B C
S
G
D E F
4 4
A B C
3
3 4
S4 4
G
2 3
D E F
70
Inteligencia Artificial I Pagina Nro 71
Los mtodos vistos hasta ahora devuelven la primer solucin que encuentran. Sin
embargo, existen problemas para los cuales lo ms importante es el costo de la
trayectoria encontrada y no el tiempo que se tarden en encontrarla. Es decir, lo que
interesa es encontrar la ruta ptima. A continuacin se muestran algunos.
A continuacin se enlistan algunos de los mtodos que encuentran la ruta ptima y que
se explicarn posteriormente.
Museo Britnico
Branch & Bound
Branch & Bound con subestimados
Principio de programacin dinmica
A*
El procedimiento del Museo Britnico busca todas las trayectorias posibles en el rbol
de bsqueda y selecciona la mejor de ellas. Para encontrar todas las trayectorias
posibles, tanto el bsqueda en profundidad como la bsqueda en amplitud funcionan
con una modificacin: la bsqueda continua hasta que se encuentran todas la
soluciones.
71
Inteligencia Artificial I Pagina Nro 72
En este esquema, se mantienen al tanto todas las trayectorias parciales que compiten
para su consideracin posterior. La mas corta de ellas se extiende un nivel, crandose
tantas trayectorias parciales como ramas existan. En seguida, se consideran estas
nuevas trayectorias junto con las anteriores restantes: de nuevo se extiende la
trayectoria mas corta. Este proceso se repite hasta llegar a la meta a travs de una
trayectoria. Dado que la trayectoria mas corta es la que siempre se escoge para su
extensin, la trayectoria que primero encuentra la meta es probable que sea la ptima.
Para convertir lo probable en cierto, se extienden todas las trayectorias parciales hasta
que tengan una longitud igual o mayor que la trayectoria completa ms corta. La razn
es que el ltimo paso para alcanzar la meta puede ser lo suficientemente largo para
hacer que la supuesta solucin resulte ms larga que una o ms trayectorias parciales.
Puede ser que slo un paso pequeo extienda una de las trayectorias parciales al punto
solucin. Para asegurarse de que esto no suceda, en lugar de terminar al encontrar
una trayectoria, termine cuando la trayectoria parcial ms corta tenga una longitud
mayor que la trayectoria completa ms corta.
1. Forme una lista con una trayectoria que contenga el nodo inicial.
2. Hasta que la lista est vaca
2a. Eliga trayectoria de menor distancia heurstica desde el nodo inicial
2b. Si la trayectoria llega al nodo meta vaya al paso 3
2c. Si no, genere nuevas trayectorias extendiendo la trayectoria elegida
2d. Si alguna trayectoria generada contiene ciclos, elimnela
2e. Agrege las trayectorias generadas, si existen, a la lista
3. Si se encontr el nodo meta notificar xito, si no notificar fracaso.
4. Continue extendiendo las trayectorias de menor distancia heurstica al nodo inicial
que queden sin alcanzar aun la meta, hasta que todas las trayectorias sean mayores
o iguales a la mejor meta encontrada.
Ejercicio 4.5.
72
Inteligencia Artificial I Pagina Nro 73
Algoritmo de bsqueda:
1. Forme una lista con una trayectoria que contenga el nodo inicial.
2. Hasta que la lista est vaca
a. Elija el camino que represente el menor costo heurstico
b. Si lleg al estado meta, ir al paso 3
c. Expanda todas las ramas de ese nodo
d. Si encuentra un nodo que cuyo costo heurstico sea mayor que el mismo
nodo en cualquier rama del rbol expandido, elimnelo.
e. Si la trayectoria genera un ciclo, elimnela.
3. Notificar el xito o fracaso de la rama.
4.8 A*
73
Inteligencia Artificial I Pagina Nro 74
f(n)=g(n)+h(n)
Donde:
g(n): coste real del mejor camino encontrado en un determinado momento
desde la raz hasta n.
h(n): Estimacin del coste del camino ptimo desde n a una meta.
74
Inteligencia Artificial I Pagina Nro 75
Ejercicio 4.6.
Consideremos el caso general de un juego con dos participantes, los cuales alternan su
participacin hasta que concluye el juego. Una definicin formal del juego sera la de un
tipo de problema de bsqueda integrado por lo siguiente:
75
Inteligencia Artificial I Pagina Nro 76
El algoritmo mini-max sirve para determinar la estrategia ptima para MAX, y decidir as
cul es la mejor jugada. El algoritmo se compone de cinco pasos:
5. Cuando los valores respaldados llegan a la parte superior del rbol MAX elige la
jugada que le permite obtener el valor ms alto. [1]
Ejercicio 4.7.
76
Inteligencia Artificial I Pagina Nro 77
REDES NEURONALES
1. Introduccin
77
Inteligencia Artificial I Pagina Nro 78
Algunos nombres que tambin se dan a las redes neuronales incluyen: Sistemas
Neuronales Artificiales, Modelos Conexionistas, Modelos de Procesamiento de
Distribucin en Paralelo, Sistemas Auto-adaptivos de varios niveles, Sistemas
Autoorganizativos, Neurocomputadoras, Sistemas Neuromrficos y Cyberware.
2. Definicin
3. Historia
78
Inteligencia Artificial I Pagina Nro 79
79
Inteligencia Artificial I Pagina Nro 80
Los Perceptrones han sido ideados como un brillante e intuitivo anlisis de las
capacidades computacionales de las redes perceptron de un nivel.
Desafortunadamente, Papert y Minsky establecieron en sus conclusiones la creencia
que las limitaciones de una red perceptron de un nivel se daran tambin en las redes
perceptron de muchos niveles. En efecto, Papert y Minsky sealaron, "consideramos
que es un importante problema para ser aclarado... nuestro juicio intuitivo es que la
extensin a sistemas de mltiples niveles es estril" [4]. Con lo que la investigacin en
redes neuronales sufri un fuerte revs. Afortunadamente, el juicio que hicieron Papert y
Minsky fue refutado (ver figura 1, 2 y 3); todos los problemas separables no linealmente
pueden ser resueltos por redes perceptron de varios niveles bajo ciertas condiciones [5].
x1 x1 A
w1
y A B
ENTRADA
B
SALIDA
A B
xn wn
Fig. 1. x0
n
+1 > Clase A
y= (2)
-1 > Clase B
80
Inteligencia Artificial I Pagina Nro 81
B A B Regin de Decisin
Regiones Convexas
abiertas o cerradas
Fig. 2.
A Regin de Decisin
Regiones complejas
B B
A
Perceptron de tres niveles
Fig. 3.
Se estima que el cerebro humano contiene ms de cien mil millones (10 11) de
neuronas y (1014 ) sinpsis en el sistema nervioso humano. 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 las
actuales elementos de las computadoras, ellas tienen una conectividad miles de veces
superior que las actuales supercomputadoras.
Las dendritas forman una "brocha filamentosa" muy fina rodeando el cuerpo de
la neurona, actan como receptores de mensajes de la neurona. Las dendritas reciben
e interpretan los mensajes qumicos desde los axones de otras neuronas. Este mensaje
qumico puede ser excitativo o inhibidor en la dendrita. Una vez que las dendritas
reciben los mensajes y los combinan, estos son enviados al cuerpo de la neurona.
81
Inteligencia Artificial I Pagina Nro 82
82
Inteligencia Artificial I Pagina Nro 83
Tabla 1.
x1 w1j
Funcin de
Transferecia
w2j
x2
x3 w3j Salida
o
o
o
o Modelo de Neurona Artificial
Fig. 5.
xn wnj
Funcin de
Entrada Pesos de Com binacin
Conexin
Las seales de entrada x1, x2, x3,... xn provienen de las salidas de otras neuronas
o de fuentes externas a la red neuronal.
83
Inteligencia Artificial I Pagina Nro 84
n
z j wij xi (3)
i 1
donde:
zj funcin de combinacin de la neurona jth.
wij es el peso de conexin entre la neurona ith y jth.
xi seal de entrada o activacin de la neurona ith.
Existen otras funciones de combinacin que se pueden utilizar y ente las cuales
podemos citar: mximo, mnimo, producto, etc.
De igual manera que las neuronas biolgicas del cerebro que no son inteligentes
individualmente, tampoco lo son las neuronas. La inteligencia y habilidad de
almacenamiento de informacin de una red neuronal esta dada por el paralelismo,
estructura interactiva y distributiva similar al cerebro. La inteligencia de la red neuronal
esta almacenada en varios lugares, y determinado por: el modelo de conexin entre
neuronas y los pesos de conexin entre las neuronas.
Fig. 6.
84
Inteligencia Artificial I Pagina Nro 85
n
y j f ( wij xi j ) (4)
i 1
y j f ( z j j ) (5)
donde:
yj respuesta o activacin de la neurona jth.
j valor de umbral de la neurona jth.
Los pesos wij y las funciones f() determinan la operacin de la red. Usualmente,
para una arquitectura dada de red las funciones f() sern fijas, as la variacin de los
pesos permitir a la red llevar a cabo diferentes clculos. La salida de las neuronas
determina el estado actual de la red.
Las redes neuronales tendrn pesos fijos o adaptables. Las redes con pesos
adaptables utilizan reglas de aprendizaje que ajustan los valores de los pesos de
interconexin. Si la red neuronal utiliza pesos fijos, entonces la tarea a ser realizada
debe estar bien definida a priori. Los pesos sern determinados explcitamente a partir
del entendimiento del problema. Los pesos adaptables son necesarios si no se conoce
a priori cules sern los pesos correctos.
Niveles. Las neuronas son agrupadas en estructuras llamadas niveles. Cada neurona
de un nivel tienen la misma funcin de combinacin y transferencia y las mismas leyes
de aprendizaje. Una red neuronal es dada por la conexin de una o ms niveles. Ver
figura 7.
85
Inteligencia Artificial I Pagina Nro 86
Una red neuronal tpica consiste de tres niveles: 1) el nivel de entrada, el cual
recibe las seales de entrada del mundo externo, 2) uno o ms niveles ocultos tambin
llamados niveles intermedios y 3) el nivel de salida, el cual entrega la respuesta
despus de realizar el procesamiento de la seal de entrada.
Fig. 7.
AGENTES
1.- Introduccin
86
Inteligencia Artificial I Pagina Nro 87
que los trminos que manejemos sean comprendidos trataremos de utilizar ejemplos
cotidianos.
2. Antecedentes
El anlisis de la actividad de un agente racional como una correlacin que permite pasar
de secuencias de percepciones a acciones, probablemente se haya originado del
esfuerzo por definir las conductas racionales dentro del mbito de la economa y de
otras formas de razonamiento bajo condiciones de incertidumbre y de los trabajos de
conductistas psicolgicos como Skinner (1953) enfocados a reducir la psicologa de los
organismos a meras correlaciones entrada/ salida o estmulo/ respuesta. [Rusell &
Norving]
El paso del conductismo al funcionalismo en el mbito de la psicologa, en parte
resultado de la aplicacin de la metfora de la computadora de los agentes
(Putnam,1960; Lewis, 1966) incorpor al cuadro general la nocin de estado interno de
un agente. [Rusell & Norving]
El filsofo Daniel Dennet (1969, 1978) contribuy a sintetizar todos estos puntos de
vista en una posicin intencional coherente en relacin con los agentes. Tambin en el
mbito de la IA, se ha adoptado una perspectiva abstracta y de alto nivel en torno a la
nocin de agencia (McCarthy y Hayes,1969).[Rusell & Norving]
Jon Doyle (1983) propuso la idea de que el diseo de agentes racionales es la medula
de la IA y seguira siendo su objetivo primordial, en tanto que otros temas relacionados
con la IA experimentaran una evolucin hasta constituirse en nuevas disciplinas.[Rusell
& Norving]
Horvitz (1988) fueron especficos al sugerir el empleo de la racionalidad, concebida sta
como la obtencin del mximo de utilidad esperada como fundamento de la IA. [Rusell
& Norving]
Herb Simon, investigador en IA y economista ganador del premio Nobel, estableci una
clara diferencia entre la racionalidad bajo limitaciones de recursos (racionalidad de
procedimientos) y la racionalidad de hacer una eleccin objetivamente racional
(racionalidad sustantiva) (Simon, 1958).[Rusell & Norving]
Cherniak (1986) explora el nivel mnimo de racionalidad necesario para que una entidad
se pueda considerar como agente. Russell y Wefald (1991) abordan explcitamente la
posibilidad del empleo de una diversidad de arquitecturas de agente.[Rusell & Norving]
Por lo tanto:
Inteligencia Artificial Distribuida (IAD).- Se requiere la combinacin de diferentes
expertos sobre un mismo problema.
Software de Sistemas.- En la dcada de los 70s Adolfo Guzmn promueve el concepto
de demonio en los sistemas operativos para realizar tareas asncronas.
En 1985 Minsky publica su libro The Society of Mind donde usa el concepto de
Agente.
En 1997 se realiza la primera Conferencia de Agentes Autnomos y se lleva a cabo
cada ao.
87
Inteligencia Artificial I Pagina Nro 88
3. Definicin de agentes
Segn Hayes-Roth:
"Los agentes inteligentes realizan continuamente tres funciones: percepcin de las
condiciones dinmicas de un entorno, accin (que afecta a dichas condiciones) y
razonamiento (para interpretar percepciones, resolver problemas, hacer inferencias y
determinar acciones)".
88
Inteligencia Artificial I Pagina Nro 89
objeto PERSONA
sueldo
fech_ing
Ingreso
asistencia
falta
despido
promocin
pago
Reactiva
Los agentes tienen:
Comportamientos simples, son ms numerosos y con mayor capacidad de cooperar
para generar propiedades emergentes.
Cognitiva
Los agentes tienen:
Comportamientos complejos, por ejemplo sistemas expertos que se comunican y
cooperan.
89
Inteligencia Artificial I Pagina Nro 90
Autonoma
Es la capacidad de respuesta basado en sus percepciones y conocimientos que le
permites alcanzar el objetivo que tenga planteado un agente.
En los agentes mviles la autonoma es importante debido a que el Agente debe ser
capaz de enfrentarse a situaciones imprevistas de nodos cados o informacin faltante.
Aunque el agente sea autnomo, el usuario al que pertenece contina con la
responsabilidad de lo que haga el agente.
Proactividad
[Maes 97] considera la proactividad como el hecho; que un agente tome la iniciativa,
sea mediante sugerencias o acciones anticipadas para alcanzar sus objetivos.
[Norman 94] enfatiza que el usuario debe confiar en el comportamiento de su agente
antes de aceptar un agente proactivo.
[Davidson 97] construy un sistema con dos componentes un Anticipador y un Reactor.
El reactor tiene mayor probabilidad y cuando el agente tiene tiempo se activa el
anticipador.
[Exceau]considera al compromiso una componente importante en la proactividad de los
agentes, como actividades que deber llevar a cabo.
Sociabilidad
La sociabilidad le permite a los agentes comunicarse entre ellos, cooperan y cuando
surgen conflictos negociar para llegar a una solucin en donde los involucrados
obtengan la mejor parte.
[Chaib-draa 97] ha construido un agente con diferentes formas de reaccin
dependiendo si son rutinarias, familiares o desconocidas. Su modelo incluye leyes
sociales obteniendo beneficios de los sistemas reactivos y los planificadores.
Es un aspecto ampliamente estudiado y ha dado origen a los sistemas multiagentes,
sistemas colaborativos, agentes buscadores de propiedades emergentes, etc.
Comunicacin
Se han propuesto varios protocolos y lenguajes para lograr la comunicacin entre
agentes, como KQML y KIF.
Las investigaciones en este tema incluyen los aspectos de Manejo de Ontologas Mixtas
(cada agente utiliza su propio conjunto de conceptos).
Lo que se busca es tener la capacidad de comunicacin para colaborar, cooperar y
llevar a cabo negociaciones.
Cooperacin
La cooperacin puede darse considerando un componente central que coordine
globalmente a los diferentes agentes, otra alternativa es que cada agente sea autnomo
y se procuren resolver conflictos de manera local, tendiendo a lograr un mximo global.
Negociacin
Inicialmente la negociacin surge por la necesidad de evitar conflictos entre los agentes.
El comercio electrnico y ms especficamente los aspectos de negocios B2B, han dado
un gran impulso a los aspectos de negociacin entre agentes en nombre de su usuario.
90
Inteligencia Artificial I Pagina Nro 91
La negociacin est presente en las compras, ventas, subastas, seleccin de una fecha
para llevar a cabo una cita, para elegir cuales componentes se les da mayores recursos,
como el caso del suministro de energa elctrica.
Personalidad
Esta caracterstica es de reciente estudio y su importancia radica en que para tener una
mejor forma de predecir el comportamiento de un agente, resulta conveniente conocer
su personalidad utilizando adjetivos como agente tmido, atrevido, impulsivo, orgulloso,
tramposo, etc.
3.2. Componentes
Mecanismo de Representacin del conocimiento
Capacidades para ejecutar acciones, comunicarse, reaccionar y/o planear
Arquitectura del agente
Sensores
Actuadores
A
D B E
C
Los agentes pueden cometer fallas en nombre del usuario, comprar de ms o menos.
El usuario puede querer algo diferente a la que obtuvo su agente.
Por ahora este tipo de agentes son difciles de programar.
Agentes Cooperativos :
Comunicacin, cooperacin y colaboracin.
Autonoma
Negociacin(solucin de conflictos e inters comn)
Motivacin Problemas complejos para un solo agente, Sociologa
Agentes Interfaz
Adaptacin al Usuario(Aprendizaje de un ser UserModeLink)
Personal Assistants (Como help en aplicaciones)
Motivacin Eliminar el tedio de tareas repetitivas y aburridas, compartir el KNOW-
HOW de una comunidad de usuarios
Crticas: Alguien siempre observando sobre mi hombro, Autonoma vs semiautonoma
Agentes Mviles
Proceso capaz de viajar por una red, interactuando entre computadoras, ejecutndose
en estas y obteniendo informacin para regresar con ellas a su usuario
Cliente con poder de procesamiento limitado
Computo distribuido
Motivacin : ahorro en costos de comunicacin paralelismo
Criticas : Seguridad, Identificacin veraz, prevaca, pago. Comportamiento de uno o
muchos agentes mviles en mi computadora.
91
Inteligencia Artificial I Pagina Nro 92
Agentes Internet:
Asistente en la bsqueda inteligentes en la bsqueda de Internet
Motivacin: El web se duplica cada 15 das
Representacin y usos de una topologa del Web
Crtica: Ya existe SOFTBOTS, SPIDER y ROBOTS INDEXADORES.
Agentes Deliberativos
Poseen un modelo del mundo (representacin simblica)
Intensiones, creencias, compromisos, conocimientos
Motivacin: Revisin de creencias, autonomia, negociacin
Agentes Reactivos
Inteligencia articial sin representancin
No poseen un modelo del mundo
Estimulo respuesta
Motivacin: Comportamiento inteligente en base a interaccin entre entes sencillos sin
necesidad de un plan
Flexibilidad y adaptabilidad: Area de aplicacin favorita JUEGOS
Crtica: Rango de aplicacin limitado, no hay lineamientos del sistema.
Por supuesto, hay multitud de clasificaciones que dependen del punto de vista del
investigador. Aunque podemos considerar la ms comn la realizada a partir de la
enumeracin de las caractersticas que cumple un agente.
Movilidad: capacidad de transportarse de una mquina a otra.
Reaccin: actuacin sobre el entorno mediante un comportamiento estmulo/respuesta.
Proaccin: toma la iniciativa para alcanzar sus objetivos.
Sociabilidad o cooperacin: capacidad de comunicarse con otros agentes, programas o
personas.
Aprendizaje o adaptacin: comportamiento basado en la experiencia previa.
Continuidad temporal: ejecucin continua en el tiempo.
Carcter: inclusin de estados de creencia, deseo e intencin (modelo BDI).
Teniendo en cuenta que un agente cumple las caractersticas mnimas de situacin,
flexibilidad y autonoma, podemos considerar, por ejemplo, agentes mviles con
aprendizaje, agentes reactivos y sociables, agentes mviles, proactivos y sociables,
entre otros.
92
Inteligencia Artificial I Pagina Nro 93
Un agente reflejo simple es aquel en el cual las acciones son determinadas mediante el
pareamiento de la situacin del mundo (como es percibida por el agente) con el
antecedente de una regla situacin - accin.
Ver figura anterior
Un agente reflejo tiene posibilidad de presentar un comportamiento ms inteligente
cuando es capaz de interpretar el estado del mundo en base a cierto conocimiento
sobre:
su estado interno
Cmo me encuentro YO en este momento?
cmo evoluciona el mundo
Cul es mi teora del mundo (en particular de aquellas porciones de ste que no puedo
percibir ahora, pero que s que existen)?
el potencial efecto de sus acciones
Qu ocurre en el mundo y en mi interior cuando realizo una determinada accin?
93
Inteligencia Artificial I Pagina Nro 94
bsqueda y la planificacin son dos reas de la I.A. relacionadas con los procesos
internos de un agente basado en metas.
94
Inteligencia Artificial I Pagina Nro 95
La secuencia de percepciones, es decir, todo lo que hasta ese momento el agente haya
percibido.
El conocimiento que el agente posea del mundo y de s mismo.
95
Inteligencia Artificial I Pagina Nro 96
Sin embargo, este tipo de diseos suele plantear una serie de problemas, como la
eleccin del tipo de comunicacin entre los agentes, del tipo de plataforma o del mtodo
de desarrollo, de los criterios para la seguridad del sistema.
Los agentes con una arquitectura basada en capas no constituyen por s mismos un
sistema multiagente. Existen dos tipos fundamentales en este tipo de construcciones:
Capas verticales: slo un subagente tiene acceso a los sensores y slo uno puede
actuar sobre el entorno.
Capas horizontales: cada subagente puede sentir y actuar.
Centrndonos en nuestro problema, el O.M.G. define un sistema multiagente como:
"una plataforma que puede crear, interpretar, ejecutar, transferir y terminar agentes".
96
Inteligencia Artificial I Pagina Nro 97
El problema de interferencia resulta cuando un agente realiza una accin que invalida
las suposiciones hechas por otro; sto significa que cuando los agentes interactan, no
todos los entrelazados son igualmente aceptables: algunos de ellos pueden causar
algunos problemas como "el abrazo mortal", que se da cuando todos los agentes estn
esperando un recurso que otro agente tiene (deadlock); o bien el posponer
indefinidamente, en el cual un agente es relegado de forma tal que nunca se le da el
recurso que requiere (starvation).
Por las razones anteriores es importante especificar el comportamiento de las acciones
concurrentes de los agentes. Se describen algunos de los formalismos usados para
especificar los agentes y la concurrencia en las acciones ejecutadas por ellos.
Lenguaje de especificacin Z
En el lenguaje Z un tipo de dato bsico no tiene estructura y no se dan detalles acerca
de
como el dato podra ser implementado. Los tipos de datos bsicos son escritos en
maysculas por convencin. ejemplo: [BOOK, CATALOGNUM, STRING]
Frecuentemente es muy til abreviar las definiciones de tipos, por ejemplo,
Bundle==P BOOK, donde la P indica el conjunto potencia de todos los BOOKs.
Las funciones y variables pueden declararse como axiomticas por definicin. En ese
caso,
las funciones y variables se declaran arriba de la lnea horizontal, abajo de la lnea se
dan las restricciones impuestas.
Ejemplo: donde titleOf es una funcin en la que cada BOOK se mapea a un STRING y
el nmero de elementos en el dominio de la funcin es mayor o igual a la cardinalidad
del rango.
Los esquemas son utilizados para especificar composiciones de tipos bsicos similar a
los registros. El nombre del esquema aparece en la parte superior.
Para una introduccin ms completa refirase a [Spivey 89]
En [Goodwin 93] se utiliza el lenguaje de especificacin Z como un marco para describir
agentes, las tareas entre ellos, y el ambiente en que se desenvuelven. Por ejemplo para
especificar una tarea (TASK) se propone el siguiente esquema:
Los agentes que forman un sistema pueden colaborar entre ellos para alcanzar sus
tareas respectivas. Dicha colaboracin se realiza mediante un lenguaje de
comunicacin comprensible por los agentes del sistema y por otros programas, si es
necesario. En contraste con un objeto convencional que ejecuta mtodos de otro
objeto siempre que tenga permiso, un agente puede rechazar una peticin de otro
agente, por lo que deben ser capaces de hablar entre s, para decidir qu accin
realizar o qu datos obtener [11].
Histricamente, la comunicacin entre agentes de un sistema se realizaba mediante
lenguajes propios de cada vendedor, impidiendo la comprensin entre los agentes de
sistemas heterogneos, con una semntica informal y con poca autonoma.
A principios de los aos 80, el DARPA estadounidense desarroll el Knowledge Query
Management Language (KQML) [iv], que pretenda convertirse en una norma para la
comunicacin entre agentes. Dicho lenguaje incluye muchas primitivas llamadas
ejecutivas que definen las operaciones que un agente realiza en su comunicacin con
cualquier otro. Adems, un entorno KQML puede enriquecerse con agentes especiales
llamados facilitantes que proveen funciones adicionales como servicio de nombres [8].
97
Inteligencia Artificial I Pagina Nro 98
Parmetros de un mensaje
Parmetros Significado
:sender Identifica unvocamente al agente que enva el acto
comunicativo
:receiver Indica la identidad del agente(s) receptor(es) ( punto-a
punto, multicast)
:content Contenido del mensaje, debe expresar el tipo de dato de la
accin
:reply-with Expresin que identifica el mensaje, para usarla en la
respuesta
:in-replay-to Identifica el mensaje al que se responde
98
Inteligencia Artificial I Pagina Nro 99
2.- El agente j pide al agente i que le enve propuestas para vender 50 cajas de peras
(cfp
: sender (agent-identifier :name j)
: receiver (set (agent-identifier :name i))
: content
(action (agent-identifier :name i)
(vender peras 50))
(any ?x (and (= (precio pera) ?x) (< ?x 10) ) ) )
: ontology mercado-frutas)
99
Inteligencia Artificial I Pagina Nro 100
100
Inteligencia Artificial I Pagina Nro 101
El proceso para transferir un agente de un sistema a otro se realiza en tres fases [1]:
Iniciacin de la transferencia.
El agente identifica el destino deseado, realiza una peticin de viaje al sistema y si es
aceptada recibe el permiso para ejecutar la transferencia.
El sistema suspende la ejecucin del agente e identifica el estado y las partes del
agente que sern enviadas.
Se realiza la conversin en serie del cdigo y del estado del agente (seriacin) y se
codifica segn el protocolo establecido.
El sistema hace la autenticacin del agente.
Se realiza la transferencia.
Recepcin del agente.
El sistema destinatario acredita al cliente.
Se realiza la descodificacin del agente y la conversin de serie a cdigo y estado del
agente (diseriacin).
El sistema crea la instancia del agente, restaura su estado y contina la ejecucin.
Transferencia de otras clases (slo en sistemas orientados a objetos).
Este proceso es necesario cuando el agente se mueve de un sistema a otro, cuando el
agente se crea remotamente o cuando necesita otros objetos. La trasnferencia de las
clases puede realizarse completamente junto con el viaje del agente o hacer peticiones
de carga cuando sea preciso.
101
Inteligencia Artificial I Pagina Nro 102
Los sistemas no siguen la misma norma, pero puede realizarse una comunicacin local (fig. 2.2): en el
ordenador destino existe otro sistema de agentes (C) compatible con el sistema origen (A), el agente se
desplaza al sistema compatible y realiza la comunicacin RPC por ejemplo con el otro agente.
Los sistemas no son compatibles y no puede alcanzarse la propiedad de localidad (fig. 2.3): debe realizarse
una comunicacin normal entre los agentes.
102
Inteligencia Artificial I Pagina Nro 103
8.3. Seguridad.
El control de la seguridad es un grave problema, ya que un agente es un programa que
viaja de un ordenador a otro, al igual que un virus. Los sistemas deben hacer hincapi
en la seguridad de los ordenadores y de la propia agencia. Los aspectos de seguridad
tpicos que deben ser controlados son [4]:
Proteccin de la mquina contra los agentes.
Proteccin contra otros agentes.
Proteccin de los agentes contra la mquina
Proteccin de la red.
Los ataques ms comunes que pueden realizarse a un sistema de agentes mviles son:
Inundar el sistema con peticiones, tanto legales como ilegales.
Escuchar la red para obtener informacin privada.
Modificar, borrar o sustituir cualquier elemento transferido por la red.
Grabar y retransmitir ilegalmente una comunicacin.
Falsificar la identidad enmascaramiento de un agente o sistema de agentes para
tener acceso a la informacin o a ciertos servicios.
Utilizacin abusiva de algn recurso para que no pueda ser utilizado por otro usuario.
Colocar un Caballo de Troya agente o sistema de agentes para recibir informacin
confidencial o denegar acceso a los recursos.
103
Inteligencia Artificial I Pagina Nro 104
Aunque hay una gran variedad de polticas de seguridad que pueden utilizarse para
evitar los ataques, un proceso de comprobacin tpico antes de iniciarse el viaje de un
agente incluye los siguientes aspectos [4]:
El sistema debe verificar la autoridad propietaria del agente.
Durante la creacin de la peticin, el propietario define las preferencias de seguridad
para el agente.
Al crearse la instancia del agente, se incluye informacin sobre su autoridad y la de su
sistema.
El sistema origen codifica la informacin.
Los sistemas origen y destino crean un canal de comunicaciones seguro.
El sistema destino descodifica la informacin y realiza las comprobaciones necesarias.
Por ltimo recordaremos que al contrario que un objeto normal un agente tiene la
potestad de restringir o permitir a otros agentes el acceso a sus mtodos, a sus datos o
a los recursos que controla, segn su comportamiento o sus objetivos.
104
Inteligencia Artificial I Pagina Nro 105
Basadas en lgica
La aproximacion tradicional para construir agentes inteligentes sugiere que el
comportamiento inteligente puede ser generado en un sistema dando una
representacion simbolica del entorno y un comportamiendo deseado.
La idea es que el programador codifique las reglas deductivas y la base de
conocimiento de forma que al derivar se seleccione la mejor accin posible.
Arquitecturas reactivas
La arquitectura reactiva mas conocida es sin lugar a duda la arquitectura de
subsumpcin desarrollada por Rodney Brooks (MIT).
La arquitectura de Subsumpcin tiene como visin el aproximarse a conductas de alto
nivel (inteligentes) adoptando como modelos, organismos vivientes de bajo nivel (por
ejemplo insectos), y desarrollando as, entidades (robots) que evolucionarn en su
comportamiento, emulando patrones de conducta presentados por diversos organismos
vivientes. Brooks resalta algunos de los atributos de estos organismos vivientes; una
conexin cercana entre sus mecanismos de percepcin y actuacin y as mismo, la
posesin de ciertos patrones de conducta. La arquitectura de Subsumpcin proporciona
estas capacidades a travs de la implementacin de entidades simples con controles
descentralizados, representaciones no compartidas, y algunas otras caractersticas
ms.
Brooks concibe que la aproximacin hacia la Inteligencia Humana en las mquinas,
puede ser guiada por los mecanismos y fenmenos que se presentan en la evolucin de
las especies. Afirma que se deben concebir primero inteligencias simples y
gradualmente intentar la concepcin de conductas ms complejas.
Esta arquitectura defiende la posibilidad de que un comportamiento inteligente emerja al
combinarse muchos comportamientos reactivos. Es decir, el agente se construye con un
determinado numero de funciones que responden de forma reactiva a circunstancias del
entorno de forma que la conjuncin de estas funciones dotan al agente de un
comportamiento inteligente desde el punto de vista del observador.
105
Inteligencia Artificial I Pagina Nro 106
BDI (Conocimiento-deseo-intencin)
En una arquitectura BDI, el estado del agente se representa mediante tres estructuras:
su conocimiento, sus deseos y sus intenciones. El conocimiento de un agente son su
modelo del entorno, sus deseos proporcionan cierto orden entre los estados y las
intenciones son las cosas que decide hacer.
Las intenciones de uno de estos agentes pueden ser definidas desde varios niveles de
abstraccion; por ejemplo, un agente puede intentar comprar un libro en particular, pero
no ha decidido todavia en que libreria lo comprar.
Un agente BDI redefine gradualmente sus intenciones para poder ejecutar acciones
primitivas. Segun [RAO92] un agente BDI realiza las siguientes funciones:
General una lista de opciones. Estas opciones son formas de satisfacer las intenciones
actuales y nuevas opciones generadas partiendo del conocimiento y deseos del agente.
Seleccionar un conjunto de estas opciones para adoptarlas. La seleccion se realiza
generalmente basandose en el conocimiento, deseos e intenciones actuales del agente.
Estas opciones se convierten pues en nuevas intenciones.
Si existe una accin atmica que puede ser realizada dentro de la nueva estructura de
intenciones se ejecuta.
Entonces, si el agente ha satisfecho una intencin o decide que una intencin no va a
poder seguir siendo satisfecha, esta intencin se descarta.
Se actualiza el conocimiento del agente y se repite desde el paso 1.
106
Inteligencia Artificial I Pagina Nro 107
107
Inteligencia Artificial I Pagina Nro 108
108
Inteligencia Artificial I Pagina Nro 109
LECTURAS COMPLEMENTARIAS
UNIDAD 1 INTRODUCCION A LA
INTELIGENCIA ARTIFICIAL
109
Inteligencia Artificial I Pagina Nro 110
110
Inteligencia Artificial I Pagina Nro 111
TRABAJOS DE EXPOSICION
1. AGENTES MOVILES
2. REDES NEURONALES
3. LOGICA DIFUSA
4. LENGUAJE NATURAL
5. ROBOTICA
6. MINERIA DE DATOS
7. SISTEMAS EXPERTOS
8. ALGORITMOS GENETICOS
111
Inteligencia Artificial I Pagina Nro 112
IV. BIBLIOGRAFA
V. GLOSARIO
- BASE DE REGLAS:Un conjunto de frmulas lgicas que describen las relaciones o las
funciones del mundo real, tales como se usan en muchos programas de inteligencia
artificial como, por ejemplo, los de sistemas expertos para ejecutar inferencias. Cada
112
Inteligencia Artificial I Pagina Nro 113
regla de la base de reglas es una proposicin lgica, aunque puede adoptar la forma
exigida por uno cualquiera de los diversos formatos en uso.
113
Inteligencia Artificial I Pagina Nro 114
114
Inteligencia Artificial I Pagina Nro 115
115
Inteligencia Artificial I Pagina Nro 116
116
Inteligencia Artificial I Pagina Nro 117
117
Inteligencia Artificial I Pagina Nro 118
118