• Nenhum resultado encontrado

Para ser útil, um sistema inteligente de qualquer domínio deve ser adequadamente verificado e validado. Entretanto são diversas as definições dadas para estes termos, gerando confusão na interpretação e na realização destas tarefas.

De acordo com SUEN, GROGONO e SHINGHAL (1990) os termos “verificação e

validação” (V & V) são utilizados para denotar todas as questões envolvidas em assegurar que o sistema irá realizar as tarefas para que foi desenvolvido, e complementa informando que diversos autores utilizam o termo “V & V” como se fosse um sinônimo grosseiro da palavra avaliação.

GONZALEZ e BARR(2000) apresentam definições dadas por diversos autores sobre os termos verificação e validação. Começando com a definição dada pelaIEEE(1990apud GONZALEZ; BARR,2000, tradução nossa) para validação e verificação de sistemas convencionais, conforme a seguir:

Verificação é o processo de avaliar um sistema ou componente para determinar se produtos de uma determinada fase de desenvolvimento satisfazem as condições impostas no início daquela fase.

Validação é o processo de avaliar um sistema ou componente durante ou no fim do processo de desenvolvimento a fim de determinar se ele satisfaz os requisitos especificados.

Outra definição é dada pelo DoDD (199xapud GONZALEZ; BARR, 2000, tradução

nossa) para validação e verificação de modelos de simulação:

Verificação é o processo de determinação que uma implementação de um modelo representa com precisão as descrições e especificações conceituais do desenvolvedor.

Validação é o processo de determinar o grau em que um modelo é uma representação precisa do mundo real a partir da perspectiva de uso pretendida do modelo.

As definições apresentadas se contradizem, pois esta implica que a verificação é a comparação com as especificações, enquanto que na definição da IEEE, a comparação com as especificações ocorre durante a validação. Como um sistema baseado em conhecimento não é um sistema convencional, e também é bastante diferente de um modelo de simulação, os autores passam a apresentar definições de outros autores para “V & V” especificamente no contexto de sistemas inteligentes.

Os autores começam apresentando a definição dada porO’Keefe, Balci e Smith(1987 apud GONZALEZ; BARR, 2000, tradução nossa) que é a mais citada na literatura da área:

Verificação refere-se à construção do sistema corretamente (isto é, comprovando que um sistema implementa corretamente suas especifi- cações).

Validação refere-se à construção do sistema certo (isto é, comprovando que o sistema executa com um nível aceitável de precisão).

Para os autores, apesar da definição de verificação fazer sentido, especialmente na explicação entre parênteses, a definição de validação não faz, uma vez que deixa algumas dúvidas: O que constitui um “sistema certo”? O que é precisão? Precisão em relação a que?.

Os autores apresentam diversas outras definições de “V & V” no contexto de sistemas inteligentes dadas por outros autores e finalizam apresentando a própria definição (ou descrição) para as tarefas de verificação e validação (GONZALEZ; BARR,2000, tradução nossa):

Verificação é o processo de assegurar que o sistema inteligente 1) está em conformidade com as especificações, e 2) sua base de conheci- mento é consistente e completa dentro de si.

A validação é o processo de assegurar que a saída do sistema inteli- gente é equivalente à dos especialistas humanos quando recebem as mesmas entradas.

Apesar de definirem os termos,GONZALEZ e BARR(2000) não descrevem as técnicas de verificação de um sistema baseado em conhecimento, o que, por sua vez, foi feito porSUEN, GROGONO e SHINGHAL(1990) e porO’KEEFE e O’LEARY(1993).

SegundoSUEN, GROGONO e SHINGHAL (1990), o processo de verificação trata o

sistema baseado em conhecimento com uma “caixa de vidro”, sendo necessário ter acesso, pelo menos, à base de regras e, em alguns casos, ao motor de inferências. Os autores informam ainda que a verificação pode ser feita utilizando: análise estática, em que a base de conhecimento é examinada sem executar o sistema baseado em conhecimento, a fim de analisar a consistência, integridade e correção do conhecimento;

análise dinâmica, em que o sistema baseado em conhecimento é executado para saber se o sistema está produzindo as respostas corretas e está utilizando o processo de raciocínio correto.

Os testes aplicados durante o processo de verificação incluem (SUEN; GROGONO;

SHINGHAL,1990;O’KEEFE; O’LEARY,1993):

1) Detecção de regras redundantes, quando duas ou mais regras sucedem na mesma situação e têm as mesmas conclusões.Exemplo:

• se X e Y então A,

• se Y e X então A;

2) Detecção de regras conflitantes, quando duas ou mais regras possuem o mesmo atributo antecedente, mas com conclusões contraditórias. Exemplo:

• se X então A,

• se X então não A;

3) Detecção de regras circulares, quando existe uma cadeia de raciocínio que começa com alguma condição e retorna para a mesma condição. Exemplo:

• se X então Y,

• se Y então Z,

• se Z então X;

4) Detecção de subsunção, quando duas ou mais regras possuem a mesma conclusão, mas uma possui restrições adicionais sobre as situações que terá êxito. Exemplo:

• para todo x, se P(x) então Q,

• se P(9) então Q;

5) Uso de nome ou descritor diferente para o mesmo objeto. Exemplo:

• As regras não devem mencionar tanto “a estrela da manhã” quanto “a estrela da tarde” quando o mesmo objeto (Vênus) é pretendido;

• se P então tempo necessário é -3 segundos.

Uma vez que a verificação das regras foi realizada deve-se partir para a validação do

sistema. Conforme sugerem SUEN, GROGONO e SHINGHAL(1990), o processo de

validação trata o sistema baseado em conhecimento como uma “caixa preta”. Testes são realizados a fim de verificar se o sistema baseado em conhecimento atende aos requisitos sem acessar sua estrutura interna.

Os autores descrevem como implementar o processo de validação do sistema. Segundo eles, no processo de validação o sistema baseado em conhecimento é aplicado a um conjuntos de problemas teste e suas respostas são analisadas.

Primeiramente, deve ser escolhido um conjunto de problemas teste apropriado, que deve incluir problemas que não foram usados para guiar o desenvolvimento do sistema. Posteriormente, as soluções produzidas pelo sistema baseado em conhecimento devem ser examinadas tanto pelo especialista, para assegurar que os resultados são tecnicamente aceitáveis, e pelo tipo de pessoas que eventualmente utilizará o sistema, para assegurar que os resultados são significativos para eles. Os autores propõem ainda que, sempre que possível, os resultados da validação sejam checados por métodos estatísticos padrão.

A seção a seguir descreve como foi realizado o processo de verificação e validação da base de conhecimento desenvolvida neste trabalho.

Documentos relacionados