From a2bf61a1ec8a5e3edf4a32143cdbbb40aa6ca8f0 Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Tue, 16 Jul 2019 16:20:36 -0700 Subject: [PATCH 1/8] Implemented reset parameters for push block --- .../Examples/PushBlock/Scenes/PushBlock.unity | 10 +++++- .../PushBlock/Scripts/PushAgentBasic.cs | 31 +++++++++++++++++++ 2 files changed, 40 insertions(+), 1 deletion(-) mode change 100755 => 100644 UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlock.unity b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlock.unity index 7b5c639ab6..66dce0ad69 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlock.unity +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlock.unity @@ -1570,7 +1570,15 @@ MonoBehaviour: timeScale: 1 targetFrameRate: 60 resetParameters: - resetParameters: [] + resetParameters: + - key: dynamic_friction + value: 0 + - key: static_friction + value: 0 + - key: block_drag + value: 0.5 + - key: block_scale + value: 2 agentRunSpeed: 2 agentRotationSpeed: 15 spawnAreaMarginMultiplier: 0.5 diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs old mode 100755 new mode 100644 index 94b4ea44e9..89b26954b9 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs @@ -75,6 +75,8 @@ public override void InitializeAgent() groundRenderer = ground.GetComponent(); // Starting material groundMaterial = groundRenderer.material; + + SetResetParameters(); } public override void CollectObservations() @@ -217,5 +219,34 @@ public override void AgentReset() transform.position = GetRandomSpawnPos(); agentRB.velocity = Vector3.zero; agentRB.angularVelocity = Vector3.zero; + + SetResetParameters(); + } + + public void SetGroundMaterialFriction() + { + var resetParams = academy.resetParameters; + + var groundCollider = ground.GetComponent() as Collider; + + groundCollider.material.dynamicFriction = resetParams["dynamic_friction"]; + groundCollider.material.staticFriction = resetParams["static_friction"]; + } + + public void SetBlockProperties() + { + var resetParams = academy.resetParameters; + + //Set the scale of the block + blockRB.transform.localScale = new Vector3(resetParams["block_scale"], 0.75f, resetParams["block_scale"]); + + // Set the drag of the block + blockRB.drag = resetParams["block_drag"]; + } + + public void SetResetParameters() + { + SetGroundMaterialFriction(); + SetBlockProperties(); } } From 2ddad46e1e27feaa1f7be9517203cd97db31fd71 Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Tue, 16 Jul 2019 16:26:20 -0700 Subject: [PATCH 2/8] Add material to pushblock ground for friction --- .../Materials/PushBlockGround.physicMaterial | 13 +++++++++++++ .../Materials/PushBlockGround.physicMaterial.meta | 8 ++++++++ 2 files changed, 21 insertions(+) create mode 100644 UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial create mode 100644 UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta diff --git a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial new file mode 100644 index 0000000000..1d7f72de47 --- /dev/null +++ b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial @@ -0,0 +1,13 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: PushBlockGround + dynamicFriction: 0 + staticFriction: 0 + bounciness: 0 + frictionCombine: 3 + bounceCombine: 3 diff --git a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta new file mode 100644 index 0000000000..d1bf720ebf --- /dev/null +++ b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f440cd475293044139739aff331224fb +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: From e3dd1f67a3664a69847080789c24a66c0da4587b Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Tue, 16 Jul 2019 16:36:42 -0700 Subject: [PATCH 3/8] Added PushBlock resetParams to docs with prescribed values --- docs/Learning-Environment-Examples.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/Learning-Environment-Examples.md b/docs/Learning-Environment-Examples.md index 2149363ebb..836a04e443 100644 --- a/docs/Learning-Environment-Examples.md +++ b/docs/Learning-Environment-Examples.md @@ -153,7 +153,23 @@ If you would like to contribute environments, please see our `VisualPushBlock` scene. __The visual observation version of this environment does not train with the provided default training parameters.__ -* Reset Parameters: None. +* Reset Parameters: Four, corresponding to the following: + * block_scale: Scale of the block along the x and z dimensions + * Default: 2 + * Recommended Minimum: 0.5 + * Recommended Maximum: 4 + * dynamic_friction: Coefficient of friction for the ground material acting on moving objects + * Default: 0 + * Recommended Minimum: 0 + * Recommended Maximum: 1 + * static_friction: Coefficient of friction for the ground material acting on stationary objects + * Default: 0 + * Recommended Minimum: 0 + * Recommended Maximum: 1 + * block_drag: Effect of air resistance on block + * Default: 0.5 + * Recommended Minimum: 0 + * Recommended Maximum: 2000 * Benchmark Mean Reward: 4.5 * Optional Imitation Learning scene: `PushBlockIL`. From 236ed239889a0434392fe32b183dbdd1221754d5 Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Tue, 16 Jul 2019 17:03:02 -0700 Subject: [PATCH 4/8] Add the push block ground material to the prefab --- .../ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab index 0357bfa2ee..4246a53459 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab @@ -838,7 +838,7 @@ BoxCollider: m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1500989011945850} - m_Material: {fileID: 0} + m_Material: {fileID: 13400000, guid: f440cd475293044139739aff331224fb, type: 2} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 @@ -905,6 +905,7 @@ MonoBehaviour: brain: {fileID: 11400000, guid: e8b2d719f6a324b1abb68d8cf2859f5c, type: 2} agentParameters: agentCameras: [] + agentRenderTextures: [] maxStep: 5000 resetOnDone: 1 onDemandDecision: 0 From f1de0c3760376c6da3579f3b145a3f475459940c Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Wed, 24 Jul 2019 01:54:49 -0700 Subject: [PATCH 5/8] Port changes to reacher and walker from other branch --- .../Examples/Reacher/Scenes/Reacher.unity | 10 ++++-- .../Reacher/Scripts/ReacherAcademy.cs | 9 ++--- .../Examples/Reacher/Scripts/ReacherAgent.cs | 34 ++++++++++++++----- .../Examples/Walker/Scenes/Walker.unity | 10 +++++- .../Examples/Walker/Scripts/WalkerAcademy.cs | 1 + .../Examples/Walker/Scripts/WalkerAgent.cs | 28 +++++++++++++++ 6 files changed, 73 insertions(+), 19 deletions(-) mode change 100755 => 100644 UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAcademy.cs mode change 100755 => 100644 UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs mode change 100755 => 100644 UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAcademy.cs mode change 100755 => 100644 UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAgent.cs diff --git a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scenes/Reacher.unity b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scenes/Reacher.unity index 5f65e9ed51..04382108ef 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scenes/Reacher.unity +++ b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scenes/Reacher.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 762086411} - m_IndirectSpecularColor: {r: 0.4465934, g: 0.49642956, b: 0.5748249, a: 1} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.49641287, b: 0.5748173, a: 1} --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 @@ -1122,8 +1122,12 @@ MonoBehaviour: value: 5 - key: goal_speed value: 1 - goalSize: 5 - goalSpeed: 1 + - key: gravity + value: 9.81 + - key: deviation + value: 0 + - key: deviation_freq + value: 0 --- !u!4 &1574236049 Transform: m_ObjectHideFlags: 0 diff --git a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAcademy.cs b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAcademy.cs old mode 100755 new mode 100644 index 39f3e36283..32a5c0490d --- a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAcademy.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAcademy.cs @@ -3,16 +3,13 @@ using UnityEngine; using MLAgents; -public class ReacherAcademy : Academy { - - public float goalSize; - public float goalSpeed; +public class ReacherAcademy : Academy +{ public override void AcademyReset() { - goalSize = (float)resetParameters["goal_size"]; - goalSpeed = (float)resetParameters["goal_speed"]; + Physics.gravity = new Vector3(0, -resetParameters["gravity"], 0); } public override void AcademyStep() diff --git a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs old mode 100755 new mode 100644 index 7715eade38..0cc45954ec --- a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs @@ -1,7 +1,8 @@ using UnityEngine; using MLAgents; -public class ReacherAgent : Agent { +public class ReacherAgent : Agent +{ public GameObject pendulumA; public GameObject pendulumB; @@ -13,6 +14,8 @@ public class ReacherAgent : Agent { private Rigidbody rbB; private float goalSpeed; private float goalSize; + private float deviation; + private float deviationFreq; /// /// Collect the rigidbodies of the reacher in order to resue them for @@ -23,6 +26,8 @@ public override void InitializeAgent() rbA = pendulumA.GetComponent(); rbB = pendulumB.GetComponent(); myAcademy = GameObject.Find("Academy").GetComponent(); + + SetResetParameters(); } /// @@ -43,15 +48,15 @@ public override void CollectObservations() AddVectorObs(goal.transform.localPosition); AddVectorObs(hand.transform.localPosition); - + AddVectorObs(goalSpeed); - } + } /// /// The agent's four actions correspond to torques on each of the two joints. /// public override void AgentAction(float[] vectorAction, string textAction) - { + { goalDegree += goalSpeed; UpdateGoalPosition(); @@ -62,17 +67,18 @@ public override void AgentAction(float[] vectorAction, string textAction) torqueX = Mathf.Clamp(vectorAction[2], -1f, 1f) * 150f; torqueZ = Mathf.Clamp(vectorAction[3], -1f, 1f) * 150f; rbB.AddTorque(new Vector3(torqueX, 0f, torqueZ)); - } + } /// /// Used to move the position of the target goal around the agent. /// - void UpdateGoalPosition() + void UpdateGoalPosition() { var radians = goalDegree * Mathf.PI / 180f; var goalX = 8f * Mathf.Cos(radians); var goalY = 8f * Mathf.Sin(radians); - goal.transform.position = new Vector3(goalY, -1f, goalX) + transform.position; + var goalZ = deviation * Mathf.Cos(deviationFreq * radians); + goal.transform.position = new Vector3(goalY, goalZ, goalX) + transform.position; } /// @@ -93,9 +99,19 @@ public override void AgentReset() goalDegree = Random.Range(0, 360); UpdateGoalPosition(); - goalSize = myAcademy.goalSize; - goalSpeed = Random.Range(-1f, 1f) * myAcademy.goalSpeed; + SetResetParameters(); + goal.transform.localScale = new Vector3(goalSize, goalSize, goalSize); } + + + public void SetResetParameters() + { + goalSize = myAcademy.resetParameters["goal_size"]; + goalSpeed = Random.Range(-1f, 1f) * myAcademy.resetParameters["goal_speed"]; + deviation = myAcademy.resetParameters["deviation"]; + deviationFreq = myAcademy.resetParameters["deviation_freq"]; + + } } diff --git a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scenes/Walker.unity b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scenes/Walker.unity index 048e9fe59d..1738095010 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scenes/Walker.unity +++ b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scenes/Walker.unity @@ -715,7 +715,15 @@ MonoBehaviour: timeScale: 1 targetFrameRate: 60 resetParameters: - resetParameters: [] + resetParameters: + - key: gravity + value: 9.81 + - key: hip_mass + value: 15 + - key: chest_mass + value: 8 + - key: spine_mass + value: 10 --- !u!4 &1409355322 Transform: m_ObjectHideFlags: 0 diff --git a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAcademy.cs b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAcademy.cs old mode 100755 new mode 100644 index d00b98365a..5d4c5f2f04 --- a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAcademy.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAcademy.cs @@ -19,6 +19,7 @@ public override void InitializeAcademy() public override void AcademyReset() { + Physics.gravity = new Vector3(0, -resetParameters["gravity"], 0); } public override void AcademyStep() diff --git a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAgent.cs b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAgent.cs old mode 100755 new mode 100644 index 5becda615a..56fb6a3246 --- a/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAgent.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/Walker/Scripts/WalkerAgent.cs @@ -29,6 +29,12 @@ public class WalkerAgent : Agent bool isNewDecisionStep; int currentDecisionStep; + private Rigidbody hipsRb; + private Rigidbody chestRb; + private Rigidbody spineRb; + + private ResetParameters resetParams; + public override void InitializeAgent() { jdController = GetComponent(); @@ -48,6 +54,15 @@ public override void InitializeAgent() jdController.SetupBodyPart(armR); jdController.SetupBodyPart(forearmR); jdController.SetupBodyPart(handR); + + hipsRb = hips.GetComponent(); + chestRb = chest.GetComponent(); + spineRb = spine.GetComponent(); + + var academy = FindObjectOfType() as WalkerAcademy; + resetParams = academy.resetParameters; + + SetResetParameters(); } /// @@ -184,5 +199,18 @@ public override void AgentReset() isNewDecisionStep = true; currentDecisionStep = 1; + SetResetParameters(); + } + + public void SetTorsoMass() + { + chestRb.mass = resetParams["chest_mass"]; + spineRb.mass = resetParams["spine_mass"]; + hipsRb.mass = resetParams["hip_mass"]; + } + + public void SetResetParameters() + { + SetTorsoMass(); } } From d0d7ed51fb66de8e231f1ce15d9f7d39ae1d6618 Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Wed, 24 Jul 2019 02:01:09 -0700 Subject: [PATCH 6/8] Updated docs with reset parameter values --- docs/Learning-Environment-Examples.md | 40 +++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/docs/Learning-Environment-Examples.md b/docs/Learning-Environment-Examples.md index 836a04e443..f924b908ae 100644 --- a/docs/Learning-Environment-Examples.md +++ b/docs/Learning-Environment-Examples.md @@ -213,7 +213,27 @@ If you would like to contribute environments, please see our * Vector Action space: (Continuous) Size of 4, corresponding to torque applicable to two joints. * Visual Observations: None. -* Reset Parameters: Two, corresponding to goal size, and goal movement speed. +* Reset Parameters: Five, corresponding to the following + * goal_size: radius of the goal zone + * Default: 5 + * Recommended Minimum: 1 + * Recommended Maximum: 10 + * goal_speed: speed of the goal zone around the arm (in radians) + * Default: 1 + * Recommended Minimum: 0.2 + * Recommended Maximum: 4 + * gravity + * Default: 9.81 + * Recommended Minimum: 4 + * Recommended Maximum: 20 + * deviation: Magnitude of sinusoidal (cosine) deviation of the goal along the vertical dimension + * Default: 0 + * Recommended Minimum: 0 + * Recommended Maximum: 5 + * deviation_freq: Frequency of the cosine deviation of the goal along the vertical dimension + * Default: 0 + * Recommended Minimum: 0 + * Recommended Maximum: 3 * Benchmark Mean Reward: 30 ## [Crawler](https://youtu.be/ftLliaeooYI) @@ -378,7 +398,23 @@ If you would like to contribute environments, please see our * Vector Action space: (Continuous) Size of 39, corresponding to target rotations applicable to the joints. * Visual Observations: None. -* Reset Parameters: None. +* Reset Parameters: Four, corresponding to the following + * gravity: Magnitude of gravity + * Default: 9.81 + * Recommended Minimum: + * Recommended Maximum: + * hip_mass: Mass of the hip component of the walker + * Default: 15 + * Recommended Minimum: 7 + * Recommended Maximum: 28 + * chest_mass: Mass of the chest component of the walker + * Default: 8 + * Recommended Minimum: 3 + * Recommended Maximum: 20 + * spine_mass: Mass of the spine component of the walker + * Default: 10 + * Recommended Minimum: 3 + * Recommended Maximum: 20 * Benchmark Mean Reward: 1000 ## Pyramids From 3ef65f54f1a17eb2f19854778fec6b3761847fc6 Mon Sep 17 00:00:00 2001 From: sankalp04 Date: Wed, 24 Jul 2019 02:08:57 -0700 Subject: [PATCH 7/8] Include pushblock optional scenes --- .../Examples/PushBlock/Prefabs/StudentArea.prefab | 3 ++- .../Examples/PushBlock/Prefabs/TeacherArea.prefab | 3 ++- .../Examples/PushBlock/Prefabs/VisualArea.prefab | 3 ++- .../Examples/PushBlock/Scenes/PushBlockIL.unity | 15 ++++++++++++++- .../PushBlock/Scenes/VisualPushBlock.unity | 10 +++++++++- 5 files changed, 29 insertions(+), 5 deletions(-) diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/StudentArea.prefab b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/StudentArea.prefab index 1d518d4234..d8ffc62dc9 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/StudentArea.prefab +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/StudentArea.prefab @@ -790,7 +790,7 @@ BoxCollider: m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1132847330634378} - m_Material: {fileID: 0} + m_Material: {fileID: 13400000, guid: f440cd475293044139739aff331224fb, type: 2} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 @@ -905,6 +905,7 @@ MonoBehaviour: brain: {fileID: 11400000, guid: e8b2d719f6a324b1abb68d8cf2859f5c, type: 2} agentParameters: agentCameras: [] + agentRenderTextures: [] maxStep: 5000 resetOnDone: 1 onDemandDecision: 0 diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/TeacherArea.prefab b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/TeacherArea.prefab index 6b9bfe7ed6..94a0da4238 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/TeacherArea.prefab +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/TeacherArea.prefab @@ -791,7 +791,7 @@ BoxCollider: m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1492788814869846} - m_Material: {fileID: 0} + m_Material: {fileID: 13400000, guid: f440cd475293044139739aff331224fb, type: 2} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 @@ -919,6 +919,7 @@ MonoBehaviour: brain: {fileID: 11400000, guid: dd07b1953eac4411b81fba032f394726, type: 2} agentParameters: agentCameras: [] + agentRenderTextures: [] maxStep: 5000 resetOnDone: 1 onDemandDecision: 0 diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/VisualArea.prefab b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/VisualArea.prefab index 7f35e22ef2..355c957683 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/VisualArea.prefab +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Prefabs/VisualArea.prefab @@ -870,7 +870,7 @@ BoxCollider: m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1553741088268304} - m_Material: {fileID: 0} + m_Material: {fileID: 13400000, guid: f440cd475293044139739aff331224fb, type: 2} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 @@ -970,6 +970,7 @@ MonoBehaviour: agentParameters: agentCameras: - {fileID: 20223756300728806} + agentRenderTextures: [] maxStep: 5000 resetOnDone: 1 onDemandDecision: 0 diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlockIL.unity b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlockIL.unity index 4b732c14ba..99b839a12f 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlockIL.unity +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlockIL.unity @@ -339,6 +339,11 @@ Prefab: propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} + - target: {fileID: 65880592586321730, guid: bed6005cc2a1a47edafba27cde6b5538, + type: 2} + propertyPath: m_Material + value: + objectReference: {fileID: 0} m_RemovedComponents: [] m_ParentPrefab: {fileID: 100100000, guid: bed6005cc2a1a47edafba27cde6b5538, type: 2} m_IsPrefabParent: 0 @@ -552,7 +557,15 @@ MonoBehaviour: timeScale: 1 targetFrameRate: 60 resetParameters: - resetParameters: [] + resetParameters: + - key: dynamic_friction + value: 0 + - key: static_friction + value: 0 + - key: block_drag + value: 0.5 + - key: block_scale + value: 2 agentRunSpeed: 2 agentRotationSpeed: 15 spawnAreaMarginMultiplier: 0.5 diff --git a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/VisualPushBlock.unity b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/VisualPushBlock.unity index e573b4c77c..9757c2f31e 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/VisualPushBlock.unity +++ b/UnitySDK/Assets/ML-Agents/Examples/PushBlock/Scenes/VisualPushBlock.unity @@ -658,7 +658,15 @@ MonoBehaviour: timeScale: 1 targetFrameRate: 60 resetParameters: - resetParameters: [] + resetParameters: + - key: dynamic_friction + value: 0 + - key: static_friction + value: 0 + - key: block_drag + value: 0.5 + - key: block_scale + value: 2 agentRunSpeed: 2 agentRotationSpeed: 15 spawnAreaMarginMultiplier: 0.5 From b3a3086854ad3d8083331aaa22b825d239e4d339 Mon Sep 17 00:00:00 2001 From: Ervin Teng Date: Wed, 24 Jul 2019 16:16:59 -0700 Subject: [PATCH 8/8] Remove unused material and add comments to Reacher --- .../Examples/Reacher/Scripts/ReacherAgent.cs | 6 +++++- .../Materials/PushBlockGround.physicMaterial | 13 ------------- .../Materials/PushBlockGround.physicMaterial.meta | 8 -------- 3 files changed, 5 insertions(+), 22 deletions(-) delete mode 100644 UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial delete mode 100644 UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta diff --git a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs index 0cc45954ec..85e1f5cecc 100644 --- a/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs +++ b/UnitySDK/Assets/ML-Agents/Examples/Reacher/Scripts/ReacherAgent.cs @@ -12,13 +12,17 @@ public class ReacherAgent : Agent float goalDegree; private Rigidbody rbA; private Rigidbody rbB; + // speed of the goal zone around the arm (in radians) private float goalSpeed; + // radius of the goal zone private float goalSize; + // Magnitude of sinusoidal (cosine) deviation of the goal along the vertical dimension private float deviation; + // Frequency of the cosine deviation of the goal along the vertical dimension private float deviationFreq; /// - /// Collect the rigidbodies of the reacher in order to resue them for + /// Collect the rigidbodies of the reacher in order to resue them for /// observations and actions. /// public override void InitializeAgent() diff --git a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial deleted file mode 100644 index 1d7f72de47..0000000000 --- a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial +++ /dev/null @@ -1,13 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!134 &13400000 -PhysicMaterial: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_Name: PushBlockGround - dynamicFriction: 0 - staticFriction: 0 - bounciness: 0 - frictionCombine: 3 - bounceCombine: 3 diff --git a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta b/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta deleted file mode 100644 index d1bf720ebf..0000000000 --- a/UnitySDK/Assets/ML-Agents/Examples/SharedAssets/Materials/PushBlockGround.physicMaterial.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f440cd475293044139739aff331224fb -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 13400000 - userData: - assetBundleName: - assetBundleVariant: