public void TestBufferSensor() { var bufferSensor = new BufferSensor(20, 4); var shape = bufferSensor.GetObservationShape(); var dimProp = bufferSensor.GetDimensionProperties(); Assert.AreEqual(shape[0], 20); Assert.AreEqual(shape[1], 4); Assert.AreEqual(shape.Length, 2); Assert.AreEqual(dimProp[0], DimensionProperty.VariableSize); Assert.AreEqual(dimProp[1], DimensionProperty.None); Assert.AreEqual(dimProp.Length, 2); bufferSensor.AppendObservation(new float[] { 1, 2, 3, 4 }); bufferSensor.AppendObservation(new float[] { 5, 6, 7, 8 }); var obsWriter = new ObservationWriter(); var obs = bufferSensor.GetObservationProto(obsWriter); Assert.AreEqual(shape, obs.Shape); Assert.AreEqual(obs.DimensionProperties.Count, 2); Assert.AreEqual((int)dimProp[0], obs.DimensionProperties[0]); Assert.AreEqual((int)dimProp[1], obs.DimensionProperties[1]); for (int i = 0; i < 8; i++) { Assert.AreEqual(obs.FloatData.Data[i], i + 1); } for (int i = 8; i < 80; i++) { Assert.AreEqual(obs.FloatData.Data[i], 0); } }
public void SetUp() { continuousONNXModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_continuousONNXPath, typeof(NNModel)); discreteONNXModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_discreteONNXPath, typeof(NNModel)); hybridONNXModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_hybridONNXPath, typeof(NNModel)); continuousNNModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_continuousNNPath, typeof(NNModel)); discreteNNModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_discreteNNPath, typeof(NNModel)); rank2ONNXModel = (NNModel)AssetDatabase.LoadAssetAtPath(k_discrete_ONNX_v2, typeof(NNModel)); var go = new GameObject("SensorA"); sensor_21_20_3 = go.AddComponent <Test3DSensorComponent>(); sensor_21_20_3.Sensor = new Test3DSensor("SensorA", 21, 20, 3); sensor_20_22_3 = go.AddComponent <Test3DSensorComponent>(); sensor_20_22_3.Sensor = new Test3DSensor("SensorA", 20, 22, 3); sensor_23_20 = new BufferSensor(20, 23, "BufferSensor"); sensor_8 = new VectorSensor(8, "VectorSensor8"); sensor_10 = new VectorSensor(10, "VectorSensor10"); }