RatInABox-Lab / RatInABox

A python package for simulating 2D motion in continuous environment and spatial cell types (e.g. place cell).
MIT License
184 stars 31 forks source link

New Actions #90

Closed mehulrastogi closed 10 months ago

mehulrastogi commented 11 months ago

Opening a discussion for expanding the actions allowed within the RiaB framework. The following was suggested by @Jeff.

The behavior experiments require rats/mice to do some actions other than navigation. These range from pressing a lever (/button), licking, eating, rolling a wheel, etc. @TomGeorge1234 I think we should think about expanding the environment to handle these sorts of actions.

I was thinking about a spatial button in a box as an initial proof of concept. Obviously, this is a step toward dynamic environments where agents can do tasks in steps. A simple task might be to press a button to go to the next room to get a reward.

Thoughts?

TomGeorge1234 commented 11 months ago

Can you give me some examples of how this would work, I agree these behaviours are shown by rats/mice but wouldn't conscious not to open a can of worms. Would there be a nice class Button which when registers a press will do some stuff to the Environment (e.g. release a reward). This feels close to what Ryan added with the different goal types which can be added to environments.

It seems like what we really want most is dynamic environments first...then these types of actions could be relatively easily added by individual users.

TomGeorge1234 commented 10 months ago

@mehulrastogi wondering if this overlaps with the last comment I made on #84. walls, objects, buttons, teleports, etc. should eventually all be independent classes with their own update and render functions. not a small change but in the long term this would be awesome to implement.

If so can I close this?

mehulrastogi commented 10 months ago

Yeah it kind of is. Closing this issue