PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-1 Implementação de um Mini-Sistema Especialista para Natação Especial Baseado em Regras de Produção Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro Resumo Este trabalho apresenta uma implementação de um mini-sistema especialista baseado em regras de produção, utilizando a ferramenta computacional Expert SINTA. O sistema desenvolvido estabelece uma base de conhecimento, que permite definir se uma determinada pessoa pode ou não nadar os estilos peito e golfinho na natação especial. Palavras Chave Inteligência artificial, sistemas especialistas, regras de produção, natação especial. I. INTRODUÇÃO A inteligência artificial (IA) é vista hoje como uma área da Ciência da Computação que busca estabelecer a autonomia das máquinas. Neste sentido, a IA forte simula os mecanismos cognitivos, enquanto que a IA fraca imita o comportamento. Portanto, pode-se afirmar que a IA tem como meta norteadora a inteligência, de tal forma que a maior autonomia de uma máquina é aprender. Assim, podemos escrever: IA ( Máquina) ( Inteligência) Por outro lado, com a tecnologia atual, já é possível estabelecer modelos computacionais para a inteligência humana. Nesse sentido, utilizam-se questões filosóficas, incluindo questionamentos, métodos baseados em lógicas clássicas, fatos consistentes, raciocínio monotônico, regras modus ponens e especialização, sistemas de inferência e regras situação-ação. Surgem assim, os chamados sistemas especialistas, que permitem obter soluções para problemas complexos, em termos de regras. Os sistemas especialistas construídos com base em regras de produção, permitem descrever as relações existentes entre os objetos do domínio, em uma dada aplicação, de acordo com os valores que os atributos estabelecidos pelos especialistas podem ter. Também é possível estabelecer um conhecimento incremental na base de conhecimento, através da utilização do conhecimento prático, isto é, heurístico. O método procedimental utiliza regras do tipo SE <condição> ENTÃO <ação 1> SENÃO <ação 2>, de tal forma a permitir que um interpretador computacional possa seguir instruções de controle embutidas no sistema. Note-se ainda que, um sistema típico baseado em regras, necessita de uma base de conhecimentos, uma memória de trabalho e uma máquina de inferências. A base de conhecimentos é composta por fatos (dados) e regras, que podem ser vistas como declarações sobre classes de objetos. Por sua vez, a memória de trabalho representa o estado do problema em um determinado instante, caracterizando a acumulação de dados dinâmicos que apresentam curta duração. Quanto à máquina de inferências, esta é responsável pela execução de regras, determinação das regras relevantes e a conseqüente escolha das regras apropriadas. Com relação ao ciclo de execução em sistemas deste tipo, este estabelece a seleção de regras, a resolução de conflitos e determinação das ações a serem desencadeadas. Nesse sentido, a seleção de regras pode ser estabelecida pela utilização do raciocínio para frente e/ou do raciocínio para trás. Como vantagens da utilização de sistemas de produção baseados em regras, pode-se citar a ampla expressividade, utilização de sintaxe e semântica simples, aplicabilidade em sistemas diagnósticos, codificação da experiência de especialistas na resolução de problemas e representação de heurísticas. Por outro lado, caracterizam-se como desvantagens, a necessidade de modificações na base de conhecimentos, localização das informações, a taxonomia das classes, as relações temporais, as relações estruturais e a herança de atributos. II. O EXPERT SINTA O Expert SINTA [1] [2], desenvolvido no Laboratório de Inteligência Artificial (LIA) do Departamento de Computação da Universidade Federal do Ceará (UFC), é um conjunto de ferramentas computacionais fundamentadas em técnicas de IA para geração automática de sistemas especialistas (Figura 1). Esta ferramenta computacional tem por objetivos, simplificar o trabalho de implementação de sistemas especialistas através do uso de uma máquina de inferência compartilhada, incluindo a construção automática de telas e menus e o tratamento de incertezas nas regras de produção. Além disso, a base de conhecimentos construída é facilmente manipulada, e isto é uma característica importante da ferramenta, pois o critério de qualificação não é permanente.
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-2 Figura 1 Apresentação do Expert SINTA A criação de uma base de conhecimentos para um sistema especialista no Expert SINTA, exige as seguintes etapas: definição das variáveis (atributos), elaboração de regras, desenvolvimento de textos para perguntas, definição de objetivos e definição de informações adicionais. Além disso, também é possível visualizar os resultados por meio do rastreamento da máquina de inferência, por meio de um histórico dos resultados em que uma estrutura hierárquica relaciona todos os passos seguidos na obtenção dos resultados. Isto também permite descobrir todos os valores atribuídos às variáveis presentes na base de conhecimentos. 1. Pessoas com qualquer problema de coração, mesmo nadando vagarosamente; 2. Pessoas com flacidez de musculatura na região da cintura escapular; 3. Pessoas com pouco condicionamento físico; 4. Pessoas com projeção dos ombros para frente (cifose); 5. Pessoas lesionadas em qualquer músculo da região da cintura escapular; 6. Pessoas com problemas de coordenação motora grave; - Pessoas que podem nadar os estilos peito e golfinho: 1. Pessoas que saibam nadar os estilos peito e golfinho; 2. Pessoas que estão com um condicionamento físico regular; 3. Pessoas que tenham um acompanhamento de profissional especializado na área da natação; 4. Pessoas que fizeram uma avaliação médica com fins de identificar problemas cardíacos; 5. Pessoas que fizeram uma avaliação postural com fins de identificar problemas articulares; 6. Pessoas que fizeram uma avaliação física com fins de identificar sua atual condição física; III. CONSTRUINDO UM SISTEMA ESPECIALISTA PARA NATAÇÃO ESPECIAL 3.1 Objetivo e regras fornecidas pelo especialista Objetivo: Identificar pessoas que possam nadar o estilo peito e golfinho. Regras (fornecidas pelo especialista em natação especial): - Pessoas que não podem nadar os estilos peito e golfinho: 1. Pessoas com escoliose; 2. Pessoas com hiperlordose; 3. Pessoas com problemas na articulação cervical; 4. Pessoas que não sabem nadar e irão aprender; 5. Pessoas que apresentam hérnia de disco vertebral; 6. Pessoas com flacidez de musculatura abdominal; - Pessoas que não podem nadar o estilo peito, mas podem nadar o estilo golfinho: 1. Pessoas com apenas problemas nos ligamentos colaterais da articulação dos joelhos; 2. Pessoas com problemas nos ligamentos cruzados da articulação dos joelhos; 3. Pessoas com flacidez na musculatura adutora da coxa; 4. Pessoas lesionadas na musculatura adutora da coxa; 5. Pessoas com problemas na articulação do tornozelo que não permitam que façam a dorso flexão; 6. Pessoas que tenham flutuação na articulação do quadril; - Pessoas que podem nadar o estilo peito, mas não o estilo golfinho: Figura 2 Regras para natação especial. Figura 3 Regras para quando as pessoas não podem nadar nem o estilo peito e nem o estilo golfinho.
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-3 Figura 4 Regras para quando as pessoas não podem nadar o estilo peito mas podem nadar o estilo golfinho. Figura 8 Objetivos. 3.2 Conteúdo do arquivo Base de Conhecimentos As informações listadas abaixo foram geradas no Expert SINTA versão 1.1b. SOBRE O SISTEMA ESPECIALISTA -- Nome: Natação Especial -- Autores: Glaucius; Graciela; Nelson; Veranice -- Resumo: NATAÇÃO ESPECIAL Este programa especialista permite verificar se uma determinada pessoa pode nadar os estilos peito e golfinho. Figura 5 Regras para quando as pessoas podem nadar o estilo peito mas não podem nadar o estilo golfinho. Operador de maior precedência: conjunção Fator de confiança mínimo para aceitação de regra: 50 As premissas devem ser avaliadas por completo. SOBRE OS ARQUIVOS Arquivo original: natacao_especial.bcm O sistema não possui recursos de ajuda. VARIÁVEIS Figura 6 Regras para quando as pessoas podem nadar tanto o estilo peito como o estilo golfinho. Figura 7 Visualização geral das regras. Acompanhamento profissional especializado Não possuem Possuem Avaliação Postural (identificação de problemas articulares) Física (identificação de condição física) Médica (identificação de problemas cardíacos) Condicionamento físico Baixo Alto Regular Bom
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-4 Doença Cifose (projeção dos ombros para frente) Hérnia de disco vertebral Escoliose Flutuação na articulação do quadril Hiperlordose Identificação de problemas cardíacos Nenhuma Estilo Peito Golfinho Flacidez Musculatura na região da cintura escapular Não possui flacidez Musculatura abdominal Musculatura adutora da coxa Lesões Qualquer músculo da região da cintura escapular Musculatura adutora da coxa Não possui lesões Nadar Vai aprender Sabem Não sabem Nadar estilo golfinho Não sabem Podem nadar Sabem Não podem nadar Nadar estilo peito Não sabem Podem nadar Sabem Não podem nadar Problema Coração Flutuação na articulação do quadril Ligamentos cruzados da articulação dos joelhos Articulação servical Coordenação motora grave Articulação do tornozelo que não permitam que façam a dorso flexão Ligamentos colaterais da articulação dos joelhos Não apresenta nenhum problema OBJETIVOS Nadar estilo golfinho Nadar estilo peito REGRAS Regra 1 SE Doença = Escoliose OU Doença = Hiperlordose OU Problema = Articulação servical OU Nadar = Não sabem OU Doença = Hérnia de disco vertebral OU Flacidez = Musculatura abdominal ENTÃO Nadar estilo peito = Não podem nadar CNF 100% Nadar estilo golfinho = Não podem nadar CNF 100% Regra 2 SE Problema = Ligamentos colaterais da articulação dos joelhos OU Problema = Ligamentos cruzados da articulação dos joelhos OU Flacidez = Musculatura adutora da coxa OU Condicionamento físico = Baixo OU Doença = Cifose (projeção dos ombros para frente) OU Lesões = Qualquer músculo da região da cintura escapular OU Problema = Flutuação na articulação do quadril ENTÃO Nadar estilo golfinho = Podem nadar CNF 100% Nadar estilo peito = Não podem nadar CNF 100% Regra 3 SE Doença = Identificação de problemas cardíacos OU Flacidez = Musculatura na região da cintura escapular OU Condicionamento físico = Baixo OU Doença = Cifose (projeção dos ombros para frente) OU Lesões = Qualquer músculo da região da cintura escapular OU Problema = Coordenação motora grave ENTÃO Nadar estilo peito = Podem nadar CNF 100% Nadar estilo golfinho = Não podem nadar CNF 100% Regra 4 SE Nadar = Sabem E Doença = Nenhuma E Flacidez = Não possui flacidez E Lesões = Não possui lesões E Condicionamento físico = Regular OU Condicionamento físico = Bom OU Condicionamento físico = Alto
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-5 E Acompanhamento profissional especializado = Possuem E Avaliação = Física (identificação de condição física) OU Avaliação = Médica (identificação de problemas cardíacos) OU Avaliação = Postural (identificação de problemas articulares) ENTÃO Nadar estilo peito = Podem nadar CNF 100% Nadar estilo golfinho = Podem nadar CNF 100% PERGUNTAS Variável:Avaliação Pergunta:"Foi realizada alguma avaliação médica?" Variável:Condicionamento físico Pergunta:"Como está o condicionamento físico?" Variável:Doença Pergunta:"Possui alguma doença?" Variável:Flacidez Pergunta:"Apresenta alguma tipo de flacidez?" Variável:Lesões Pergunta:"Possui alguma lesão?" Variável:Nadar Pergunta:"Já sabe nadar?" Variável:Problema Pergunta:"Possui algum problema?" Gerado com o Expert SINTA versão 1.1b (c) 1997 - Universidade Federal do Ceará Laboratório de Inteligência Artificial LIA/UFC 3.3 Códigos internos da base de conhecimento para programação As informações listadas abaixo foram geradas no Expert SINTA versão 1.1b. CÓDIGOS INTERNOS DE BASE DE CONHECIMENTO SOBRE O SISTEMA ESPECIALISTA -- Nome: Natação Especial -- Autores: Glaucius; Graciela; Nelson; Veranice -- Resumo: NATAÇÃO ESPECIAL Este programa especialista permite verificar se uma determinada pessoa pode nadar os estilos peito e golfinho. SOBRE OS ARQUIVOS Arquivo original: natacao_especial.bcm O sistema não possui recursos de ajuda. Variáveis - CÓDIGO, NOME 1, Estilo 2, Nadar 3, Problema 4, Flacidez 5, Lesões 6, Avaliação 7, Doença 8, Condicionamento físico 9, Nadar estilo golfinho 10, Nadar estilo peito 11, Acompanhamento profissional especializado Variáveis - NOME, CÓDIGO Acompanhamento profissional especializado, 11 Avaliação, 6 Condicionamento físico, 8 Doença, 7 Estilo, 1 Flacidez, 4 Lesões, 5 Nadar, 2 Nadar estilo golfinho, 9 Nadar estilo peito, 10 Problema, 3 Valores - CÓDIGO, NOME, CÓDIGO DA VARIÁVEL, POSIÇÃO 1, Peito, 1, 1 2, Golfinho, 1, 2 3, Sabem, 2, 1 4, Não sabem, 2, 2 5, Musculatura abdominal, 4, 1 6, Musculatura adutora da coxa, 4, 2 7, Articulação servical, 3, 1 8, Ligamentos colaterais da articulação dos joelhos, 3, 2 9, Ligamentos cruzados da articulação dos joelhos, 3, 3 10, Articulação do tornozelo que não permitam que façam a dorso flexão, 3, 4 11, Coração, 3, 5 12, Coordenação motora grave, 3, 6 13, Musculatura na região da cintura escapular, 4, 3 14, Musculatura adutora da coxa, 5, 1 15, Qualquer músculo da região da cintura escapular, 5, 2 16, Médica (identificação de problemas cardíacos), 6, 1 17, Postural (identificação de problemas articulares), 6, 2 18, Física (identificação de condição física), 6, 3 19, Escoliose, 7, 1 20, Hiperlordose, 7, 2 21, Hérnia de disco vertebral, 7, 3 22, Flutuação na articulação do quadril, 7, 4 23, Cifose (projeção dos ombros para frente), 7, 5 24, Regular, 8, 1 25, Baixo, 8, 2 26, Sabem, 9, 1 27, Não sabem, 9, 2 28, Sabem, 10, 1 29, Não sabem, 10, 2 30, Possuem, 11, 1 31, Não possuem, 11, 2 32, Identificação de problemas cardíacos, 7, 1 33, Podem nadar, 9, 3 34, Não podem nadar, 9, 4
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-6 35, Podem nadar, 10, 3 36, Não podem nadar, 10, 4 37, Flutuação na articulação do quadril, 3, 7 38, Bom, 8, 3 39, Alto, 8, 4 40, Nenhuma, 7, 7 41, Não possui flacidez, 4, 4 42, Não possui lesões, 5, 3 43, Vai aprender, 2, 3 44, Não apresenta nenhum problema, 3, 8 Valores - NOME, CÓDIGO, CÓDIGO DA VARIÁVEL, POSIÇÃO Alto, 39, 8, 4 Articulação do tornozelo que não permitam que façam a dorso flexão, 10, 3, 4 Articulação servical, 7, 3, 1 Baixo, 25, 8, 2 Bom, 38, 8, 3 Cifose (projeção dos ombros para frente), 23, 7, 5 Coordenação motora grave, 12, 3, 6 Coração, 11, 3, 5 Escoliose, 19, 7, 1 Flutuação na articulação do quadril, 37, 3, 7 Flutuação na articulação do quadril, 22, 7, 4 Física (identificação de condição física), 18, 6, 3 Golfinho, 2, 1, 2 Hiperlordose, 20, 7, 2 Hérnia de disco vertebral, 21, 7, 3 Identificação de problemas cardíacos, 32, 7, 1 Ligamentos colaterais da articulação dos joelhos, 8, 3, 2 Ligamentos cruzados da articulação dos joelhos, 9, 3, 3 Musculatura abdominal, 5, 4, 1 Musculatura adutora da coxa, 14, 5, 1 Musculatura adutora da coxa, 6, 4, 2 Musculatura na região da cintura escapular, 13, 4, 3 Médica (identificação de problemas cardíacos), 16, 6, 1 Nenhuma, 40, 7, 7 Não apresenta nenhum problema, 44, 3, 8 Não podem nadar, 34, 9, 4 Não podem nadar, 36, 10, 4 Não possuem, 31, 11, 2 Não possui flacidez, 41, 4, 4 Não possui lesões, 42, 5, 3 Não sabem, 27, 9, 2 Não sabem, 29, 10, 2 Não sabem, 4, 2, 2 Peito, 1, 1, 1 Podem nadar, 33, 9, 3 Podem nadar, 35, 10, 3 Possuem, 30, 11, 1 Postural (identificação de problemas articulares), 17, 6, 2 Qualquer músculo da região da cintura escapular, 15, 5, 2 Regular, 24, 8, 1 Sabem, 3, 2, 1 Sabem, 26, 9, 1 Sabem, 28, 10, 1 Vai aprender, 43, 2, 3 Valores - CÓDIGO DA VARIÁVEL, CÓDIGO, NOME, POSIÇÃO 1, 1, Peito, 1 1, 2, Golfinho, 2 2, 43, Vai aprender, 3 2, 3, Sabem, 1 2, 4, Não sabem, 2 3, 11, Coração, 5 3, 37, Flutuação na articulação do quadril, 7 3, 9, Ligamentos cruzados da articulação dos joelhos, 3 3, 7, Articulação servical, 1 3, 12, Coordenação motora grave, 6 3, 10, Articulação do tornozelo que não permitam que façam a dorso flexão, 4 3, 8, Ligamentos colaterais da articulação dos joelhos, 2 3, 44, Não apresenta nenhum problema, 8 4, 13, Musculatura na região da cintura escapular, 3 4, 41, Não possui flacidez, 4 4, 5, Musculatura abdominal, 1 4, 6, Musculatura adutora da coxa, 2 5, 15, Qualquer músculo da região da cintura escapular, 2 5, 14, Musculatura adutora da coxa, 1 5, 42, Não possui lesões, 3 6, 17, Postural (identificação de problemas articulares), 2 6, 18, Física (identificação de condição física), 3 6, 16, Médica (identificação de problemas cardíacos), 1 7, 23, Cifose (projeção dos ombros para frente), 5 7, 21, Hérnia de disco vertebral, 3 7, 19, Escoliose, 1 7, 22, Flutuação na articulação do quadril, 4 7, 20, Hiperlordose, 2 7, 32, Identificação de problemas cardíacos, 1 7, 40, Nenhuma, 7 8, 25, Baixo, 2 8, 39, Alto, 4 8, 24, Regular, 1 8, 38, Bom, 3 9, 27, Não sabem, 2 9, 33, Podem nadar, 3 9, 26, Sabem, 1 9, 34, Não podem nadar, 4 10, 29, Não sabem, 2 10, 35, Podem nadar, 3 10, 28, Sabem, 1 10, 36, Não podem nadar, 4 11, 31, Não possuem, 2 11, 30, Possuem, 1 Regras - POSIÇÃO, NOME, CÓDIGO 1, Não podem nadar nem estilo peito e nem estilo golfinho, 1 2, Não podem nadar estilo peito, mas podem nadar estilo golfinho, 2 3, Podem nadar o estilo peito, mas não podem nadar o estilo golfinho, 3 4, Podem nadar o estilo peito e golfinho, 4 Regras - CÓDIGO, NOME, POSIÇÃO
PGIE/UFRGS - PIE00016 - Trabalho 1 Glaucius D. Duarte, Graciela C. B. Lima, Nelson Prugner, Veranice Dalmoro- 20/5/2004-7 1, Não podem nadar nem estilo peito e nem estilo golfinho, 1 2, Não podem nadar estilo peito, mas podem nadar estilo golfinho, 2 3, Podem nadar o estilo peito, mas não podem nadar o estilo golfinho, 3 4, Podem nadar o estilo peito e golfinho, 4 Regras - NOME, CÓDIGO, POSIÇÃO Figura 11 Resultados para os estilos golfinho e peito. Não podem nadar estilo peito, mas podem nadar estilo golfinho, 2, 2 Não podem nadar nem estilo peito e nem estilo golfinho, 1, 1 Podem nadar o estilo peito e golfinho, 4, 4 Podem nadar o estilo peito, mas não podem nadar o estilo golfinho, 3, 3 IV. CONCLUSÕES Este trabalho teve por objetivo mostrar como se pode gerar um sistema especialista, baseado em regras de produção, utilizando a ferramenta computacional Expert SINTA. A seguir, encontram-se os resultados obtidos em um dos testes realizados com o sistema especialista obtido. Figura 12 Todos os resultados. O Expert SINTA mostrou ser uma ferramenta eficaz para a geração de uma base de conhecimento para a construção de um sistema especialista. A interação com o sistema é fácil, permitindo que um usuário com pouca experiência na construção de sistemas especialistas possa rapidamente obter os resultados desejados. A ferramenta também mostrou-se adequada para a geração de relatórios e visualização das regras, variáveis e objetivos inseridos, o que facilita a documentação da implementação. Figura 9 Árvore de pesquisa para o nado golfinho. REFERÊNCIAS [1] Bezerra, R. Site do projeto Expert SINTA. Laboratório de Inteligência Artificial / LIA, Departamento de Computação da Universidade Federal do Ceará (UFC). 1998. Disponível na web em <http://www.lia.ufc.br/ ~bezerra/exsinta/>. [2] Nogueira, J.H. M.; Silva, R. B. A; Alcântara, J. F. L. e Andrade, R. C. Expert SINTA: Uma ferramenta visual geradora de sistemas especialistas. 1998. Figura 10 Árvore de pesquisa para o nado peito.