Técnicas de IA Aplicadas a Sistemas Multiagentes Cooperativos e Competitivos. Jan Segre Victor Bramigk

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Técnicas de IA Aplicadas a Sistemas Multiagentes Cooperativos e Competitivos. Jan Segre Victor Bramigk"

Transcrição

1 MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA (Real Academia de Artilharia, Fortificação e Desenho/1792) CURSO DE GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO Jan Segre Victor Bramigk Técnicas de IA Aplicadas a Sistemas Multiagentes Cooperativos e Competitivos Rio de Janeiro Julho de 2014

2 Instituto Militar de Engenharia Técnicas de IA Aplicadas a Sistemas Multiagentes Cooperativos e Competitivos Projeto Final de Curso de Graduação em Engenharia de Computação do Instituto Militar de Engenharia. Orientador: Paulo Fernando Ferreira Rosa Coorientador: Bruno Eduardo Madeira Rio de Janeiro Julho de 2014

3 INSTITUTO MILITAR DE ENGENHARIA Praça General Tibúrcio, 80 - Praia Vermelha Rio de Janeiro-RJ CEP Este exemplar é de propriedade do Instituto Militar de Engenharia, que poderá incluí-lo em base de dados, armazenar em computador, microfilmar ou adotar qualquer forma de arquivamento. É permitida a menção, reprodução parcial ou integral e a transmissão entre bibliotecas deste trabalho, sem modificação de seu texto, em qualquer meio que esteja ou venha a ser fixado, para pesquisa acadêmica, comentários e citações, desde que sem finalidade comercial e que seja feita a referência bibliográfica completa. Os conceitos expressos neste trabalho são de responsabilidade do(s) autor(es) e do(s) orientador(es) Segre, Jan S455h Técnicas de IA aplicadas a sistemas multiagentes cooperativos e competitivos / Jan Segre,Victor Bramigk; orientados por Paulo Fernando Ferreira Rosa - Rio de Janeiro: Instituto Militar de Engenharia, p. : il. Projeto de Fim de Curso (PFC) - Instituto Militar de Engenharia - Rio de Janeiro, Curso de engenharia da computação - Projeto Final de Curso. 2. Robótica. 3. Minimax. I. Bramigk, Victor. II. Rosa, Paulo Fernando Ferreira. III. Bruno Eduardo Madeira. IV. title. V. Instituto Militar de Engenharia.

4 Instituto Militar de Engenharia Jan Segre Victor Bramigk Técnicas de IA Aplicadas a Sistemas Multiagentes Cooperativos e Competitivos Projeto Final de Curso de Graduação em Engenharia de Computação do Instituto Militar de Engenharia. Orientador: Paulo Fernando Ferreira Rosa Aprovado em 18 de novembro de 2014 pela seguinte Banca Examinadora: Paulo Fernando Ferreira Rosa - Ph.D., do IME Orientador Bruno Eduardo Madeira - M.Sc., do IME Julio Cesar Duarte - D.Sc., do IME Rio de Janeiro Julho de 2014

5 Resumo Este trabalho apresenta um sistema de controle de um time da Small Size League (SSL) de futebol de robôs para a equipe RoboIME (que representa o IME nessa competição) utilizando um algoritmo Minimax. Os times da SSL normalmente são comandados por heurísticas puras. Isso restringe o movimento dos robôs a um determinado conjunto fixo de comportamentos, restringindo as jogadas possíveis. O objetivo deste trabalho é implementar esse sistema de modo que tenha desempenho pelo menos comparável à inteligência que vem sendo usada pela RoboIME (chamada pyroboime), que é heurística. Para utilizar um algoritmo Minimax é necessário abstrair o jogo de modo que se possa simular mais situações e permitir que várias sequências de jogadas possam ser consideradas em tempo real, por se tratar de um ambiente dinâmico. Assim, um jogo contínuo é abstraído em um discreto e sequencial, semelhante a um jogo de xadrez. Partindo-se desta abstração, é construido um algoritmo minimax. Com o propósito de verificar a viabilidade dessa abordagem, foi implementa uma arquitetura de controle baseada em um modelo discreto sequencial do jogo. Como plataforma de testes, é utilizada parte da pyroboime, que resolve o problema de controle físico dos robôs. Com resultados futuros, será desenvolvido um algoritmo de planejamento superior ao utilizado atualmente no pyroboime. Palavras-chaves: inteligência artificial, minimax, robótica, robocup.

6 Abstract This work presents a control system for robot soccer team of the Small Size League (SSL) for the RoboIME team (which stands for IME on that competition) using a Minimax algorithm. The teams of SSL are usually controlled by plain heuristics. That restricts the movement of the robots to a limited set of behaviours, shortening the range of possible plays. The objective of this work is to implement that system in such a way that its performance is at least comparable to that of the current intelligence being used by RoboIME (namely pyroboime), which is heuristic. For using a Minimax algorithm it is necessary to abstract the game in such a way that it can reach a whole range of moves in real time using few steps. In that manner a continous game is abstracted into a discrete sequential one, similar to chess. Based off that abstraction the Minimax algorithm is built. With the purpose of verifying the feasability of this approach, a control architecture has been implemented on top of a discrete sequential model of the game. As a test platform part of pyrobime is used, which solves the issue of controlling the real robots. With future results a planning algorithm will be developed superior to the one currently in use on pyroboime. Key-words: artificial intelligence, minimax, robotics, robocup.

7 Sumário 1 INTRODUÇÃO Motivação Objetivo Justificativa Metodologia Estrutura DESENVOLVIMENTO DO PROBLEMA E TÓPICOS TUTORIAIS Arquitetura Definições Minimax Exemplo EXPERIÊNCIA COM IMPLEMENTAÇÕES PRÉVIAS Abordagens Objetivos de longo prazo Problemas aprendidos Proposta de solução Minimax para robôs omnidirecionais Problemas Ideias Considerações MAPEAMENTO DE JOGO CONTÍNUO PARA UM JOGO DISCRETO Introdução Representação do jogo Execução do planejamento PROGRAMA Introdução Arquitetura do programa Processo do Minimax Pyroboime Métricas de avaliação CRONOGRAMA

8 7 CONCLUSÃO Referências

9 Lista de ilustrações Figura 1 Imagem da SSL RoboCup 2013 em Eindhoven, na Holanda Figura 2 Arquitetura básica da SSL Figura 3 Árvore do Minimax para o jogo da velha Figura 4 Arquitetura simplificada do sistema de controle Figura 5 Fluxo do processo minimax

10 Lista de abreviaturas e siglas IA SSL Robocup RoboIME Inteligência Artificial Small Size League Robotics World Cup Equipe de alunos do Laboratório de Robótica do IME

