Replies: 1 comment 1 reply
-
|
Hi! Very cool use case!
Note: For your particular use case, one friction point I can already envision is making the LLM control the exploration points. We’ve tested map understanding (e.g., giving a basic NAV2 map as an image to a VLM with a grid), and it wasn’t that great. It’s generally hard for the LLM to reliably connect image-based maps with real-world coordinates.
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I am interested in implementing a collaborative/competitive use case using the RAI: a multi-robot hide-and-seek game. This scenario aims to test reasoning, multi-agent communication, and autonomous decision-making.
Scenario workflow that I planned:
1. Mapping & Discovery Phase: Both robots (Seeker and Hider) explore the environment using SLAM/Navigation tools to identify "hiding spots" (corners, behind furniture, etc.) and build a shared or individual understanding of the map.
2. Game Initialization: Once the command is given by user via GUI, the game starts.
3. The Waiting Period: The Seeker robot must remain stationary at a "home base" for a set duration (for example 60 seconds) with its "eyes closed" (disabling/ignoring camera input), simulating the counting phase.
4. Hiding Phase: During this 60 seconds, the Hider robot must autonomously select the best spot (based on distance or occlusion) and navigate there.
5. The Search: The Seeker activates its sensors and begins searching for the Hider based on its reasoning of potential hiding spots.
So its a common hide and seek game.
Questions about "How I can implement it?":
Inter-Agent Communication: Can I use ROS2Connector or ROS2HRIConnector to facilitate direct messaging between agents (e.g., "I found you", "I am hidden")? Is there a recommended pattern for agent-to-agent topic communication within RAI?
Agent Architecture: Is the existing ReAct Agent suitable for this loop, or should I define a custom agent class?
Extending ReAct: If I stay with ReActAgent, what is the best way to extend its logic to handle state-dependent behaviors (like the Seeker waiting/ignoring input during the countdown)? Should this be handled via a complex SystemPrompt or by overriding the input_callback?
Multi-Instance Support: Are there any known limitations when running two distinct RAI agent instances (each with its own LLM session and tools) in the same ROS 2 domain?
I want to implement this use case scenario without reinvent the wheel.
Thank you
Beta Was this translation helpful? Give feedback.
All reactions