• Nenhum resultado encontrado

INSTITUTO SUPERIOR DE ENGENHARIA DO PORTO DEPARTAMENTO DE ENGENHARIA INFORMÁTICA SISTEMAS DE DECISÃO MISTA

N/A
N/A
Protected

Academic year: 2021

Share "INSTITUTO SUPERIOR DE ENGENHARIA DO PORTO DEPARTAMENTO DE ENGENHARIA INFORMÁTICA SISTEMAS DE DECISÃO MISTA"

Copied!
83
0
0

Texto

(1)

INSTITUTO SUPERIOR DE ENGENHARIA DO PORTO DEPARTAMENTO DE ENGENHARIA INFORMÁTICA

SISTEMAS

DE

DECISÃO

MISTA

Aluno: Rui Duarte de Sousa Nóbrega, i980342 Licenciatura de Engenharia Informática Ramo: Computadores e Sistemas Orientador: Engº Carlos Ramos

(2)

Índice

1 Introdução...4

1.1 Objectivos de SDM...5

1.2 Interacção em SDM...6

1.3 Níveis de decisão mista...7

1.4 Reconhecimento de intenções ...8

1.5 Actividade conjunta ...8

1.6 Crenças, acções e decisão ...9

1.7 Estrutura de um SDM ...10 1.8 Desafios na concepção de SDM ...11 2 Fundamentos Teóricos...13 2.1 Introdução...13 2.2. Redes Bayesianas ...16 2.2.1 Revisão de crenças...18 2.2.2 Actualização de crenças ...19 2.3 Árvores de Junções...22 2.3.1 Transformações topológicas ...24

2.3.1 Propagação de crenças em árvores de junções...27

2.4 Redes Bayesianas multi-seccionadas ...31

2.4.1 Transformações topológicas ...34

2.4.2 Abordagem agente único ...35

2.4.3 Abordagem multi-agente ...38

2.5 Diagrama de Influências...42

2.6 Abordagem de sistemas multi-agente...47

3. Abordagens na concepção de SDM ...49 3.1 Interfaces inteligentes ...51 3.1.1 Lumière...51 3.1.2 Lookout...55 3.1.3 HUGIN ...57 3.1.4 CYC ...58 3.1.5 COG...59 3.1.6 Kismet...59 3.1.7 OXYGEN ...60 3.1.8 SCALINTEL ...62

3.2 Concepção na interacção Homem/Computador e Vis...67

(3)

3.2.2 VID...68 3.2.3 Scope...72 3.3 Produtos comerciais...74 3.3.1 Termóstato Inteligente...74 3.3.2 TiVo ...76 3.3.3 Aibo...77 4. Conclusão...79 5. Bibliografia...80

(4)

1. Introdução

Os sistemas de decisão mista podem constituir uma forma verdadeiramente eficaz na interacção humano/computador, e tem um grande potencial em sistemas multi-agente. O termo “decisão mista” (mixed-initiative interaction) é muitas vezes confundido com a mera interacção humano/computador (IHC), isto é um erro pois há muitos sistemas de IHC que estão longe de ser sistemas de decisão mista, além disso um sistema de Decisão Mista (SDM) não necessita obrigatoriamente de um humano. Mas é na interacção humano/computador onde poderemos observar o seu maior impacto. O desenvolvimento de SDM poderá revolucionar o mundo informático mais que a relativamente recente mudança para interfaces gráficos (GUI – Graphic User Interface)1.

Os SDM podem ocorrer em diferentes cenários: homem e máquina, múltiplas máquinas que cooperam para cumprirem tarefas (em ambiente distribuído) ou ainda entre múltiplas pessoas e máquinas interagindo para coordenar as suas actividades (sistemas colaborativos, por exemplo)

Os SDM permite que os agentes funcionem mais eficazmente como uma equipa. O segredo é permitir actuar que o agente que melhor sabe como proceder a determinado momento. Envolver um ser humano no sistema, torna o sistema mais complexo pois o agente electrónico deverá suportar um estilo de interacção mais adequado ao ser humano. Para que isto seja possível os agentes electrónicos deverão colaborar para encontrar soluções - fornecendo detalhes e identificando problemas – e trabalhar com o humano para resolver situações que apareçam.

Planear uma viagem através de uma agência de viagens é um bom exemplo para demonstrar como um SDM pode funcionar. Supondo um viajante com 3 mil euros de orçamento, quer ir a Londres por 5 dias e ver um jogo do Chelsea e um concerto no Royal Albert Hall. Necessitando de um voo de ida e volta, hotel e possivelmente um carro, dependendo das distâncias dos locais que deseja visitar. A viagem tem de ser planeada quando a equipa joga em casa e algum concerto de destaque se efectue na sala pretendida, mas também não podem ser no mesmo dia. Os computadores são óptimos parar pesquisar em bases de dados para procurar possibilidades, mas o humano necessita de intervir para resolver conflitos e ambiguidades. Correntemente, temos de encarar isto como dois problemas distintos, que requer que o agente alterne entre a base de dados e o ser humano.

A complexidade destes sistemas é grande, e o seu desenvolvimento e refinamento tem sido possível graças a investigação de diversas equipas e cientistas na área da computação, com contributos relativamente recentes. Muita da investigação nesta área concentra-se em finais dos anos 80 e meados da década de 90. No entanto, ao longo do segundo capítulo (2. Fundamentos Teóricos) é possível verificar que há contributos (princípios teóricos e sistemas implementados) muito recentes, de finais da década de 90.

1

(5)

A interface do utilizador e sistema de informação tem sido debatida e diferentes concepções têm sido focadas. Há investigadores que expressam optimismo sobre o potencial no refinamento de interfaces baseados em agentes inteligentes, sugerindo que a pesquisa deverá orientar-se no desenvolvimento de representações e inferência mais poderosas para aprender com a actividade do utilizador e tomar decisões automaticamente. Outros pesquisadores, sugerem que os esforços deverão ser direccionados na automação expandida com ferramentas e metáforas que facilitem a manipulação directa do utilizador e inspecção de objectos e informação. Mais do que defender uma das aproximações sobre a outra, a integração criativa da manipulação directa e serviços automáticos podem proporcionar novos tipos de interacção homem/máquina, caracterizada por uma relação mais profunda entre utilizador e computador.

O termo “decisão mista” (mixed-initiative em inglês) tem sido usado por cientistas de computadores, de várias formas. Estas incluem referencias ao controlo automático em turnos de conversações entre humano e computador, e um coordenado aplicacional de um conjunto de metodologias de resolução de problemas. A abordagem dos sistemas de decisão mista promete um grande desenvolvimento na interacção homem/computador pois o computador passa a ser visto mais como um associado ou parceiro, que coopera com utilizadores no desenvolvimento de compreensão mútua para objectivos e contribuir para a solução de problemas de forma mais adequada. No entanto, esta cooperação fluida entre humano/computador requer resolver muitos obstáculos. É necessário desenvolver sistemas que permitam recolher informação e fazer inferências sobre intenções, atenção e competências dos utilizadores, bem como ter em conta a natureza e tempos dos serviços automatizados. Os computadores poderão estar em muitas alturas inseguros sobre os objectivos e necessidades dos utilizadores. Serão os métodos desenvolvidos para resolver esta incerteza que representam um dos aspectos mais importantes de um sistema de decisão mista.

1.1 Objectivos de SDM

A interacção em sistemas SDM é um aspecto importante para uma colaboração efectiva na resolução de tarefas. Considerando o cenário minimalista humano/computador, e supondo um sistema que interagindo com um utilizador para conceber uma cozinha ajudando o utilizador a escolher o sistema de ar condicionado adequado, disposição dos diversos componentes de acordo com as necessidades, ou mesmo ensinar o futuro utilizador do espaço concebido a usá-la. SDM refere-se a uma estratégia de interacção flexível, onde cada agente (humano ou computador) pode contribuir para a tarefa que melhor sabe executar. No entanto, os papeis não estarão determinados inicialmente, mas oportunamente negociados entre os agentes à medida que resolvem o problema. A qualquer momento, um agente pode tomar controlo enquanto o outro assiste, contribuindo para a interacção de acordo com as necessidades. Noutros momentos, o os papeis podem ser invertidos, e noutros podem estar a trabalhar independentemente, havendo assistência se

(6)

especificamente requerida. Os agentes adaptam o estilo de interacção dinamicamente para a resolução adequada de um problema à medida que esta se processa.

Muitas das soluções actualmente existentes na interacção homem/computador com sistemas inteligentes não são SDM. Estes podem categorizar-se em duas abordagens, com exemplos ilustrativos:

• Controlo Humano: Escalonamento – Um sistema que permita desenvolver, manipular planos, e uso de simuladores. O sistema responde a comandos do ser humano que especifica o plano de acordo com as ferramentas disponíveis. Se bem concebido, poder ser muito útil como ferramenta de planeamento, mas não é SDM porque o humano controla sempre a interacção.

• Controlo do sistema: Centrais de atendimento automáticos – É uma das áreas de maior crescimento dos últimos anos, em que o humano usa o teclado do telefone ou voz para fazer uma série de selecções (por exemplo “clientes pressione 1, facturas pressione 2…”). Isto é um exemplo de um sistema que controla a interacção, o que pode ser frustrante para o ser humano (e nós já passamos por este tipo de situação). Muitas empresas têm vindo a usar este sistema pois permite poupar dinheiro, mas não melhora significativamente o atendimento do cliente.

1.2 A interacção em SDM

A melhor forma de visualizar a interacção entre agentes é como se fosse um diálogo. Para um diálogo eficaz a decisão mista é uma propriedade chave. Todos nós temos intuições na forma como o ser humano funciona, que podem ser exploradas para o desenvolvimento de novos modelos de interacção. Enquanto, que a linguagem natural é a forma típica de dialogar do ser humano, podemos caracterizar modelos de diálogo em termos de qualquer protocolo de comunicação e independentes de qualquer linguagem natural. As pessoas muitas vezes acabam por recorrer a outras modalidades durante um diálogo como o uso de gestos, desenhos, ou outros. Um computador oferece outros modos de comunicação, como interfaces gráficos, sistemas baseados em menus, entre outros, usados quer para output do sistema quer para input. Por diálogo referem-se especificamente mecanismos como interpretação contextual, tomada de turno, instruções elementares, que possam ser necessárias a qualquer modalidade de conversação.

Tomada de turno: quando devo falar? Quando um agente comunica e os outros escutam, esse agente tem a sua vez. Modelos de tomada de turno referem-se a quando um agente é obrigado a tomar a sua vez, quando não está na sua vez, e quando tem opção de tomar a sua vez ou não. Em sistemas de tomada de turno fixa, a tomada de turno não é um problema, pois cada agente inicia as interacções e espera pelas respostas apropriadas antes de

(7)

passar à próxima interacção. Quem tem o turno está sempre bem definido, e o agente em controlo inicia sempre os turnos.

Em SDM, a situação pode ser complexa, pois diferentes agentes podem tomar decisão em diferentes instantes. Um agente deverá dizer quando está preparado para tomar a vez. Por exemplo, num sistema de planeamento de gestão, o sistema pode aprender com um novo problema que interfira com o plano construído até ao momento. Assumindo que o utilizador corrente está a perguntar pela meteorologia. O sistema deverá decidir se:

• Interrompe o utilizador com notificação do problema;

• Espera que o utilizador termine mas ignora a questão e notifica o problema;

• Responde à questão e espera o estado do problema;

• Espera até mais tarde, por exemplo, até ao utilizador perguntar se há algum problema.

A decisão adequada requer uma ponderação adequada ao problema, o estado do tempo, e outras restrições “sociológicas” entre os dois agentes.

1.3 Níveis de Decisão Mista

Os SDM envolvem uma série de opções e características que podemos diferenciar níveis de decisão mista. Na tabela em baixo, podem-se observar os diferentes níveis em questão.

Níveis de Decisão Mista Capacidades

Relatório não solicitado Agente pode notificar outros de informação crítica que surja

Iniciação de sub diálogo Agente pode iniciar sub diálogos para clarificar e corrigir

Decisão fixa de sub tarefas Agente toma decisão de resolver pequenas tarefas pré definidamente Decisão mista negociada Agentes que coordenam e

negoceiam com outros agentes para determinar quem decide

Considerando um uma aplicação de planeamento interactiva, em que o utilizador tem a iniciativa. O primeiro passo para decisão mista é permitir relatórios não solicitados. Por exemplo, digamos que o sistema verifica continuamente o plano em desenvolvimento de modo a garantir um projecto correcto. À medida que as alterações vão ocorrendo, o sistema pode detectar problemas e notificar o utilizador. Mas neste nível básico, o sistema não saber coordenar a subsequente interacção.

O próximo nível envolve a iniciação de sub diálogo. Neste caso, o sistema pode iniciar um sub diálogo em determinadas situações, por exemplo, perguntas para esclarecer a situação. Porque o utilizador deve responder às questões colocadas e a clarificação pode levar a diferentes interacções, o sistema toma decisão temporariamente até o assunto ser esclarecido. Depois a decisão reverte para o utilizador.

O nível de decisão fixo de sub tarefas refere-se à responsabilidade do sistema para desempenhar determinadas operações. Por exemplo, o sistema é

(8)

responsável pela escolha de determinados veículos, rotas e paragens de reabastecimento, para cada acção de transporte. Quando o utilizador sugere um objectivo de transporte, o sistema apodera-se do plano, perguntado ao utilizador para tomar decisões quando necessita de ajuda. À medida que o sistema vá trabalhando neste aspecto do plano, está tomando decisões. Uma vez que a sub-tarefa finaliza, a decisão reverte ao utilizador.

No nível de Decisão Mista Negociada, não há fixação de responsabilidades ou da decisão. Cada agente verifica constantemente a tarefa corrente e avalia se deve tomar iniciativa na interacção, baseando esta decisão em diversos factores, incluindo:

• Capacidade do agente para coordenar eficazmente a corrente sub-tarefa (Posso a interacção para resolver este problema?),

• Os outros pedidos sobre o agente no momento presente( Tenho tempo e recursos para isso?), e

• Avaliações dos outros agentes sobre a sua própria capacidade para coordenar a interacção no momento presente (Serei o agente mais adequado para coordenar dados os meus colaboradores?).

1.4 Reconhecimento de Intenções

Um aspecto chave que surge nos SDM é o reconhecimento de intenção. Quando o sistema controla a interacção, pode determinar as respostas admissíveis a cada vez e decidir como interpretá-las. Quando o utilizador detém o controlo, o sistema deve identificar os objectivos para garantir respostas adequadas. Em tarefas simples, técnicas simples podem ser suficientes e incorporar a estratégia de interpretação. Com tarefas mais complexas, o sistema pode necessitar de reconhecer alguns ou todos os aspectos seguintes, de uma resposta do utilizador:

• Que tipo de discurso está o utilizador a executar: será um pedido, promessa, aceitação ou uma proposta?

• A que nível está considerado o utilizador: estarão a dialogar sobre a interacção ou como executar uma tarefa, ou estarão a executar parte de uma tarefa?

• Que acções estão a tentar cumprir: que modificações na interacção, como está a ser modificada a acção, ou que parte da tarefa está a ser executada pelo utilizador?

1.5 Actividade conjunta

Os humanos estão bem adaptados à decisão mista na solução de problemas. No quotidiano, interagimos através de uma colaboração sólida e eficiente. Através da partilha de informação, credos, necessidades e contextos desenvolvemos esforços para atingir objectivos. A conversação é a área mais comum na exploração de sistemas de decisão mista, focando na colaboração para atingir o objectivo de comunicar necessidades e informação. No entanto, os SDM vão para além da conversação e englobam uma vasta diversidade de interacções que contam com a colaboração de contribuições de participantes, alguns que podem incluir a interacção conversacional.

(9)

Psicólogos e cientistas informáticos têm-se referido às colaborações eficientes para objectivos comuns como actividade conjunta. A actividade conjunta toma o comportamento em passos rápidos, interacções bem coordenadas entre pessoas que trabalham juntas para um objectivo comum. Exemplos de actividade conjunta incluem os comportamentos colaborativos observados na conversação, dança e até na familiar mudança de mobília ao mover grandes móveis. Os participantes numa actividade conjunta procuram convergir num conjunto de crenças sobre a preparação, actividade, objectivos e a natureza e tempos das contribuições de cada indivíduo (e/ou agente). As incertezas sobre os objectivos e necessidades são resolvidos através de compreensão mútua ou bases comuns, referida por psicólogos como criação de ligações.

A actividade conjunta incorpora uma fluidez especial e uma forma eficiente de interacção de decisão mista. A busca de metáforas, concepções, e engenho para suportar a actividade conjunta apresenta desafios muito difíceis, e consequentemente, abre novas grandes oportunidades na investigação para a decisão mista.

1.6 Crenças, acções e decisão

OS SDM devem considerar um conjunto chave de decisões nos seus esforços para suportar a actividade conjunta e ligação. Estes incluem quando comprometer utilizadores com um serviço, como contribuir para resolve rum problema da melhor forma, quando se deve passar o controlo da resolução de um problema para os utilizadores para orientação mais refinada, e quando perguntar ao utilizador por informação adicional de modo a minimizar incerteza numa tarefa.

Os sistemas que fornecem serviços automatizados contam com a capacidade de tentar prever as necessidades de um utilizador, considerando dados obtidos através do estreito laço com eventos da interface de utilizador. A capacidade do sistema para entender os utilizadores pode ser ampliada adicionando sistemas mais robustos para observar a actividade do utilizador com representações de conhecimento mais expressivas e técnicas de ligação entre os agentes mais sofisticada. Apesar de um conhecimento mais completo da actividade do utilizador, os sistemas devem continuar a não desprezar alguma incerteza. A construção de SDM mais eficazes, requer a consideração de incertezas chave quer na concepção dos sistemas quer durante a sua execução.

A abordagem Bayesiana na interacção humano/computador dá-nos uma perspectiva de grande valor na concepção de SDM. Os agentes Bayesianos gerem as crenças sobre variáveis críticas tal como as intenções e atenção do utilizador. Estes agentes também actualizam as suas crenças continuamente com procedimentos probabilísticos que consideram quer a informação recolhida passivamente bem como a informação recolhida activamente.

Trabalhos recentes demonstram que raciocínio sob incerteza na inferência Bayesiana em tempo real, é um componente de grande valor na interacção em

(10)

sistemas de decisão mista. Quer os modelos de aprendizagem probabilística automática ou manuais, que incluem redes Bayesianas, têm sido incorporados como elementos chave em protótipos de interfaces de utilizador. Por exemplo, no sistema Lumière (secção 3.1.1), um modelo de uma rede Bayesiana analisa uma série de eventos gerados pela interacção do utilizador com o Microsoft Excel. O sistema infere continuamente distribuições probabilísticas sobre os objectivos do utilizador e o seu interesse em receber assistência activa. Quando o utilizador requer explicitamente por assistência, a informação sobre este requerimento é adicionada à análise.

O esquema em baixo (figura 1.7.1) representa a perspectiva Bayesiana na interacção homem/computador. Uma distribuição de probabilidade sobre os objectivos de um utilizador (no gráfico de barras coloridas) é calculada a partir de um conjunto de observações e informação já existente sobre o utilizador no sistema. As acções a efectuar, pelo sistema, são baseadas na utilidade esperada.

Figura 1.7.1 – Perspectiva Bayesiana na interacção homem/computador.

1.7 Estrutura de um SDM

O esquema, a seguir (figura 1.7.2), representa os diferentes componentes de um SDM. Num nível mais baixo poderemos ter diferentes bases de dados e fontes de conhecimento que serão acedidos por agentes inteligentes. Ao conceber um sistema modular, as bases de dados ou fontes de conhecimento podem ser adicionadas ou removidas de acordo com as necessidades sem ter de reformular todo o sistema. Estes agentes, encontram-se num nível imediatamente acima das bases de dados. Deverão existir meios de comunicação entre agentes (pois muitos dos sistemas são multi-agente). No nível de topo são considerados dados de entrada pelo utilizador, restrições e informação adicional que melhorem a performance do sistema. No nível entre humanos e agentes electrónicos temos a interface homem/máquina. Este é o nível mais importante num SDM, pois é o que une o raciocínio humano e do computador e que faz um sistema ser de decisão mista. É neste nível que muitos dos aspectos mencionados no capítulo 2 (Fundamentos Teóricos) são implementados.

(11)

Figura 1.7.2– Estrutura de um SDM [SKIN 04, pg10]

1.8 Desafios na construção de SDM

O sucesso na concepção de sistemas de decisão mista (SDM) requer a criação de um sistema onde o utilizador e o agente em software trabalhem juntos de forma harmoniosa. Tal como o conflito pode surgir entre dois humanos que trabalhem juntos, um agente em software mal concebido pode levar ao humano concluir que não precisa dele para nada. Organizam-se por tópicos, os aspectos a ter em conta para o desenvolvimento de SDM [SKIN 04]:

1. Entender os objectivos do agente humano – Tentar saber das intenções do utilizador não é um assunto trivial. Se o agente electrónico adivinha incorrectamente e autonomamente executa uma acção não desejada pelo utilizador, faz com que o sistema perca eficácia, precisão e – mais importante – a confiança do utilizador.

2. Empregar a quantidade adequada de diálogo com utilizador – O diálogo com utilizador é uma abordagem eficaz para entender os objectivos do utilizador, mas estes devem ser balanceados com os custos de inconveniência para o próprio.

3. Tempos de acção e diálogo – Os agentes devem usar modelos de atenção do utilizador e considerar custos e benefícios de deferir a acção para um momento em que a acção não distraia o utilizador.

4. Fornecer automação de valor acrescentado – A automação de tarefas triviais diminui a sensibilidade para o valor do sistema. É importante ter isto em conta, e que o utilizador se aperceba disso (para que não perca noção do valor do sistema).

5. Fornecer mecanismos para uma colaboração eficiente – Os agentes devem concebidos de modo a assumirem que os utilizadores possam querer completar ou refinar análises fornecidas pelos agentes electrónicos. Raciocínio humano Interface Homem / Máquina Bases de Dados Agentes electrónicos inteligentes Fonte de

(12)

6. Usar comportamento socialmente apropriado – Os agentes electrónicos devem ter um comportamento “de bom gosto” que corresponda às expectativas dos humanos.

7. Memorizar interacções recentes – Os sistemas devem memorizar interacções recentes com os utilizadores e fornecer mecanismos que permitam aos utilizadores fazer referências naturais a objectos e serviços incluídos em pequenas experiências partilhadas (entre agente electrónico e humano).

8. Aprendizagem contínua – A habilidade em aprender sobre os objectivos do utilizador e suas necessidades, e evitar repetir erros, é muito importante (e critico) para ganhar a confiança do utilizador.

(13)

2 Fundamentos Teóricos

Neste capítulo abordam-se conceitos teóricos de diversos investigadores na área do raciocínio probabilístico. São estes conceitos teóricos que servem de base para a elaboração de algoritmos que permitem a interacção entre agentes (humanos e software), e que os agentes electrónicos adquiram o comportamento pretendido para os Sistemas de Decisão Mista.

De salientar que neste capítulo ainda que haja um capítulo dedicado à abordagem de interacção com vários agentes em software, nenhuma das abordagens é específica para este tipo de interacção.

Alguma dificuldade no acesso a bibliografia na biblioteca mais recente sobre esta temática, bem como mesmo na Internet. Levou-me a basear, em grande parte, este capítulo numa pesquisa efectuada em 1998 [DI-FCUL 98].

2.1 Introdução

Os conceitos básicos em raciocínio probabilístico são probabilidade e probabilidade condicional [DI-FCUL 98, pg.11]. Na interpretação subjectivista, a probabilidade do evento A representa a crença de um agente na veracidade de A, baseado na informação disponível. Essa estimativa deve ser consistente com os axiomas de probabilidade.

Definição: Probabilidade

Probabilidade é uma função P : 2 Ω→ [0,1], que satisfaz os axiomas: i) P(A) = 1 ⇔ A = Ω

ii) ∀(A,B) ⊆ Ω se A∩B = ∅ então P(A∪B) = P(A) + P(B)

Os subjectivistas são conhecidos como bayesianos pois consideram a frase “…dado que tudo o que conheço é C” como conceito primitivo da linguagem, o qual é sintacticamente representado pela colocação do C após a barra de condição como em P(A|C)=p. Esta notação combina as noções de conhecimento e crença e atribui um grau de crença p a A, dado o conhecimento C. O contexto C representa toda a informação actual e relevante disponível. Se uma nova evidência E torna-se disponível, então a nova estimativa da probabilidade A é escrita P(A| E,C), onde a virgula realça a conjunção da evidência E com o contexto C do conhecimento anterior.

Definição: Probabilidade condicional

A notação P(A | C) = p é a probabilidade condicional do evento A, dado que o evento C é verdadeiro e que as outras informações conhecidas são irrelevantes para A. Se P(A | B) = P(A), diz-se que A e B são independentes. Se P(A | B,C) = P(A | C), diz-se que A e B são ocasionalmente independentes, dado C. A regra fundamental para o cálculo de probabilidades é P(A | B)P(B) = P(A,B) ou a forma alternativa que explicita o contexto condicionante C, dada por P(A | B,C)P(B | C) = P(A,B | C). A regra da cadeia é dada por (E1,E2,…,En) = P(En | En-1,…,E1) … P(E2 | E1)P(Ei).

(14)

Da regra fundamental segue P(A | B)P(B) = P(A,B) = P(B | A)P(A), o que produz o teorema de Bayes na forma P(B | A) = P(A | B)P(B) / P(A). O evento A pode ser escrito como a união dos eventos disjuntos (A,B) e (A,¬B). Pelo axioma da aditividade, obtém-se P(A) = P(A,B) + P(A, ¬B). De forma geral, se Bi, i = 1,2,…,n é uma partição(Conjunto de proposições exaustivas e mutuamente exclusivas), então P(A) = ∑i P(A,Bi) é denominada marginalização de B e representada por ∑B P(A,B).

Teorema de Bayes. Seja E uma sequência de evidências e Hk, k=1,…,n uma partição do espaço em hipóteses possíveis, então:

P(Hi|E) = P(Hi)P(E|Hi)/ ∑nk=1 P(Hk)P(E| Hk) Como P(E) = ∑n

k=1 P(Hk)P(E| Hk) então P(Hi|E) = P(Hi)P(E|Hi)/P(E). Agentes bayesianos vêm esta fórmula como uma regra para actualizar crenças, face à ocorrência de E. A crença atribuída à hipótese Hi, após a evidência E, é actualizada multiplicando-se a crença prévia P(Hi), pela verosimilhança P(E|Hi) que E irá ocorrer se a hipótese Hi for verdadeira.

Pearl [PEA 88 p.17] realça que além de ser uma forma numérica de quantificar crenças o cálculo de probabilidades constitui uma forma para manipular as seguintes relações qualitativas, primitivas básicas na linguagem, empregadas no discurso normal:

• probabilidade (verosimilhança) – “É mais provável o João voar do que andar”

• condição – “Se o João está doente, então ele não pode voar”

• relevância – “Se o João voa ou não depende dele estar ou não doente”

• causal – “A doença é a causa de o João não voar”.

Os bayesianos consideram o relacionamento condicional como básico e compatível com a organização do conhecimento humano. B em P(A|B) serve como ponteiro para um contexto ou enquadramento de conhecimento e A|B representa o evento A no contexto dado por B ( por exemplo, o sintoma A no contexto de uma doença B). O conhecimento empírico invariante (de um especialista) é codificado através da probabilidade condicional e a crença no evento A e B se necessário é estimada pela regra fundamental.

A independência condicional formaliza a noção qualitativa de irrelevância. A notação I(A,B,C) representa que A é independente de C dado B, ou seja, o conhecimento de C não afecta a crença sobre A, quando já se conhece B. A independência condicional e a dependência fornecem a base para expressar a noção directa e qualitativa de relevância na forma gráfica de rede bayesiana e diagrama de influências, antes de se fazer qualquer atribuição numérica de probabilidades. Estes formalismos gráficos representam as dependências adequadamente, pois consideram o facto de que elas são relações dinâmicas criadas e destruídas quando uma nova evidência é obtida. Assim a dependência não transitiva entre A e C, inicialmente independentes, ocorre quando torna-se conhecido o valor de B, um descendente de A e C. Portanto B depende de A e C; estes inicialmente independentes, tornam-se dependentes

(15)

quando o valor de B é conhecido. Outro padrão é a dependência induzida quando preposições não relacionadas (isto é, independentes) tornam-se relevantes entre si (isto é, dependentes), quando um facto novo é conhecido. Portanto, saber que um paciente sofre um certo sintoma cria dependências entra as doenças que podem causar aquele sintoma [PEA 88, p51, 80 e 93]. A relação de causa não está implícita na observação de que duas variáveis possuem alta correlação estatística, como por exemplo fumar e a ocorrência de cancro nos pulmões. Se não se acreditar que fumar causa cancro nos pulmões não faz sentido parar de fumar com o objectivo de reduzir a possibilidade de ter cancro pulmonar. Graficamente essa relação é representada por um arco orientado, (Ni, Nj), unindo os dois nós, sendo uma relação assimétrica. É natural dizer que um estado de Nj é causado (influenciado) pelos estados dos seus pais Ni’s. Esta assimetria permite representar padrões de relações de relevância mais complexos tais como a dependência não transitiva e dependência induzida. Por exemplo, chuva e irrigador ligado podem ser causas de piso molhado (relação não transitiva), mas quando queda é observada, chuva e irrigador ligado não podem ser considerados independentes. A confirmação de uma das causas potenciais reduz a probabilidade da outra causa. O padrão de raciocínio, em que ao encontrar uma explicação, para um dado item, reduz-se a credibilidade de outras explicações, é denominado “explayning away”.

A separação em grafos orientados (d-separação) é um teste gráfico para decidir quais as relações de interdependência condicional estão implicadas por uma dada tipologia de um DAG (grafo acíclico orientado). Este critério é a base para a definição de redes Bayesianas. Identificando as independências embutidas no DAG, identificam-se também os padrões de independência que são característicos de organizações causais.

A partir da representação gráfica podem-se construir modelos probabilísticos. Um modelo probabilístico é entendido como uma especificação completa de uma JDP (distribuição de probabilidades conjunta), o que inclui a informação quantitativa (probabilidades) e a qualitativa (relações de dependência) entre as variáveis aleatórias representadas. Os modelos probabilísticos construídos a partir de representações gráficas são denominados redes probabilísticas. Os principais são a rede bayesiana e diagrama de influências (que utilizam DAGs) e rede de Markov (que utiliza grafos não orientados). Tal representação é explícita, concisa e estável: os arcos permitem expressar as relações de dependência directa e qualitativa e a topologia do grafo preserva o relacionamento com qualquer atribuição de probabilidade.

Um outro tipo de rede probabilística é a denominada árvore de junções, na qual os nós representam um conjunto de variáveis aleatórias que constituem sub grafos cujos nós são todos adjacentes entre si. A eficácia de inferência depende da topologia da rede. Existem algoritmos que permitem passar de uma representação para outra. A tendência actua para aplicações práticas reais é passar da representação de rede bayesiana para uma representação gráfica não direccionada e aplicar o método de propagação de crenças de

(16)

Lauritzen e Spiegelhalter [LAU 88] e aperfeiçoado por Jensen [JEN 90a, 90b] e das primitivas Distribua Evidência e Colete Evidência.

2.2 Redes Bayesianas

Quando se raciocina em ambiente com incerteza é importante saber se a informação sobre algum evento influencia a crença em outros eventos. Sistemas baseados em regras de produção não podem raciocinar correctamente com incerteza porque a dependência entre eventos muda com o conhecimento de outros eventos. As formas com que a evidência se propaga entre variáveis numa rede causal (DAG) foram analisadas por Pearl [PEA 86b] e Verma [VER 87], abaixo representadas (ver figura 2.1).

Figura 2.1 Tipos de conexão numa Rede Causal

Na conexão serial, uma evidência em A influencia a crença em B que por sua vez irá influenciar a crença em C. De forma semelhante (mas em sentido inverso), uma evidência em C irá propagar-se para A. Em ambos os casos não há propagação de influência se B está instanciado, o que bloqueia o canal entre A e C, tornando-os condicionalmente independentes. Portanto I(A,B,C) torna-se válido e A e C são ditos d-separados, devido a B.

Na conexão divergente, uma evidência num ascendente de A influencia a crença sobre os filhos de A, excepto se A é instanciado. Assim uma evidência em A bloqueia o canal de comunicação e com os seus filhos, tornando-os condicionalmente independentes. Diz-se que B, C, …, E são d-separados, devido a A.

Na conexão divergente, uma evidência em A ou num dos seus descendentes influencia a crença nos pais de A, tornando-os condicionalmente dependentes devido ao princípio de explayning away (ver página 12). Se nada é conhecido sobre A, excepto o que pode ser inferido a partir do conhecimento dos seus pais B, C,…E então os seus pais são independentes (evidência num deles não influencia a crença sobre os outros). Nesse caso diz-se que B, C, …, E são d-separados.

Para qualquer par de variáveis numa rede causal, seguindo as regras descritas nos três casos acima, é possível decidir se elas são dependentes, dada a evidência disponível na rede. Face a uma evidência (observação de um valor

A B C

C

A B C

A B C

A

serial divergente convergente

(17)

específico de uma variável) é possível determinar em quais variáveis devem actualizar crença.

Definição: Variáveis separadas

Numa rede causal duas variáveis são variáveis separadas se uma evidência numa delas não tem impacto sobre a crença acerca do valor da outra. Se o estado de uma variável é conhecida, ela é dita instanciada.

Definição: d-separado [PEA 88, p.117]

Sejam X, Y e Z três subconjuntos disjuntos de nós num DAG D, então Z d-separa X de Y, denominado <X|Z|Y>D, se para todos os caminhos entre um nó em X e um nó em Y existe o nó W satisfazendo uma das seguintes condições: (a) a conexão é serial ou divergente e W está em Z; (b) a conexão é convergente e nem W ou os seus descendentes estão em Z.

Uma definição mais operacional deste critério, que leve em conta de forma explícita a propagação de evidências num DAG, segundo o autor [é apresentada por Jensen:

Definição: d-separado [JEN 96, p.12]

Duas variáveis A e B em um DAG são d-separadas se para todos os caminhos entre A e B existe uma variável intermediária W tal que (a) a conexão é serial ou divergente e o estado de W é conhecido (W instanciado) ou (b) a conexão é convergente e nem W ou seus descendentes receberam qualquer evidência. O critério de d-separação é usado por Pearl para estabelecer uma relação entre subconjuntos d-separados num DAG e as independências condicionais num modelo de dependência. Um DAG D é um I-mapa de um modelo de dependências M se cada condição de d-separação em D corresponde a uma relação válida de independência condicional em M. O conceito de I-mapa é utilizado para definir redes bayesianas.

Definição: Redes Bayesianas, por Pearl [PEA 88, p.119]

Dada uma distribuição de probabilidades P em N, conjunto das variáveis Xi e um conjunto de arcos E, o DAG D=(N,E) é uma rede bayesiana (BN) se D é um I-mapa mínimo de P (nenhum dos arcos em E pode se retirado sem que se deixe de representar uma ou mais relações do modelo de dependências P). Cada Xi possui como estados possíveis um conjunto mutuamente exclusivo de valores representados por {xi}. Usando critérios de d-separação, Pearl prova que se pa(Xi) for o conjunto dos nós directamente ligados a Xi epor construção pa(Xi) ⊆ { X1, …, Xi-1}, então numa rede bayesiana P(xi | xi-1, …, x1) = P(xi | pa(Xi)). De salientar que a notação P(xi) significa P(Xi = xi). Portanto a regra da cadeira torna P(x1, …, xn)= ∏i P(xi | pa(Xi)), o que permite apresentar uam definição mais operacional de rede bayesiana. Devido a essa independência condicional, não é preciso representar todas as probabilidades dos eventos possíveis, resultando num problema mais tratável em computador.

(18)

Definição: Rede Bayesiana, por Russel [RUS 95]

Uma rede bayesiana, é um tripleto (N, E, P), onde N={X1,.., Xn} é o conjunto de nós (variáveis aleatórias Xi, representando o domínio do problema), E é o conjunto de arcos orientados tal que D=(N,E) é um DAG e P é a distribuição de probabilidades conjuntas P(x1, …, xn)= ∏i P(xi | pa(Xi)),. Os arcos representam a dependência directa entre variáveis. A intensidade dessa dependência é quantificada por tabelas com a distribuição de probabilidades condicionais P(xi | pa(Xi)),. Se pa(Xi) não existe, a tabela para Xi reduz-se à distribuição de probabilidades para os estados xi de Xi.

Se a rede é construída ligando variáveis influenciadas causalmente pelas anteriores então o modelo probabilístico reflecte correctamente as relações de independência condicional do domínio (hipótese causal de Markov). A rede não tem nós correspondendo a todas as causas possíveis de um evento; factores irrelevantes são resumidos na incerteza associada às probabilidades de algumas variáveis, resumindo um conjunto potencialmente infinito de causas possíveis. Com poucas variáveis pode-se lidar com um universo muito grande de causas ( aproximadamente). O grau de aproximação pode ser melhorado ao se introduzir mais informação relevante. Existem diversos tipos de Redes Bayesianas, dependendo se as variáveis são discretas, contínuas ou mistas e do tipo da distribuição de probabilidades de cada variável. São importantes o caso de variáveis discretas (distribuição multinomial) e as redes com variáveis contínuas e distribuição normal, ou exponencial e mista (variáveis discretas e normais).

Pearl propõe [PEA 88] dois tipos básicos de cálculos executados com redes bayesianas: revisão de crenças e a actualização de crenças.

2.2.1 Revisão de Crenças

A revisão de crenças é um processo de optimização que pode ser considerado como uma forma de raciocínio abdutivo2 utilizado para construir explicações ou diagnósticos. É um processo de revisão de compromisso de crenças, sendo este entendido como a aceitação categórica e tentativa de um conjunto de hipóteses que juntas constituem a explicação mais satisfatória da evidência disponível. Em termos probabilísticos, equivale a encontrar a instanciação mais provável de todas as variáveis das hipóteses, face aos dados observados. O resultado é uma lista óptima de proposições aceitas em conjunto, lista que pode mudar abruptamente quando mais evidência é obtida.

Segundo demonstrado por Shimony este problema é da classe NP-completo [DI-FCUL 98, pg.16]. Uma solução que funciona apenas para redes simplesmente conectadas (polytrees), foi proposta por Pearl. Ela é baseada num método de passagem de mensagens e utiliza as relações de independência condicional embutidas no DAG.

(19)

Para uma visão geral das principais abordagens para o problema da revisão de crenças, envolvendo a obtenção de soluções exactas (E) ou aproximadas (A), apresenta-se abaixo uma tabela [DI-FCUL 98 pg.17] (tabela 2.1).

Tabela 2.1 – Revisão de Crenças: Abordagens

2.2.2 Actualização de Crenças

Enquanto a revisão de crenças é um raciocínio abdutivo utilizado para construir explicações, a actualização de crenças refere-se à fusão e propagação do impacto de uma nova evidência e crenças, através de uma rede bayesiana, de forma tal que a cada proposição seja atribuída uma medida de certeza compatível com os axiomas da teoria da probabilidade.

O termo actualização de crenças passará a ser considerado sinónimo de inferência probabilística. As redes bayesianas são utilizadas em sistemas de suporte à decisão, como o objectivo de dar estimativas actuais da crença P(x|e), face à observação da evidência e, para eventos que não são directamente observáveis ou observáveis a um custo não aceitável. A evidência e pode ser específica (valor observado que afecta a crença noutras variáveis) ou virtual (julgamento baseado em observações externas, mas que influenciam as variáveis na rede). Sobre este ultimo, poderemos exemplificar através de uma lista de resultados de uma análise laboratorial e as probabilidades associadas a cada um deles. Em ambos os casos a evidência representa variáveis com valores conhecidos.

As inferências no raciocínio probabilístico são do tipo diagnóstico, causal, inter causal (explayning away) ou misto (combinação dos diferentes tipos). Todas podem ser realizadas em Redes Neuronais e correspondem a calcular P(xi|e) e a partir da distribuição de probabilidade conjunta (joint probability distribuition -JPD) ou utilizando um mecanismo que leva em conta as relações de independência condicional do DAG, obtendo uma redução da complexidade do problema, função topologia do DAG.

Referência Abordagem E/A Restrição Comentários

Charniak 92 Programação Inteira

(PI) E

Polytrees Transforma a Rede Neuronal em abduções baseadas em custo e aplica a PI

Charniak 94 Busca A E Polytrees Transforma a Rede Neuronal em abduções baseadas em custo e aplica a busca A

Lauritzen 88 Agregado E Polytrees Aplicável a actualização de crenças

Pearl 88 Mensagens E Polytrees Aplicável a actualização de crenças Rojas 93 Algoritmos Genéticos A Polytrees Geral uma população que contém a

solução óptima Santos 93 Programação Inteira

(PI) E/A Polytrees Transforma a Rede Neuronal em programa de PI e resolve-o via algoritmo anytime

Sy 92 Mensagens E Polytrees Passagem de mensagens sem

(20)

Um DAG não contém ciclos orientados mas pode conter ciclos não orientados (loops) se não se levar em conta orientação dos arcos. Ao se propagar as evidências através dos loops é necessário é necessário que o mecanismo de inferência permita a realização de inferências bidireccionais e garanta a prevenção de feedback e raciocínio circular do tipo: uma leve evidência em favor de A influencia a crença em favor de B, que por sua vez influencia a crença em favor de A e assim por diante, até se tornar uma confirmação de A e B. Considerar relva molhada evidência de chuva e chuva evidência para relva molhada, pode levar a concluir, sem justificação factual aparente, que choveu e molhou a relva.

A inferência probabilística exacta em redes bayesianas é da classe NP-completo para as redes com topologia multiconectada (aquelas que contêm um par ou mais de variáveis conectadas por mais de um caminho não orientado. Isto foi demonstrado por Gregory Cooper em 1987, e Paul Daugm e Michael Luby em 1993.

Para redes simplesmente conectadas existem algoritmos com tempo polinomial como é o caso do método de passagem de mensagens. Para redes com topologia de cadeia, árvore ou polytrees, no pior caso o tempo é proporcional ao número de arcos e ao tamanho da maior tabela de distribuição de probabilidades condicionais.

Basicamente existem três grandes classes de algoritmos para a actualização de crenças:

• Triangulação de grupos • Passagem de mensagens • Algoritmos de simulação

A triangulação de grupos é normalmente precedida de uma moralização3 (ver secção 2.3.1). Estas transformações tiram vantagem do facto que os nós têm domínios restritos de influência, mesmo em DAG multiconectados, permitindo que distribuição de probabilidades conjunta (JPD) seja expressa em termos de distribuições marginais de pequenos conjuntos de nós com a propriedade de intersecção contínua (ver secção 2.3).

O HUGIN (Handeling Uncertainty in General Influence Networks) é uma ferramenta informática desenvolvida no Departamento de Matemática e Ciência de Computadores da Universidade de Aalborg, que se insere no tipo de passagem por mensagens. Surgiu em 1990 por Jensen ao propor modificações no método de Lauritzen e Spiegelhalter [DI-FCUL 98, pg.18].

Os algoritmos de simulação são mais rápidos são mais rápidos que os métodos anteriores, mas na prática podem produzir dados incorrectos. A ideia base é utilizar a JPD para gerar uma amostra (dos valores que as variáveis podem assumir) e então usá-la para calcular valores para as probabilidades de certos eventos, dada uma evidência, contando a frequência dos eventos de interesse.

3

A moralização de um grafo orientado consiste em eliminar a orientação dos arcos e incluir arcos (se eles não existirem) entre pares de nós que têm um descendente em comum.

(21)

Os algoritmos são ditos estocásticos se a amostra for gerada utilizando um mecanismo aleatório, caso contrário, são denominados de busca determinística. Obviamente os maiores erros ocorrem ao estimar a probabilidade de eventos muito pouco frequentes, portanto com probabilidade muito baixa.

Os métodos de avaliação exacta de DAG multiconectados, citados por Pearl [PEA 88], transformam a rede para permitir a aplicação de algoritmos para polytrees:

• agregado – susbtitui um conjunto de nós por um único nó agregado (cluster), transformando a rede numa polytree probabilisticamente equivalente. A função de distribuição do agregado é definida no produto cartesiano das suas variáveis.

• Condicionantes – atribui valkores a variáveis (cut set), obtendo uma polytree para cada instanciação possível, que é avaliada. A crença num evento é a média dos valores obtidos em cada polytree, ponderada pela probabilidade do cut set.

Abaixo é representada uma tabela, que apresenta as principais abordagens com soluções aproximadas (A) ou exactas € para o problema da actualização de crenças (ver tabela 2.2):

Tabela 2.2 - Actualização de crenças: Abordagens Referência Abordagem E/A Restrição Comentários

Becker 94 Cut set E Bouckaert 94 Simulação

estocástica A Uma amostragem estratificada CAstillo 95 Enumeração A Estimativa do erro teórico Cousins 91 Simulação

estocástica A Baseado em técnicas de amostragem D’Ambrosio 94 Inferência simbólica A Noisy OR Manipulação simbólica de quações

definindo uma JPD

Darwiche 95 Condicionante E/A Baseado em técnicas de amostragem Delcher 95 Mensagens E Polytrees Actualização em tempo logarítmico Diez 96 Condicionante E Implementação paralela

Drapper 95 Agregado E Aplicável a revisão de crenças Hulme 95 Amostragem de

Markov A

Noisy OR Baseado em técnicas de amostragem Horvitz 89 Condicionantes com

limites E Aplicável à revisão de crenças Jensen 95 Árvore de junção

com amostragem de Monte Carlo

A Algoritmo geral para inferências em grandes redes bayesianas. Combina árvore de junção (exacto) com simulação de Monte CArlo (aproximado)

Kanazawa 95 Simulação

estocástica A DPN Para redes probabilísticas dinâmicas (DPN) Kjaerulff 95 Árvore de Junção

com amostragem de Gibbs

A Método de passagem de mensagens Lauritzen 88 Agregado E Aplicável à revisão de crenças Li 94 Factoração E Aplicável à revisão de crenças Pearl 88 Passagem de

mensagens E

polytrees

Santos 94 Simulação

estocástica A Usa busca A* e programação inteira Shachter 89 Simulação

estocástica A Baseado em técnicas de amostragem Suermondt 94 Cut set E Aplicável à revisão de crenças

(22)

2.3 Árvores de junções

A topologia de uma rede bayesiana representa:

a) um modelo probabilístico completo de um domínio, com representação das informações qualitativas (relações de dependências) e quantitativas (função de distribuição de probabilidades, e

b) uma estrutura de controlo para a inferência.

Uma rede bayesiana determina qual a estratégia para determinar crenças. Por isso, existem restrições sobre o tipo de conhecimento que é possível expressar em cada topologia de rede. Em muitos problemas reais o domínio requer uma representação com redes multiconectadas. Ao se obter uma evidência, é preciso considerar se existe mais de um caminho entre o nó com a nova evidência e aquele cuja probabilidade deve ser actualizada. Em redes multiconectadas, uma simples propagação local não é aplicável porque tais algoritmos não prevêem a possibilidade de um nó, ao receber evidência de dois dos seus vizinhos, detectar se essa evidência não se origina na mesma fonte e evitar contá-la duas vezes. Portanto, há necessidade de outros algoritmos especializados.

O método Pearl de passagem de mensagens não é aplicável porque foi desenvolvido para polytrees. Os métodos de agregado e condicionantes, propostos para a avaliação de redes multiconectadas, apresentam algumas dificuldades na transformação desses DAGs em polytrees.

No método agregado, é necessário seleccionar as variáveis que, ao serem substituídas por uma variável composta, permitem quebrar as conexões múltiplas do DAG. Quanto maior for esse grupo, maior será a dimensão da sua tabela de distribuição de probabilidades condicionais e maior a dificuldade para explicar a devida variação de crença em cada uma das variáveis.

O método de condicionantes, é baseado na habilidade de mudar a conectividade de uma rede, de forma a torná-la simplesmente conectada, seleccionando-se um conjunto adequado de variáveis a serem instanciadas. Nestes métodos, se a rede for muito conectada, pode ocorrer uma explosão combinatorial, em função do número de nós e variáveis necessários para quebrar os loops.

A proposta de Shachter, para lidar com DAGs multiconectados (diagramas de influências), consiste em mudar a topologia do DAG, nó a nó, até que se possa obter a solução desejada, consultando as tabelas associadas aos nós que ainda restam na rede. Para isto, são aplicadas operações de inversão de arcos (com o teorema de Bayes), introdução de novos arcos (não esquecer que garantem a disponibilidade de informações utilizadas nas decisões anteriores, no instante de se tomar uma nova decisão) e remoção de nós. Estas operações preservam o conhecimento representado na rede. A ordem de redução dos nós é determinada pelo nó associado à questão que se deseja responder. Tal processo deve ser repetido a cada propagação de crença, o que onera bastante e restringe a sua utilização ao se trabalhar com problemas reais.

(23)

Lauritzen e Spiegelhalter propuseram um método de agregado aplicável às redes orientadas (bayesianas) ou não (Markov). O método tira partido da estrutura da rede original para propagar evidências, calculando probabilidades locais (envolvendo um pequeno número de variáveis) e evitando expressões globais (com grande número de variáveis). Primeiro deverá obter-se os cliques 4da rede original, aplicando moralização e triangularização5 (ver secção 2.3.1) se necessário. Eles deverão ser ordenados para formar uma cadeia de conjuntos (chain set). A cadeia de conjuntos é caracterizada pela propriedade de intersecção contínua, ou seja os elementos comuns ao clique de C1 a Ci-1. Então de forma recursiva é obtida uma representação de potencial de evidência (tabela de potencial) para cada clique, função apenas dos seus nós, da ordenação dos cliques e das probabilidades condicionais da rede original. Estas tabelas de potenciais são utilizadas no processo de entrada de uma evidência na rede. Para actualização de crenças são criadas tabelas de distribuição (marginal) de probabilidades de cada clique, a partir das tabelas de potenciais. Esta propagação de evidência segue a ordenação dos cliques, sendo utilizadas fórmulas de transformação entre os sistemas de tabelas. A probabilidade de um nó (da rede original) é calculada com a marginalização da JPD de qualquer clique que contenha o nó em questão.

Se ocorrer mais de uma evidência simultaneamente, todas elas devem ser absorvidas de uma única vez de tal forma que o efeito possa ser propagado em conjunto. Basicamente a absorção implica retirar a variável observada e rever a representação potencial, com a projecção dos potenciais envolvendo cada evidência, num clique reduzido ou na sua vizinhanças se o clique puder ser removido. A partir do grafo original reduzido (devido à redução das variáveis associadas às evidências) é necessário obter novas distribuições de probabilidades para os cliques. Para isto, é necessário repetir o processo anterior envolvendo moralização, triangularização, ordenação, etc., para a rede reduzida.

Este algoritmo foi considerado ineficiente por Jensen em 1988, que propôs as seguintes simplificações:

• Substituir a ordenação linear, dada pela propriedade de intersecção contínua, por uma ordenação dada por uma árvore de junção;

• Substituir as tabelas de potenciais e marginais dos cliques por um sistema de tabelas associadas aos nós e aos seus separadores na árvore de junção;

• Iniciar a propagação de evidência a partir das folhas da árvore de junção.

Estas simplificações reduzem o volume de cálculos necessário e torna supérfluo realizar novas ordenações dos cliques após a absorção de evidências. De salientar que a estrutura de uma árvore de junção associada à rede original é fixa, sendo os cálculos realizados localmente no sentido de que

4

A definição de clique encontra-se na secção 2.3.1, em definições

5 A triangularização consiste na introdução de arcos em loops com mais de três nós. Os arcos são denominados cordas e o grafo resultante, grafo cordal ou triangular.

(24)

um nó somente necessita comunicar com os seus vizinhos. Tanto o método de Lauritzen quanto o de Jensen não se aplicam a redes que possuam:

• ciclos

• nó com um número muito grande de pais (pois os cliques podem tornar-se demasiados)

• dois pais de um mesmo nóm com um ancestral comum distante. Como o método de absorção de evidências e actualização de crenças em árvores de junções funciona adequadamente mesmo que a rede bayesiana original seja multiconectada, na prática demonstrou-se bastante útil em aplicações reais, sendo implementado em HGIN e utilizado com o formalismo de MSBN (Redes Bayesianas multi-seccionadas).

2.3.1 Transformações Topológicas

Pode-se obter uma representação não orientada, na forma de árvore de junção, para uma rede bayesiana, utilizando-se os conceitos de moralização e triangularização de grafos.

A moralização de um grafo orientado consiste em eliminar a orientação dos arcos e incluir arcos (se eles não existirem) entre pares de nós que têm um descendente em comum.

A triangularização consiste na introdução de arcos em loops com mais de três nós. Os arcos são denominados cordas e o grafo resultante, grafo cordal ou triangular. Cada corda de compõe um loop em dois loops menores. O grafo triangular resultante pode ser utilizado como um modelo probabilístico chamado modelo decomponível porque a JPD representada pode ser expressa como um produto de funções menores. Como um loop pode ser quebrado de diversas formas, existem diversas maneiras de se triangularizar um grafo, sendo óptima aquela que utiliza o mínimo possível de cordas. Yannakakis demonstrou que o problema da triangularização óptima de um grafo é da classe NP-completo. Os cliques de um grafo são determinados pela triangularização do mesmo. O tamanho dos cliques condiciona a eficiência dos algoritmos de propagação, pois a propagação de evidências é baseada em tabelas de probabilidades conjuntas associadas a cada clique. Uma boa triangularização produz cliques pequenos, ou mais precisamente, pequenas tabelas de probabilidades.

Teorema:

Um grafo não orientado é triangularizado se e só se todos os seus nós podem ser eliminados, um a um, sem a adição de qualquer arco. A prova poderá ser consultada em [JEN 96, Apêndice A]. Para se eliminar um nó A, se necessário, adicione arcos de forma tal que todos os seus vizinhos sejam ligados, dois a dois, e então remova A e os seus arcos.

Diversos algoritmos de triangularização foram propostos mas sem a garantia de serem óptimos. O método com busca de cardinalidade máxima, proposto por Tarjan e Yannakakis, cujo pseudo código está apresentada em [CAS 97,

(25)

p.135] foi utilizado por Lauritzen e Spigelhalter e nas primeiras versões do sistema HUGIN.

Algoritmo: Heurística Peso-mínimo [KJÆ90]

Kjærulff desenvolveu uma heurística que apresenta melhores resultados do que a busca de cardinalidade máxima quando se trata de redes dispersas e implementou-a no HUGIN. O algoritmo é baseado na eliminação de nós, num grafo moralizado, com ordem de eliminação dada pela heurística: 1) n´so que não requerem inclusão de cordas; 2) o nó cujos vizinhos (não eliminados) formam o clique com menos peso. O peso de um clique é a soma dos pesos dos nós, que por sua vez é o log2 do número dos seus estados.

