Open Source Robotics

Uma coleção selecionada de projetos, ferramentas e software de robótica de código aberto de alta qualidade.

Curriculum Learning

  • Também chamado: curriculum training, task curriculum
  • Categoria: Learning & autonomy › RL & simulation
  • Tags: reinforcement-learning, robot-learning, training, simulation, locomotion

Uma estratégia de treinamento que dá primeiro a um sistema de aprendizado tarefas ou exemplos mais fáceis e aumenta a dificuldade gradualmente, para que ele consiga dominar habilidades difíceis demais para aprender do zero.

Definição

Aprendizado por currículo (curriculum learning) é a prática de ordenar a experiência de treinamento do fácil para o difícil em vez de apresentá-la toda de uma vez. A ideia espelha a forma como as pessoas aprendem: um estudante aprende aritmética antes de cálculo. Em aprendizado de máquina, ela foi formalizada por Bengio et al. em 2009, que mostraram que uma ordenação bem escolhida dos exemplos pode acelerar o treinamento e melhorar o resultado final.

Na robótica, os currículos são mais comuns no aprendizado por reforço, em que um agente que começa em uma tarefa muito além de sua capacidade pode nunca receber um sinal de recompensa útil. Um currículo mantém o agente no limite de sua competência. A dificuldade pode ser aumentada ao longo de muitos eixos: a rugosidade e a inclinação do terreno para um robô com pernas, a altura dos degraus para subir escadas, a distância até o objetivo para navegação, a variedade de objetos para preensão, a força dos empurrões externos ou o quão esparsa é a recompensa.

Os currículos podem ser projetados à mão, com etapas fixas e limiares para avançar, ou ser automáticos. Currículos automáticos ajustam a dificuldade com base no desempenho do agente, por exemplo promovendo um robô simulado para um terreno mais difícil quando ele tem sucesso e rebaixando-o quando falha. Entre as ideias relacionadas estão a geração automática de objetivos, em que o sistema de treinamento propõe objetivos de dificuldade adequada, e o self-play, em que os oponentes melhoram juntos.

Um currículo acrescenta decisões de projeto que podem dar errado. Se a dificuldade sobe rápido demais, o aprendizado estagna; se sobe devagar demais, desperdiça-se computação. Um currículo que nunca alcança toda a faixa de condições vistas na implantação pode deixar a política despreparada para elas.

Por que importa

Muitas habilidades de robôs, como escalar, saltar ou caminhar em terreno irregular, não podem ser aprendidas por tentativa e erro do zero, porque um comportamento aleatório quase nunca tem sucesso. O aprendizado por currículo torna essas habilidades aprendíveis ao construí-las em etapas, e é um ingrediente padrão dos controladores de locomoção treinados em simulação.

Principais aplicações

  • Treinamento de locomoção com pernas em terrenos progressivamente mais difíceis
  • Aprendizado de habilidades de escalada e de subida de escadas
  • Tarefas de navegação com distância até o objetivo ou obstrução aumentando gradualmente
  • Tarefas de manipulação com variedade de objetos ou requisitos de precisão crescentes

Na prática

No treinamento de locomoção baseado em GPU, uma configuração comum é um currículo de terreno: milhares de robôs simulados são distribuídos sobre uma grade de blocos de terreno ordenados por dificuldade, como rampas, escadas e trechos irregulares de altura crescente. Cada robô começa em blocos fáceis; se percorre distância suficiente em um episódio, passa para blocos mais difíceis, e se falha, volta. As equipes costumam rodar currículos paralelos sobre a velocidade comandada e a intensidade das perturbações, e registram como os robôs estão distribuídos pelos níveis de dificuldade como medida direta do progresso do treinamento. Antes da implantação, avaliam a política final nos níveis mais difíceis e em condições fora do currículo, para verificar que ela não foi ajustada apenas à escada de treinamento.

Equívocos comuns

  • Um currículo sempre ajuda — um currículo mal projetado pode desacelerar o treinamento ou enviesar a política para as condições que ele enfatizou
  • Os currículos precisam ser projetados à mão — muitos sistemas ajustam a dificuldade automaticamente com base no desempenho medido do agente
  • O aprendizado por currículo serve apenas para aprendizado por reforço — ele foi formalizado primeiro para aprendizado supervisionado e também se aplica lá

Quem deve saber

  • Profissionais de aprendizado por reforço
  • Engenheiros de controle de robôs com pernas
  • Projetistas de simulações e de ambientes de treinamento
  • Estudantes de aprendizado de máquina que trabalham com aprendizado de robôs

Tecnologias relacionadas

  • Aprendizado por reforço (Reinforcement Learning)
  • Isaac Lab
  • Domain Randomization
  • Modelagem de recompensa (Reward Shaping)
  • Aprendizado por currículo automático (Automatic Curriculum Learning)
  • Self-Play

Termos relacionados

  • Reinforcement Learning
  • Domain Randomization
  • Teacher-Student Training

Projetos relacionados

  • GENESIS: World's fastest physics engine: 43M FPS for embodied AI learning
  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • MuJoCo: DeepMind physics engine for robotics and ML research
  • PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • Microduck: Pollen Robotics' $399 walking duck robot: open-source software, closed hardware

Vídeos

  • Curriculum Learning in Deep Neural Networks: Connor Shorten
  • Teacher-Student Curriculum Learning: Connor Shorten

Este site requer JavaScript. Por favor, habilite o JavaScript para explorar nossos projetos de robótica.