Inteligência Artificial nos Games – Conceito e Histórico

Inteligencia-Artificial-nos-Games

Olá gurizada,

conforme anunciado no episódio 12 do PodAbrir, iniciaremos este ano novas categorias de posts no AoJ. O objetivo é entregar conteúdo atrativo e útil não só para quem está iniciando, mas também para quem já trabalha na área de games.  O primeiro arco de posts nesta linha falará sobre Inteligência Artificial. No post de hoje veremos o conceito e histórico da I.A nos games.

Inteligência Artificial (I.A.) é uma área de pesquisa da ciência da computação dedicada a buscar métodos ou dispositivos computacionais que possuam ou simulem a capacidade racional de resolver problemas, pensar ou, de forma ampla, ser inteligente.

Podemos identificar diferenças entre a sua aplicação na pesquisa e na indústria de games. A I.A. para jogos tem por objetivo criar a ilusão, realidade e desafio para o jogador. Devemos sempre ter em mente que uma I.A. “perfeita” não é real. Lembre-se:

“Jogadores não estão interessados em saber se o jogo utiliza uma rede neural, uma máquina de inferência ou uma máquina de estados finitos. Estão interessados em como o jogo aparenta ser inteligente.”

É fácil imaginar que um futebol com um time adversário com uma inteligência perfeita, seria extremamente enfadonho. Afinal um time é composto por pessoas, e pessoas não são perfeitas. Elas erram, cansam, se machucam, ficam bravas e até eufóricas. É este o grande desafio para quem desenvolve a I.A para jogos.

Histórico

Vamos analisar de forma resumida a evolução da I.A na história dos jogos digitais.

1962 à 1972Lançados respectivamente em 1962 e 1972, Space Wars e Pong foram desenvolvidos sem nenhum conceito de inteligência artificial para proporcionar um maior desafio ao jogador. Mesmo assim, são games divertidos e um marco para a época.
   1978
Foi lançado Space Invaders onde os inimigos apresentam movimentos padronizados, mas reagem atirando de volta. Considerado o primeiro jogo “clássico” com níveis, score, controles simples a dificuldade crescente no decorrer do tempo.
  1980
No desenvolvimento de Pac-man foi criados fantasmas com movimentos padronizados, porém cada fantasma possuia uma “personalidade”. O fantasma vermelho perseguia pac-man, o rosa era o mais veloz, o ciano procurava emboscar pac-man e o laranja movimentava-se de forma aleatória, era o bobinho do grupo :)
   1984
Um ano depois do primeiro microcomputador vencer um jogador real de xadrez, é lançado Karate Champ, o primeiro jogo de luta com o computador com o adversário.
  1990
É lançado Herzog Zwei um dos primeiros RTS da história.  Junto com ele o que seria a primeira, e péssima, implementação do algoritmo de pathfinding. O game destaca-se também pelo uso de FSM (Finite State Machines).
  1996
É lançado Blattle Cruiser 3000AD, o primeiro game comercial a utilizar o conceito de redes neurais. Os games a partir desta época destacam-se por utilizar um grande número de conceitos (FSM, PathFinding, Scripts, etc).

 1998
A inteligência artificial para jogos encontra-se em seu auge, é lançado Half Life. O jogo faz grande uso de linguagens de script. Um ano antes Deep Blue derrota o atual campeão mundial de xadrez Gary Kasparov.

2001
Black & White utiliza criaturas que usam aprendizado por reforço e por observação. O game destaca-se por utilizar o conceito de aprendizagem integrado a sua jogabilidade. Na virada do século era muito comum a I.A ser utilizada como um exemplo de tecnologia avançada, porém nem sempre em favor da boa jogabilidade

Bom pessoal, neste primeiro post sobre I.A ficamos por aqui. É importante darmos passos pequenos e sólidos nesta interessante área do desenvolvimento de games. Fique de olho nas novidades aqui no AoJ, pois lançaremos posts quinzenalmente sobre este assunto.

Um Save para vocês e até mais ;)

