Jogos inteligentes

Jogos Inteligentes

Jogos inteligentes

Olá tudo bem? Você já ouviu falar sobre inteligência artificial certo?! Abaixo vou falar um pouco sobre como elas são utilizadas nos games!

Tenho falado também sobre diversos outros assuntos sobre games, da uma olhadinha na minha coluna.

A Inteligência Artificial ou somente “IA” ou “AI – (artificial intelligence em inglês) como pode ser abreviada e é comumente chamada, já não é algo novo, foi na década de 50 um pouco depois da segunda guerra mundial que o termo começou a ser utilizado.

 Alan Turing, Herbert Simon, John McCarthy e outros pesquisadores, matemáticos e cientistas da época foram importantíssimos nesse campo de estudo, aliás, há na história que Aristóteles, professor de Alexandre, o Grande, já almejava substituir a mão-de-obra escrava por objetos autônomos sendo essa a primeira idealização de Inteligência Artificial conhecida.

A “IA” consiste em um sistema interpretar algo externo a partir do aprendizado de dados e realizar tarefas e objetivos através de uma adaptação flexível.

Ainda existem alguns medos e mitos em relação as IA’s, principalmente no mercado de trabalho, onde muitas pessoas acham que a IA vai substituir as pessoas em seus trabalhos. Embora as IA’s sejam muito mais efetivas que os seres humanos em tarefas repetitivas, com cálculos e algumas outras formas de interpretação, ainda está longe delas substituírem completamente os seres humanos.

Hoje já conhecemos muitos serviços que já utilizam IA e talvez você nem sabia, como Google Maps, Facebook, Intagram, Twitter, Corretores automáticos, Spotify, Netflix, Youtube, entre muitos outros serviços, as redes sociais por exemplo sabem o que mostrar na sua timeline, ou sugerir amigos, ou no caso do Youtube ou Netflix sugerir quais filmes você gostaria de assistir tudo por aprender sobre você, e do aprendizado que teve com você sugerir coisas para você, quando você vai procurar algo no Google e você erra um texto ou apenas começa a digitar, o campo te sugere o texto que talvez você iria digitar. Tudo isso já é inteligência artificial.

Mas nos games como elas são utilizadas? Como funcionam?
Esse é um assunto extremamente complexo, poderiamos ter uma infinidade de artigos só sobre isso, vou falar um pouco de forma superficial.

Os games sempre tiveram algo relacionado com as IA’s, seja nas colisões, no jogador, nos inimigos, nos NPC’s (non-player character) ou seja personagens que não podem ser controlados pelo jogador, porém claro eram feitas de formas bem precárias, praticamente baseadas em regras pré-definidas, ou seja “Se o jogador fizer isso, ENTÃO faça aquilo… etc”, esse formato já causou grandes problemas principalmente em não ter regras flexíveis e mais dinâmicas.

Existem diversas técnicas utilizadas nos jogos, mas vou destacar algumas muito utilizadas como:

– “Path-finding”
É uma técnica muito utilizada para encontrar caminhos desviando de obstáculos. Por exemplo: um inimigo precisa ir até o jogador, através de um “algoritmo A” que encontra o melhor caminho “com menos passos” para chegar em um destino, mas é bem comum que personagens fiquem presos em cantos ou vagando pelo jogo, precisando sempre de ajustes ou melhorias.

– “FU/FSMs – Fuzzy/Finite State Machine”
Basicamente é um conjunto de estados e transições entre elas usadas para representar um comportamento. Por exemplo: um personagem pode estar parado, andando, correndo, pulando, abaixando, agarrando, atacando, morrendo, etc… essa técnica consistem em fazer transição entre esses estados.

– “A-life”
Consiste em dar maior realismo nas movimentações e comportamentos, muito utilizada principalmente com os NPC que são aqueles personagens que ficam no cenário fazendo algo ou interagindo sem serem controlados.

Embora todas que mencionei praticamente baseadas em regras pré-definidas, funcionam muito bem e de forma extremamente eficaz em muitos jogos, porém nenhuma delas aprende com o jogador ou absorve informações para tomar algumas decisões afim de alcançar alguma tarefa ou objetivo.

O mercado de games vem percebendo cada vez mais a necessidade desse dinamismo, e da realidade dos jogos se adaptarem cada vez mais ao jogador, principalmente com esse avanço que temos da tecnologia, e tudo em nossa volta já utilizando fortemente as IA’s.

O campo na Inteligência Artificial que vem amplamente sendo utilizado nos jogos, são as Redes Neurais (RN)!
Uma Rede Neural é uma simulação reduzida do cérebro e é composta por “nós” chamados de “neurônios”, esses nós são conectados na rede com pesos.

A Rede Neural é capaz de “aprender” conforme dados externos são informados e reajustados nesses pesos que mantém as ligações da rede. Cada neurônio (nó) possui um conjunto de entradas, um conjunto de camadas internas e um conjunto de saídas.

Durante o processo de treino dos neurônios, dados são informados na entrada, que são multiplicados pelos pesos, e fazem uma ativação e assim por diante, ao término desse processo os pesos são ajustados de acordo com erros das saídas, até que se tenha uma RN treinada.

Esse é um funcionamento básico de uma Rede Neural, existem diversas outras formas, esse modelo é muito utilizado para reconhecimento facial por exemplo, uma RN pode ser treinada para identificar expressões faciais, reconhecer uma pessoa, objetos entre outros.


Essa é uma ilustração básica de um neurônio


Modelo de Neurônio Artificial, segundo McCulloch-Pits


Uma Rede Neural pode ser extremamente complexa, e exigir milhões de cálculos em poucos segundos ou frações de segundos.

Com uma RN bem treinada, os NPCs por exemplo podem praticamente imitar a realidade, conversando entre eles, interagindo de forma natural com o jogador, reagindo a alguma ação inesperada, o mesmo acontece com inimigos, podendo deixar eles muito mais adaptáveis ao jogador, aprendendo por exemplo como o jogador faz para atacá-los, se faz com dificuldade, ou de forma fácil, podendo assim ajustar o nível de dificuldade para o jogador. Em um jogo de futebol por exemplo, os jogadores não controlados conseguem de forma muito inteligente conduzir uma bola, driblar entre outras ações, veja nesse video abaixo, um pouco dos bastidores, de um modelo 3d sendo treinado para que consiga conduzir uma bola.

Veja um pouco do processo de treinamento de um carro, esse vai dar um belo trabalho ao jogador

Esse jogo, simula como funciona a Inteligência Artificial no aprendizado de uma estrutura humana, criatura, divirta-se.

Games, na área da educação estão cada vez mais utilizando “Redes Neurais” para que o jogo aprenda conforme o jogador/aluno interage com o jogo, ajustando o nível de dificuldade para o aluno e coletando informações que servem de relatórios aos professores e gestores que ajudam de forma individual, como os educadores podem reforçar o ensino dessa criança.

As IA’s estão cada vez mais avançadas e mais presentes! Use e abuse delas, não há motivos para ter medo ok!

Se gostou desse bate-papo deixa seu comentário! Reveja seus conceitos, e pesquise mais sobre!

Compartilhar conhecimento é viver! 🙂

Me segue lá
Instagram: @thiagobruno.oficial
GitHub: Thiago Bruno
Linkedin: Thiago Bruno

Posts relacionados

Tecnologia

Um mundo de oportunidades!

Thiago Bruno
Tecnologia

Crimes reais em jogos virtuais!

Thiago Bruno
Tecnologia

e-Sports! Entenda essa nova modalidade!

Thiago Bruno

Cadastre-se e receba novidades e atualizações por e-mail.