Aplicação de Inteligência Artificial em Jogos Eletrônicos

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

Download "Aplicação de Inteligência Artificial em Jogos Eletrônicos"

Transcrição

1 Aplicação de Inteligência Artificial em Jogos Eletrônicos Glauco B. R. Filho Faculdade de Engenharia de Sorocaba (FACENS) Caixa postal Sorocaba SP Brasil Resumo: Um mercado repleto de jogos casuais, cada vez mais empresas aderindo ao desenvolvimento de jogos consideravelmente simples, e que atinjam um grande número de pessoas. Os jogos que fazem uso de inteligência artificial certamente são um grande diferencial para este mercado. Em cima deste cenário, este artigo pretende trazer algumas técnicas e dicas para aplicar inteligência artificial em jogos eletrônicos. Abstract: A market full of casual games, more and more companies joining the game development increasingly simple, and that reach large numbers of people. The games that make use of artificial intelligence are certainly a great advantage for this market. Upon this backdrop, this paper aims to bring some techniques and tips to apply artificial intelligence in electronic games. 1. Introdução A Inteligência Artificial sempre esteve presente nos jogos eletrônicos, desde os primeiros com algoritmos bem simples, como padrões de movimento, até os jogos mais modernos de hoje, com algoritmos gênicos e redes neurais. A indústria dos jogos eletrônicos finalmente atingiu uma grande parcela da população, praticamente qualquer dispositivo com tela é capaz de rodar jogos (THE ESA, 2012). O mercado de jogos eletrônicos vem apresentando constantes mudanças de publico e com o grande aumento dos jogos casuais no mercado, sobretudo nos aparelhos móveis, como celulares e tablets que hoje representam grande parte do mercado de jogos, muitas desenvolvedoras procuram claramente atender a grande demanda, desenvolvendo cada vez mais jogos casuais. Diante disto, os jogos mais complexos e melhores elaborados acabaram perdendo muita força no mercado, hoje praticamente dominado por jogos casuais, que representam 47% dos jogos para aparelhos móveis (THE ESA, 2012). Desenvolver jogos com inteligência artificial é sempre complicado, os algoritmos geralmente são mais complexos e difíceis de depurar. Porém, é indiscutível a riqueza que a IA trás para os jogos eletrônicos. Um mercado que está repleto de jogos

2 casuais precisa de jogos para jogadores que buscam jogos mais ricos, com mais desafios e complexidades, quem faz o mercado são os desenvolvedores. A aplicação de inteligência artificial em jogos ainda é algo muito complexo, especialmente para os desenvolvedores que ainda não possuem experiência, devido a grandes preocupações com hardware, quais algoritmos utilizar e como utilizar, porém, indubitavelmente os jogos com inteligência artificial são um diferencial para o mercado. 2. Inteligência Artificial em Jogos Ao se falar em inteligência artificial (IA) em jogos, ou mais habitualmente conhecida por Game AI, temos que ter em mente o quão abrange é sua aplicação, pois tudo que diz respeito a ações tomadas pelo computador dentro de um jogo pode ser considerado IA de um jogo. Desde simples controles de movimento de um NPC (nonplayer character) até algoritmos mais complexos, como perseguição e decisões que são tomadas pelo computador de acordo com ações do jogador são considerados Game AI (BUCKLAND, 2005). Considerando o ambiente virtual, onde tudo é possível, o objetivo da inteligência artificial pode não ser sempre claro, por exemplo, o desenvolvedor pode estar programando as ações que um dragão irá tomar quando lutar contra um mago. Ambiente totalmente desconhecido, que deve ser representado pela IA. E mesmo que o objetivo seja desenvolver personagens humanos, nem sempre existe a necessidade dele ser realmente inteligente, o simples fato de tomar ações que pareçam ser inteligentes, como dar tiros certeiros em jogos (conhecidos como Head Shot), já é o suficiente (BOURG, 2004) Definição de Inteligência Artificial Antes de atribuir uma definição a Inteligência Artificial é necessário definir o que vem a ser inteligência. Definida pelo dicionário (MICHAELIS, 2009), inteligência é a faculdade de entender, pensar, raciocinar e interpretar. Assumindo esta definição, poderíamos definir inteligência artificial como a capacidade que o computador possui de pensar, raciocinar, interpretar e entender, equiparando-se aos humanos, os seus criadores. De outra perspectiva, é possível pensar em IA como o comportamento inteligente exibido pela máquina que foi criada, ou talvez os cérebros artificiais por trás deste comportamento. Porém, nem mesmo esta definição esta totalmente correta, para alguns estudiosos, o estudo de IA não é necessariamente para o propósito de criar máquinas inteligentes, mas sim ganhar uma melhor percepção sobre nossos próprios comportamentos (BOURG, 2004) (RUSSEL, 2004).

3 Através do conhecimento e da utilização de IA é possível construir programas com capacidade para raciocínio, tomar certas decisões ao se encontrar em determinados estados, aprendizado, conseguindo agregar informações que foram vistas no passado para solucionar problema e outras funções as quais se foram intitulados como humanas (RUSSEL, 2004). Computadores podem realizar diversas tarefas humanas, incluindo tarefas que exigem perspicácia, como ser um oponente digno em jogos de raciocínio, como o xadrez, realizar diagnósticos médicos e outras funções que também merecem seu devido destaque. Porém, só foi possível para o computador obter tal conhecimento graças ao humano que o programou para tal. A IA ainda está muito longe do cérebro humano, basta observar que diversas de nossas ações não são tomadas pela lógica, mas sim, deixamos com que o nosso lado emocional afete nossas decisões, permitindo assim que cometamos erros e ainda outras vezes acabamos acertando (SANTANA, 2006). 2.2 Inteligência Artificial Acadêmica VS. Inteligência Artificial para Jogos Há uma importante distinção que deve ser feita entre a IA estudada por acadêmicos e a IA aplicada em jogos eletrônicos. O estudo que é realizado pelo meio acadêmico pode ser dividido em dois campos, a Inteligência Artificial forte e a Inteligência Artificial fraca. O principal objetivo desses estudos está voltado para solucionar problemas reais, como por exemplo, algoritmos para organização de caixas dentro de um caminhão, tarefa esta que pode ser tida como um problema complexo ao se tratar do número de caixas e suas diferentes formas. Através de algoritmos de inteligência artificial, como algoritmo genético, o problema é facilmente solucionado. Técnicas de inteligência artificial normalmente consomem muito tempo para encontrar soluções, para um software comum é aceitável que os algoritmos levem horas para chegar a uma solução, já os desenvolvedores de jogos não podem ter essas soluções demoradas, é necessária resposta imediata ou então, os jogadores teriam que fica parados, esperando para ver o movimento do computador. Desenvolvedores de jogos trabalham com várias limitações, considerando que um jogo eletrônico exija resultados em tempo real e execute de uma mesma maneira em vários aparelhos distintos, o hardware acaba sendo um grande problema para o desenvolvedor, que deve se preocupando com a quantidade de ciclos de processador, o uso de memória e suas variações, de plataforma para plataforma (BUCKLAND, 2005). Outra preocupação para os desenvolvedores de jogos fica por conta da diversão, por mais complexo que seja o algoritmo desenvolvido se não agradar os jogares, de nada adiantará, pois os gamers (termo utilizado para referenciar pessoas que passam tempo jogando) não querem ver como o jogo foi programado, mais sim o resultado final. Por exemplo, em um jogo de futebol, ao qual é impossível vencer o computador, pode até ser que no inicio, jogadores mais destemidos perdurem, mais logo, depois de realmente

4 constatar que é impossível vencê-lo, o jogador certamente ira procurar por um jogo que o agrade mais (BUCKLAND, 2005) IA Fraca Vários filósofos insistem em provar que as máquinas não possuem capacidade de pensar, de aprender e por fim, de ser inteligente. Para o computador aprender, é necessário que ele esteja programado para tal (SANTANA, 2006). No ano de 1950, Alan Turing, sugeriu que fosse criado um teste de inteligência para avaliar as máquinas. O Teste de Turing (nome dado ao teste) consiste em fazer uma máquina, considerada inteligente, ser interrogada por um humano em uma conversação on-line durante o período de cinco minutos. O interrogador, durante este período, deve realizar avaliações e verificar se é uma máquina ou uma pessoa. Caso o interrogador seja enganado pela máquina durante trinta por cento do tempo, a máquina passará no teste. Segundo a previsão de Turing, no ano de 2000 já teríamos máquinas que passariam em seu teste, porém, até os dias de hoje, nenhuma máquina conseguiu tal feito, apesar de diversas vezes alguns interrogadores terem sido enganados, como o caso da ELIZA, a terapeuta virtual programada por Joseph Weizenbaum, que em 1966 consegui ludibriar várias pessoas se passando por humana, até ser avaliada por um profissional. Alguns Filósofos afirmam que, mesmo que uma máquina ainda venha a passar no Teste de Turing, esta não estaria pensando, mais sim simulando pensamento (SANTANA, 2006). Ou seja, desta maneira, não seria possível a existência de uma máquina dotada de verdadeira inteligência IA Forte A IA forte poderia ser definida como a possibilidade de a máquina vir operar todos os comportamentos de um ser humano, de maneira que a máquina fosse capaz de assumir as personalidades, ações e reações de um ser humano (PEREIRA, 2006). É possível afirmar que o tema IA forte é um tema bastante polêmico e vai de encontro a vários conceitos, inclusive éticos, se tratando de uma entidade que seja cognitivamente equivalente a um ser humano. A IA forte implicaria na não existência de uma inteligência humana, e sim um conjunto de reações que implicaria em tal fato.

5 Aplicação da Inteligência Artificial em Jogos Eletrônicos Existem diversas técnicas e algoritmos de IA que são aplicados em jogos eletrônicos, essas técnicas podem ser classificadas como determinísticas e não determinísticas (BOURG, 2004). Quando é desenvolvida a inteligência artificial determinística, o comportamento e o resultado já são esperados, é desenvolvido um padrão pré-definido ao qual o computador deverá seguir, ou seja, é possível prever todas as ações que o computador irá tomar, por definição, existe apenas um estado para cada transição, não é possível estar em dois estados a mesmo tempo, como também não é possível estar em um estado que não existe. Por exemplo, um algoritmo de movimento, onde o computador deverá inverter sua direção quando encontrar com um obstáculo. As técnicas de IA determinísticas são mais rápidas para programar, mais fáceis para depurar, entender e testar. Outra vantagem da IA determinística fica por conta do consumo de recursos, é necessário pouco processamento e consumo de memória para tomar as decisões, já que os resultados já são pré-definidos e limitados. Porém, esta ultima vantagem também leva ao seu principal problema, esta técnica, depois de certo tempo, acaba se tornando maçante para o jogador, por exemplo, em um jogo de xadrez ao qual o computador possui estilos de jogadas limitados, as primeiras vezes que o jogador o enfrentar pode até perder, mas com o tempo, logo ele irá perceber que o computador toma sempre as mesmas ações e então, acaba ficando fácil de vencê-lo (BOURG, 2004). Figura 1: Chess Titans - Microsoft Fonte: 92b1-2c05d58588ba_0.jpg Já a inteligência artificial não determinística, é o oposto da determinística, focada na incerteza, onde todo comportamento da máquina possui um grau de incerteza e nem sempre é possível prever o comportamento adotado pela máquina. Em um jogo de futebol que o computador consegue se armar contra o jogador, se adaptando ao estilo

6 de jogo dele para conseguir vencê-lo, nem sempre se pode prever que ação o computador poderá tomar, deste modo abrindo infinitas possibilidades para o jogo e prolongando a vida útil do mesmo. Para o desenvolvimento deste tipo de IA, é necessário mais processamento, os algoritmos são mais complexos, normalmente são difíceis de depurar, mais complicados para entender e ainda existe uma grande preocupação dos desenvolvedores para que as possíveis ações que o computador tome estejam dentro do jogo. No mesmo jogo de futebol, o computador, poderá se adaptar de várias maneiras, mas nunca deverá fugir as regras do futebol (BOURG, 2004). Figura 2: Fifa 2013 EA Games Fonte: 3. Técnicas e Algoritmos de Inteligência Artificial aplicados em jogos eletrônicos Existem várias técnicas e algoritmos de IA que são aplicados por desenvolvedores de jogos eletrônicos, porém a aplicação em jogos é consideravelmente diferente da aplicação de IA no meio acadêmico. Nos jogos existe apenas o código especifico para que o computador apareça e tome decisões inteligentes no momento que o jogo trás varias opções para uma determinada situação, resultando em um comportamento relevante eficaz e útil (SCHWAB, 2008). O comportamento do computador em jogos é dependente da situação atual, a única coisa que realmente importa para os jogadores é o resultado, independente de como foi obtido (SCHWAB, 2008). Em um jogo eletrônico, se o jogador realmente acreditar que está jogando contra um computador inteligente, é o suficiente para o desenvolvedor obter sucesso (BUCKLAND, 2005). Os designers (termo utilizado para profissionais que atuam normalmente projetando a parte gráfica) do jogo Halo, lançado para Xbox em 2001, desenvolvido pela Bungie, descobriram que os jogadores que estavam testando jogo acreditavam simplesmente que o computador era consideravelmente mais inteligente quando os pontos da vida dele eram aumentados,

7 chegando a certo ponto que todos os testers (termo comum no desenvolvimento de software, que se refere as pessoas que estão testando as aplicações, neste caso, o jogo) consideravam o computador como muito inteligente, enquanto somente seus pontos de vida estavam maiores, e quando estes pontos diminuíam, quase todos consideravam que a IA estava muito fraca (BUCKLAND, 2005) Figura 3: Halo - Microsoft. Fonte: Dentro da utilização de IA, é possível destacar alguns algoritmos que são mais facilmente encontrados nos jogo como determinísticos e padrões de movimento, sistema baseado em regras, máquinas de estado finito e algoritmos de busca Algoritmos Determinísticos e Padrões de movimento Algoritmos determinísticos e padrões de movimento foram os primeiros algoritmos de inteligência artificial que surgiram nos jogos eletrônicos. Padrões de movimento, basicamente, consistem e pré-definir rotas ou movimentos repetitivos para os personagens controlados pelo computador (KISHIMOTO, 2004). Para exemplificar, podem ser citados jogos no estilo plataforma (é o nome dados a um gênero em que o jogador deve correr, pular e enfrentar inimigos, entre obstáculos e plataformas ), onde monstros ficam se movimentando de um lado para outro tentando evitar que o personagem consiga atingir um objetivo, ou adquirir um item mais raro. Determinísticos, como abordado anteriormente, são os algoritmos préprogramados para o computador ter uma resposta de acordo com determinada situação. Por exemplo, o monstro ficar parado, até que o jogador chegue a certa distância dele. Os algoritmos de padrões de movimento podem ser considerados determinísticos.

8 Máquinas de Estado Finito A máquina de estados finitos, historicamente, era utilizada por matemáticos para resolver problemas. A máquina de estados mais famosa é a máquina de estados de Alan Turing, que vem desde No geral é possível definir então como um dispositivo, ou um modelo de um dispositivo, que possui um número finito de estados, que pode estar ou operar em qualquer momento (BUCKLAND, 2005). Voltada para a programação de jogos, é possível definir máquina de estado finita como uma máquina abstrata que define os estados em que um personagem pode se encontrar e quando o mesmo muda de estado. O estado atual da máquina determina como o personagem deve atuar no jogo (KISHIMOTO, 2004). Segundo (BUCKLAND, 2005) Máquina de estado finito é uma das técnicas de IA aplicadas em jogos mais antigos, e é utilizada até nos dias de hoje. Alguns destes motivos são: Rápidas e fáceis para codificar: Existem várias maneiras de codificar máquinas de estado finito, e a maioria delas é bem simples. São fáceis de depurar: Como normalmente os agentes são divididos em pedaços é de fácil percepção, no momento que ocorre o problema, identificar onde ele está. Usam pouco processamento: No geral, o computador só precisa seguir as informações que já estão pré-programadas para o estado atual. São intuitivas: Para as pessoas é fácil à compreensão relacionada aos estados, e no geral, não necessariamente somente programadores compreendem, mas toda equipe de desenvolvimento pode compreender. São flexíveis: É possível ajustar e aperfeiçoar facilmente as máquinas de estados para atender as especificações. No jogo Pac-Man (clássico, desenvolvido para o Atari 2600, popularmente conhecido no Brasil como come come ), os fantasmas foram implementados utilizando algoritmos de máquinas de estado finito. Existe um estado para quando eles estão fugindo (que na verdade é o mesmo para todos os fantasmas), e outro para quando eles estão seguindo o jogador (no caso, é especifico para cada fantasma). Quando o jogador come uma das frutas o estado de todos os fantasmas é alternado para fugir (BUCKLAND, 2005).

9 Figura 4: PAC-MAN Fonte: Sistema Baseado em Regras Existem diversas situações em que a lógica convencional é inadequada para processar os estados atuais, situações que são muito complexas para serem tratadas como modelos de estados e transições. Tomando como exemplo o comportamento de uma pessoa virtual com limitadas ações, como comer, beber e andar. Essas ações parecem simples a primeira vista, para nós humanos, porém para máquinas ela é mais complexa do que aparentam (BUCKLAND, 2005) (KISHIMOTO, 2004): Se estiver com fome e tem comida, então ele come; Se estiver com fome e não tiver comida, o humano irá procurar por comida; Se não estiver com fome e estiver com cede, então deverá beber água; Se não estiver com fome e nem com cede, então, deverá dar uma volta; Situações como estas são complexas para serem tratadas com máquinas de estado finito, visto que cada uma delas poderá gerar um estado diferente. Esse tipo de problema é conhecido por comportamento global. É possível perceber que neste exemplo o humano segue várias regras (KISHIMOTO, 2004). Para um sistema poder ser baseado em regras, necessariamente, ele deve seguir uma condição que ira gerar uma ação, como no exemplo:

10 Fome & Comida por perto => comer; Fome & sem comida por perto => procurar; Não fome & cede => beber água; Não fome & não cede => dar uma volta. Sendo assim, tomando a primeira linha como exemplo, se o humano estiver com fome e tiver comida por perto então à ação deverá ser comer, na segunda, se o humano estiver com fome e não tiver comida por perto, ele deve procurar, e assim por diante. Para resolver estes tipos de problemas, é utilizada uma área da inteligência artificial conhecida como computação nebulosa, através da lógica Fuzzy. Através da lógica fuzzy é possível gerar dados que fazem com que seja possível para o computador interpretar termos lingüísticos e regras de forma semelhante aos seres humanos. Conceitos como perto e longe não podem ser representados dentro de intervalos discretos e acabam sendo muito vagos para o computador. Com a utilização de algoritmos Fuzzy, os dados são transformados em Fuzzy Sets ( podem ser considerados conjuntos de dados Fuzzy), processados e devolvidos como forma de dados fuzzy. O processo que realiza a conversão de dados numéricos para fuzzy chama-se fuzzification e o processo que transforma os dados fuzzy para dados numéricos e chamado de defuzzification (BUCKLAND, 2005). Figura 5: Lógica Fuzzy Fonte: Adaptado de (BUCKLAND, 2005) Algoritmos de Busca Um dos problemas mais comuns encontrados durante o desenvolvimento de jogos eletrônicos fica por conta da movimentação dos personagens controlados por

11 computador, estes tipos são conhecidos com algoritmos de busca, justamente por procurarem um caminho que o computador deve seguir [BOURG, 2004]. Existem várias maneiras de realizar este tipo de controle, alguns mais fáceis (que eventualmente acabam tendo como resultado uma inteligência artificial fraca, deixando os personagens mais burros ) e outras mais difíceis (algoritmos complexos, muito trabalhosos, mas geralmente com bons resultados). Existem algoritmos simples, como os algoritmos de movimento aleatório que podem ser eficientes. Basta gera uma direção aleatória e realizar um calculo simples, verificando colisão (BOURG, 2004). Este tipo de algoritmo pode ser útil para jogos simples, mas para jogos mais elaborados, acaba fazendo com que o jogo perca um pouco a imersão, personagens andando sem nenhum sentido, apenas vagando não tornam o jogo rico (BOURG, 2004) (BUCKLAND, 2005). Para jogos mais sofisticados, melhores trabalhados, existem algoritmos como o A* que realiza uma busca pelo melhor caminho entre dois pontos. Para isto, é necessário trabalhar com o mapeamento de todo cenário do jogo, como exibido na figura a seguir, baseando-se em grafos (estruturas de dados que representa um conjunto de pontos ligados). Figura 6: Cenário representado por matriz Fonte:Adaptado de (BOURG, 2004) Esses tipos de algoritmos exigem mais pratica do lado do desenvolvedor por trazerem preocupações como com o consumo de processamento e o uso de memória que podem dificultar o desenvolvimento (BOURG, 2004) (BUCKLAND, 2005). Existem muitos outros algoritmos para realizar busca por caminho, cada algoritmo tem seus pontos positivos e negativos, cabe ao desenvolvedor escolher o melhor para aplicar em seu jogo.

12 4. Desenvolvimento do Projeto Desenvolver jogos é uma tarefa cada vez mais simples, pois existem diversos motores para criações de jogos e o problema acaba ficando por conta de inovações que são aplicadas em tais jogos. A inteligência artificial pode ser enquadrada dentro destas inovações, apesar de existirem deveras ferramentas e livros que ajudem no desenvolvimento, pois os algoritmos normalmente são complexos e muito específicos. 4.1 Cenários do Projeto O projeto foi desenvolvido no motor Unity3d, utilizando C# e Visual Studio O desenvolvimento foi divido em três partes principais, o mapeamento do cenário, a movimentação dos NPCs e o controle das ações do computador Mapeamento do Cenário Pensando na utilização de algoritmos de busca, o cenário foi todo mapeado utilizando uma matriz como base. Essa matriz foi montada em XML, era realizada a leitura e os dados chegavam para cada entidade do jogo, que deveria tomar conta das próprias decisões. Cada índice da matriz representa um nó de um grafo, que é utilizado para o algoritmo de busca. Para realizar o calculo é necessário mapear os caminhos válidos através de um índice comum (é possível ter mais de um índice que represente caminho válido, como por exemplo, uma ponte no meio da estrada poderia ter um número que a represente de maneira diferente da própria estrada) e mapear os outros lugares com diferentes índices. 4.2 Controle dos NPCs O principal objetivo do projeto, ao desenvolver os NPCs (Non-player Character, ou personagens que não são controlados pelos jogadores), era obter um resultado, sempre buscando os melhores caminhos, o mais rápido possível. Para desenvolver o algoritmo de busca, foram aplicadas técnicas do algoritmo de Dijkstra, com alguns diferenciais, como busca em oito direções e utilização de peso em cada nó. Para aperfeiçoar o tempo de resposta, o cenário foi divido em regiões. O algoritmo verifica primeiramente o melhor caminho entre as regiões, classifica-os e então, é traçado o melhor caminho para o personagem controlado pelo computador Atributos Foram criados vários atributos para os NPCs, valendo destacar: Resistência: O personagem consome este atributo para realizar os movimentos; Velocidade: Base para o calculo da movimentação do personagem pelo cenário;

13 Direção: Indica o próximo local que o personagem deve ir. Como o movimento é realizado baseando-se em matriz, a direção é calculada através da diferença entre o nó atual e o próximo; Capacidade: Atributo que indica o quanto o personagem pode carregar, em proporções um para um (por exemplo, uma unidade de madeira consome uma de capacidade); Através destes atributos é possível realizar a movimentação do personagem, controlar o quanto ele esta carregando e identificar se ele está cansado. Esses tipos de dados são úteis para realizar a dinâmica do projeto. 4.3 Classe NPC A classe NPC é responsável por tratar todos os dados e ações dos personagens. Todo controle das ações do personagem é realizado por máquinas de estado finito. Os estados são estes: Descansando: O personagem está recuperando a resistência; Cortando madeira: O personagem está coletando madeira; Procurando Caminho: O personagem já esta com destino certo porém, ainda não foi decidido o melhor caminho; Andando: Realiza o movimento do personagem pelo cenário; Buscando: Personagem não possui objetivo definido, e se move por destinos aleatórios; Guardar Madeira: Personagem já esta sem capacidade e deve voltar para guardar toda a madeira; A vantagem de utilizar máquinas de estado finito fica pelo controle de ações que o personagem vai executar, pois ele só pode estar em um estado por vez, desta maneira fica mais simples encontrar problemas, e desenvolver ações novas. 5. Conclusão Tomando como premissa de que a idéia principal do projeto eram estudos sobre aplicações de inteligência artificial em jogos eletrônicos, pode-se considerar que foi

14 bem sucedido. Foram realizados estudos de vários algoritmos de inteligência artificial e realizada a aplicação de alguns destes algoritmos. Durante o desenvolvimento foram encontrados vários obstáculos, como o processamento do computador durante a execução dos algoritmos de busca, que são realmente pesados e devem ser utilizados cautelosamente. Existem várias formas de desenvolver algoritmos de busca, a escolha deve ser feita minuciosamente para não comprometer o desenvolvimento do jogo. Os algoritmos de máquina de estado finito se mostraram muito eficientes, é realmente simples trabalhar com estes tipos de algoritmos e não foram encontrados problemas. Vale ressaltar que os algoritmos de MEF são determinísticos, para obter um resultado mais vistoso é necessário utilizar algoritmos não determinísticos, pois a máquina de estados limita a aplicação. Algo me chamou a atenção durante os estudos sobre a inteligência artificial nos jogos eletrônicos, é que ela realmente pode ser tratada como uma ilusão. Muitas vezes o objetivo é alcançado com menos esforço que o estimado, o foco principal do desenvolvedor deve ser o resultado. Os jogadores não se interessam em saber como foi desenvolvido, só querem jogar um jogo desafiador e divertido. Como mostra o estudo realizado pelos designers do jogo Halo, que às vezes basta dificultar um pouco mais, mesmo que saindo da realidade, como aumentando muito os pontos de vida dos boots ou então fazer com que a chance do computador acertar tiros certeiros seja bem grande, para que as pessoas acreditem que eles sejam mais inteligentes. Segundo Buckland, se as pessoas acreditam que o computador é inteligente, isto pode significar que ele realmente seja. Inteligência artificial em jogos eletrônicos pode ser mais simples que esperado, como tudo, é necessário estudo e dedicação. Existem diversos livros como o Programming Game AI By Example, do Mat Buckland (explica detalhadamente a criação de vários algoritmos de inteligência artificial), vários algoritmos na internet e Engines, como a Unity3d (que já possui algoritmos de inteligência artificial programados, bastando apenas aplicá-los), que podem auxiliar os desenvolvedores menos experientes. Enfim, a utilização de inteligência artificial realmente enriquece, e muito, a experiência do jogador, o jogo como um todo. É valido utilizar IA não apenas para dificultar o jogo na campanha para apenas um jogador, conhecido como modo single player, mais também contribuindo com ações que são inesperadas, reações que humanos teriam, ou até mesmo melhores que as dos próprios humanos. Referências Bourg, D. Gleen, S. AI for Game Developers. Sebastopol: O Reilly Media, Inc ed. 400p. Buckland, M. Programming Game AI by Example. Jones & Bartlett, ed. 500p.

15 Kishimoto, A. Inteligência Artificial em Jogos Eletrônicos Disponível em: < >Acesso em 02 de maio de Michaelis, 2009, Dicionário Online Michaelis Disponível em: < Acesso em 02 de fevereiro de Russel, S. Norving, P. Inteligência Artificial. Rio de Janeiro: Campus, 2004 Santana, R. T. I.A. em jogos: A busca competitiva entre o homem e a máquina, Schwab, B. AI Game Engine Programming. Charles River Media, ed. 736p. The ESA, The Evolution of Mobile Games. 2012, Disponível em: < Acesso em 04 de agosto de Pereira, I. S Eu, Robô e a Inteligência Artificial Forte: o Homem entre Mente e Máquina. Ciencia & Cognição. V.9, p , 2006.

Inteligência Computacional para Jogos Eletrônicos

Inteligência Computacional para Jogos Eletrônicos Inteligência Computacional para Jogos Eletrônicos Papéis da IA em Jogos Adversários Aliados Personagens de apoio NPC s (Non-player Character) Comentaristas Controle de câmera Geração de fases Nivelamento

Leia mais

Inteligência Artificial. Aula 1 Prof. Nayat Sánchez Pi

Inteligência Artificial. Aula 1 Prof. Nayat Sánchez Pi Inteligência Artificial Aula 1 Prof. Nayat Sánchez Pi Curso: Inteligência Artificial Página web: http://nayatsanchezpi.com Material: Livro texto: Inteligência Artiicial, Russell & Norvig, Editora Campus.

Leia mais

Fabrício Jailson Barth BandTec

Fabrício Jailson Barth BandTec Introdução à Inteligência Artificial Fabrício Jailson Barth fabricio.barth@bandtec.com.br BandTec 1 o semestre de 2012 Objetivos e Sumário O que é Inteligência Artificial (IA)? Objetivos da IA. Influência

Leia mais

Inteligência Artificial. Aula 2

Inteligência Artificial. Aula 2 Inteligência Artificial Aula 2 Retomada da aula passada O que é Inteligência Artificial Inteligência Artificial é o estudo de como fazer os computadores realizarem coisas que, no momento, as pessoas fazem

