google-deepmind / google-deepmind/mujoco
Confusing unphysical interaction of noslip, frictionloss, and damping
- Dominant language
- C++
- Stars
- 15.2k
- Forks
- 1.8k
- Avg merge
- 10d 16h
- Merged PRs (30d)
- 25
Description
### Intro
Hi!
I am a graduate student at HKU, I use MuJoCo for my research on robotic manipulation.
### My setup
MuJoCo 3.2.7, Python and C, Linux
### What's happening? What did you expect?
While experimenting with a hinge joint that includes `frictionloss`, I encountered an unexpected and unphysical behavior. After simplifying the model, I found that when using a single-joint setup with all of the following parameters set to values greater than 0—`noslip_iterations`, `frictionloss`, and `damping`—the deceleration of the joint becomes excessively slow.
Specifically, when I load the model and keyframe it, I expect the cylinder to decelerate to zero speed quickly due to the effects of friction and damping. This behavior works as expected when any one of the three options is turned off. However, when all three are active, the cylinder continues rotating, but the deceleration is very gradual.
**Questions:**
1. Is this slow deceleration the expected behavior (documentation mentions that noslip solver "no longer be solving a well-defined optimization problem")?
2. Could I be misusing one or more of these options?
3. Or, is this potentially indicative of a bug in the simulation?
### Steps for reproduction
Load the model, and load keyframe 0.
### Minimal model for reproduction
```XML
```
### Code required for reproduction
_No response_
### Confirmations
- [x] I searched the [latest documentation](https://mujoco.readthedocs.io/en/latest/overview.html) thoroughly before posting.
- [x] I searched previous [Issues](https://github.com/google-deepmind/mujoco/issues) and [Discussions](https://github.com/google-deepmind/mujoco/discussions), I am certain this has not been raised before.
Contributor guide
Assessment
This issue has not been assessed yet.