UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO"

Transcrição

1 UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO SISTEMA DE RACIOCÍNIO BASEADO EM CASOS PARA IDENTIFICAÇÃO DE CETÁCEOS Área de Inteligência Artificial Eder de Bittencourt Itajaí (SC), Novembro de 2003.

2 UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS, DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO RELATÓRIO DO TRABALHO DE CONCLUSÃO DE CURSO II SISTEMA DE RACIOCÍNIO BASEADO EM CASOS PARA IDENTIFICAÇÃO DE CETÁCEOS Área de Inteligência Artificial Eder de Bittencourt Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Itajaí (SC), Novembro de 2003.

3 EQUIPE TÉCNICA Acadêmico Eder de Bittencourt Professor Orientador Anita Maria da Rocha Fernandes, Dra. Professor Co-orientador André Barreto, Dr. Coordenadores dos Trabalhos de Conclusão de Curso Anita Maria da Rocha Fernandes, Dra. César Albenes Zeferino, Dr. Coordenador de Curso Luís Carlos Martins i

4 DEDICATÓRIA Dedico este trabalho, a minha família, em especial aos meus pais, Gilcélio e Cilda que estão sempre do meu lado apoiando e incentivando. ii

5 AGRADECIMENTOS À Deus por ter dado a oportunidade de estar realizando este trabalho. Aos meus pais pelo carinho e dedicação que tem comigo, que me dão força e motivação para alcançar meus objetivos. À minha orientadora Anita, pelo apoio e dedicação que teve durante este trabalho e pela excelente profissional e pessoa que é. Ao meu co-orientador André, por estar sempre disposto a ajudar e a passar seus conhecimentos. Aos meus irmãos Elcio e Eliane que sempre acreditaram em mim e estiveram sempre do meu lado. À minha namorada Elaine, por estar sempre do meu lado, dando apoio e motivação. À todos que me ajudaram na conclusão deste trabalho. iii

6 SUMÁRIO LISTA DE ABREVIATURAS E SIGLAS... vii LISTA DE FIGURAS... viii LISTA DE TABELAS... ix RESUMO... x ABSTRACT... xi I INTRODUÇÃO APRESENTAÇÃO JUSTIFICATIVA IMPORTÂNCIA DO TRABALHO OBJETIVOS DO TRABALHO Objetivo Geral Objetivos Específicos METODOLOGIA... 3 II REVISÃO BIBLIOGRÁFICA CETÁCEOS Avistagem Principais Espécies Características Utilizadas para Identificar as Espécies no Sistema RACIOCÍNIO BASEADO EM CASOS Casos e Base de Casos Avaliação de Similaridade Métrica de Similaridade Matching e Ranking Match Global.. 16 iv

7 Match Local Match Absoluto e Relativo Indexação Recuperação Algoritmo do Vizinho Mais Próximo Algoritmo de Indução Método ID Método de Contagem de Característica Flat Memory, Serial Search Shared Feature Networks (SFN) Adaptação Aprendizagem de um Sistema de RBC Vantagens de um Sistema de Raciocínio Baseado em Casos III DESENVOLVIMENTO INTRODUÇÃO ESTUDO DAS VARIÁVEIS ESTUDO DAS MÉTRICAS MODELAGEM DO SISTEMA Diagrama de Use Cases Diagramas de Seqüência Diagrama de Classes IMPLEMENTAÇÃO DO ALGORITMO DE RBC INTERFACE DO SISTEMA Login no Sistema Página Principal Cadastro de Pesquisadores Exclusão de Pesquisador v

8 6.5 Cadastro de Espécie Pesquisa na Biblioteca de Cetáceos Cálculo de Similaridade Relatórios Sair do Sistema FORMAS DE ACESSO Acesso em Alto Mar Acesso em Terra III CONCLUSÕES BIBLIOGRAFIA ANEXO vi

9 LISTA DE ABREVIATURAS E SIGLAS LCA MOPs PHP RBC SFN UML Laboratório de Computação Aplicada Memory Organization Pockets Hypertext Preprocessor Raciocínio Baseado em Casos Shared Feature Networks Unified Modeling Language vii

10 LISTA DE FIGURAS Figura 1 O Ciclo do RBC...12 Figura 2 Árvore de Classificação para Probabilidade de Erro de um Módulo de Software Figura 3 Composição do Sistema...30 Figura 4 Diagrama de Use Cases Figura 5 Diagrama de Seqüência do Calculo de Similaridade...33 Figura 6 Diagrama de Seqüência da Pesquisa na Biblioteca de Cetáceos Figura 7 Diagrama de Seqüência do Cadastro de Espécies na Biblioteca Figura 8 Diagrama de Classes...35 Figura 9 Página de Acesso ao Sistema de Identificação de Cetácoes...38 Figura 10 Página Principal do Sistema de Identificação de Cetáceos...39 Figura 11 Página de Cadastro de Pesquisadores Figura 12 Página de Confirmação de Inclusão de Pesquisador Figura 13 Página de Exclusão de Pesquisador...42 Figura 14 Página de Cadastro de Espécies...43 Figura 15 Página de Confirmação de Inclusão de Espécies...44 Figura 18 Página de Cálculo de Similaridade Figura 19 - Espécies Recuperadas no Cálculo de Similaridade...48 Figura 20 Página de Relatórios de Avistagens...49 Figura 21 Relatório de Avistagens...50 Figura 22 Uso do Sistema de Identificação de Cetáceos no Mar...51 Figura 23 Planilha para Coleta de Informações sobre Observação de Cetáceos Figura 24 Uso do Sistema de Identificação de Cetáceos em Terra...53 viii

11 LISTA DE TABELAS Tabela 1 - Espécies de Cetáceos que Ocorrem no Brasil...6 Tabela 2 Características dos Cetáceos Utilizadas para o Reconhecimento das Espécies....9 Tabela 3 Exemplo de Atributos em um Banco de Casos Tabela 4 Peso das Características...37 ix

12 RESUMO Este documento apresenta o projeto do Sistema de Identificação de Cetáceos, onde o objetivo é facilitar e aumentar o grau de confiança na identificação das espécies de Cetáceos avistadas pelos pesquisadores de cetáceos no Brasil. Este sistema funciona on-line e utiliza a técnica de Raciocínio Baseado em Casos da Inteligência Artificial para complementar a forma de identificação atual, que é feita através de pesquisas em livros sobre o assunto ou através do conhecimento dos próprios pesquisadores e por não existir nenhum sistema computacional conhecido no Brasil que faça a identificação de cetáceos, é o primeiro no gênero e um dos poucos sistemas em Raciocínio Baseado em Casos voltados para a área ambiental. O Sistema de Identificação de Cetáceos identifica as espécies de cetáceos avistadas pelos pesquisadores, incentivando e ajudando os pesquisadores a obter conhecimento sobre os Cetáceos. Este sistema foi desenvolvido através das ferramentas PHP e Oracle, podendo ser acessado via internet de forma rápida e fácil. x

13 ABSTRACT This document presents the development of a Cetaceaus Identification System, which goal is to improve the confiance degree in Cetaceaus species identification by the researchers in Brazil. This system is on-line and uses Artificial Intelligence technique called Case Based Reasoning to substitute the actual identification process, that is done using books research about the content or using the researches own knowledge. And because of in Brazil there isn t a system like that, it is the first system to identify Cetaceaus, and one of the few that uses Case Based Reasoning to environmental management. This System helps the researches to gain knowledge about Cetaceous and so, preserve them animals. It was developed using the tools PHP and Oracle and can be accessed in a fast and easy way by Internet. xi

14 I INTRODUÇÃO 1. APRESENTAÇÃO Usando a técnica de Inteligência Artificial denominada Raciocínio Baseado em Casos foi desenvolvido um sistema para identificação de espécies de cetáceos avistadas por pesquisadores no mar. Neste sistema o usuário informa algumas características pré-definidas do animal avistado e tem como resultado a mais provável espécie a que pertence o animal avistado. Este trabalho tem o objetivo de auxiliar na pesquisa de cetáceos, desenvolvida pelos pesquisadores do curso de Oceanografia da Univali. Os cetáceos são mamíferos marinhos que possuem sangue quente e respiram ar atmosférico agrupando principalmente botos, baleias e golfinhos. 2. JUSTIFICATIVA Não existem ferramentas para implementação de Raciocínio Baseado em Casos (RBC) desenvolvidas no Brasil. A implementação de um sistema baseado em RBC sem o uso de uma ferramenta é trabalhosa, portanto a compra de um sistema deste para o curso de oceanografia se tornaria muito cara. O sistema de RBC para identificação de cetáceos foi desenvolvido utilizando os mesmos padrões utilizados pela equipe do Laboratório de Computação Aplicada do CTTMar LCA, Oracle e PHP (LCA, 2003). Esta equipe compõe-se de pesquisadores da Univali das áreas de engenharia ambiental, oceanografia e ciência da computação que possui sistemas utilizados pelos professores do curso de oceanografia. A utilização dos mesmos padrões facilitará a integração e a troca de informações deste sistema com os sistemas que estão sendo desenvolvidos no LCA.

15 2 3. IMPORTÂNCIA DO TRABALHO Não existe nenhum sistema computacional conhecido que faça a identificação de cetáceos no Brasil e segundo pesquisas que realizei existem poucos sistemas em RBC voltados para a área ambiental. A identificação das espécies dos cetáceos observados pelos alunos do curso de oceanografia, atualmente é feita pelos professores e pesquisadores através de seus conhecimentos sobre as espécies e através de pesquisas em livros. Por se tratar de muitas espécies similares, a identificação torna-se pouco confiável e trabalhosa. Sendo assim, o uso de um sistema que auxilie na identificação das espécies de cetáceos facilita o trabalho dos professores e aumenta a confiabilidade dos resultados obtidos. 4. OBJETIVOS DO TRABALHO 4.1 Objetivo Geral Desenvolver um sistema usando a técnica de RBC para o reconhecimento das espécies de cetáceos avistadas no litoral brasileiro. 4.2 Objetivos Específicos Avaliar o método de identificação em uso atualmente e buscar as informações necessárias para a confecção do sistema. Identificar as principais variáveis que vão compor o sistema e a importância de cada uma para a identificação da espécie. Escolher um método de avaliação de similaridade a ser usado no sistema. Fazer a análise e projeto do sistema. Desenvolver o sistema. Confirmar o funcionamento do sistema.

16 3 5. METODOLOGIA Através de reuniões com o co-orientador, que é um professor do curso de oceanografia, e livros sobre cetáceos foi analisado o problema e identificadas as principais variáveis que fazem parte do sistema. Analisando as características de algumas métricas de similaridade foi identificada a métrica que mais se adaptou às variáveis do sistema. Usando uma ferramenta de análise e projeto de sistema foi feita a especificação do sistema desenvolvido. A implementação foi feita utilizando banco de dados Oracle e a ferramenta PHP para interface. A confirmação do funcionamento do sistema foi realizada através da retirada de informações de fotos de cetáceos, verificando se o nome da espécie fornecido pelo Sistema de Identificação de Cetáceos estava de acordo com o animal exposto na foto.

17 II REVISÃO BIBLIOGRÁFICA 1. CETÁCEOS Os cetáceos são mamíferos marinhos que possuem sangue quente e respiram ar atmosférico por meio de pulmões, vindo à superfície em intervalos regulares para realizar a respiração (REIS, 2000). Esses animais habitam todos os oceanos, mares e poucos habitam rios. Possuem corpo hidrodinâmico facilitando a natação. Eles se alimentam de peixes, lulas e pequenos crustáceos (REIS, 2003). A ordem Cetacea agrupa as baleias, botos e golfinhos, mamíferos exclusivamente aquáticos. As baleias, os botos e os golfinhos sempre despertaram o interesse e a imaginação das pessoas, devido a sua inteligência e amabilidade. Há milhares de anos a ciência tenta desvendar os mistérios que os envolvem, porém até hoje a ciência ainda está na fase inicial do conhecimento sobre esses animais (HETZEL e LODI, 1993). Durante grande parte da história os cetáceos foram encarados como fonte de recursos naturais, produtos valiosos para o conforto e progresso para as pessoas (HETZEL e LODI, 1993). No Brasil todos os botos e golfinhos estão protegidos desde 1986 e as baleias desde 1987, sendo proibida a caça destes animais em águas brasileiras. Para tornar a proteção aos cetáceos realmente efetiva é necessário incentivar a pesquisa das espécies que aqui ocorrem e levar ao conhecimento do público em geral (HETZEL e LODI, 1993). Pouca gente sabe que as águas da costa brasileira (com cerca de 7.400km de extensão) são freqüentadas por muitas espécies de baleias, botos e golfinhos, com total de 39 espécies confirmadas e mais de uma dezena de possíveis ocorrências (IBAMA, 2001). Embora a pesquisa brasileira venha crescendo muito e as publicações sobre o assunto se multiplicando, ainda há muito que descobrir. A cada dia descobre-se espécies em áreas onde nunca haviam sido encontradas, que sua biologia, fisiologia e comportamento são muito mais complexos que se imaginava, ou ainda que sua sobrevivência pode estar ameaçada por atividades humanas (HETZEL e LODI, 1993).

18 5 Segundo Reis (2003) as principais ameaças aos cetáceos são: Caça comercial de baleias e pequenos cetáceos; Interação com atividades pesqueiras; Degradação do ambiente marinho pelo rápido crescimento das áreas costeiras; Super exploração dos estoques pesqueiros, diminuindo o suprimento de alimentos; Efluentes industriais carregando seus produtos químicos; Aumento do número de embarcações, resultando na mortandade de cetáceos devido às colisões. 1.1 Avistagem A avistagem consiste na observação de um cetáceo ou de um grupo de cetáceos no mar. Entre os vários fatores que devem ser observados em uma avistagem os mais importantes são: espécie, número de indivíduos, presença ou não de filhotes, condições ambientais (como tempo, estado do mar, maré, visibilidade, velocidade e direção do vento), associação com outros animais e descrição do comportamento dos cetáceos (HETZEL e LODI, 1993). A avistagem geralmente é feita por pesquisadores que realizam cruzeiros com o objetivo de coletar informações e ocorrências de cetáceos. Para realizar a avistagem durante estes cruzeiros, geralmente duas pessoas permanecem na proa ou em um ponto alto da embarcação, durante todo tempo possível, à procura de algum sinal da presença de cetáceos. Cada observador é responsável por um ângulo de visão de 90 o para os lados da embarcação. Este procedimento é conhecido como esforço dedicado de observação. A avistagem também pode ser feita por uma pessoa leiga que tenha interesse em colaborar com a pesquisa. Neste caso, a pessoa geralmente leva consigo um guia de identificação. 1.2 Principais Espécies A Tabela 1 descreve, segundo Hetzel e Lodi (1993) as espécies que ocorrem no Brasil e suas características.