Leia mais

INTELIGÊNCIA COMPUTACIONAL

INTELIGÊNCIA COMPUTACIONAL Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br A Inteligência Computacional (IC), denominada originalmente de Inteligência Artificial (IA), é uma das ciências

Leia mais

Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos

Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos Aula 6 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA

Leia mais

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade,

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, 1 Introdução Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade, os desafios encontrados durante o desenvolvimento

Leia mais

Inteligência Artificial. Josiane M. Pinheiro Ferreira Maio/2009

Inteligência Artificial. Josiane M. Pinheiro Ferreira Maio/2009 Inteligência Artificial Josiane M. Pinheiro Ferreira Maio/2009 Inteligência Artificial (IA) Estuda e tenta construir entidades inteligentes Durante milhares de anos procuramos entender como pensamos: Como

Leia mais

O INÍCIO CIÊNCIA DA COMPUTAÇÃO

O INÍCIO CIÊNCIA DA COMPUTAÇÃO O INÍCIO CIÊNCIA DA COMPUTAÇÃO por: André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2015/unitec Os códigos da guerra Alan Turing foi um incrível matemático, lógico e criptoanalista, cujos

Leia mais

Inteligência Artificial Agentes Inteligentes

Inteligência Artificial Agentes Inteligentes Inteligência Artificial Jarley P. Nóbrega, Dr. Faculdade Nova Roma Bacharelado em Ciência da Computação jpn@jarley.com Semestre 2018.2 Jarley P. Nóbrega, Dr. (Nova Roma) Inteligência Artificial Semestre

Leia mais

Casa do Código Livros para o programador Rua Vergueiro, º andar Vila Mariana São Paulo SP Brasil

Casa do Código Livros para o programador Rua Vergueiro, º andar Vila Mariana São Paulo SP Brasil Casa do Código Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998. Nenhuma parte deste livro poderá ser reproduzida, nem transmitida, sem autorização prévia por escrito da editora,

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Professor Rafael Stubs Parpinelli E-mail: rafael.parpinelli@udesc.br udesc.academia.edu/rafaelstubsparpinelli www.researchgate.net/profile/rafael_parpinelli www.joinville.udesc.br/portal/professores/parpinelli/

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Conceitos de Inteligência e Inteligência Artificial.

Leia mais

Estudo comparativo de Inteligência Artificial em jogos

Estudo comparativo de Inteligência Artificial em jogos Estudo comparativo de Inteligência Artificial em jogos Jonas de Carvalho Felinto 1, Helen Cristina de Mattos Senefonte 1 1 Departamento de Computação Universidade Estadual de Londrina (UEL) Caixa Postal

Leia mais

Agentes Inteligentes. Inteligência Artificial

Agentes Inteligentes. Inteligência Artificial Agentes Inteligentes (Capítulo 2 - Russell) Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Definições 2. Ambiente de Tarefas 3. Exemplos de ambiente de Tarefas 4. Propriedades

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 04 Inteligência Artificial O que é IA? Automação de atividades associadas ao pensamento humano (tomada de decisões,

Leia mais

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação http://www.inf.unioeste.br/~claudia/ia2017.html Inteligência Artificial Resolução de problemas por meio de algoritmos

Leia mais

Profa. Sheila Morais de Almeida. março

Profa. Sheila Morais de Almeida. março Classificação das Ciências Profa. Sheila Morais de Almeida DAINF-UTFPR-PG março - 2019 Sheila Almeida (DAINF-UTFPR-PG) Classificação das Ciências março - 2019 1 / 23 Este material é preparado usando como

Leia mais

Inteligência Articial: Introdução

Inteligência Articial: Introdução x MYCIN Inteligência Articial: Introdução Paulo Gurgel Pinheiro MC906A - Inteligência Articial Instituto de Computação Universidade Estadual de Campinas UNICAMP 03 de Agosto de 2010 1 / 31 x MYCIN http://www.ic.unicamp.br/

Leia mais

Inteligência Artificial. Conceitos Gerais

Inteligência Artificial. Conceitos Gerais Inteligência Artificial Conceitos Gerais Inteligência Artificial - IA IA é um campo de estudo multidisciplinar e interdisciplinar, que se apóia no conhecimento e evolução de outras áreas do conhecimento.

Leia mais

3 Aprendizado por reforço

3 Aprendizado por reforço 3 Aprendizado por reforço Aprendizado por reforço é um ramo estudado em estatística, psicologia, neurociência e ciência da computação. Atraiu o interesse de pesquisadores ligados a aprendizado de máquina

Leia mais

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2) Paradigma Simbólico Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2) Revisão da aula anterior: definição de IA Podemos associar o termo IA com: Parte da ciência da computação

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 01 - Introdução O Que é Inteligência Artificial? [Winston, 1984]: "Inteligência artificial é o estudo das ideias que

Leia mais

JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R.

JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R. JOGO - TEDDY S RUN SILVA, L.C.S.; VERONA, E.D. ; RANDO, D. R.; MODESTO, L. R. RESUMO: Com o intuito de promover um meio de entretenimento de forma simples e que não exija um grande conhecimento em jogos

Leia mais

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS. Marcelo Henrique dos Santos Aula 5 TECNOLOGIA EM JOGOS DIGITAIS INTELIGÊNCIA ARTIFICIAL PARA JOGOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA

Leia mais

Inteligência Artificial - IA. Agentes Inteligentes

Inteligência Artificial - IA. Agentes Inteligentes Agentes Inteligentes 1 O que é pensar racionalmente? Segundo Aristóteles: pensar racionalmente é um processo de raciocínio irrefutável. Argumentos que resultam em conclusões corretas ao receberem premissas

Leia mais

Linguagens Formais e Autômatos. Autômatos Finitos Determinísticos (AFD)

Linguagens Formais e Autômatos. Autômatos Finitos Determinísticos (AFD) Linguagens Formais e Autômatos Autômatos Finitos Determinísticos (AFD) Cristiano Lehrer, M.Sc. Linguagens Regulares A teoria da computação começa com uma pergunta: O que é um computador? É, talvez, uma

Leia mais

Aprendizado por Árvores de Decisão

Aprendizado por Árvores de Decisão Universidade Federal de Santa Maria Departamento de Eletrônica e Computação Prof. Cesar Tadeu Pozzer Disciplina de Programação de Jogos 3D E-mail: pozzer@inf.ufsm.br Período: 2006/01 Aprendizado por Árvores

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação (Machine Learning) Aula 01 Motivação, áreas de aplicação e fundamentos Max Pereira Nem todo conhecimento tem o mesmo valor. O que torna determinado conhecimento mais importante que

Leia mais

Inteligência Artificial - IA. Resolução de problemas por meio de busca

Inteligência Artificial - IA. Resolução de problemas por meio de busca Resolução de problemas por meio de busca 1 Agente reativo - definido por ação reação Agente de resolução de problemas (ou baseado em objetivos) encontra sequencias de ações que leva ao estado desejável.

Leia mais

Ítalo Eber de Souza Moraes.

Ítalo Eber de Souza Moraes. Ítalo Eber de Souza Moraes italoe@gmail.com Introdução Inteligência artificial aplicada a jogos apresenta um montante extraordinário de desafios que se relacionam aos objetivos de proporcionar fidelidade

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 24 Aprendizado Por Reforço Formas de Aprendizado Aprendizado Supervisionado Árvores de Decisão. K-Nearest Neighbor (KNN).

Leia mais

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall.

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão

Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão Projeto e Análise de Algoritmos NP Completude Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Universidade Federal de Alfenas versão da aula: 0.4 Introdução Problemas intratáveis ou difíceis são comuns

Leia mais

Tenha uma visão geral do seu processo de vendas

Tenha uma visão geral do seu processo de vendas Tenha uma visão geral do seu processo de vendas INTRODUÇÃO... 03 ENTENDENDO O QUE É UM... 05 PROCESSO DE VENDAS AS ETAPAS DO PROCESSO... 08 DE VENDAS BOAS PRÁTICAS OTIMIZAM... 13 SEU PROCESSO DE VENDAS

Leia mais

A Inteligência Artificial no Auxílio de Tomadas de Decisão

A Inteligência Artificial no Auxílio de Tomadas de Decisão A Inteligência Artificial no Auxílio de Tomadas de Decisão Introdução A globalização está fazendo com que as organizações tenham que ajustar-se à nova economia, precisando adequar seus custos e aumentar

Leia mais

Inteligência Artificial em Jogos

Inteligência Artificial em Jogos Inteligência Artificial em Jogos Marcos Romero Maurício Lacerda Projeto JEDI Jogos Eletrônicos Distribuídos e Inteligentes www.geocities.com/progjogos Sumário Fundamentos - Máquinas de estados finitos

Leia mais

Redes Neurais e Sistemas Fuzzy

Redes Neurais e Sistemas Fuzzy 1. Inteligência Computacional Redes Neurais e Sistemas Fuzzy Apresentação da disciplina Conceitos básicos A chamada Inteligência Computacional (IC) reúne uma série de abordagens e técnicas que tentam modelar

Leia mais

Aprendizado de Máquina Aplicado à Jogos

Aprendizado de Máquina Aplicado à Jogos Aprendizado de Máquina Aplicado à Jogos Leandro Soriano Marcolino 14 de novembro de 2006 Inteligência Artificial para Jogos Introdução Por que utilizar técnicas de aprendizado? IA é um diferencial Capacidade

Leia mais

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014. DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Apresentação Computação e Programação (CP) 2013/2014 Aula 1 Objetivos Ficar a saber: funcionamento da unidade curricular (UC) Computação

Leia mais

NIGHTMARE BEATS. Acadêmico do Curso de Bacharelado em Sistemas de Informação da Faculdade de Apucarana FAP 2

NIGHTMARE BEATS. Acadêmico do Curso de Bacharelado em Sistemas de Informação da Faculdade de Apucarana FAP 2 NIGHTMARE BEATS SOUZA, Gustavo de Oliveira 1 ; CRUZ, Fernando Ferreira da 2 ; MODESTO, Lisandro Rogério 3 ; RANDO, Déverson Rogério 4 RESUMO Objetivo: Implementar um jogo para que sirva de entretenimento

Leia mais

Introdução aos Computadores e Programação

Introdução aos Computadores e Programação Instituto Superior Politécnico de Ciências e Tecnologia Introdução aos Computadores e Programação Prof Pedro Vunge II Semestre de 2018 SUMÁRIO : INTRODUÇÃO ÀPROGRAMAÇÃO 2 Introdução à Programação Nos dias

Leia mais

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

PCC104 - Projeto e Análise de Algoritmos

PCC104 - Projeto e Análise de Algoritmos PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 5 de dezembro de 2017 Marco Antonio

Leia mais

6 Aplicações Detalhes da Implementação

6 Aplicações Detalhes da Implementação 6 Aplicações Neste trabalho, é importante implementar aplicações de interação em tempo real para que seja possível avaliar a aplicabilidade das técnicas de Visão Computacional descritas ao longo dos capítulos

Leia mais

Conhecimento Incerto Decisões Sobre Incerteza

Conhecimento Incerto Decisões Sobre Incerteza Conhecimento Incerto Decisões Sobre Incerteza Profa. Josiane M. P. Ferreira Texto base: David Poole, Alan Mackworth e Randy Goebel - Computational Intelligence A logical approach cap 10. Stuart Russel

Leia mais

INTELIGÊNCIA ARTIFICIAL. Prof. Cedric Luiz de Carvalho

INTELIGÊNCIA ARTIFICIAL. Prof. Cedric Luiz de Carvalho INTELIGÊNCIA ARTIFICIAL Será que ainda vou precisar 2/30 de Inteligência Artificial? 3/30 O que é IA? Campo do conhecimento que tenta entender e construir agentes inteligentes 4/30 Quais ações podem ser

Leia mais

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

GamePlay. Tainá Jesus Medeiros. 28 de Abril de Profa Tainá Medeiros

GamePlay. Tainá Jesus Medeiros. 28 de Abril de Profa Tainá Medeiros GamePlay Tainá Jesus Medeiros tainajmedeiros@gmail.com 28 de Abril de 2016 Definição Jogabilidade (gameplay ou playability) é um termo na indústria de jogos eletrônicos que inclui todas as experiências

Leia mais

INTRODUÇÃO A METODOLOGIA GAME DESIGN PARA A CRIAÇÃO DE JOGOS ELETRÔNICOS

INTRODUÇÃO A METODOLOGIA GAME DESIGN PARA A CRIAÇÃO DE JOGOS ELETRÔNICOS INTRODUÇÃO A METODOLOGIA GAME DESIGN PARA A CRIAÇÃO DE JOGOS ELETRÔNICOS CAMILETTI, A.P.; MODESTO, L.R RESUMO: Este trabalho tem por finalidade apresentar uma introdução à metodologia Game Design que é

Leia mais

AGENTES E AMBIENTES. BREVE INTRODUÇÃO A AGENTES Prof. Tacla UTFPR/Curitiba

AGENTES E AMBIENTES. BREVE INTRODUÇÃO A AGENTES Prof. Tacla UTFPR/Curitiba AGENTES E AMBIENTES BREVE INTRODUÇÃO A AGENTES Prof. Tacla UTFPR/Curitiba AGENTE SITUADO Ênfase na visão de IA como agente situado e racional em um ambiente que consegue perceber por meio de sensores e

Leia mais

A Matemática como Serviço a Ciência da Computação. Prof. Dr. Carlos Eduardo de Barros Paes Coordenador do Curso de Ciência da Computação

A Matemática como Serviço a Ciência da Computação. Prof. Dr. Carlos Eduardo de Barros Paes Coordenador do Curso de Ciência da Computação A Matemática como Serviço a Ciência da Computação Prof. Dr. Carlos Eduardo de Barros Paes Coordenador do Curso de Ciência da Computação A Matemática e Ciência da Computação A Matemática faz parte do DNA

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 Material de apoio: Stuart Russel, Peter Norvig.

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 18 Aprendizado Por Reforço Edirlei Soares de Lima Formas de Aprendizado Aprendizado Supervisionado Árvores de Decisão. K-Nearest Neighbor (KNN).

Leia mais

Introdução a Inteligência Artificial

Introdução a Inteligência Artificial 1 Introdução a Inteligência Artificial Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de 2 Introdução a Conceitos Agindo de forma humana Pensando como humano Pensando racionalmente

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Fabrício Olivetti de França 07 de Junho de 2018 1 Agentes 2 Agente, Ambiente e Sensores Um agente é definido pelo ambiente que ele consegue perceber através de seus sensores e as

Leia mais

Agentes Inteligentes. CAPÍTULO 2 - Russell

