Skip to content

Partial perception - #7

Open
Tia-Chen wants to merge 3 commits into
mainfrom
partial_perception
Open

Partial perception#7
Tia-Chen wants to merge 3 commits into
mainfrom
partial_perception

Conversation

@Tia-Chen

@Tia-Chen Tia-Chen commented Apr 28, 2024

Copy link
Copy Markdown
Collaborator

FUNCTIONALITY:
Filters observations returned in the game.observations() function to return only the information about objects within visual perception. Object positions are in relative position to agent position and direction.

HOW TO USE:
Regular usage of agent. No changes necessary. The observations returned at each step() function call will be filtered to only contain perceived objects.

HOW TO TEST:
At the end of the observation function, feel free to print out the observation. (Using pprint() may allow the observation dictionary to be more readable) Then, run the simulation to observe the partial filtering.

DEPENDENCIES/NEW IMPORTS:

IMPORTANT NOTES:

  • The vision is implemented as a right triangle with a height of 3. This design choice is to naively prevent agents being able to see shelves behind another using perception range constraint. If we want to allow for further vision, but still disable agents to see objects behind another object, we may want to consider a visibility graph.
  • About efficiency: current implementation checks every object in the simulation to see if they are within perception range. This is relatively fast currently and does not cause lags in animation. However, if we want to expand/optimize in the future, we may need to use a range tree to more efficiently identify which objects are in reasonable range to check and which are not.

@Tia-Chen
Tia-Chen marked this pull request as ready for review April 28, 2024 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant