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 REDE NEURAL ARTIFICIAL PARA O DESLOCAMENTO DE UM ROBÔ AUTÔNOMO Área de Inteligência Artificial por Marlos Roberto de Souza Filho Rudimar Luiz Scaranto Dazzi, Dr. Orientador Itajaí (SC), novembro de 2009

2 UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO REDE NEURAL ARTIFICIAL PARA O DESLOCAMENTO DE UM ROBÔ AUTÔNOMO Área de Inteligência Artificial por Marlos Roberto de Souza Filho Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientador: Rudimar Luiz Scaranto Dazzi, Dr. Itajaí (SC), novembro de 2009

3 "A luta pela verdade deve ter precedência sobre todas as outras." Albert Einstein "Possuímos em nós mesmos, pelo pensamento e a vontade, um poder de ação que se estende muito além dos limites de nossa esfera corpórea." Allan Kardec "A compaixão para com os animais é das mais nobres virtudes da natureza humana." Charles Darwin "Embora ninguém possa voltar atrás e fazer um novo começo, qualquer um pode começar agora e fazer um novo fim." Francisco Cândido Xavier Há mais ventura em dar, que em receber. Jesus Cristo "Não me sinto obrigado a acreditar que o mesmo Deus que nos dotou de sentidos, razão e intelecto, pretenda que não os utilizemos." Galileu Galilei "A liberdade não é somente um direito que se reclama para si próprio: ela é também um dever que se assume em relação aos outros." João Paulo II "Todos gostamos de belas palavras, porém poucos de nós as transformam em atos." Sun Tzu "Nossas dúvidas são traidoras e nos fazem perder o bem que, com freqüência, poderíamos ganhar, por simples medo de arriscar." William Shakespeare "Não é o destino que importa, mas sim a viagem." Autor Desconhecido "Faça o bem a todas as criaturas em todos os locais da Terra, faça sem esperar nada em troca." Autor Desconhecido ii

4 DEDICATÓRIA A Deus. Aos Bons Espíritos. Aos meus amados pais (Claudete e Enoir) por toda educação, carinho e amor que sempre me deram, e ao meu amado irmãozinho (Christian) pelo carinho. iii

5 AGRADECIMENTOS A Deus, por tudo; Aos Bons Espíritos, pelo auxílio; A minha amada mãe Claudete, que sempre reza e torce por mim; Ao meu amado pai Enoir, que sempre acreditou em mim; Ao meu amado irmãozinho Christian, pelo enorme carinho e companheirismo; A minha família que sempre me apoiou e incentivou muito e por ser a minha maior fonte de referência; Ao meu amigo Nilson Debatin, pelo interesse e auxílio nos testes do ambiente de simulação Khepera e no desenvolvimento do código construído em linguagem C utilizado no software de testes da RNA; Ao meu amigo Ricardo Erick Rebelo, pela ajuda no desenvolvimento do código na linguagem C utilizado no software de testes da RNA; Ao meu amigo Fábio Coelho, pelo apoio e ajuda na fase de implementação do ambiente virtual desenvolvido em Java, construído sobre o software Simbad 3D. Ao meu amigo Emerson Del Sent pelo auxílio no desenvolvimento do abstract deste projeto; Ao meu orientador, professor Rudimar, pelo conhecimento passado, pelo incentivo, pela confiança e principalmente pela paciência; À Banca Examinadora, pelas sugestões e críticas que auxiliaram na elaboração final de um documento maduro e consistente em relação à natureza do projeto; Enfim, a todos que direta ou indiretamente auxiliaram na execução desse projeto. iv

6 SOUZA FILHO, Marlos Roberto de. Rede Neural Artificial para o deslocamento de um Robô Autônomo f. Trabalho de Conclusão de Curso (Bacharel) - Curso de Ciência da Computação, Univali, Itajaí, v

7 SUMÁRIO LISTA DE ABREVIATURAS... ix LISTA DE FIGURAS... x LISTA DE TABELAS... xiii RESULMO... xiv ABSTRACT... xv 1 Introdução INTELIGÊNCIA E AUTONOMIA NAVEGAÇÃO AUTÔNOMA DE ROBÔS E APRENDIZAGEM ABORDAGENS PARA SISTEMAS AUTÔNOMOS INTELIGENTES PROBLEMATIZAÇÃO Formulação do Problema Solução Proposta OBJETIVOS Objetivo Geral Objetivos Específicos METODOLOGIA ESTRUTURA DO TRABALHO Fundamentação Teórica ROBÔS Breve histórico dos robôs móveis Definições de robôs móveis Robôs Inteligentes INTELIGÊNCIA ARTIFICIAL REDES NEURAIS ARTIFICIAIS Neurônios Artificiais: Modelo MCP Função de Ativação Topologias de Redes Neurais Artificiais Principais Arquiteturas de Redes Neurais Artificiais Aprendizado Aprendizado Supervisionado Aprendizado Não-supervisionado O Algoritmo Backpropagation SENSORES ATUADORES CONTROLADORES FERRAMENTAS PARA CRIAÇÃO DE RNAS Java Object Oriented Neural Engine Joone vi

8 2.7.2 Stuttgart Neural Network Simulator SNNS Java Neural Network Simulator JavaNNS SIMULADORES DE ROBÔS Robocode Khepera Simulator Simbad 3D FERRAMENTAS SIMILARES Utilizando RNAs no Controle de Robôs Moveis Aplicados ao Combate de Incêndios Florestais Estacionamento de um Veículo de Forma Autônoma Utilizando RNAs Dirigibilidade de Mini-Robôs com RNAs: Uma Experiência Acadêmica Projeto METODOLOGIA REQUISITOS FUNCIONAIS REQUISITOS NÃO FUNCIONAIS REGRAS DE DECISÃO DA REDE NEURAL ARTIFICIAL FUNCIONAMENTO DA RNA E DO VEÍCULO Implementação DEFINIÇÃO DO AMBIENTE DE MANIPULAÇÃO DA RNA Criação dos Arquivos de Padrões Instalação e Detalhamento da Ferramenta JavaNNS Criando a Rede Neural Artificial Manipulando a Rede Neural Artificial As Redes Neurais Artificiais Criadas no JavaNNS Primeira RNA apresentada GSC A Segunda RNA Apresentada GSC B Terceira RNA Apresentada GSC C Quarta RNA Apresentada GSC D Convertendo o Arquivo da RNA para a Linguagem C Analisando o Arquivo de Resultado da RNA Comparando as RNAs apresentadas Utilizando a RNA em um aplicativo DYNAMIC LINK LIBRARY DLL Verificando o cabeçalho das DLLs criadas Validando as DLLs desenvolvidas DEFINIÇÃO DO AMBIENTE DE SIMULAÇÃO DO ROBÔ A Biblioteca JNA Criação dos Mundos Virtuais e dos Robôs Virtuais Chamada e Utilização da Biblioteca RNA Resultados Dificuldades vii

9 7 Conclusão PROJETOS FUTUROS Referências Bibliográficas A Trabalhando com DLLs B Criando a DLL Utilizando o C++ Borland C Criando a DLL Utilizando o Dev C D Carregando uma DLL Estáticamente E Carregando uma DLL Dinâmicamente F RNA gerada pelo Ambiente JavaNNS G Arquivo de Treinamento da RNA H Arquivo de Validação da RNA I Arquivo de Resultado da RNA - Validação J Código Fonte do Aplicativo Validador da RNA K Planilha com os Padrões de Entrada e Saída L Código Fonte do Arquivo PDRNA.DLL M Código Fonte do Mundo MarlosObstaculo N Código Fonte do Mundo MarlosLaberinto O Alterações para Adaptar o Robô à RNA viii

10 LISTA DE ABREVIATURAS BP CA CC DLL GSC GNU GPL IPVR IA JavaNNS JNA JNI JOONE MLP Quickprop PRNA PDRNA RBF RCS RProp RNA SNA SNNS TCC TDNN WSI UNIVALI VSC VSD VSE X11R4 X11R5 XGUI Backpropagation Corrente Alternada Corrente Contínua Dynamic Link Library Graduation in Science of the Computation GNU is Not Unix General Public Licence Institute for Parallel and Distributed High Performance Systems Inteligência Artificial Java Neural Network Simulator Java Native Access Java Native Interface Java Object Oriented Neural Engine Multilayer Perceptron Quickpropagation Projeto Rede Neural Artificial Projeto Dev Rede Neural Artificial Generalized Radial Basis functions Revision Control System Resilient Backpropagation Rede Neural Artificial Sistema de Navegação Autônoma Stuttgart Neural Network Simulator Trabalho de Conclusão de Curso time-delay neural networks Wilhelm-Schickard-Institute for Computer Science Universidade do Vale do Itajaí Valor do Sensor Central Valor do Sensor Direito Valor do Sensor Esquerdo X Window System - Version 11 release 4 of the X protocol X Window System - Version 11 release 5 of the X protocol X Graphical User Interface ix

11 LISTA DE FIGURAS Figura 1. Shakey, Kephera e Sojourmer Figura 2. Neurônio de McCulloch e Pitts...16 Figura 3. Feedforward de uma camada Figura 4. Feedforward de duas camadas Figura 5. Recorrência entre saída e intermediária...18 Figura 6. Recorrência auto-associativa Figura 7. Aprendizado supervisionado...20 Figura 8. Aprendizado não-supervisionado...21 Figura 9. Esquema de funcionamento do Algoritmo Backpropagation...23 Figura 10. Exemplo de uma superfície de erro para um treinamento usando backpropagation Figura 11. Tipos de funções de ativação mais utilizados...25 Figura 12. Ambiente do Java Object Neural Engine Joone Figura 13. Ambiente do Stuttgart Neural Network Simulator SNNS...31 Figura 14. Ambiente do Java Neural Network Simulator JavaNNS...32 Figura 15. Anatomia de um robô no simulador Robocode Figura 16. Interface do ambiente de simulação do Robocode Figura 17. Interface do ambiente de simulação do Khepera...36 Figura 18. Interface do ambiente de simulação do Webots Figura 19. Interface do ambiente de simulação Simbad 3D Figura 20. Exemplo de uma RNA da arquitetura MLP Figura 21. Sensores do Veículo Móvel Figura 22. Direções do Veículo Móvel...43 Figura 23. Exemplo de dados que obedece ao conjunto de regras apresentadas...48 Figura 24. Layout explicativo quanto ao funcionamento do veículo...49 Figura 25. Primeira seqüência de valores para análise Figura 26. Segunda seqüência de valores para análise Figura 27. Terceira seqüência de valores para análise...51 Figura 28. Quarta seqüência de valores para análise Figura 29. Quinta seqüência de valores para análise Figura 30. Layout oficial do arquivo de padrões do JavaNNS e SNNS Figura 31. Layout de padrões de arquivo simples aceito pelo JavaNNS e SNNS Figura 32. Criando camadas para a RNA no JavaNNS Figura 33. Caixa de dialogo para a criação das camadas...58 Figura 34. Criando conexões entre as camadas de neurônios...58 Figura 35. Caixa de definição quanto ao tipo de conexões a serem criadas Figura 36. RNA criada no ambiente JavaNNS Figura 37. Abrindo o Painel de Controle Figura 38. Painel de Controle do JavaNNS Figura 39. RNA GSC A Treinada...63 Figura 40. Arquivo log de Treinamento e Validação da RNA GSC A Figura 41. Gráfico de erro ( e 2 ) e validação da RNA GSC A...64 Figura 42. RNA GSC B Treinada...65 Figura 43. Arquivo log de Treinamento e Validação da RNA GSC B...66 Figura 44. Gráfico de erro ( e 2 ) e validação da RNA GSC B Figura 45. RNA GSC C Treinada...67 Figura 46. Arquivo log de Treinamento e Validação da RNA GSC C...68 x

12 Figura 47. Gráfico de erro ( e 2 ) e validação da RNA GSC C Figura 48. RNA GSC D Treinada...71 Figura 49. Arquivo log de Treinamento e Validação da RNA GSC D Figura 50. Gráfico de erro ( e 2 ) e validação da RNA GSC D...72 Figura 51. Convertendo a Rede para a Linguagem C com o snns2c.exe...72 Figura 52. Comando de utilização do snns2c.exe Figura 53. Trecho do arquivo de rede gerado pelo JavaNNS Figura 54. Trecho do arquivo em linguagem C gerado pelo snns2c.exe Figura 55. Comando de utilização do analyse Figura 56. Trecho do Arquivo de Resultados da RNA GSC B Figura 57. Utilização do aplicativo analyzer...76 Figura 58. Trecho do código em linguagem C referente ao programa principal Figura 59. Formato do arquivo de entrada Figura 60. Formato do arquivo de saída...78 Figura 61. Visualização das funções contidas no arquivo PRNA.DLL...81 Figura 62. Visualização das funções contidas no arquivo PDRNA.DLL Figura 63. Exemplo de definição de uma interface utilizando JNA Figura 64. Exemplo de chamada de interface utilizando JNA...84 Figura 65. Código do arquivo interfaceprna.java Figura 66. Chamada detalhada da interface interfaceprna...85 Figura 67. Invocando a função rede() através da interface neural...85 Figura 68. Mundo virtual MarlosObstaculos Figura 69. Mundo virtual MarlosLaberinto Figura 70. Robô Virtual Simulado...87 Figura 71. Importação do pacote JNA para utilização no ambiente virtual...87 Figura 72. Posição Inicial do Robô...90 Figura 73. Trajetória e posição Final do Robô...90 Figura 74. Posição Inicial do Robô...91 Figura 75. Trajetória e posição Final do Robô...91 Figura 76. Uma visão didática do conteúdo interno de uma dll Figura 77. Vários programas em execução usando a mesma dll simultaneamente Figura 78. Chamando uma dll escrita em C++ através de várias linguagens Figura 79. Chamando uma dll dinamicamente em C Figura 80. Caixa de diálogo Other, para escolher o que se deseja criar Figura 81. Janela New Dynamic-link Library Figura 82. Código fonte gerado automaticamente para começar o desenvolvimento de uma dll Figura 83. Pasta contendo todos os arquivos gerados após a compilação do projeto Figura 84. Sintaxe para declaração de funções que poderão ser exportadas para fora da dll Figura 85. Caixa de diálogo New Project Figura 86. Caixa de Diálogo New DLL Project Figura 87. Conteúdo alterado do arquivo PDRNA.dev Figura 88. Código contido no arquivo PDRNA.H Figura 89. Pasta contendo todos os arquivos gerados após a compilação do projeto Figura 90. Fluxo genérico de carregamento estático de uma dll Figura 91. Código inserido no envento OnClick do objeto Button Figura 92. Declaração da função a ser importada estaticamente da dll: Figura 93. Posição onde deve ser inserida a instrução contida na Figura Figura 94. Declaração de um ponteiro para uma função Figura 95. Declarando um ponteiro para uma função com parâmetros xi

13 Figura 96. Fluxo genérico de carregamento dinâmico de uma DLL xii

14 LISTA DE TABELAS Tabela 1. Principais comandos do robô Tabela 2. Principais eventos utilizados pelo robô...34 Tabela 3. Principais funções utilizadas para a obtenção de informações...35 Tabela 4. Principais funções disponibilizadas pelo Simbad 3D Tabela 5. Regras de decisão da Rede Neural Artificial Tabela 6. Análise e Pontuação dos Ambientes de Criação de RNAs Tabela 7. Resultados obtidos pelo Analyzer quanto ao Treinamento da RNA Tabela 8. Resultados obtidos pelo Analyzer quanto a Validação da RNA Tabela 9. Análise e Pontuação dos Ambientes de Virtualização de Robôs Tabela 10. Comandos que devem ser inseridos na construção de funções para dll Tabela 11. Tipos redefinidos Tabela 12. Ponteiro para Funções Tabela 13. Ponteiros para Variáveis Tabela 14. Protótipos de Funções Tabela 15. Declaração de Ponteiro para Função Tabela 16. Sintax e Descrição da Função LoadLibrary() Tabela 17. Sintax e Descrição da Função FreeLibrary() Tabela 18. Sintax e Descrição da Função GetProcAddress() xiii

15 RESULMO SOUZA FILHO, Marlos Roberto de. Rede Neural Artificial para o Deslocamento de um Robô Autônomo. Itajaí, f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, A crescente necessidade de desenvolvimento de mecanismos capazes de auxiliar o ser humano, e o desejo de criar sistemas capazes de substituir o homem em tarefas consideradas inadequadas ou que representem risco à sobrevivência do mesmo, aliadas ao crescente avanço de ciências aplicadas como a Robótica e a Inteligência Artificial (IA), criaram um ambiente propício ao desenvolvimento de robôs que sejam, até certo ponto, autônomos o suficiente para executarem tarefas tipicamente humanas. O deslocamento autônomo ainda é o maior obstáculo enfrentado pela IA, todavia essa dificuldade tem sido superada, com certo grau de sucesso, por aquela que é uma das técnicas mais antigas de IA, as Redes Neurais Artificiais (RNA). Esse projeto teve como objetivo o desenvolvimento de uma RNA capaz de propiciar a um robô o deslocamento necessário ao mesmo, tornando-o capaz de se deslocar de forma autônoma através de um ambiente terrestre plano. Para tal finalidade, foi utilizada uma RNA feedforward, treinada através do algoritmo backpropagation. Para o desenvolvimento da RNA foram analisados e documentados seis (6) ambientes de desenvolvimento de redes neurais, além de aplicativos utilizados para analisar arquivos de resultado e para converter os arquivos de arquitetura de RNA para arquivos fonte em linguagem C. Após os arquivos de arquitetura terem sido convertidos para arquivos fonte em linguagem C, esses arquivos fontes foram utilizados para a criação de um aplicativo capaz de ler um arquivo de padrões de entrada, analisá-los utilizando o código fonte da RNA e gerar um arquivo de padrões de saída com a resposta da RNA. Foram ainda desenvolvidas bibliotecas de ligação dinâmicas (BLD) utilizando os arquivos fonte da RNA, detalhes quanto às bibliotecas de ligação dinâmica, sua criação e utilização estão documentadas em detalhes. A biblioteca JNA foi utilizada para realizar a ligação entre a biblioteca de ligação dinâmica e o ambiente de simulação de robôs, sua utilização e funcionamento estão documentados em detalhes. Para a simulação do robô utilizando a rede neural artificial desenvolvida foram analisados e documentados seis (6) ambientes de simulação de robôs. Por fim, apresentam-se os resultados obtidos, as dificuldades encontradas e sugestões para novos projetos. Na seção de Apêndices encontram-se além de informações adicionais do projeto, dados utilizados no treinamento e na validação da RNA, além de alguns códigos fonte completos, em linguagem C e java. Palavras-chave: Redes Neurais Artificiais. RNA. Robótica. Robôs. Backpropagation. Inteligência Artificial. IA. Dynamic-link library. DLL. Biblioteca de ligação dinâmica. Java Native Access. JNA. Simbad 3D. xiv

16 ABSTRACT Nowadays there has been an increasing necessity of developing mechanisms in order to help people to accomplish several tasks, as well as the wish to create systems effective enough to replace people regarding risky and harmful activities. Furthermore, applied sciences - such as Robotics an Artificial Intelligence (AI) - have advanced in such a way that there are now the ideal conditions to project robots which, until a certain point, would be independent enough to carry on with typical human work. Autonomous moving is still the greatest obstacle to be overcome by AI, however this challenge has been faced, successfully so to speak, by the AI technique is the oldest among all: the Artificial Neural Networks (ANN). The aim of this project is develop an ANN able to give any robot adaptative motion skills, allowing it to go anywhere, plan, in earthly environment. For this ANN development, (6) neural networks development enviroments have been analyzed and documented, besides applicatives commonly used to analyze result files and to convert ANN architeture files into source files in C language. After such a conversion these source files have been used to create an applicative able to read an entry patterns file, analyze them using the ANN source code and generate an exit patterns file along the ANN response. Dynamic Link Libraries (DLL) have been developed using the ANN source files. Details from the BLD their creation and utilization have been documented in detail. The JNA libray has been used to link the DLL and the robots simulation enviroment, also reported in detail. For the simulation of the robot with the artificial neural network developed, (6) robot simulations enviroments have been analyzed and documented. Finally, the results obtained, the challenges faced and suggestions for new projetcs are presented. In the appendix section data used in the ANN training and validation, besides additional informations of the project and full source codes in C and Java language. Keywords: Artificial Neural Networks. ANN. Robotics. Robots. Backpropagation. Artificial Intelligence. Dynamic-Link Library. DLL. Java Native Access. Simbad 3D. xv

17 1 INTRODUÇÃO 1.1 Inteligência e Autonomia A evolução científica e tecnológica tem trazido inovações e descobertas cada vez mais freqüentes e surpreendentes. No entanto, há áreas do conhecimento que sempre foram e ainda hoje continuam sendo desafiadoras e intrigantes. É o caso da inteligência: o que a caracteriza, de que forma e quando ela opera e como reproduzi-la artificialmente (CAZANGI, 2004)? Considerando a possibilidade de graduar a manifestação de inteligência em vários níveis e escalas, a natureza é fonte inesgotável de mecanismos, comportamentos e organismos que podem ser considerados inteligentes. Dos seres extremamente simples aos mais complexos há vestígios de inteligência, seja em indivíduos isolados ou então no comportamento coletivo de um grupo de indivíduos. São estes aspectos que atraem a atenção de pesquisadores das mais diversas áreas, como biologia, psicologia e engenharia da computação, na busca pela compreensão e reprodução artificial dos sistemas biológicos que expressam algum grau de inteligência (CAZANGI, 2004). Não é possível estudar a inteligência de forma isolada, dado que ela interligada a outras propriedades presentes nos organismos biológicos. Uma das principais propriedades diretamente conectadas à existência de inteligência é a autonomia. Um agente artificial não autônomo não possui capacidade de inteligência própria. Na verdade, ele incorpora aspectos de inteligência especificados por quem o projetou. Sistemas biológicos são em geral autônomos, isto é, suas estruturas não são impostas por agentes externos, mais sim desenvolvidas e mantidas por eles próprios por meio de mecanismos como auto-organização, evolução, adaptação e aprendizagem. Considera-se, portanto, que a manifestação de algum grau de inteligência pode ser vista como um atributo de agentes autônomos (Steels, 1995 apud CAZANGI, 2004). Dizer que um agente é autônomo implica em afirmar que ele, além de agir por si só, consegue se auto-regular gerando as próprias regras que regem sua atuação. Esta definição distingue autônomo de automático. Ser automático é ser capaz de atuar em um ambiente: percebê-lo e impactá-lo visando o cumprimento de tarefas definidas. Um agente autônomo é antes de tudo automático, mas vai além disso: ele deve se autodirigir com base na sua capacidade própria de aprender e adaptar seus comportamentos. Além disso, os processos de aprendizagem e adaptação devem ocorrer enquanto o agente está operando no ambiente, e não fora dele (por exemplo, em fase de projeto) (CAZANGI, 2004).

18 Da mesma maneira adotada para o conceito de inteligência, é possível considerar a existência de níveis de autonomia, até pelo fato de não existir um ser totalmente autônomo. Os animais em geral, e o ser humano, em particular, dependem de fatores externos para sobreviverem. Estes organismos dependem do ambiente em que vivem para obter alimento e oxigênio, por exemplo. Logo, quando se afirma que um agente é autônomo, deve-se ter em mente que ele detém certo nível de autonomia, e não que ele é completamente autônomo. Desta forma, é possível comparar agentes em termos de autonomia, sendo que quanto mais autônomo for o agente, menos auxílio externo ele necessita (CAZANGI, 2004). Pfeifer & Sheier (1999 apud CAZANGI, 2004) afirmam que agentes autônomos artificiais são ideais para se estudar os princípios da inteligência. Segundo eles, uma das motivações para o emprego desses agentes envolve a idéia de emergência. Agentes autônomos apresentam comportamentos chamados emergentes, ou seja, comportamentos que surgem pela interação do agente com o ambiente sem que tenham sido programados a priori pelo projetista. Por exemplo, processos de navegação autônoma envolvendo múltiplos robôs podem promover a emergência de comportamentos organizados que não são expressos por nenhum destes robôs quando isolados dos demais (CRESTANI, 2001 apud CAZANGI, 2004). 1.2 Navegação Autônoma de Robôs e Aprendizagem A pesquisa de sistemas inteligentes por intermédio de agentes autônomos é classificada como uma metodologia sintética, cuja idéia se resume em construir para entender. A abordagem sintética consiste em criar sistemas artificiais que reproduzam aspectos dos sistemas naturais, de modo a entender seus mecanismos internos e assim descobrir como e por que certos eventos ocorrem. O outro paradigma de abordagem, conhecido como analítico, prega a realização de experimentos em um sistema já existente (um ser humano, ou uma colônia de formigas, por exemplo) para então analisar os resultados visando desenvolver um modelo que seja capaz de prever os efeitos de experimentos futuros (PFEIFER & SHEIER, 1999 apud CAZANGI, 2004). Um dos problemas de engenharia mais complexos, desafiadores e propícios à pesquisa de sistemas autônomos inteligentes é a navegação autônoma de robôs. O problema consiste, basicamente, em desenvolver mecanismos de tomada de decisão para um ou mais robôs móveis, dispostos em um ambiente arbitrário junto ao qual devem atuar de forma autônoma, visando cumprir certas tarefas. Muito embora a navegação de robôs possa ser descrita com base nesta breve definição, existem muitos aspectos de projeto envolvidos: configurações do ambiente, modelo do 2

19 robô, elenco de tarefas e critérios de desempenho. Sendo assim, o desenvolvimento de critérios de navegação autônomos envolve desafios extremamente complexos para o trabalho do projeto (FIGUEIREDO, 1999 apud CAZANGI, 2004). Devido à grande variedade de situações com que o robô pode se defrontar ao longo da navegação, sendo algumas inéditas e não previsíveis (sobretudo em ambientes desconhecidos), o desempenho de um sistema de navegação depende de sua capacidade de aprendizagem e adaptação. Ou seja, somente aprimorando sai estratégia de navegação, por meio da incorporação de conhecimento (adquirido por experimentação) e ajuste de parâmetros, um sistema de navegação torna-se apto a guiar eficientemente o robô visando maximizar o atendimento dos objetivos de navegação. Justamente devido à importância da aprendizagem, intensos esforços de pesquisa têm sido dedicados ao aperfeiçoamento desta potencialidade em sistemas de navegação (FIGUEIREDO, 1999 apud CAZANGI, 2004). Já no tocante aos mecanismos de adaptação (ajuste de parâmetros), mecanismos sofisticados e eficientes derivados da teoria de controle automático (KUO, 1991 apud CAZANGI, 2004) podem ser prontamente empregados. Um robô controlado por um sistema que possua capacidade de aprendizagem vai vivenciar suas próprias experiências, adquirindo conhecimento ao longo do tempo e por meios próprios, não pela imposição de um agente externo. Fica evidente, portanto, que um robô com capacidade de aprendizado é potencialmente mais autônomo que outro incapaz de aprender. Um benefício da aprendizagem pode ser observado na seguinte situação: supondo que o agente encontre as mesmas circunstâncias pelas quais já passou antes, depois de uma fase de aprendizado ter ocorrido, seu sistema pode reagir de forma diferente da anterior e, possivelmente, com melhores resultados. Fica explícita então a relevância dos mecanismos de aprendizagem na construção de sistemas autônomos inteligentes (CAZANGI, 2004). Nolfi & Floreano (2000 apud CAZANGI, 2004)explicam que a aprendizagem de robôs baseia-se na idéia de que um sistema de controle pode se tornar apto a atuar eficientemente diante de novas situações, sustentando-se na sua capacidade de generalizar conhecimentos adquiridos anteriormente, mesmo que estes sejam diversos e incompletos. Entretanto, generalização não e a única propriedade de um sistema com aprendizagem, existem outras propriedades importantes. Alguns atributos básicos relacionados a abordagens que contemplam aprendizagem são descritos a seguir (PFEIFER & SHEIER, 1999 apud CAZANGI, 2004): O sistema deve ser robusto em relação a ruídos; 3