Agentes Inteligentes. CAPÍTULO 2 - Russell Agentes Inteligentes CAPÍTULO 2 - Russell O que é um Agente Inteligente Um agente é tudo o que pode ser considerado capaz de perceber seu ambiente por meio de sensores e de agir sobre seu ambiente por

Leia mais

Oi, Ficou curioso? Então conheça nosso universo.

Oi, Ficou curioso? Então conheça nosso universo. Oi, Somos do curso de Jogos Digitais da Universidade Franciscana, e esse ebook é um produto exclusivo criado pra você. Nele, você pode ter um gostinho de como é uma das primeiras aulas do seu futuro curso.

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE)

IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE) IMPLEMENTAÇÃO DE VISUALIZAÇÃO DE PERSONAGEM NÃO JOGADOR NA MOBILE 3D GAME ENGINE (M3GE) Nome: Claudio José Estácio Orientador: Prof. Dr. Paulo Cesar Rodacki Gomes Roteiro de Apresentação 1. Introdução

Leia mais

Gerência de Memória Memória Virtual e Paginação

Gerência de Memória Memória Virtual e Paginação Memória Virtual e Paginação Carlos Gustavo A. da Rocha Memória virtual O tamanho das memórias aumenta rápido :) Mas o tamanho dos softwares aumenta mais rápido :( Devido a isto os SOs devem ser capazes

Leia mais

Sistemas de Informação e Decisão. Douglas Farias Cordeiro

Sistemas de Informação e Decisão. Douglas Farias Cordeiro Sistemas de Informação e Decisão Douglas Farias Cordeiro Decisão Tomamos decisões a todo momento! O que é uma decisão? Uma decisão consiste na escolha de um modo de agir, entre diversas alternativas possíveis,

Leia mais

Introdução à Lógica de Programação

Introdução à Lógica de Programação Introdução à Lógica de Programação Não estamos aqui para sobreviver e sim para explorar a oportunidade de vencer adquirindo o saber! (Autor Desconhecido) A lógica é a arte de pensar correctamente e, visto

Leia mais

TÍTULO: TRATAMENTO NÃO FARMACOLÓGICO DE IDOSOS PORTADORES DE ALZHEIMER UTILIZANDO A FERRAMENTA EXPERT SINTA - IA

TÍTULO: TRATAMENTO NÃO FARMACOLÓGICO DE IDOSOS PORTADORES DE ALZHEIMER UTILIZANDO A FERRAMENTA EXPERT SINTA - IA TÍTULO: TRATAMENTO NÃO FARMACOLÓGICO DE IDOSOS PORTADORES DE ALZHEIMER UTILIZANDO A FERRAMENTA EXPERT SINTA - IA CATEGORIA: CONCLUÍDO ÁREA: CIÊNCIAS EXATAS E DA TERRA SUBÁREA: Computação e Informática

Leia mais

INTELIGÊNCIA ARTIFICIAL

INTELIGÊNCIA ARTIFICIAL Figura: Capa do Livro Russell, S., Norvig, P. Artificial Intelligence A Modern Approach, Pearson, 2009. Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Pós-Graduação

Leia mais

Escalonador de Ordens de Produção Utilizando Algoritmos Genéticos

Escalonador de Ordens de Produção Utilizando Algoritmos Genéticos Escalonador de Ordens de Produção Utilizando Algoritmos Genéticos Nome: Wilian Kohler Supervisor na FURB: Prof. Jomi Fred Hübner Orientador na Empresa: Evaldo Moresco Jr. Empresa: Metalúrgica Siemsen Ltda.

Leia mais

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Proposta por Alan Turing em 1936; É universalmente conhecida e aceita como formalização de algoritmo; Teoria

Leia mais

Inteligência Artificial. 3º Quadrimestre de 2018

Inteligência Artificial. 3º Quadrimestre de 2018 Inteligência Artificial Prof. Fabrício Olivetti de França Prof. Denis Fantinato 3º Quadrimestre de 2018 1 Busca Competitiva 2 Busca Competitiva Quando falamos sobre agentes mencionamos alguns cenários

Leia mais

#Conceituação. Algoritmos. Eliezio Soares

#Conceituação. Algoritmos. Eliezio Soares INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS SÃO GONÇALO DO AMARANTE Algoritmos #Conceituação Eliezio Soares Eliezio.soares@ifrn.edu Computadores e Tarefas 1. O computador

Leia mais

OCEAN ADVENTURES. BRUZAFERRO, Guilherme 1 ; SANTOS, Anderson Batista dos 2 ; MODESTO, Lisandro Rogério 3 ; RANDO, Déverson Rogério 4

OCEAN ADVENTURES. BRUZAFERRO, Guilherme 1 ; SANTOS, Anderson Batista dos 2 ; MODESTO, Lisandro Rogério 3 ; RANDO, Déverson Rogério 4 OCEAN ADVENTURES BRUZAFERRO, Guilherme 1 ; SANTOS, Anderson Batista dos 2 ; MODESTO, Lisandro Rogério 3 ; RANDO, Déverson Rogério 4 RESUMO Objetivo: Esse trabalho tem como objetivo o desenvolvimento de

Leia mais

7 Benefícios do Ensino a Distância (EAD) Para Quem Tem Pouco Tempo

7 Benefícios do Ensino a Distância (EAD) Para Quem Tem Pouco Tempo Ensino a Distância 7 Benefícios do Ensino a Distância (EAD) Para Quem Tem Pouco Tempo Cuca Cursos made with Sobre o Cuca Cursos Portal de ensino a distância, com cursos online de diversas categorias. O

Leia mais

IPRJ TÓPICOS ESPECIAIS EM LINGUAGENS DE PROGRAMAÇÃO TRABALHO 3 UNITY 3D

IPRJ TÓPICOS ESPECIAIS EM LINGUAGENS DE PROGRAMAÇÃO TRABALHO 3 UNITY 3D IPRJ TÓPICOS ESPECIAIS EM LINGUAGENS DE PROGRAMAÇÃO TRABALHO 3 UNITY 3D O objetivo do trabalho 3 é desenvolver uma fase de um jogo de aventura utilizando a Unity 3D. Neste jogo, o jogador deve controlar

Leia mais

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1

MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 MODELAGEM E IMPLEMENTAÇÃO DE JOGOS APLICADOS A APRENDIZAGEM DE MÁQUINA 1 Jean Rafael Reus Da Silva 2, Rafael Zancan Frantz 3, Sandro Sawicki 4. 1 Projeto de Iniciação Científica. 2 Aluno do Curso de Graduação

Leia mais

Sobre o Artigo. Searle, John, R. (1980). Minds, brains and programs. Behavioral and Brain Sciences 3(3):

Sobre o Artigo. Searle, John, R. (1980). Minds, brains and programs. Behavioral and Brain Sciences 3(3): Sobre o Artigo Searle, John, R. (1980). Minds, brains and programs. Behavioral and Brain Sciences 3(3): 417-457 Searle John Rogers Searle (Denven, 31 de julho de 1932) é um filósofo e escritor estadunidense,

Leia mais

Apresentação. Informação geral + Conceitos iniciais

Apresentação. Informação geral + Conceitos iniciais Apresentação Informação geral + Informação geral Página da cadeira Objectivos principais Compreender a importância dos algoritmos e dos programas de computador para a resolução de problemas em engenharia.

Leia mais

Inovações Tecnológicas

Inovações Tecnológicas Inovações Tecnológicas Start-ups Computação em Nuvem Algoritmo Tecnologia Disruptiva Big Data Inteligência Artificial Internet das Coisas Blockchain, Criptomoedas e Bitcoin Start-ups Empreendimento em

Leia mais

Simulação de Futebol de Robôs

Simulação de Futebol de Robôs Departamento de Engenharia Elétrica Simulação de Futebol de Robôs Aluna: Bianca Burgos Maron Orientadora: Marley Vellasco Introdução A inteligência computacional e suas aplicações em robôs inteligentes

Leia mais

Aprenda a usar o Facebook para alcançar mais clientes. a gênciaconfirma

Aprenda a usar o Facebook para alcançar mais clientes. a gênciaconfirma Aprenda a usar o Facebook para alcançar mais clientes. Facebook no Brasil 100 milhões de pessoas utilizam todos os dias Facebook no Brasil 100 milhões de pessoas utilizam todos os dias 5 milhões são administradores

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Apresentação da disciplina Conceitos básicos Prof. Paulo Martins Engel Informática UFRGS Prof. Paulo Martins Engel Objetivos Apresentar uma visão geral da Inteligência Artificial,

Leia mais

Ciência da Computação

Ciência da Computação Ciência da Computação TCC em Re vista 2009 33 CAMPOS, Fernando Antonio Barbeiro; SANTUCI, Leonardo Balduino 5. Estudo de aplicabilidade do padrão MVC. 2009. 111 f. Trabalho de Conclusão de Curso (Graduação

Leia mais

1 Introdução. I know because I must know. It's my purpose. It's the reason I'm here. (The Matrix) 1.1 Objetivos do trabalho

1 Introdução. I know because I must know. It's my purpose. It's the reason I'm here. (The Matrix) 1.1 Objetivos do trabalho 1 Introdução I know because I must know. It's my purpose. It's the reason I'm here. (The Matrix) 1.1 Objetivos do trabalho Os hardwares gráficos atualmente podem ser considerados como verdadeiros processadores

Leia mais

Universidade dos Açores Campus de angra do Heroísmo Ano Letivo: 2013/2014 Disciplina: Aplicações da Matemática Docente: Ricardo Teixeira 3º Ano de

Universidade dos Açores Campus de angra do Heroísmo Ano Letivo: 2013/2014 Disciplina: Aplicações da Matemática Docente: Ricardo Teixeira 3º Ano de Universidade dos Açores Campus de angra do Heroísmo Ano Letivo: 2013/2014 Disciplina: Aplicações da Matemática Docente: Ricardo Teixeira 3º Ano de Licenciatura em Educação Básica - 1º Semestre O jogo é

Leia mais

ASSISTENTE DIGITAL PARA BUSCA INTELIGENTE DE INFORMAÇÕES

ASSISTENTE DIGITAL PARA BUSCA INTELIGENTE DE INFORMAÇÕES ASSISTENTE DIGITAL PARA BUSCA INTELIGENTE DE INFORMAÇÕES Inspiração inicial : Ter um dispositivo que pudéssemos perguntar : Quantos consumidores estão sem luz? Quais agências de atendimento estão sobrecarregadas?

Leia mais

USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1

USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1 USO DE JOGOS LÓGICOS APLICADOS A APRENDIZAGEM DE MÁQUINA. 1 Jean Rafael Reus Da Silva 2, Rogerio Samuel De Moura Martins 3, Renato Perez Ribas 4, Rafael Zancan Frantz 5, Sandro Sawicki 6. 1 Projeto de

Leia mais

Introdução a Algoritmos

Introdução a Algoritmos Universidade Federal do Vale do São Francisco Introdução a Algoritmos Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Página: www.univasf.edu.br/~marcelo.linder Programa da Disciplina

Leia mais

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP)

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP) Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 15 Árvores de Decisão Árvores de Decisão Uma das formas de algoritmo de aprendizado mais simples e de maior sucesso.

