Existem exemplos de empresas ou artigos que utilizam algoritmos evolutivos ( EA ) ou programação genética ( GP ) na geração processual de conteúdo para jogos? Isso existe na indústria?
Este é o único local em que realmente o encontrei:
http://pcg.wikidot.com/pcg-algorithm:automatic-game-design
Também verifiquei essas perguntas e conheço o PCG:
O que é "geração procedural" e como é feita?
Geração processual de nível infinito 2d Geração
processual do universo
algorithm
procedural-generation
Alex Shepard
fonte
fonte
Respostas:
Em geral, a maioria dos jogos opta pelo método muito mais fácil e previsível de criar scripts para sua IA ou usa ruído para geração de terreno / conteúdo. A maioria dos jogos tende a evitar a programação evolutiva / genética porque, francamente, muitas vezes é muito caro de implementar ou muito aleatório para a maioria dos jogadores entender.
Fora de alguns jogos experimentais e de nicho, como o Darwin's Pond ou a série Creatures , eu realmente não consigo pensar em nenhum jogo que use EA ou GP. Preto e Branco usou o modelo de Crença-Desejo-Intenção como base para a IA da Criatura, mas o jogo teve muitas respostas negativas devido ao comportamento da Criatura parecer aleatório. É provável que o segundo jogo em preto e branco tenha usado scripts para a criatura AI.
fonte
A resposta de thedaian é boa, pois fornece exemplos.
Eu acho que o principal problema visto com essas abordagens é o controle. Depois que você começa a lidar com heurísticas, nas quais elas se baseiam, fica muito difícil desenvolver um sistema que faça o que você quer que ele faça. Francamente, é uma questão de custo e risco do projeto. Se você tem uma ideia de jogo que pode implementar sem usá-las ou usando uma abordagem processual mais direta, melhor para você.
O problema até das abordagens de IA mais elementares (por exemplo, encontrar o caminho A *) é que elas levam algum tempo para entender primeiro e consideravelmente mais tempo para dominar. Eu acho que isso nos mantém mais próximos de abordagens mais simples e estáticas. Não alimenta a inovação, mas é difícil ignorar um rápido retorno do investimento.
Dito isto, estou definitivamente do lado de "Se ninguém tentar, nunca saberemos". Um projeto de GP está se formando em minha mente há algum tempo.
(Outra abordagem que você pode querer procurar é nas redes neurais, geralmente é agrupada como um processo de máquina que imita formas naturais de melhoria - neste caso, aprendizado - através da eliminação.)
fonte
Esse tipo de programação é geralmente usado, se disponível, para dar aos Agentes de IA suas 'personalidades'. Usando os diferentes valores disponíveis, você pode tentar criar as melhores estatísticas para um agente sobreviver e prosperar no mundo, mas isso não é algo feito ativamente durante o jogo, por uma boa razão. É um jogo.
Você pode fazer o computador aprender a derrotar constantemente o jogador, mas quem jogará um jogo no qual você só pode perder? O objetivo é apresentar um desafio e, usando algoritmos genéticos, você pode tentar encontrar combinações de IA para jogar de certas maneiras para representar configurações fáceis, médias e difíceis. Ou, por exemplo, nos jogos RTS, jogue estilos como o rusher ou o turtler.
Esses algoritmos são mais aplicados aos desenvolvedores que desejam ajustar seu jogo em vez de serem usados ativamente nos jogos após o lançamento. Se você ler os livros da Game Programming Gem, poderá encontrar artigos neles que dão exemplos de como eles são usados nos jogos RTS para ajudar a equilibrar a IA.
fonte