20 Os mecanismos devem convergir rapidamente e têm que permitir a aprendizagem durante a operação do sistema (on-line); A aprendizagem deve ser incremental e continuada; O processo de aprendizagem precisa ser computacionalmente tratável, isto é, deve possibilitar sua execução em tempo real; e O aprendizado deve depender apenas de informações obtidas pelo próprio robô, por meio de sua capacidade sensorial. 1.3 Abordagens para Sistemas Autônomos Inteligentes A pesquisa em torno do desenvolvimento de sistemas autônomos inteligentes é intensa e apresenta diversas abordagens. Algumas abordagens promissoras envolvem: sistemas dinâmicos, economia comportamental e esquemas. Entretanto, a abordagem mais consolidada e amplamente utilizada, particularmente em sistemas de navegação autônomos (como são denotados os sistemas autônomos inteligentes dedicados ao problema de navegação de robôs) é a Inteligência Artificial (CAZANGI, 2004). A Inteligência Artificial pode ser dividida em duas partes: a IA clássica (tradicional) e a inteligência computacional. A IA clássica reúne técnicas baseadas em lógica proposicional e na manipulação algorítmica de estruturas simbólicas. Já a inteligência computacional, a qual engloba redes neurais artificiais, computação evolutiva, sistemas nebulosos e, mais recentemente, outros mecanismos de computação bio-inspirada, se caracteriza pela síntese de estruturas flexíveis para armazenagem e fluxo de informação, podendo apresentar processamento distribuído, controle descentralizado, auto-organização, não-linearidade, além de recorrer a uma grande variedade de mecanismos de inferência e buscas em espaços de atributos (DE CASTRO & YON ZUBEN, 2004 apud CAZANGI, 2004). Existe um consenso em grande parte da comunidade de pesquisa em sistemas inteligentes de que as técnicas clássicas de IA falham em alguns aspectos relativos à aprendizagem e interação com o ambiente. A maioria desses aspectos tem sido bastante discutida na literatura (CAZANGI, 2004). Note que, neste projeto, quando se fala em sistemas de IA clássica, refere-se a sistemas puramente simbólicos. A principal razão para o problema encontrado na IA clássica é que os 4

Complemento II Noções Introdutória em Redes Neurais

Complemento II Noções Introdutória em Redes Neurais Complemento II Noções Introdutória em Redes Neurais Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

Redes Neurais. Profa. Flavia Cristina Bernardini

Redes Neurais. Profa. Flavia Cristina Bernardini Redes Neurais Profa. Flavia Cristina Bernardini Introdução Cérebro & Computador Modelos Cognitivos Diferentes Cérebro Computador Seqüência de Comandos Reconhecimento de Padrão Lento Rápido Rápido Lento

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial As organizações estão ampliando significativamente suas tentativas para auxiliar a inteligência e a produtividade de seus trabalhadores do conhecimento com ferramentas e técnicas

Leia mais

Pós-Graduação em Engenharia Elétrica Inteligência Artificial

Pós-Graduação em Engenharia Elétrica Inteligência Artificial Pós-Graduação em Engenharia Elétrica Inteligência Artificial João Marques Salomão Rodrigo Varejão Andreão Inteligência Artificial Definição (Fonte: AAAI ): "the scientific understanding of the mechanisms

Leia mais

IC Inteligência Computacional Redes Neurais. Redes Neurais

IC Inteligência Computacional Redes Neurais. Redes Neurais Universidade Federal do Rio de Janeiro PÓS-GRADUAÇÃO / 2008-2 IC Inteligência Computacional Redes Neurais www.labic.nce.ufrj.br Antonio G. Thomé thome@nce.ufrj.br Redes Neurais São modelos computacionais

Leia mais

SISTEMAS INTELIGENTES DE APOIO À DECISÃO

SISTEMAS INTELIGENTES DE APOIO À DECISÃO SISTEMAS INTELIGENTES DE APOIO À DECISÃO As organizações estão ampliando significativamente suas tentativas para auxiliar a inteligência e a produtividade de seus trabalhadores do conhecimento com ferramentas

Leia mais

Módulo 6: Inteligência Artificial

Módulo 6: Inteligência Artificial Módulo 6: Inteligência Artificial Assuntos: 6.1. Aplicações da IA 6.2. Sistemas Especialistas 6.1. Aplicações da Inteligência Artificial As organizações estão ampliando significativamente suas tentativas

Leia mais

PROTÓTIPO DE SOFTWARE PARA APRENDIZAGEM DE REDES NEURAIS ARTIFICIAIS

PROTÓTIPO DE SOFTWARE PARA APRENDIZAGEM DE REDES NEURAIS ARTIFICIAIS Anais do XXXIV COBENGE. Passo Fundo: Ed. Universidade de Passo Fundo, Setembro de 2006. ISBN 85-7515-371-4 PROTÓTIPO DE SOFTWARE PARA APRENDIZAGEM DE REDES NEURAIS ARTIFICIAIS Rejane de Barros Araújo rdebarros_2000@yahoo.com.br

Leia mais

Aula 2 RNA Arquiteturas e Treinamento

Aula 2 RNA Arquiteturas e Treinamento 2COP229 Aula 2 RNA Arquiteturas e Treinamento 2COP229 Sumário 1- Arquiteturas de Redes Neurais Artificiais; 2- Processos de Treinamento; 2COP229 1- Arquiteturas de Redes Neurais Artificiais -Arquitetura:

Leia mais

Relatório de uma Aplicação de Redes Neurais

Relatório de uma Aplicação de Redes Neurais UNIVERSIDADE ESTADUAL DE MONTES CLAROS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE CIÊNCIAS DA COMPUTACAÇÃO ESPECIALIZAÇÃO EM ENGENHARIA DE SISTEMAS DISCIPLINA: REDES NEURAIS PROFESSOR: MARCOS

Leia mais

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001 47 5 Redes Neurais O trabalho em redes neurais artificiais, usualmente denominadas redes neurais ou RNA, tem sido motivado desde o começo pelo reconhecimento de que o cérebro humano processa informações

Leia mais

Assunto 9 : Tecnologias de Inteligência Artificial nos Negócios

Assunto 9 : Tecnologias de Inteligência Artificial nos Negócios Assunto 9 : Tecnologias de Inteligência Artificial nos Negócios Empresas e outras organizações estão ampliando significativamente suas tentativas para auxiliar a inteligência e a produtividade de seus

Leia mais

Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica

Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica João Paulo Teixeira*, José Batista*, Anildio Toca**, João Gonçalves**, e Filipe Pereira** * Departamento de Electrotecnia

Leia mais

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL 1 OBJETIVOS 1. Por que hoje as empresas necessitam de programas de gestão do conhecimento e sistemas para gestão do conhecimento? 2. Quais são as aplicações

Leia mais

UniRitter tecnológica: integrando Engenharias para desenvolvimento de um robô humanoide

UniRitter tecnológica: integrando Engenharias para desenvolvimento de um robô humanoide - SEPesq UniRitter tecnológica: integrando Engenharias para desenvolvimento de um robô humanoide 1. Introdução Diego Augusto de Jesus Pacheco Giovani Geremia Segundo Vargas (2012) é perceptível que uma

Leia mais

Simulador de Redes Neurais Multiplataforma

Simulador de Redes Neurais Multiplataforma Simulador de Redes Neurais Multiplataforma Lucas Hermann Negri 1, Claudio Cesar de Sá 2, Ademir Nied 1 1 Departamento de Engenharia Elétrica Universidade do Estado de Santa Catarina (UDESC) Joinville SC

Leia mais

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL Capítulo 10 GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL 10.1 2003 by Prentice Hall OBJETIVOS Por que hoje as empresas necessitam de programas de gestão do conhecimento e sistemas para gestão do conhecimento?

Leia mais

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS INTRODUÇÃO À COMPUTAÇÃO 60 h 1º Evolução histórica dos computadores. Aspectos de hardware: conceitos básicos de CPU, memórias,

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

Redes Neurais. A IA clássica segue o paradigma da computação simbólica

Redes Neurais. A IA clássica segue o paradigma da computação simbólica Abordagens não simbólicas A IA clássica segue o paradigma da computação simbólica Redes Neurais As redes neurais deram origem a chamada IA conexionista, pertencendo também a grande área da Inteligência

Leia mais