11 10 1 Introdução A robótica é um ramo da tecnologia que lida com a concepção, construção, operação e aplicação de máquinas capazes de realizar uma série de ações de maneira autônoma. Atualmente é um tópico em rápida ascensão. Pesquisar, projetar e fábricar novos robôs serve vários propósitos práticos tais como domésticos, comerciais e militares. Um dos problemas atuas da robótica é o planejamento em ambientes multiagentes dinâmicos e competitivos. Um exemplo um problema dessa classe é um jogo de futebol de robôs, onde um grupo de robôs é controlado por uma IA independente. A figura 1 mostra uma imagem da Robocup 2013, competição internacional de robótica, onde a equipe RoboIME (de alunos do Laboratório de Robótica do IME) participou. Figura 1 Imagem da SSL RoboCup 2013 em Eindhoven, na Holanda Devido a alta complexidade desses ambientes, não é viável o planejamento considerando diretamente as leis físicas. Como consequência, limita-se as ações possíveis do robô no modelo utilizado no planejamento para que se possa simular mais situações em tempo hábil, uma vez que o ambiente está continuamente sujeito a modificações. Entretanto, para que as simulações sejam válidas, o robô real deve estar em sintonia com seu modelo. Com efeito, o robô real deve executar os comandos conforme o robô simulado, caso o mesmo ambiente simulado seja encontrado na prática. A ideia de robôs jogando futebol foi mencionada pela primeira vez pelo professor Alan Mackworth (University of British Columbia, Canadá) em um artigo intitulado "On Se-

12 11 eing Robots", apresentado no Vision Interface 92 e posteriormente publicado em um livro chamado Computer Vision: System, Theory and Applications (BASU, 1993). Independentemente, um grupo de pesquisadores japoneses organizou um Workshop no Ground Challenge in Artificial Intelligence, em Outubro de 1992, Tóquio, discutindo e propondo problemas que representavam grandes desafios. Esse Workshop os levou a sérias discussões sobre usar um jogo de futebol para promover ciência e tecnologia. Estudos foram feitos para analisar a viabilidade dessa ideia. Os resultados desses estudos mostram que a ideia era viável, desejável e englobava diversas aplicações práticas. Em 1993, um grupo de pesquisadores, incluindo Minoru Asada, Yasuo Kuniyoshi e Hiroaki Kitano, lançaram uma competição de robótica chamada de Robot J-League (fazendo uma analogia à J-League, nome da Liga Japonesa de Futebol Profissional). Em um mês, vários pesquisadores já se pronunciavam dizendo que a iniciativa deveria ser estendida ao âmbito internacional. Surgia então, a Robot World Cup Initiative (RoboCup). RoboCup é uma competição destinada a desenvolver os estudos na área de robótica e Inteligência Artificial (IA) por meio de uma competição amigável. Além disso, ela tem como objetivo, até 2050, desenvolver uma equipe de robôs humanoides totalmente autônomos capazes de derrotar a equipe campeã mundial de futebol humano. A competição possui várias modalidades. Neste trabalho, será analisada a Small Size Robot League (SSL), também conhecida como F180. De acordo com as regras da SSL de 2013, as equipes devem ser compostas por 6 robôs, sendo um deles o goleiro, que deve ser designado antes do início do jogo. Durante o jogo, nenhuma interferência humana é permitida com o sistema de controle dos robôs. É fornecido aos times um sistema de visão global e esses controlam seus robôs com máquinas próprias. O sistema de controle dos robôs geralmente é externo e recebe os dados de um conjunto de duas câmeras localizadas acima do campo. Esse sistema de controle processa os dados, determina qual comando deve ser executado por cada robô e envia este comando através de ondas de rádio aos robôs. 1.1 Motivação O futebol de robôs, problema padrão de investigação internacional, reúne grande parte dos desafios presentes em problemas do mundo real a serem resolvidos em tempo real. As soluções encontradas para o futebol de robôs podem ser estendidas, possibilitando o uso da robótica em locais de difícil acesso para humanos, ambientes insalubres e situações de risco de vida iminente. Há diversas novas áreas de aplicação da robótica, tais como exploração espacial e submarina, navegação em ambientes inóspitos e perigosos, serviço de assistência médica e cirúrgica, além do setor de entretenimento. Essas áreas podem ser beneficiadas com o desenvolvimento de sistemas multi robôs. Nestes domínios de aplicação, sistemas de multi robôs deparam-se sempre com tarefas muito difíceis de serem

13 12 efetuadas por um único robô. Um time de robôs pode prover redundância e contribuir cooperativamente para resolver o problema em questão. Com efeito, eles podem resolver o problema de maneira mais confiável, mais rápida e mais econômica, quando comparado com o desempenho de um único robô. Devido a alta complexidade de sistemas multiagentes dinâmicos, torna-se necessário um modelo simplificado para que sejam executadas o maior número de simulações possível. Caso seja possível uma discretização, ter-se-á um número finito de casos para serem avaliados. Com isso, pode-se aplicar algoritmos como o Minimax (discutido no capítulo 2) para encontrar soluções ao problema. Isso é muito mais desejável que um modelo heurístico de IA, onde as soluções são criadas com base nos ambientes identificados pelos modeladores. Isso, pois a modelagem puramente heurística limita o número de jogadas que se pode executar e limita a capacidade que o computador tem de testar um grande número de possibilidades. 1.2 Objetivo O objetivo deste trabalho é desenvolver um algoritmo de controle para o futebol de robôs que obtenha um desempenho melhor que o utilizado atualmente, de acordo com a performance em um conjunto de partidas. Como objetivos intermediário, este trabalho objetiva criar um modelo discreto sequencial para o problema do futebol de robôs, que é um jogo contínuo de soma zero. A partir desta discretização, pretende-se desenvolver uma arquitetura de controle com base no algoritmo minimax para se planejar jogadas. 1.3 Justificativa Uma arquitetura de controle que simule os diversos ambientes dinamicamente de maneira sequencial de um ambiente multiagente permite que várias jogadas sejam criadas dinamicamente, diferentemente de uma arquitetura estática baseada em uma heurística. Essa abordagem heurística é legada da maneira como estratégias são planejadas nos times de futebol humano. Com tal mecanismo é possível melhorar a IA em uso pela RoboIME para tomar decisões que levem a resultados melhores e, como consequência, ganhar mais partidas. Nenhuma equipe atualmente esta seguindo esta abordagem, mas os autores acreditam que essa é uma linha de pesquisa promissora.

14 Metodologia Para atingir os objetivos propostos será seguida a seguinte metodologia. Inicialmente a arquitetura do futebol de robôs considerada neste trabalho é detalhada, juntamente com definições de termos relevantes para este trabalho. A seguir, a teoria sobre jogos será revisada. São apresentados também alguns dados empíricos observados com testes informais realizados anteriormente. Em sequência, um modelo abstrato do futebol de robôs é proposto para que seja aplicado o algoritmo minimax. A partir deste modelo uma arquitetura de controle é desenvolvida. Em seguida são definidas métricas para comparar a arquitetura anteriormente utilizada com a arquitetura atual. Finalmente são apresentadas as conclusões parciais do projeto. 1.5 Estrutura No capítulo 2, a arquitetura do futebol de robôs considerada é detalhada. A seguir são apresentadas definições de conceitos utilizados ao longo do trabalho. Posteriormente, a teoria dos jogos é revisada. No capítulo 3 e são apresentados alguns dados empíricos observados anteriormente. No capítulo 4, um modelo abstrato do futebol de robôs é proposto. No capítulo 5, uma arquitetura de controle é desenvolvida com base no modelo proposto anteriormente. Também são criadas métricas para comparar os resultados obtidos com a nova arquitetura. No capítulo 6, o planejamento das próximas atividades é apresentado. No capítulo 7, são apresentadas as principais conclusões atingidas neste trabalho.

15 14 2 Desenvolvimento do Problema e Tópicos Tutoriais 2.1 Arquitetura A arquitetura a ser considerada é baseada em (AMARAL; ALMEIDA, 2011). A RoboCup Small Size League (SSL) envolve problemas de diversas áreas da engenharia. Logo, com o objetivo de facilitar a compreensão do problema, a arquitetura a ser considerada é apresentada na figura 2. Essa arquitetura é composta pelos seguintes sistemas: Câmeras Visão: conjunto de câmeras firewire que captura as imagens do campo e as envia para a SSL-Vision; Comunicação: módulo responsável por receber os parâmetros dos motores, drible, chute baixo e chute alto e enviar o comando via ondas de rádio para os robôs; Execução: módulo responsável por realizar a tomada de decisões em baixo nível de quais ações os robôs devem realizar a partir da decisão tomada pelo módulo de inteligência; Inteligência: módulo responsável por realizar a tomada de decisão em alto nível de quais ações os robôs devem realizar tendo auxílio de um módulo de Simulação; Mundo Real: campo de futebol real, onde os times 1 e 2 interagem através de seus respectivos robôs Referee-Box: software padronizado pela Robocup para que as regras da competição sejam cumpridas sem que haja intervenção humana excessiva durante uma partida; Simulação: módulo do software do time responsável por simular o ambiente da partida, tendo como entrada os parâmetros do mundo real; Software Time 1/2: software do time 1/2; SSL-Vision: software padronizado pela Robocup que permite a integração com um conjunto de câmeras firewire que capturam imagens do campo e as processa, extraindo informações de posicionamento dos robôs e da bola contidas nessas imagens; Time 1/2: time de robôs que executa os comandos recebidos pelo sistema de transmissão do time 1/2;

16 15 Transmissão 1/2: sistema de transmissão do time 1/2; World Model: módulo responsável por modelar o mundo provendo consistência aos dados que serão enviados ao módulo de Inteligência e são oriundos do Referee-Box e SSL-Vision.

17 Figura 2 Arquitetura básica da SSL 16

18 Definições Definição (Corpo Rígido). Um corpo rígido r é definido por dois subconjuntos disjuntos de parâmetros r = ^r, r em que: ^r = α, β, γ, ω, que são os parâmetros de estado mutáveis, respectivamente: posição (R 3 ), orientação (R 3 ), velocidade linear (R 3 ), velocidade angular (R 3 ) r : parâmetros imutáveis do corpo que descrevem sua natureza fixa e que permanecem constantes ao longo do curso de planejamento. Exemplos de parâmetros considerados nesta modelagem imutáveis são: coeficiente de atrito estático e dinâmico, descrição 3D do corpo (por exemplo, por meio de um conjunto de primitivas 3D), centro de massa no referencial do corpo, coeficiente de restituição, coeficiente de amortecimento linear e angular. Definição (Bola). Bola é um corpo rígido ^b, no qual somente as componentes x, y do parâmetro ^b.α são observáveis. De acordo com a arquitetura considerada para a SSL descrita na figura 2, tem-se que, a partir de uma sequência de quadros, é possível obter um valor estimado para o parâmetro ^b.γ a partir do intervalo entre os dados recebidos da SSL-Vision e da equação γ Δα Δt. Entretanto, uma vez que a componente z de ^b.α não é observável, ^b.γ.z não pode ser estimada a partir do intervalo entre os dados recebidos da SSL-Vision. Semelhantemente, uma vez que o parâmetro ^b.β também não pode ser observado, não se pode estimar o valor de ^b.ω com exatidão. Definição (Robô). Robô rob é um conjunto de sistemas compostos de corpos rígidos, hardware e firmware. Neste trabalho será considerado que o robô tem os seguintes sistemas: Drible: imprime um torque a bola; Chute baixo: imprime uma força à bola ^b e, possivelmente, um torque, com o objetivo de alterar as componentes x, y do parâmetro ^b.γ; Chute alto: imprime uma força à bola ^b e, possivelmente, um torque, com o objetivo de alterar as componentes x, y, z do parâmetro ^b.γ, com ^b.γ z 0; Receptor: recebe comandos enviados pelo sistema de transmissão de seu respectivo time;

19 18 Sistema de movimentação: imprime uma força e um torque ao centro de massa global do rob; Por meio desses sistemas, cada robô rob pode executar um conjunto de ações A rob. Apesar de o modelo descrito acima abranger a maioria dos robôs utilizados atualmente por equipes da SSL, é importante ressaltar que o robô pode ter um conjunto de sensores que poderiam coletar informações adicionais às transmitidas pela SSL-Vision juntamente com um sistema de transmissão para enviá-las ao software do seu respectivo time. Isso é interessante, pois, conforme observado na definição 2.2.2, o parâmetro ^b.β não é observável. Como o sistema de drible impõe um torque à bola, por meio de um sensor, é possível estimar o valor de ^b.ω. Sem esse sensor, não é possível prever com exatidão a trajetória da bola somente com informações de simulação ou da visão. Definição (Time). Sejam os seguintes parâmetros: Rob c o conjunto dos robôs controlados; Rob i o conjunto dos robôs inimigos, isto é, não controlados; X o espaço de estado de todos os corpos rígidos envolvidos na partida considerada; x init X o estado inicial; X goal X o conjunto de estados objetivo; x i ob os estados observados pelo módulo SSL-Vision no instante i; Xob i = {x 0 ob = x init,..., x i ob}; Sk A rob um conjunto de skills; prob : X [0, 1] uma distribuição de probabilidade, cujo argumento é x X; tk = G(V Sk, E prob) o conjunto de todas as táticas possíveis formadas a partir de grafos orientados, em que os vértices são skills sk Sk e as arestas são prob associadas a possibilidade de ocorrerem as transições entre uma skill e outra; A c = A rob1 A robnc o conjunto das ações possíveis de Rob c ; A i = A rob1 A robni o conjunto das ações possíveis de Rob i ; A = A c A i o conjunto das ações possíveis de Rob c Rob i ; e : x, a x a função de transição de estado que pode aplicar uma ação a A em um estado particular x X e computar o estado seguinte x X;

