MicroDuck 7-Day Learning Plan
Read a notebook per day, starting with understanding the body and policy of ducklings, and gradually learning about physical interaction, reinforcement learning, motion control, task switching, and on-device deployment. By the end of 7 days, organize your notebook, task videos, and experiment records.
It is recommended to allocate 2–3 hours per day: about 30 minutes for explanation, 60–90 minutes for hands-on experiments, and 30 minutes for discussion and recording. Complete training and longer model compilation can be continued outside class; in class, focus on using the verified model to observe actions, followed by small-scale training and comparisons.
Preparations before the class starts
- Have basic Python knowledge and be able to read arrays, functions, and simple neural network code.
- Prepare the Python environment and Jupyter on Ubuntu; access it via a browser on this machine. For environment startup details, see Notebook entry .
- Have trainees check the model paths, simulation environments, and example outputs for each task in advance; prepare the available RDK X5, BPU runtime, and task HBM for day 7.
- Choose a practice method according to the conditions: run training and simulation on the GPU, or first read the saved outputs and follow the trainees’ demonstrations, then conduct code analysis and parameter experiments.
Daily Schedule
| Days | Notebook | Key Learning Points | Output for the Day |
|---|---|---|---|
| Day 1 | 01 Basketball Balance | Robot model, observation and action, Actor-Critic, PPO | Observation and action explanations, basketball balance video, training log |
| Day 2 | 02 Browser Physical Disturbance | MuJoCo state, contact, external force and visualization | A disturbance experiment video and phenomenon analysis |
| Day 3 | 03 Stilt Walking | BAM executor, support shape, course learning, action smoothing | Height or support parameter comparison, short training and evaluation logs |
| Day 4 | 04 Swinging Rotation | Task reward, action rhythm, policy inference and ONNX | Swinging video, a parameter modification comparison |
| Day 5 | 05 Ball Balance and FastSAC | SAC/FastSAC, training process, model export and evaluation | Small-scale training logs, ONNX and ball balance video |
| Day 6 | 06 Climbing a Ladder | Rope contact, dual climbing and standing strategies, switching conditions | Ladder climbing video, handover moments and standing time records |
| Day 7 | 07 RDK and Multiple Policies | Existing navigation policy integration, HBM, BPU, TCP and task scheduling | A board-side inference video, deployment logs and learning summary |
Day 1: Understanding the Body and Policy
- Understanding: Read the robot joint and actuator configuration, and trace the basketball balance task through “observation → network → action → joint control”; explain the roles of Actor, Critic, rewards, and PPO.
- Practice: Check the model input and output, watch or generate GPU simulation videos; after setting up the appropriate environment, activate the basketball-specific training modules, and record sampling, updates, exports, and model consistency checks.
- Recording: Explain in your own words what the observations and actions of this task include, and distinguish between control steps, training iterations, and episodes.
Day 2: Observing Ducks and Their Interaction with the Physical World
- Understanding: Observe posture, joint status, collisions and support, and understand how external forces alter body movement.
- Practice: Run browser interactions to change the direction or location of external forces; fix other conditions and compare at least two experiments. Use the existing walking policy today, with a focus on physical interaction.
- Recording: Save a video, mark the force application method, body changes, and contact phenomena, and explain the observed results.
Day 3: Put on stilts, learn forms and courses
- Understanding: Understand the impact of analysis depth, support area, mass, and actuator parameters on balance; understand blend, curriculum learning, and motion filtering.
- Practice: Compare the demonstrations of models corresponding to 25 cm and 200 cm, select a set of matching heights, scenarios, and models to complete baseline inference; run small-scale retraining after the corresponding checkpoint, and then evaluate with the same configuration.
- Recording: Prepare a parameter comparison table to indicate what has been changed and what changes have occurred in the motion.
Day 4: Align Actions with Task Objectives
- Understanding: Analyze the rewards and action rhythm of swing rotation tasks, and comprehend how the policy advances goals during repetitive movements.
- Practice: Load the task model to generate videos; conduct small-scale retraining after obtaining the corresponding checkpoint, select a command or control parameter for comparison, and check the input and output of the exported model.
- Recording: Save two sets of settings and videos, and explain the differences in terms of swing amplitude, rhythm, or posture.
Day 5: Compare with another reinforcement learning training process
- Understanding: Understand sampling, experience replay, policy update, and value estimation in the FastSAC task, and compare them with the PPO process on Day 1.
- Practice: Run small-scale training for ball balance, check model saving and ONNX export, then perform inference and task evaluation.
- Recording: Organize training logs and videos, and write down the main differences between PPO and SAC/FastSAC in data usage and update processes.
Day 6: Moving from a single action to skill switching
- Understanding: Read the interface between the climbing and standing actors, observe the contact with the railing, foot contact with the table, and standing phase, and understand when the supervisor hands over control.
- Practice: Run the full sequence on the GPU, compare with
switch_events,handoff_success, andstable_secondsin the report; if possible, follow climbing tutorial to practice the continuous training entry for both policies. - Recording: Draw the switching process of “climbing → standing on table → standing”, and mark the handover moment and continuous standing time of this experiment.
Day 7: Connecting the policy to RDK X5
- Understanding: Link ONNX, HBM, BPU, and TCP control closed loop; clarify that the workstation is responsible for physical simulation and rendering, while the development board handles action reasoning.
- Practice: Directly integrate existing walking/navigation policy; verify model metadata and inputs/outputs, then select tasks that have passed validation and run them on the board-side closed loop. Based on the video and latency of the GPU and BPU, practice switching to another task model.
- Recording: Save board-side videos and deployment configurations, and compile a summary of the week’s task experiments, parameter changes, and issues for further research.
Training and Deployment Arrangements
For training tasks, start with the task-specific pre-trained model first. Perform 5–10 small-scale training rounds according to the corresponding Notebook, then verify sampling, updating, saving, and exporting. Keep the original model as a reference, and evaluate the trained version using the same scenarios and commands; zero-based training and longer courses are included in advanced practices.
The browser perturbation uses the existing policy to observe physical interactions; walking/navigation directly integrates with the existing model. For the ladder climbing main line, first understand and run both policies, and continue training separately according to task tutorials.
In the first 6 days, focus on GPU simulation and task understanding. Teams with on-board conditions can continue to use the BPU units in each Notebook. On day 7, concentrate on side-mounted practices; prepare time-consuming steps such as compilation and calibration in advance. Verify that the HBM runs smoothly in class, then learn how to regenerate the model.
What to leave each day
- A notebook or code reading notes, clearly documenting inputs, actions, and task objectives.
- A task video or key experimental output, along with the models and parameters used.
- One’s own observations: what was changed, the results, and possible reasons.
The trainees are organized to conduct explanations and discussions around a task every day, identify common issues, and compile reproducible changes and experiment records into topics. After the learning session, each group selects a task to present the entire process from model understanding, parameter experimentation to inference evaluation.