Você está na página 1de 4

RELATÓRIO DE CR

Pessoal usem este template para elaborarem o relatorio. Escrevam o que tem a escrever no vosso
editor e depois façam copy-paste para aqui com indicação do que foi feito e por quem foi feito.
Ex.:

-------- Vitor --------

Introdução: bla bla bla bla bla...

-----------------------

-------- Ricky --------

Variáveis: bla bla bla bla bla...

-----------------------

---- clips ---

Para começar seria melhor procurar nos slides dos profs e perceber como funcionam as coisas no
corvid e no clips (variáveis, expressões, regras, etc...). Depois usar esses dados para meter no
relatório.

---------Vitor---------------

Blocos Lógicos:

Os blocos lógicos por nós implementados são como que um conjunto de expressões lógicas, daí o
nome.

Estes blocos lógicos são do tipo IF expressão OPERADOR expressão THEN Goal, sendo
que:

• Expressão (retorna TRUE ou FALSE):

o Facto (<,>,>=,<=,==,!=) valor;

• OPERADOR:

o AND;

o OR;
• Goal:

o É atribuído um valor a um facto que não faça parte de uma expressão.

Exemplo:

Criando três variáveis inicialmente, febre, tosse e gripe, um bloco lógico


correspondente a essas variáveis pode ser o seguinte:

• IF febre >= 37 AND tosse==True THEN gripe=TRUE;

Representação dos Blocos lógicos:

---------Vitor_End---------------

---------Vitor---------------

FACTOS / VARIAVEIS:

Dados a partir dos quais são criados os blocos lógicos. Têm um nome e um tipo associado. Os
tipos podem ser:

• Inteiro;

• List de Strings. Ex: sintomas = {tosse; dores de cabeça; febre};

o Cria um facto sintomas que possui os 3 sintomas acima referidos.

o Este tipo de facto serve para por exemplo criar uma expressão que
nos diga se febre está na lista de sintomas, neste caso a expressão ia
devolver TRUE, caso criássemos uma expressão para verificar se
náuseas está na lista de sintomas a expressão já devolveria FALSE.
• ****AINDA NÃO IMPLEMENTADO*** List de inteiros. Ex: febre =
{37;45};

o Cria um facto febre que pode ir de 37 até 45;

o Serve para verificar se a pessoa em questão tem febre, isto é, a


expressão febre == 40 retorna TRUE, a expressão febre == 36
retorna FALSE.

• Boolean;

o Cria um facto do tipo TRUE / FALSE;

ARQUITECTURA:

/*nao sei bem o que pretendem dizer aqui mas coloco ja para que nao esqueça*/

---------Vitor_End---------------

------------Vitor------------------

INTRODUÇÃO:

Este trabalho foi efectuado no âmbito da cadeira de Conhecimento e Raciocínio e tem como
objectivo a implementação de uma plataforma para o desenvolvimento de Sistemas Periciais. O
sistema que usámos como guia foi o Corvid.

No nosso caso, recorremos ao uso da linguagem C# e a plataforma utilizada para o efeito é


uma página Web usando para guardar os dados que estão em memória ficheiros do tipo XML.
Esses ficheiros são criados aquando da criação dos factos e dos blocos lógicos e são usados pelo
motor de inferência numa fase posterior.

MOTOR DE INFERENCIA:

Funciona como que uma “caixa negra” que recebe os dados colocados anteriormente nos
ficheiros XML e devolve uma determinada solução. Este motor funciona de duas formas de
pesquisa diferentes:

• Forward Chaining:

o Começa a disparar pelas regras existentes até encontrar o objectivo.

o ……………………….

• Backward Chaining:

o Começa com uma lista de objectivos e começa a disparar as regras que


terminam nesses objectivos.

o ……………………..

---------Vitor_End---------------

Você também pode gostar