Treinando Agentes em Ambientes 3D Complexos
Um estudo sobre como alinhar agentes em jogos 3D pra melhorar o comportamento.
― 7 min ler
Índice
- Visão Geral do Jogo
- Objetivos
- Treinando o Agente
- Aprendizado por Imitacao
- Ajuste fino
- Coleta de Dados de Preferência
- Treinamento do Modelo de Recompensa
- Alinhamento Final
- Resultados e Descobertas
- Análise Observacional
- Desafios com Viés Direcional
- Implicações para Trabalhos Futuros
- Conclusão
- Fonte original
- Ligações de referência
Treinar programas de computador, chamados de agentes, pra se comportar de uma certa forma em ambientes 3D complexos pode ser bem difícil. Esses agentes coletam informações do que tá ao redor, que pode ser confuso e complicado. Uma abordagem comum pra ensinar esses agentes é copiando o comportamento humano. Esse método, chamado de Aprendizado por Imitação, ajuda o agente a agir de maneiras que parecem sensatas. Mas, um agente treinado assim pode não sempre fazer as ações específicas que a gente quer, especialmente quando colocado em um cenário real de jogo.
Pra resolver esse problema, podemos comparar as dificuldades com agentes que aprendem por imitação com os problemas encontrados em grandes modelos de linguagem (LLMs), que são sistemas feitos pra gerar texto. Os LLMs às vezes dão respostas que não são úteis ou apropriadas, assim como os agentes de aprendizado por imitação podem imitar comportamentos ruins dos humanos. Podemos tirar lições de como alinhamos os LLMs pra melhorar nosso método de alinhar agentes em um ambiente 3D.
No nosso estudo, focamos em uma parte de um jogo de vídeo moderno que tem várias formas de atuação dos jogadores. Nosso objetivo era treinar o agente pra imitar apenas um desses comportamentos enquanto ignorava os outros. Descobrimos que conseguíamos treinar o agente pra realizar o comportamento desejado de forma consistente. Isso incluiu compartilhar técnicas e dicas que poderiam ajudar outros a treinar agentes de maneiras semelhantes.
Visão Geral do Jogo
Pra nosso estudo, usamos um jogo chamado Bleeding Edge, que é um jogo em equipe 4v4. Os jogadores escolhem entre diferentes personagens, cada um com habilidades e capacidades únicas. O jogo é jogado em terceira pessoa, ou seja, os jogadores veem seu personagem de trás. O ambiente é dividido em três ilhas com diferentes níveis, e os jogadores precisam navegar do ponto de partida até plataformas de salto que os lançam pra outras áreas.
Objetivos
Quando o jogo começa, os jogadores nascem em um dos vários pontos de lançamento e precisam se dirigir a uma plataforma de salto. Dependendo de qual plataforma de salto eles escolhem, vão cair em diferentes áreas da ilha principal. Nosso objetivo era treinar um agente pra alcançar consistentemente uma plataforma de salto específica. A tarefa leva cerca de 10 segundos pra ser concluída, tornando-se um bom teste pros nossos métodos de treinamento.
Treinando o Agente
Aprendizado por Imitacao
O primeiro passo no nosso processo foi treinar o agente usando aprendizado por imitação. Isso envolveu usar um grande conjunto de dados de jogabilidade humana, que consistiu em milhares de ações individuais dos jogadores em várias partidas. Ao treinar o agente com esses dados, ele começa a pegar padrões gerais de comportamento humano no jogo.
Ajuste fino
Depois que tivemos um agente básico que podia se sair bem, precisávamos fazer um ajuste fino. Isso significava treinar o agente ainda mais, mas desta vez em um conjunto menor de exemplos de jogabilidade bem-sucedidos que estavam diretamente relacionados ao comportamento que queríamos. Selecionamos cuidadosamente esses exemplos pra garantir que representassem as ações desejadas.
Coleta de Dados de Preferência
Uma vez que o agente foi ajustado, nós o colocamos no jogo pra coletar dados sobre suas ações. Isso foi parecido com como os LLMs são solicitados a gerar diferentes respostas. Geramos um conjunto de trajetórias de jogabilidade que o agente poderia seguir, registrando seu desempenho. Depois, classificamos essas ações com base no sucesso em alcançar a plataforma de salto desejada.
Modelo de Recompensa
Treinamento doCom os dados de preferência coletados, treinamos um modelo de recompensa que ajudaria a guiar o comportamento do agente. Esse modelo previa recompensas pra certas ações com base nas preferências que já tínhamos estabelecido. Ao usar esse modelo, o agente aprenderia a preferir ações que se alinhassem aos nossos objetivos.
Alinhamento Final
O último passo no nosso processo foi alinhar o agente ajustado com o modelo de recompensa. Rodamos o agente no ambiente e, após cada tentativa, usamos o modelo de recompensa pra dar feedback ao agente. Esse feedback ajudou a reforçar as ações corretas, levando a um desempenho melhor ao longo do tempo.
Resultados e Descobertas
Através das nossas fases de treinamento, mostramos que nossos métodos funcionaram de forma eficaz. O agente conseguiu alcançar a plataforma de salto alvo de forma consistente. Também aprendemos que ter um modelo pré-treinado fez uma diferença significativa no desempenho geral, mostrando o valor de um treinamento inicial geral antes do ajuste em tarefas específicas.
Nós ainda melhoramos a eficiência ao introduzir uma fase de ajuste fino de preferências, que melhorou a rapidez com que o agente aprendeu a alcançar a plataforma de salto pretendida. Quando comparamos agentes treinados com nossos métodos com aqueles que foram treinados sem pré-treinamento ou ajuste fino, a diferença no desempenho ficou clara.
Análise Observacional
Durante o processo de treinamento, fizemos várias observações sobre o comportamento do agente. O agente inicial exibiu uma ampla variedade de ações, capturando muitos comportamentos parecidos com os humanos. No entanto, conforme ajustamos o agente, a gama de comportamentos se tornou menos diversa, focando em rotas mais diretas para as plataformas de salto. Essa mudança mostrou que, enquanto o ajuste fino melhorou o desempenho, também reduziu a capacidade do agente de navegar em situações inesperadas.
Desafios com Viés Direcional
Um desafio interessante que enfrentamos foi relacionado à direção de onde o agente se aproximava da plataforma de salto. Enquanto alinhávamos o agente pra ir em direção a uma plataforma de salto, descobrimos que ele tinha mais dificuldade quando queríamos que fosse na direção oposta. Isso ocorreu em parte porque a maior parte dos dados de treinamento era tendenciosa em relação à plataforma de salto preferida, levando a um desequilíbrio nos comportamentos aprendidos.
Implicações para Trabalhos Futuros
Nosso trabalho não só demonstra um método de alinhar agentes em jogos, mas também abre portas pra pesquisas futuras. Uma área pra explorar é como podemos reduzir a dependência de grandes conjuntos de dados humanos para o treinamento. Em vez disso, podemos olhar pra usar um modelo base que tenha sido treinado em vários jogos pra fornecer uma base mais geral a partir da qual trabalhar.
Além disso, enquanto usamos preferências sintéticas, obter feedback humano real poderia ainda melhorar o treinamento do agente. No entanto, fazer isso em ambientes em tempo real pode ser intensivo em recursos e caro.
Conclusão
No nosso estudo, mostramos com sucesso que, ao traçar paralelos entre o treinamento de agentes e o alinhamento de grandes modelos de linguagem, poderíamos criar um método que ensina efetivamente os agentes a se comportarem de maneiras desejadas em ambientes 3D complexos. A combinação de pré-treinamento, ajuste fino, coleta de dados de preferência, modelagem de recompensa e aprendizado por reforço online se mostrou ser uma abordagem poderosa.
À medida que a comunidade de jogos e a tecnologia de IA continuam a evoluir, nossos métodos podem ajudar a criar agentes mais inteligentes e responsivos que melhoram a experiência do usuário em jogos e, potencialmente, em outras áreas como robótica e simulações virtuais. Esperamos que nossas descobertas incentivem mais colaborações entre esses campos, permitindo que conhecimentos e avanços sejam compartilhados.
Título: Aligning Agents like Large Language Models
Resumo: Training agents to behave as desired in complex 3D environments from high-dimensional sensory information is challenging. Imitation learning from diverse human behavior provides a scalable approach for training an agent with a sensible behavioral prior, but such an agent may not perform the specific behaviors of interest when deployed. To address this issue, we draw an analogy between the undesirable behaviors of imitation learning agents and the unhelpful responses of unaligned large language models (LLMs). We then investigate how the procedure for aligning LLMs can be applied to aligning agents in a 3D environment from pixels. For our analysis, we utilize an academically illustrative part of a modern console game in which the human behavior distribution is multi-modal, but we want our agent to imitate a single mode of this behavior. We demonstrate that we can align our agent to consistently perform the desired mode, while providing insights and advice for successfully applying this approach to training agents. Project webpage at https://adamjelley.github.io/aligning-agents-like-llms .
Autores: Adam Jelley, Yuhan Cao, Dave Bignell, Sam Devlin, Tabish Rashid
Última atualização: 2024-06-06 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2406.04208
Fonte PDF: https://arxiv.org/pdf/2406.04208
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.
Ligações de referência
- https://adamjelley.github.io/aligning-agents-like-llms/
- https://anonymous.4open.science/r/aligning-agents-like-llms/Fine-Tuned%20Model/Fine-Tuned%20Missing%20but%20Turning%20Around.mp4
- https://anonymous.4open.science/r/aligning-agents-like-llms
- https://nips.cc/public/guides/CodeSubmissionPolicy
- https://neurips.cc/public/EthicsGuidelines
- https://www.bleedingedge.com/en
- https://www.pcgamingwiki.com/wiki/Bleeding_Edge