/Robot-mouse

Repository for Final Design, "Motion Control Method for Small Quadruped Robots Based on Trajectory Modulation and Reinforcement Learning" (基于轨迹调制和强化学习的小型四足机器人运动控制方法)

Primary LanguagePythonThe UnlicenseUnlicense

Final Project: ARS-Bezier in Robot Rat NeRmo

Article: 基于轨迹调制和强化学习的小型四足机器人运动控制方法, Motion Control Method for Small Quadruped Robots Based on Trajectory Modulation and Reinforcement Learning

Author: Zijian Zhao

Supervisors: Prof. Kai Huang, Prof. Gang Chen, Zitao Zhang

The official GitHub for the conference version is RS2002/ARS-Bezier: Official Repository for The Paper, ARS-Bezier: A Trajectory-based Reinforcement Learning Approach for Autonomous Locomotion of a Rat Robot (github.com).

1. ARS-Bezier Method

To train the model, use the following command. You can also use --help to find useful parameters such as learning rate.

python train.py --modelPath <environment path>

If you want to use the ARS-Bezier (simple) method, you can run train_simple.py in the same way.

To evaluate your model, you can use:

python eval.py --modelPath <environment path> --parameterPath <parameter path>

or

python eval_simple.py --modelPath <environment path> --parameterPath <parameter path>

2. Random Environment

To train the model in a random environment, you can use the random_env function in environment.py and set the --modelPath parameter as ./models/my_test.xml.

3. Other Models

Other models like PPO and ETG-RL are located in the "discard" folder, but they may have some bugs.