Está en la página 1de 6

BASES DE DATOS DEDUCTIVAS vs BASES DE

DATOS DIFUSAS
Marzo 9, 2010 por Juan Perez

BASES DE DATOS DEDUCTIVAS (BDD)

Es un Sistema de Bases de Datos que tenga la capacidad de definir reglas con las cuales
deducir o inferir información adicional a partir de los hechos almacenados en las bases de
datos. Puesto que parte de los fundamentos teóricos de algunos sistemas de ésta especie es
la lógica matemática, a menudo se les denomina Bases de Datos Lógicas. Una base de
datos deductiva es, en esencia, un programa lógico; mapeo de relaciones base hacia hechos,
y reglas que son usadas para definir nuevas relaciones en términos de las relaciones base y
el procesamiento de consultas.

Manejo

 En un sistema de BDDs por lo regular se usa un lenguaje declarativo para


especificar reglas.
 Con un subconjunto de Prolog llamado Datalog se definen reglas junto con un
conjunto de relaciones existentes.

Elementos Constitutivos

Una Base de Datos Deductiva (BDD) utiliza dos tipos de especificaciones: hechos y reglas.

 Los hechos se especifican de manera similar a como se especifican las relaciones,


excepto que no es necesario incluir los nombres de los atributos. Recordemos que
una tupla en una relación describe algún hecho del mundo real cuyo significado
queda determinado en parte por los nombres de los atributos. En una BDD, el
significado del valor del atributo en una tupla queda determinado exclusivamente
por su posición dentro de la tupla.
 Las reglas se parecen un poco a las vistas relacionales. Especifican relaciones
virtuales que no están almacenadas realmente, pero que se pueden formar a partir de
los hechos aplicando mecanismos de inferencia basados en las especificaciones de
las reglas. La principal diferencia entre las reglas y las vistas es que en las primeras
puede haber recursividad y por tanto pueden producir vistas que no es posible
definir en términos de las vistas relacionales estándar. (Elmasri R. y Navathe S.B.)

Las BDD buscan derivar nuevos conocimientos a partir de datos existentes proporcionando
interrelaciones del mundo real en forma de reglas. Utilizan mecanismos internos para la
evaluación y la optimización.

Sintaxis y semántica de Datalog


 Las BDDs se componen de cláusulas de Horn
 Constituyen reglas del tipo “modus ponendo ponens“
o “Si es verdad el antecedente, entonces es verdad el consecuente”.
 La forma de escribir las cláusulas de Horn es al contrario de lo habitual.

Sistema de inferencia

 En Datalog no existen instrucciones de control. Su ejecución se basa en dos


conceptos: la unificación y el backtracking.
 Todos los objetivos terminan su ejecución bien en éxito (“verdadero”), bien en
fracaso (“falso”).

Ejemplo de una BDD

%Entidad pajaro
es_un (pájaro,animal).
metodo_movimiento(pájaro,volar).
vida(pájaro,diurna)

%Entidad albatros
es_un (albatros,pajaro).
color(albatros,blanco_negro).

%Entidad Albert
instancia(albert,albatros).

%Entidad ross
instancia(ross,albatros).

Recursividad en SQL

Esto no es posible en SQL hasta la versión 92. Sin embargo, en SQL:1999 se admite una
forma limitada de recursividad como en:

with recursive antepasado(A, P) as (


select A, P from progenitor
union
select A, antepasado.P
from progenitor, antepasado
where progenitor.P=antepasado.A
)
select * from antepasado

Ventajas

 Almacenamiento de pocos datos.


 Reglas que permiten crear combinaciones de datos.

Desventajas

 Encontrar criterios de interpretación para las reglas deductivas.


 Replantear un contexto deductivo.
 Desarrollar procedimientos eficaces de deducción.

BASES DE DATOS DIFUSAS


Es utilizada como una herramienta para representar diferentes formas de conocimiento
acerca del problema a resolver, así como para modelar las interacciones y relaciones que
existen entre sus variables. Debido a estas propiedades, los sistemas basados en reglas
difusas han sido aplicados de forma exitosa en varios dominios en los que la información
vaga o imprecisa emerge en diferentes formas.

Modelos de implementación.

Existen dos modelos:

 Iniciar con un SGBDR con información precisa y desarrollar una sintaxis que
permita formular consultas imprecisas.
 Construir un gestor de bases de datos relacionales difusas directamente.

Representación de la información

 Los elementos relacionados con la manipulación de información difusa pueden


tener representaciones diferentes:
o Una distribución normalizada de probabilidades puede ser representada por
diferentes tipos de funciones (trapezoidal, triangular, intervalar, etc.).
o Lo mismo puede decirse de la forma en la que se modelan los operadores
relacionales difusos.
 El criterio empleado para seleccionar la forma de representación puede afectar de
manera determinante la funcionalidad y desempeño de la base de datos.
 Éste debería ser uno de los puntos centrales en los que el experto ajuste la
arquitectura del SGBDRD al problema específico a tratar.
 Datos Precisos.
o Manejados usualmente mediante la representación provista por la base de
datos relacional huésped.
 Datos Imprecisos.
o Los modelos usualmente consideran dos tipos de representación para los
datos imprecisos además de la información desconocida o indeterminada
que se maneja mediante los tipos unknown, undefined y null.
 Datos imprecisos sobre dominios ordenados
