This PR in the imitation repo is directly related to this PR
This PR introduces a new structure to some of the repositories features and also some new functionality.
The original intention was to allow for the deep_panther expert (ExpertPolicy.py) to be used without the catkin build system.
For this reason, utility functions on the C++ side (panther/include and panther/src) were split into separate files ros_utils and ros_timer for specific ROS utilities and utils and timer for features not dependent on ROS.
Includes were adjusted so that ROS specific functionalities are now only included when absolutely necessary.
The same was done on the Python side. Utilities were split into separate files to allow for more precise import statements and reduce overhead.
This now allows us to use the expert as a standalone library.
An example on how this can be done can be found here.
New functionalities that were added are:
Introduced support for 2D and 3D by adjusting main.m and passing a dim kwarg to the ExpertPolicy constructor.
Returning the total_time of the expert trajectory
Returning the trajectory guesses obtained by octopus search
This PR in the
imitation
repo is directly related to this PRThis PR introduces a new structure to some of the repositories features and also some new functionality. The original intention was to allow for the
deep_panther
expert (ExpertPolicy.py
) to be used without the catkin build system.For this reason, utility functions on the C++ side (
panther/include
andpanther/src
) were split into separate filesros_utils
andros_timer
for specific ROS utilities andutils
andtimer
for features not dependent on ROS. Includes were adjusted so that ROS specific functionalities are now only included when absolutely necessary.The same was done on the Python side. Utilities were split into separate files to allow for more precise import statements and reduce overhead.
This now allows us to use the expert as a standalone library. An example on how this can be done can be found here.
New functionalities that were added are:
main.m
and passing adim
kwarg to theExpertPolicy
constructor.total_time
of the expert trajectoryAlso we switched from
gym
togymnasium
.