Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Moco] feature request: a normalize state tracking error function similiar to setNormalizeTrackingError for contact errors #3971

Open
nik-steventon opened this issue Nov 18, 2024 · 3 comments

Comments

@nik-steventon
Copy link

Hi,

I was wondering if it would be possible to create a function that would normalize the state values to their peak value in a coordinate.sto file? This would be similar to the setNormalizeTrackingError for a ContactTrackingGoal, which normalizes tracking errors to the peak contact force values. I think this would make it easier to set relative weights as muscle activations, grfs, and states errors would all be bound between 0-1. If my understanding is correct, this would avoid the optimizer preferencing tracking joint ranges of motion which have high values and hopefully negate the need to set other tracking values significantly higher to account for this.

Thanks in advance.

Regards,
Nik

@nickbianco
Copy link
Member

Hi @nik-steventon. Good idea! We will keep this in mind for future development plans.

@nik-steventon
Copy link
Author

Thanks for the reply @nickbianco, that would be great! In the meantime, is there anyway to access the source code for the setNormalizeTrackingError() function? No worries if not, but I wouldn't mind having a go at pulling together some code to replicate this function for state errors and would be happy to share it here and on the Moco forum if I can get it to work.

@nickbianco
Copy link
Member

You can find the source code for the GRF normalization here:

// Compute normalization factors.

If you're able to replicate this behavior for MocoStateTrackingGoal and want to create a PR, let me know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants