Uma análise detalhada da correspondência do Dota 2 entre o OpenAI e as pessoas no formato 5x5. Pessoas perdidas



Ontem, 5 de agosto, em San Francisco, ocorreu uma partida de demonstração entre pessoas e bots OpenAI na disciplina Dota 2. Em 2017, como parte das partidas internacionais da mostra 2017, as pessoas enfrentaram a OpenAI no formato “1x1 mirror mid” e com toda uma gama restrições a favor de bots (uma proibição do uso de vários itens e um mecânico), que terminou com a derrota de jogadores profissionais médios.

Como o Dota 2 é uma disciplina extremamente versátil e difícil, o encontro entre as pessoas e a IA foi novamente realizado com várias limitações, as quais, no entanto, não influenciaram radicalmente a jogabilidade:

  • grupo de 18 heróis no modo Rascunho Aleatório (Machado, Donzela de Cristal, Profeta da Morte, Agitador da Terra, Girocóptero, Lich, Leão, Necrofos, Rainha da Dor, Navalha, Riki, Demônio das Sombras, Slark, Sniper, Sven, Caçador de Marés, Viper ou Bruxa Médico);
  • sem Divine Rapier, Bottle;
  • sem criaturas e ilusões controladas;
  • combinar com cinco mensageiros (eles não podem ser observados e despachados);
  • sem usar uma digitalização.

A limitação mais séria: um grupo extremamente pequeno de heróis para ambos os lados. Agora, no Dota 2, existem 115 personagens com várias habilidades e mecânicas de sua aplicação. Até o momento, o OpenAI pode controlar apenas 18 deles. A reunião foi o mais próxima possível das condições "reais" e foi realizada no formato 5x5. As pessoas comuns jogavam contra a IA no passado, antes envolvidas em e-sports, mas agora não são e-sportsmen. A única concessão para as pessoas era que a resposta dos bots era limitada a 200 ms , a fim de evitar situações com "apertar" instantâneo de botões. Conclusão: a equipe de IA derrotou as pessoas com uma pontuação de 2-0 nas cartas . Foi possível ganhar contra a OpenAI somente depois que o público escolheu os heróis para a IA (Slark, Sven, Axe, Riki e Queen of Pain), segundo estimativas da OpenAI, a chance de vencer com esse draft era de apenas 2,9%. Além disso, antes do início da partida principal, os convidados comuns do evento podiam jogar com bots, e nessas reuniões o domínio da IA ​​era ainda mais óbvio, o que é impressionante.

Por que isso é tão importante?


O OpenAI é um projeto sem fins lucrativos, que, no entanto, é conhecido e influente. O projeto foi fundado em 2015 por Ilon Musk, Sam Altman , e os patrocinadores foram Peter Thiel e Jessica Livingston . O Dota 2 não é a única atividade da equipe do projeto OpenAI. Se você olhar a seção "Pesquisa" no site oficial do projeto, poderá ver que a OpenAI está trabalhando ativamente para a criação de IA para, por exemplo, robótica.

Mas se os fundadores do projeto são pessoas tão influentes, por que você escolheu um jogo de computador? Aprender a IA a trabalhar em condições de mudança dinâmica é uma tarefa não trivial. Os modelos atuais de IA e pilotos automáticos operam exclusivamente em condições estritamente definidas, e seu treinamento requer milhões de combinações diferentes de eventos e fatores para que o bot não apenas atue de acordo com padrões predefinidos, mas comece a analisar o que está acontecendo e tomar decisões com base no contexto da situação. Escolher o Dota 2 como uma plataforma para aprender IA e criar bots para esta disciplina provou ser útil sob muitos pontos de vista:

  • O eSports é altamente compatível com a mídia;
  • É uma plataforma segura para a prática de métodos de treinamento de IA;
  • a enorme variabilidade da mecânica de jogo do Dota 2 fornece um número quase ilimitado de cenários para treinamento;
  • o acesso aberto a gravações de jogos ao vivo fornece um suprimento infinito de dados para análise.

O último item desta lista improvisada é provavelmente o mais importante. Um dos problemas de todos os sistemas de treinamento de IA é a criação de uma amostra relevante na qual o sistema pode ser treinado. Jogadores ao vivo geram milhões de recordes de jogos grátis todos os dias de forma absolutamente gratuita, e os pesquisadores podem escolher apenas partidas com um conjunto relevante de caracteres. E o resultado é impressionante.

O que aconteceu em 5 de agosto


Na maioria das vezes, robôs em jogos de computador são maçantes e maçantes, como scripts ou monstros invencíveis com reação desumana. Como exemplo - robôs "insanos" para o CS 1.6, que foram mortos na cabeça com uma espingarda a uma distância de mais de 50 metros em um salto em inversão de marcha . Para alcançar um comportamento realista, mas ao mesmo tempo eficaz, da IA ​​de jogos, os desenvolvedores não conseguem há décadas, o que é especialmente evidente em jogos de mundo aberto. Na verdade, esse se tornou o motivo da popularidade das disciplinas online.