o Este grupo de datos contiene distribuciones de probabilidad definidas en
dominios continuos o discretos, pero ordenados.

Datos con analogías sobre dominios discretos

 Este grupo de datos se construye sobre dominios discretos en los que existen
definidas relaciones de proximidad entre su valores.
 En este caso se deberá almacenar la representación de los datos además de la
representación de las relaciones de proximidad definidas para los valores en el
dominio.

Tipo de dato Indefinido (undefined)

 Cuando un atributo toma el valor undefined, esto refleja el hecho de que ningún
valor de su dominio es permitido.
 Por ejemplo: el número de teléfono de alguien que no tiene teléfono.

Tipo de dato desconocido (unknown)

 Los datos de este tipo expresan nuestra ignorancia sobre el valor que el atributo
toma, sin embargo expresa también que puede tomar uno de los valores del
dominio.
 Por ejemplo la fecha de nacimiento de alguien, la desconocemos pero tiene que
tener alguna.

Tipo de dato nulo (null)

 Cuando un atributo toma el valor nulo, esto significa que no tenemos información
sobre él, ya sea porque no conocemos su valor o porque es imposible asignarle un
valor del dominio.
 Por ejemplo el email de alguien es null si desconocemos su valor o si lo tiene o no.

Operadores

Igual a: Este operador modela el concepto de igualdad para datos imprecisos.

Aproximadamente igual: Este operador define el grado en el que dos valores numéricos
(no difusos) son aproximadamente iguales.

Manejo

Se utiliza el lenguaje Fuzzy SQL (FSQL) que es un lenguaje que deriva de SQL,
incorporando algunas novedades.

 Etiquetas Lingüísticas: Las etiquetas van precedidas del símbolo $


 Comparadores Difusos: Permiten comparar dos atributos o un atributo con una
constante
 Conectivas Lógicas: Pueden usarse NOT, AND y OR, para enlazar condiciones
difusas simples.
 Umbral de Cumplimiento (threshold) : Tras cada condición simple puede
imponerse un umbral de cumplimiento mínimo (por defecto es 1), con el siguiente
formato: <condición_simple> THOLD
 Constantes Difusas: Pueden usarse en el SELECT todas las constantes difusas ya
definidas: UNKNOWN, UNDEFINED y NULL, $[a,b,c,d] (Distrib. de posibilidad
Trapezoidal), $label (Etiquetas), [n,m] (Intervalo) y #n (valores aproximados).
 Función CDEG(<atributo>): Usada en la lista de selección, la función CDEG
calcula, para cada tupla, el grado de cumplimiento del atributo del argumento en la
condición de la cláusula WHERE.
 Función CDEG(*): Calcula el grado de cumplimiento de cada tupla en la condición
de forma global, para todos sus atributos y no sólo para uno de ellos en particular
 Carácter Comodín %: Similar al carácter comodín * de SQL, pero este incluye
además la función CDEG aplicada a todos los atributos de la condición.
 Condición con IS: También admite condiciones del tipo:
<atributo_difuso> IS [NOT] {UNKNOWN |
UNDEFINED | NULL}

 Cuantificadores Difusos:
o Se aplican como condición en la cláusula
HAVING que sigue a una cláusula GROUP BY.
o $Cuantificador FUZZY[r] (condición_difusa) THOLD

Ejemplos

 Dame todas las personas cuya edad es aproximadamente 20 años.

SELECT * FROM Personas


WHERE Edad FEQ #20 THOLD 0.6;

 Dame todas las personas más o menos Rubias (con grado mínimo 0.5) cuya edad es
posiblemente superior a Joven (con grado mínimo 0.8):

SELECT * FROM Personas WHERE


Pelo FEQ $Rubio THOLD 0.5 AND
Edad FGT $Joven THOLD 0.8;

Ventajas

 Almacenar Imprecisión, la información que tengamos de un atributo particular de


un objeto, aunque esta información no sea el valor exacto.
 Operar con esa información de forma coherente (especialmente en las operaciones
de consulta).
Inconvenientes

 Lenguaje de consulta incómodo, debido al gran número de parámetros que deben


utilizarse.
 Comparadores abstractos que hacen difícil la decisión de cuál debemos usar.
 Falta de estandarización, derivado de la poca popularidad de este tipo de bases de
datos.

Comparativa

Bases de Datos de Ductivas (BDD)

 Las BBDD deductivas utilizan relaciones y reglas escritas específicamente pensadas


para ellas, por lo que la apariencia es totalmente diferente a las bases de datos
ordinarias.
 Podemos preguntar sobre información implícita que será extraída al aplicar las
reglas a los datos o hechos.
 Las reglas, basadas sobre todo en transitividad y recursividad, pueden llegar a ser
notablemente complejas.
 Su aplicación se reduce a entornos experimentales, aunque su potencial comercial es
grande.

Bases de Datos Difusas

 Las BBDD difusas permiten recuperar datos con tan solo una vaga descripción de lo
que deseamos obtener.
 Puede implementarse, no sin dificultades, en SGBD ordinarios y el lenguaje de
acceso a esta es una extensión de SQL.
 Requiere una gran cantidad de parámetros, lo que hace el manejo muy incómodo, lo
cual constituye la principal causa de su impopularidad.

También podría gustarte