Skip to content

Commit 303d145

Browse files
committed
chore: rearrange readme
1 parent 58b6cfa commit 303d145

File tree

1 file changed

+24
-7
lines changed

1 file changed

+24
-7
lines changed

README.md

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,40 @@
11
# MuJoCo SysId
22

3-
<a href="https://colab.research.google.com/github/lvjonok/mujoco-sysid/blob/master/examples/mujoco_sysid_demo.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" width="120" align="center"/></a>
3+
MuJoCo System Identification (mujoco-sysid) is a Python module designed to perform system identification using the MuJoCo physics engine. This module facilitates the estimation of model parameters to match the simulated dynamics with observed data, enhancing the accuracy and reliability of robotic simulations.
44

5-
# <h1><center>System Identification in Robotic Systems<br></center></h1>
5+
# Features
66

7-
This repository offers a concise introduction to system identification (Sys-ID) in robotic systems. It is inspired by recent advancements in MuJoCo utilities, specifically the [Levenberg-Marquardt nonlinear least squares method](https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/python/least_squares.ipynb).
7+
- **Dynamic parameters**: getters and setters for dynamic parameters of MuJoCo and MJX models.
8+
- **Regressor models**: energy and dynamics-based regressors for robotic systems.
9+
- **Parameters representation**: utilities for converting between dynamic parameters, Log-Cholesky parametrization and pseudo-inertia.
810

9-
Our primary focus is on mechanical systems where **the model structure is known**, including the number of state variables and the configuration of the kinematic tree. While the dynamics of these systems can be inherently complex, the general forms of the equations are known and have already been implemented in MuJoCo. In this context, the task of identification is essentially to estimate the parameters within a structured model.
11+
# Installation
12+
13+
To install the module, run the following command:
14+
15+
```bash
16+
pip install mujoco-sysid
17+
```
18+
19+
# Documentation
20+
21+
To be generated.
1022

11-
### Contents
23+
# Examples
24+
25+
<!-- # <h1><center>System Identification in Robotic Systems<br></center></h1> -->
26+
27+
The demo is inspired by recent advancements in MuJoCo utilities, specifically the [Levenberg-Marquardt nonlinear least squares method](https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/python/least_squares.ipynb).
28+
29+
Our primary focus is on mechanical systems where **the model structure is known**, including the number of state variables and the configuration of the kinematic tree. While the dynamics of these systems can be inherently complex, the general forms of the equations are known and have already been implemented in MuJoCo. In this context, the task of identification is essentially to estimate the parameters within a structured model.
1230

1331
This repository includes the following [examples](examples/mujoco_sysid_demo.ipynb):
32+
<a href="https://colab.research.google.com/github/lvjonok/mujoco-sysid/blob/master/examples/mujoco_sysid_demo.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" width="120" align="center"/></a>
1433

1534
- Estimation of cart-pole inertial parameters through random forcing and LQR stabilization of the identified system
1635
- Identification of end-effector load for the Franka Emika Panda and compensation using inverse dynamics
1736
- Determination of mass, center of mass, and spatial inertia for a Skydio X2 Quadrotor following LTV LQR tracking attempts.
1837

19-
Additionally, we provide some theoretical background and introduce two utility functions that may enhance system identification and adaptive control in robotic systems: `mj_bodyRegressor` and `mj_jointRegressor`.
20-
2138
We hope these examples and utilities will be useful for all MuJoCo users and assist in resolving their system identification challenges.
2239

2340
For further questions and suggestions, please do not hesitate to create an issue or start a discussion [on GitHub](https://github.com/lvjonok/mujoco-sysid/issues/new/choose).

0 commit comments

Comments
 (0)