*[IMPORTANT] [09:15 05/13] The submission deadline for Homework 2 was extended to May 15th during the May 8th class.

[IMPORTANT] [15:26 04/19] For 2-1, when comparing ref_pos[1] (=obs[11]) and obs[1], make sure to compare ref_pos[1] + 1.25 with obs[1] due to the reference height offset in the model.

[IMPORTANT] [15:26 04/19] Skeleton code updated (Fix bug in update_ref_pose.)

[IMPORTANT] [16:34 04/16] Skeleton code updated (Adjusted the range of thigh joints in ‎custom_walker2d_ref.xml)

In this homework, you will train 2D and 3D characters to walk or run in a simulated environment using reference trajectories. More specifically, your goal is to teach the character to follow a reference pose at each moment of walking or running, ultimately learning the entire motion. The objective of this assignment is to learn how reference trajectories can help characters perform tasks in a natural way. Additionally, in the Extra section, you will attempt to perform tasks while using reference motions to verify whether reference motions can serve as good guides for task learning.

Skeleton Code: https://github.com/snumrl/2025_SNU_HumanMotion_HW2.git

The skeleton code is based on the Walker2D & Humanoid3D environment from Gymnasium, and the default reinforcement learning algorithm provided is from Stable-Baselines3. Through this assignment, you will gain hands-on experience in controlling a simulated character and become familiar with applying reinforcement learning in physical simulation.

2-1. Making a 2D Character Walk & Run (40%)

2D Reference Motion (Walking)

2D Reference Motion (Walking)

2D Reference Motion (Running)

2D Reference Motion (Running)

2- 2. Making a 3D Character Walk & Run (40%)

3D Reference Motion (Walking)

3D Reference Motion (Walking)

3D Reference Motion (Running)

3D Reference Motion (Running)