This repository is no longer maintained, please refer to our new rover simulations for reinforcement learning based on Isaac Lab.
This repository contains a reinforcement learning implementation in Isaac Sim 2022.1.1 for learning to navigate in an unstructured Mars environment. The implementation is based on a custom built rover platform (based on the design of M2020), made by Group 750 at Aalborg University (Autumn 2022).
Design
Internals
Reinforcement Learning
Navigation.mp4
rl.mp4
Terrain
terrain.mp4
terrain2.mp4
- Install Isaac Sim
- Clone this repository
git clone https://github.com/abmoRobotics/isaac_rover_2.0.git
cd isaac_rover_2.0
- Set Isaac Sim
PYTHON_PATH
For Linux: alias PYTHON_PATH=~/.local/share/ov/pkg/isaac_sim-*/python.sh
For Windows: doskey PYTHON_PATH=C:\Users\user\AppData\Local\ov\pkg\isaac_sim-*\python.bat $*
- Install
isaac_rover_2.0
as a python module forPYTHON_PATH
:
PYTHON_PATH -m pip install -e .
- Download terrains from Google Drive:
- Download from Google Drive: https://drive.google.com/file/d/1JdcrzYlEAyHXa7hxdZvqeOx7u6Im-JJ6/view?usp=sharing
- Unzip files in root folder of the git repository
Note: All commands should be executed from omniisaacgymenvs/omniisaacgymenvs
.
To train a policy, run:
1. cd omniisaacgymenvs
2. PYTHON_PATH train.py
Inside the folder terrain_generation you can find a blender project which can be used to create terrains for the simulation. Open the script section and execute the script to get a terrain with a different stone distribution.
When a terrain has been generated, all big rocks are automatically selected, export this as the big_rock_layer that is needed for the collision detection inside the simulation. Then select the whole terrain (all stones and the base terrain) and export is as well. We import the files as ply in IsaacSim, if there are problems exporting into ply, export into fbx and then use a converter.
Apart from the terrain there is also the stone_info file that you need to put into the terrain folder of the simulation. This is used for the spawn and goal validation.
For other questions feel free to contact:
- Anton Bjørndahl Mortensen: antonbm2008@gmail.com