20 19 f U : X R + {0} uma função utilidade tal que f U (x) mede a utilidade do estado x X um entre estados do mundo dado os estados; r i : A i, X i ob a i o modelo de reação dos robôs inimigos dado X i ob; AB = {V X, E A} uma árvore de busca; e b : X i ob, e, f U, r i, AB AB uma estratégia de busca. Então, um time T é definido por: T : A, X i ob, e, e b, r i a i+1 c Assim, utilizando-se de e, T simula várias sequência de ações a c dado X i ob a partir de f U e e b. Definição (Partida). Dado dois times T 1 e T 2. Uma partida p é definida por: p = {T 1, T 2, Δt, δt, Ref 0, X 0 ob, A 0 1, A 0 2,..., Ref N, X N ob, A N 1, A N 2 } uma sequência, em que: Δt é o tempo de duração da partida; δt é o tempo médio entre cada frame enviado pela SSL-Vision ao longo de Δt; N Δt δt é número total de frames enviados pela SSL-Vision ao longo de Δt; Ref i são os comandos enviados pelo módulo Referee-Box no instante i; Xob i são os dados enviados pelo módulo SSL-Vision no instante i; A i 1 são as ações executadas por T 1 no instante i; A i 2 são as ações executadas por T 2 no instante i. Definição (Logs). Dada uma partida p. O log de p é definidor por: log(p) = {p. Ref 0, X 0 ob,..., p. Ref N, X N ob }

21 Minimax Minimax é um algoritmo que visa minimizar a perda máxima, isto é, dentre o pior caso de cada possível decisão aquele que levar ao menor prejuízo. Originalmente formulado para um jogo de soma zero de dois jogadores, o Minimax já foi estendido para jogos mais complexos e decisões gerais em situações de incerteza. O princípio do minimax se aplica a um jogo Γ = A, B, H se a equação 2.1 for satisfeita, isto é, se existe uma valoração v para o jogo e uma estratégia ótima para ambos jogadores. (HAZEWINKEL, 2002) v = max min a A b B H(a, b) = min max b B a A H(a, b) (2.1) Em que A e B são as estratégias dos jogadores 1 e 2 respectivamente e H é a função de utilidade que é positiva quando o jogador 1 está ganhando. Entrada: estado, jogador {MIN, MAX} Saída: decisão possíveis próximos estados Valor(estado, jogador) := início se estado é final então retorna Utilidade(estado); fim se jogador = MAX então valor máximo de Valor(proxEstado, MIN ) : proxestado Próximos(estado); senão valor mínimo de Valor(proxEstado, MAX) : proxestado Próximos(estado); fim retorna valor; fim se jogador = MAX então decisão proxestado com máximo Valor(proxEstado, M IN); senão decisão proxestado com mínimo Valor(proxEstado, M AX); fim retorna decisão; Algoritmo 1: Pseudocódigo para tomada de decisão com o Minimax. O algoritmo 1 é um exemplo de pseudocódigo para o Minimax cujo funcionamento é o seguinte: é definido uma rotina recursiva que fará retornará um valor para um dado estado e seu jogador atual assumindo jogadas alternadas; tal rotina irá escolher o máximo ou mínimo do valor dos próximos estados possíveis baseado no jogador atual, e quando o

22 21 Figura 3 Árvore do Minimax para o jogo da velha. estado for final irá retornar a função utilidade daquele estado, normalmente 1 para vitória de MAX, 1 para vitória de MIN e 0 para empate; por fim o procedimento principal irá decidir o estado de valor máximo ou mínimo baseado no jogador Exemplo O conhecido jogo da velha, que pode ser usado para exemplificar o algoritmo, está representado na figura 3. Em que um valor +1 sinaliza uma vitória para o jogador X, 1 para o jogador O e 0, um empate (ou velha). Isto é o jogador X é o MAX e portanto O o MIN. Após aberta a árvore de jogadas e cada folha avaliada, nesse caso a avaliação não é heurística pois o jogo é simples o suficiente para que isso não seja necessário. A partir das folhas cada nó têm seu valor como o máximo dos valores dos filhos quando é um nó MAX, e o mínimo quando MIN. Assim a jogada imediata decidida pelo Minimax é a que tem valor 0. Em termos simplificados significa a jogada que na pior das hipóteses irá terminar em velha.

23 22 3 Experiência com Implementações Prévias 3.1 Abordagens As abordagens consideradas para criação de uma IA para a SSL são: Heurística pura Otimização Baseada em Jogos Otimização com modelagem do oponente 3.2 Objetivos de longo prazo Desenvolver uma inteligência que comece com uma solução baseada em jogos, que gradativamente vai aprendendo o comportamento de seu oponente e vai se transformando em uma inteligência baseada em otimização, na medida do possível, e enquanto for necessário. 3.3 Problemas aprendidos A implementação de uma abordagem baseada em jogos com uma simulação física complicada tornava a resposta lenta, logo a qualidade da solução obtida em tempo real era inferior àquela obtida por uma heurística pura. Foi tentado um minimax com simulador físico, mas o custo computacional das simulações associado ao cresciemento exponencial da árvore minimax não permite um controle eficiente dos robôs em um ambiente dinâmico com agentes que não são controláveis. Foi tentado um minimax com chaveamento de heurística, mas fracasou devido ao custo computacional. Logo também optou-se por heurísticas puras nos times com robôs omnidirecionais. 3.4 Proposta de solução Explorar o fato de que no jogo com robôs omnidirecionais não são necessárias as trajetórias elaboradas que o primeiro time usava. Aproximar a simulação física por um jogo de tabuleiro. Ou seja, levar a simulação para um nível mais conceitual.

24 Minimax para robôs omnidirecionais Modelagem das jogadas possíveis de cada robô: Pegar a bola parada, se o oponente não estiver mais próximo da bola que o nosso robô. Pegar a bola em movimento, se for possível, escolhendo um ponto aleatório da trajetória da bola. Passar a bola, se não tiver ninguém que possa interceptar a bola. Chutar a gol, se não tiver ninguém no caminho da bola. Deslocar-se para outro ponto escolhido aleatoriamente, se não tiver ninguém em seu caminho, ou utilizar a célula de Voronoi. Deslocar-se para o ponto escolhido na última jogada. ( Aprendizagem local ) 3.6 Problemas Não foi realizado um mapeamento do modelo conceitual para os controles dos robôs. Não foi descoberto o problema. Considere que o time que esteja se defendendo esteja na raiz da árvore MiniMax. Neste caso, o goleiro deste time sempre conseguirá ficar entre a bola e o gol. 3.7 Ideias Provavelmente é necessário fazer algum tipo de desacoplamento do comportamento dos jogadores para melhorar o aproveitamento da CPU. Talvez seja melhor definir algumas jogadas de movimento com finalidade especifica, por exemplo, bloquear a bola defensivamente. O problema é o aumento do tempo de processamento. 3.8 Considerações O benefício da substituição das jogadas do oponente por jogadas aprendidas é duplo, aumenta-se a efetividade das jogadas, e simultaneamente possibilita que o número de jogadas consideradas possa aumentar. O problema de encontrar um modelo para o comportamento do oponente é a parte mais desafiadora do projeto.

25 24 4 Mapeamento de jogo contínuo para um jogo discreto 4.1 Introdução Uma das dificuldades de se discretizar um sistema é a necessidade de criar uma abstração válida para o jogo, de modo que o que ocorra na simulação acontessa na prática caso a mesma situação simulada seja observada no mundo físico. Essa modelagem pode ser separada em duas etapas: Representação do jogo Execução do planejamento 4.2 Representação do jogo Cada um dos robôs em campo será modelado com as seguintes ações possíveis: Time com a bola robô sem a bola * Move robô com a bola * Move * Chute * Passe Time sem a bola: Move O nível de complexidade das ações possíveis influi diretamente no número de ações que poderão ser consideradas a tempo de serem úteis para o jogo real. Por exemplo, caso não fosse considerada a ação de passe, esta ação ainda sim poderia acontecer na prática. Entretanto, seriam necessários mais níveis de planejamento, uma vez que ela

26 25 seria a composição de chutes e passes. Isso tem a contrapartida de reduzir o número de estados que podem ser simulados, uma vez que o tabuleiro é dinâmico e de o jogo real ser simultâneo, e não sequencial. Isso fica mais evidente se fossem utilizadas somente as skills para o planejamento. A principal desvantagem disso é que o planejador teria que considerar aspectos como colisões e a orientação dos robôs no planejamento final. Além de ser ineficiente, coisas como posicionamento global dos robôs no campo não teriam estados suficientes na árvore do jogo para serem úteis. Outra questão que se deve ter em mente ao se modelar as ações básicas dos robôs é definir ações muito complexas. Passando para a linguagem da arquitetura STP (Skill, Tactic Play), as plays, e não tactics, o espaço de jogadas seria muito limitado se fossem utilizadas táticas muito complexa. Como a complexidade é uma exponencial cuja base é o número de jogadas, isso não é um problema que pode ser tratado simplesmente com o aumento da velocidade de processamento. Deve-se ajustar o nível de abstração de acordo com os resultados obtidos nos teste práticos. 4.3 Execução do planejamento Esta etapa do modelo é responsável por converter o resultado do planejamento em comandos mais concretos. Conforme evidenciado na seção anterior, é nesta parte que o planejamento de trajetória deve ser levado em consideração. Esta parte que leva em consideração o modelo dinâmico do robô. Como isso é um problema complexo, com o objetivo de focar o escopo da pesquisa no planejamento de alto nível, será utilizada a arquitetura de controle do pyroboime.

Uma Ferramenta de Representação Comportamental Baseada em Otimização para Futebol de Robôs. Jan Segre Victor Bramigk

Uma Ferramenta de Representação Comportamental Baseada em Otimização para Futebol de Robôs. Jan Segre Victor Bramigk MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA (Real Academia de Artilharia, Fortificação e Desenho/1792) CURSO DE GRADUAÇÃO EM ENGENHARIA

Leia mais

Uma Ferramenta de Representação Comportamental Baseada em Otimização para Futebol de Robôs. Victor Bramigk Jan Lucas de Lima Segre

Uma Ferramenta de Representação Comportamental Baseada em Otimização para Futebol de Robôs. Victor Bramigk Jan Lucas de Lima Segre MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA (Real Academia de Artilharia, Fortificação e Desenho/1792) CURSO DE GRADUAÇÃO EM ENGENHARIA

Leia mais

TEORIA DOS JOGOS E APRENDIZADO

TEORIA DOS JOGOS E APRENDIZADO TEORIA DOS JOGOS E APRENDIZADO DE MÁQUINA Estudos Iniciais André Filipe de Moraes Batista Disciplina de Aprendizagem de Máquina UFABC 2010 TEORIA DOS JOGOS Ramo da matemática aplicada estuda situações

Leia mais

Módulo de captura de imagens do sistema Scisoccer

Módulo de captura de imagens do sistema Scisoccer 1 Módulo de captura de imagens do sistema Scisoccer Rafael Antonio Barro [1] Jailton Farias de Carvalho [2] Resumo: Este artigo descreve como funciona o módulo de captura de imagens do software Sci-soccer,

Leia mais

IMPLEMENTAÇÃO DE ALGORITMOS DE APRENDIZADO MULTI- AGENTE EM UM TIME DE FUTEBOL DE ROBÔS

IMPLEMENTAÇÃO DE ALGORITMOS DE APRENDIZADO MULTI- AGENTE EM UM TIME DE FUTEBOL DE ROBÔS IMPLEMENTAÇÃO DE ALGORITMOS DE APRENDIZADO MULTI- AGENTE EM UM TIME DE FUTEBOL DE ROBÔS Aluno: Maurício Pedro Silva Gonçalves Vieira Orientador: Karla Figueiredo Introdução Uma partida de futebol robótico

Leia mais

IA: Busca Competitiva. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

IA: Busca Competitiva. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br IA: Busca Competitiva Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Introdução Árvores de Jogos Minimax Antecipação Limitada Poda Alfa-beta Introdução Jogos têm sido continuamente uma importante

Leia mais

4 Arquitetura básica de um analisador de elementos de redes

4 Arquitetura básica de um analisador de elementos de redes 4 Arquitetura básica de um analisador de elementos de redes Neste capítulo é apresentado o desenvolvimento de um dispositivo analisador de redes e de elementos de redes, utilizando tecnologia FPGA. Conforme

Leia mais

Frederico Miguel Santos

Frederico Miguel Santos Frederico Miguel Santos DEE ISEC DETI/IEETA - UA Sumário 1. RoboCup 1. descrição / objectivos 2. MSL - futebol,,porquê? 2. CAMBADA 1. descrição / objectivos 2. evolução 3. hardware 4. software: coordenação

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 02 Agentes Inteligentes Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por meio de sensores e de

Leia mais

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico

Leia mais

Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS

Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS Autor:Thiago França Naves 1, Orientador: Carlos Roberto Lopes 1 1 Programa de Pós-Graduação em Ciência da Computação Universidade

Leia mais

Agentes Inteligentes. Inteligência Artificial. Exemplos. Agentes Inteligentes. Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com

Agentes Inteligentes. Inteligência Artificial. Exemplos. Agentes Inteligentes. Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Agentes Inteligentes Inteligência Artificial Um agente é algo capaz de perceber seu ambiente por meio de sensores e de agir sobre esse ambiente por meio de atuadores. Agente Prof. Ms. Luiz Alberto Contato:

Leia mais

RELATÓRIO FINAL DE ATIVIDADES PIBIC ou PIBITI

RELATÓRIO FINAL DE ATIVIDADES PIBIC ou PIBITI Universidade Federal da Bahia Pró Reitoria de Pesquisa e Pós Graduação Programa Institucional de Bolsas de Iniciação Científica P IBIC UFBA RELATÓRIO FINAL DE ATIVIDADES PIBIC ou PIBITI Nome do Bolsista

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

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

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O PROJETO DE PESQUISA Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Escolher um tema de pesquisa Por onde começar? Ler para aprender Estrutura do Projeto de Pesquisa A Definição

Leia mais

AGENTES INTELIGENTES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

AGENTES INTELIGENTES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com AGENTES INTELIGENTES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Agentes Inteligentes Um agente é tudo o que pode ser considerado capaz de perceber seu ambiente por meio de sensores e de agir sobre

Leia mais

Sistemas Inteligentes. Aula: Agentes Inteligentes Flávia Barros & Patricia Tedesco

Sistemas Inteligentes. Aula: Agentes Inteligentes Flávia Barros & Patricia Tedesco Sistemas Inteligentes Aula: Agentes Inteligentes Flávia Barros & Patricia Tedesco 1 Ao final desta aula a gente deve... Entender o que é um Agente Racional (inteligente)? Distinguir entre os vários tipos

Leia mais

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 A LEGO Education tem o prazer de trazer até você a edição para tablet do Software LEGO MINDSTORMS Education EV3 - um jeito divertido

Leia mais

Desenvolvimento de Estratégia para Programação do Futebol de Robôs da Mauá

Desenvolvimento de Estratégia para Programação do Futebol de Robôs da Mauá Desenvolvimento de Estratégia para Programação do Futebol de Robôs da Mauá Wânderson O. Assis, Alessandra D. Coelho, Marcelo M. Gomes, Cláudio G. Labate, Daniel F. Calasso, João Carlos G. C. Filho Escola

Leia mais

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 02 Agentes Inteligentes Edirlei Soares de Lima Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por meio de sensores e de

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

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

Leia mais

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito

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

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 UNIVERSIDADE FEDERAL DE VIÇOSA Departamento de Matemática - CCE Cálculo Numérico - MAT 271 Prof.: Valéria Mattos da Rosa As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia

Leia mais

Implementação de um módulo simulador de robôs baseado em Unity3D para o SimBot - Simulador de Robôs para Lego NXT.

Implementação de um módulo simulador de robôs baseado em Unity3D para o SimBot - Simulador de Robôs para Lego NXT. UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ Curso de Bacharelado em Ciência da Computação UNIOESTE - Campus de Cascavel MODELO PARA ELABORAÇÃO DE PROJETOS DE TRABALHO DE CONCLUSÃO DE CURSO 1. IDENTIFICAÇÃO

Leia mais

Engenharia de Software II: Criando o cronograma do projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Engenharia de Software II: Criando o cronograma do projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Engenharia de Software II: Criando o cronograma do projeto Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Definição das atividades. Sequenciamento das atividades. Estimativa de recursos

Leia mais

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma

Leia mais

Universidade Federal de Pernambuco

Universidade Federal de Pernambuco Universidade Federal de Pernambuco Graduação em Engenharia da Computação Centro de Informática 2D Feature Distance Estimation for Indoor Environments using 2D laser range data Proposta de Trabalho de Graduação

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Prof. Rafael Stubs Parpinelli DCC / UDESC-Joinville parpinelli@joinville.udesc.br www.joinville.udesc.br/portal/professores/parpinelli www2.joinville.udesc.br/~coca/ Agentes Inteligentes:

Leia mais

SIMULAÇÃO DE TRÁFEGO DE VEÍCULOS INTELIGENTES PARA PREVENÇÃO DE ACIDENTES

SIMULAÇÃO DE TRÁFEGO DE VEÍCULOS INTELIGENTES PARA PREVENÇÃO DE ACIDENTES SIMULAÇÃO DE TRÁFEGO DE VEÍCULOS INTELIGENTES PARA PREVENÇÃO DE ACIDENTES Leonardo T. Antunes 1, Ricardo R. Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leonardo_tada@hotmail.com, ricardo@unipar.br

Leia mais

Exercícios Teóricos Resolvidos

Exercícios Teóricos Resolvidos Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar

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

3 Arquitetura do Sistema

3 Arquitetura do Sistema 3 Arquitetura do Sistema Este capítulo irá descrever a arquitetura geral do sistema, justificando as decisões de implementação tomadas. Na primeira seção iremos considerar um conjunto de nós interagindo

Leia mais

Orientações para o Planejamento e Realização do Projeto Final

Orientações para o Planejamento e Realização do Projeto Final Orientações para o Planejamento e Realização do Projeto Final Simone Diniz Junqueira Barbosa Versão: 1.0.4 Orientações para o Planejamento e Realização do Projeto Final Sumário 1 Introdução... 3 2 Projeto

Leia mais

Muitas aplicações modernas podem ser modeladas como tarefas divisíveis.

Muitas aplicações modernas podem ser modeladas como tarefas divisíveis. 1 Introdução O grande aumento de performance das redes de computadores, combinado com a proliferação de computadores de baixo custo e alto desempenho, trouxe à tona ambientes de meta-computação, ou grids[15,

Leia mais

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

Estratégias de Pesquisa

Estratégias de Pesquisa Estratégias de Pesquisa Ricardo de Almeida Falbo Metodologia de Pesquisa Departamento de Informática Universidade Federal do Espírito Santo Agenda Survey Design e Criação Estudo de Caso Pesquisa Ação Experimento

Leia mais

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br CTC-17 Inteligência Artificial Problemas de Busca Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Agentes que buscam soluções para problemas: Exemplo Tipos de

Leia mais

TCC04040 Inteligência Artificial. Inteligência Artificial

TCC04040 Inteligência Artificial. Inteligência Artificial Inteligência Artificial Aula 2 Profª Bianca Zadrozny TCC04040 Inteligência Artificial Página web: http://www.ic.uff.br/~bianca/ia Material: Livro texto: Inteligência Artificial, Russell & Norvig, Editora

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

Pós Graduação Engenharia de Software

Pós Graduação Engenharia de Software Pós Graduação Engenharia de Software Ana Candida Natali COPPE/UFRJ Programa de Engenharia de Sistemas e Computação FAPEC / FAT Estrutura do Módulo Parte 1 QUALIDADE DE SOFTWARE PROCESSO Introdução: desenvolvimento

Leia mais

A CONSTRUÇÃO DE ESPAÇOS E MATERIAIS DIGITAIS PARA A EDUCAÇÃO MATEMÁTICA: O USO DO SMARTPHONE NO ENSINO DA GEOMETRIA

A CONSTRUÇÃO DE ESPAÇOS E MATERIAIS DIGITAIS PARA A EDUCAÇÃO MATEMÁTICA: O USO DO SMARTPHONE NO ENSINO DA GEOMETRIA A CONSTRUÇÃO DE ESPAÇOS E MATERIAIS DIGITAIS PARA A EDUCAÇÃO MATEMÁTICA: O USO DO SMARTPHONE NO ENSINO DA GEOMETRIA Autores : Agata RHENIUS, Melissa MEIER. Identificação autores: Bolsista IFC-Campus Camboriú;

Leia mais

Uma Aplicação de Ensino Orientada a Agentes na Internet

Uma Aplicação de Ensino Orientada a Agentes na Internet 1 de 5 22/7/2008 17:14 Uma Aplicação de Ensino Orientada a Agentes na Internet Adriana Soares Pereira Cláudio Fernando Resin Geyer adriana@inf.ufrgs.br Resumo Este trabalho apresenta uma proposta de desenvolvimento

Leia mais

PRÓ-REITORIA DE EXTENSÃO, PESQUISA E INOVAÇÃO DIRETORIA DE PESQUISA E INOVAÇÃO Proposta de Projeto de Pesquisa

PRÓ-REITORIA DE EXTENSÃO, PESQUISA E INOVAÇÃO DIRETORIA DE PESQUISA E INOVAÇÃO Proposta de Projeto de Pesquisa PRÓ-REITORIA DE EXTENSÃO, PESQUISA E INOVAÇÃO DIRETORIA DE PESQUISA E INOVAÇÃO Proposta de Projeto de Pesquisa IDENTIFICAÇÃO DO PROJETO Título do Projeto de Pesquisa: School Blocks Sistema de Gestão Acadêmica

Leia mais

4 Um Exemplo de Implementação

4 Um Exemplo de Implementação 4 Um Exemplo de Implementação Neste capítulo será discutida uma implementação baseada na arquitetura proposta. Para tanto, será explicado como a arquitetura proposta se casa com as necessidades da aplicação

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Licenciatura em Computação Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por

Leia mais

Busca em Árvores ou Grafos

Busca em Árvores ou Grafos Giga Mundo Computação RSS Sobre a Equipe Mais computacao no seu Email! Nosso forum Politica de Privacidade Busca em Árvores ou Grafos Posted by on March 10th, 2009 in Inteligência Artificial StatSoft Data

Leia mais

3 Multi-Agent System for Stock Exchange Simulation

3 Multi-Agent System for Stock Exchange Simulation Multi-Agent System for Stock Exchange Simulation 29 3 Multi-Agent System for Stock Exchange Simulation A participação na competição Agent Reputation Trust (ART) Testbed [10] motivou o estudo do domínio

Leia mais

Implementação de estratégias

Implementação de estratégias Etapa 1 Etapa 2 Etapa 3 Etapa 4 Etapa 5 Disciplina Gestão Estratégica e Serviços 7º Período Administração 2013/2 Implementação de estratégias Agenda: Implementação de Estratégias Visão Corporativa sobre

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

Sistemas distribuídos:comunicação

Sistemas distribuídos:comunicação M. G. Santos marcela@estacio.edu.br Faculdade Câmara Cascudo - Estácio de Sá 16 de abril de 2010 Formas de comunicação Produtor-consumidor: comunicação uni-direccional, com o produtor entregando ao consumidor.

Leia mais

Projeto de controle e Automação de Antena

Projeto de controle e Automação de Antena Projeto de controle e Automação de Antena Wallyson Ferreira Resumo expandido de Iniciação Tecnológica PUC-Campinas RA: 13015375 Lattes: K4894092P0 wallysonbueno@gmail.com Omar C. Branquinho Sistemas de

Leia mais

Grande parte dos planejadores

Grande parte dos planejadores ARTIGO Fotos: Divulgação Decidindo com o apoio integrado de simulação e otimização Oscar Porto e Marcelo Moretti Fioroni O processo de tomada de decisão Grande parte dos planejadores das empresas ainda

Leia mais

MSF- MICROSOFT SOLUTIONS FRAMEWORK. Cesar Eduardo Freitas Italo Alves

MSF- MICROSOFT SOLUTIONS FRAMEWORK. Cesar Eduardo Freitas Italo Alves MSF- MICROSOFT SOLUTIONS FRAMEWORK Cesar Eduardo Freitas Italo Alves A ORIGEM DO MSF (MICROSOFT SOLUTIONS FRAMEWORK) Baseado na experiência da empresa na construção de softwares como Office e Windows e

Leia mais

Protocolo de comunicação para redes móveis aplicado ao trânsito

Protocolo de comunicação para redes móveis aplicado ao trânsito Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM Protocolo de comunicação para redes móveis aplicado ao trânsito Aluno: Luiz

Leia mais

SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA

SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA Muitas organizações terceirizam o transporte das chamadas em seus call-centers, dependendo inteiramente

Leia mais

PROJETO DE PESQUISA CIENTÍFICA: a escolha do tema e a construção do problema

PROJETO DE PESQUISA CIENTÍFICA: a escolha do tema e a construção do problema PROJETO DE PESQUISA CIENTÍFICA: a escolha do tema e a construção do problema de pesquisa, temos que traçar um caminho a seguir durante a investigação. Realizar um estudo mais planejado dos aspectos que

Leia mais

PLANEJAMENTO DE CAPACIDADE EM INFRA-ESTRUTURAS SUPORTADAS POR SERVIÇOS TERCEIRIZADOS DE REDE DE COMUNICAÇÃO DE DADOS

PLANEJAMENTO DE CAPACIDADE EM INFRA-ESTRUTURAS SUPORTADAS POR SERVIÇOS TERCEIRIZADOS DE REDE DE COMUNICAÇÃO DE DADOS PLANEJAMENTO DE CAPACIDADE EM INFRA-ESTRUTURAS SUPORTADAS POR SERVIÇOS TERCEIRIZADOS DE REDE DE COMUNICAÇÃO DE DADOS Roosevelt Belchior Lima Neste artigo será apresentada uma proposta de acompanhamento

Leia mais

Uso do Netkit no Ensino de Roteamento Estático

Uso do Netkit no Ensino de Roteamento Estático Uso do Netkit no Ensino de Roteamento Estático Nyl Marcos Soares Barbosa, Moisés Lima dos Anjos, Madianita Bogo Curso de Sistemas de Informação Centro universitário Luterano de Palmas (CEULP/ULBRA) Teotônio

Leia mais

INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS

INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS Aline Ferraz da Silva 1 Carine Bueira Loureiro 2 Resumo: Este artigo trata do projeto de Trabalho

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

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

Workflow Genético para Planejamento e Gerenciamento de Currículo em EAD

Workflow Genético para Planejamento e Gerenciamento de Currículo em EAD Workflow Genético para Planejamento e Gerenciamento de Currículo em EAD Autor: Robson da Silva Lopes 1, Orientadora: Prof a. Dr a. Márcia Aparecida Fernandes 1 1 Programa de Pós-Graduação em Ciência da

Leia mais

Introdução à Simulação

Introdução à Simulação Introdução à Simulação O que é simulação? Wikipedia: Simulação é a imitação de alguma coisa real ou processo. O ato de simular algo geralmente consiste em representar certas características e/ou comportamentos

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO

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

Virtualização de Sistemas Operacionais

Virtualização de Sistemas Operacionais Virtualização de Sistemas Operacionais Felipe Antonio de Sousa 1, Júlio César Pereira 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipeantoniodesousa@gmail.com, juliocesarp@unipar.br Resumo.

Leia mais

ESTRATÉGIAS DE RESOLUÇÃO DE PROBLEMAS DE PESQUISA OPERACIONAL

ESTRATÉGIAS DE RESOLUÇÃO DE PROBLEMAS DE PESQUISA OPERACIONAL ESTRATÉGIAS DE RESOLUÇÃO DE PROBLEMAS DE PESQUISA OPERACIONAL André Luis Trevisan Universidade Tecnológica Federal do Paraná andrelt@utfpr.edu.br Magna Natalia Marin Pires Universidade Estadual de Londrina

Leia mais

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br Gerenciamento de projetos cynaracarvalho@yahoo.com.br Projeto 3URMHWR é um empreendimento não repetitivo, caracterizado por uma seqüência clara e lógica de eventos, com início, meio e fim, que se destina

Leia mais

Sistemas Inteligentes Lista de Exercícios sobre Busca

Sistemas Inteligentes Lista de Exercícios sobre Busca Sistemas Inteligentes Lista de Exercícios sobre Busca 1) A* - Problema do metrô de Paris Suponha que queremos construir um sistema para auxiliar um usuário do metrô de Paris a saber o trajeto mais rápido

Leia mais

Arquiteturas RISC. (Reduced Instructions Set Computers)

Arquiteturas RISC. (Reduced Instructions Set Computers) Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina

Leia mais

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante

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

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

1. Escolha do Tema. 2. Formulação do Problema. 1 Escolha do Tema II. PLANEJAMENTO DA PESQUISA

1. Escolha do Tema. 2. Formulação do Problema. 1 Escolha do Tema II. PLANEJAMENTO DA PESQUISA II. PLANEJAMENTO DA PESQUISA 1. Escolha do tema 2. Formulação do problema 3. Justificativa 4. Determinação dos objetivos 5. Referencial teórico 6. Referências 1 Escolha do Tema 1. Escolha do Tema Nesta

Leia mais

EXPERIÊNCIA DE USO DE ARQUITETURA CORPORATIVA NO PROJETO DE RES

EXPERIÊNCIA DE USO DE ARQUITETURA CORPORATIVA NO PROJETO DE RES EXPERIÊNCIA DE USO DE ARQUITETURA CORPORATIVA NO PROJETO DE RES Rigoleta Dutra Mediano Dias 1, Lívia Aparecida de Oliveira Souza 2 1, 2 CASNAV, MARINHA DO BRASIL, MINISTÉRIO DA DEFESA, BRASIL Resumo: Este

Leia mais

Jogo de Tabuleiro - Mancala Relatório Final

Jogo de Tabuleiro - Mancala Relatório Final Jogo de Tabuleiro - Mancala Relatório Final Inteligência Artificial 3º ano do Mestrado Integrado em Engenharia Informática e Computação Elementos do Grupo: Bruno Lima 080509068 bruno.lima@fe.up.pt Pedro

Leia mais

Desenvolvimento de um Sistema Híbrido para Rastreamento

Desenvolvimento de um Sistema Híbrido para Rastreamento Desenvolvimento de um Sistema Híbrido para Rastreamento de Objetos aplicado ao Futebol de Robôs Eduardo W. Basso 1, Diego M. Pereira 2, Paulo Schreiner 2 1 Laboratório de Robótica Inteligente Instituto

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Apresentar os conceitos de requisitos de usuário e de sistema Descrever requisitos funcionais

Leia mais

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE RESUMO Fazer um bom levantamento e especificação de requisitos é algo primordial para quem trabalha com desenvolvimento de sistemas. Esse levantamento

Leia mais

Módulo 3 Procedimento e processo de gerenciamento de riscos, PDCA e MASP

Módulo 3 Procedimento e processo de gerenciamento de riscos, PDCA e MASP Módulo 3 Procedimento e processo de gerenciamento de riscos, PDCA e MASP 6. Procedimento de gerenciamento de risco O fabricante ou prestador de serviço deve estabelecer e manter um processo para identificar

Leia mais

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Clayton Maciel Costa

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

CONSTRUÇÃO DE VEÍCULO MECATRÔNICO COMANDADO REMOTAMENTE

CONSTRUÇÃO DE VEÍCULO MECATRÔNICO COMANDADO REMOTAMENTE CONSTRUÇÃO DE VEÍCULO MECATRÔNICO COMANDADO REMOTAMENTE Roland Yuri Schreiber 1 ; Tiago Andrade Camacho 2 ; Tiago Boechel 3 ; Vinicio Alexandre Bogo Nagel 4 INTRODUÇÃO Nos últimos anos, a área de Sistemas

Leia mais

PESQUISA-AÇÃO DICIONÁRIO

PESQUISA-AÇÃO DICIONÁRIO PESQUISA-AÇÃO Forma de pesquisa interativa que visa compreender as causas de uma situação e produzir mudanças. O foco está em resolver algum problema encontrado por indivíduos ou por grupos, sejam eles

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

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA Descrição: Após reunir a equipe de programadores para participar do 1 Concurso Mundial de Desenvolvimento de Softwares, Barbie e seus amigos iniciaram

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

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

Revista Eletrônica da FANESE ISSN 2317-3769

Revista Eletrônica da FANESE ISSN 2317-3769 FRAMEWORK PARA TREINAMENTOS NA WEB BASEADO EM VÍDEO SOBRE DEMANDA Ícaro Carlos Andrade Costa 1 Igor Antônio Andrade Costa 2 Ricardo Ariel Correa Rabelo 3 Renata Azevedo Santos Carvalho 4 RESUMO A educação

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

Banco de Dados Orientado a Objetos

Banco de Dados Orientado a Objetos Banco de Dados Orientado a Objetos MODELAGEM, ANÁLISE, PROJETO e CLASSIFICAÇÃO Interação combinando lógica, através de objetos que contém os dados. Estes divididos conforme seus tipos e métodos (classe),

Leia mais

Análise estrutural do problema de programação da produção F3 r j, s ijk C max

Análise estrutural do problema de programação da produção F3 r j, s ijk C max Análise estrutural do problema de programação da produção F3 r j, s ijk C max Sânia da Costa Fernandes (UFG) saninha_fernandes@hotmail.com Tatiane Albuquerque Pires (UFG) tati_albuquerque_3@hotmail.com

Leia mais

Introdução à Programação de Computadores

Introdução à Programação de Computadores 1. Objetivos Introdução à Programação de Computadores Nesta seção, vamos discutir os componentes básicos de um computador, tanto em relação a hardware como a software. Também veremos uma pequena introdução

Leia mais

ESTUDO DE CASO: LeCS: Ensino a Distância

ESTUDO DE CASO: LeCS: Ensino a Distância ESTUDO DE CASO: LeCS: Ensino a Distância HERMOSILLA, Lígia Docente da Faculdade de Ciências Jurídicas e Gerenciais de Garça FAEG - Labienópolis - CEP 17400-000 Garça (SP) Brasil Telefone (14) 3407-8000

Leia mais

Software de rede e Modelo OSI André Proto UNESP - São José do Rio Preto andre.proto@sjrp.unesp.br O que será abordado Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços

Leia mais