19 6 Tabela 1 - Espécies de Cetáceos que Ocorrem no Brasil. ESPÉCIE Baleia-franca-do-sul (Eubalaena Australis) Baleia-azul (Balaenoptera musculus) Baleia-fin (Balaenoptera physalus) Baleia-sei (Balaenoptera borealis) Baleia-de-bryde (Balaenoptera edeni) Baleia-minke (Balaenoptera acutorostrata) Baleia-jubarte (Megaptera novaeangliae) Cachalote (Physeter macrocephalus) Cachalote-pigmeu (Kogia breviceps) Cachalote-anão (Kogia simus) Baleia-bicuda-de-cabeça-plana-do-sul (Hyperoodon planifrons) Baleia-bicuda-de-cuvier (Ziphius cavirostris) Baleia-bicuda-de-gray (Mesoplodon densirostris) Baleia-bicuda-de-blainville (Mesoplodon densirostris) Orca PRINCIPAIS CARACTERÍSTICAS Não possui nadadeira dorsal nem pregas ventrais, sua boca é grande e arqueada, apresenta calosidades na cabeça. Corpo comprido e esguio, cabeça chata e pontiaguda, pode atingir 30m de comprimento, coloração cinza-azulado. Cabeça em formato de V quando vista de cima, pode medir mais de 26m, corpo esguio e hidrodinâmico. Coloração cinza-escuro ou preta, possui uma quilha central sobre a cabeça, pode atingir 20m de comprimento. Coloração cinza-escuro, possui três proeminentes quilhas sobre a cabeça, corpo esguio, cabeça larga e plana. Cabeça estreita e pontiaguda, dorso preto ou cinza-escuro, região da barriga branca, nadadeira dorsal alta e falcada. Cabeça coberta de pequenas calosidades, cabeça arredondada, pode medir até 16m de comprimento. Cabeça grande e retangular, coloração escura, pele enrugada, pode atingir 18m de comprimento. Corpo pequeno e robusto e cabeça quadrangular pequena, nadadeira dorsal pequena, coloração do dorso cinzaescuro-azulado. Corpo pequeno e robusto, nadadeira dorsal alta e falcada, possui pequenos sulcos irregulares na região da garganta. Corpo robusto, parte frontal da cabeça plana, nadadeira dorsal falcada, coloração entre o marrom e o cinza. Cabeça relativamente pequena, corpo longo e robusto, coloração varia de indivíduo para indivíduo. Possui bico longo e fino, cabeça pequena, corpo alongado, nadadeira dorsal pequena, coloração do dorso escura. Cabeça pequena, coloração do dorso escura e região ventral mais clara, nadadeira dorsal triangular. Cabeça bastante arredondada em forma de cone, nadadeira

20 7 (Orcinus orca) Falsa-orca (Pseudorca crassidens) Baleia-piloto-de-peitorais-longas (Globicephala melas) Baleia-piloto-de-peitorais-curtas (Globicephala macrorhynchus) Golfinho-cabeça-de-melão (Peponocephala electra) Golfinho-de-risso (Grampus griseus) Golfinho-flíper (Tursiops truncatus) Boto-cinza (Sotalia fluviatilis) Golfinho-de-dentes-rugosos (Steno bredanensis) Golfinho-rotador (Stenella longirostris) Golfinho-clímene (Stenella clymene) Golfinho-pintado-do-atlântico (Stenella frontalis) Golfinho-pintado-pantropical (Stenella attenuata) Golfinho-listrado (Stenella coeruleoalba) Golfinho-comum (Delphinus delphis) Boto-de-burmeister (Phocoena spinipinnis) dorsal alta e larga, coloração preto e branco. Corpo longo e delgado, quase totalmente preta, cabeça pequena, nadadeira dorsal alta e falcada. Cabeça em formato de globo, coloração basicamente preta, nadadeira dorsal baixa e falcada, nadadeira peitoral longa. Cabeça em formato de globo, corpo longo e esguio, coloração basicamente preta, nadadeira peitoral curta. Corpo alongado, coloração escura, nadadeira dorsal alta e falcada, cabeça tem forma similar a um melão. Cabeça tem formato de globo, não possui bico definido, corpo robusto, coloração varia de acordo com sua idade. Possui cabeça e corpo robusto, nadadeira dorsal alta e falcada, coloração dorsal varia entre cinza-claro a escuro. Coloração dorsal geralmente cinza, nadadeira dorsal tem forma triangular, corpo robusto, nadadeiras grandes. Cabeça em forma de cone, corpo robusto e alongado, nadadeira dorsal alta, olhos relativamente grandes. Bico longo e fino, corpo alongado, barriga branca, faixa intermediária cinza-claro e manto dorsal cinza-escuro. Corpo robusto, nadadeiras pequenas, barriga branca, faixa intermediária cinza-claro, manto dorsal cinza-escuro. Possui pintas pelo corpo, bico longo e fino, coloração cinza-clara, nadadeiras pontudas. Possui pintas pelo corpo, corpo alongado, bico longo e fino, coloração cinza claro, nadadeira dorsal alta. Possui listras pretas ao longo do corpo, manto dorsal escuro, nadadeira dorsal alta e falcada, bico médio e preto. Bico longo e fino, nadadeiras, bico e o manto dorsal são cinza-escuro ou preto, a região ventral e os lados do corpo são claros, nadadeira dorsal alta. Corpo pequeno e robusto, coloração escura e homogênea, cabeça pequena e arredondada, nadadeira dorsal triangular.

21 8 Franciscana (Pontoporia blainvillei) Boto-cor-de-rosa (Inia geoffrensis) Bico extremamente longo e fino, corpo pequeno e robusto, nadadeira dorsal baixa e triangular. Possui bico longo, olhos pequenos, corpo alongado, coloração rosada, pequenos pelos na parte superior do bico. Fonte: Hetzel e Lodi (1993). Segundo estas mesmas autoras também podem ocorrer outras espécies de cetáceos no Brasil, tais como: Baleia-franca-pigméia, Baleia-bicuda-de-arnoux, Balei-bicuda-de-shepherd, Baleiabicuda-de-gervais, Baleia-bicuda-de-layard, Baleia-bicuda-de-hector, Baleia-bicuda-de-true, Orcapigméia, Golfinho-de-fraser. Devido à existência de muitas espécies de cetáceos que ocorrem no litoral brasileiro, e devida suas características serem muito similares, a identificação das espécies avistadas se torna difícil e o grau de certeza na identificação de uma espécie, principalmente se esta espécie for avistada por uma pessoa com pouca experiência no assunto, muitas vezes é pequeno. O uso de um sistema de raciocínio baseado em casos para a identificação das espécies facilita o trabalho dos pesquisadores e aumenta o grau de certeza na identificação de uma espécie avistada. 1.3 Características Utilizadas para Identificar as Espécies no Sistema Para identificar a espécie mais provável que foi avistada, o sistema de RBC proposto baseou-se em algumas características dos cetáceos que podem ser observadas durante uma avistagem. Essas características são campos do banco de dados, sendo utilizadas como variáveis durante a identificação da espécie. O Anexo I descreve todas as espécies que ocorrem no Brasil e suas características, podendo ser consultado para obter maiores informações sobre cetáceos. As características que foram utilizadas para o reconhecimento das espécies de cetáceos são apresentadas na Tabela 2.

22 9 Tabela 2 Características dos Cetáceos Utilizadas para o Reconhecimento das Espécies. CARACTERÍSTICAS Tamanho Aproximado Cor Dorsal Cor Ventral Coloração Nadadeira Dorsal Bico Respiradouros Verrugas Nadadeira Peitoral Cristas na Cabeça Tamanho do Grupo Local da Avistagem Formato da Cabeça Sulcos Ventrais DESCRIÇÃO Tamanho aproximado do cetáceo. Será informado em metros, onde serão criadas categorias com intervalos de um metro até 15m e uma categoria para animais com mais de 15m. Cor da parte dorsal do cetáceo, ou seja, cor da parte superior do corpo do cetáceo. Cor da parte ventral do cetáceo, ou seja, cor da parte inferior do corpo do cetáceo. Será informado se o cetáceo possui manchas, pintas, riscos ou listras no corpo. Nadadeira localizada na parte superior do corpo do animal. Será informado o tamanho, a forma e a posição no corpo do animal. Será informado se o cetáceo possui bico, havendo três alternativas: sem bico, bico curto, bico longo. Número de respiradouros que o cetáceo possui, podendo ter um ou dois respiradouros. Identificará a presença de verrugas na cabeça do animal ou não. Nadadeira localizada no peito do cetáceo. Será informado o tamanho da nadadeira, podendo ser grande ou pequena. Identificará a presença de cristas na cabeça do cetáceo, podendo ter uma crista, três cristas ou nenhuma crista. Número de animais encontrados no grupo durante a avistagem. Local onde o cetáceo foi avistado podendo ser em área costeira ou em mar aberto. Formato da cabeça do animal. Podendo ser afunilado ou arredondado. Indica a presença ou não de sulcos na parte ventral do animal.

23 10 2. RACIOCÍNIO BASEADO EM CASOS A origem do Raciocínio Baseado em Casos (RBC) é encontrada nos estudos de Roger Schank sobre a compreensão da linguagem. Seus estudos afirmam que a linguagem é um processo baseado em memória, e em cada experiência do ser humano sua memória passa a se ajustar em resposta a essas experiências, dessa forma o aprendizado depende dessas alterações na memória (WANGENHEIM, 2003). A aprendizagem segundo Schank ocorre quando existe uma diferença entre o que a pessoa esperava que acontecesse e o que realmente acontecia, então baseando-se nesse raciocínio ele criou a teoria da memória dinâmica. Seus estudos em memória dinâmica permitiram a criação de uma arquitetura para a construção desse tipo de raciocínio em um computador (SILVA, COSTA e MEDEIROS, 2002). O primeiro sistema que pode ser considerado um RBC foi o CYRUS, desenvolvido por Janet Kolodner e foi baseado no modelo de alocação dinâmica de Schank e na teoria dos MOPs (pacotes de organização de memória) para aprendizagem e solução de problemas. Trata-se de um sistema de perguntas e respostas com o conhecimento de várias viagens e reuniões de Cyrus Vance, Secretário de Estado dos Estados Unidos da América (WANGENHEIM, 2003). Raciocínio Baseado em Casos é uma técnica de Inteligência Artificial que é capaz de modular o conhecimento do especialista, e evita a perda de informações intrínsecas em sistemas baseados em regras. Os casos podem representar exceções as regras e através de índices pode haver regras de validação ou contradição, fornecendo assim, informações para tomar decisões (WANGENHEIM, 2003). Raciocínio Baseado em Casos é uma técnica de Inteligência Artificial que tem origem em estudos de aspectos relacionados ao aprendizado humano. Um sistema de RBC funciona de forma similar a atividade humana de utilizar experiências armazenadas na memória para resolver novos problemas, identificando afinidades entre as mesmas (LEE, 1998). O ato de relembrar um episódio anterior é simulado em um sistema de RBC, comparando um novo problema com um conjunto de casos do mesmo tipo. Este conjunto é chamado de Base de

24 11 Casos. A comparação é feita através da avaliação de similaridade entre o novo episódio com os já existentes na base de casos. Os casos mais similares são recuperados e uma fase de seleção determina qual o mais útil (LEE, 1998). Raciocínio Baseado em Casos significa adaptar soluções antigas a problemas novos, sendo uma técnica apropriada quando existe um histórico bem documentado de casos resolvidos (CARDOSO, 2003). Segundo Cardoso (2003) um sistema de RBC pode envolver: Utilização de casos passados para resolver novas situações; Adaptação de soluções antigas para resolver novas situações; Utilização de casos passados para criticar novas soluções; Raciocínio sobre casos passados para interpretar novas soluções; Criação de soluções eqüitativas para novos problemas. Segundo Lee (1998) os sistemas de RBC podem ser divididos em sistemas interpretativos ou sistemas de solução de problema sendo diferenciados a partir das tarefas e metas de cada sistema. Os sistemas de RBC interpretativos usam casos passados como referência para classificar e caracterizar os novos casos; enquanto que nos sistemas de solução de problema, os casos são reutilizados para prover soluções para o novo problema. Com relação às metas, os sistemas interpretativos procuram a interpretação do novo caso enquanto que resolver o novo problema é o objetivo dos sistemas de solução de problema. Esta diferenciação indica, por exemplo, que uma etapa de adaptação é bem mais necessária para os sistemas de solução de problema do que para sistemas interpretativos (LEE, 1998). As quatro principais etapas no desenvolvimento de um RBC, segundo Lee (1998) são: recuperar, reutilizar, revisar e reter, conforme mostra a Figura 1.

25 12 Figura 1 O Ciclo do RBC Fonte: Lee (1998) Recuperar: é o processo onde ocorre o retorno de um ou mais casos em resultado a comparação do novo caso com os casos já existentes na base de casos. Esta comparação é feita através de uma avaliação de similaridade. O resultado desta comparação é a seleção de um caso (ou uma combinação de casos) que sugere uma solução ao caso alvo. Reutilizar: é a etapa de aproveitamento do conteúdo existente no caso recuperado a fim de solucionar o novo problema. Revisar: é a avaliação da solução proposta. Reter: é a inclusão desta nova experiência na base de casos, representando um mecanismo de aprendizagem. Este é o processo de incorporar aquilo que é útil de reter do problema resolvido. Segundo Wangenheim (2003), a utilização de Raciocínio Baseado em Casos envolve quatro etapas que devem ser observadas: Construir modelos que representem de forma satisfatória a abstração dos problemas e objetos envolvidos; Selecionar um problema ou objeto conhecido a fim de ser comparado a um desconhecido; Mapear os atributos do problema ou objeto conhecido com o desconhecido; Entender o mapeamento com objetivo de gerar uma solução que seja considerada válida para ser aplicada ao desconhecido.

26 13 Assim, quando encontra-se um problema (novo caso), deve-se descrevê-lo com uma coleção de atributos e indexá-lo em uma estrutura apropriada da memória, por suas características que o diferencia de outros casos na mesma estrutura da memória. 2.1 Casos e Base de Casos Um caso é uma descrição completa de um problema do domínio com a solução aplicada, mais uma avaliação da eficácia desta solução. É descrito através da enumeração e qualificação de atributos e valores dos objetos que ocorrem naquele episódio. O conjunto de casos é indexado por seus atributos mais significantes de forma a agilizar a busca e recuperação de casos similares (ABEL, 2001). Um caso pode ser entendido como a abstração de uma experiência descrita em termos de seu conteúdo e contexto, podendo assumir diferentes formas de representação. A representação dos casos é uma tarefa complexa e importante para o sucesso de um sistema de RBC (MATTOS, 1999). As principais entidades envolvidas no processo de raciocínio de um sistema de RBC são os casos e a base de casos. O caso representa uma experiência ou uma interpretação de uma experiência. A base de casos consiste no conjunto de casos e os procedimentos de acesso a estes casos (KOLODNER, 1993). O caso deve representar conhecimento do conteúdo e o contexto da experiência. Em sistemas de solução de problema, os casos devem englobar problemas, soluções e resultados da utilização das soluções e em sistemas interpretativos devem representar as experiências na forma que facilitar a interpretação das mesmas. 2.2 Avaliação de Similaridade A avaliação de similaridade em um sistema de RBC, consiste na comparação entre dois casos para avaliar como um está relacionado com o outro e como estes casos podem compartilhar soluções e conseqüências. Esta avaliação é executada no nível dos atributos, associando-se valores cuja natureza determina a função de combinação a ser empregada. Funções de combinação comparam valores numéricos e alfanuméricos exatamente ou dentro de intervalos. A comparação

27 14 entre textos pode ser feita por similaridade sintática ou semântica. Uma forma simples e direta de modelar similaridade é atribuindo-se um valor de uma (1) unidade para a função resultante similar e o valor zero (0) para o resultado não similar; e ainda atribuir valores intermediários entre estes. Segundo Wangenheim (2003), existem quatro níveis possíveis de similaridade em RBC: Similaridade Semântica: tipo de similaridade mais simples, pois geralmente não levam em conta os fatores contextuais e se refere aos atributos que são sintaticamente idênticos em duas situações. Em RBC este tipo de similaridade parece ser suficiente; Similaridade Estrutural: é mais complexa que a Semântica, os casos devem ser ligados por meio de estruturas isomórficas. O isomorfismo depende da consistência da ligação de proposições, predicados ou argumentos. Isto é, os dois casos são analogicamente similares se as suas estruturas de relações e argumentos forem semelhantes. Similaridade Organizacional: está relacionada como similaridade imposta a casos armazenados em localizações próximas na memória de casos. Similaridade Pragmática: duas partes são pragmaticamente similares se elas ocupam funções similares em suas respectivas situações. 2.3 Métrica de Similaridade A métrica de similaridade é a função que mede numericamente o grau de similaridade entre dois casos e é usada em sistemas onde os casos são comparados um a um e a medida de sua similaridade é o meio de distinguir os casos similares e os não similares. A métrica de similaridade sintetiza a similaridade ao nível de cada atributo através de uma medida da importância que é usada para modelar a relevância de cada atributo na avaliação sintética da similaridade. Conseqüentemente, qualquer cálculo matemático orientado para avaliações sintética é válido, tais como a média ponderada e as integrais difusas. Contudo, ainda é possível encarar a avaliação de similaridade como um problema de reconhecimento de padrões dentro do espaço dos casos.

28 Matching e Ranking Os algoritmos de recuperação procuram diretamente em determinados locais da memória os casos que podem ser úteis para a solução do problema, isto é feito através de heurísticas de match e ranking as quais escolhem os casos mais úteis daquele conjunto. Matching é o processo de comparar dois casos entre si determinar o seu grau de similaridade, podendo ser criado um escore que representa o grau de similaridade ou simplesmente determinar se o caso é similar o bastante ou não (KOLODNER, 1993). Ranking é o processo de ordenar os casos partially-matching de acordo com sua utilidade, determinando qual é o melhor entre os casos. Freqüentemente, o procedimento de Ranking usa a saída do procedimento de Match para ordenar os casos partially-matching de acordo com a sua utilidade (KOLODNER, 1993). Segundo Kolodner (1993), há cinco entradas de dados para os processos de Matching e Ranking: O novo problema ou situação que está tentando resolver; Os objetivos de uso para os casos recuperados. O sistema pode desejar construir uma parte da solução, avaliar ou interpretar uma solução proposta, projetar resultados ou saídas, explicar uma anomalia. O conjunto de casos recuperados. Preferencialmente este conjunto deve ser ordenado para fins de uso posterior. Os índices associados com cada um dos casos recuperados, os quais podem ser usados em esquemas de ranking sensíveis ao contexto ou podem ser usados como identificadores conceituais dos casos. Critério de match razoável, que indica quando os procedimentos de match e ranking devem parar. Alguns critérios podem almejar o "melhor" ou o "mais útil" match, levando todos os aspectos do contexto em consideração, outros podem desejar somente um match adequado, de acordo com poucos critérios.

29 16 Critérios de similaridade são usualmente inseridos em uma função, a função de avaliação que computa o grau de similaridade. Uma função de avaliação usa critérios de similaridade ou valores de importância dimensional (KOLODNER, 1993). Um critério de similaridade pode ser determinado globalmente através de todo banco de casos ou grande parte dele, ou localmente, através de um único caso ou subconjunto do banco de casos Match Global Na avaliação de similaridade usando Match Global somente um ou um pequeno número de critérios de similaridade são usados, sendo, apropriado quando os casos são usados somente para um propósito ou quando a importância relativa de uma dimensão varia pouco com o objetivo. Este critério de similaridade resulta em um esquema de verificação da similaridade estático, onde há pouca ou nenhuma variação nas funções de similaridade que são usadas (KOLODNER, 1993) Match Local Na avaliação de similaridade usando Match Local a sensibilidade ao contexto é maior, sendo para um pequeno conjunto de casos, variando o critério de acordo com ambos aspectos do contexto. A verificação de similaridade torna-se mais dinâmica, tendo dois tipos de esquema de verificação de similaridade dinâmica. No primeiro, o critério de similaridade é calculado durante a execução através da comparação dos casos que estão disponíveis em várias maneiras. Outro esquema, mais dinâmico, escolhe entre um conjunto de critérios de similaridade disponíveis aquele que faz mais sentido dado a tarefa a ser executada. Nestes sistemas, vários esquemas de similaridade diferentes estão disponíveis, cada qual associado a um conjunto de condições sob o qual deve ser usado (KOLODNER, 1993) Match Absoluto e Relativo Match absoluto: considera somente o caso recuperado e o novo caso.

30 17 Match relativo: faz comparação com outros casos. É usado um argumento para a ordenação dos casos recuperados. Este argumento possibilita um novo arranjo no rank. 2.4 Indexação Os sistemas de RBC possuem entre suas principais características a habilidade de recuperar de forma eficiente, casos relevantes de uma biblioteca de casos. O fundamental para atingir este objetivo é saber como essa biblioteca deve ser indexada de maneira que o processo de recuperação seja mais preciso e eficiente (LORENZI e ABEL, 2002). A indexação é a essência do raciocínio baseado em casos porque orienta a avaliação da similaridade. Ela determina o que deve ser comparado entre os casos para avaliar sua similaridade no intuito de recuperar casos que conduzam à tarefa principal, permitir a recuperação dos casos mais úteis para resolver ou interpretar o novo caso (LAGEMANN, 1998). A indexação é um problema central em raciocínio baseado em casos, envolvendo a escolha dos tipos de índices que serão usados pela etapa de recuperação. Da mesma forma que os índices podem acelerar uma busca em base de dados, eles são usados em RBC para acelerar a recuperação dos casos (MATTOS, 1999). Segundo Lagemann (1998) as informações contidas em um caso podem ser de dois tipos: Informações indexadas para uso na recuperação; Informações não indexadas que fornecem dados não necessários para a recuperação. Indexar casos corresponde a atribuir índices aos casos para facilitar sua recuperação, incluindo rótulos nos casos no momento de sua inclusão no banco de casos, para que possam ser posteriormente recuperados, para organizar os casos para facilitar a recuperação e definir os algoritmos de recuperação mais eficientes. Um bom índice permite reconhecer similaridades úteis entre os casos recuperados e a escolha de um bom índice depende de uma boa compreensão do problema (ABEL, 2001).

31 18 Uma difícil tarefa na definição dos índices é prever que tipos de necessidade irão surgir e que tipos de informações serão necessárias para recuperar casos em situações futuras (LAGEMANN, 1998). Segundo Abel (2001) as qualidades necessárias a um bom índice são: Prever a futura utilização da informação para solução de diferentes problemas; Endereçar as similaridades úteis entre os casos; Ser abstrato o suficiente para tornar um caso útil em uma variedade de diferentes situações; Ser concreto o suficiente para ser facilmente reconhecido em futuras situações. Os índices podem ser selecionados tanto manualmente quanto automaticamente, sendo, que a seleção manual analisa caso a caso para determinar quais as características descritas que determinam as variações sobre as conclusões e a seleção automática busca quantificar as diferenças entre os casos e os relacionamentos entre feições do problema e soluções adotadas. Algumas formas de selecionar índices segundo Abel (2001) são: Técnicas baseadas em explicação: os casos são analisados individualmente para determinar os elementos do problema que são utilizados para construir a solução. Esses elementos são utilizados como índices; Índices baseados em conhecimento do domínio: utilizando protocolos retrospectivos sobre os casos são extraídas as correlações entre elementos e conclusões nos casos particulares e no domínio como um todo (processos abstratos). Esses elementos são utilizados como índice; Análise matemática: todos os elementos do domínio e suas dimensões são analisados numericamente para identificar quais as feições que determinam ou influenciam as conclusões.os elementos e valores computados são utilizados para construir os índices; Índices baseados nas diferenças entre os casos: o sistema analisa casos similares e os indexa especificamente nas características que os diferenciam; Métodos de aprendizado indutivo: identificam os elementos que determinam as conclusões para serem utilizados como índice.esses métodos são muito difundidos por usarem o sistema Remind e variações do algoritmo para indução de regras ID3;

32 19 Métodos de generalização: o método utiliza a definição de casos abstratos a partir dos elementos compartilhados entre os diversos casos armazenados.esses elementos são utilizados para indexação dos casos abstratos, enquanto que as funções que os diferenciam indexam os casos individuais. Apesar de métodos automáticos auxiliarem na escolha de bons índices, os métodos onde os índices são obtidos manualmente apresentam melhor desempenho do que aqueles puramente processados (ABEL, 2001). O processo de indexação é uma oportunidade de superar a deficiência de experiências mal descritas e torná-las úteis e valiosas na realização das tarefas do sistema. Esta meta é conduzida pela correta interpretação da experiência a partir da perspectiva do especialista, permitindo a identificação do significado intrínseco e da correlação entre as entidades ativas participantes na experiência. Uma forma de buscar tais relações é tentar representar as correspondências entre as causas e conseqüências, razões e soluções (ABEL, 2001). 2.5 Recuperação Os algoritmos de recuperação servem para encontrar os casos mais similares à situação atual, utilizando os índices da memória de casos. Estes algoritmos baseiam-se nos índices e organização de memória para dirigir a busca dos casos úteis. Os algoritmos mais simples baseiamse no exame exaustivo das feições dos casos e recupera o caso que possui o maior número de feições idênticas, outros algoritmos utilizam-se de heurísticas para reduzir e dirigir a busca, sendo estes busca serial, busca hierárquica e busca por simulação paralela (ABEL,2001). A tarefa de recuperação começa com a descrição do problema e termina com o melhor caso encontrado (WANGENHEIM, 2003). As sub-tarefas são: Identificação das características: informa ao sistema as características do caso atual; Casamento Inicial: recupera um conjunto de possíveis candidatos; Busca: é um processo mais elaborado de selecionar o melhor candidato entre os casos recuperados no Casamento Inicial; Seleção: o processo de seleção gera conseqüências e expectativas de cada caso recuperado e tenta avaliar as conseqüências, justificando as expectativas. Os casos são eventualmente

33 20 ordenados de acordo com a métrica ou algum critério de classificação, desta forma, o caso que possui maior grau de similaridade ao novo problema é escolhido Algoritmo do Vizinho Mais Próximo (Nearest Neighbour) O algoritmo do Vizinho Mais Próximo baseia-se na comparação entre o novo caso com os casos armazenados no banco de casos, utilizando uma soma ponderada das suas características.a cada característica que descrevem o caso são atribuídos pesos que são utilizados na recuperação. O algoritmo do Vizinho Mais Próximo consiste na identificação das características (atributos), mais importantes para a solução do problema. Essas características devem ser representadas em algum sistema de coordenada para que possa ser medida a distância entre o novo problema e os casos já armazenados na base de dados (KOSLOSKY, 1999). Este cálculo é repetido para cada caso do banco de casos para obter-se um valor que represente o grau de similaridade com o novo caso, ou seja, os casos que obtiverem valores maiores serão os mais similares. As similaridades são usualmente normalizadas para um intervalo entre zero e um (zero quando sem similaridade, um quando similaridade exata). A grande dificuldade é a determinação dos pesos relativos das características. A limitação desta abordagem é a convergência para a solução correta e o número de recuperações. Em geral o tempo de recuperação aumenta linearmente com o número de casos (KOSLOSKY, 1999). A similaridade entre o caso alvo e um caso na base de casos é determinada para cada atributo. Esta medida é multiplicada por um fator peso. A somatória de todos os atributos é calculada e permite estabelecer a medida de similaridade entre os casos da biblioteca e o caso alvo (KOSLOSKY, 1999). O cálculo do Vizinho Mais Próximo é feito com base na equação 1. Similaridade (N,F) = Σ n ƒ(n i,f i ) * w i Equação (1) i=1 Sendo: N = caso novo; F = casos existentes na base de casos;

34 21 n = número de atributos; i = atributo individual; ƒ = função de similaridade para o atributo i nos casos N e F w = peso do atributo i. O algoritmo do vizinho mais próximo assume que cada caso (F) é definido por um conjunto de características (i). Dado um novo problema (N) e um peso (w) para cada característica (i), o atributo recupera o caso mais parecido com o novo caso, ou seja, aquele que tiver menor distância (LORENZI e ABEL, 2002) Algoritmo de Indução O algoritmo de Indução determina quais das características são mais eficazes em discriminar o caso, gerando uma árvore de decisão que organiza a memória de casos. É eficiente quando os casos são comparados através de uma única característica para encontrar a solução e é utilizado no sistema ID3 para descoberta de conhecimento em grandes bancos de dados. Neste método encontram padrões entre os casos agrupando os mesmos em conjunto, sendo que cada conjunto contém casos similares (KOSLOSKY, 1999). A partir de dados passados constroem-se árvores de decisão, para a construção desta árvore os casos recebem atributos que melhor lhe identifiquem. Encontrado o primeiro atributo é montado o primeiro nó da árvore, depois são encontrados dois novos atributos que fornecem os próximos nós e assim por diante. Montada a árvore a partir da base de casos, o próximo passo é percorrer a árvore com o caso em questão. O último nó da árvore contém os casos mais similares (KOSLOSKY,1999). O algoritmo mais utilizado é chamado de ID3. Ele constrói uma árvore de decisão usando a heurística chamada informação mais proveitosa (information gain) para encontrar o atributo mais promissor de todos (pelo conhecimento do domínio), dividindo a base de casos. O ID3 requer um atributo alvo e uma condição para analisar os casos a partir deste critério (ABEL, 2001) Método ID3 O algoritmo ID3 foi proposto por Quinlan nos anos 80 para indução de árvores de

35 22 classificação. Segundo exemplo dado por Mendonça (2001) o algoritmo ID3 funciona seguindo os seguintes passos: Passo 1: um atributo é selecionado como raiz da árvore, são criados tantos galhos quanto valores existirem para este atributo; Passo 2: a árvore gerada é usada para classificar o conjunto de treinamento. Se todos os exemplos em uma folha tiverem o mesmo valor para o atributo que esta sendo classificado (no exemplo, probabilidade de erro), esta folha será etiquetada com este valor. Se todas as folhas forem etiquetadas o algoritmo termina. Passo 3: caso contrário, a folha será etiquetada como um módulo não terminal com um atributo que ainda não foi usado nos seus nódulos ancestrais, são criados todos os galhos possíveis para ele e retorna-se ao passo 2. Figura 2 Árvore de Classificação para Probabilidade de Erro de um Módulo de Software. Fonte: Mendonça (2001) Para que o algoritmo acima funcione o principal é escolher um atributo adequado a cada nódulo não terminal da árvore. O ID3 usa uma heurística baseada na teoria da informação, onde o atributo que produz mais informações é aquele que reduz mais a incerteza sobre o valor do atributo probabilidade de erro. Quanto mais informação cada nível tem menor será o tamanho da árvore.

36 23 Na seleção do atributo o conjunto de dados é dividido em dois subconjuntos P e N. O subconjunto P contém todos os elementos positivos (no exemplo todos os nós que tem probabilidade de erro). O subconjunto N contém os dados negativos. Para cada atributo A (exemplo: número de revisões, complexidade cilomática, etc.) e valor V i (exemplo: 0-3, 4-5, 6-10, > 10), determina-se o subconjunto S i de elementos os quais A está em V i (exemplo: número de revisões >10). Conta-se o número n i de elementos que S i tem em N e o número de p i de elementos que S i tem em P. Calcula-se a quantidade de informação necessária para decidir se um elemento arbitrário em S i pertence a P ou N usando a equação 2. Equação 2 Assumindo que A parte o conjunto de dados S em subconjuntos {S 1, S 2, S 3,..., S v } para os seus valores {V 1, V 2, V 3,..., V v } e sabendo que a quantidade de informação necessária para decidir se um elemento de S i pertence a P ou a N é I(p i, n i ). A informação necessária para se classificar um elemento do conjunto de dados usando o atributo A é dado pela equação 3. Equação 3 Isto é a soma ponderada da informação necessária para classificar elementos nas sub-árvores S i definidas pelos valores {V 1, V 2, V 3,..., V v } de A. O atributo (A) selecionado para um nódulo da árvore é aquele que precisa da menor informação E(A) entre todos os atributos que podem ser selecionados para este nódulo. Indução Guiada por Conhecimento: utiliza o conhecimento da aplicação para identificar manualmente as características dos casos que são conhecidas ou consideradas por influenciarem a

37 24 decisão. Normalmente, é utilizado com outros métodos, por causa, das dificuldades em obter conhecimento aplicável à indução (ABEL, 2001). Recuperação de Padrões: recupera todos os casos que possuem as características prédefinidas. Muito eficiente mesmo em grandes volumes de casos, porém não é eficiente em recuperar o melhor caso, sendo usado antes de outros algoritmos de recuperação para diminuir o número de casos a serem analisados (ABEL, 2001) Método da Contagem de Característica No método de Contagem de Característica a similaridade entre os casos é obtida através da contagem dos atributos do caso armazenado no banco de casos que coincidem com os atributos do novo caso. A cada atributo i do caso armazenado igual ao atributo i do novo caso soma-se 1 ao número de atributos coincidentes. O grau de similaridade entre o caso armazenado e o novo caso é o número de atributos coincidentes dividido pelo número de atributos considerados para a comparação (ABEL, 2001). A tabela 3 demonstra a aplicação do método de Contagem de Característica. Tabela 3 Exemplo de Atributos em um Banco de Casos. Valor A Valor B Valor C Valor D Valor E Valor F Caso Caso Novo Caso Neste exemplo, o Caso 1 possui dois atributos coincidentes e o Caso 2 possui quatro atributos coincidentes. Se utilizarmos o método de Contagem de Característica, o caso mais similar ao Novo Caso é o Caso2, que possui grau de similaridade de 66% contra 33% do Caso1.

38 Flat Memory, Serial Search No método de Flat Memory os casos são armazenados seqüencialmente, e são recuperados através da aplicação de uma função de casamento, seqüencialmente em cada caso, guardando o valor do casamento de cada caso e recuperando os casos que casaram melhor (KOLODNER, 1993). O algoritmo de recuperação é muito simples, pois o casamento heurístico faz todo o trabalho. Existem variações na Flat Memory. Um esquema de indexação superficial é similar a índices invertidos usados em sistemas de banco de dados. Indexando um nível mais profundo, cada descritor escolhe um ponteiro de índice para aqueles casos que incluem em suas representações, e depois do casamento, seleciona apenas estes casos que são apontados pelo descritor especificado na nova situação. De preferência do que atende mais casamentos a entrada da base de casos, o uso destes índices escolhendo casos que são equivalentes aplicando funções de casamento, porque eles possuem uma característica com a nova situação. Considera-se nesta variação a inclusão da dimensão no conjunto de índices, e como particionar o casamento ao decorrer da dimensão (KOLODNER, 1993). Este esquema tem sido muito utilizado em RBC, tanto em sistemas de busca em pequenas bases de casos como em bases de casos de qualquer tamanho. Ele trabalha melhor quando as características usadas como índices são aquelas que permitem poucos casos para serem recuperados e quando são suficientemente descritivos para garantir que os casos potencialmente úteis sejam os casos recuperados. Ele também parece trabalhar bem quando a função de casamento é rápida, não importando o tamanho do conjunto inicialmente recuperado (KOLODNER, 1993). Outra variação é particionar a base de casos e fazer útil o sistema de reconhecimento com a partição de uma nova situação. Esta recuperação é checada, apropriadas partições para um novo casa são escolhidas, e casamentos são repetidos apenas em casos selecionados de partições (KOLODNER, 1993). A última variação é a pesquisa paralela na base de casos. Uma forma disto é aplicar funções de casamento em paralelo a toda a base. Outra forma é usar máquinas paralelas para selecionar casos usando indexação superficial e então aplicando funções de casamento para estes casos paralelos (KOLODNER, 1993).

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Professor Rene - UNIP 1 Roteamento Dinâmico Perspectiva e histórico Os protocolos de roteamento dinâmico são usados

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE MÓDULO 6 INTRODUÇÃO À PROBBILIDDE Quando estudamos algum fenômeno através do método estatístico, na maior parte das vezes é preciso estabelecer uma distinção entre o modelo matemático que construímos para

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

PRIMAVERA RISK ANALYSIS

PRIMAVERA RISK ANALYSIS PRIMAVERA RISK ANALYSIS PRINCIPAIS RECURSOS Guia de análise de risco Verificação de programação Risco rápido em modelo Assistente de registro de riscos Registro de riscos Análise de riscos PRINCIPAIS BENEFÍCIOS

Leia mais

ADM041 / EPR806 Sistemas de Informação

ADM041 / EPR806 Sistemas de Informação ADM041 / EPR806 Sistemas de Informação UNIFEI Universidade Federal de Itajubá Prof. Dr. Alexandre Ferreira de Pinho 1 Sistemas de Apoio à Decisão (SAD) Tipos de SAD Orientados por modelos: Criação de diferentes

Leia mais

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES CELG DISTRIBUIÇÃO S.A EDITAL N. 1/2014 CONCURSO PÚBLICO ANALISTA DE GESTÃO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI RESPOSTAS ESPERADAS PRELIMINARES O Centro de Seleção da Universidade Federal de Goiás

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Versão 1.6 15/08/2013 Visão Resumida Data Criação 15/08/2013 Versão Documento 1.6 Projeto Responsáveis

Leia mais

ROTEIRO PARA ELABORAÇÃO DE PROJETOS

ROTEIRO PARA ELABORAÇÃO DE PROJETOS APRESENTAÇÃO ROTEIRO PARA ELABORAÇÃO DE PROJETOS Breve histórico da instituição seguido de diagnóstico e indicadores sobre a temática abrangida pelo projeto, especialmente dados que permitam análise da

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton

Leia mais

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1. Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever

Leia mais

Gerenciamento de Projetos Modulo VIII Riscos

Gerenciamento de Projetos Modulo VIII Riscos Gerenciamento de Projetos Modulo VIII Riscos Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento

Leia mais

PLANOS DE CONTINGÊNCIAS

PLANOS DE CONTINGÊNCIAS PLANOS DE CONTINGÊNCIAS ARAÚJO GOMES Capitão SC PMSC ARAÚJO GOMES defesacivilgomes@yahoo.com.br PLANO DE CONTINGÊNCIA O planejamento para emergências é complexo por suas características intrínsecas. Como

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0 O que é BABok? O BABok 2.0, Corpo de Conhecimento de Análise de Negócios, é considerado como um Guia Referência de Práticas de Análise de Negócio. Este guia é publicado e mantido pelo IIBA. O guia BABok

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

CHECK - LIST - ISO 9001:2000

CHECK - LIST - ISO 9001:2000 REQUISITOS ISO 9001: 2000 SIM NÃO 1.2 APLICAÇÃO A organização identificou as exclusões de itens da norma no seu manual da qualidade? As exclusões são relacionadas somente aos requisitos da sessão 7 da

Leia mais

3 Qualidade de Software

3 Qualidade de Software 3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo

Leia mais

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio:

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio: 1. Conceitos de sistemas Conceitos da Teoria de Sistemas OPTNER: É um conjunto de objetos com um determinado conjunto de relações entre seus objetos e seus atributos. TILLES: É um conjunto de partes inter-relacionadas.

Leia mais

Seção 2/E Monitoramento, Avaliação e Aprendizagem

Seção 2/E Monitoramento, Avaliação e Aprendizagem Seção 2/E Monitoramento, Avaliação e Aprendizagem www.bettercotton.org Orientação Text to go here O documento Monitoramento, Avaliação e Aprendizagem da BCI proporciona uma estrutura para medir as mudanças

Leia mais

Módulo 15 Resumo. Módulo I Cultura da Informação

Módulo 15 Resumo. Módulo I Cultura da Informação Módulo 15 Resumo Neste módulo vamos dar uma explanação geral sobre os pontos que foram trabalhados ao longo desta disciplina. Os pontos abordados nesta disciplina foram: Fundamentos teóricos de sistemas

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

Tabela de roteamento

