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

[main] Port CHOMP to MoveIt2 #809

Merged
merged 19 commits into from
Nov 30, 2021
Merged

Conversation

andreas-botbuilt
Copy link
Contributor

@andreas-botbuilt andreas-botbuilt commented Nov 16, 2021

Description

This PR makes CHOMP available in MoveIt2. CHOMP can be used as a stand-alone motion planner plugin (instead of OMPL) or as a post-processor for OMPL (where the seed trajectory for CHOMP is the output of OMPL).

Checklist

  • Required by CI: Code is auto formatted using clang-format
  • Extend the tutorials / documentation reference
  • Document API changes relevant to the user in the MIGRATION.md notes
  • Create tests, which fail without this PR reference
  • Include a screenshot if changing a GUI
  • While waiting for someone to review your request, please help review another open pull request to support the maintainers

Changes

  • CHOMP parameters are loaded from the namespace "chomp"
  • As suggested by @henningkayser in PR 805, changes are made against main

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks really good so far, thanks a lot again for your work. I have left some minor fixes that should be addressed before merging, but otherwise I think this is good to go. Before merging: on what robot have you tested this (if anything else than the Panda)? I'm going to give this a couple runs and see if I find any issues.
I also noticed that there is still a bunch of commented code in this package (the parts not from you). I'm inclined to review these and simply remove commented code if it doesn't seem useful. Most of it seems to be related to profiling and debugging. Since you apparently use CHOMP currently for your project, feel free to re-enable and modify what you find or make suggestions for cleanup.

@henningkayser henningkayser self-assigned this Nov 19, 2021
@henningkayser henningkayser added the backport-foxy Mergify label that triggers a PR backport to Foxy label Nov 19, 2021
@andreas-botbuilt
Copy link
Contributor Author

Thanks again for your review! It has been tested on a 6-DOF industrial robot arm and there have been no issues. I'm not using or planing to use the commented code at the moment so I agree that the profiling/debugging parts can be removed. However, it seems that the Hamiltonian Monte Carlo method has never been thoroughly tested (see this comment), so I would suggest to make that a github issue to be fixed in the future.

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All right, to me this looks ready to get merged. @tylerjw or @JafarAbdi could either of you give this a quick review for the second approval?

@codecov
Copy link

codecov bot commented Nov 23, 2021

Codecov Report

Merging #809 (2ba651a) into main (77075f5) will decrease coverage by 0.02%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #809      +/-   ##
==========================================
- Coverage   56.69%   56.67%   -0.01%     
==========================================
  Files         200      200              
  Lines       21660    21660              
==========================================
- Hits        12277    12274       -3     
- Misses       9383     9386       +3     
Impacted Files Coverage Δ
...dl_kinematics_plugin/src/kdl_kinematics_plugin.cpp 74.82% <0.00%> (-1.11%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 77075f5...2ba651a. Read the comment docs.

@andreas-botbuilt
Copy link
Contributor Author

Looks like I accidentally merged main into this, not sure if this was necessary.

Copy link
Member

@JafarAbdi JafarAbdi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the port, just left a few comments then I think it's ready to be merged

moveit_planners/chomp/chomp_interface/package.xml Outdated Show resolved Hide resolved
moveit_planners/chomp/chomp_interface/package.xml Outdated Show resolved Hide resolved
moveit_planners/chomp/chomp_interface/src/chomp_plugin.cpp Outdated Show resolved Hide resolved
Copy link
Member

@JafarAbdi JafarAbdi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just curious, there are a few reordering of include files and adding/removing black lines, any reason for that ?

@andreas-botbuilt
Copy link
Contributor Author

Just curious, there are a few reordering of include files and adding/removing black lines, any reason for that ?

No reason. I'm not exactly sure what caused this, maybe some code formatting tool I used. If you prefer a specific ordering, let me know.

@JafarAbdi
Copy link
Member

@andreas-botbuilt I open a PR to fix very nit stuff, could you please review it ? thanks

@JafarAbdi
Copy link
Member

Sorry I forgot to run clang-format, do you mind fixing it? thanks!

@mergify
Copy link

mergify bot commented Nov 30, 2021

This pull request is in conflict. Could you fix it @andreas-botbuilt?

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@henningkayser henningkayser merged commit 0458208 into moveit:main Nov 30, 2021
mergify bot pushed a commit that referenced this pull request Nov 30, 2021
Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
Co-authored-by: Jafar Abdi <cafer.abdi@gmail.com>
(cherry picked from commit 0458208)

# Conflicts:
#	moveit_planners/chomp/chomp_interface/package.xml
#	moveit_planners/chomp/chomp_interface/src/chomp_planning_context.cpp
#	moveit_planners/chomp/chomp_interface/src/chomp_plugin.cpp
#	moveit_planners/chomp/chomp_motion_planner/package.xml
#	moveit_planners/chomp/chomp_optimizer_adapter/package.xml
tylerjw pushed a commit that referenced this pull request Dec 2, 2021
Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
Co-authored-by: Jafar Abdi <cafer.abdi@gmail.com>
Co-authored-by: andreas-botbuilt <94128674+andreas-botbuilt@users.noreply.github.com>
(cherry picked from commit 0458208)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-foxy Mergify label that triggers a PR backport to Foxy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants