Collision Manager Simulation
An example simulation demonstrating anti-collision behavior.
Description

An example simulation demonstrating anti-collision behavior.

  • img2csv.py: A file to convert an image to a csv. Use to create a csv that you can then upload to HASH
  • map_management.py: a behavior that provides copies of an xy_map to agents that request it
  • create_walls.py: Creates the 3d viewer representation of create_walls
  • create_factory.py: loads the data into the MapManager agent
  • move.py: checks if a move will cause the agent to collide with the wall. If so, it doesn't make that move. Otherwise it randomly moves.

Next steps:

  • Smarter move behaviors: Implement a pathfinding algorith/scheduled path.
  • Map updates: With multiple agents or randomness in the environment the map of collideable objects will change. Some potential solutions:
    • Have an agent update it's own map with things it sees in the environment
    • Update the map manager when agents take moves and publish to subscribing agents.
    • For performance subdivide zones of the grid for different maps/map managers.
    • Only post diffs to agents instead of the entire map.