Do neurônio biológico ao neurônio das redes neurais artificiais

Do neurônio biológico ao neurônio das redes neurais artificiais Do neurônio biológico ao neurônio das redes neurais artificiais O objetivo desta aula é procurar justificar o modelo de neurônio usado pelas redes neurais artificiais em termos das propriedades essenciais

Leia mais

IN0997 - Redes Neurais

IN0997 - Redes Neurais IN0997 - Redes Neurais Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br Conteúdo Objetivos Ementa

Leia mais

ORGANIZAÇÃO CURRICULAR

ORGANIZAÇÃO CURRICULAR ORGANIZAÇÃO CURRICULAR O curso Técnico em Informática, em Nível Médio Subseqüente, será organizado de forma semestral, com aulas presenciais, compostos por disciplinas, com conteúdos estabelecidos, tendo

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

Projeto Pedagógico do Bacharelado em Ciência da Computação. Comissão de Curso e NDE do BCC

Projeto Pedagógico do Bacharelado em Ciência da Computação. Comissão de Curso e NDE do BCC Projeto Pedagógico do Bacharelado em Ciência da Computação Comissão de Curso e NDE do BCC Fevereiro de 2015 Situação Legal do Curso Criação: Resolução CONSU no. 43, de 04/07/2007. Autorização: Portaria

Leia mais

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores Máquinas Virtuais e Emuladores Marcos Aurelio Pchek Laureano Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3 componentes: hardware sistema operacional aplicações Sistemas

Leia mais

Nathalie Portugal Vargas

Nathalie Portugal Vargas Nathalie Portugal Vargas 1 Introdução Trabalhos Relacionados Recuperação da Informação com redes ART1 Mineração de Dados com Redes SOM RNA na extração da Informação Filtragem de Informação com Redes Hopfield

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

CENTRO UNIVERSITÁRIO UNIVATES

CENTRO UNIVERSITÁRIO UNIVATES CENTRO UNIVERSITÁRIO UNIVATES REGULAMENTO DE ESTÁGIO CURRICULAR NÃO OBRIGATÓRIO CURSO DE ENGENHARIA DE SOFTWARE, BACHARELADO REGULAMENTO DE ESTÁGIO CURRICULAR NÃO OBRIGATÓRIO Das disposições gerais O presente

Leia mais

Mestrado em Informática, tendo Inteligência Artificial como área de pesquisa.

Mestrado em Informática, tendo Inteligência Artificial como área de pesquisa. André Montevecchi Graduado em Sistemas de Informação. Mestrado em Informática, tendo Inteligência Artificial como área de pesquisa. andre@montevecchi.com.br 1 Agenda Introdução Teste de Turing Robótica

Leia mais

1 Introdução 1.1. Segurança em Redes de Computadores

1 Introdução 1.1. Segurança em Redes de Computadores 1 Introdução 1.1. Segurança em Redes de Computadores A crescente dependência das empresas e organizações modernas a sistemas computacionais interligados em redes e a Internet tornou a proteção adequada

Leia mais

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE CMP1280/CMP1250 Prof. Me. Fábio Assunção Introdução à Engenharia de Software SOFTWARE Programa de computador acompanhado dos dados de documentação e configuração

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

Relatório Iniciação Científica

Relatório Iniciação Científica Relatório Iniciação Científica Ambientes Para Ensaios Computacionais no Ensino de Neurocomputação e Reconhecimento de Padrões Bolsa: Programa Ensinar com Pesquisa-Pró-Reitoria de Graduação Departamento:

Leia mais

Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais

Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais Previsão do Índice da Bolsa de Valores do Estado de São Paulo utilizandoredes Neurais Artificiais Redes Neurais Artificiais Prof. Wilian Soares João Vitor Squillace Teixeira Ciência da Computação Universidade

Leia mais

1 UML (UNIFIED MODELING LANGUAGE)

1 UML (UNIFIED MODELING LANGUAGE) 1 UML (UNIFIED MODELING LANGUAGE) Segundo Tonsig (2003), para conseguir desenvolver um software capaz de satisfazer as necessidades de seus usuários, com qualidade, por intermédio de uma arquitetura sólida

Leia mais

3 Metodologia de Previsão de Padrões de Falha

3 Metodologia de Previsão de Padrões de Falha 3 Metodologia de Previsão de Padrões de Falha Antes da ocorrência de uma falha em um equipamento, ele entra em um regime de operação diferente do regime nominal, como descrito em [8-11]. Para detectar

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Programas e Programação

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

11 Conclusão. 11.1 Descobertas

11 Conclusão. 11.1 Descobertas 97 11 Conclusão 11.1 Descobertas Nesse trabalho apresentamos o McCloud Service Framework, um arcabouço para implementação de serviços baseados na Simulação de Monte Carlo na nuvem, disponibilizamos duas

Leia mais

Revisão Inteligência Artificial ENADE. Prof a Fabiana Lorenzi Outubro/2011

