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

Restructure Task class #5

Open
rhaschke opened this issue Aug 17, 2022 · 2 comments
Open

Restructure Task class #5

rhaschke opened this issue Aug 17, 2022 · 2 comments

Comments

@rhaschke
Copy link
Member

Simplify Task class hierarchy. Currently, you distinguish between Task and TaskDesc. I suggest merging them, having finally the following members:

  • name
  • args (usually just reference (role of T_c) + goal (role of T_t) ?)
  • argmap
  • weight

These are updated during compute():

  • J, lb, ub (for equality constraints lb == ub)
  • softness = hard | linear | quadratic

These are updated during solve() and will allow for convergence check:

  • residual
  • violation
  • importance (Lagrange multiplier)
@felixkol
Copy link
Collaborator

felixkol commented Sep 2, 2022

#9 implements everything but residual/violation and importance.
For both solvers residual/violation can be calculated easily.

Importance can only be calculated in the HQP solver (?). While iteration over the hierarchy, tasks occurring in later levels as null-space constraints will be assigned multiple importance values. How do we treat these?

@rhaschke
Copy link
Member Author

Importance can only be calculated in the HQP solver (?).

Yes.

While iterating over the hierarchy, tasks occurring in later levels as null-space constraints will be assigned multiple importance values. How do we treat these?

I suggest keeping the first solution's values only.

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

Successfully merging a pull request may close this issue.

2 participants