Após o show ser disputado em 2017 no formato "espelho 1x1", a equipe OpenAI disse que o próximo objetivo são os jogos 5x5 completos. E eles quase conseguiram atingir seu objetivo: esperar dos robôs a capacidade de gerenciar e analisar a sinergia de todos os 115 personagens no Modo Capitão seria estúpido, mas já são 18 heróis - isso é muito. Aqui está o cálculo das opções para o pico 5x5 (10 caracteres) para 18 heróis:

$ C_ {18} ^ {10} = \ frac {18!} {10! \ cdot (18-10)!} = \ frac {18!} {10! \ cdot 8!} = \ frac {11 \ cdot 12 \ cdot 13 \ cdot ... \ cdot 16 \ cdot 17 \ cdot 18} {1 \ cdot 2 \ cdot 3 \ cdot ... \ cdot 6 \ cdot 7 \ cdot 8} = 43758 $



E aqui está o número de opções que temos para 115 caracteres:

$ C_ {115} ^ {10} = \ frac {115!} {10! \ cdot (115-10)!} = \ frac {115!} {10! \ cdot 105!} = \ frac {106 \ cdot 107 \ cdot 108 \ cdot ... \ cdot 113 \ cdot 114 \ cdot 115} {1 \ cdot 2 \ cdot 3 \ cdot ... \ cdot 8 \ cdot 9 \ cdot 10} = 74540394223878 $


Sim, 74,5 trilhões de combinações! Obviamente, para lidar com essa variedade e incluir todos os 115 caracteres no pool OpenAI, é necessária uma IA de autoaprendizagem completa, que ainda não temos. Além disso, os cálculos não levam em consideração as habilidades dos personagens (de 4 a 6 "botões" por personagem, exceto Invoker), tipos de habilidades (ativas, passivas, direcionais, não direcionais, AoE direcionadas a um ponto), dezenas de objetos, efeitos ativos de objetos, modificadores e assim por diante.

Mas mesmo para o nosso mini-pool de 18 caracteres, uma quantidade enorme de trabalho foi realizada.

Abaixo, você pode avaliar como os bots OpenAI se comportam em jogos contra pessoas:


Como os bots diferiam e não diferiam das pessoas


Para quem tem preguiça de assistir a mais de 5 horas de gravação com o Twitch, explicaremos brevemente como o comportamento da equipe de bot do OpenAI Five foi perceptível em comparação com as pessoas comuns.

Vale a pena dizer imediatamente que a IA pensou na fase de elaboração do personagem, ou seja, calculou as chances de ganhar uma combinação específica de caracteres com base nos dados incompletos que possuía. Ao mesmo tempo, a OpenAI relatou a porcentagem prevista de sua vitória com base no draft. Às vezes, de acordo com a AI, alcançava 95%.

Todo o jogo OpenAI Five pode ser descrito com um termo tão popular na comunidade como "estrangulado". Sim, de acordo com as sensações, os robôs realmente "estrangularam" certas linhas, e sem nenhum remorso ou medo de entrar nas torres nos primeiros minutos da partida, a fim de enviar um jogador humano para descansar sob a fonte na base. Alguns pontos podem ser vistos no corte abaixo (o nome do vídeo não corresponde à realidade):


Além do destemor (à margem do impudência) e do trabalho organizado nos estágios iniciais do jogo, os bots também notaram sua própria compreensão da mecânica do Dota 2. O objetivo do jogo: quebrar a estrutura principal do inimigo, na qual os bots se concentraram. Assim, 3-4 personagens da IA ​​quebraram consistentemente as torres de oponentes humanos, “dominando” a torre por vez, para salvar seus próprios arrepios e destruir rapidamente a estrutura. Além disso, os robôs foram notados pelo fato de não usarem enfermarias padronizadas, que também usavam torres para eles. Como resultado, em um dos jogos com os convidados do evento, os bots já entraram na base do inimigo aos 9 minutos (chegar à base do inimigo entre 15 e 18 minutos é considerado um tempo extremamente cedo).

Além disso, os bots redistribuíram efetivamente a experiência entre si, evitando rebaixamentos de personagens de 4-5 posições, distinguindo-se no cálculo de dano (ao dar o último golpe, o bot não continuou a alcançar o alvo, entendendo claramente que havia dano suficiente para matar) e usou ativamente alguns itens.

Um espectador atento notará no vídeo e tomará decisões com base em dados incompletos (usando as habilidades AoE no "nevoeiro da guerra"), tomando decisões fora do padrão (usando com sucesso um rolo de teletransporte em vez de tentar escapar por dois), entrando na parte traseira bloqueando o inimigo na floresta e coordenando o foco dos oponentes humanos mais perigosos.

Para justificar a humanidade, pode-se dizer que jogadores humanos não mostraram um nível muito alto do jogo, foram limitados em termos de seleção de personagens e cometeram muitos erros, mas esse progresso da IA ​​em apenas 1 ano de desenvolvimento não pode deixar de impressionar.

É provável que veremos outra partida do programa, desta vez no The International 2018 (que acontecerá de 20 a 25 de agosto) contra profissionais claramente mais fortes que a IA. No entanto, é possível que o OpenAI Five nos surpreenda com algo.

Source: https://habr.com/ru/post/pt419407/


All Articles