Leia mais

Produzido para você por:

Produzido para você por: Produzido para você por: www.fbultimate.com.br Sobre Felipe Moreira: 1º WORKSHOP DE VENDAS E LUCROS NO FACEBOOK Vídeo #1: As 4 Taxas de Ações Estúpidas Nesse primeiro vídeo do workshop você está vendo

Leia mais

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer Algoritmos e Estrutura de Dados I Conceitos de Algoritmos Prof. Elyssandro Piffer CONCEITO DE ALGORITMO O computador pode auxiliar em muitas tarefas, contudo ele não possui independência, não é inteligente,

Leia mais

Inteligência Artificial. Agentes computacionais. Aula IV Cap.2 Russell e Norvig (continuação)

Inteligência Artificial. Agentes computacionais. Aula IV Cap.2 Russell e Norvig (continuação) Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Agentes computacionais Aula IV Cap.2 Russell e Norvig (continuação) Roteiro: Russell e Norvig,

Leia mais

Material criado e organizado por: Suéllen Rodolfo Martinelli. Disponibilizado em:

Material criado e organizado por: Suéllen Rodolfo Martinelli. Disponibilizado em: Material criado e organizado por: Suéllen Rodolfo Martinelli Disponibilizado em: www.scratchbrasil.net.br Um jogo muito simples e viciante que foi lançado no ano de 2014 para celulares, é o jogo Flappy

Leia mais

Título do Jogo. game design document versão dia/mês/ano

Título do Jogo. game design document versão dia/mês/ano Título do Jogo game design document versão dia/mês/ano 1. Contexto 4 1.1 Mundo 4 1.2 História do jogo 4 2. Mecânica do Jogo 4 2.1 Progressão do Jogo 4 2.2 Objetos 4 2.2.1 Personagens...4 2.2.2 Itens...5

Leia mais

Um Middleware de Inteligência Artificial para Jogos Digitais 105

Um Middleware de Inteligência Artificial para Jogos Digitais 105 6 Conclusão Este capítulo apresenta alguns comentários e considerações gerais sobre o trabalho de pesquisa realizado durante o desenvolvimento desta dissertação, as contribuições alcançadas e sugestões

Leia mais

Informática I. Aula Aula 20-5/11/2007 1

Informática I. Aula Aula 20-5/11/2007 1 Informática I Aula 20 http://www.ic.uff.br/~bianca/informatica1/ Aula 20-5/11/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

CRÉDITOS DO CURSO. Carga Horária Créditos IN1030 Seminários 30 2

CRÉDITOS DO CURSO. Carga Horária Créditos IN1030 Seminários 30 2 UNIVERSIDADE FEDERAL DE PERNAMBUCO PRÓ-REITORIA PARA ASSUNTOS DE PESQUISA E PÓS-GRADUAÇÃO ESTRUTURA CURRICULAR STRICTO SENSU (baseada na Res. 10/2008 do CCEPE) NOME DO CURSO: Pós-Graduação em Ciência da

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ A arquitetura básica de qualquer computador completo, seja um PC, um Machintosh ou um computador de grande porte, é formada por apenas 5 componentes básicos:

Leia mais

Faculdades Integradas de Cataguases- grupo unis. Tecnológia da Informação e comunicação. Aluno: Miriam Afonso Luma. Tecnologia.

Faculdades Integradas de Cataguases- grupo unis. Tecnológia da Informação e comunicação. Aluno: Miriam Afonso Luma. Tecnologia. Faculdades Integradas de Cataguases- grupo unis Tecnológia da Informação e comunicação Aluno: Miriam Afonso Luma Tecnologia Cataguases 2014 Aluno: Miriam Afonso Luma Tecnologia Cataguases 2014 No início,

Leia mais