Revisão Inteligência Artificial ENADE. Prof a Fabiana Lorenzi Outubro/2011 Revisão Inteligência Artificial ENADE Prof a Fabiana Lorenzi Outubro/2011 Representação conhecimento É uma forma sistemática de estruturar e codificar o que se sabe sobre uma determinada aplicação (Rezende,

Leia mais

SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO CONCURSO PÚBLICO PARA DOCENTES DO MAGISTÉRIO SUPERIOR Edital nº 1, de 1 de março de

Leia mais

CURSO DE INFORMÁTICA LICENCIATURA 1 PERÍODO

CURSO DE INFORMÁTICA LICENCIATURA 1 PERÍODO CURSO DE INFORMÁTICA LICENCIATURA 1 PERÍODO DISCIPLINA: Metodologia Científica H111900 Finalidade da metodologia científica. Importância da metodologia no âmbito das ciências. Metodologia de estudos. O

Leia mais

Curso de Redes Neurais utilizando o MATLAB

Curso de Redes Neurais utilizando o MATLAB Curso de Redes Neurais utilizando o MATLAB Victoria Yukie Matsunaga Belém-Pará-Brasil 2012 Esta apostila tem como principal objetivo fornecer um material de auxílio ao Curso de Redes Neurais utilizando

Leia mais

A Computação e as Classificações da Ciência

A Computação e as Classificações da Ciência A Computação e as Classificações da Ciência Ricardo de Almeida Falbo Metodologia de Pesquisa Departamento de Informática Universidade Federal do Espírito Santo Agenda Classificações da Ciência A Computação

Leia mais

5 Sistema Experimental

5 Sistema Experimental 5 Sistema Experimental Este capitulo apresenta o sistema experimental utilizado e é composto das seguintes seções: - 5.1 Robô ER1: Descreve o robô utilizado. É dividida nas seguintes subseções: - 5.1.1

Leia mais

Sistemas Operacionais 1/66

Sistemas Operacionais 1/66 Sistemas Operacionais 1/66 Roteiro Máquinas virtuais Emuladores Propriedades Benefícios Futuro 2/66 Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3 componentes: hardware

Leia mais

PALAVRAS CHAVE: Gamificação. Ensino de Programação. Jogos educacionais. Interdisciplinaridade.

PALAVRAS CHAVE: Gamificação. Ensino de Programação. Jogos educacionais. Interdisciplinaridade. O ENSINO DE PROGRAMAÇÃO DE COMPUTADORES BASEADO EM JOGOS * Cristiano da Silveira Colombo Instituto Federal do Espírito Santo RESUMO: As dificuldades encontradas por alunos no processo de ensino-aprendizagem

Leia mais

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano Sistemas Operacionais Marcos Laureano 1/66 Roteiro Máquinas virtuais Emuladores Propriedades Benefícios Futuro 2/66 Sistemas de Computadores Os sistemas de computadores são projetados com basicamente 3

Leia mais

Automação de Bancada Pneumática

Automação de Bancada Pneumática Instituto Federal Sul-rio-grandense Campus Pelotas - Curso de Engenharia Elétrica Automação de Bancada Pneumática Disciplina: Projeto Integrador III Professor: Renato Allemand Equipe: Vinicius Obadowski,

Leia mais

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas INEB- PSI Technical Report 2007-2 Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas Alexandra Oliveira aao@fe.up.pt Professor Joaquim Marques de Sá December

Leia mais

A PROBLEMATIZAÇÃO COMO ESTRATÉGIA METODOLÓGICA

A PROBLEMATIZAÇÃO COMO ESTRATÉGIA METODOLÓGICA A PROBLEMATIZAÇÃO COMO ESTRATÉGIA METODOLÓGICA Jeferson Luiz Appel Dar-se-ia mais significação aos conteúdos conceituais a serem aprendidos pelos alunos pela necessidade de esses adquirirem um novo conhecimento

Leia mais

Visão computacional no reconhecimento de formas e objetos

Visão computacional no reconhecimento de formas e objetos Visão computacional no reconhecimento de formas e objetos Paula Rayane Mota Costa Pereira*, Josemar Rodrigues de Souza**, Resumo * Bolsista de Iniciação Científica da Faculdade de Tecnologia SENAI CIMATEC,

Leia mais

CAPÍTULO 7 O SERVIÇO DOS AGENTES

CAPÍTULO 7 O SERVIÇO DOS AGENTES CAPÍTULO 7 O SERVIÇO DOS AGENTES A inteligência... é a capacidade de criar objetos artificiais, especialmente ferramentas para fazer ferramentas. ( Henri Bergson) O serviço dos agentes surge como uma prestação

Leia mais

Como usar a robótica pedagógica aplicada ao currículo

Como usar a robótica pedagógica aplicada ao currículo 1 Congresso sobre práticas inovadoras na educação em um mundo impulsionado pela tecnologia Workshop: Como usar a robótica pedagógica aplicada ao currículo Palestrante: João Vilhete Viegas d'abreu Núcleo

Leia mais

Engenharia de Software

Engenharia de Software CENTRO UNIVERSITÁRIO NOVE DE JULHO Profº. Edson T. França edson.franca@uninove.br Software Sistemas Conjunto de elementos, entre os quais haja alguma relação Disposição das partes ou dos elementos de um

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado Sistema Tutor Inteligente baseado em Agentes na Plataforma MOODLE para Apoio às Atividades Pedagógicas da Universidade Aberta do Piauí Prof. Dr. Vinicius Ponte Machado Parnaíba, 14 de Novembro de 2012

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO MP1 DATA 05/03/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

SLAG - Resolvendo o Problema do Caixeiro Viajante Utilizando Algoritmos Genéticos

SLAG - Resolvendo o Problema do Caixeiro Viajante Utilizando Algoritmos Genéticos SLAG - Resolvendo o Problema do Caixeiro Viajante Utilizando Algoritmos Genéticos Fredson Vieira Costa 1, Fábio Silveira Vidal 1, Claudomiro Moura Gomes André 1 1 Curso de Bacharelado em Ciência da Computação

Leia mais

Características do Software

Características do Software Questionamentos Por que tanta demora para entregar? Por que os prazos se atrasam? Por que os custos são altos? Por que não achar todos os erros antes de entregar? Por que dificuldade em medir o progresso

Leia mais

UNIVERSIDADE FEDERAL DE PERNAMBUCO - PRÓ-REITORIA PARA ASSUNTOS ACADÊMICOS CURRÍCULO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO PERFIL

UNIVERSIDADE FEDERAL DE PERNAMBUCO - PRÓ-REITORIA PARA ASSUNTOS ACADÊMICOS CURRÍCULO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO PERFIL PERFIL 3001 - Válido para os alunos ingressos a partir de 2002.1 Disciplinas Obrigatórias Ciclo Geral Prát IF668 Introdução à Computação 1 2 2 45 MA530 Cálculo para Computação 5 0 5 75 MA531 Álgebra Vetorial

Leia mais

DESENVOLVENDO HABILIDADES E CONSTRUINDO CONHECIMENTOS NO AMBIENTE VIRTUAL CYBERNAUTAS. Maio/2005 216-TC-C3

DESENVOLVENDO HABILIDADES E CONSTRUINDO CONHECIMENTOS NO AMBIENTE VIRTUAL CYBERNAUTAS. Maio/2005 216-TC-C3 1 DESENVOLVENDO HABILIDADES E CONSTRUINDO CONHECIMENTOS NO AMBIENTE VIRTUAL CYBERNAUTAS Maio/2005 216-TC-C3 José Antonio Gameiro Salles UNISUAM / CCET / Desenv. de Softwares & UNISUAM/LAPEAD - antoniosalles@gmail.com

Leia mais

Tópicos. Engenharia de Software: Uma Visão Geral

Tópicos. Engenharia de Software: Uma Visão Geral Tópicos 2 3 Engenharia de Software: Uma Visão Geral SCE 186 - Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestre de 2002 A importância do Software Software Aplicações

Leia mais

Virtual Welding. Treinamento do futuro

Virtual Welding. Treinamento do futuro Virtual Welding Treinamento do futuro Aprendizagem real via simulador 100% seguro Economia de recursos O pacote de sucesso GERAL O treinamento em soldagem tem agora um novo nome: Fronius Virtual Welding

Leia mais

Projeto de Redes Neurais e MATLAB

Projeto de Redes Neurais e MATLAB Projeto de Redes Neurais e MATLAB Centro de Informática Universidade Federal de Pernambuco Sistemas Inteligentes IF684 Arley Ristar arrr2@cin.ufpe.br Thiago Miotto tma@cin.ufpe.br Baseado na apresentação

Leia mais

NOTA À 2ª EDIÇÃO... VII PREFÁCIO... IX. No Renascimento de uma Nova Era... IX PREÂMBULO... XIII. Organização do livro... xiii. Destinatários...

NOTA À 2ª EDIÇÃO... VII PREFÁCIO... IX. No Renascimento de uma Nova Era... IX PREÂMBULO... XIII. Organização do livro... xiii. Destinatários... NOTA À 2ª EDIÇÃO... VII PREFÁCIO... IX No Renascimento de uma Nova Era... IX Índice PREÂMBULO... XIII Organização do livro... xiii Destinatários... xiv Utilização do livro... xiv Agradecimentos... xiv

Leia mais

UMA BREVE INTRODUÇÃO AO ESTUDO E IMPLEMENTAÇÃO DE COMPILADORES

UMA BREVE INTRODUÇÃO AO ESTUDO E IMPLEMENTAÇÃO DE COMPILADORES UMA BREVE INTRODUÇÃO AO ESTUDO E IMPLEMENTAÇÃO DE COMPILADORES 1 BRANCO; Guido Aparecido Junior, 2 TAMAE, Rodrigo Yoshio 1-Discente do Curso Sistemas de Informação FAEG/Garça 2-Docente do Curso Sistemas

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

EMENTAS DAS DISCIPLINAS

EMENTAS DAS DISCIPLINAS EMENTAS DAS DISCIPLINAS CURSO CST ANÁLISE E DESENVOLVIMENTO DE SISTEMAS INTRODUÇÃO À COMPUTAÇÃO 68 A disciplina estuda a área da informática como um todo e os conceitos fundamentais, abrangendo desde a

Leia mais

Observatórios Virtuais

Observatórios Virtuais UNIVASF: UNIVERSIDADE FEDERAL DO VALE SÃO FRANCISCO TRABALHO DE ASTROFÍSICA ALUNO: PEDRO DAVID PEDROSA PROFESSOR: MILITÃO CURSO: MESTRADO NACIONAL PROFISSIONAL EM ENSINO DE FÍSICA Observatórios Virtuais

Leia mais

Desenvolvimento de uma Rede de Distribuição de Arquivos. Development of a File Distribution Network

Desenvolvimento de uma Rede de Distribuição de Arquivos. Development of a File Distribution Network Desenvolvimento de uma Rede de Distribuição de Arquivos Development of a File Distribution Network Desenvolvimento de uma Rede de Distribuição de Arquivos Development of a File Distribution Network Talles

Leia mais

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS PDS - DATASUS Processo de Desenvolvimento de Software do DATASUS Coordenação Geral de Arquitetura e Engenharia Tecnológica Coordenação de Padronização e Qualidade de Software Gerência de Padrões e Software

Leia mais

Unidade 4: Contextualização de Objetos de Aprendizagem

Unidade 4: Contextualização de Objetos de Aprendizagem Coordenação: Juliana Cristina Braga Autoria: Rita Ponchio Você aprendeu na unidade anterior a importância da adoção de uma metodologia para a construção de OA., e também uma descrição geral da metodologia

Leia mais

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS Elicitação Ciclo de Vida Clássico ou Convencional O Modelo Cascata Análise Ana Paula Terra Bacelo Blois Implementação Material Adaptado do Prof. Marcelo Yamaguti

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Processos I: Threads, virtualização e comunicação via protocolos Prof. MSc. Hugo Souza Nesta primeira parte sobre os Processos Distribuídos iremos abordar: Processos e a comunicação

Leia mais

Introdução a computação móvel. Middlewares para Rede de Sensores sem Fio. Uma avaliação na ótica de Adaptação ao Contexto

Introdução a computação móvel. Middlewares para Rede de Sensores sem Fio. Uma avaliação na ótica de Adaptação ao Contexto Introdução a computação móvel Monografia: Middlewares para Rede de Sensores sem Fio Uma avaliação na ótica de Adaptação ao Contexto Adriano Branco Agenda Objetivo do trabalho O que é uma WSN Middlewares

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

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Tipos de SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução 2 n As organizações modernas competem entre si para satisfazer as necessidades dos seus clientes de um modo

Leia mais

USO DA ARQUITETURA AURA - AUTONOMOUS ROBOT ARCHITECTURE EM UM ROBÔ EXPLORADOR DE LABIRINTO CONTROLADO POR RASPBERRY PI.

USO DA ARQUITETURA AURA - AUTONOMOUS ROBOT ARCHITECTURE EM UM ROBÔ EXPLORADOR DE LABIRINTO CONTROLADO POR RASPBERRY PI. USO DA ARQUITETURA AURA - AUTONOMOUS ROBOT ARCHITECTURE EM UM ROBÔ EXPLORADOR DE LABIRINTO CONTROLADO POR RASPBERRY PI. Resumo João Paulo Fernandes da Silva¹, Willame Balbino Bonfim 1. joaopauloibge@hotmail.com

Leia mais

Pedagogia. Objetivos deste tema. 3 Sub-temas compõem a aula. Tecnologias da informação e mídias digitais na educação. Prof. Marcos Munhoz da Costa

Pedagogia. Objetivos deste tema. 3 Sub-temas compõem a aula. Tecnologias da informação e mídias digitais na educação. Prof. Marcos Munhoz da Costa Pedagogia Prof. Marcos Munhoz da Costa Tecnologias da informação e mídias digitais na educação Objetivos deste tema Refletir sobre as mudanças de experiências do corpo com o advento das novas tecnologias;

Leia mais

Controle de robôs industriais via Labview

Controle de robôs industriais via Labview Leonel Lopes Lima Neto Instituto Tecnológico de Aeronáutica Rua H20B, casa, nº 114, Campus do CTA São José dos Campos São Paulo 12.228-460 Bolsista PIBIC-CNPq leonel@aluno.ita.br Emilia Villani Instituto

Leia mais

Doenças cardiovasculares constituem um dos maiores problemas que afligem a

Doenças cardiovasculares constituem um dos maiores problemas que afligem a 18 1 INTRODUÇÃO Doenças cardiovasculares constituem um dos maiores problemas que afligem a população dos países industrializados. Essas doenças são responsáveis por mais de cinco milhões de pessoas hospitalizadas

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO. IF Farroupilha Campus Santo Augusto; e-mail: joaowinck@hotmail.

CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO. IF Farroupilha Campus Santo Augusto; e-mail: joaowinck@hotmail. CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO WINCK, João Aloísio 1 RISKE, Marcelo Augusto 2 AVOZANI, Mariel 3 CAMBRAIA, Adão Caron 4 FINK, Marcia 5 1 IF Farroupilha Campus

Leia mais

- Aula 1 - ARQUITETURA DE COMPUTADORES

- Aula 1 - ARQUITETURA DE COMPUTADORES - Aula 1 - ARQUITETURA DE COMPUTADORES Em arquitetura de computadores serão estudados aspectos da estrutura e do funcionamento dos computadores. O objetivo é apresentar de forma clara e abrangente a natureza

Leia mais

Um Assistente Virtual Inteligente Dirigido por Várias Metodologias Educacionais no Ensino em Informática

Um Assistente Virtual Inteligente Dirigido por Várias Metodologias Educacionais no Ensino em Informática Um Assistente Virtual Inteligente Dirigido por Várias Metodologias Educacionais no Ensino em Informática Abstract. This work shows the evolution of Intelligent Teaching Assistant SAE that include and provide

Leia mais

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores SISTEMAS OPERACIONAIS Maquinas Virtuais e Emuladores Plano de Aula Máquinas virtuais Emuladores Propriedades Benefícios Futuro Sistemas de Computadores Os sistemas de computadores são projetados com basicamente

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

Gerenciamento de Redes

Gerenciamento de Redes Gerenciamento de Redes As redes de computadores atuais são compostas por uma grande variedade de dispositivos que devem se comunicar e compartilhar recursos. Na maioria dos casos, a eficiência dos serviços

Leia mais

APLICAÇÃO DE MAPAS MENTAIS DURANTE O BRAINSTORM DE UM JOGO DIGITAL

APLICAÇÃO DE MAPAS MENTAIS DURANTE O BRAINSTORM DE UM JOGO DIGITAL APLICAÇÃO DE MAPAS MENTAIS DURANTE O BRAINSTORM DE UM JOGO DIGITAL Davi Shinji Mota Kawasaki (PIBIC/Fundação Araucária), José Augusto Fabri (Orientador), e-mail: davishinjik@gmail.com; fabri@utfpr.edu.br.

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Computação BioInspirada

Computação BioInspirada Computação BioInspirada Os Engenheiros da Natureza Fabrício Olivetti de França The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore

Leia mais