Autor: Everton Vieira Ver todos os posts de
Sou Bacharel em Análise de Sistemas pela Universidade Católica de Pelotas (UCPel) no ano de 1999. Minha paixão por games é de longa data. Porém, em 2003 tornei essa paixão uma profissão. Durante oito anos atuei como Game Designer e Arquiteto de Software em mais de 30 projetos de Serious Games (simuladores) para grandes empresas do país. Atualmente sou sócio-fundador da Izyplay Game Studio, onde exerço o cargo de Diretor de Criação. Além do envolvimento corporativo, também participei da organização da Pós Graduação em Arquitetura e Desenvolvimento de Jogos Digitais na FATEC SENAC Pelotas. Minha área de interesse e especialização é Game Design e Inteligência Artificial.

9 Comentários em "Inteligência Artificial nos Games – Conceito e Histórico"

  1. Gabriel Araujo 24/02/2012 at 10:39 - Reply

    Acredito que a imagem que se refere ao jogo “Blattle Cruiser” é na verdade do Starcraft 1…

    Sempre quis saber como funciona as IA daqueles jogos de luta e beat’up

    • everton.vieira 24/02/2012 at 14:05 - Reply

      Muito bem observado Gabriel. Já corrigimos!
      Nos próximos posts falarei exatamente sobre isso, as técnicas utilizadas em diversos tipos de games.
      Como diria o sábio Didi Mocó, aguardem e confiem :)

  2. Marcelo Martins 28/02/2012 at 14:58 - Reply

    Belo post, Everton!

    IA realmente é algo que faz uma diferente absurda nos jogos. Eu me pergunto se um dia teremos, de fato, inimigos que “aprendem” com o passar do jogo e se tornam mais perigosos.

    Ou, quem sabe, inimigos que aprendem com as partidas on-line?

    • everton.vieira 28/02/2012 at 16:04 - Reply

      Grande Marcelo,
      Já é possível dizer que isso ocorre em alguns jogos. Nos próximos posts veremos alguns exemplos e poderemos discutir se a técnica convenceu.

  3. Leandro Vian 01/03/2012 at 09:51 - Reply

    Salve galera, faz tempo que não posto nada mas garanto que continuo acessando diariamente o site. :)

    Gostei muito da ideia dessa nova série de posts e tenho certeza que vai fazer muita gente pensar a respeito quando estiver jogando, como foi dito no post já, é muito chato quando se percebe um “padrão” na inteligência artificial em que se tu fizer uma determinada jogada sempre da certo, pessoalmente quando descubro algo do tipo eu paro de fazer ela pois como gosto de desafio isso tira totalmente a graça pra mim. Tenho certeza que todos lembram de algum jogo/chefe em que se fosse feita um determinado movimento ou jogada ele se tornava mais fácil! :)

    abraços

    • everton.vieira 01/03/2012 at 11:28 - Reply

      Olá Leandro, que bom que você voltou a participar.
      Em relação aos padrões de movimentos, o ser humano é muito bom em identificá-los. Por este motivo, é importante o GD e o responsável pela I.A tomarem um cuidado especial na construção dos NPC´s (Non Player Characters). Uma prova viva disso são todos os jogos de futebol disponibilizados antes da virada do século. Praticamente todos eles apresentavam falhas onde o jogador conseguia seguir um determinado número de passos e fazer o gol (vide a série SideKicks da SNK). Porém, temos bons exemplos onde o padrão de movimento faz parte da jogabilidade, instigando o jogador a entender a sequencia ações. Um ótimo exemplo desta abordagem é toda a franquia Megaman, onde os vilões apresentam um padrão de movimento que deve ser “decorado”.

      Semana que vem tem mais posts sobre I.A., fique ligado ;)

  4. victor 10/07/2013 at 16:52 - Reply

    Amigo, só uma dúvida, qual foi o computador que ganhou no xadrez em 1983, eu só consigo me lembrar do Deep Blue que ganhou em 1996. Me tira essa dúvida?!

  5. Everton Vieira 11/07/2013 at 19:19 - Reply

    Olá Vitor,
    O computador que me refiro no post é o Cray Bitz que venceu pela primeira vez em 1983.
    http://en.wikipedia.org/wiki/Human%E2%80%93computer_chess_matches

  6. gustavo silveira 19/09/2015 at 10:51 - Reply

    Fiquei com uma dúvida, por que Herzog Zwei é considerado o primeiro RTS? Por que não seu predecessor, o primeiro Herzog?

Deixar um Comentário