Este documento trata sobre la representación del conocimiento y el razonamiento en sistemas basados en conocimiento. Explica brevemente la evolución de los sistemas expertos y los paradigmas del conocimiento y los sistemas basados en conocimiento. También describe diferentes lenguajes y técnicas para la representación formal del conocimiento como mapas conceptuales, redes semánticas, lógica de predicados y sus componentes sintácticos y semánticos.
S4C Colloquium Aveiro 2016
https://scientistsforcyclingaveiro2016.wordpress.com/
University of Aveiro (Portugal),
Region of Aveiro (CIRA), ABIMOTA/Portugal Bike Value
and the European Cyclists’ Federation (ECF)
with its global network Scientists for Cycling (S4C)
S4C Colloquium Aveiro 2016
https://scientistsforcyclingaveiro2016.wordpress.com/
University of Aveiro (Portugal),
Region of Aveiro (CIRA), ABIMOTA/Portugal Bike Value
and the European Cyclists’ Federation (ECF)
with its global network Scientists for Cycling (S4C)
S4C Colloquium Aveiro 2016
https://scientistsforcyclingaveiro2016.wordpress.com/
University of Aveiro (Portugal),
Region of Aveiro (CIRA), ABIMOTA/Portugal Bike Value
and the European Cyclists’ Federation (ECF)
with its global network Scientists for Cycling (S4C)
S4C Colloquium Aveiro 2016
https://scientistsforcyclingaveiro2016.wordpress.com/
University of Aveiro (Portugal),
Region of Aveiro (CIRA), ABIMOTA/Portugal Bike Value
and the European Cyclists’ Federation (ECF)
with its global network Scientists for Cycling (S4C)
Una señal analógica es una señal generada por algún tipo de fenómeno electromagnético; que es representable por una función matemática continua en la que es variable su amplitud y periodo en función del tiempo.
Criterios de la primera y segunda derivadaYoverOlivares
Criterios de la primera derivada.
Criterios de la segunda derivada.
Función creciente y decreciente.
Puntos máximos y mínimos.
Puntos de inflexión.
3 Ejemplos para graficar funciones utilizando los criterios de la primera y segunda derivada.
1. Unidad 3 Representación del conocimiento y razonamiento.
3.1. Sistemas basados en conocimiento.
Durante los años 60, la mayor parte de los trabajos de investigación sobre inteligencia
artificial se centraban en los algoritmos de búsqueda heurística y en la concepción de
sistemas para la resolución de problemas con un interés, en principio, puramente teórico y
académico (demostración de teoremas, juegos, problemas lógicos, etc.), pero con la idea
implícita de que los resultados pudieran ser aplicables a problemas «reales». Algunas líneas
con posibilidades de aplicación práctica inmediata, como la traducción automática entre
lenguajes naturales, se abandonaron pronto al percibirse la dificultad del problema. A mitad
de los 70 comienzan a tomar cuerpo dos ideas clave que, aunque muy relacionadas, no son
idénticas. Se trata del «paradigma del sistema experto» y del «paradigma del conocimiento».
3.1.1. Concepto de conocimiento.
El conocimiento es la sumatoria de las representaciones abstractas que se poseen sobre un
aspecto de la realidad. En este sentido, el conocimiento es una suerte de “mapa” conceptual
que se distingue del “territorio” o realidad. Todos los procesos de aprendizajes a los que una
persona se expone durante su vida no son sino un agregar y resignificar las representaciones
previas a efecto de que reflejen de un modo más certero cualquier área del universo.
En la actualidad aquel conocimiento más valorado por la sociedad es el llamado “científico”,
en tato y en cuanto se supone guarda una cercanía más estrecha con lo representado. Para
valorar esta cercanía lo relevante es que puedan hacerse predicciones sobre aquella materia
sobre lo que trata el saber. Lo interesante es comprobar que el propio método científico, que
es un modo de legitimar un determinado conocimiento, puede ser considerado en sí mismo
como un conocimiento. En efecto, las fases que constituyen la elaboración de una teoría y la
posterior contrastación se consideran como los procedimientos más pertinentes para
elaborar un saber certero, constituyendo este proceso una representación en sí misma.
2. 3.1.2. Lenguajes utilizados en la representación de conocimiento.
En el caso de los sistemas basados en conocimiento, el lenguaje en el que se expresa la
ontología debe reunir características que a veces (dependiendo del dominio) no es fácil
compatibilizar:
• Sintaxis formalizada, para poder diseñar sobre bases sólidas un procesador.
• Semántica bien definida y que permita la implementación procedimental en el
procesador de algoritmos de razonamiento eficientes.
• Desde el punto de vista pragmático, expresividad suficiente para representar de la
manera menos forzada posible el conocimiento. Esto significa que, para una
determinada conceptuación, el lenguaje con el que se construyen los modelos en el
nivel simbólico debe permitir una interpretación declarativa que represente todos los
aspectos de esa conceptuación. En la práctica puede ocurrir que no encontremos el
lenguaje ideal, y tengamos que forzar la conceptuación para que se ajuste al lenguaje
elegido.
Hay lenguajes formales, o teóricos, que satisfacen en mayor o menor grado esas condiciones
y lenguajes de implementación, o prácticos, que, siguiendo el modelo de algún lenguaje
formal, están adaptados para mecanizar la construcción de ontologías. Nos centraremos en
los primeros, que son relativamente estables, y sobre los que se basan los segundos,
algunos muy volátiles. Por ejemplo:
• Prolog es un lenguaje de implementación de la lógica de primer orden, que en sus
versiones más recientes incluye también construcciones para la programación con
restricciones.
• OWL (Web Ontology Language) es un lenguaje de ontolologías para la web basado en
una lógica de descripciones (en realidad, son tres sublenguajes). Procede de la fusión
de otros dos elaborados independientemente alrededor del año 2000: DAML (DARPA
Agent Markup Language, de la Agencia de proyectos del Ministerio de Defensa U.S.A)
y OIL (Ontology Inference Layer, de un consorcio formado en el marco de los
programas de la U.E.). En 2001 se formó un comité conjunto que hizo una propuesta
al Consorcio Web (W3C), y éste publicó el estándar (Proposed Recommendation en la
terminología del W3C) en 2003, modificado el 10 de febrero de 2004. Existen
numerosas propuestas de mejoras y modificaciones. En el Apéndice B se resume la
versión actual.
Hasta la segunda mitad de los años 80 se estaban utilizando diversos lenguajes que podían
clasificarse en dos tipos:
• Lenguajes basados en la lógica de predicados de primer orden, con sintaxis y
3. semántica formalizadas, con una base rigurosa para el razonamiento, pero con
grandes dificultades para implementar algoritmos de razonamiento eficientes, con una
rigidez sintáctica que impide ciertas conceptuaciones «naturales» y con pocas
posibilidades de modularización.
• Lenguajes basados en modelos de psicología que, al estar derivados del estudio de la
mente humana, permiten conceptuaciones más naturales y algoritmos de
razonamiento más eficientes, pero que tienen una sintaxis menos formalizada y
carecen de una definición semántica precisa (a pesar de que uno de ellos se llama
redes semánticas).
Como es natural, diversos investigadores trataron de elaborar propuestas para aunar las
ventajas de unos lenguajes y otros (Hayes, 1979, Nilsson, 1982, Brachman y Levesque,
1985), pero no fue hasta el final de los 90 cuando quedaron relativamente establecidas las
llamadas lógicas de descripciones, que en el momento actual son los lenguajes por
antonomasia para la representación del conocimiento.
A las lógicas de descripciones dedicaremos el Capítulo. Pero hay al menos cuatro razones
por las que nos parece conveniente detenernos previamente en los lenguajes más antiguos:
• la lógica clásica de primer orden sigue siendo la base fundamental de las demás
formulaciones de la lógica;
• en el diseño de muchos sistemas basados en conocimiento, especialmente los que no
son muy complejos, se siguen utilizando algunos de esos lenguajes;
• las ideas originales ayudan a entender y justifican ciertas decisiones de diseño, y
• la naturaleza interdisciplinaria de estos primeros trabajos hace muy interesante su
estudio.
3.2. Mapas conceptuales.
En Inteligencia Artificial, Quillian desarrolló una forma de mapa conceptual que se denominó
redes semánticas y que se usa ampliamente para la representar el conocimiento formal. En
lingüística, Graesser y Clark han desarrollado un análisis de formas de argumentación en el
texto en forma de mapas conceptuales estructurados en ocho tipos de nodos y cuatro tipos
de enlaces. En la historia de la ciencia, la dinámica de mapas conceptuales se ha usado
también para representar los procesos de cambio conceptual de las revoluciones científicas y
en filosofía de la ciencia, Toulmin desarrolló una teoría de argumentación científica basada
en mapas conceptuales. También los mapas conceptuales han sido utilizados en la
educación, el diseño de las organizaciones para la toma de decisiones, la adquisición de
conocimiento especializado, los sistemas sociales, la toma de decisiones políticas, etc.
4. Un mapa conceptual es una técnica sencilla que permite representar el conocimiento de
forma gráfica como redes conceptuales compuestas por nodos que representan los
conceptos, y enlaces, que representan las relaciones entre los conceptos.
3.3. Redes semánticas.
Muchas disciplinas han desarrollado técnicas de realización de diagramas que constituyen
lenguajes formales visuales que representan el conocimiento operacional en forma
esquemática. El filósofo y lógico Charles S. Pierce desarrolló sus grafos existenciales como
una técnica formal de razonamiento para la inferencia lógica y en años recientes se ha
estado cultivando el interés en el estado formal de las pruebas visuales en matemáticas. En
Inteligencia Artificial, Sowa ha desarrollado los grafos de Peirce como estructuras formales
conceptuales para la representación de la inferencia lógica de las declaraciones del lenguaje
natural.
La presentación visual de las estructuras de conocimiento ha sido un rasgo característico de
las redes semánticas desde sus inicios. En la adquisición de conocimiento, en particular, la
presentación de conocimiento formal ha sido algo importante para su validación. Hay muchas
técnicas para tal adquisición pero todas ellas, en última instancia, terminan en una base de
conocimiento que opera con la semántica formal. Sin embargo, la expresión de esta base de
conocimiento en el lenguaje formal usado por el sistema no es por lo general muy
comprensible a los no programadores. Es preciso, por tanto, un lenguaje visual que ofrezca
tanto formas comprensibles como posibilidades formales atractivas no sólo para la
comprensión, sino también para la corrección, y para las partes del proceso de adquisición
del conocimiento en sí mismo.
El temprano desarrollo de redes semánticas acabó en fuertes críticas sobre la semántica de
diagramas particulares ya que ésta no estaba bien definida. Los nodos, arcos y sus etiquetas
podían usarse muy libremente y con una gran ambigüedad, y los diagramas estaban sujetos
a interpretaciones diferentes. En los años 70 existían propuestas para formalizar una red
semántica bien definida y esto hizo factible que la semántica formal fuera desarrollada para
sistemas de representación de conocimiento terminológicos. En 1991, Profits estableció una
semántica formal para mapas conceptuales para sistemas terminológicos lógicos que dio
lugar a un ejemplo principal de su uso en la solución de un sistema de asignación de
espacio.
Las redes semánticas son sistemas de organización del conocimiento que estructuran los
conceptos, no como una jerarquía sino como una red. Los conceptos son como nodos, con
5. varias relaciones que se ramifican hacia fuera de ellas. Las relaciones pueden incluir
relaciones tipo todo-parte, causa-efecto, padre-niño, "es un" o "es parte".
Las redes semánticas son grafos orientados que proporcionan una representación
declarativa de objetos, propiedades y relaciones. Los nodos se utilizan para representar
objetos o propiedades. Los arcos representan las relaciones entre nodos. El mecanismo de
inferencia básico en las redes semánticas es la herencia de propiedades.
Las redes semánticas proporcionan un modelo de presentar las relaciones entre los
conceptos y los acontecimientos y constituyen una descripción de nuestra forma de razonar.
Las partes de una red semántica son:
• nodos: es un concepto y se encierra e un círculo o elipse.
• relaciones: es una propiedad del concepto y pueden ponerse de dos formas:
• o implícitas: es una flecha que no especifica su contenido
• o explícitas: es una flecha en donde se especifica su contenido
3.4. Lógica de predicados.
En lógica de predicados, los valores de verdad se atribuyen a predicados que denotan
relaciones entre entidades del universo modelado. Por ejemplo, en vez de tener una
variable q para representar "Sócrates es un hombre", se escribe el predicado hombre(
mortal(sócrates)
Para aplicar este silogismo basta asignar la variable X, que puede tomar un valor arbitrario,
con la constante sócrates. Se obtiene la fórmula:
hombre(sócrates)mortal(sócrates)
Después, para obtener la conclusión, se opera exactamente como en la lógica proposicional.
3.4.1. Sintaxis.
Los paréntesis, además de servir como símbolos auxiliares para evitar ambigüedades sin
necesidad de recordar el convenio de precedencia, se utilizan para formalizar la idea de que
un símbolo de predicado se aplica a símbolos que representan a un
objetos: p(x,A) representa la relación p entre la variable x y la constante A. Esta construcción,
símbolo de predicado aplicado sobre uno o varios símbolos representativos de objetos, que
sustituye a las antiguas «variables proposicionales» , se llama fórmula atómica, o,
simplemente, átomo.
Un objeto puede estar representado por una constante, una variable o una función
6. aplicada sobre otros objetos, o sobre otras funciones. En general, se llama término a la
representación de un objeto. La forma de una función es la misma que la de un átomo: un
símbolo de función seguido por términos entre paréntesis.
En lógica de proposiciones utilizábamos los simbolos , ψ, χϕ , como metasímbolos para
representar sentencias. Añadiremos ahora α, τ y π para representar átomos, términos y
funciones, respectivamente.
3.4.2. Semántica.
• Una fbf, como 'cadena de caracteres', no tiene significado real (semántica).
• Una estructura establece la 'semántica real' de los elementos de la lógica:
Dominio de aplicación.
Semántica de las constantes, predicados, funciones:
¿Qué significado tienen?:
(Juan es 'ese' individuo)
¿Qué se cumple en el mundo real?
• Un conjunto de fbf (sin significado) puede representar la "realidad" mediante una
estructura asociada.
• Para la asignación de un valor de verdad a una fbf, debe 'interpretarse' en una estructura
dada, que representa el significado (semántica) de los elementos de la fbf.
{A(J, m(M))} es cierta si:
• Se establece la interpretación:
A se asocia a "ama"
J se asocia a Juan y M a María
m se asocia a la función unaria "madre de"
7. • En la estructura S:
Dominio: {Juan, María, Ana}
{Madre-de(María) = Ana}
"Juan ama a la madre de María" es verdadera
3.4.3. Validez.
Los términos "razonamiento" e "inferencia" son utilizados para referirse a cualquier proceso
mediante el que se obtienen conclusiones.
Las tablas de verdad sirven no solo para definir los conectores, sino también para probar la
validez de las oraciones. Si se desea considerar una oración, se construye una tabla de
verdad con una hilera por cada una de las posibles combinaciones de valores de verdad
correspondientes a los signos propositos de la oración. Se calcula el valor de verdad de toda
la oración, en cada una de las hileras. Si la oración es verdadera en cada una de las hileras.
La oración es valida.
Las tablas nos manifiestan los valores de verdad de cualquier proposición, así como el
análisis de los mismos, encontrándonos con los siguientes casos:
• Tautología o validez:
Se entiende por proposición tautológica, o tautología, aquella proposición que en todos los
casos posibles de su tabla de verdad su valor siempre es V.
• Contradicción:
Se entiende por proposición contradictoria, o contradicción, aquella proposición que en todos
los casos posibles de su tabla de verdad su valor siempre es F
• Contingencia (verdad indeterminada)
Se entiende por verdad contingente, o verdad de hecho, aquella proposición que puede ser
verdadera o falsa, o no se tiene suficiente informacion para llegar a una conclusión
• Satisfabilidad.
Si en la tabla de verdad se obtiene al menos una VERDAD
8. 3.4.4. Inferencia.
Selecciona, decide, interpreta y aplica el conocimiento de la base de conocimientos sobre la
base de hechos con el fin de obtener la solución buscada. Un mecanismo de inferencia debe
ser independiente del conocimiento y de los hechos. Está caracterizado por:
El lenguaje en que ha sido escrito.
La velocidad de trabajo: Inferencias/segundo.
Las estrategias de búsqueda de soluciones:
No Ordenada: aleatoria, heurística.
Ordenada: Encadenamiento hacia adelante (guiado por los datos,
deductivo), encadenamiento hacia atrás (guiado por los objetivos,
inductivo).
La forma en que elige el conocimiento.
La posibilidad de incorporar metaconocimiento.
El tipo de lógica que emplea en el razonamiento:
Booleana, trivalente, multivalente, difusa.
Monotónica o no monotónica.
Atemporal o temporal.
Lógica de orden 0, orden 0+, orden 1.
El método que utiliza para la evaluación del conocimiento incompleto o incierto:
Determinístico.
Probabilístico.
Aproximado.
Difuso.
3.5. Razonamiento con incertidumbre.
En situaciones reales, no siempre es posible contar con toda la información. Inclusive la información
disponible puede ser incorrecta, incompleta o cambiar muy rápidamente.
Todo esto da lugar a diferentes formas de inconsistencias e incertidumbre.
9. Diversos métodos han sido desarrollados para evaluar los grados de certeza o de verdad de las
conclusiones. Uno de los más generalizados consiste en asignar coeficiente de certeza o de confianza a
los hechos que intervienen en las en las condiciones y en la conclusión de una regla.
Los principales modelos desarrollados son:
• Modelo estadístico – probabilístico.
• Modelo aproximado.
• Modelo de lógica difusa.
3.5.1. Aprendizaje.
Simon (1983), define el aprendizaje como cambios en el sistema que se adaptan de manera
que permiten llevar a cabo la misma tarea de un modo más eficiente y eficaz.
En la práctica, el aprendizaje se usa para resolver problemas y puede representar la
diferencia entre la resolución rápida y la imposibilidad de resolverlo. La idea de poder
aprender de la propia experiencia en la resolución de problemas nos lleva a esperar obtener
mejores soluciones en un futuro.
El aprendizaje esta relacionado con el conocimiento. Puede definirse como el proceso
mediante el cual un ente adquiere conocimiento. Este conocimiento puede ser suministrado
por otro ente denominado profesor o puede adquirirse sin la ayuda del mismo.
Hay distintas formas de aprendizaje, entre las cuales se verán:
• Aprendizaje memorístico
• Aprendizaje a través de consejos
• Aprendizaje mediante experiencia en la resolución de problemas
• Aprendizaje a partir de ejemplos o Inducción
• Aprendizaje basado en explicaciones
• Descubrimiento
• Analogía
• Redes Neuronales
3.5.2. Razonamiento probabilístico.
La técnica más antigua y mejor definida para manejar la incertidumbre es la Regla de Bayes, la misma
que está basada en la teoría clásica de la probabilidad Las hipótesis son más o menos probables
dependiendo de las posibilidades de los hechos o evidencias que las sostiene La probabilidades se
10. calculan en base a la fórmula general de la probabilidad condicionada de Bayes o algunas
transformaciones de la misma
3.5.3. Lógicas multivaluadas.
3.5.4. Lógica difusa.
sócrates) que relaciona a la entidad "Sócrates" con el hecho de "ser hombre". Un predicado
también puede aplicarse a variables que denotan entidades anónimas o genéricas. Por
ejemplo, para escribir la premisa "Todos los hombre son mortales", que no se refiere a ningún
"hombre" en particular, se utiliza el predicado hombre(X) en que X es una variable que
denota a cualquier entidad del universo modelado que cumple con el hecho de "ser hombre".
El silogismo completo queda expresado de la siguiente manera:
X (hombre(X)mortal(X))
hombre(sócrates)
mortal(sócrates)
Para aplicar este silogismo basta asignar la variable X, que puede tomar un valor arbitrario,
con la constante sócrates. Se obtiene la fórmula:
hombre(sócrates)mortal(sócrates)
Después, para obtener la conclusión, se opera exactamente como en la lógica proposicional.