google-deepmind / google-deepmind/mujoco

Confusing unphysical interaction of noslip, frictionloss, and damping

Open
#2,423 0 comments 0 reactions 0 assignees View on GitHub
bug
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.