TÓPICOS DE I.A. RACIOCÍNIO BASEADO EM CASOS Prof. Régis Albuquerque RACIOCÍNIO BASEADO EM CASOS INTRODUÇÃO O que é inteligencia artificial? para feigenbaum, IA é a parte da ciencia da computacao voltada para o desenvolvimento de sistemas de computadores inteligentes, isto é, sistemas que exibem caracteristicas, as quais associa-se com a inteligencia nos comportamento humanos - por exemplo: compreensao da linguagem, aprendizagem, raciocinio, resolucao de proclemas, etc. A inteligencia e o conhecimento o conhecimento é o que faz com que sejam possiveis o encadeamento e desenvolvimento da inteligencia. 2 RACIOCÍNIO BASEADO EM CASOS INTRODUÇÃO Representacao do Conhecimento para que o conhecimento possa ser armazenado, é essencial que se possa representa-lo grande parte de esforco em inteligencia artificial tem se concentrado em buscar ou aperfeicoar formalismos para a representacao do conhecimento. fatos: verdades em algum mundo relevante, essas sao as coisas que se quer representar representacao de fatos: com algum formalismo escolhido esses sao as coisas que efetivamente serao capazes de manipular. 3 RACIOCÍNIO BASEADO EM CASOS INTRODUÇÃO Paradigmas de representacao de conhecimento - conhecimento procedural - redes - frames - logica - arvores de decisao - conhecimento estatistico - regras - processamento paralelo distribuido - esquemas hibridos - casos: usa experiencia passada, acumulando casos e tentando descobrir, por analogia, solucao para outros problemas 4 RACIOCÍNIO BASEADO EM CASOS INTRODUÇÃO O que é o RBC? é uma ferramenta de raciocinio da inteligancia artificial. a filosofia basica desta tecnica é a de busca a solucao para uma situacao atual atraves da comparacao com uma experiencia passada semelhante. passos de um procedimento de RBC: -identificacao de um problema a ser resolvido (problema de entrada); -definicao das principais caracteristicas que identificam este problema; -busca e recuperacao na memoria de casos com caracteristicas similares; -selecao de uma ou mais dentre os casos recuperados; -revisao deste(s) caso(s) para determinar a necessidade de adaptacao; -reutilizacao do caso adaptado para resolver o problema de entrada; -avaliacao da solucao do problema de entrada; -inclusao do caso adaptado na memoria de casos (aprendizagem) 5 RACIOCÍNIO BASEADO EM CASOS INTRODUÇÃO HISTÓRICO de acordo com lagemann(1998), a origem do RBC data de 1977, devido a uma pesquisa na area da ciencia cognitiva, desenvolvida por schann e abelson. o desenvolvimento do RBC foi estimulado pelo desejo de com compreender como as pessoas conseguem recuperar recuperar informacoes e que as mesmas, frequentemente, resolvem problemas lembrando como solucionar casos similares no passado. o primeiro sistema que pode ser consideredo de RBC é o CYBER, desenvolvido por JANET KOLODNER. este sistema foi baseado no modelo de memoria dinamica de schank e na teoria dos mop's para aprendizagem e solucao de problema 6 RACIOCÍNIO BASEADO EM CASOS CONSIDERAÇÕES GERAIS Os sereres humanos são considerados grandes resolvedores de problema. Muitas vezes resolvem problemas difíceis, apesar do conhecimento limitado e incerto. Além disso, com a experiência adquirida, a performance deles melhora cada vez mais. Todas estas qualidades são desejáveis em um sistema de Inteligência Artificial para o mundo real. (LEAKE, 1996) 7 RACIOCÍNIO BASEADO EM CASOS CONSIDERAÇÕES GERAIS RAZÕES PARA SE UTILIZAR RBC: Aquisição do conhecimento Manutenção do conhecimento Eficiência crescente na resolução de problemas Qualidade crescente nas soluções Aceitação do usuário 8 RACIOCÍNIO BASEADO EM CASOS CONSIDERAÇÕES GERAIS PRINCÍPIOS DA NATUREZA DO MUNDO: Regularidade: como no mundo, na grande parte das vezes, é regular, as ações executadas nas mesmas condições tendem a ter resultados similares ou iguais. Tipicalidade: os tipos de problemas possuem a tendência de repetir. Consitência: mudanças pequenas ocorridas no mundo pedem apenas pequenas mudanças na forma de interpretá-lo. Consequentemente, exigem pequenas mudanças nas soluções de novos problemas Facilidade de adaptação: as coisas não se repetem da mesmo forma. As diferença possuem a tendência de serem pequenas, e pequenas diferenças são fáceis de serem compensadas. 9 RACIOCÍNIO BASEADO EM CASOS ETAPAS DO CICLO DE RBC Representação dos casos Indexação Recuperação Ajuste da Situação Aprendizagem 10 RACIOCÍNIO BASEADO EM CASOS ETAPAS DO CICLO DE RBC 11 RACIOCÍNIO BASEADO EM CASOS CASOS Caso: É a forma de conhecimento contextualizado representando uma experiência que ensina uma lição útil. (KOLODNER, 1993) É uma abstração de uma experiência, que deve estar escrita em termos de conteúdo e contexto. Estas experìências precisam ser organizadas em unidades bem definidas, formando a base de raciocínio ou memória de casos. Os casos representam o próprio conhecimento no sistema. (Buta, 1997). 12 RACIOCÍNIO BASEADO EM CASOS CASOS PARTES DE UM CASO (segundo Kolodner, 1993): 1 – Descrição do problema 2 – Solução do problema 3 – Resultado da aplicação Um experiência vivida a primeira vez é um caso. Nas demais vezes que for executada a mesma tarefa, é intuitivo que se use aquilo que foi aprendido na primeira vez, tornando-se uma rotina e deixando de ser um caso. 13 RACIOCÍNIO BASEADO EM CASOS REPRESENTAÇÃO DOS CASOS Um caso pode ser representado de diferentes maneiras, mas a descrição através de atributos é a forma mais usual. Algumas aplicações necessitam um conhecimento profundo do domínio do problema, utilizando-se o conhecimento do especialista. A representação dos casos é uma das mais importantes etapas do processo de desenvolvimento de um sistema de RBC (RAMSAMY, 1999) 14 RACIOCÍNIO BASEADO EM CASOS REPRESENTAÇÃO DOS CASOS Exemplo de um caso: Tentar buscar solução para um acidente de trânsito, o ponto de partida seria a identificação das causas do acidente. A modelagem poderia ser orientada tanto pelos agentes envolvidos no acidente, como pelos carros, pessoas e local. A representação dos casos é uma tarefa complexa e importantíssima para o sucesso ou o fracasso de um sistema de RBC. O grande problema é decidir o que será armazenado e econtrar a estrutura ideal para descrever o conteúdo do caso. 15 RACIOCÍNIO BASEADO EM CASOS REPRESENTAÇÃO DOS CASOS Lee (1996) diz que a representação dos casos é a representação do conhecimento. Há alguns momentos em que algum conhecimento especialista é representado em RBC, no entanto, nos casos é que está contido o conhecimento que servirá para sugerir uma solução para o problema. 16 RACIOCÍNIO BASEADO EM CASOS REPRESENTAÇÃO DOS CASOS O que deve-se guardar de um caso? Qual a estrutura apropriada para a descrição do mesmo? Como a memória de casos deve ser organizada e indexada para efetuar-se satisfatoriamente a recuperação e reutilização? 17 RACIOCÍNIO BASEADO EM CASOS MODELAGEM DOS CASOS De acordo com Lee (1996), a representação de casos se dá por uma lista de atributos valorados. As características de um determinado caso referem-se ao par atributo-valor. Componentes básicos na representação dos casos: descrição do problema e a descrição da solução. 18 RACIOCÍNIO BASEADO EM CASOS MODELAGEM DOS CASOS - PROBLEMA Descrição do Problema: é a atribuição de características que irão descrever o problema de entrada, podendo ter forma de nomes, números, funções ou textos, o que irá determinar a similaridade com outro caso. Lagemann (1998) coloca que se pode utilizar arquivos e banco de dados para armazenar informações sobre os casos. 19 RACIOCÍNIO BASEADO EM CASOS MODELAGEM DOS CASOS - SOLUÇÃO Solução nada mais é que a saída sugerida pelo sistema de RBC. A solução pode ser descrita, através da metodologia da solução, que deve descrever a forma de implementação da solução, e deve ser acompanhada do porquê da escolha dessa opção. 20 RACIOCÍNIO BASEADO EM CASOS MODELAGEM DA MEMÓRIA A memória compreende a base de casos. Modelos de memória nada mais são que estruturas de organização de casos. Tipos de memória: Memória Dinâmica Usua uma estrutura hierárquica de pacotes de organização de memória (MOP – Memory Organization Packets), ou pacotes generalizados, que irão conter caracteristicas comuns. Memória Prototípica A memória prototípica classifica um novo caso de entrada dentro de umas das categorias representadas na mesma. 21 RACIOCÍNIO BASEADO EM CASOS ORGANIZAÇÃO DOS CASOS Alguns estilos de organização de casos, como cita Lee (1996), são: memória plana, memória hierárquica, banco de dados relacional, redes semânticas, redes discriminatórias, redes de características compartilhadas e árvores de decisão. 22 RACIOCÍNIO BASEADO EM CASOS INDEXAÇÃO Os índices de um caso são tão importantes como os índices de livros em uma biblioteca. A indexação se faz necessário para que os casos possam ser recuperados, sendo que ela determina quais os atributos que devem ser comparados para se avaliar a similaridade entre o caso de entrada e o casos da base. Definição de Índices: é o processo de identificação dos descritores para um caso particular. Índices devem ser preditivos; Predições feitas devem ser úteis. Índices devem ser concretos o suficiente para serem facilmente reconhecíveis em futuras situações. 23 RACIOCÍNIO BASEADO EM CASOS RECUPERAÇÃO A recuperação é a etapa em que é disparada uma função para recuperar casos similares. Essa função pode utilizar uma métrica, métodos de classificação e requer um limite de casos que podem ser recuperados. Divisão da Recuperação: Identificação das características; Unificação inicial; Busca; Seleção. 24 RACIOCÍNIO BASEADO EM CASOS SIMILARIDADE A avaliação da similiaridade do caso a ser solucionado se faz comparando-se com os casos candidatos, sendo o que torna um caso similar a outro é a semelhança das características que irão representar o conteúdo e o contexto da experiência. 25 RACIOCÍNIO BASEADO EM CASOS ADAPTAÇÃO A adaptação pode variar da substituição de um atributo da solução por outro, ou mesmo uma complexa e total modificação da solução. Processo de adaptação: Inclusão de um novo comportamento à solução recuperada. Eliminação de um comportamento da solução recuperada. Substituição de parte de um comportamento. 26 RACIOCÍNIO BASEADO EM CASOS APRENDIZAGEM Acontece ao acumular-se novas experiências na memória do sistema de RBC e da correta indexação dos problemas. Um sistema de RBC somente será eficiente ao conseguir aprender através de experiências passadas e correta indexação dos problemas. 27 28 29 CONCLUSÃO Os Sistemas de RBC possibilitam a utilização do conhecimento especialista no apoio a decisões administrativas, devido à compatibilidade natural desses sistemas com os sistemas de banco de dados institucionais. Eles permitem a extração, organização e reuso de conhecimento utilizado para tomada de decisões no passado, tornando explícitos os métodos utilizados e permitindo o seu aperfeiçoamento. A utilização dessa técnica fica limitada apenas ao acesso às bases de dados completas, corretas e confiáveis que contenham entre as informações armazenadas, a descrição completa de problemas e das soluções que foram aplicadas em algum momento. Esta é a matéria prima inicial e básica para a construção de sistemas baseados em casos. (WIKIPEDIA) 30 EXERCÍCIO DE FIXAÇÃO: O que é IA? Na sua opinião existe inteligência sem conhecimento? O que é RBC? Quais são as etapas de um sistema de RBC? Esquematize. O que são casos e quais as partes de um caso? Com suas palavras exemplifique um caso. Defina o problema, retire caracteristícas importantes e defina a solução do problema. (Pode usar experíencias próprias). 31