Skip to content

TeleHuman/HumanoidSoccer

Repository files navigation

Learning Soccer Skills for Humanoid Robots

A Progressive Perception-Action Framework

Jipeng Kong*, Xinzhe Liu*, Yuhang Lin, Jinrui Han, Sören Schwertfeger, Chenjia Bai, Xuelong Li
* First Author    Corresponding Author

Project arXiv PDF Code

Overview

This repository contains the official implementation for **Learning Soccer Skills for Humanoid Robots: A Progressive Perception-Action Framework **.

Soccer is a challenging task for humanoid robots, requiring tightly integrated perception and whole-body control. We propose PAiD (Perception-Action integrated Decision-making), a progressive framework with three stages: motion-skill acquisition via human motion tracking, lightweight perception-action integration for positional generalization, and physics-aware sim-to-real transfer. Experiments on the Unitree G1 show robust, human-like kicking across static/rolling balls, varied positions, disturbances, and indoor/outdoor scenarios.

teaser

Codebase

This repository contains:

The kick motions used in our paper are publicly released in motions.

Installation

  • Install Isaac Lab v2.1.1 by following the installation guide. We recommend using the Pip installation.

  • Clone this repository:

# Option 1: SSH
git clone git@github.com:TeleHuman/HumanoidSoccer.git

# Option 2: HTTPS
git clone https://github.com/TeleHuman/HumanoidSoccer.git
  • Using a Python interpreter that has Isaac Lab installed, install the library
pip install -e source/whole_body_tracking

Training & Play Example

Training

python scripts/rsl_rl/train_multi.py --task Tracking-Flat-G1-SoccerDestination-RNN-v0 \
    --motion_path motions/soccer-motions \
    --num_envs 4096 \
    --headless

Play

python scripts/rsl_rl/play_multi.py --task Tracking-Flat-G1-SoccerDestination-RNN-v0 \
    --motion_path motions/soccer-motions \
    --num_envs 1  

Progressive Training & Play

Training

python scripts/rsl_rl/train_multi.py --task Tracking-Terrain-G1-RNN-v0 \
    --motion_path motions/soccer-motions \
    --run_name test \
    --num_envs 4096 \
    --headless 
python scripts/rsl_rl/train_multi.py --task Tracking-Flat-G1-SoccerDestination-RNN-v0 \
    --motion_path motions/soccer-motions \
    --load_run {run_name} \
    --run_name test_resume \
    --num_envs 4096 \
    --resume True \
    --headless 

Play

python scripts/rsl_rl/play_multi.py --task Tracking-Flat-G1-SoccerDestination-RNN-v0 \
    --motion_path motions/soccer-motions \
    --num_envs 1  

TODO

  • Release PAiD training code
  • Release PAiD motion dataset
  • Release PAiD domain randomization code

Citation

If you find this work useful in your research, please consider citing:

@misc{kong2026learningsoccerskillshumanoid,
  title={Learning Soccer Skills for Humanoid Robots: A Progressive Perception-Action Framework},
  author={Jipeng Kong and Xinzhe Liu and Yuhang Lin and Jinrui Han and Sören Schwertfeger and Chenjia Bai and Xuelong Li},
  year={2026},
  eprint={2602.05310},
  archivePrefix={arXiv},
  primaryClass={cs.RO},
  url={https://arxiv.org/abs/2602.05310}
}

License

This codebase is under CC BY-NC 4.0 license. You may not use the material for commercial purposes, e.g., to make demos to advertise your commercial products.

Contact

For further collaborations or discussions, please feel free to reach out to:

About

Learning Soccer Skills for Humanoid Robots: A Progressive Perception-Action Framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages