2. Inteligencia Artificial.
PRIMERA UNIDAD:
GENERALIDADES EN INTELIGENCIA ARTIFICIAL.
1.1 Concepto de Inteligencia Artificial.
1.2 Alcance de la Inteligencia Artificial.
a) Percepción
b) Sistemas expertos.
c) Hardware (Memoria, rapidez y arquitectura)
d) Robótica (Automatización).
e) Cibernética (Interdisciplina para control de automatización)
1.3 Algunos programas de la Inteligencia Artificial.
a) Eliza.
b) Mycin
c) Dendral
1.4 El proyecto Japonés de la Quinta Generación.
1.1. INTRODUCCIÓN.
En primer lugar, revisemos algunas definiciones generales de inteligencia, antes de intentar definir
inteligencia artificial. Inteligencia es la aptitud de crear relaciones. Esta creación puede darse de
manera puramente sensorial, como en la inteligencia animal; también puede darse de manera
intelectual, como en el ser humano, que pone en juego el lenguaje y los conceptos. También se la
puede conceptuar como la habilidad para adquirir, comprender y aplicar conocimiento; o como la
aptitud para recordar, pensar y razonar.
La IA es una nueva generación de tecnología informática, caracterizada no sólo por su arquitectura
(hardware), sino también por sus capacidades. El énfasis de generaciones previas fue en las
computaciones numéricas para aplicaciones científicas o de negocios. La nueva generación de
tecnología informática incluye además la manipulación simbólica, con el objetivo de emular el
comportamiento inteligente; y, la computación en paralelo, para tratar de conseguir resultados
prácticamente en tiempo real. La capacidad predominante de la nueva generación, también
conocida como la Quinta Generación, es la habilidad de emular (y tal vez en algunos casos
superar) ciertas funciones inteligentes del ser humano. Por ejemplo:
Aprendizaje: Captación automática de conocimientos.
Razonamiento:
• Sistemas basados en conocimientos.
• Bases de datos inteligentes.
• Prueba de teoremas y juegos.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
3. Inteligencia Artificial.
Percepción:
• Comprensión de lenguaje natural.
• Interpretación de escenas visuales (Visión por computadora).
Locomoción y Manipulación: Realizar procesos mecánicos y tareas manuales (Robótica).
Creación: Generación, verificación, depuración y optimización automática de programas.
Algunas de las tareas que estos sistemas realizan en el campo de la IA son:
Tareas generales
• Percepción: Visión, Fonemas.
• Lenguaje Natural: Comprensión, generación y traducción.
• Razonamiento de sentido común.
• Control de robots.
Tareas formales
• Juegos: Ajedrez, Backgammon, Damas.
• Matemáticas: Geometría, Lógica, Cálculo Integral.
Tareas expertas
• Ingeniería: Diseño, Localización de fallas, Planeamiento.
• Análisis Científico.
• Diagnóstico Médico.
• Análisis Financiero.
La inteligencia artificial, en su sentido más amplio, indica la capacidad de un artefacto de
realizar los mismos tipos de funciones que caracterizan al pensamiento humano. La
posibilidad de desarrollar un artefacto así ha despertado la curiosidad del ser humano desde
la antigüedad; sin embargo, no fue hasta la segunda mitad del siglo XX, cuando esa
posibilidad se materializó en herramientas tangibles.
La Inteligencia Artificial comenzó como el resultado de la investigación en psicología
cognitiva y lógica matemática. Se ha enfocado sobre la explicación del trabajo mental y
construcción de algoritmos de solución a problemas de propósito general. Punto de vista
que favorece la abstracción y la generalidad.
El término inteligencia artificial (IA) fue acuñado en 1956 por John McCarthy, del Instituto
de Tecnología de Massachussets. En ese año se celebró la conferencia de Dartmouth, en
Hanover (Estados Unidos), y en ella, McCarthy, Marvin Minsky, Nathaniel Rochester y
Claude E. Shannon establecieron las bases de la inteligencia artificial como un campo
independiente dentro de la informática. Previamente, en 1950, Alan M. Turing había
publicado un artículo en la revista Mind, titulado “Computing Machinery and Intelligence”
(“Ordenador e inteligencia”), en el que reflexionaba sobre el concepto de inteligencia
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
4. Inteligencia Artificial.
artificial y establecía lo que luego se conocería como el test de Turing, una prueba que
permite determinar si un ordenador o computadora se comporta conforme a lo que se
entiende como artificialmente inteligente o no.
Con el avance de la ciencia moderna la búsqueda de la IA ha tomado dos caminos
fundamentales: la investigación psicológica y fisiológica de la naturaleza del pensamiento
humano, y el desarrollo tecnológico de sistemas informáticos cada vez más complejos.
La Inteligencia Artificial es una combinación de la ciencia del computador, fisiología y
filosofía, tan general y amplio como eso, es que reúne varios campos (robótica, sistemas
expertos, por ejemplo), todos los cuales tienen en común la creación de máquinas que
pueden "pensar".
La idea de construir una máquina que pueda ejecutar tareas percibidas como requerimientos
de inteligencia humana es un atractivo. Las tareas que han sido estudiadas desde este punto
de vista incluyen juegos, traducción de idiomas, comprensión de idiomas, diagnóstico de
fallas, robótica, suministro de asesoría experta en diversos temas.
Es así como los sistemas de administración de base de datos cada vez más sofisticados, la
estructura de datos y el desarrollo de algoritmos de inserción, borrado y locación de datos,
así como el intento de crear máquinas capaces de realizar tareas que son pensadas como
típicas del ámbito de la inteligencia humana, acuñaron el término Inteligencia Artificial en
1956.
Trabajos teóricos fundamentales fueron el desarrollo de algoritmos matemáticos por
Warren McCullock y Walter Pitts, en 1943, necesarios para posibilitar el trabajo de
clasificación, o funcionamiento en sentido general, de una red neuronal. En 1949 Donald
Hebb desarrolló un algoritmo de aprendizaje para dichas redes neuronales creando, en
conjunto con los trabajos de McCullock y Pitts, la escuela creacionista. Esta escuela se
considera hoy como el origen de la Inteligencia Artificial, sin embargo se trató poco por
muchos años, dando paso al razonamiento simbólico basado en reglas de producción, lo
que se conoce como sistemas expertos.
En este sentido, el término IA se ha aplicado a sistemas y programas informáticos capaces
de realizar tareas complejas, simulando el funcionamiento del pensamiento humano,
aunque todavía muy lejos de éste. En esta esfera los campos de investigación más
importantes son el procesamiento de la información, el reconocimiento de modelos, los
juegos y las áreas aplicadas, como el diagnóstico médico. Un ejemplo de los logros
alcanzados fue la partida de ajedrez que el superordenador de IBM denominado Deep Blue
ganó, en mayo de 1997, al campeón del mundo Gari Kaspárov.
Algunas áreas de la investigación actual del procesamiento de la información están
centradas en programas que permiten a un ordenador o computadora comprender la
información escrita o hablada, y generar resúmenes, responder a preguntas específicas o
redistribuir datos a los usuarios interesados en determinados sectores de esta información.
En esos programas es esencial la capacidad del sistema de generar frases gramaticalmente
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
5. Inteligencia Artificial.
correctas y de establecer vínculos entre palabras e ideas. La investigación ha demostrado
que mientras que la lógica de la estructura del lenguaje, su sintaxis, está relacionada con la
programación, el problema del significado, o semántica, es mucho más profundo, y va en la
dirección de una auténtica inteligencia artificial.
Actualmente existen dos tendencias en cuanto al desarrollo de sistemas de IA: los sistemas
expertos y las redes neuronales. Los sistemas expertos intentan reproducir el razonamiento
humano de forma simbólica. Las redes neuronales lo hacen desde una perspectiva más
biológica (recrean la estructura de un cerebro humano mediante algoritmos genéticos). A
pesar de la complejidad de ambos sistemas los resultados distan mucho de un auténtico
pensamiento inteligente.
Muchos científicos se muestran escépticos acerca de la posibilidad de que alguna vez se
pueda desarrollar una verdadera IA. El funcionamiento de la mente humana todavía no ha
llegado a conocerse en profundidad y, en consecuencia, el diseño informático seguirá
siendo esencialmente incapaz de reproducir esos procesos desconocidos y complejos.
La metáfora entre mente y computadora se ha ampliado y madurado.
Existe mecanismos o procesos básicos; sean comunes a actividades y comportamientos tan
variados como:
Resolver un problema en general matemático, financiero,...
Descubrir una estructura de pensamiento.
Ir de casa a la oficina.
Jugar al ajedrez.
Otras actividades del pensamiento que habitualmente se reconoce que requieren
inteligencia.
La existencia de otros mecanismos
Confirmación del funcionamiento de la inteligencia.
Detección de la inteligencia.
Entendimiento de la inteligencia.
La confluencia de IA con la sicología cognitiva.
El conocimiento que se tenga de la inteligencia y el aprendizaje, será alguna vez
suficiente para que sirva de ayuda en la construcción de modelos mentales (Ej.: el
conocimiento de la aeronáutica ayuda a construir aviones.)
Estudiase el acto de aprender --> en las personas el aprendizaje parece estar
íntimamente ligado al crecimiento de la estructura física del cerebro.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
6. Inteligencia Artificial.
1.2. CRONOLOGÍA DE LA IA.
La inteligencia artificial es el estudio de la inteligencia como computación (Hayes.)
Es la ciencia de hacer máquinas que hacen cosas que, realizadas por el hombre,
requieran el uso de inteligencia (Minski.)
El estudio de las ideas que permiten a los ordenadores ser inteligentes (Winston.)
Conjunto de técnicas encaminadas al diseño y la construcción de sistemas
informáticos que exhiban algún aspecto de inteligencia (Luis Arranz.)
El nacimiento de la inteligencia artificial se refiere a la conferencia de Darwouth de
1956. Se reunieron ciertos investigadores de informática para intercambiar sus
ideas.
En 1957 aparece un programa que es el General Power Solver (GPS) desarrollado
por Newell, Shan y Simon que era un intento de hacer un programa que resolviera
problemas. Todo quedó en un fracaso.
En 1958 aparece un lenguaje llamado LISP de McCarthy.
En 1961 aparece un programa para jugar a las damas (Samel) que además era capaz
de aprender cuantas más partidas ganaba.
En 1965 se comienza a desarrollar DENTRAL, que es un sistema experto
relacionado con la química y es el primer S.E. (Sistema Experto.)
En 1966 aparece un programa de ajedrez creado por Greunblat.
En 1968 aparece un robot denominado SHAKEY con movimientos muy torpes.
En el 69 aparecen otros sistemas expertos: PROSPECTOR (yacimientos minerales),
MYCIN (enfermedades infecciosas.)
En 1975 aparece PROLOG (Colmenawer.)
1981: Conferencia de Tokyo
MITI Robot
Superordenadores
Quinta generación
MCC (Microelectronics and Computer technology Corporation)
SCS (Strategic Computing and Survivability)
MCNC (Microelectronics Center of Nort Carolina)
Proyecto “Guerra de las galaxias”
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
7. Inteligencia Artificial.
1.3. CONCEPTO DE INTELIGENCIA ARTIFICIAL.
No existe una definición para la IA que tenga una aceptación general, lo cual no es de
extrañar ya que tampoco ha existido nunca una definición universalmente aceptada de la
inteligencia humana. De las muchas definiciones de IA existentes tenemos:
Inteligencia Artificial
1. “La interesante tarea de lograr que las computadoras piensen... maquinas con
mentes, en su amplio sentido.” (Haugeland, 1985.)
2. Disciplina científico-técnica que trata de crear sistemas artificiales capaces de
comportamientos que, de ser realizados por seres humanos, se diría que requieren
inteligencia.
3. “La automatización de actividades que vinculamos con procesos de pensamiento
humano, actividades tales como toma de decisiones, resolución de problemas,
aprendizaje...” (Bellman, 1978.)
4. “El estudio de las facultades mentales mediante el uso de modelos
computacionales”. (Charniak y McDermott, 1985.)
5. “El estudio de los cálculos que permiten percibir, razonar y actuar”. (Winston,
1992.)
6. Estudio de los mecanismos de la inteligencia y las tecnologías que lo sustentan.
(Newell)
7. “El arte con crear máquinas con capacidad de realizar funciones que al realizadas
por personas requieren de inteligencia”. (Kurzweil, 1990.)
8. “El estudio de cómo lograr que las computadoras realicen tareas que, por el
momento, los humanos hacen”. (Rich y Knight, 1991.)
9. “Un campo de estudio que se enfoca a la explicación y emulación de la conducta
inteligente en función de procesos computacionales”. (Schalkoff, 1990.)
10. “La rama de la ciencia de la computación que se ocupa de la automatización de la
conducta inteligente”. (Luger y Stubblefield, 1993).
Las primeras cinco definiciones se refieren a procesos mentales y al razonamiento, mientras
que las ultimas cinco a la conducta. La 1, 3, 5 y 7 miden la condición deseable en función
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
8. Inteligencia Artificial.
de eficiencia humana, y las 3, 4, 8, y 9 lo hacen en conformidad con un concepto de
inteligencia ideal (racionalidad.)
Desde sus comienzos hasta la actualidad, la Inteligencia Artificial ha tenido que hacer
frente a una serie de problemas:
• Los computadores no pueden manejar (no contienen) verdaderos significados.
• Los computadores no tienen autoconciencia (emociones, sociabilidad, etc.).
• Un computador sólo puede hacer aquello para lo que está programado.
• Las máquinas no pueden pensar realmente.
Los esfuerzos de la Inteligencia Artificial (IA) están encaminados tanto a la construcción de
entidades inteligentes como a su comprensión.
En 1843, Lady Ada Augusta Byron, patrocinadora de Charles Babbage planteó el asunto de
si la máquina de Babbage podía "pensar".
Los primeros problemas que se trató de resolver fueron puzzles, juegos de ajedrez,
traducción de textos a otro idioma.
Durante la II Guerra Mundial Norbert Wiener y John Von Neumann establecieron los
principios de la cibernética en relación con la realización de decisiones complejas y control
de funciones en máquinas.
La teoría de la retroalimentación en mecanismos, como por ejemplo un termostato que
regula la temperatura en una casa, tuvo mucha influencia. Esto aún no era propiamente
Inteligencia Artificial. Se hizo mucho en traducciones (Andrew Booth y Warren Weaver),
lo que sembró la semilla hacia el entendimiento del lenguaje natural.
En el año 1955 Herbert Simon, el físico Allen Newell y J.C. Shaw, programador de la
RAND Corp. y compañero de Newell, desarrolla el primer lenguaje de programación
orientado a la resolución de problemas de la Inteligencia Artificial, el IPL-11. Un año más
tarde estos tres científicos desarrollan el primer programa de Inteligencia Artificial al que
llamaron Logic Theorist, el cual era capaz de demostrar teoremas matemáticos,
representando cada problema como un modelo de árbol, en el que se seguían ramas en
busca de la solución correcta, que resultó crucial. Este programa demostró 38 de los 52
teoremas del segundo capítulo de Principia Mathematica de Russel y Whitehead.
En 1956, con la ahora famosa conferencia de Dartmouth, organizada por John McCarthy y
en la cual se utilizó el nombre de inteligencia artificial para este nuevo campo, se separó la
Inteligencia Artificial de la ciencia del computador, como tal. Se estableció como
conclusión fundamental la posibilidad de simular inteligencia humana en una máquina.
En 1957 Newell y Simon continúan su trabajo con el desarrollo del General Problems
Solver (GPS). GPS era un sistema orientado a la resolución de problemas; a diferencia del
Logic Theorist, el cual se orientó a la demostración de teoremas matemáticos, GPS no
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
9. Inteligencia Artificial.
estaba programado para resolver problemas de un determinado tipo, razón a la cual debe su
nombre. Resuelve una gran cantidad de problemas de sentido común, como una extensión
del principio de retroalimentación de Wiener.
Diversos centros de investigación se establecieron, entre los más relevantes están, la
Universidad Carnegie Mellon, el Massachusetts Institute of Technologie (MIT),
encabezado por Marvin Minsky, la Universidad de Standford e IBM. Los temas
fundamentales eran el desarrollo de heurísticas y el aprendizaje de máquinas.
En 1957 McCarthy desarrolló el lenguaje LISP. La IBM contrató un equipo para la
investigación en esa área y el gobierno de USA aportó dinero al MIT también para
investigación en 1963.
A finales de los años 50 y comienzos de la década del 60 se desarrolla un programa
orientado a la lectura de oraciones en inglés y la extracción de conclusiones a partir de su
interpretación, al cual su autor, Robert K. Lindsay, denomina "Sad Sam". Este podía leer
oraciones del tipo "Jim es hermano de John" y "La madre de Jim es Mary", a partir de ella
el sistema concluía que Mary debía ser también la madre de John. Este sistema representó
un enorme paso de avance en la simulación de inteligencia humana por una máquina, pues
era capaz de tomar una pieza de información, interpretarla, relacionarla con información
anteriormente almacenada, analizarla y sacar conclusiones lógicas.
En el mismo período de tiempo hay trabajos importantes de Herbert Gelernter, de IBM,
quien desarrolla un "Demostrador Automático de Teoremas de la Geometría", Alex
Bernstein desarrolla un programa para el juego de ajedrez que se considera el antecedente
para "Deep Blue".
En 1961 se desarrolla SAINT (Simbolic Automatic INTegrator) por James Slagle el cual se
orienta a la demostración simbólica en el área del álgebra.
En 1964 Bertrand Raphael construye el sistema SIR (Semantic Information Retrieval) el
cual era capaz de comprender oraciones en inglés.
Formalmente la IA inicia como disciplina en 1956.
En la década del 60 se comienza en el MIT el estudio de la visión artificial, lo cual implica
no solo captar imágenes a través de una cámara, sino también la comprensión, de lo que
estas imágenes representan.
Un resultado importante en este trabajo lo constituye el "mundo de micro-bloques", en el
cual un robot era capaz de percibir un conjunto de bloques sobre una mesa, moverlos y
apilarlos; el éxito se debió a los investigadores Larry Roberts, Gerald Sussman, Adolfo
Guzman, Max Clowes, David Huffman, David Waltz, Patrick Winston, y Berthold Horn.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
10. Inteligencia Artificial.
Posteriormente se obtuvieron resultados importantes entre ellos el de mayor resonancia fue
el sistema SCHRDLU de Terry Winograd, pues permitía interrogar y dar órdenes a un
robot que se movía dentro de un mundo de bloques.
En los primeros años de la década del 60 Frank Rosemblatt desarrolla, en la Universidad de
Cornell, un modelo de la mente humana a través de una red neuronal y produce un primer
resultado al cual llama perceptrón. Este sistema era una extensión del modelo matemático
concebido por McCullock y Pitts para las neuronas, y funcionaba basándose en el principio
de "disparar" o activar neuronas a partir de un valor de entrada el cual modifica un peso
asociado a la neurona, si el peso resultante sobrepasa un cierto umbral la neurona se dispara
y pasa la señal a aquellas con las que está conectada. Al final, en la última capa de
neuronas, aquellas que se activen definirán un patrón el cual sirve para clasificar la entrada
inicial.
Este trabajo constituye la base de las redes neuronales de hoy en día, sin embargo a raíz de
su desarrollo sufrió fuertes críticas por parte de Marvin Minsky y Seymour Papert lo cual
provocó que la mayoría de los investigadores interesados en el tema lo abandonarán, y este
no se retomara hasta los años 80.
En 1965-70, comenzaron a aparecer los programas expertos, que predicen la probabilidad
de una solución bajo un set de condiciones, entre esos proyectos estuvo: DENDRAL, que
asistía a químicos en estructuras químicas complejas euclidianas; MACSYMA, producto
que asistía a ingenieros y científicos en la solución de ecuaciones matemáticas complejas,
etc.
En la década 1970-80, creció el uso de sistemas expertos, muchas veces diseñados para
aplicaciones médicas y para problemas realmente muy complejos como MYCIN, que
asistió a médicos en el diagnóstico y tratamiento de infecciones en la sangre. Otros son:
R1/XCON, PIP, ABEL, CASNET, PUFF, INTERNIST/CADUCEUS, etc. Algunos
permanecen hasta hoy.
De 1975 en adelante, comienza la era de los lenguajes expertos (shells) como EMYCIN,
EXPERT, OPSS, etc. para luego tratar de que éstos sean más amigables y funcionales.
Las definiciones de Inteligencia Artificial son muchas, pero podría decirse que son
programas que realizan tareas que si fueran hechas por humanos se considerarían
inteligentes.
Estos programas obviamente corren en un computador y se usan, como por ejemplo, en
control robótico, comprensión de lenguajes naturales, procesamiento de imágenes basado
en conocimientos previos, estrategias de juegos, etc. reproduciendo la experiencia que un
humano adquiriría y de la forma en que un humano lo haría.
Para clasificar las máquinas como "pensantes", es necesario definir qué es inteligencia y
qué grado de inteligencia implica resolver problemas matemáticos complejos, hacer
generalizaciones o relaciones, percibir y comprender. Los estudios en las áreas del
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
11. Inteligencia Artificial.
aprendizaje, del lenguaje y de la percepción sensorial han ayudado a los científicos a definir
a una máquina inteligente. Importantes desafíos han sido tratar de imitar el comportamiento
del cerebro humano, con millones de neuronas y extrema complejidad.
DIFERENCIA ENTRE LA INTELIGENCIA NATURAL Y LA ARTIFICIAL
Atributos Inteligencia Inteligencia
Natural Artificial
Capacidad de usar detectores Alta Baja
Capacidad de ser creativo Alta Baja
Capacidad de aprender de la experiencia Alta Baja
Capacidad de adaptación Alta Baja
Capacidad de permitirse el costo de adquirir Alta Baja
experiencia
Capacidad de usar diversas fuentes de información Alta Alta
Capacidad de adquirir una gran cantidad de Alta Alta
información externa
Capacidad de realizar cálculos complejos Baja Alta
Capacidad de transferir información Baja Alta
Capacidad de hacer una serie de cálculos con rapidez y Baja Alta
exactitud
La IA tiene cuatro objetivos que alcanzar:
• Sistemas que piensan como humanos.
• Sistemas que actúan como humanos.
• Sistemas que piensan racionalmente.
• Sistemas que actúan racionalmente.
Desde el punto de vista de los objetivos, la IA puede considerarse en parte como ingeniería
y en parte como ciencia:
• Como ingeniería, el objetivo de la IA es resolver problemas reales, actuando como
un conjunto de ideas acerca de cómo representar y utilizar el conocimiento, y de
cómo desarrollar sistemas informáticos.
• Como ciencia, el objetivo de la IA es buscar la explicación de diversas clases de
inteligencia, a través de la representación del conocimiento y de la aplicación que se
da a éste en los sistemas informáticos desarrollados.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
12. Inteligencia Artificial.
Preguntas fundamentales de la IA.
1. ¿Cuales son las suposiciones subyacentes acerca de la inteligencia?
2. ¿Cuáles son las técnicas útiles para la resolución de problemas en IA?
3. ¿A qué nivel de detalle se trata de modelar la inteligencia humana?
4. ¿Cómo se puede saber que se ha tenido éxito en el desarrollo de un sistema inteligente?
La hipótesis del sistema físico de símbolos
Un sistema físico de símbolos está formado por un conjunto de entidades básicas (llamadas
símbolos), las cuales son patrones físicos que pueden ocurrir como componentes de otro
tipo de entidad llamada expresión o estructura de símbolos. Una estructura de símbolos está
compuesta de un número de instancias de símbolos, relacionados en alguna forma física.
Además de estas estructuras, el sistema también contiene una colección de procesos que
operan sobre las expresiones, para producir otras: procesos de creación, modificación,
reproducción y destrucción.
Un sistema físico de símbolos es una máquina que produce, a través del tiempo, una
colección evolutiva de estructuras de símbolos.
Hipótesis: Un sistema físico de símbolos tiene los medios necesarios y suficientes para
actuar en general de forma inteligente.
Importancia de la hipótesis
Representa una importante teoría acerca de la naturaleza de la inteligencia humana.
Constituye la base sobre la que se fundamenta la creencia de que es posible construir
programas que pueden realizar tareas inteligentes como las que hacen las personas.
Agentes Inteligentes.
Agente, del latín agere, es "el que hace". En el ámbito de
los negocios, un agente es "aquel que tiene por oficio
gestionar negocios ajenos".
¿Qué es un Agente Inteligente? Es todo aquello que puede
considerarse que percibe su ambiente mediante sensores y
que responde o actúa en tal ambiente por medio de
efectores. Es decir: "un tipo de programa informático que,
por encargo de un usuario u otro programa, realiza de
forma autónoma tareas que requieren cierto grado de inteligencia y aprendizaje".
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
13. Inteligencia Artificial.
El agente puede ser:
• Autónomo: Un agente autónomo es un sistema anidado y parte integrante de un
ambiente (environment) y que detecta o percibe (percepts) datos ambientales,
momento a momento, y actúa sobre él con la intención de usar (actions) esos datos
para su propia tarea (task) o agenda, afectando así lo que va a detectar en el futuro,
sin intervención de terceras partes (basado en Franklin y Greasser, 1996).
• Racional, que hace lo correcto, siendo "ideal" si hipoteticamente lo consigue del
todo.- inteligente, siendo aceptable cualquiera de las numerosas definiciones de
inteligencia, por ejemplo, capaz de aprender/adaptivo.
• Activo, o sea que tiene en cuenta la gama de acciones abiertas a la elección y sus
recompensas o penalidades.
• Pro-activo donde más allá de actuar en respuesta a su mundo, lo hace tomando la
iniciativa.
• Meta-intensivo (orientado a metas), que elige las acciones que lo conducen a la
meta, que intenta lograr prioritariamente.
• Modelo-intensivo, que tiene internalizado un cierto modelo del mundo y lo respeta
en sus acciones.
• Utilidad-intensivo, que se esfuerza por obtener un máximo de "felicidad".
• Social-intensivo o de comunicación, capaz de comunicarse en algun lenguaje de
comunicación para agentes comprensible para otros.
• De planificación, parecido al agente problema-intensivo (orientado a resolver
problemas y tomar decisiones)
• Softbot o sea robot basado en un software (como los robots bidimensionales de Beer
que mimetizan a un invertebrado).
• Reactivo cuando percibe perturbaciones en su mundo y responde a esa percepción
de una manera actualizada (adaptada).
• Reflejo o tropista, que responde de inmediato y en forma bien definida a un
tropismo, a una percepción alarmante o beneficiosa (así un agente para el
heliotropismo se orienta al Sol.)
La mayoría de los agentes poseen las siguientes tres características: comunicación,
inteligencia y autonomía.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
14. Inteligencia Artificial.
• Comunicación. El agente puede comunicarse con el usuario, con otros agentes y con
otros programas. Con el usuario se comunica con un interfaz amigable, mediante el
que personaliza sus preferencias. Algunos agentes permiten comunicarse en
lenguaje natural, algo típico de los chatbots.
• El grado de inteligencia varía mucho de unos agentes a otros, que suelen incorporar
módulos con tecnologías procedentes de la Inteligencia Artificial. Los más sencillos
se limitan a recoger las preferencias del usuario, quien debe personalizarlos. Un
ejemplo son los agentes inteligentes basados en tecnología de redes neuronales
especializados en identificar mensajes de correo electrónico sospechosos de
contener spam -mensajes no deseados-. En una primera fase el usuario debe
marcarlos como spam, el agente va aprendiendo a identificar los rasgos que
caracterizan a estos mensajes y posteriormente los filtra.
• Autonomía. Un agente no sólo debe ser capaz de hacer sugerencias al usuario sino
de actuar. En el ejemplo anterior, el agente que filtra el spam no puede estar
continuamente alertando al usuario en cada mensaje de correo que llega sobre la
posibilidad de que sea un mensaje no deseado y su verdadera utilidad surge cuando
elimina de forma autónoma dichos mensajes.
Ejemplos de agentes.
• Representante virtual.
• Asistentes personales (Agentes, Asistentes Financieros, Auditores.)
• Negociadores de mercados electrónicos (subastas.)
• Agentes de búsquedas de información o rastreadores de información solicitada
(Maimai, Googlealert, Copernic, Spypress, Tracerlook, Trademarkboots, Google
News.)
• Agente secreto espía, para monitorear páginas web previamente identificadas por el
usuario e informa sobre cambios en dicha página (Changedetection, Spyweb.)
En general no se trabaja con agentes aislados sino con sistemas multi-agente, como lo
ilustra la figura.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
15. Inteligencia Artificial.
De manera intrínseca, los sistemas multiagentes tienen las ventajas tradicionales en la
solución de problemas concurrente y distribuido, además de incorporar patrones de
interacción sofisticados:
• Cooperación: Trabajan juntos hacia un propósito común.
• Coordinación: Organizan las actividades para solución de problemas, de tal forma
que las interacciones dañinas (en conflicto muto) sean evitadas; y las interacciones
benéficas sean explotadas.
• Negociación: Llegan a acuerdos aceptables por todas las partes involucradas
Practique con el agente inteligente de inversiones diligentdingo.
(http://www.diligentdingo.com/DDingoLatest.exe)
Existen cuatro programas de agentes:
1. Agente de reflejo simple.
2. Agente bien informado de todo lo que pasa.
3. Agentes basados en metas.
4. Agentes basados en utilidad.
Los ambientes poseen las siguientes propiedades:
1. Accesibles y no accesibles: Si el aparato sensorial de un agente le permite tener
acceso al estado total de un ambiente, se dice que este es accesible a tal agente.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
16. Inteligencia Artificial.
2. Determinísticos y no determinísticos: Si el estado siguiente de un ambiente se
determina completamente mediante el estado actual y las acciones escogidas por
los agentes, se dice que el ambiente es determinista.
3. Episódicos y no episódicos: La experiencia del agente se divide en episodios.
Cada episodio consta de una gente que percibe y actúa, la calidad de su actuación
dependerá del episodio mismo (Para los ambientes episódicos).
4. Estáticos y dinámicos: Si existe la posibilidad de que el ambiente sufra
modificaciones mientras el agente se encuentra deliberando se dice que el ambiente
se comporta en forma dinámica en relación con el agente.
5. Discretos y continuos: Si existe una cantidad limitada de percepciones y acciones
distintas y claramente discernibles, se dice que el ambiente es discreto.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
17. Inteligencia Artificial.
1.4. ALCANCE DE LA INTELIGENCIA ARTIFICIAL.
Como se menciono anteriormente, no existe una definición universalmente aceptada de IA,
pero existen los procesos que generalmente pueden ser llamados IA si son programados en
una computadora. La lista no es exhaustiva, pero se abordan las áreas principales
a) Percepción:
Las maquinas serán capaces de reaccionar a su entorno e influenciarlo mediante sensores y
dispositivos de interacción con el exterior. Podemos señalar las percepciones de la vista, la
audición y el tacto. La visión ya se ha llevado a cabo en una escala limitada mediante
aparatos de televisión y dispositivos para la percepción de imágenes sintetizadores que
permiten al ordenador comunicarse mediante audición del lenguaje hablado en la salida y
no escrito como se ha hecho hasta ahora, con el uso de pantallas o impresoras. Algunos de
los progresos conseguidos con el desarrollo de circuitos integrados permitirán al
computados aceptar órdenes y datos especializados, también mediante la utilización del
lenguaje hablado.
b) Sistemas expertos. Sistema experto, tipo de programa de aplicación
informática que adopta decisiones o resuelve
problemas de un determinado campo, como las
finanzas o la medicina, utilizando los conocimientos y
las reglas analíticas definidas por los expertos en dicho
campo.
Para algunas personas los términos IA y sistemas expertos son sinónimos. Muchos de los
sistemas expertos existentes actualmente consisten en grandes bases de conocimientos,
creadas para almacenar la información de que se dispone expertos humanos en varios
campos y a las que se aplica una serie de reglas de manipulación expresadas en lenguajes
específicos. La diagnosis medica, la ingeniería química, la exploración geológica y el
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
18. Inteligencia Artificial.
diseño de computadoras han proporcionado material para el diseño de sistemas expertos de
gran éxito.
Con el nacimiento de la Revolución Industrial, muchas fábricas tuvieron gran aceptación
por la automatización de procesos repetitivos en la línea de ensamblaje. La automatización
Los sistemas expertos, tienen dos elementos básicos y separados, aunque relacionados: una
base de conocimientos y una máquina de deducción, o de inferencia. La base de conocimientos
proporciona hechos objetivos y reglas sobre el tema, mientras que la máquina de deducción
proporciona la capacidad de razonamiento que permite al sistema experto extraer conclusiones.
consiste, principalmente, en diseñar sistemas capaces de ejecutar tareas repetitivas hechas
por los hombres, y capaces de controlar operaciones sin la ayuda de un operador humano.
El término automatización también se utiliza para describir a los sistemas programables que
pueden operar independientemente del control humano. La mayoría de las industrias has
sido automatizadas o utilizan tecnología para automatizar algunas labores; en la industria de
la telefonía, marcación, transmisión y facturación esta completamente automatizados.
Pero no todas las industrias requieren el mismo grado de automatización. La agricultura es
una industria difícil de automatizar, y con esto se ha vuelto más mecanizada, esencialmente
en el procesamiento y empaque de comida. De manera similar, los doctores pueden dar
consulta asistiéndose en una computadora, pero finalmente el doctor, y no la computadora,
termina por dar el diagnóstico final al paciente.
Los robots comenzaron a aparecer en este proceso de automatización industrial hasta la
aparición de las computadoras en los 40’s. Estos robots computarizados, están equipados
con pequeños microprocesadores capaces de procesar la información que le proveen los
sensores externos y así es como el robot puede tomar cambiar o mantener una operación en
ejecución, a esto se le llama retroalimentación, y forma parte de la Cibernética. La
retroalimentación es esencial en cualquier mecanismo de control automático, ya que ayuda
a controlar los factores externos que le afecten en la correcta ejecución de sus operaciones
normales.
c) Hardware para la IA.
El diseño tradicional de hardware no ha conseguido alcanzar, en gran medida el fin
propuesto por la IA. Las técnicas de IA requieren acceso rápido a bancos de memoria,
enormes según los estándares tradicionales y, por tanto, las velocidades de proceso son
demasiado lentas para las aplicaciones más exigentes. La antigua idea de solucionar un
problema paso a paso mediante la ejecución de una secuencia de instrucciones esta
cediendo al paso a la idea del procesamiento en paralelo, en el cual un conjunto de
procesadores trabajan simultáneamente en la diferentes partes del problema.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
19. Inteligencia Artificial.
Según otros rumbos tomados se propone la inclusión de compiladores en hardware más que
en software, y la obtención de un microcódigo para procesadores en un lenguaje lógico
como el Prolog.
d) Robótica
La ciencia de la robótica implica diferentes técnicas de IA. La idea
de un robot "listo" con la capacidad de aprender por experiencia es
el tema central de teorías e investigaciones en IA. El robot debe ser
capaz de comunicarse en lenguaje natural y debe poder realizar tareas que requieran que el
equivalente a la iniciativa y la originalidad, esto implica que el robot debe llegar a realizar,
tras un periodo de aprendizaje cosas para las cuales no estaba inicialmente programado, a
diferencia de los robots que se utilizan actualmente en la aplicación industrial, los cuales no
son más que meros autómatas.
La idea global en la inteligencia artificial estuvo desacreditada durante varios años debido
parcialmente, al excesivo optimismo por parte de la primera teoría pero, mayormente
causado por la exageración y el sensacionalismo de algunos de sus divulgadores.
Los primeros robots creados en toda la historia de la humanidad, no tenían más que un solo
fin: entretener a sus dueños. Estos inventores se interesaban solamente en conceder los
deseos de entretener a quien le pedía construir el robot. Sin embargo, estos inventores se
comenzaron a dar cuenta de que los robots podían imitar movimientos humanos o de alguna
criatura viva. Estos movimientos pudieron ser mecanizados, y de esta manera, se podía
automatizar y mecanizar algunas de las labores más sencillas de aquellos tiempos.
El origen del desarrollo de la robótica, se basa en el empeño por
automatizar la mayoría de las operaciones en una fábrica; esto se remonta
al siglo XVII en la industria textil, donde se diseñaron telares que se
controlaban con tarjetas perforadas.
Isaac Asimov formuló sus geniales "Tres Leyes de la Robótica":
1. "Un robot no debe dañar a un ser humano o, por su inacción, dejar que un ser humano
sufra daño."
2. "Un robot debe obedecer las órdenes que le son dadas por un ser humano, excepto
cuando etas órdenes están en oposición con la primera Ley."
3. "Un robot debe proteger su propia existencia, hasta donde esta protección no esté en
conflicto con la primera o la segunda Leyes."
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
20. Inteligencia Artificial.
Cronología de la Robótica.
FECHA DESARROLLO
SigloXVIII. A mediados del J. de Vaucanson construyó varias muñecas mecánicas de tamaño
humano que ejecutaban piezas de música
1801 J. Jaquard invento su telar, que era una máquina programable para la urdimbre
1805 H. Maillardet construyó una muñeca mecánica capaz de hacer dibujos.
1946 El inventor americano G.C Devol desarrolló un dispositivo controlador que podía
registrar señales eléctricas por medio magnéticos y reproducirlas para accionar un
máquina mecánica. La patente estadounidense se emitió en 1952.
1951 Trabajo de desarrollo con teleoperadores (manipuladores de control remoto) para
manejar materiales radiactivos. Patente de Estados Unidos emitidas para Goertz
(1954) y Bergsland (1958).
1952 Una máquina prototipo de control numérico fue objetivo de demostración en el
Instituto Tecnológico de Massachusetts después de varios años de desarrollo. Un
lenguaje de programación de piezas denominado APT (Automatically Programmed
Tooling) se desarrolló posteriormente y se publicó en 1961.
1954 El inventor británico C. W. Kenward solicitó su patente para diseño de robot. Patente
británica emitida en 1957.
1954 G.C. Devol desarrolla diseños para Transferencia de artículos programada. Patente
emitida en Estados Unidos para el diseño en 1961.
1959 Se introdujo el primer robot comercial por Planet Corporation. estaba controlado por
interruptores de fin de carrera.
1960 Se introdujo el primer robot ‘Unimate’’, basada en la transferencia de articulaciones
programada de Devol. Utilizan los principios de control numérico para el control de
manipulador y era un robot de transmisión hidráulica.
1961 Un robot Unimate se instaló en la Ford Motors Company para atender una máquina
de fundición de troquel.
1966 Trallfa, una firma noruega, construyó e instaló un robot de pintura por pulverización.
1968 Un robot móvil llamado ‘Shakey’’ se desarrollo en SRI (standford Research Institute),
estaba provisto de una diversidad de sensores así como una cámara de visión y
sensores táctiles y podía desplazarse por el suelo.
1971 El ‘Standford Arm’’, un pequeño brazo de robot de accionamiento eléctrico, se
desarrolló en la Standford University.
1973 Se desarrolló en SRI el primer lenguaje de programación de robots del tipo de
computadora para la investigación con la denominación WAVE. Fue seguido por el
lenguaje AL en 1974. Los dos lenguajes se desarrollaron posteriormente en el
lenguaje VAL comercial para Unimation por Víctor Scheinman y Bruce Simano.
1974 ASEA introdujo el robot Irb6 de accionamiento completamente eléctrico.
1974 Kawasaki, bajo licencia de Unimation, instaló un robot para soldadura por arco para
estructuras de motocicletas.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
21. Inteligencia Artificial.
1974 Cincinnati Milacron introdujo el robot T3 con control por computadora.
1975 El robot ‘Sigma’’ de Olivetti se utilizó en operaciones de montaje, una de las
primitivas aplicaciones de la robótica al montaje.
1976 Un dispositivo de Remopte Center Compliance (RCC) para la inserción de piezas en
la línea de montaje se desarrolló en los laboratorios Charles Stark Draper Labs en
estados Unidos.
1978 El robot T3 de Cincinnati Milacron se adaptó y programó para realizar operaciones
de taladro y circulación de materiales en componentes de aviones, bajo el patrocinio
de Air Force ICAM (Integrated Computer- Aided Manufacturing).
1978 Se introdujo el robot PUMA (Programmable Universal Machine for Assambly) para
tareas de montaje por Unimation, basándose en diseños obtenidos en un estudio de
la General Motors.
1979 Desarrollo del robot tipo SCARA (Selective Compliance Arm for Robotic Assambly)
en la Universidad de Yamanashi en Japón para montaje. Varios robots SCARA
comerciales se introdujeron hacia 1981.
1980 Un sistema robótico de captación de recipientes fue objeto de demostración en la
Universidad de Rhode Island. Con el empleo de visión de máquina el sistema era
capaz de captar piezas en orientaciones aleatorias y posiciones fuera de un
recipiente.
1981 Se desarrolló en la Universidad de Carnegie- Mellon un robot de impulsión directa.
Utilizaba motores eléctricos situados en las articulaciones del manipula dor sin las
transmisiones mecánicas habituales empleadas en la mayoría de los robots.
1982 IBM introdujo el robot RS-1 para montaje, basado en varios años de desarrollo
interno. Se trata de un robot de estructura de caja que utiliza un brazo constituido por
tres dispositivos de deslizamiento ortogonales. El lenguaje del robot AML,
desarrollado por IBM, se introdujo también para programar el robot SR-1.
1983 Informe emitido por la investigación en Westinghouse Corp. bajo el patrocinio de
National Science Foundation sobre un sistema de montaje programable adaptable
(APAS), un proyecto piloto para una línea de montaje automatizada flexible con el
empleo de robots.
1984 Robots 8. La operación típica de estos sistemas permitía que se desarrollaran
programas de robots utilizando gráficos interactivos en una computadora personal y
luego se cargaban en el robot.
e) Cibernética.
La cibernética es una ciencia interdisciplinaria, tratando con sistemas de comunicación y
control sobre organismos vivos, máquinas u organizaciones. El término es una derivación
del vocablo griego kybernetes que significa gobernador o piloto, y fue aplicado por primera
vez en 1948 a la teoría del control de mecanismos por el matemático americano Norbet
Wiener.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
22. Inteligencia Artificial.
En el cuerpo humano, el cerebro y el sistema nervioso funcionan para coordinar la
información, la cual es utilizada para determinar el futuro curso de una acción; controlar los
mecanismos para la auto corrección en máquinas que sirven con un propósito similar. Este
principio es conocido como retroalimentación, el cual es fundamental en el concepto de
automatización.
La cibernética también se aplica al estudio de la psicología, servomecanismo, economía,
neuropsicología, ingeniería en sistemas y al estudio de sistemas sociales, el término
cibernética no es muy utilizado para describir por separado a un campo de estudio, y
muchas de las investigaciones en el campo ahora se centran en el estudio y diseño de redes
neuronales artificiales.
1.3 ALGUNOS PROGRAMAS DE IA.
a) El programa ELIZA
Casi cada publicación famosa en la IA menciona el programa ELIZA que fue escrito a
finales de los sesenta por el profesor Joseph Weizenbaum de Massachusetts Institute of
Technology (MIT). El programa fue diseñado como una ayuda al análisis del lenguaje y el
profesor J. W. Lo llamo así en honor a la muchacha que aparece en la obra de G. B. Shaw,
que comenzó como una vendedora callejera de flores y su vida se transformo cuando el
profesor de dicción le enseño a hablar un correcto ingles, quien asumió esta tarea como
parte de una apuesta.
Un elemento muy importante del mensaje de Shaw era que aunque Eliza continuaba siendo
la misma persona, con las misma virtudes y defectos antes y después de su transformación,
la gente la veía de un manera deferente, como una señorita bien vestida y con un acento
culto, en contraste con la desastrada vendedora de flores que hablaba de una forma vulgar.
Podemos obtener la moraleja de esta historia y observar que aunque un programa sea muy
complejo la computadora sigue siendo una acumulación inanimada de dispositivos
electrónicos y que, aunque algunos de los resultados puedan ser sorprendentes la maquina
es capaz de ejecutar únicamente las tareas para las cuales fue exactamente programada y
nada más.
b) El programa MYCIN
La especialización de cualquier actividad requiere un gran
conocimiento asociado. El proceso para poder practicar una cierta
actividad depende de la asimilación de este conocimiento.
Un conjunto de hechos constituyen una gran parte del conocimiento básico sobre un tema,
pero son igualmente importantes la destreza que se puede adquirir con la experiencia, las
ideas generales en algunos casos acerca de lo que es una buena practica y el arte de tomar
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
23. Inteligencia Artificial.
un decisión acertada basándose en información incompleta. Esto resulta tan importante para
el aprendizaje de cualquier materia o para que el estudiante de cualquier ciencia adquiera
los aspectos sutiles del tema, como aprender las premisas básicas.
En la creación de un sistema experto hay una parte bastante inmediata de codificación de
los hechos conocidos sobre un tema; la parte más difícil, conocida como modelación de la
maestría, consiste en la formulación y aplicación de reglas extraídas de la experiencia que
se posee en el tema. En cualquiera de los casos el sistema esta constituido por una base de
conocimientos que proporcionan los hechos y un motor de inferencia para desarrollar las
deducciones lógicas y tomar decisiones (algunas veces acompañadas de un porcentaje de
probabilidad acerca de la corrección de las deducciones), basadas en los hechos y reglas
conocidas.
El programa MYCIN publicado por E. Schortcliffe en 1976 es un sistema que diagnostica
enfermedades infecciosas, en particular infecciones sanguíneas. MYCIN lo usan médicos
en prácticas para obtener ayuda en sus diagnósticos, a su vez el sistema se actualiza con los
hechos y reglas de inferencia que proporcionan los especialistas.
c) El programa DENDRAL
DENDRAL es un programa experto de análisis químico y
se ha aplicado con mucho éxito en muchos lugares del mundo. DENDRAL soluciona un
problema de ingeniería química en tres fases. En primer lugar, el programa infiere cualquier
posible restricción sobre la solución basándose en el conocimiento que posee en su base de
datos. A continuación permite a los usuarios añadir cualquier otro tipo de restricción y
finalmente genera y comprueba una lista de posibles soluciones, que imprime en orden de
preferencia. DENDRAL se escribió originalmente en LIPS, pero ha sido reprogramado para
ser usado en varias maquinas diferentes de entre las que se destaca la implementación
realizada sobre un PDP-10 en Edimburgo. Este programa basado en la estrategia de
"planificar, generar y comprobar" se usa en las universidades y en las industrias de Estados
Unidos y en Europa y representa una de las aplicaciones prácticas de la IA que mas éxito ha
conseguido de entre las desarrolladas hasta la fecha.
1.5. EL PROYECTO JAPONÉS DE LA QUINTA
GENERACIÓN.
La investigación y el desarrollo japonés de nueva tecnología están dirigidos por la unión de
la industria y el gobierno en el instituto para la nueva generación de Tecnología de
computadoras (ICOT). La investigación se desarrolla principalmente en tres campos:
hardware, software y aplicaciones. Los investigadores en el campo del hardware están
concentrados en una arquitectura de computadoras que se caracteriza por la inferencia
secuencial, inferencia en paralelo y el desarrollo de maquinas para bases de datos afines.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
24. Inteligencia Artificial.
El grupo de software esta investigando sobre un lenguaje que sea el núcleo del proyecto,
esté incluye sistema operativo, lenguaje natural y representación del conocimiento. El
tercer grupo combina los resultados de los dos primeros grupos en la labor sobre sistemas
de gestión de bases de datos afines y sistemas expertos y para conseguir validar la teoría
propuestas por el resto del grupo.
En contraste en las aproximaciones que se han realizado en otras partes del mundo, los
japoneses están tratando de formular una nueva teoría unificada para todo el campo de
representación y procesamiento de la información. Ya hemos visto que existen numerosas
aproximaciones diferentes que pueden asimilarse a las diferentes ramas de la IA, pero solo
si se aceptan estas aproximaciones incluyéndolas en una estrategia global, el número de
opciones se reducirá y los japoneses creen que de este modo aumentarán las oportunidades
para lograr una estrategia global coherente.
El mayor logro desarrollado en los primeros cuatro años del proyecto ha sido una maquina
basada en el conocimiento y que ha sido llamada Delta que comprende un sistema de
inferencia, un sistema de conocimiento, un sistema de software y un sistema para el
desarrollo de prototipos de software.
Las maquinas para bases de datos afines tienen
acceso a algo así como unos 20 gigabytes de
almacenamiento y en las etapas iniciales se
encontraron algunos problemas debido al uso de
las maquinas convencionales que se basan en un
procesamiento secuencial y que se incluyeron
como compromiso con la reconocida necesidad
de efectuar un procesamiento en paralelo a gran
escala. Se estima que las maquinas de inferencia
que se necesitan al final del proyecto deberán
ser capaces de ejecutar 10 LIPS y esta potencia
de procesamiento sólo será proporcionada por el
equivalente de 1000 procesadores trabajando en
paralelo.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
25. Inteligencia Artificial.
SEGUNDA UNIDAD:
REPRESENTACIÓN DEL CONOCIMIENTO
2.1. Formalismos para la representación del conocimiento: listas y árboles, redes
semánticas, frames, scripts.
2.2. Fundamentos lógicos en inteligencia artificial: Lógica proposicional y de predicados.
Sistemas conjuntivos, Forma de Skolen
2.3.Inferencia
a) Reglas de producción.
b) Cláusulas de Horn.
Introducción.
Desde el punto de vista de ingeniería, la mayor parte del trabajo requerido para construir sistemas
de IA, está basado en el desarrollo de adecuadas representaciones de conocimiento y sus
correspondientes estrategias de manipulación. No se puede manipular conocimiento a menos
que esté adecuadamente representado. En consecuencia, las siguientes tres preguntas claves
pueden guiarnos en el estudio de la IA.
• ¿Qué es el conocimiento?
• ¿Cómo se puede representar el conocimiento?
• ¿Cómo se podría manipular el conocimiento?
A continuación, se dan respuestas parciales a estas preguntas planteadas. En los capítulos
posteriores se presenta un estudio más formal y detallado acerca del conocimiento, su
representación y manipulación.
Conocimiento
Puede ser definido como el conjunto de hechos y principios acumulados por la humanidad, o el
acto, hecho o estado de conocer. Es la familiaridad con el lenguaje, conceptos, procedimientos,
reglas, ideas, abstracciones, lugares, costumbres y asociaciones, unida a la habilidad de utilizar
estas nociones en forma efectiva para modelar diferentes aspectos del universo que nos rodea.
Los conceptos de conocimiento e inteligencia están íntimamente ligados. La inteligencia requiere
de la posesión y acceso al conocimiento. Conocimiento no debe ser confundido con datos o
información. El conocimiento incluye y requiere del uso de datos e información. Además, combina
relaciones, dependencias, y la noción del saber con datos e información.
A veces es también útil o más aun necesario distinguir entre conocimiento y otros términos como
creencia e hipótesis.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
26. Inteligencia Artificial.
Esencialmente, se define como creencia a toda expresión que tiene significado, que es coherente
y puede ser representada. En consecuencia una creencia puede ser verdadera o falsa. Hipótesis
se define como una creencia justificada que no se conoce sea verdadera. Una hipótesis es una
creencia que está respaldada por cierta evidencia, pero todavía puede resultar falsa. Finalmente,
se puede también decir que conocimiento es una creencia justificada como verdadera.
Otros términos relacionados con el conocimiento y que son ocasionalmente empleados son
epistemología y metaconocimiento. Epistemología es el estudio de la naturaleza del conocimiento,
mientras que metaconocimiento es conocimiento acerca del conocimiento, esto es, conocimiento
acerca de lo que se conoce.
El conocimiento puede ser de tipo procedimental, declarativo o heurístico. Conocimiento
procedimental 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 ecuación
algebraica son expresados como conocimiento procedimental.
Por otro lado, el conocimiento declarativo es conocimiento pasivo, expresado como sentencias
acerca de los hechos del mundo que nos rodea (el saber que hacer). La información personal en
una base de datos es un típico ejemplo de conocimiento declarativo. Tales tipos de datos son
piezas explícitas de conocimiento independiente.
El conocimiento heurístico es un tipo especial de conocimiento usado por los humanos para
resolver problemas complejos. El adjetivo heurístico significa medio para descubrir. Está
relacionado con la palabra griega heuriskein que significa descubrir, encontrar. Se entiende por
heurístico a un criterio, estrategia, método o truco utilizado para simplificar la solución de
problemas. El conocimiento heurístico usualmente se lo adquiere a través de mucha experiencia.
El proceso de organizar y coleccionar el conocimiento es llamado ingeniería del
conocimiento. Es tal vez la parte más difícil y la que consume más tiempo en cualquier
proceso que desarrolla software de IA.
Dado que el conocimiento es importante y primordial para el comportamiento inteligente, su
representación constituye una de las máximas prioridades de la investigación en IA. El
conocimiento puede ser representado como imágenes mentales en nuestros pensamientos, como
palabras habladas o escritas en algún lenguaje, en forma gráfica o en imágenes, como cadenas de
caracteres o colecciones de señales eléctricas o magnéticas dentro de un computador. En nuestro
estudio de IA, consideraremos las representaciones escritas y sus correspondientes estructuras de
datos utilizadas para su almacenamiento en un computador. La forma de representación que se
escoja dependerá del tipo de problema a ser resuelto y de los métodos de inferencia disponibles.
Existen diferentes esquemas de representar el conocimiento, abordaremos algunas formas
de representarlo y aplicarlo de una manera adecuada para su manipulación en
computadoras.
Los esquemas de representación del conocimiento han sido categorizados como
declarativos o procedimentales. Los métodos de representación declarativos se usan para
representar factores y aserciones; y un esquema de representación procedimental trata con
acciones descritas paso a paso para llegar a un resultado final.
Los métodos de representación del conocimiento declarativos incluyen lógica, listas,
árboles, redes semánticas, marcos y libretos.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
27. Inteligencia Artificial.
En términos generales, se debe tratar que el conocimiento esté representado de tal forma que:
• Capture generalizaciones.
• Pueda ser comprendido por todas las personas que vayan a proporcionarlo y procesarlo.
• Pueda ser fácilmente modificado.
• Pueda ser utilizado en diversas situaciones aún cuando no sea totalmente exacto o
completo.
• Pueda ser utilizado para reducir el rango de posibilidades que usualmente debería
considerarse para buscar soluciones.
El conocimiento declarativo puede ser representado con modelos relacionales y esquemas
basados en lógica. Los modelos relacionales pueden representar el conocimiento en forma de
árboles, grafos o redes semánticas. Los esquemas de representación lógica incluyen el uso de
lógica proposicional y lógica de predicados.
Los modelos procedimentales y sus esquemas de representación almacenan conocimiento en la
forma de cómo hacer las cosas. Pueden estar caracterizados por gramáticas formales, usualmente
implantadas por sistemas o lenguajes procedimentales y sistemas basados en reglas (sistemas de
producción).
Las representaciones declarativas son usualmente más expansivas y costosas, en el sentido que
la enumeración puede ser redundante e ineficiente. Sin embargo, la modificación de las
representaciones declarativas es usualmente muy fácil; simplemente se agrega o se elimina
conocimiento. Las representaciones procedimentales, en cambio, pueden ser más compactas,
sacrificando flexibilidad. Representaciones prácticas pueden incluir elementos tanto declarativos
(listado de hechos conocidos), como procedimentales (un conjunto de reglas para manipular los
hechos).
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
28. Inteligencia Artificial.
Manipulación del conocimiento
Existen tres paradigmas que los investigadores han utilizado tradicionalmente para la resolución de
problemas de IA:
• Programación Heurística.- Está basado en el modelo de comportamiento humano y su
estilo para resolver problemas complejos. Existen diversos tipos de programas que
incluyen algoritmos heurísticos. Varios de ellos son capaces de aprender de su
experiencia.
• Redes Neuronales Artificiales.- Es una representación abstraída del modelo neuronal del
cerebro humano. Las redes están formadas por un gran número de elementos simples y
por sus interconexiones. Una red neuronal artificial puede ser simulada o ser real. Al
elemento procesador de la red, se lo denomina neurona artificial.
• Evolución Artificial.- Su modelo está basado en el proceso genético de evolución natural,
propuesto por Charles Darwin. Se utilizan sistemas simulados en computador que
evolucionan mediante operaciones de reproducción, mutación y cruce (Algoritmos
Genéticos).
Cada paradigma comprende una colección de métodos, configuraciones y técnicas desarrolladas
para manipular el conocimiento. En general, una técnica de IA está caracterizada por incluir los
siguientes componentes:
• Procesos de Búsqueda.- Proporciona una forma de resolver problemas para los cuales no
hay un método más directo, así como también se constituye en un marco de trabajo dentro
del cual cualquier técnica directa puede ser incorporada.
• Uso del Conocimiento.- Proporciona una forma de resolver problemas
FUNDAMENTOS LÓGICOS EN INTELIGENCIA ARTIFICIAL
Tal vez la forma más antigua de representar el conocimiento es la lógica. Esta trata el
estudio científico de los procesos de razonamientos, de sistemas de reglas y procedimientos
que ayudan al pensamiento adecuado. La lógica es considerada una subdivisión de la
filosofía, su desarrollo y el refinamiento de sus procesos son generalmente acreditados a los
griegos.
La forma general de cualquier proceso lógico consiste de información dada, juicios hechos
o de observaciones que son notadas; esto constituye las entradas al proceso lógico y son
llamadas premisas. Las premisas son empleadas por el procesamiento lógico para crear las
salidas que constituyen las conclusiones llamadas inferencias. Esto constituye hechos que
son conocidos como verdaderos y pueden ser usados para derivar nuevos hechos que
también deben ser verdaderos.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
29. Inteligencia Artificial.
FORMALISMOS PARA REPRESENTAR DEL CONOCIMIENTO
LISTAS Y ÁRBOLES
Son las estructuras más sencillas que se usan para representar un conocimiento jerárquico.
Listas: Una lista es una serie de elementos del mismo tipo.
Ejemplo:
a) [Juan, Roberto, Ana, Inés ]: Lista de personas.
b) [caramelos, galletas, bombones]: Cosas que se compran en una miscelánea.
c) [clavos, bloques, cemento]: Productos de construcción.
Lista 1
Cuadernos
Libros
Escritorio Escritorio
Libros Madera
Filosofía Metal
Matemáticas Madera
Historia Caoba
Pino
Representación gráfica y jerárquica de una lista.
Árbol: Es una forma sencilla de ilustrar las listas y otros tipos de conocimiento jerárquicos.
Ejemplo:
Los nodos están representados por los círculos y las líneas que los unen son los arcos.
REDES SEMÁNTICAS
Es la representación esquemática del conocimiento mediante descripciones graficas que
muestra una jerarquía relacional entre objetos. Se le denomina nodo a la representación de
elementos del dominio y se muestran como rectángulos o círculos y son rotulados con los
nombres de los elementos representados; y se denominan arcos a los enlaces desde un
nodo a otro, se representan como un vector y se rotula con el nombre de las relaciones
representadas.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
30. Inteligencia Artificial.
Nodo = objeto
Donde un Objeto puede ser representado por:
1. Personas
2. Animales
3. Eventos
5. Acciones
6. Conceptos
7. Atributos o características que identifican a un objeto.
Existen ciertos tipos de Arcos típicos entre los cuales están.
1. ISA (Es-un): El cual usa para identificar que un cierto pertenece a una clase mayor de
objeto.
Ser _humano Es un Hombre Es un Manuel
2. HAVE-a (tiene-un), este tipo de arcos se utiliza para identificar que un cierto nodo tiene
o pase una cierta características o atributo o propiedad. También se puede utilizar para
representar situaciones, acciones y eventos.
Propiedades de las Redes Semánticas
Las redes Semánticas posen la propiedad de la Herencia; en la que unos nodos heredaron
las propiedades o atributos de Nodos de una clase mayor. Así por ejemplo en las siguientes
Red Semántica:
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
31. Inteligencia Artificial.
Nota: A través de la característica de la herencia, las Redes Semánticas tienen la capacidad
de inferir conocimiento.
Ejemplo de Red Semántica.
Considera la anterior Red Semántica acerca de SAM y su familia.
1. Necesita Sam Alimento
Si, por la herencia que recibe de los seres humanos.
2. Trabaja SAM para AJAX
Si por característica o por propiedades de herencia ya que CME pertenece AJAX.
Nota: En Redes Semánticas las inferencias de información o respuestas o preguntas se
hacen con base en las propiedades de herencia que existen entre los Nodos.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
32. Inteligencia Artificial.
Ejemplo de Red Semántica: Roedor.
Es_un
Es_un
Ejemplo de Red Semántica: Lassie.
Tiene un
Ti
de en
e
po un
Ti
tiene
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
33. Inteligencia Artificial.
Ejemplo de Red Semántica: Animal.
puede
Ti Ti
de po po
po de de
Ti
s
ata vo
come
tiene
p lar
ne
Tie
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
34. Inteligencia Artificial.
Ejemplo de Red Semántica: Animal2.
ANIMAL
Es del tipo Es del tipo
respira come
tiene
Esta formado por
Aire Masa Miembros Alimentos
PAJARO puede Alas PERSONA
Es del tipo Está formado por Está formado por
Un
Representante
Plumas Alas de Piernas Brazos
CANARIO Un representante
ARTURO
color Trabaja en
Amarillo Piolín NASA
Un animal come alimento,
respira aire, tiene masa y
está formado por miembros.
Una persona es del tipo
animal, la cual hereda todas
las características antes
descritas del animal. Así
también tenemos la
posibilidad de detallar más
sus cualidades como que
tiene piernas y brazos.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
35. Inteligencia Artificial.
Ejercicios:
Dado el siguiente conocimiento construya la correspondiente Red Semántica.
- Los Jorobados son personas pequeñas.
- Bilbo es un jorobado.
- Los jorobados tienen dedos gordos.
- Bilbo posee un anillo mágico.
- El anillo fue encontrado en una cueva.
- Los jorobados son personas míticas y las personas míticas son estudiadas por los
estudiantes de literatura.
1. ¿Qué posee Bilbo? Un anillo mágico.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
36. Inteligencia Artificial.
FRAMES (MARCOS)
Un Frames es una estructura de datos que contiene todo el conocimiento acerca de un
objeto. Los Frames son organizados en forma jerárquica y esta característica es utilizada
como medio para responder a Preguntas. Los Frames surgieron de la pregunta orientada a
objetos. Cada frames describe un objeto en particular. Por lo tanto cada frames me
representa una estructura de conocimiento en la cual se esta describiendo a un objeto, un
evento o una situación ó cualesquier otro elemento. En los frames se describe el
conocimiento acerca de un objeto utilizado SLOTS (Ranuras).
Representación del conocimiento en una jerarquía de frames que heredan propiedades de
frames del nivel superior.
Modo de transporte
Carro Ranura
Generalidades
Auto Ranura
del carro
Motor Ranura
Especificaciones del Automóvil
Tipos de SLOTS en los Frames
1. Hay Slot para describir Conocimiento Declarativo como lo es:
- Peso de un Objeto.
- La Altura
- La forma
- El color
- Hobbies (leer, nadar, trotar)
2. Hay slots para describir conocimiento procedural (el cual se refiere a pequeños
procesos que me identifica a ciertas funciones).Ejemplo: Velocidad, aceleración,
trabajo, cálculo de energía, etc.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
37. Inteligencia Artificial.
3. Que identifican a las Reglas.
Ejemplo:
If máquina caliente THEN prender ventilador.
4. Un Slot puede indicar la conexión con otro FRAME
5. Un Slot puede indicar la conexión con otros frame de representación de
conocimiento como lo son con las Redes Semánticas.
FRAME de un Auto.
-Clase; transportación
-Nombre del fabricante; Audi
-Origen del fabricante
Nota: Una de las características de los frames es que un frame puede identificar a toda una
familia de objetos.
SCRIPT (LIBRETO)
Este tipo de Representación de conocimiento es utilizado para representar secuencias de
EVENTOS de tipo:
- Historias Visitas al:
- Dramas - Doctor.
- Visitas - Restaurante
- Viajes - Museo, etc.
- Estética
En los SCRIPTS o libretos intervienen elementos básicos como lo son:
1. Requerimientos de Entrada.
2. Roles o papeles de las personas o cosas que intervienen en el libreto.
3. Herramientas utilizadas por los diferentes participantes o actores.
4. Escenas.
5. Resultados.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
38. Inteligencia Artificial.
Ejemplo 1. SCRIPT correspondiente a una visita al Restaurante de Auto-Servicio.
Requerimiento de Entrada:
- Hay un cliente que tiene hambre.
- El cliente tiene dinero.
Herramientas que intervienen:
- carro - mostrador
- dinero - palillos
- bandeja - sal
- bote de basura - cuchillo
- alimentos - tenedor
- catsup - cuchara
- servilletas - mesa
Roles o Papeles:
- Hay un cliente (C)
- Recepcionista (R)
Escena 1: Entrada al Restaurante.
- El cliente para el carro.
- El (C) entra al Restaurante.
- El (C) hace fila en el mostrador.
- El (C) mira los distintos alimentos en la pared y decide cuales seleccionar.
Escena 2: Ordenar.
- El cliente lea la orden al (R).
- El (R) comienza a poner los alimentos a la bandeja.
- El (C) paga la orden.
Escena 3: Comer.
- El cliente toma servilletas, cuchillo, tenedor, cuchara, sal, palillos y salsa de tomate.
- El (C) busca mesa.
- El cliente consume los alimentos.
Escena 4: Salida.
- Recoge la basura de la mesa.
- Vacía el contenido de la vasija en el bote de la basura.
- Sale del restaurante.
- Toma su carro.
- Se va.
Resultados:
- Cliente ya no tiene hambre.
- El (C) tiene menos dinero.
- El (C) esta satisfecho.
- El (C) no esta satisfecho.
- El (C) trae dolor de estomago.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
39. Inteligencia Artificial.
Ejemplo 2. SCRIPT correspondiente a una visita al cine.
• PAPELES: cinéfilo, taquillero, portero, acomodador
• CONDICIONES DE ENTRADA: cinéfilo desea ver película
• PROPIEDADES O HERRAMIENTAS: película, butaca, dinero, entrada
• ESCENAS:
-Sacar entrada
Cinéfilo: Deme butaca” a taquillero
Cinéfilo: Dinero a taquillero
Taquillero: Entrada a cinéfilo
-Entrar en sala
Cinéfilo: Entrada a portero
Portero: Entrada a cinéfilo
Cinéfilo: Cinéfilo a sala
-Acomodarse ...................
-Ver película ..................
-Salir de sala ..................
• RESULTADOS:
-Cinéfilo ha visto la película
-Taquillero tiene más dinero
-Cinéfilo tiene menos dinero.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
40. Inteligencia Artificial.
Lógica proposicional
La lógica proposicional trata con unidades básicas denominadas proposiciones. Una
proporción es una expresión que tiene un valor de verdad (falso o verdadero, pero no ambos
a la vez).
Ejemplo:
Mozart fue un compositor. (Verdadero)
Todo compositor escribe música. (Verdadero)
Un perro es un animal. (Verdadero)
Un gato es un perro. (Falso)
Estas proposiciones se pueden representar mediante p, q, r, s, ... y se les llama
proposiciones simples o atómicas.
Las proposiciones simples o atómicas son vinculadas o modificadas por los llamados
conectores:
^ : = AND
v : = OR
~ ¬ : = NOT
=> : = Implicación
:= Doble implicación
Y son llamadas proposiciones compuestas o moleculares.
Ejemplo:
p: Mozart fue un compositor.
~ p : Mozart no fue un compositor.
q: Mozart escribió música.
p ^ q: Mozart fue un compositor y escribió música.
p v q: Mozart fue un compositor o escribió música.
p => q: Si Mozart fue un compositor entonces escribió música.
p q: Mozart fue un compositor si y solo si escribió música.
En el caso de las proposiciones simples asignarles su valor de verdad es obvio, se requiere
tener un conocimiento claro de los hechos relacionados a la proposición. En cambio para
las proposiciones compuestas se deben seguir ciertas reglas que señalaremos en la tabla
siguiente:
p q ~p p^q pvq p => q p q
V V F V V V V
V F F F V F F
F V V F F V F
F F V F F V V
1 2 3 4 5 6 7
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
41. Inteligencia Artificial.
Negación: ~ p
Toma el valor de verdad opuesto al de la proposición p, o sea, si la proposición p es
verdadera la negación ~ p es falsa y viceversa. Como se observa en la columna 3.
Conjunción: p ^ q
Toma el valor de verdadero solo cuando ambas miembros son verdaderos. En cualquier
otro caso es falsa. Como se observa en la columna 4.
Disyunción: p v q
Toma el valor falso cuando ambos miembros son falsos. En cualquier otro caso es
verdadera. Como se observa en la columna 5.
Condicional: p => q
Si el antecedente es verdadero y el consecuente es falso, la condicional es falsa. En
cualquier otro caso es verdadera. Como se observa en la columna 6.
Bicondicional: p q
Cuando ambos miembros tienen el mismo valor de verdad, la bicondicional es verdadera.
En cualquier otro caso es falsa. Como se observa en la columna 7.
Las variables, también pueden ser cuantificadas. Los cuantificadores que típicamente se utilizan en
lógica de predicados son:
• El cuantificador universal; ∀ indica que la fórmula bien formada, dentro de su alcance, es
verdadera para todos los valores posibles de la variable que es cuantificada. Por ejemplo:
∀X....
Establece que "para todo X, es verdad que . . . "
• El cuantificador existencial;∃ , indica que la fórmula bien formada, dentro de su alcance, es
verdadera para algún valor o valores dentro del dominio. Por ejemplo:
∃X....
Establece que "existe un X, tal que . . . "
A continuación se dan algunos ejemplos de predicados cuantificados:
∀ X, [niño (X) => le_gusta (X, helados)].
(∀X)(persona(X)) =>mortal(X)
∀ Y, [mamífero (Y) => nace (Y, vivo)].
(∀X)(perro(X)) =>mortal(X)
∃ Z, [cartero(Z) ^ mordió (boby, Z)].
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
42. Inteligencia Artificial.
Desde el punto vista de representación, los cuantificadores son difíciles de usar. Por lo que es
deseable reemplazarlos con alguna representación equivalente, más fácil de manipular. El caso del
cuantificador universal es más simple ya que se asume a todas las variables como universalmente
cuantificadas.
El cuantificador existencial es más difícil de reemplazar. El cuantificador existencial garantiza la
existencia de uno o más valores particulares (instancias) de la variable cuantificada, que hace a la
cláusula verdadera. Si se asume que existe una función capaz de determinar los valores de la
variable que hace la cláusula verdadera, entonces simplemente se remueve el cuantificador
existencial y se reemplaza las variables por la función que retorna dichos valores. Para la
resolución de problemas reales, esta función, llamada función de Skolem, debe ser conocida y
definida.
Forma proposicional o función: p(x)
Es aquella expresión que tiene un elemento desconocido, x , que al ser instanciado hace que
la expresión se convierta en una proposición. Ejemplo: p (x): x es un mamífero.
Si x se instancia con “clavo”, o sea, x = clavo. La forma proposicional se convierte en la
proposición: p (clavo): clavo es un mamífero. (Falso)
Si x se instancia con “gato”, o sea, x = gato. La forma proposicional se convierte en la
proposición: p (gato): gato es un mamífero. (Verdadero)
Los valores de x estan presente en un conjunto llamado dominio. Si todos los elementos del
dominio hacen verdadera la proposición se utiliza el cuantificador universal “∀”. Si solo
algunos elementos del dominio hacen verdadera la proposición se utiliza el cuantificador
existencial “∃”.
Ejemplo:
1. Sea la forma proposicional “p ( x ): x es una letra ”
Dominio: x = { (x, p ( x )) | p ( x ): x es una letra } = { a, b, c, d, e}
Instanciando tenemos:
x = a, p(a): a es una letra. (Verdadero)
x = e, p(e): e es una letra. (Verdadero)
Todos los elementos del dominio cumplen la forma proposicional, esto se indica de
la manera siguiente:
∀x, p( x ): para todo x, x es una letra.
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
43. Inteligencia Artificial.
2. Sea la forma proposicional “p (x ): x es un número par ”
Dominio: x = { (x, p ( x )) | p ( x ): x es un número par } = {1, 2, 5 }
Instanciando tenemos:
x = 1, p(1): 1 es un número par. (Falso)
x = 2, p(2): 2 es un número par. (Verdadero)
x = 5, p(5): 5 es un número par. (Falso)
Existen algunos elementos del dominio que cumplen la forma proposicional, esto se indica
de la manera siguiente:
∃x, p( x ): existe algún x, x es un numero par.
Lógica de predicados.
La lógica de predicados se refiere o sirve para identificar una relación existente entre
elementos llamados argumentos, entre paréntesis o bien identifica a la propiedad o
característica de los argumentos en el paréntesis, o bien identifica el nombre de la clase a la
que pertenecen los argumentos. Se expresa de la manera siguiente:
PREDICADO (ARG1,ARG2,...,ARGN)
NOMBRE NOMBRE
DEL DEL
PREDICADO ARGUMENTO
Nota: Los argumentos siempre (usualmente) son SUSTANTIVOS.
Ejemplo:
1 El limón y el chile serrano son verdes: Son_verde (limón, chile serrano)
2 La pitaya es roja y la manzana es roja: roja (pitaya, manzana)
3 El limón es verde: Verde (limón)
4 El perro ladra: ladra (perro)
5 Todos los mamíferos son de sangre caliente:
∀x [ mamíferos (x) => sangre _ caliente(x)]
6 Todo satélite terrestre tiene un punto sobre la Tierra:
∀x {satélite_terrestre(x) =>∃y [tiene (x, punto) ^ sobre(y, Tierra)]}
La lógica de predicados esta formado por un conjunto de predicados concatenados a través
de las operaciones lógicas:
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
44. Inteligencia Artificial.
Operaciones lógicas:
^ : = AND
v : = OR
~ ¬ : = NOT
=> : = Implicación
:= Doble implicación
∀ : = Para todo
∃ : = Existe
Jerarquía de las operaciones lógicas (orden de mayor a menor)
1. Se ejecutan primero las agrupaciones: ( )
2. ~ : not
3. ^ : and
4. v : OR
5. => : Implicación (Si ... Entonces ... )
6. := Doble implicación (... si y solo si ...)
Sintaxis en la lógica de Predicados.
Aquí se maneja la siguiente simbología.
- variables x, y, z
- funciones f, g, h
- constantes a, b, c
-Símbolo de predicado P, Q, R, S, T
-Símbolos de apuntación "(", ")", ","
Aunado a estos símbolos se utilizan los siguientes conceptos.
UNIVERSO: El cual identifica a la totalidad de los valores que puede tomar una variable.
TERMINO: Una variable es un termino, x, y, z. Así como f(t) donde f es una función y “t”
es una secuencia de uno o mas términos.
Ejemplo: f(x), h(y), g( x, y, h(x)), f( h(x, y), y(z, f(z) )
FORMULA ATOMATICA: Una formula automática es un predicado p(x), donde P es el
nombre del predicado y “x” es un termino.
Ejemplo: Es-verde (limón), mamífero (Pedro), mamífero (ballena, delfín, cabra)
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
45. Inteligencia Artificial.
LITERAL: Los literales son predicados o negaciones de predicados.
Ejemplo: mamífero (Pedro)
~ mamífero (vidrio)
FORMULAS BIEN FORMADAS (FBF): Una FBF es una secuencias de formulas
Atómicas (o predicados) concatenados por medio de operadores lógicos.
Ejemplo: P(x) v Q(y) ^ ~R (S) P(x) ^ Q(z) ==> ~R(s)
mamífero(perro) => tiene_sangre_caliente(perro)
SENTENCE: Las expresiones son FBF donde el alcance de las variables esta
perfectamente bien definido mediante cuantificadores o bien UNIVERSALES ó bien
EXISTENCIALES.
Símbolos: ∀ Para todo(cuantificador Universal)
∃ Existe(Cuantificadores Existencial)
~∃ ≡ ∀
~∀ ≡ ∃
Ejemplo: Todos los hijos tienen un padre y una Madre
∀x [mamífero(x) => tiene_sangre_caliente(x) ]
∀x [hijo(x) => ∃y ( madre(y)^ padre(z)) ]
CLAUSULA: Es una disyunción de literales (una cláusula es una disyunción de predicados
y/o predicados negados.
Ejemplos. Conjunción: And (^)
Disyunción: OR (V)
P(x) v Q(y) v~ R(s)
R(y) v ~ Q(z)
Lógica de predicado de primer orden.
La lógica de predicados de primer orden esta formado por un conjunto de predicados
concatenados por operadores lógicos.
Ejemplo: Hermano (x, y ): x es hermano de y.
Hijo (x, y ): x es hijo de y.
Lógica de Predicado de Orden Superior: Es cuando una variable y una función toman
sus valores de un mismo dominio.
Ejemplo:
Hermano (x, hijo(a, y)): x es tío de a. [Predicado de Segundo Orden]
Colega (b, hermano (x, hijo(a, y))): “b” es colega del tío de “a”. [Tercer Orden]
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.
46. Inteligencia Artificial.
Sistema: Un sistema en la lógica de predicados de primer orden esta formado por un
conjunto EXPRESIONES cada uno de los cuales tiene un valor de verdad (verdadero o
falso).
Operaciones relacionadas con la lógica de predicados.
La Asociatividad A v (B V C) = (A v B) v C
A ^ (B ^ C) = (A ^ B) ^ C
La Distributividad A ^ (B v C) = (A^ B) v (A ^ C)
A v (B ^ C) = (A v B ) ^ (A v C)
Leyes de Morgan. ~ (A v B) = ~ A ^ ~ B
~ (A ^ B) = ~ A v ~B
Conmutativa AvB=BvA
A^ B = B ^ A
Ley de idempotencia A^A=A
AvA=A
Ley de la no contradicción ~ (A ^ ~ A) = 1
Ley del tercio excluso A v ~ A) = 1
Ley de la identidad A => A = 1
A A=1
Definición de la equivalencia mediante la conjunción y la implicación:
A B = A=> B ^ B => A
Av1=1
A^1=A
Av0=A
A^0=0
A^~A=0
Ley de la eliminación de la doble negación ~ ~ A = A
Ejemplos:
Convertir las siguientes proposiciones a lógica de predicados (FBF). (Sistema que describe
parte del mundo Romano).
1. Marco fue un hombre: hombre (Marco)
2. Marco fue pompeyano: pompeyano (Marco)
3. Todos los pompeyanos fueron Romanos: ∀x [Pompeyanos(x) => Romano(x)]
4. Cesar fue un rey: Rey (Cesar)
5. Todos los Romanos eran leales a Cesar o lo odiaban: ∀x [ Romanos(x) =>leal(x,Cesar)
v odiaba(x, Cesar) ]
6. Todos son leales a alguien: ∀x [∃y leal(x, y)]; ∀x[ (∃(alguien), leal (x, alguien)) ]
7. La gente que trata a los reyes son los no leales: ∀x ∀y [gente (x) ^ Rey (y) ^
trata_de_asesinar (x, y) => ~ leal(x, y) ]
8. Marco trata de Asesinar a Cesar: Trata_de_ Asesinar(Marco, Cesar)
Universidad Nacional de Ingeniería. Elaborado por Ing. Ariel Chávez Toruño
Facultad de Ciencias y Sistemas.