A figura 2.2 (abaixo) apresenta um exemplo de aplicação deste algoritmo. A numeração na figura 2.2(1) corresponde ao número de estados dos nós e na figura 2.2©, à ordem de eliminação obtida.

Figura 2.2 – Triangularização de Jensen e Kjærulff

Definições:

A família do nó A é a união de A e seus pais: fm(A) = {A} ∪ pa(A). Um agregado (cluster) é um subconjunto de nós de um grafo.

Um clique é o maior agregado cujos nós são adjacentes (isto é, existe um arco entre cada par dos seus nós).

O peso de um arco num grafo de junção é o número de variáveis do seu rótulo. O peso de uma árvore de junção é a soma dos pesos dos arcos.

Algoritmo: Identificação de cliques

Seja G um grafo triangular, A1,…,An uma sequencia de eliminação dos nós de G e Ci o conjunto contendo Ai e seus vizinhos no instante da sua eliminação (isto é, os vizinhos com maior número que Ai). Então Ci é um clique de G se Ci for for máximo (ou seja, não for subconjunto de nenhum outro Cj). No caso de um DAG simplesmente conectado, os cliques são os agregados formados pelas famílias dos nós.

Definição: Grafo de junção não direccionado

Seja um grafo G=(N,E) e C={C1,…,Cm} um conjunto de cliques de N tal que N = C1 ∪ …∪ Cm. O grafo não direccionado G’={C,E’} é um grafo de junção

