La representación y razonamiento del conocimiento ( KRR , KR&R o KR² ) es un campo de la inteligencia artificial (IA) dedicado a representar información sobre el mundo en una forma que un sistema informático pueda usar para resolver tareas complejas, como diagnosticar una condición médica o tener un diálogo en lenguaje natural . La representación del conocimiento incorpora hallazgos de la psicología [1] sobre cómo los humanos resuelven problemas y representan el conocimiento, con el fin de diseñar formalismos que faciliten el diseño y la construcción de sistemas complejos. La representación y razonamiento del conocimiento también incorpora hallazgos de la lógica para automatizar varios tipos de razonamiento .
Entre los formalismos de representación del conocimiento se incluyen las redes semánticas , los marcos , las reglas , los programas lógicos y las ontologías . Entre los motores de razonamiento automatizado se incluyen los motores de inferencia , los demostradores de teoremas , los generadores de modelos y los clasificadores .
Historia
Los primeros trabajos sobre representación computarizada del conocimiento se centraron en los solucionadores de problemas generales, como el sistema General Problem Solver (GPS) desarrollado por Allen Newell y Herbert A. Simon en 1959 y el Advice Taker propuesto por John McCarthy también en 1959. El GPS incluía estructuras de datos para la planificación y la descomposición. El sistema comenzaba con un objetivo. Luego descomponía ese objetivo en subobjetivos y luego se disponía a construir estrategias que pudieran lograr cada subobjetivo. El Advisor Taker, por otro lado, proponía el uso del cálculo de predicados para representar el razonamiento de sentido común .
Muchos de los primeros enfoques de representación del conocimiento en la inteligencia artificial (IA) utilizaban representaciones gráficas y redes semánticas , similares a los gráficos de conocimiento actuales. En dichos enfoques, la resolución de problemas era una forma de recorrido de gráficos [2] o de búsqueda de rutas, como en el algoritmo de búsqueda A* . Las aplicaciones típicas incluían la formación de planes de robots y la realización de juegos.
Otros investigadores se centraron en el desarrollo de demostradores de teoremas automatizados para la lógica de primer orden, motivados por el uso de la lógica matemática para formalizar las matemáticas y automatizar la demostración de teoremas matemáticos. Un paso importante en esta dirección fue el desarrollo del método de resolución por parte de John Alan Robinson .
Mientras tanto, John McCarthy y Pat Hayes desarrollaron el cálculo de situaciones como una representación lógica del conocimiento de sentido común sobre las leyes de causa y efecto. Cordell Green , a su vez, mostró cómo hacer la formación de planes de robots aplicando la resolución al cálculo de situaciones. También mostró cómo usar la resolución para la respuesta a preguntas y la programación automática. [3]
Por el contrario, los investigadores del Instituto Tecnológico de Massachusetts (MIT) rechazaron el paradigma del procedimiento de prueba uniforme de resolución y abogaron en su lugar por la incorporación procedimental del conocimiento. [4] El conflicto resultante entre el uso de representaciones lógicas y el uso de representaciones procedimentales se resolvió a principios de la década de 1970 con el desarrollo de la programación lógica y Prolog , utilizando la resolución SLD para tratar las cláusulas de Horn como procedimientos de reducción de objetivos.
El desarrollo temprano de la programación lógica fue en gran medida un fenómeno europeo. En América del Norte, investigadores de IA como Ed Feigenbaum y Frederick Hayes-Roth abogaron por la representación de conocimiento específico de un dominio en lugar de razonamiento de propósito general. [5]
Estos esfuerzos llevaron a la revolución cognitiva en psicología y a la fase de la IA centrada en la representación del conocimiento que dio lugar a sistemas expertos en los años 1970 y 1980, sistemas de producción , lenguajes marco , etc. En lugar de solucionadores de problemas generales, la IA cambió su enfoque hacia sistemas expertos que pudieran igualar la competencia humana en una tarea específica, como el diagnóstico médico. [6]
Los sistemas expertos nos dieron la terminología que todavía se usa hoy en día, donde los sistemas de IA se dividen en una base de conocimiento , que incluye hechos y reglas sobre un dominio de problema, y un motor de inferencia , que aplica el conocimiento en la base de conocimiento para responder preguntas y resolver problemas en el dominio. En estos primeros sistemas, los hechos en la base de conocimiento tendían a ser una estructura bastante plana, esencialmente afirmaciones sobre los valores de las variables utilizadas por las reglas. [7]
Mientras tanto, Marvin Minsky desarrolló el concepto de marco a mediados de la década de 1970. [8] Un marco es similar a una clase de objeto: es una descripción abstracta de una categoría que describe cosas en el mundo, problemas y soluciones potenciales. Los marcos se utilizaron originalmente en sistemas orientados a la interacción humana, por ejemplo, la comprensión del lenguaje natural y los entornos sociales en los que varias expectativas predeterminadas, como pedir comida en un restaurante, reducen el espacio de búsqueda y permiten que el sistema elija respuestas apropiadas a situaciones dinámicas.
No pasó mucho tiempo antes de que las comunidades de marcos y los investigadores basados en reglas se dieran cuenta de que había una sinergia entre sus enfoques. Los marcos eran buenos para representar el mundo real, descrito como clases, subclases, ranuras (valores de datos) con varias restricciones sobre los valores posibles. Las reglas eran buenas para representar y utilizar la lógica compleja, como el proceso para hacer un diagnóstico médico. Se desarrollaron sistemas integrados que combinaban marcos y reglas. Uno de los más poderosos y conocidos fue el Knowledge Engineering Environment (KEE) de 1983 de Intellicorp . KEE tenía un motor de reglas completo con encadenamiento hacia adelante y hacia atrás . También tenía una base de conocimiento completa basada en marcos con activadores, ranuras (valores de datos), herencia y paso de mensajes. Aunque el paso de mensajes se originó en la comunidad orientada a objetos en lugar de la IA, fue rápidamente adoptado por los investigadores de IA también en entornos como KEE y en los sistemas operativos para máquinas Lisp de Symbolics , Xerox y Texas Instruments . [9]
La integración de marcos, reglas y programación orientada a objetos fue impulsada significativamente por empresas comerciales como KEE y Symbolics, que surgieron de varios proyectos de investigación. Al mismo tiempo, hubo otra corriente de investigación que estaba menos enfocada en lo comercial y estaba impulsada por la lógica matemática y la demostración automatizada de teoremas. [ cita requerida ] Uno de los lenguajes más influyentes en esta investigación fue el lenguaje KL-ONE de mediados de los 80. KL-ONE era un lenguaje de marco que tenía una semántica rigurosa, definiciones formales para conceptos como una relación Is-A . [10] KL-ONE y los lenguajes que fueron influenciados por él, como Loom, tenían un motor de razonamiento automatizado que se basaba en la lógica formal en lugar de en reglas IF-THEN. Este razonador se llama clasificador. Un clasificador puede analizar un conjunto de declaraciones e inferir nuevas afirmaciones, por ejemplo, redefinir una clase para que sea una subclase o superclase de alguna otra clase que no se especificó formalmente. De esta manera, el clasificador puede funcionar como un motor de inferencia, deduciendo nuevos hechos a partir de una base de conocimiento existente. El clasificador también puede proporcionar una comprobación de la coherencia en una base de conocimiento (que en el caso de los lenguajes KL-ONE también se denomina ontología). [11]
Otro campo de investigación de la representación del conocimiento fue el problema del razonamiento de sentido común . Una de las primeras conclusiones que se aprendieron al intentar crear software que pudiera funcionar con el lenguaje natural humano fue que los humanos recurren regularmente a una amplia base de conocimientos sobre el mundo real que simplemente damos por sentado pero que no son del todo obvios para un agente artificial, como los principios básicos de la física del sentido común, la causalidad, las intenciones, etc. Un ejemplo es el problema del marco , que en una lógica impulsada por eventos debe haber axiomas que establezcan que las cosas mantienen su posición de un momento a otro a menos que sean movidas por alguna fuerza externa. Para crear un verdadero agente de inteligencia artificial que pueda conversar con humanos utilizando el lenguaje natural y pueda procesar declaraciones y preguntas básicas sobre el mundo, es esencial representar este tipo de conocimiento. [12] Además del cálculo de situaciones de McCarthy y Hayes, uno de los programas más ambiciosos para abordar este problema fue el proyecto Cyc de Doug Lenat . Cyc estableció su propio lenguaje de marcos y tuvo un gran número de analistas que documentaron varias áreas de razonamiento de sentido común en ese lenguaje. El conocimiento registrado en Cyc incluía modelos de sentido común sobre el tiempo, la causalidad, la física, las intenciones y muchos otros. [13]
El punto de partida para la representación del conocimiento es la hipótesis de representación del conocimiento formalizada por primera vez por Brian C. Smith en 1985: [14]
Cualquier proceso inteligente encarnado mecánicamente estará compuesto de ingredientes estructurales que a) nosotros, como observadores externos, tomamos naturalmente como una explicación proposicional del conocimiento que exhibe el proceso general, y b) independientemente de dicha atribución semántica externa, desempeñan un papel formal pero causal y esencial en la generación del comportamiento que manifiesta ese conocimiento.
Una de las áreas más activas de investigación sobre la representación del conocimiento es la Web Semántica . [ cita requerida ] La Web Semántica busca añadir una capa de semántica (significado) sobre la Internet actual. En lugar de indexar sitios web y páginas a través de palabras clave, la Web Semántica crea grandes ontologías de conceptos. La búsqueda de un concepto será más eficaz que las búsquedas tradicionales de solo texto. Los lenguajes de marco y la clasificación automática desempeñan un papel importante en la visión de la Web Semántica del futuro. La clasificación automática proporciona a los desarrolladores la tecnología para proporcionar orden en una red de conocimiento en constante evolución. Definir ontologías que sean estáticas e incapaces de evolucionar sobre la marcha sería muy limitante para los sistemas basados en Internet. La tecnología de clasificación proporciona la capacidad de lidiar con el entorno dinámico de Internet.
Los proyectos recientes financiados principalmente por la Agencia de Proyectos de Investigación Avanzada de Defensa (DARPA) han integrado lenguajes de marco y clasificadores con lenguajes de marcado basados en XML. El marco de descripción de recursos (RDF) proporciona la capacidad básica para definir clases, subclases y propiedades de objetos. El lenguaje de ontología web (OWL) proporciona niveles adicionales de semántica y permite la integración con motores de clasificación. [15] [16]
Descripción general
La representación del conocimiento es un campo de la inteligencia artificial que se centra en el diseño de representaciones informáticas que capturan información sobre el mundo que puede utilizarse para resolver problemas complejos.
La justificación de la representación del conocimiento es que el código procedimental convencional no es el mejor formalismo para resolver problemas complejos. La representación del conocimiento hace que el software complejo sea más fácil de definir y mantener que el código procedimental y puede utilizarse en sistemas expertos .
Por ejemplo, hablar con expertos en términos de reglas de negocio en lugar de código reduce la brecha semántica entre usuarios y desarrolladores y hace que el desarrollo de sistemas complejos sea más práctico.
La representación del conocimiento va de la mano con el razonamiento automatizado porque uno de los propósitos principales de representar explícitamente el conocimiento es poder razonar sobre ese conocimiento, hacer inferencias, afirmar nuevos conocimientos, etc. Prácticamente todos los lenguajes de representación del conocimiento tienen un motor de razonamiento o inferencia como parte del sistema. [17]
Un equilibrio clave en el diseño de formalismos de representación del conocimiento es el que existe entre expresividad y manejabilidad. [18] La lógica de primer orden (FOL), con su alto poder expresivo y su capacidad para formalizar gran parte de las matemáticas, es un estándar para comparar la expresividad de los lenguajes de representación del conocimiento.
Se podría decir que FOL tiene dos desventajas como formalismo de representación del conocimiento por derecho propio, a saber, la facilidad de uso y la eficiencia de la implementación. En primer lugar, debido a su alto poder expresivo, FOL permite muchas formas de expresar la misma información, y esto puede dificultar a los usuarios la formalización o incluso la comprensión del conocimiento expresado en formas complejas y orientadas a las matemáticas. En segundo lugar, debido a sus complejos procedimientos de prueba, puede resultar difícil para los usuarios comprender pruebas y explicaciones complejas, y puede resultar difícil que las implementaciones sean eficientes. En consecuencia, un FOL sin restricciones puede resultar intimidante para muchos desarrolladores de software.
Uno de los descubrimientos clave de la investigación en IA en la década de 1970 fue que los lenguajes que no tienen todo el poder expresivo de FOL aún pueden proporcionar un poder expresivo cercano al mismo de FOL, pero pueden ser más fáciles de entender tanto para el desarrollador promedio como para la computadora. Muchos de los primeros formalismos de representación del conocimiento de IA, desde bases de datos hasta redes semánticas y sistemas de producción, pueden considerarse como la toma de diversas decisiones de diseño sobre cómo equilibrar el poder expresivo con la naturalidad de la expresión y la eficiencia. [19] En particular, este acto de equilibrio fue una motivación impulsora para el desarrollo de reglas IF-THEN en sistemas expertos basados en reglas .
Un acto de equilibrio similar también fue una motivación para el desarrollo de la programación lógica (PL) y el lenguaje de programación lógica Prolog . Los programas lógicos tienen una sintaxis basada en reglas, que se confunde fácilmente con la sintaxis IF-THEN de las reglas de producción . Pero los programas lógicos tienen una semántica lógica bien definida, mientras que los sistemas de producción no la tienen.
La primera forma de programación lógica se basó en el subconjunto de cláusulas de Horn de FOL. Pero las extensiones posteriores de LP incluyeron la regla de inferencia de negación como falla , que convierte a LP en una lógica no monótona para el razonamiento predeterminado . La semántica extendida resultante de LP es una variación de la semántica estándar de las cláusulas de Horn y FOL, y es una forma de semántica de base de datos, [20] que incluye la suposición de nombre único y una forma de suposición de mundo cerrado . Estas suposiciones son mucho más difíciles de enunciar y razonar explícitamente utilizando la semántica estándar de FOL.
En un artículo clave de 1993 sobre el tema, Randall Davis del MIT describió cinco funciones distintas para analizar un marco de representación del conocimiento: [21]
- "Una representación de conocimiento (KR) es fundamentalmente un sustituto, un sustituto de la cosa misma, utilizado para permitir que una entidad determine consecuencias pensando en lugar de actuando", [21] es decir, "razonando sobre el mundo en lugar de actuar en él". [21]
- “Es un conjunto de compromisos ontológicos”, [21] es decir, “una respuesta a la pregunta: ¿En qué términos debo pensar el mundo?” [21]
- "Es una teoría fragmentaria del razonamiento inteligente, expresada en términos de tres componentes: (i) la concepción fundamental de la representación del razonamiento inteligente; (ii) el conjunto de inferencias que la representación sanciona; y (iii) el conjunto de inferencias que recomienda." [21]
- "Es un medio para la computación pragmáticamente eficiente", [21] es decir, "el entorno computacional en el que se lleva a cabo el pensamiento. Una contribución a esta eficiencia pragmática la proporciona la guía que proporciona una representación para organizar la información" [21] de modo de "facilitar la realización de las inferencias recomendadas". [21]
- “Es un medio de expresión humana”, [21] es decir, “un lenguaje en el que decimos cosas sobre el mundo”. [21]
La representación y el razonamiento del conocimiento son una tecnología clave para la Web semántica . Los lenguajes basados en el modelo Frame con clasificación automática proporcionan una capa de semántica sobre la Internet existente. En lugar de buscar mediante cadenas de texto como es habitual hoy en día, será posible definir consultas lógicas y encontrar páginas que correspondan a esas consultas. [15] El componente de razonamiento automatizado en estos sistemas es un motor conocido como clasificador. Los clasificadores se centran en las relaciones de subsunción en una base de conocimiento en lugar de en las reglas. Un clasificador puede inferir nuevas clases y cambiar dinámicamente la ontología a medida que se dispone de nueva información. Esta capacidad es ideal para el espacio de información en constante cambio y evolución de Internet. [22]
La Web Semántica integra conceptos de representación y razonamiento del conocimiento con lenguajes de marcado basados en XML. El Resource Description Framework (RDF) proporciona las capacidades básicas para definir objetos basados en el conocimiento en Internet con características básicas como relaciones Is-A y propiedades de objetos. El Web Ontology Language (OWL) añade semántica adicional y se integra con razonadores de clasificación automática. [16]
Características
En 1985, Ron Brachman categorizó los temas centrales para la representación del conocimiento de la siguiente manera: [23]
- Primitivos. ¿Cuál es el marco subyacente utilizado para representar el conocimiento? Las redes semánticas fueron uno de los primeros primitivos de representación del conocimiento. También, las estructuras de datos y los algoritmos para la búsqueda rápida general. En esta área, existe una fuerte superposición con la investigación en estructuras de datos y algoritmos en informática. En los primeros sistemas, el lenguaje de programación Lisp, que se modeló a partir del cálculo lambda , se utilizó a menudo como una forma de representación funcional del conocimiento. Los marcos y las reglas fueron el siguiente tipo de primitivo. Los lenguajes de marco tenían varios mecanismos para expresar y aplicar restricciones en los datos del marco. Todos los datos en los marcos se almacenan en ranuras. Las ranuras son análogas a las relaciones en el modelado de relación entidad-relación y a las propiedades de objeto en el modelado orientado a objetos. Otra técnica para los primitivos es definir lenguajes que se modelan a partir de la lógica de primer orden (FOL). El ejemplo más conocido es Prolog , pero también hay muchos entornos de demostración de teoremas de propósito especial. Estos entornos pueden validar modelos lógicos y pueden deducir nuevas teorías a partir de modelos existentes. Esencialmente, automatizan el proceso por el que pasaría un lógico al analizar un modelo. La tecnología de demostración de teoremas tuvo algunas aplicaciones prácticas específicas en el área de la ingeniería de software. Por ejemplo, es posible demostrar que un programa de software se adhiere estrictamente a una especificación lógica formal.
- Meta-representación. Esto también se conoce como el problema de la reflexión en la ciencia informática. Se refiere a la capacidad de un formalismo de tener acceso a información sobre su propio estado. Un ejemplo es el protocolo de meta-objeto en Smalltalk y CLOS que da a los desarrolladores acceso en tiempo de ejecución a los objetos de clase y les permite redefinir dinámicamente la estructura de la base de conocimiento incluso en tiempo de ejecución. Meta-representación significa que el lenguaje de representación de conocimiento se expresa en ese lenguaje. Por ejemplo, en la mayoría de los entornos basados en Frames, todos los frames serían instancias de una clase de frame. Ese objeto de clase se puede inspeccionar en tiempo de ejecución, de modo que el objeto pueda comprender e incluso cambiar su estructura interna o la estructura de otras partes del modelo. En entornos basados en reglas, las reglas también eran generalmente instancias de clases de reglas. Parte del metaprotocolo para reglas eran las metarreglas que priorizaban la activación de reglas.
- Incompletitud . La lógica tradicional requiere axiomas y restricciones adicionales para abordar el mundo real en lugar del mundo de las matemáticas. Además, a menudo resulta útil asociar grados de confianza a una afirmación, es decir, no decir simplemente "Sócrates es humano", sino "Sócrates es humano con un 50% de confianza". Esta fue una de las primeras innovaciones de la investigación de sistemas expertos que migró a algunas herramientas comerciales: la capacidad de asociar factores de certeza con reglas y conclusiones. Las investigaciones posteriores en esta área se conocen como lógica difusa . [24]
- Definiciones y universales versus hechos y valores predeterminados. Los universales son afirmaciones generales sobre el mundo, como "Todos los humanos son mortales". Los hechos son ejemplos específicos de universales, como "Sócrates es un humano y, por lo tanto, mortal". En términos lógicos, las definiciones y los universales tratan de cuantificaciones universales , mientras que los hechos y valores predeterminados tratan de cuantificaciones existenciales . Todas las formas de representación del conocimiento deben abordar este aspecto y la mayoría lo hace con alguna variante de la teoría de conjuntos, modelando los universales como conjuntos y subconjuntos y las definiciones como elementos de esos conjuntos.
- Razonamiento no monótono . El razonamiento no monótono permite varios tipos de razonamiento hipotético. El sistema asocia los hechos afirmados con las reglas y los hechos utilizados para justificarlos y, a medida que esos hechos cambian, actualiza también el conocimiento dependiente. En los sistemas basados en reglas, esta capacidad se conoce como sistema de mantenimiento de la verdad . [25]
- Adecuación expresiva . El estándar que Brachman y la mayoría de los investigadores de IA utilizan para medir la adecuación expresiva suele ser la lógica de primer orden (FOL). Las limitaciones teóricas implican que una implementación completa de FOL no es práctica. Los investigadores deben tener claro qué tan expresiva (qué cantidad de poder expresivo de FOL completo) pretenden que sea su representación. [26]
- Eficiencia de razonamiento. Se refiere a la eficiencia de ejecución de un sistema: la capacidad de la base de conocimiento para actualizarse y del razonador para desarrollar nuevas inferencias en un tiempo razonable. En cierto modo, esta es la otra cara de la adecuación expresiva. En general, cuanto más potente sea una representación, cuanto más adecuación expresiva tenga, menos eficiente será su motor de razonamiento automatizado . La eficiencia fue a menudo un problema, especialmente para las primeras aplicaciones de la tecnología de representación del conocimiento. Por lo general, se implementaban en entornos interpretados como Lisp, que eran lentos en comparación con las plataformas más tradicionales de la época.
Ingeniería ontológica
En los primeros años de los sistemas basados en el conocimiento, las bases de conocimiento eran bastante pequeñas. Las bases de conocimiento que se suponía que debían resolver problemas reales en lugar de realizar demostraciones de prueba de concepto debían centrarse en problemas bien definidos. Por ejemplo, no solo en el diagnóstico médico en su conjunto, sino también en el diagnóstico médico de ciertos tipos de enfermedades.
A medida que la tecnología basada en el conocimiento se fue ampliando, se hizo evidente la necesidad de bases de conocimiento más grandes y modulares que pudieran comunicarse e integrarse entre sí. Esto dio lugar a la disciplina de la ingeniería ontológica, que consiste en diseñar y construir grandes bases de conocimiento que pudieran utilizarse en múltiples proyectos. Uno de los principales proyectos de investigación en esta área fue el proyecto Cyc . Cyc fue un intento de construir una enorme base de conocimiento enciclopédica que contuviera no solo conocimiento experto, sino también conocimiento de sentido común. Al diseñar un agente de inteligencia artificial, pronto se dieron cuenta de que representar el conocimiento de sentido común, conocimiento que los humanos simplemente dan por sentado, era esencial para crear una IA que pudiera interactuar con los humanos utilizando el lenguaje natural. Cyc estaba destinado a abordar este problema. El lenguaje que definieron se conoció como CycL .
Después de CycL, se han desarrollado varios lenguajes de ontología . La mayoría son lenguajes declarativos y son lenguajes de marco o se basan en lógica de primer orden . La modularidad (la capacidad de definir límites en torno a dominios específicos y espacios de problemas) es esencial para estos lenguajes porque, como afirma Tom Gruber , "Cada ontología es un tratado, un acuerdo social entre personas con un motivo común para compartir". Siempre hay muchos puntos de vista en competencia y diferentes que hacen imposible cualquier ontología de propósito general. Una ontología de propósito general tendría que ser aplicable en cualquier dominio y se deben unificar diferentes áreas de conocimiento. [27]
Existe una larga historia de trabajo que intenta construir ontologías para una variedad de dominios de tareas, por ejemplo, una ontología para líquidos, [28] el modelo de elementos concentrados ampliamente utilizado para representar circuitos electrónicos (por ejemplo, [29] ), así como ontologías para el tiempo, las creencias e incluso la programación misma. Cada una de ellas ofrece una forma de ver alguna parte del mundo.
El modelo de elementos concentrados, por ejemplo, sugiere que pensemos en los circuitos en términos de componentes con conexiones entre ellos, con señales que fluyen instantáneamente a lo largo de las conexiones. Esta es una visión útil, pero no la única posible. Una ontología diferente surge si necesitamos prestar atención a la electrodinámica en el dispositivo: aquí las señales se propagan a una velocidad finita y un objeto (como una resistencia) que antes se consideraba un componente único con un comportamiento de E/S puede ahora tener que considerarse como un medio extendido a través del cual fluye una onda electromagnética.
Por supuesto, las ontologías pueden escribirse en una amplia variedad de lenguajes y notaciones (por ejemplo, lógica, LISP, etc.); la información esencial no es la forma de ese lenguaje sino el contenido, es decir, el conjunto de conceptos que se ofrecen como una forma de pensar sobre el mundo. En pocas palabras, lo importante son nociones como conexiones y componentes, no la elección entre escribirlos como predicados o como construcciones de LISP.
El compromiso que se asume al seleccionar una u otra ontología puede producir una visión radicalmente diferente de la tarea en cuestión. Consideremos la diferencia que surge al seleccionar la visión de elementos agrupados de un circuito en lugar de la visión electrodinámica del mismo dispositivo. Como segundo ejemplo, el diagnóstico médico visto en términos de reglas (por ejemplo, MYCIN ) parece sustancialmente diferente de la misma tarea vista en términos de marcos (por ejemplo, INTERNIST). Mientras que MYCIN ve el mundo médico como compuesto de asociaciones empíricas que conectan los síntomas con las enfermedades, INTERNIST ve un conjunto de prototipos, en particular enfermedades prototípicas, que deben compararse con el caso en cuestión.
Véase también
- Alfabeto del pensamiento humano
- Revisión de creencias
- Fragmentación (psicología)
- Base de conocimientos de sentido común
- Gráfico conceptual
- Pirámide DIKW
- DATR , un lenguaje para la representación del conocimiento léxico
- FO(.) , un lenguaje KR basado en lógica de primer orden
- Programación lógica
- Modelado lógico-lingüístico
- Gráfico de conocimiento
- Gestión del conocimiento
- Mapa mental
- Tecnología semántica
- Sistema basado en valoración
Referencias
- ^ Schank, Roger; Abelson, Robert (1977). Guiones, planes, objetivos y comprensión: una investigación sobre las estructuras del conocimiento humano . Lawrence Erlbaum Associates, Inc.
- ^ Doran, JE; Michie, D. (20 de septiembre de 1966). "Experimentos con el programa Graph Traverser". Proc. R. Soc. Lond. A . 294 (1437): 235– 259. Bibcode :1966RSPSA.294..235D. doi :10.1098/rspa.1966.0205. S2CID 21698093.
- ^ Green, Cordell. Aplicación de la demostración de teoremas a la resolución de problemas (PDF) . IJCAI 1969.
- ^ Hewitt, C., 2009. Robustez de inconsistencia en programas lógicos. Preimpresión arXiv arXiv:0904.3036.
- ^ Kowalski, Robert (1986). "La limitación de la lógica". Actas de la decimocuarta conferencia anual de la ACM sobre informática de 1986 - CSC '86 . págs. 7–13 . doi :10.1145/324634.325168. ISBN 0-89791-177-6. Número de identificación del sujeto 17211581.
- ^ Nilsson, Nils (1995). "Con la vista puesta en el premio". AI Magazine . 16 : 2.
- ^ Hayes-Roth, Frederick; Waterman, Donald; Lenat, Douglas (1983). Construcción de sistemas expertos. Addison-Wesley. ISBN 978-0-201-10686-2.
- ^ Marvin Minsky, Un marco para representar el conocimiento, MIT-AI Laboratory Memo 306, junio de 1974
- ^ Mettrey, William (1987). "Una evaluación de herramientas para construir grandes sistemas basados en el conocimiento". AI Magazine . 8 (4). Archivado desde el original el 10 de noviembre de 2013. Consultado el 24 de diciembre de 2013 .
- ^ Brachman, Ron (1978). "Un paradigma estructural para representar el conocimiento" (PDF) . Informe técnico de Bolt, Beranek y Neumann (3605). Archivado (PDF) del original el 30 de abril de 2020.
- ^ MacGregor, Robert (junio de 1991). "Uso de un clasificador de descripción para mejorar la representación del conocimiento". IEEE Expert . 6 (3): 41– 46. doi :10.1109/64.87683. S2CID 29575443.
- ^ McCarthy, J., y Hayes, PJ 1969. Algunos problemas filosóficos desde el punto de vista de la inteligencia artificial en Wayback Machine (archivado el 25 de agosto de 2013). En Meltzer, B., y Michie, D., eds., Machine Intelligence 4. Edimburgo: Edinburgh University Press. 463–502.
- ^ Lenat, Doug; RV Guha (enero de 1990). Construcción de grandes sistemas basados en el conocimiento: representación e inferencia en el proyecto Cyc . Addison-Wesley. ISBN 978-0201517521.
- ^ Smith, Brian C. (1985). "Prólogo a Reflexiones y semántica en un lenguaje procedimental". En Ronald Brachman y Hector J. Levesque (ed.). Lecturas sobre representación del conocimiento . Morgan Kaufmann. págs. 31–40. ISBN 978-0-934613-01-9.
- ^ ab Berners-Lee, Tim; Hendler, James; Lassila, Ora (17 de mayo de 2001). «La Web semántica: una nueva forma de contenido web que tiene sentido para las computadoras desencadenará una revolución de nuevas posibilidades». Scientific American . 284 (5): 34– 43. doi :10.1038/scientificamerican0501-34. Archivado desde el original el 24 de abril de 2013.
- ^ ab Knublauch, Holger; Oberle, Daniel; Tetlow, Phil; Wallace, Evan (9 de marzo de 2006). "Una introducción a la Web semántica para desarrolladores de software orientado a objetos". W3C . Archivado desde el original el 6 de enero de 2018 . Consultado el 30 de julio de 2008 .
- ^ Hayes-Roth, Frederick; Waterman, Donald; Lenat, Douglas (1983). Construcción de sistemas expertos. Addison-Wesley. págs. 6-7. ISBN 978-0-201-10686-2.
- ^ Levesque, HJ y Brachman, RJ, 1987. Expresividad y manejabilidad en la representación del conocimiento y el razonamiento 1. Inteligencia computacional, 3(1), pp.78-93.
- ^ Levesque, Hector; Brachman, Ronald (1985). "Un equilibrio fundamental entre la representación del conocimiento y el razonamiento". En Ronald Brachman y Hector J. Levesque (ed.). Lecturas sobre la representación del conocimiento . Morgan Kaufmann. pág. 49. ISBN 978-0-934613-01-9
La buena noticia de reducir el servicio de KR a la demostración de teoremas es que ahora tenemos una noción muy clara y muy específica de lo que el sistema de KR debería hacer; la mala noticia es que también está claro que los servicios no se pueden proporcionar... decidir si una oración en FOL es o no un teorema... es irresoluble
. - ^ Russell, Stuart J. ; Norvig, Peter. (2021). Inteligencia artificial: un enfoque moderno (4.ª ed.). Hoboken: Pearson. pág. 282. ISBN 978-0134610993. Número de serie LCCN 20190474.
- ^ abcdefghijk Davis, Randall; Shrobe, Howard; Szolovits, Peter (primavera de 1993). "¿Qué es una representación del conocimiento?". AI Magazine . 14 (1): 17– 33. Archivado desde el original el 2012-04-06 . Consultado el 2011-03-23 .
- ^ Macgregor, Robert (13 de agosto de 1999). "Retrospectiva sobre Loom". isi.edu . Instituto de Ciencias de la Información. Archivado desde el original el 25 de octubre de 2013 . Consultado el 10 de diciembre de 2013 .
- ^ Brachman, Ron (1985). "Introducción". En Brachman, Ronald; Levesque, Hector J. (eds.). Lecturas sobre representación del conocimiento . Morgan Kaufmann. págs. XVI– XVII. ISBN 978-0-934613-01-9.
- ^ Bih, Joseph (2006). "Cambio de paradigma: una introducción a la lógica difusa" (PDF) . IEEE Potentials . 25 : 6– 21. doi :10.1109/MP.2006.1635021. S2CID 15451765. Archivado (PDF) desde el original el 12 de junio de 2014. Consultado el 24 de diciembre de 2013 .
- ^ Zlatarva, Nellie (1992). "Sistemas de mantenimiento de la verdad y su aplicación para verificar bases de conocimiento de sistemas expertos". Revisión de inteligencia artificial . 6 : 67– 110. doi :10.1007/bf00155580. S2CID 24696160.
- ^ Levesque, Hector; Brachman, Ronald (1985). "Un equilibrio fundamental entre la representación del conocimiento y el razonamiento". En Ronald Brachman y Hector J. Levesque (ed.). Lecturas sobre la representación del conocimiento . Morgan Kaufmann. págs. 41–70. ISBN 978-0-934613-01-9.
- ^ Russell, Stuart J.; Norvig, Peter (2010), Inteligencia artificial: un enfoque moderno (3.ª ed.), Upper Saddle River, Nueva Jersey: Prentice Hall, ISBN 0-13-604259-7 , pág. 437-439
- ^ Hayes P, Física ingenua I: Ontología para líquidos. Informe de la Universidad de Essex, 1978, Essex, Reino Unido.
- ^ Davis R, Shrobe HE, Representación de la estructura y el comportamiento del hardware digital, IEEE Computer, Número especial sobre representación del conocimiento, 16(10):75-82.
Lectura adicional
- Ronald J. Brachman ; Qué es y qué no es IS-A. Un análisis de vínculos taxonómicos en redes semánticas; IEEE Computer, 16 (10); octubre de 1983
- Ronald J. Brachman , Hector J. Levesque Representación del conocimiento y razonamiento , Morgan Kaufmann, 2004 ISBN 978-1-55860-932-7
- Ronald J. Brachman , Hector J. Levesque (eds.) Lecturas sobre representación del conocimiento , Morgan Kaufmann, 1985, ISBN 0-934613-01-X
- Chein, M., Mugnier, M.-L. (2009), Representación de conocimiento basada en gráficos: fundamentos computacionales de gráficos conceptuales , Springer, 2009, ISBN 978-1-84800-285-2 .
- Randall Davis, Howard Shrobe y Peter Szolovits; ¿Qué es una representación del conocimiento? AI Magazine, 14(1):17-33,1993
- Ronald Fagin , Joseph Y. Halpern , Yoram Moses , Moshe Y. Vardi Razonamiento sobre el conocimiento , MIT Press, 1995, ISBN 0-262-06162-7
- Jean-Luc Hainaut, Jean-Marc Hick, Vincent Englebert, Jean Henrard, Didier Roland: Comprensión de las implementaciones de las relaciones IS-A. ER 1996: 42-57
- Hermann Helbig: Representación del conocimiento y semántica del lenguaje natural , Springer, Berlín, Heidelberg, Nueva York 2006
- Frank van Harmelen, Vladimir Lifschitz y Bruce Porter: Manual de representación del conocimiento 2007.
- Arthur B. Markman: Representación del conocimiento Lawrence Erlbaum Associates, 1998
- John F. Sowa : Representación del conocimiento : fundamentos lógicos, filosóficos y computacionales. Brooks/Cole: Nueva York, 2000
- Adrian Walker, Michael McCord, John F. Sowa y Walter G. Wilson: Sistemas de conocimiento y Prolog , segunda edición, Addison-Wesley, 1990
- Mary-Anne Williams y Hans Rott: "Fronteras en la revisión de creencias, Kluwer", 2001.
Enlaces externos
- ¿Qué es una representación del conocimiento? por Randall Davis y otros
- Introducción al modelado del conocimiento por Pejman Makhfi
- Curso de Introducción a la Lógica Descriptiva a cargo de Enrico Franconi, Facultad de Informática, Universidad Libre de Bolzano, Italia
- DATR Lenguaje de representación del conocimiento léxico
- Página de inicio del proyecto Loom
- Principios de representación y razonamiento del conocimiento incorporados
- Descripción Lógica en la práctica: una aplicación CLÁSICA
- La iniciativa de marcado de reglas
- Nelements KOS: un sistema de representación de conocimiento en 3D no libre