Description
Hi,
When running the PPO examples in ManiSkill, particularly the ppo_rgb.py
script, I have noticed that the following warning message appears frequently during execution:
2024-11-20 21:30:17,567 - mani_skill - WARNING - No initial pose set for actor builder of goal_region, setting to default pose q=[1,0,0,0], p=[0,0,0].
2024-11-20 21:30:20,167 - mani_skill - WARNING - No initial pose set for actor builder of goal_region, setting to default pose q=[1,0,0,0], p=[0,0,0].
Problem Description:
-
Redundant Information:
- The warning indicates that the
goal_region
does not have an initial pose set and is therefore using default values (q=[1,0,0,0]
,p=[0,0,0]
). However, in many cases, the default pose is sufficient for running the examples and training the models.
- The warning indicates that the
-
Cluttered Logs:
- These warnings appear repeatedly, which can clutter the log output and make it harder to spot more critical messages or errors. This can be particularly problematic when users are trying to debug or monitor the training process.
-
Default Pose Sufficiency:
- For most users, especially those running the examples for the first time or during development and testing, the default pose is adequate. The warnings do not provide additional actionable information and can be seen as noise.
Proposed Solutions:
-
Remove the Warnings:
- If the default
goal_region
pose is sufficient for most use cases, consider removing these warnings entirely. This would streamline the log output and reduce unnecessary verbosity.
- If the default
-
Adjust Warning Level:
- Alternatively, if the information is still deemed useful for some users, consider changing the warning level to
INFO
orDEBUG
. This way, users who wish to see these messages can adjust their logging configuration accordingly, while others can avoid being overwhelmed by non-critical information.
# Example of changing the log level logging.getLogger('mani_skill').setLevel(logging.INFO) # or logging.DEBUG
- Alternatively, if the information is still deemed useful for some users, consider changing the warning level to
-
Provide Configuration Option:
-
Introduce a configuration option that allows users to enable or disable these warnings. This can be done through a configuration file or a command-line argument. For example:
# config.yaml warn_default_pose: False # Set to True to enable warnings
# Command-line argument example python ppo_rgb.py --warn_default_pose=False
-
-
Documentation Update:
- Update the documentation to explain the default
goal_region
pose and inform users that they can adjust it if needed. This would help users understand why the warnings appear and how to configure them.
- Update the documentation to explain the default
Example of Proposed Code Change:
# Current warning
logging.warning("No initial pose set for actor builder of goal_region, setting to default pose q=[1,0,0,0], p=[0,0,0].")
# Proposed change: Adjust warning level or remove it
# Option 1: Change to INFO level
logging.info("No initial pose set for actor builder of goal_region, setting to default pose q=[1,0,0,0], p=[0,0,0].")
# Option 2: Remove the warning entirely
# No code needed, just ensure the warning is not triggered
Conclusion:
Removing or adjusting these warnings would improve the user experience by making the logs cleaner and more focused on important information. It would also reduce confusion for new users who might not understand the relevance of the default goal_region
pose. This change would make ManiSkill more user-friendly and the logs more informative.