A4 A 6 B3 C2 D3 E2 B D C E 4 5 3 2 F3 F 1

(a) DAG (b) Grafo Moral (c) Grafo Triangularizado (a) DAG

(26)

associado a G se E’ contém um arco entre cada par de cliques com nós em comum (isto é, C1 ∩ Cj ≠ ∅ ⇒ (Ci, Cj) ∈ A’). O arco (Ci, Cj) é rotulado com os nós em Ci ∩ Cj.

Definição: Árvore de Junção

Uma árvore de junção T de um grafo G é uma árvore cujos nós são agregados de G e:

1. para cada nó X de G, existem nós em T que contêm fm(X) (propriedade de família)

2. para cada par de agregados Ci, Ck, todos os agregados entre Ci e Ck contém Ci ∩ Ck (propriedade árvore de junção)

3. cada arco é rotulado com as variáveis comuns aos agregados que os une (separador).

É possível construir uma árvore de junção a partir do grafo de junção associado ao mesmo grafo G. A ideia é retirar os arcos do grafo de junção que não implicam a perda de qualquer espécie de informação. Assim se Ci e Ck são nós de um grafo de junção e a intersecção entre eles é a variável D, então existe um arco entre eles com rótulo D. Este arco pode ser removido se existir um outro caminho entre eles que também contenha D. Seguidamente apresentam-se algoritmos que permitem criar uma árvore de junção a partir de um grafo de junção G de um grafo triangular (algoritmos criados por Jensen [JEN 96]).

Algoritmo de Krushal

Escolher sucessivamente um arco de peso máximo que não crie um ciclo. Se existir mais que um, escolher qualquer um deles.

Algoritmo de Prim

1. N = {C}, onde C é um nó arbitrário do grafo de junção

2. Escolher sucessivamente um arco (W,V) de peso máximo tal que W ∈ N mas V ∉ N, então acrescentar V a N. Se existir mais que um V, escolher qualquer um deles.

No esquema em baixo (figura2.3) representam-se o grafo e árvores de junção associados à figura 2.2. De salientar, que se existisse mais de uma árvore de junção, todas elas possuem o mesmo peso (5, neste caso).

Figura 2.3 – Construção de Árvores de Junção

DEF BCD CDE ABC D D CD BC C DEF BCD CDE ABC D CD BC DEF BCD CDE ABC D CD BC

(27)

De facto uma árvore de geração (spanning tree6) de um grafo de junção é uma

árvore de junção se e só se ela é uma spanning tree de peso máximo. Qualquer método exacto de actualização de crença, segundo argumentação de Jensen, baseado em cálculos locais, é menos eficiente que o método de arvore de junção ou possui um problema de optimização equivalente ao de triangularizar um grafo (que é denominado de triangularização escondida). Dentro desta categoria, estão incluídos os métodos de Pearl (secção 2.2.1), inversão de arcos de Sachter (secção 2.5), entre outros.

2.3.2 Propagação de Crenças em Árvores de Junções

Os métodos de actualização de crenças baseados em cálculos locais são eficientes porque não necessitam de ter uma estrutura de controlo geral, pois utilizam uma estrutra mais simples de controlo local. De facto no método de passagem por mensagens proposto por Pearl, um nó troca mensagens com os seus vizinhos numa árvore. Uma operação global pode ser iniciada em qualquer nó da árvore e através do sucessivo envio de mensagens para os vizinhos, elas atingirão todos os nós da árvore. Estas características são exploradas no método de universo de crenças (proposto por Jensen), através de da propagação em árvores de junções.

Definição: Universo de crenças

Um universo de crenças consiste num conjunto de objectos {A, …, B} e uma tabela de crenças ∅(A, …, B) de valores reais não negativos. Cada objecto possui uma lista de estados possíveis. Se A, …,B possui os estados {a1, …, an}, …,{b1, …,bm} então a tabela de crenças possui a dimensão n×…×m.

Cada objecto pode estar exactamente num dos seus estados, o qual não se conhece. A tabela de crença representa esse conhecimento incompleto. Ela não necessita de ser uma tabela de probabilidades pois nem sempre está normalizada. Entretanto ao se dividir os seus elementos pela soma total deles, obtêm-se probabilidades.

Definição: Árvore de universos de crenças

Uma árvore de universos de crenças consiste num conjunto C de agregados de objectos organizados na forma de uma árvore. A união (finita) de todos os objectos de um agregado é chamada universo. A união, U, de todos eles é o universo total. A intersecção dos vizinhos na árvore é chamada separador. O conjunto dos separadores é denominado S. Os universos e os separadores possuem tabelas de crenças potenciais. A crença conjunta do sistema denominada ∅U, é definida como uma função de U nos reais não negativos,

dada por ∅U = ∏V∈C∅V / ∏S∈S ∅S.

Uma árvore de universos de crenças corresponde a uma rede bayesiana, representa a mesma função de probabilidade conjunta que a rede bayesiana. Seja uma rede bayesiana sobre U. Então P(U) pode ser calculada, a partir da

(28)

árvore de crenças correspondente a ela, como a razão entre o produto das tabelas de crenças dos agregados e o produto das tabelas de crenças dos separadores. É possível calcular a distribuição de probabilidade para uma variável A qualquer a partir da marginalização da crença conjunta do sistema e sua normalização. Este cálculo é linear com a cardinalidade do espaço de valores de U, sendo intratável, na prática, mesmo para domínios pequenos. A solução é explorar a estrutura local da rede, com o uso de um método de propagação de mensagens.

Algoritmo: Iniciar árvore de crenças

Para construir uma árvore de universos de crenças correspondente a uma rede bayesiana com universo U:

1. Obter uma árvore de junção associada, com cliques C e separadores S; 2. Para cada variável A ∉ U, associar a ela um único clique V ∉ C, onde

fm(A) ⊆ V;

3. Para V ∉ C, definir a sua tabela de crenças como ∅V = ∅A ×…× ∅B, onde A,…,B são as variáveis associadas ao clique em questão e ∅A =P(A | pa(A)), etc. São as probabilidades definidas na rede bayesiana; 4. Para S ∉ S, definir ∅s como uma tabela constante positiva, por exemplo

contendo 1.

Então, por construção, tem-se ∅U = ∏A∈U P(A |pa(A)). De salientar que, uma árvore de universos de crenças é uma árvore de junção que possui tabelas de crenças associadas aos seus cliques e separadores. Embora possa existir mais que um clique V contendo a família de uma variável A, ela é associada a apenas um único clique. Como cada variável da rede bayesiana deve ser associada a um clique da árvore de junção alguns cliques podem ter mais de uma variável associada a eles.

Definições: Multiplicação e Divisão

Sejam ∅V e ∅W duas tabelas de crenças definidas para o mesmo conjunto de variáveis C = A, …, B.

A multiplicação ∅V×∅W(c) é definida como o produto ∅V(c).∅w(c) para as configurações possíveis c. Se as tabelas são definidas sobre os espaços A,…,B e B,…,C então a multiplicação ∅V×∅W(a,…,b,…c) é definida como o produto ∅V(c).∅w(d), para todas as configurações (a,…,b,…c).

A divisão é definida de forma análoga, mas se a tabela do denominador contiver zeros então a tabela do numerador deve ter zeros nas mesmas posições. Nesse caso tem-se 0/0=0.

Algoritmo: Entrada de evidências numaárvore de crenças

Um finding fA sobre uma variável A ⊆ U pode ser introduzido numa árvore de universo de crenças, através do nó W, tal que A ⊆ W , simplesmente multiplicando-se ∅V× fA. Semanticamente um finding é uma declaração de que certos estados de A são impossíveis. Se os findings para outras variáveis estiverem disponíveis, eles podem entrar, um a um.

(29)

Definição: finding

Seja A uma variável com n estados. Então um finding sobre A é uma tabela n-dimensional de zeros e uns.

A evidência é transmitida entre universos de crenças através da operação de calibração. O universo de crença V calibra em relação ao universo W quando V é forçado a assumir (absorver) a informação em W, relativa às variáveis que possuem em comum.

Algoritmo: Absorção de crenças em árvores de crenças

Seja T = (C,S) uma árvore de universos de crenças. Seja V ∈ C e W1,…,Wm os vizinhos de V, com os seus respectivos separadores S1,…,Sm. O universo V absorve de W1,…,Wm (diz-se que V calibrou em relação aos seus vizinhos Wi) se as tabelas de crenças ∅V e ∅Si são mudadas para ∅’V e ∅’Si, onde:

∅’Si = ∑W\Si∅w, i = 1,…,m

∅’V = ∅V × (∅’S1/∅S1) × … × (∅’Sm/∅Sm) Definição: marginalização

Seja ∅w a tabela de crença sobre W e S ⊂ W, um sub espaço de W. A tabela ∅S é construída por marginalização, como ∅S(s)= ∑W\S∅w(w), ou seja, a soma de todos os ∅W(w) onde w é uma configuração de W coincidente com s.

A absorção preserva a crença conjunta do sistema, ao manter constante a relação entre a crença do universo que calibrou e a dos seus separadores, pois:

∅’V / (∅’S1 × … × ∅’Sm) = ∅V × (∅’S1/∅S1) × … × (∅’Sm/∅Sm) / (∅’S1 × … × ∅’Sm) ∅V / (∅S1 × … × ∅Sm)

Esta característica garante que a árvore de universos de crença continua a representar a JPD do universo U após uma sequência de absorções.

A calibração é uma operação local. Como podem existir outros cliques com a mesma variável com a mesma variável à qual a evidência se refere, é necessário propagar essa evidência. De salientar que, após uma absorção a tabela de crenças para Si é a marginal de Wi em relação a Si e V recebeu de W a informação sobre as variáveis que possuem em comum, ou seja S. Como V, W e S mantêm a mesma informação sobre S, diz-se que o arco S é consistente.

Definição: localmente e globalmente consistente

Uma árvore de universos de crença é localmente consistente, se quandoV e W são vizinhos com separador S, então ∑V\S∅V∝∅S∝∑W\S∅W. Ela é globalmente consistente se para cada V, W ∈ C, ∑V\W∅V∝∑W\V∅W ou seja, ∅V e ∅V coincidem em V ∩ W, O símbolo ∝ representa “proporcional a”. Se as tabelas de crenças são normalizadas ou uniformes (isto é, a soma dos elementos de cada tabela é constante e igual para todas elas) então este símbolo pode ser substituído pelo sinal de igualdade.

Referências

Documentos relacionados

Sabendo o resultado de multiplicações que envolvem apenas fatores menores ou iguais a 10, podemos definir um algoritmo que seja capaz de realizar qualquer multiplicação. Esse

Relatamos um caso atendido em nosso Ambulatório de Transtornos Afetivos, do Serviço de Psiquiatria da Infância e Adolescência (SEPIA) do Hospital das Clínicas da Faculdade de

Departamento de Engenharia Informática (DEI) Instituto Superior

os tratamentos na parcela foram: testemunha (nenhum tratamento pré-germinativo), imersão das sementes em água por 24 horas mantidas sob oxigenação, imersão das sementes em

Embora, não em relação a todas as competências propostas, pode-se afirmar que os fatores escolhidos no trabalho trazem diferencial entre os professores do curso de Ciências

Embora não em relação a todas as competências propostas, pode-se afirmar que os fatores escolhidos no trabalho trazem diferencial entre os professores do curso de Ciências

Os genótipos avaliados mostraram-se efectivamente tolerantes à HR elevada quer na resposta dos estomas à desidratação quer na longevidade das hastes florais durante

As informações acima não fornecem evidência para uma relação causal entre CBOF e colutórios contendo álcool, embora uma forte associação entre alcoolismo e tabagismo