1 - Computação UFCG

Propaganda
INCERTEZA EM
BANCOS DE DADOS
Gilene Fernandes
6
LISTA DE FIGURAS
1. Figura 01 - Relações incompletas ensina e matricula....................................28
2. Figura 02 - REP ((ensina, matricula))......................................................29
7
LISTA DE TABELAS
1. Tabela 01 - Relação ensina....................................................................30
2. Tabela 02 - Relação condicional.........................................................30
3. Tabela 03 - Relação Curso-Opcional.....................................................31
4. Tabela 04 - Relação ensina com conjuntos-ou...............................................32
5. Tabela 05 - Relação matricula..................................................................33
6. Tabela 06 - Relação ensina...................................................................34
7. Tabela 07 - Denotando valores nulos universais.................................35
8. Tabela 08 - Relação Rendimentos............................................................36
9. Tabela 09 - Relação que expressa um valor nulo aberto........................................37
10. Tabela 10 - Relação probabilística do tipo-1.........................................38
11. Tabela 11 - Relação probabilística do tipo-2.......................................39
8
SUMÁRIO
1. INTRODUÇÃO ................................................................................................................................ 10
2. TERMINOLOGIA ........................................................................................................................... 11
2.1. SISTEMAS DE BANCO DE DADOS .......................................................................................... 11
2.2. INCERTEZA.................................................................................................................................. 12
3. INCERTEZA DE DESCRIÇÃO ..................................................................................................... 13
3.1. ELEMENTOS AFETADOS PELA INCERTEZA ..................................................................... 13
3.2 CAUSAS DA INCERTEZA ........................................................................................................... 14
3.3. GRAUS DE INCERTEZA ............................................................................................................ 15
3.4. SOLUÇÕES ................................................................................................................................... 16
3.4.1. VALORES NULOS .................................................................................................................... 16
3.4.2. FATORES DE CERTEZA ......................................................................................................... 17
3.4.4. DISTÂNCIAS.............................................................................................................................. 18
3.4.4. PROBABILIDADE .................................................................................................................... 19
3.4.5. COMPLETUDE E CORRETUDE ............................................................................................ 20
4. INCERTEZA DE TRANSAÇÃO E INCERTEZA DE PROCESSAMENTO ............................ 21
4.1. TRANSFORMAÇÕES .................................................................................................................. 21
4.2. MODIFICAÇÕES ......................................................................................................................... 22
4.3. PROCESSANDO ........................................................................................................................... 23
5. OBSTÁCULOS E DESAFIOS ........................................................................................................ 24
5.1. AMBIENTES HETEROGÊNEOS DE BANCO DE DADOS .................................................... 25
5.2. BANCO DE DADOS MULTIMÍDIA .......................................................................................... 25
5.3. IMPUTAÇÃO E DESCOBERTA DO CONHECIMENTO ...................................................... 26
5.4. ADAPTANDO INTELIGÊNCIA ARTIFICIAL PARA BANCO DE DADOS ........................ 27
6. UM ESTUDO DE CASO - INFORMAÇÃO IMPERFEITA EM BANCO DE DADOS
RELACIONAL ................................................................................................................................. 28
6.1. MUNDOS POSSÍVEIS.................................................................................................................. 28
6.2. VALORES EXISTENCIAS .......................................................................................................... 30
6.2.1. VALORES EXISTENCIAS ATÔMICOS ................................................................................ 30
6.2.2. CONJUNTOS DE VALORES EXISTENCIAS ....................................................................... 31
6.2.3. CONJUNTOS-OU ...................................................................................................................... 31
6.3. VALORES INEXISTENTES ........................................................................................................ 33
6.4. BANCO DE DADOS ABERTOS E VALORES NULOS ........................................................... 34
6.4.1. HIPÓTESES CONCLUÍDAS .................................................................................................... 34
6.4.2. VALORES UNIVERSAIS E DEFAULT .................................................................................. 35
6.4.3. VALORES ABERTOS ............................................................................................................... 37
6.5. BANCO DE DADOS PROBABILÍSTICOS ............................................................................... 38
9
7. CONCLUSÃO................................................................................................................................... 40
8. BIBLIOGRAFIA .............................................................................................................................. 41
10
1. INTRODUÇÃO
Os sistemas de bancos de dados (BD) modelam nosso conhecimento do
mundo real1. Esse conhecimento é muitas vezes permeado de incertezas. Portanto, os
sistemas de banco de dados devem ser capazes de lhe dar com incertezas. E,
realmente, a maioria dos sistemas incluem capacidades para lhe dar com alguns tipos
de incertezas - por exemplo, muitos sistemas representam valores desconhecidos com
valores nulos, e a maioria das linguagens de consultas admitem alguma forma de
incerteza.
Apesar dessas capacidades serem poucas em comparação com a variedade e
graus de incertezas que são encontrados na prática. A comunidade de pesquisa tem
mostrado um persistente interesse sobre o assunto, mas a maioria das tentativas não
passam de um protótipo experimental. Além do que, os sistemas de banco de dados
comercias tem sido vagarosos para incorporar capacidades de lhe dar com incertezas.
A seguir mostraremos resultados de incertezas em banco de dados. Definindo
terminologias e classificando os vários tipos de incertezas. Além de apresentar o uso e
a manipulação de informações imperfeitas em bancos de dados relacionais.
1
Usamos o termo sistema de banco de dados, para incluir tipos relacionados de sistemas de
informações como sistemas de recuperação de informações e sistemas espertos (inteligentes).
11
2. TERMINOLOGIA
Nossa discussão sobre incerteza em banco de dados começa com definições de
sistemas de banco de dados e incerteza.
2.1. SISTEMAS DE BANCO DE DADOS
Um sistema de banco de dados é um modelo computacional de alguma porção
do mundo real. Geralmente, tais modelos incluem um componente declarativo para
descrever o mundo real e um componente operacional para manipular essa descrição.
Manipulações típicas são (1) modificações da descrição; (2) transformações da
descrição.
Então, um sistema de banco de dados pode ser abstraído como uma descrição
D do mundo real, uma seqüência de modificações e transformações. Como exemplo,
em um sistema de banco de dados relacional uma descrição é o conjunto de tabelas
(i.e., um banco de dados); uma modificação pode afetar tanto a definição ou o
conteúdo das tabelas (i.e., reestruturar ou alterar); e uma transformação reduz o
conjunto de tabelas dentro de uma única tabela (i.e., avaliação de consulta).
12
2.2. INCERTEZA
Assumimos que a incerteza permeia nossos modelos do mundo real e não o
próprio mundo real. Em outras palavras, o mundo real é sempre certo, é o nosso
conhecimento sobre ele que as vezes é incerto. Nós usamos o termo incerteza para
referenciar algum elemento do modelo que não pode ser afirmado com certeza. Em
particular, incerteza pode ser esperada (1) em descrições do mundo real, (2) em
modificações e transformações dessa descrição, e (3) na execução dessas operações.
Portanto, observamos vários tipos de incerteza:2

Incerteza - Não é possível determinar se uma declaração no modelo é
verdadeira ou falsa. Por exemplo, poderá existir incerteza no seguinte fato
do banco de dados, “A idade de João é 38”. Você não sabe se é verdadeira
ou falsa, pois existem informações perdidas nesta declaração, por exemplo
de que João estamos falando?

Imprecisão - A informação disponível no modelo não é tão específica como
poderia ser. Por exemplo, quando um valor distinto é requerido, a
informação disponível é uma variação (ex.: “A idade de João está entre 37
e 43 anos”), disjuntiva (ex.: “A idade de João é 37 ou 43 anos”); negativa
(ex.: “A idade de João não é 37 anos”), ou desconhecida (geralmente se
refere a incompletude).

Vaguesa - O modelo inclui elementos (i.e., predicados ou quantificadores)
que são inerentemente vagos; por exemplo, “João é o mais novo do meio”.
Uma formalização particular de vaguesa é baseado no conceito de fuzziness.

Insconsistência - O modelo contém duas ou mais declarações que não
podem ser verdadeiras ao mesmo tempo; por exemplo, “A idade de João
está entre 37 e 43 anos” e “A idade de João é 35 anos”.
 Ambigüidade - Alguns elementos do modelo necessitam de semântica
completa, levando à várias possíveis interpretações. Por exemplo, “Não
está bem claro se os salários fixados são por mês ou por ano”.
2
Um desses tipos específicos será o próprio termo incerteza; Assim, dependendo do contexto, este
termo poderá ser usado tanto genericamente ou especificamente.
13
O objetivo de um sistema de BD é prover os seus usuários de informações que
eles precisem. O resultado t(D), onde t(D) é a transformação da descrição D, pode ser
incerta porque D é incerta, ou porque t é incerta, ou porque a aplicação de t em D
envolve incertezas.
Nós nomeamos essa categorias de incertezas, respectivamente, incerteza de
descrição, incerteza de transação, e incerteza de processamento. Estas categorias
servem como estrutura para classificar o trabalho que vem sendo feito na área de
sistemas de banco de dados.
3. INCERTEZA DE DESCRIÇÃO
Nossa discussão sobre incerteza de descrição começa considerando três
resultados: os diferentes elementos da descrição que devem ser afetados pela
incerteza, as diferentes causas de incerteza, e os diferentes graus de incerteza.
3.1. ELEMENTOS AFETADOS PELA INCERTEZA
Dependendo do modelo usado, descrições podem atingir diferentes formas, e a
incerteza pode afetar cada uma delas. Considere, por exemplo, um banco de dados
relacional. A estrutura do modelo relacional admite diferentes tipos de incertezas.
O primeiro tipo de incerteza é a nível dos valores de dados; por exemplo,
alguns valores de Hora_Saída na relação VÔO (Número_Voo, Hora_Saída) podem
ser incertos. O segundo tipo envolve incerteza a nível de tupla; por exemplo, deve
haver incerteza com relação aos membros de algumas tuplas da relação
CONECÇÃO_DIRETA (Origem, Destino). Um terceiro tipo envolve incerteza a
nível de relação (estrutura); por exemplo, poderá haver incerteza se o vôo tiver mais
de um destino, e portanto qual será a descrição deste relacionamento [Borgida 1985].
Considere outro exemplo, onde um sistema inteligente modela o conhecimento
do mundo real com fatos e regras expressados em lógica. Poderá haver incertezas
sobre os esses fatos e sobre as regras.
14
3.2 CAUSAS DA INCERTEZA
Excluído a possibilidade que a própria realidade está sujeita a incertezas.
Podemos assumir que a descrição perfeita de algum objeto do mundo real sempre
existe. Então, a existência de descrições incertas é devido unicamente a
indisponibilidade de uma descrição perfeita. Ainda dentro desta indisponibilidade
genérica, nós observamos vários tipos específicos de incertezas [Kwan et al. 1992].
Incerteza pode resultar do uso de informações de origens incertas, como falta
de instrumentos de leitura, ou entrada de formulários que foram preenchidos
incorretamente. Em outro casos, de erros do sistema, incluindo transmissões de
barulhos, imperfeições do sistema de software, atraso no processamento de transações
de alteração e corrupção dos dados devido falhas ou sabotagens.
Hoje em dia, as incertezas provém de resultados inevitáveis de métodos de
agrupamento de informações que requerem estimação ou critérios. Por exemplo,
representação digital de um fenômeno contínuo, e a representação de um fenômeno
que varia constantemente.
Em outros casos, incertezas provém de resultados de restrições impostas pelo
modelo. Por exemplo, se um esquema de um banco de dados permite o
armazenamento de mais de duas ocupações por empregado, então a descrição da
ocupação poderá exibir incertezas.
15
3.3. GRAUS DE INCERTEZA
A discussão seguinte sobre os graus de incerteza independe de uma estrutura
particular que seja afetada pela incerteza e como podemos reduzi-los. Assumimos que
um elemento e da descrição modela um objeto o do mundo real. O elemento e pode
ser um valor, um fato, uma regra, uma tupla e assim por diante.
A incerteza é alta quando a mera existência de algum objeto do mundo real é
duvidosa. Um solução simples é ignorar tais objetos totalmente. Esta solução, no
entanto, não é aceitável se o modelo segue abordagem do mundo fechado (i.e.,
objetos não modelados, não existem).
A incerteza é reduzida quando consideramos os seguintes pontos:
Elementos do modelo podem ter seus valores designados em uma faixa
prescrita para indicar a certeza que os objetos modelados existem. Logo, assumimos
que a existência é certa, mas algumas ou todas das informações com que cada modelo
descreve os objetos são desconhecidas. Tais informações são referenciadas
(classificadas) como incompletas, perdidas ou indisponíveis.
2. A informação que descreve um objeto é conhecida e vem de um conjunto
limitado de alternativas (possivelmente um faixa de valores). Esta incerteza é
referenciada como uma informação disjuntiva.
3. Cada alternativa é acompanhada por um número que descreve a
probabilidade que ela é realmente a descrição verdadeira (e o somatório destes
números para o conjunto de entradas é 1). Neste caso, a informação incerta é
probabilística.
16
3.4. SOLUÇÕES
Consideraremos aqui quatro abordagens cada uma diferente da outra para
acomodar o problema de incertezas em descrições.
3.4.1. VALORES NULOS
Uma abordagem mínima que admite descrição incompleta é ignorar todas as
informações parciais sobre as partes incertas da descrição que pode estar pronta e
modelá-las com uma pseudo-descrição, chamada de null (nulo), denotando incerteza.
Uma vez que valores nulos foram admitidos dentro das descrições, o modelo
deve determinar o comportamento das transformações e modificações na presença
desses valores. Isto não é uma tarefa simples.
Na seção 6, no qual falaremos de informações imperfeitas em bancos de dados
relacionais, veremos o uso e a manipulação dos vários tipos existentes de valores
nulos.
17
3.4.2. FATORES DE CERTEZA
Os fatores de certeza denotam segurança em vários elementos da descrição.
Eles oferecem uma ferramenta simples para representar incerteza e tem sido aplicado
tanto em sistemas de recuperação de informação quanto em sistemas espertos
(inteligentes).
Em sistemas de recuperação de informação os fatores de certeza, também
chamados de weights (pesos), tem sido usados para denotar a certeza com que uma
palavra chave específica descreve um documento dado (ou alternativamente, denotar a
força com que esta palavra chave aplica-se ao documento) [van Rijsbergen 1979;
Salton e McGill 1983; Turtle e Croft 1992]. Métodos tem sido desenvolvidos para
computar os fatores de certeza automaticamente, examinado cuidadosamente
documentos e aplicando técnicas para contar as palavras chaves. A manipulação
desses fatores é relativamente simples, pois eles são facilmente acomodados em
modelos de espaços vetoriais que são freqüentemente usados em recuperação de
informações.
Em sistemas espertos, fatores de certeza tem sido usados para denotar certeza
com que fatos e regras são estabelecidos dentro da descrição dos objetos do mundo
real. Tais fatores são geralmente declarados por engenheiros de conhecimento como
parte do processo de aquisição do conhecimento, mas eles podem ser derivados
automaticamente como parte do processo de descobrimento do conhecimento
[Piatetsky-Shapiro 1991]. A manipulação destes fatores é muitas vezes direta. Por
exemplo, assumindo os fatores de certezas neste intervalo [0, 1], quando uma regra
com certeza p é aplicada a um fato com certeza q, então o fato gerado é assinalado
com fator de certeza p.q.
18
3.4.4. PROBABILIDADE
A teoria de conjuntos fuzzy oferecem um compreensiva abordagem para
modelar incertezas em sistemas de informações.
Um conjunto fuzzy F é um conjunto de elementos onde cada elemento está
associado a um valor no intervalo [0, 1] que denota o grau dos seus membros no
conjunto. Por exemplo, o conjunto de pessoas idosas é representado da seguinte
maneira I = {..., 35/0.6, 45/0.7, 50/0.8, 55/0.9, 60/1.0, ...}, onde o grau com que um
homem de 35 anos faça parte desse conjunto é de 0.6.
Sendo uma relação um subconjunto do produto de vários domínios, uma
abordagem é definir relações como subconjuntos fuzzy do produto de vários
domínios. Desde que cada relação é um conjunto fuzzy, cada uma de suas tuplas é
associado com o grau de seus membros.
Considere agora, relações padrões (não fuzzy), mas assuma que os elementos
dos domínios são valores do conjunto fuzzy. Esta definição admite incerteza a nível
de valores de dados. Então, existe casos onde um valor pode ser um dos quatro tipos:
1. Um conjunto ou intervalo - por exemplo, o valor do DEPARTAMENTO
pode ser {exportação, importação}, ou o valor do SALÁRIO pode ser R$
40,000-50,000 respectivamente. Note que a interpretação de cada conjunto
ou intervalo é puramente disjuntiva.
2. Um valor fuzzy - por exemplo, o valor da idade pode ser jovem.
3. Um valor nulo.
4. Um valor simples (sem incerteza).
Para manipular banco de dados fuzzy, os operadores da álgebra relacional
padrão devem ser extendidos para relações fuzzy. A definição de um banco de dados
probabilístico é similar a definição de banco de dados fuzzy: relações padrões mas
com valores de domínio que, em geral, são funções de distribuição de probabilidade,
cujo conceito é o seguinte: uma função de distribuição de probabilidade de uma
variável X sobre um domínio D designa cada valor d  D como um valor entre 0 e 1,
com a probabilidade que X = d.
19
3.4.4. DISTÂNCIAS
Uma abordagem para incertezas que vem sendo aplicada com sucesso tanto em
sistemas de banco de dados como em sistemas de recuperação de informação trata a
incerteza com distância. A idéia básica é modelar o mundo real com uma descrição
aparentemente certa e contar com as definições de distâncias entre descrições que
criam vizinhanças de descrições.
Assim, alguma incerteza sobre um objeto do mundo real o é ignorada, e uma
descrição aparentemente certa e deste objeto é armazenada. É esperado que esta
negligência seja compensada por ter e em algum lugar da vizinhança da descrição
verdadeira. Quando um pedido de informação especifica esta descrição verdadeira, e
será recuperado juntamente com os outros vizinhos da descrição verdadeira.
Por exemplo, considere sistemas de banco de dados relacionais. Cada sistema
descreve objetos com tuplas, e freqüentemente existe incerteza com relação ao valor
de algum atributo em uma determinada tupla. É possível estabelecer a distância entre
os elementos do domínio deste atributo. Então, quando uma consulta especifica o
valor deste atributo, todas as tuplas serão recuperadas cujo valor para aquele atributo
está na vizinhança do valor especificado.
Nós assumimos aqui que as descrições estão sujeitas a incertezas (o que é
ignorado) e pedidos estão certos. A mesma solução aplica-se quando descrições são
certas e pedidos estão sujeitos a incertezas. Um refinamento deste método é admitir
fatores de certezas nas descrições e nos pedidos.
20
3.4.5. COMPLETUDE E CORRETUDE
Em vez de modelar imperfeições na informação (i.e., incertezas), nós
sugerimos declarar porções do banco de dados que são modelos perfeitos do mundo
real.
Esta abordagem interpreta certeza, com o termo integridade, como sendo a
combinação de completude e corretude. Uma descrição é correta (íntegra) se ela inclui
unicamente informação que ocorre no mundo real; uma descrição é completa se ela
inclui todas as informações que ocorrem no mundo real. Portanto, uma descrição tem
integridade se ela inclui toda a verdade (completude) e nada mas que a verdade
(corretude).
Assim, para declarar as porções do banco de dados ou as porções de uma
resposta íntegra esta abordagem utiliza-se de mecanismos de visões. O conceito de
completude de visões é similar a hipótese que uma visão correta do banco de dados
faz parte do mundo fechado [Reiter 1978]; a noção de corretude de visões é mostrado
como sendo uma generalização de restrições de integridade de um banco de dados
padrão.
21
4. INCERTEZA DE TRANSAÇÃO E INCERTEZA DE PROCESSAMENTO
Nesta seção discutiremos brevemente resultados e soluções que associam
incerteza na definição de transformações (i.e., consultas) e modificações (i.e.,
alterações ou operações de restruturação), e no processamento de cada transação.
4.1. TRANSFORMAÇÕES
Transformações são operações que derivam novas descrições de descrições
armazenadas. O tipo mais freqüente de transformação é a requisição de informação
por parte dos usuários (consulta). Pedidos incertos podem ocorrer por diferentes
razões.
Hoje em dia, usuários de sistemas de banco de dados não tem conhecimento
suficiente do banco de dados nem do sistema que eles estão utilizando, não tendo uma
idéia clara das informações disponíveis (ou como elas estão organizadas), bem como
não sabem formular seus pedidos (consultas) com as ferramentas que o sistema
provém. Um exemplo disto, é um usuário que procura o significado de uma palavra no
dicionário mas não pode soletrá-la corretamente.
Resumindo, nós distinguimos entre (1) incerteza sobre a informação
disponível (ou como ela está organizada), (2) incerteza sobre informação necessária
(ou como denotá-la em termos aceitáveis para o sistema), e (3) incerteza sobre as
linguagens e ferramentas do sistema que são usados para formular pedidos.
Ferramentas de acessos alternativos tem sido desenvolvidas para uso dos
usuários, como: Browsers de acesso a informações;
construtores interativos de
consultas que conduzem os usuários do sistema a formulações satisfatórias de seus
pedidos. Entretanto, mesmo depois que um pedido de informação (consulta) tenha
sido aceito pelo sistema e sua resposta entregue ao usuário, a incerteza ainda persiste,
pois nem sempre é possível verificar se o pedido alcançou de fato a intenção do
usuário.
22
4.2. MODIFICAÇÕES
Modificações (alterações e restruturações) são operações que afetam as
descrições armazenadas em sistemas de informações. Como transformações,
modificações são definidas pelos usuários, e aqui também distinguimos entre três
principais causas de incertezas: (1) conhecimento insuficiente do sistema, (2)
conhecimento insuficiente do banco de dados específico que está sendo modificado, e
(3) incerteza sobre a informação embutida na modificação.
Muitas das abordagens dirigidas que tem aliviado os problemas de de
incertezas nas transformações (seção 2.5.1.) são também aplicadas as modificações.
Contudo, poucas ferramentas tem sido desenvolvidas para lhe dar com as
modificações. Entretanto, sabemos que os usuários que modificam o banco de dados
tem uma boa familiaridade com o mesmo e com o próprio sistema.
Com relação a terceira abordagem de incerteza, ou seja, modificações vagas ou
imprecisas temos como exemplo um pedido para adicionar informação incerta - “O
novo gerente do banco é um do dois, Paulo ou João”. Entretanto, este tipo de incerteza
não é diferente da incerteza de descrição que foi o assunto da seção 2.3.
23
4.3. PROCESSANDO
Ainda quando a descrição D e a transformação t estão livres de incertezas, o
resultado t(D) pode ser incerto por causa dos métodos usados pelo sistema para
processar os pedidos. Em certas aplicações, um sistema de informação pode alocar
recursos computacionais limitados para processar o pedido [Imielinsky 1987]. Por
exemplo, uma consulta recursiva a um banco de dados genealógico para listar todos os
ancestrais de um indivíduo específico pode terminar depois de um período
predeterminado de tempo (presumivelmente o número de ancestrais recuperados pelo
sistema deve ser suficiente).
24
5. OBSTÁCULOS E DESAFIOS
Os sistemas comerciais de banco de dados tem caminhado lentamente para
incorporar capacidades de incertezas. Enquanto soluções baseadas na teoria dos
conjuntos fuzzy vem aumentando suas aceitações em várias tecnologias, sistemas
comerciais de banco de dados não tem aceitado ainda esta solução.
Examinando as possíveis razões dessa baixa aceitação, temos: Primeiro, os
sistemas profissionais de banco de dados estão preocupados primeiramente com suas
performances. Aqui muitos dos algoritmos para casar dados incertos ou para processar
pedidos incertos são altamente complexos e ineficientes.
Os sistemas profissionais de banco de dados estão também preocupados com a
compatibilidade, já que as várias implementações distintas de capacidades de
incertezas não foram bem sucedidas. Isto pode ter causado um grande efeito nas outras
implementações.
Outro obstáculo para sistemas de banco de dados com capacidades para
incertezas podem existir nas expectativas dos usuários. Um princípio fundamental dos
sistemas de banco de dados é que consultas e respostas nunca expõe interpretações
subjetivas, e os usuários esperam suas consultas serem interpretadas sem
ambigüidades e suas respostas com completa precisão.
Recentemente, as novas aplicações que surgiram requerem sistemas de banco
de dados com capacidades de incerteza. Várias destas aplicações serão descritas a
seguir.
25
5.1. AMBIENTES HETEROGÊNEOS DE BANCO DE DADOS
Em um ambiente heterogêneo multi-banco de dados, a integração e a troca de
informações requerem protocolos para traduzir informações entre os diferentes tipos
de modelos. A possibilidade de ter sistemas de banco de dados baseados em diferentes
formalismos de incertezas introduz um desafio adicional: desenvolver protocolos para
encontrar formalismos de incertezas comuns para que a informação incerta possa ser
integrada com mínima perda de informação.
5.2. BANCO DE DADOS MULTIMÍDIA
A recuperação de informação em banco de dados tradicionais baseia-se no
casamento exato (exact matching). Onde um pedido (consulta) de um determinado
dado faz com que o banco de dados recupere o dado que case exatamente com o dado
requerido.
Hoje em dia, o gerenciamento de imagens em grandes banco de dados segue o
mesmo paradigma: enquanto as imagens são armazenada (digitalizadas) em grandes
bancos de dados, a recuperação é executada em cima de descrições textuais destas
imagens que são armazenadas juntamente com suas próprias imagens.
Como ilustração, temos a abordagem de Consultas por Conteúdo de Imagem
(Query By Image content - QBIC) da IBM, que recupera imagens que casam com uma
imagem dada. Técnicas de casamentos de imagens utilizam algoritmos do melhor
casamento (best-matching).
26
5.3. IMPUTAÇÃO E DESCOBERTA DO CONHECIMENTO
Em várias aplicações, notadamente em projetos científicos e estatísticos, é
necessário estimar dados desconhecidos (valores nulos) de outros dados disponíveis.
Este processo, usualmente é conhecido como imputação, onde as informações são
produzidas de vários graus de incertezas. O gerenciamento desta informação não pode
ser feita por técnicas tradicionais de banco de dados, requerendo portanto o uso de
técnicas de incertezas. A inferência de valores desconhecidos dentro de seu contexto
está relacionada com o resultado da descoberta de novos conhecimentos em grandes
bancos de dados.
27
5.4. ADAPTANDO INTELIGÊNCIA ARTIFICIAL PARA BANCO DE DADOS
Um clássico problema envolve a modelagem de sistemas de banco de dados.
Por um lado, queremos um modelo rico e poderoso como possível, e por outro lado,
sistemas de banco de dados que suportam restrições cruciais de simplicidade e
eficiência, de suas descrições e de suas manipulações de descrições.
Como sistemas de banco de dados, a área de inteligência artificial (IA) tem se
preocupado com respeito a modelagem exata do nosso conhecimento do mundo real.
Inúmeras teorias de incertezas tem sido desenvolvidas; a maioria tem fundamentos na
lógica não clássica, na teoria da probabilidade, nas funções de crença, ou na teoria da
possibilidade [Lea Sombe 1991; Motro e Smets 1992; Smets e Clarke 1991; Smets e
Motro 1993].
Tradicionalmente, pesquisas em IA tem enfatizado modelos ricos e poderosos,
esforçando-se para modelar precisamente todas as sutilezas da realidade. Por outro
lado, pesquisas em sistemas de bancos de dados tem enfatizado representações
econômicas com baixa expressividade mas com uma baixa representação de overhead
e um processamento altamente eficiente.
Temos como exemplo: Os modelos semânticos de dados; as redes semânticas;
e recentemente, sistemas de banco de dados ricos em conhecimento que incorporam
regras de inferência expressadas em lógica matemática [Ullman 1988; Ullman 1989;
Ceri et al. 1990]. Um importante impulso foi dado entre os pesquisadores de banco de
dados que trabalham nesta área tem sido o desenvolvimento de técnicas de inferências
altamente eficientes para uma classe limitada de regras.
As teorias de incertezas desenvolvidas para IA tem sido adaptadas para
trabalhar com técnicas de banco de dados, tornando-se um desafio importante para o
pesquisadores da área.
28
6. UM ESTUDO DE CASO - INFORMAÇÃO IMPERFEITA EM BANCO DE
DADOS RELACIONAL
6.1. MUNDOS POSSÍVEIS
Como sabemos, um banco de dados modela alguma parte do mundo real. Se a
informação disponível é completa ou correta, então há uma clara correspondência
entre o banco de dados e o mundo real. Contudo, quando o conhecimento sobre o
mundo é incompleto ou incerto, vários cenários ou estados com conhecimento
completo e correto podem ser possíveis, mas não se sabe qual deles representa o
estado real do mundo.
Assim, um banco de dados que contém informação incompleta ou incerta
implicitamente representa um conjunto de estados ou mundos possíveis. Um mundo
possível é um estado hipotético do mundo que pode ser representado por um banco de
dados usual com informação completa ou correta.
A semântica de um banco de dados com informação incompleta ou incerta
designa para cada relação R, o valor da função de representação REP(R), que é o
conjunto de mundos possíveis.
Considere, por exemplo, as relações ensina (professor, curso) e matricula
(estudante, curso) ilustrada na figura 01, onde as variáveis x e y representam valores
desconhecidos ou, mais precisamente, valores nulos do tipo “valor existe, mas é
desconhecido”.
ENSINA
PROFESSOR
CURSO
Martin
Física
x
Álgebra
MATRICULA
ESTUDANTE
CURSO
Paul
Física
Peter
y
Figura 01 - Relações incompletas ensina e matricula
29
Os mundos possíveis da função de representação REP(ensina, matricula) do
exemplo acima estão na figura 02.
M1:
ensina = {(Martin, Física), (Martin, Álgebra)},
matricula = {(Paul, Física), (Peter, Álgebra)}
M2:
ensina = {(Martin, Física), (Martin, Álgebra)},
matricula = {(Paul, Física), (Peter, Cálculo)}
M3:
ensina = {(Martin, Física), (Annie, Álgebra)},
matricula = {(Paul, Física), (Peter, Álgebra)}
M4:
ensina = {(Martin, Física), (Annie, Álgebra)},
matricula = {(Paul, Física), (Peter, Cálculo)}
Figura 02 - REP ((ensina, matricula))
30
6.2. VALORES EXISTENCIAS
6.2.1. VALORES EXISTENCIAS ATÔMICOS
Valores existenciais atômicos modelam uma situação em que o valor de um
atributo existe, mas o valor definido é desconhecido. Um valor existencial é atômico
quando o atributo desconhecido tem exatamente um valor possível. Considere por
exemplo, a seguinte relação ilustrada na tabela 01.
ENSINA
PROFESSOR
CURSO
SALA
Marc
Banco de Dados
AX210
Pierre
x
H1309
Thomas
Mecânica
y
Thomas
Línguas
z
Tabela 01 - Relação ensina
As variáveis representam valores nulos, onde duas variáveis diferentes podem
ou não representar a mesma constante. Assim, o curso ensinado por Pierre na sala
H1309 e as salas nas quais Thomas ensina possuem valores desconhecidos.
Temos ainda as relações condicionais (ou C-Relations), nas quais são obtidas
pela inclusão de uma coluna nas relações com condições locais compostas de
igualdades e desigualdades. Por exemplo,
ENSINA
PROFESSOR
CURSO
SALA
CONDIÇÃO
Marc
Banco de Dados
AX210
Pierre
x
H1309
Thomas
Mecânica
y
x = Física
Thomas
Línguas
y
x  Física
Tabela 02 - Relação condicional
Neste exemplo, Thomas ensina Mecânica se Pierre ensina Física; caso
contrário Thomas ensina Línguas.
31
6.2.2. CONJUNTOS DE VALORES EXISTENCIAS
Considere a seguinte relação curso-opcional ilustrada na tabela 03 abaixo.
CURSO-OPCIONAL
ESTUDANTE
CURSO-OPCIONAL
Dominique
Línguas
Anne-Marie
{x}
Martin
{y}
Jean-Pierre
z
Banco de Dados  {x}
Tabela 03 - Relação Curso-Opcional
Aqui, {x}, {y} denota conjuntos de valores existenciais, significando que
Anne-Marie e Martin tem pelo menos um curso enquanto Jean-Pierre tem exatamente
um. Além do que o curso Banco de dados não está entre os cursos de Annie-Marie.
6.2.3. CONJUNTOS-OU
Conjuntos-ou
(ou
conjuntos
disjuntivos)
generalizam
valores
nulos
existencias. Um valor existencial representa um atributo cujo valor atual está no
domínio do banco de dados. Um conjunto-ou representa um atributo cujo valor é um
conjunto explícito, pequeno.
Quando um conjunto-ou aparece em uma tupla da relação, o valor atual do
atributo é um dos elementos do conjunto-ou. Um valor atômico usual pode ser visto
como um conjunto-ou cujo valor é um único elemento. Um valor existencial
corresponde a um conjunto-ou contendo o domínio do atributo de entrada. Conjuntosou podem também conter um valor especial  para representar a possibilidade de não
existir valor. Seja o exemplo na tabela 04 abaixo.
32
ENSINA
PROFESSOR
CURSO
Marc
Física
Thomas
{Física, Química, Biologia}
{Susan, Martha, }
Álgebra
Tabela 04 - Relação ensina com conjuntos-ou
Nesta relação ensina (professor, curso) ilustrada na tabela acima, a segunda
tupla representa que Thomas ensina um dos cursos do conjunto {Física, Química,
Biologia}. A terceira tupla representa que Susan ou Martha ensina Álgebra ou
ninguém ensina Álgebra.
Conjuntos-ou não são poderosos o suficiente para representar algumas
variedades de informações incompletas. Por esta razão, Michalewicz e Groves [52]
propuseram os conjuntos-ou generalizados, cujo valor atual é entendido para ser
algum subconjunto não vazio do conjunto armazenado. Se o valor atual pode ser
vazio, o valor especial  é incluído no conjunto armazenado. Por exemplo,
interpretando a tupla da relação descrita anteriormente {Susan, Martha, } como um
conjunto-ou generalizado temos o seguinte: Álgebra pode ser ensinada tanto por
Susan ou Martha, ou ambas, ou pode não ser oferecida.
Michalewicz e Groves [52] ainda estudaram os conjuntos-e. Um conjunto-e de
um atributo A de uma tupla t representa que o valor atual do atributo é precisamente
todos os valores especificados no conjunto.
33
6.3. VALORES INEXISTENTES
Valores inexistentes, denotado por , permite representar um atributo que é
inaplicável. Por exemplo, considere a relação matricula(estudante, departamento,
curso):
MATRICULA
ESTUDANTE
DEPARTAMENTO
CURSO
Pierre
Física
Cálculo
Jean

Probabilidade
Tabela 05 - Relação matricula
A segunda tupla representa que Jean matriculou-se em probabilidade sem estar
registrado em nenhum departamento.
34
6.4. BANCO DE DADOS ABERTOS E VALORES NULOS
6.4.1. HIPÓTESES CONCLUÍDAS
Com a Hipótese do Mundo Fechado (Closed World Assumption - CWA), todas
as informações não explicitamente representadas no banco de dados são supostamente
falsas. Assim, para a relação ensina (professor, curso, departamento), segundo o
CWA temos que não existem professores, nem outros cursos, e nem outros
departamentos a não ser os que aparecem na relação.
Com a Hipótese do Mundo Aberto (Open World Assumption - OWA), a
hipótese anterior não é mantida, desde que possa existir outras tuplas na relação.
Adicionalmente, com a OWA as informações negativas devem estar explicitamente
estabelecidas, ao contrário do mundo fechado, por exemplo
ENSINA
PROFESSOR
DEPARTAMENTO
CURSO
Componente Positivo
Pierre
Física
Cálculo
Componente Positivo
Marc
Química
Cálculo
Marc
Física
Álgebra
Componente Negativo
Tabela 06 - Relação ensina
Isto representa que Marc não ensina Álgebra no departamento de Física.
O operador de diferença implicitamente assume a CWA, portanto uma
expressão relacional que não contém operadores de diferenças produzem os mesmos
resultados tanto para a CWA quanto para a OWA.
35
6.4.2. VALORES UNIVERSAIS E DEFAULT
Sobre a OWA, duas outras categorias de valores nulos naturalmente aparecem:
os valores universais e default.
Suponha que “Jean ensina biologia em todos os departamentos”, se a relação
for interpretada sob o CWA, o fato descrito pode ser representado pela inclusão de um
conjunto de tuplas da forma (Jean, biologia, dept) na relação, uma para cada
departamento dept do banco de dados.
Com relação a OWA, a situação é completamente diferente. O fato descrito
acima é representado da seguinte maneira: desde que nem todos os departamentos são
necessariamente conhecidos, então não é preciso a inclusão de todas as tuplas da
forma (Jean, biologia, dept). O fato deve ser representado com um valor nulo
universal denotado por :
ENSINA
PROFESSOR
CURSO
DEPARTAMENTO
Pierre
Cálculo
Física
Jean
Biologia

Marc
Cálculo
Química
Tabela 07 - Denotando valores nulos universais
36
Os valores nulos default formam outra categoria de valores nulos necessários
quando a OWA é aplicada há um banco de dados. Suponha que a renda dos
professores universitários é representada pela relação
ANO
PROFESSOR
RENDA
1990
Jean
19,000
1990
Marc
20,00
Tabela 08 - Relação rendimentos
Sem mais informações, suponha que é estimado por default que todo professor
não explicitamente representado ganha $ 22,000 em 1990. Dentro da OWA, desde que
nem todos os professores são conhecidos, nós precisamos introduzir na relação a tupla
(1990, *, 22,000), onde * denota um valor nulo default.
A introdução de informação default em banco de dados é muito importante.
Porque muitas aplicações trabalham com um grande número de parâmetros
desconhecidos.
37
6.4.3. VALORES ABERTOS
Um valor nulo aberto expressa um atributo de uma tupla que deve ser
interpretado dentro da Hipótese do Mundo Aberto: o valor do atributo pode não
existir, pode ter exatamente um valor ou vários valores. Em outras palavras, nenhuma
hipótese pode ser feita sobre os valores dos atributos. Na relação seguinte, o valor
nulo aberto  expressa que a relação é fechada, exceto para o atributo estudante:
ESTUDANTE
DEPARTAMENTO
CURSO
Pierre
Biologia
Cálculo

Química
Álgebra
Tabela 09 - Relação que expressa um valor nulo aberto
Os seguintes fatos podem ser inferenciados: (1) existem apenas os
departamentos de Biologia e Química; (2) existem somente os cursos de Cálculo e
Álgebra; (3) o único estudante do departamento de biologia que estuda Cálculo é
Pierre; (4) podem existir um, vários ou nenhum estudante registrado no departamento
de Química que estuda Álgebra. Nenhum outro fato é verdadeiro nesta relação.
38
6.5. BANCO DE DADOS PROBABILÍSTICOS
Dois tipos diferentes de dados probabilísticos podem ser incluídos numa
relação: informação probabilística sobre associação de valores e informações
probabilísticas sobre valores de dados. Estes dois tipos de informações são
representadas com relações probabilísticas do tipo-1 e tipo-2.
Relações Probabilísticas do Tipo-1: Generaliza as relações clássicas com um
atributo suplementar WR(t) indicando a probabilidade que a tupla t pertence a relação
R. A probabilidade atribuída para uma tupla é independente de outras tuplas. Por
exemplo, seja a relação estuda ilustrada na tabela 10, cuja interpretação é a seguinte:
Martin realmente estuda Física, e a probabilidade dele estudar Biologia é 0.9. Assim, a
probabilidade de Martin estudar Biologia é de 0.1. Com a hipótese do mundo fechado,
qualquer par (estudante, curso) não explicitamente expressado na relação tem
probabilidade 0.
ESTUDANTE
CURSO
WR
Martin
Física
1.0
Martin
Biologia
0.9
John
Física
0.6
Tabela 10 - Relação probabilística do tipo-1
As relações do tipo-1 permite representar incertezas sobre os valores de dados
associados, suas capacidades de capturar incertezas em valores de dados é limitada.
Por esta razão a noção de conjunto probabilístico é necessário. Um conjunto
probabilístico em um universo U de discurso é definido com uma função de
distribuição de probabilidade WF  [0, 1] satisfazendo u U WF(u)  1. Um conjunto
probabilístico F é escrito da forma:
F = {u1/W(u1), u2/W(u2), ..., un/W(un)}, onde cada un representa o valor do atributo da
relação e cada W(un) a probabilidade de un,
39
Por exemplo, se o curso estudado por John é representado pelo conjunto
probabilístico Cursos = {Álgebra/0.5, Cálculo/0.4}, então John é registrado em
Álgebra com probabilidade 0.5 e em Cálculo com probabilidade 0.4. Desde que o
somatório das probabilidades é igual a 0.9, então John não é registrado em nenhum
curso com probabilidade 0.1.
Relações Probabilísticas do Tipo-2: Estas relações tem atributos chaves que
são determinísticos, como nas relações clássicas. Assim cada tupla representa uma
entidade conhecida ou um relacionamento. Os outros atributos podem ser
determinísticos ou estocásticos. Estes últimos são descritos com ajuda dos conjuntos
probabilísticos. Um exemplo de uma relação probabilística pode ser vista na tabela 11.
ESTUDANTE
CURSO
John
Cálculo/0.4
Álgebra/0.5
Anne
Física/0.5
Cálculo/0.5
Tabela 11 - Relação probabilística do tipo-2
A semântica das relações probabilísticas do tipo-2 pode ser expressa em
termos de mundos possíveis como segue. Na tabela 11, a primeira tupla representa três
possibilidades: John estuda cálculo, John estuda álgebra, ou John não estuda curso
nenhum. A segunda tupla, desde que o somatório das probabilidades foi igual a 1,
então Annie estuda cálculo ou física.
40
7. CONCLUSÃO
Atualmente, os sistemas de banco de dados não estão designados a gerenciar
informações que são permeadas com incertezas. Dados incertos são armazenados
como valores nulos ou simplesmente excluídos do banco de dados, e usuários com
pedidos incertos podem usar consultas com modelos simples ou devem caminhar no
banco de dados para encontrar suas respostas.
Para prover soluções satisfatórias para as novas aplicações, como integração
de informação em ambientes multi-banco de dados, recuperação de imagens ou
inferência de valores desconhecidos, os sistemas de banco de dados do futuro deverão
incluir grandes capacidades para lhe dar com incertezas.
41
8. BIBLIOGRAFIA
 KIM, Won
Modern Database Systems
Editora Addison Wesley, 1995
 HULL, Richard; ABITEBOUL, Serge; VIANU, Serge
Foundations of Databases
Editora Addison-Wesley Publishing Company

ZANIOLO,
Carlo;
CERI,
Stefano;
FALOUTSOS,
Christos;
SNODGRASS, Richard T.; SUBRAHMANIAN, V. S.; ZICARI, Roberto
Advanced Database Systems
Editora Morgan Kaufmam Publishers, Inc.
 MOTRO, Amihai; SMETS, Philippe
Gerenciamento de Incertezas em Sistemas de Banco de dados
Editora Kluwer Academic Publishers
42
Download