grid-sensor icon indicating copy to clipboard operation
grid-sensor copied to clipboard

fundamental Questions and compatibility in year 2024

Open AlizargarDeu opened this issue 1 year ago • 3 comments

As there is not any update for newer mlagents and python version, I decided to open this issue and ask some questions. As I tried to train my environment in ML- agents by rays and camera too, I found mbaske's 3D grid sensor. But unfortunately I got some error to handle it with ML-agent 3.0.0. Finally I found that I should downgrade my python(now 3.6) and mlagnet(2.21-exp.1). so I have still some question about it that maybe is helpful for everyone who are willing to work with that. it stores the agent's position local or global? I mean when I put the 3D sensor on my agent it stores the position as local?

AlizargarDeu avatar Sep 09 '24 12:09 AlizargarDeu

Observations are always local, so that they're independent from where agents are in the environment. The sensor tracks positions of observable objects relative to the sensor/agent position.

mbaske avatar Sep 09 '24 15:09 mbaske

thanks for your response, the 3D grid sensor senses(or collect) all info inside it too? or like raycasts it gets just the info whatever it hits? for example suppose I defined a sphere (Lat Angle North and Lat angle south = 90 and Lon angle = 180), it gets the information from all collider inside this sphere too? or just what is on the surface?

AlizargarDeu avatar Sep 09 '24 19:09 AlizargarDeu

The sensor detects sets of points that need to be generated upfront. That's why detectable gameobjects need to have the corresponding class, please see https://github.com/mbaske/grid-sensor?tab=readme-ov-file#Detecting-Game-Objects The ml-agents toolkit comes with its own grid sensor. Last time I checked, their sensor worked by physics overlap checks against colliders, which can drag down performance quite a bit. My sensor is lighter on the physics engine, but the trade-off is that more setup work is required.

mbaske avatar Sep 10 '24 17:09 mbaske