brax icon indicating copy to clipboard operation
brax copied to clipboard

feat(composer): agent specific observations

Open cemlyn007 opened this issue 2 years ago • 4 comments

Hey 👋

I am working in my fork on supporting agent specific observations in the composer sub-package. Additionally I need this feature to support observation masking that is dependent on the current state of the environment.

Best approach I can see:

  1. Each agent component already accepts observers a) Similar to how reward_fns is done b) This could support dynamic masking
  2. Introduce two methods to flatten and unflatten the observation array so that each agent can be given it's specific observation.
  3. Pass this sort of information inside the edge parameter to Composer: a) Could be part of its responsibility "automatically create necessary edge information among 2+ components" b) But maybe edge information is only meant to care about pairs of components

Let me know if this sounds cool with you guys, but otherwise I am going to make a start on this feature 😀

cemlyn007 avatar Nov 13 '22 17:11 cemlyn007

Hi @cemlyn007 ! Afaik we won't be maintaining composer going forward unfortunately. That approach sounds reasonable though, although edge does seem to be designed around "pairs"

btaba avatar Nov 15 '22 17:11 btaba

Does this mean the composer sub-package will be removed in your upcoming release?

Will your new release support composable environments with a different sub-package?

cemlyn007 avatar Nov 15 '22 21:11 cemlyn007

@erikfrey for more info here on composer

btaba avatar Nov 15 '22 21:11 btaba

Yes, the composer package is in limbo - its original maintainer has moved on and we haven't seen enough usage to warrant pulling it out of experimental and officially supporting it.

BUT if you care deeply about this package and are willing to maintain it, please let us know! I'll leave this issue open for a while as a call to action if anyone is interested.

erikfrey avatar Dec 15 '22 01:12 erikfrey