Interface ISensor
Sensor interface for generating observations.
Namespace: Unity.MLAgents.Sensors
Syntax
public interface ISensor
Methods
GetCompressedObservation()
Return a compressed representation of the observation. For small observations, this should generally not be implemented. However, compressing large observations (such as visual results) can significantly improve model training time.
Declaration
byte[] GetCompressedObservation()
Returns
Type | Description |
---|---|
Byte[] | Compressed observation. |
GetCompressionType()
Return the compression type being used. If no compression is used, return None.
Declaration
SensorCompressionType GetCompressionType()
Returns
Type | Description |
---|---|
SensorCompressionType | Compression type used by the sensor. |
GetName()
Get the name of the sensor. This is used to ensure deterministic sorting of the sensors on an Agent, so the naming must be consistent across all sensors and agents.
Declaration
string GetName()
Returns
Type | Description |
---|---|
String | The name of the sensor. |
GetObservationShape()
Returns the size of the observations that will be generated. For example, a sensor that observes the velocity of a rigid body (in 3D) would return new {3}. A sensor that returns an RGB image would return new [] {Height, Width, 3}
Declaration
int[] GetObservationShape()
Returns
Type | Description |
---|---|
Int32[] | Size of the observations that will be generated. |
Reset()
Resets the internal state of the sensor. This is called at the end of an Agent's episode. Most implementations can leave this empty.
Declaration
void Reset()
Update()
Update any internal state of the sensor. This is called once per each agent step.
Declaration
void Update()
Write(ObservationWriter)
Write the observation data directly to the ObservationWriter. Note that this (and GetCompressedObservation()) may be called multiple times per agent step, so should not mutate any internal state.
Declaration
int Write(ObservationWriter writer)
Parameters
Type | Name | Description |
---|---|---|
ObservationWriter | writer | Where the observations will be written to. |
Returns
Type | Description |
---|---|
Int32 | The number of elements written. |