Representación del Conocimiento y Automatización de Software
La representación del conocimiento es una disciplina que persigue la representación de la información del mundo real de una manera que pueda ser interpretada por las máquinas para resolver, mediante inferencia, problemas complejos.
Tradicionalmente ha sido una disciplina de la inteligencia artificial y últimamente ha adquirido gran relevancia por su utilización en el ámbito de la semántica. El proyecto de la Web Semántica, liderado por la W3C, es un claro ejemplo de ello.
Aunque existen muchos enfoques para la representación del conocimiento, comúnmente todos persiguen: definir los conceptos, las relaciones y las reglas que definen la información. Mediante los diferentes conceptos podemos clasificar la información y mediante las relaciones y reglas podemos inferir (razonar) sobre ella. Por lo tanto, en vez de tener información “plana” tendremos además una meta-información que nos permitiría procesarla.
Desde la perspectiva de los lenguajes
En anteriores publicaciones vimos como los Language Workbenches definen los lenguajes mediante las sintaxis abstracta y concreta y las semánticas estáticas y dinámicas. Si nos damos cuenta esa definición sería la meta-información que hace que un programa sea una representación del conocimiento y que, por tanto, podemos utilizar todo el potencial que esta disciplina nos aporta.
Se suele pensar en los Language Workbenches como generadores de código pero, enfocados desde el punto de vista de la representación del conocimiento y de la semántica, pueden ofrecernos muchos más servicios. Enumeramos algunos:
Tradicionalmente ha sido una disciplina de la inteligencia artificial y últimamente ha adquirido gran relevancia por su utilización en el ámbito de la semántica. El proyecto de la Web Semántica, liderado por la W3C, es un claro ejemplo de ello.
Aunque existen muchos enfoques para la representación del conocimiento, comúnmente todos persiguen: definir los conceptos, las relaciones y las reglas que definen la información. Mediante los diferentes conceptos podemos clasificar la información y mediante las relaciones y reglas podemos inferir (razonar) sobre ella. Por lo tanto, en vez de tener información “plana” tendremos además una meta-información que nos permitiría procesarla.
Desde la perspectiva de los lenguajes
En anteriores publicaciones vimos como los Language Workbenches definen los lenguajes mediante las sintaxis abstracta y concreta y las semánticas estáticas y dinámicas. Si nos damos cuenta esa definición sería la meta-información que hace que un programa sea una representación del conocimiento y que, por tanto, podemos utilizar todo el potencial que esta disciplina nos aporta.
Se suele pensar en los Language Workbenches como generadores de código pero, enfocados desde el punto de vista de la representación del conocimiento y de la semántica, pueden ofrecernos muchos más servicios. Enumeramos algunos:
- Generar baterías de pruebas.
- Generar cargas iniciales de datos. Relleno de estructuras de bbdd para pruebas de rendimiento.
- Auto-documentación.
- Auto-validación.
- Análisis estadísticos de los datos y de los programas.
- Inferir comportamiento de los usuarios, clientes, etc.
- Facilitar la importación y exportación de datos. Por ejemplo XBRL: lenguaje de presentación de informes de negocio extensible.
- Enlazar con ontologías estándar. Por ejemplo FIBO: ontología del negocio financiero.
- Facilitar la integración con otros sistemas.
- Razonamiento automático (machine reasoning).
Conclusión
La representación del conocimiento esta siendo un área de investigación enfocada sobre todo en el tratamiento de los datos: estructurar la información de los buscadores, análisis semánticos aplicados al Big Data, definiciones de ontologías asociadas a diferentes negocios, etc.
Construir metodologías de desarrollo que doten a los programas de esas capacidades es una puerta hacia el futuro con potenciales aun por descubrir.
Ver todos los posts Teórico.

Construir metodologías de desarrollo que doten a los programas de esas capacidades es una puerta hacia el futuro con potenciales aun por descubrir.
Ver todos los posts Teórico.
Publicado el julio 3, 2014 en Bheudek, Teórico y etiquetado en Representación del Conocimiento, Teórico. Guarda el enlace permanente. 5 comentarios.
Pingback: Resumen de la Metodología | Bheudek
Pingback: Summary of the Methodology | Bheudek
Pingback: Beneficios de la Automatización del Software en el Mundo FinTech | Bheudek
Pingback: Automatización: Proceso Completo | Bheudek
Pingback: Benefits of Automation in the World of FinTech | Bheudek