Tabela de roteamento Existem duas atividades que são básicas a um roteador. São elas: A determinação das melhores rotas Determinar a melhor rota é definir por qual enlace uma determinada mensagem deve ser enviada para chegar

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 QUALIDADE DE SOFTWARE Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 Objetivos Apresentar o processo de gerenciamento de qualidade e as atividades centrais da garantia de

Leia mais

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010. Matemática Essencial Extremos de funções reais Departamento de Matemática - UEL - 2010 Conteúdo Ulysses Sodré http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES Trabalho de Graduação Orientando: Vinicius Stein Dani vsdani@inf.ufsm.br Orientadora: Giliane

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

4 Avaliação Econômica

4 Avaliação Econômica 4 Avaliação Econômica Este capítulo tem o objetivo de descrever a segunda etapa da metodologia, correspondente a avaliação econômica das entidades de reservas. A avaliação econômica é realizada a partir

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com Engenharia de Software: conceitos e aplicações Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com 1 Objetivos da aula Apresentar os conceitos de Engenharia de Software e explicar a sua importância.

Leia mais

6 Construção de Cenários

6 Construção de Cenários 6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.

Leia mais

Simulação Computacional de Sistemas, ou simplesmente Simulação

Simulação Computacional de Sistemas, ou simplesmente Simulação Simulação Computacional de Sistemas, ou simplesmente Simulação Utilização de métodos matemáticos & estatísticos em programas computacionais visando imitar o comportamento de algum processo do mundo real.

Leia mais

SUMÁRIO. Introdução... 3

SUMÁRIO. Introdução... 3 SUMÁRIO Introdução..................................... 3 1 Consultas por Similaridade e Espaços métricos............. 5 1.1 Consultas por abrangência e consultas aos k-vizinhos mais próximos... 5 1.2

Leia mais

Capítulo 7 Medidas de dispersão

Capítulo 7 Medidas de dispersão Capítulo 7 Medidas de dispersão Introdução Para a compreensão deste capítulo, é necessário que você tenha entendido os conceitos apresentados nos capítulos 4 (ponto médio, classes e frequência) e 6 (média).

Leia mais

Controle do Arquivo Técnico

Controle do Arquivo Técnico Controle do Arquivo Técnico Os documentos existentes de forma física (papel) no escritório devem ser guardados em pastas (normalmente pastas suspensas) localizadas no Arquivo Técnico. Este Arquivo pode

Leia mais

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1 Capítulo 2 Processos de Software slide 1 Tópicos apresentados Modelos de processo de software. Atividades de processo. Lidando com mudanças. Rational Unified Process (RUP). Um exemplo de um processo de

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística Aula 4 Conceitos Básicos de Estatística Aula 4 Conceitos básicos de estatística A Estatística é a ciência de aprendizagem a partir de dados. Trata-se de uma disciplina estratégica, que coleta, analisa

Leia mais

3 Classificação. 3.1. Resumo do algoritmo proposto

3 Classificação. 3.1. Resumo do algoritmo proposto 3 Classificação Este capítulo apresenta primeiramente o algoritmo proposto para a classificação de áudio codificado em MPEG-1 Layer 2 em detalhes. Em seguida, são analisadas as inovações apresentadas.

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Resultados Experimentais

Resultados Experimentais Capítulo 6 Resultados Experimentais Este capítulo é dedicado às avaliações experimentais do sistema CBIR. Os experimentos aqui realizados têm três objetivos principais: comparar os nossos resultados com

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9 Página: 1 de 9 1. OBJETIVO Estabelecer sistemática de funcionamento e aplicação das Auditorias Internas da Qualidade, fornecendo diretrizes para instruir, planejar, executar e documentar as mesmas. Este

Leia mais

Treinamento GVcollege Módulo Acadêmico - Pedagógico

Treinamento GVcollege Módulo Acadêmico - Pedagógico Treinamento GVcollege Módulo Acadêmico - Pedagógico 2015 GVDASA Sistemas Pedagógico 2 AVISO O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

Leia mais

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP Planejamento - 7 Planejamento do Gerenciamento do Risco Identificação dos riscos 1 O que é risco? Evento que representa uma ameaça ou uma oportunidade em potencial Plano de gerenciamento do risco Especifica

Leia mais

Busca. Pesquisa sequencial

Busca. Pesquisa sequencial Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um

Leia mais

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br MINERAÇÃO DE DADOS APLICADA Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br Processo Weka uma Ferramenta Livre para Data Mining O que é Weka? Weka é um Software livre do tipo open source para

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS 6ª Série Teoria da Computação Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensinoaprendizagem desenvolvido por meio de um conjunto

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Ajuda ao SciEn-Produção 1. 1. O Artigo Científico da Pesquisa Experimental

Ajuda ao SciEn-Produção 1. 1. O Artigo Científico da Pesquisa Experimental Ajuda ao SciEn-Produção 1 Este texto de ajuda contém três partes: a parte 1 indica em linhas gerais o que deve ser esclarecido em cada uma das seções da estrutura de um artigo cientifico relatando uma

Leia mais

Orientação à Objetos. Aécio Costa

Orientação à Objetos. Aécio Costa Aécio Costa O paradigma da orientação à objetos Paradigma? Um paradigma é uma forma de abordar um problema. No contexto da modelagem de um sistema de software, um paradigma tem a ver com a forma pela qual

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br Faculdade Pitágoras Engenharia de Software Prof.: Julio Cesar da Silva juliocesar@tecnocracia.eti.br Http://e-academy.com.br Evolução do Software (1950 1965) - O hardware sofreu contínuas mudanças - O

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

QFD: Quality Function Deployment QFD: CASA DA QUALIDADE - PASSO A PASSO

QFD: Quality Function Deployment QFD: CASA DA QUALIDADE - PASSO A PASSO QFD: CASA DA QUALIDADE - PASSO A PASSO 1 - INTRODUÇÃO Segundo Akao (1990), QFD é a conversão dos requisitos do consumidor em características de qualidade do produto e o desenvolvimento da qualidade de

Leia mais

Histórico de Revisão Data Versão Descrição Autor

Histórico de Revisão Data Versão Descrição Autor H6Projetos Documento de Requisitos Versão 1.3 Histórico de Revisão Data Versão Descrição Autor 05/09/2013 1.0 Preenchimento do Capítulo 2 Requisitos Funcionais Evilson Montenegro 26/09/2013 1.1 Preenchimento

Leia mais

ISO 9001:2008. Alterações e Adições da nova versão

ISO 9001:2008. Alterações e Adições da nova versão ISO 9001:2008 Alterações e Adições da nova versão Notas sobe esta apresentação Esta apresentação contém as principais alterações e adições promovidas pela edição 2008 da norma de sistema de gestão mais

Leia mais

ISO 9000:2000 Sistemas de Gestão da Qualidade Fundamentos e Vocabulário. As Normas da família ISO 9000. As Normas da família ISO 9000

ISO 9000:2000 Sistemas de Gestão da Qualidade Fundamentos e Vocabulário. As Normas da família ISO 9000. As Normas da família ISO 9000 ISO 9000:2000 Sistemas de Gestão da Qualidade Fundamentos e Vocabulário Gestão da Qualidade 2005 1 As Normas da família ISO 9000 ISO 9000 descreve os fundamentos de sistemas de gestão da qualidade e especifica

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

PLANEJAMENTO DA MANUFATURA

PLANEJAMENTO DA MANUFATURA 58 FUNDIÇÃO e SERVIÇOS NOV. 2012 PLANEJAMENTO DA MANUFATURA Otimizando o planejamento de fundidos em uma linha de montagem de motores (II) O texto dá continuidade à análise do uso da simulação na otimização

Leia mais

DATA WAREHOUSE. Introdução

DATA WAREHOUSE. Introdução DATA WAREHOUSE Introdução O grande crescimento do ambiente de negócios, médias e grandes empresas armazenam também um alto volume de informações, onde que juntamente com a tecnologia da informação, a correta

Leia mais