Hide and Seek Robots - Request for Comments
I’m trying a new approach (for me) at defining my next robot project, and I was hoping that some of you ‘old hands’ could provide me with your comments.
Problem statement: Two or more robots that play hide and seek. At the start of the game the seeker and one or more hiders are together in the center of the room. As the seeker counts to 20 the others run away. After the count to 20 they stop and the seeker starts to search for them. When a seeker bumps a hider, the hider acknowledges that it was found. The seeker then starts looking for the next hider. The game ends when all hiders are found.
Analyze statement looking for hidden assumptions about how a human might accomplish the task and the limits a robot will have:
- Does a seeker just randomly cruise around until it bumps a hider? A human seeker can often search until it sees or hears the other player. How will these players ‘see’ each other?
- How does a seeker count and a hider know when the count is over? These players will need a voice, ears and the ability to count.
- How does a seeker know that it has found a hider? How does a hider know when it has been found? How do they communicate?
- How does the seeker know when the game is over?
- Human hiders won’t hide in the same way. How do these players all hide in different ways? In shadows, in bright light, along a wall, equal distant from all objects (in plain sight), behind the closest object (how does a player know that it is behind an object?), as far away as possible (full speed ahead).
Minimum set of competencies:
Communicate with other players: See other players, hear other players. Hide, Avoid Hazards, Cruise, Escape Collisions, Follow, Seek.
Methods that enable each competency with existing technology:
- Communicate with other players: See other players, hear other players. Players should possess IR emitters/detectors, instrumented bumpers, buzzers and microphones. The seeker will use IR detectors to ‘see’ and home-in on a hiders IR emitter beacon. After the count to 20 the hiders will need to turn on their IR emitters. The bumper is used by both seeker and hider to initiate a ‘conversation’. When the seeker bumps something it beeps and listens. If the listening seeker doesn’t hear anything then it didn’t contact a player but something else and it would then continue seeking. If a hider is bumped it listens, if it hears a beep then it beeps in return and is out of the game. If there is no beep then the hider continues to wait and run its IR emitter beacons.
- Hide. There should be multiple ways to hide so that each player could employ different hiding strategies. Accomplished by some combination of the avoid, escape, follow, cruise competencies.
- Avoid Hazards. Use two IR proximity sensors to steer away from walls and canyons.
- Cruise. Quickly move forward using differential drive actuators.
- Escape Collisions. An instrumented bumper will allow an escape from ‘unseen’ obstacles
- Follow. An IR distance sensor will be used to follow walls, Also photo transistors will allow light following and darkness following.
- Seek. IR detector tuned to the same frequency as the IR beacons will home-in on hiders.
Questions asked to accomplish its task:
Every question implies an action. Is a collision eminent? Is a wall adjacent? Did I detect an IR emitter? Has a collision just occurred? Am I stuck? Did I hear a beep? Which direction is darker? Which direction is lighter?
Match sensors to questions:
- Use IR proximity sensors for the avoidance behavior and an IR range sensor for wall following.
- Infrared detector, IR Receiver Sensor - TSOP38238.
- Infrared emitter, Super-bright 5mm IR LED - 940nm. Sparkfun has a schematic to boost the range of the emitter beyond 10 feet!
- Bumper switches to allow the creatures to escape and communicate. DigiKey has them. How many would give coverage on all sides?
- Piezo buzzer for the seeker to ‘count’ to 20 before seeking the hiders.
- Microphone for hider to ‘listen’ for the count to 20 and to recognize when found by a seeker. Also used by the seeker to confirm that it bumped a hider.
- Photo transistors could be used as proximity sensors for the Hide and Follow behaviors. Use two for lightness and/or darkness differential steering.
Clear as mud? Is there an easier way?
I googled "robots playing hide and seek" and indeed it is something others have investigated. I guess it is like seeking prey and avoiding predators. I imagine you could use those little soccer playing robots to explore algorithms to implement such behaviours and to test any ideas. I used to play with such things using simulated agents. Here is a snapshot of the display in one of my experiments in programming soccer player agents.
My personal interest now is in practical robots that I can actually build myself that can do something useful rather than robots to test theories about social behaviours. It was an interest learning the physical requirements of a robot that resulted in my being here in the first place to see if I could learn anything useful from the tutorial of the DB1 build.