Tutorials#

Step-by-step tutorials for common use cases with GenesisLab.

Available Tutorials#

Basic Locomotion#

Train a quadruped robot to walk on flat terrain.

What you’ll learn:

  • Setting up a training environment

  • Configuring PPO hyperparameters

  • Monitoring training progress

  • Evaluating trained policies

Prerequisites: Installation complete

Time: 30 minutes


Creating Custom Tasks#

Create your own custom robot learning task.

What you’ll learn:

  • Task structure and configuration

  • Setting up scenes

  • Defining managers

  • Registering custom tasks

Prerequisites: Basic concepts

Time: 45 minutes


Custom Observations#

Define custom observation terms for your task.

What you’ll learn:

  • Writing observation functions

  • Adding noise and scaling

  • Using observation history

  • Privileged observations

Prerequisites: Creating tasks

Time: 30 minutes


Custom Rewards#

Design reward functions for your objectives.

What you’ll learn:

  • Reward function principles

  • Writing reward terms

  • Balancing multiple objectives

  • Debugging rewards

Prerequisites: Creating tasks

Time: 45 minutes


Using Sensors#

Integrate cameras, LiDAR, and other sensors.

What you’ll learn:

  • Fake vs Genesis sensors

  • Configuring cameras

  • Processing sensor data

  • Vision-based policies

Prerequisites: Basic concepts

Time: 60 minutes


Custom Terrains#

Create procedural and custom terrains.

What you’ll learn:

  • Terrain generation

  • Height map manipulation

  • Terrain curriculum

  • Loading custom meshes

Prerequisites: Creating tasks

Time: 45 minutes


Domain Randomization#

Apply domain randomization for sim-to-real transfer.

What you’ll learn:

  • Dynamics randomization

  • Observation noise

  • Event system

  • Systematic randomization strategies

Prerequisites: Custom tasks

Time: 45 minutes


Multi-GPU Training#

Scale training across multiple GPUs.

What you’ll learn:

  • Multi-GPU setup

  • Data parallelism

  • Performance optimization

  • Troubleshooting

Prerequisites: Basic training

Time: 30 minutes


Learning Paths#

Beginner Path#

  1. Basic Locomotion

  2. Creating Custom Tasks

  3. Custom Observations

  4. Custom Rewards

Advanced Path#

  1. Using Sensors

  2. Custom Terrains

  3. Domain Randomization

  4. Multi-GPU Training

Sim-to-Real Path#

  1. Custom Tasks

  2. Using Sensors

  3. Domain Randomization

  4. Deployment (coming soon)

Tutorial Template#

Each tutorial follows this structure:

  1. Overview: What you’ll build and learn

  2. Prerequisites: Required knowledge and setup

  3. Step-by-Step: Detailed instructions with code

  4. Explanation: Concepts and design decisions

  5. Exercise: Try it yourself

  6. Next Steps: Related tutorials and topics

Sample Code Repository#

All tutorial code is available in the examples/ directory:

examples/
├── tutorials/
│   ├── 01_basic_locomotion/
│   ├── 02_creating_tasks/
│   ├── 03_custom_observations/
│   └── ...
└── advanced/
    ├── vision_based_navigation/
    ├── manipulation/
    └── multi_robot/

Getting Help#

  • Stuck on a tutorial? Check the FAQ

  • Code not working? Compare with examples/ code

  • Concept unclear? Review basic concepts

  • Need more help? Ask in GitHub Discussions

Contributing Tutorials#

We welcome tutorial contributions! If you have a use case or technique to share:

  1. Follow the tutorial template

  2. Include working code in examples/

  3. Test thoroughly

  4. Submit a pull request

See contributing guidelines for details.