浏览代码
[Bouncer Environment] Now in 3D (#408)
[Bouncer Environment] Now in 3D (#408)
* [New Bouncer] Revamped the Bouncer to be in 3D * [Bouncer Configuration file] Added the BouncerBrain configuration * [Documentation] Added the Bouncer tot he documentation page * [Fixes] Fixed lines too long and the documentation typo * Slight adjustments to bouncer environment * Don't default to internal brain on bouncer/develop-generalizationTraining-TrainerController
GitHub
7 年前
当前提交
41d32aca
共有 15 个文件被更改,包括 1384 次插入 和 1902 次删除
-
17docs/Learning-Environment-Examples.md
-
6python/trainer_config.yaml
-
683unity-environment/Assets/ML-Agents/Examples/Bouncer/Bouncer.unity
-
7unity-environment/Assets/ML-Agents/Examples/Bouncer/Scripts/BouncerAcademy.cs
-
88unity-environment/Assets/ML-Agents/Examples/Bouncer/Scripts/BouncerAgent.cs
-
9unity-environment/Assets/ML-Agents/Examples/Bouncer/Scripts/BouncerBanana.cs
-
88docs/images/bouncer.png
-
365unity-environment/Assets/ML-Agents/Examples/Bouncer/Prefabs/Environment.prefab
-
10unity-environment/Assets/ML-Agents/Examples/Bouncer/Prefabs/Environment.prefab.meta
-
476unity-environment/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer.bytes
-
9unity-environment/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer.bytes.meta
-
659unity-environment/Assets/ML-Agents/Examples/Bouncer/Prefabs/Ground.prefab
-
10unity-environment/Assets/ML-Agents/Examples/Bouncer/Prefabs/Ground.prefab.meta
-
850unity-environment/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer_ppo.bytes
-
9unity-environment/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer_ppo.bytes.meta
|
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1001 &100100000 |
|||
Prefab: |
|||
m_ObjectHideFlags: 1 |
|||
serializedVersion: 2 |
|||
m_Modification: |
|||
m_TransformParent: {fileID: 0} |
|||
m_Modifications: [] |
|||
m_RemovedComponents: [] |
|||
m_ParentPrefab: {fileID: 0} |
|||
m_RootGameObject: {fileID: 1397068878990112} |
|||
m_IsPrefabParent: 1 |
|||
--- !u!1 &1177949541621604 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4015457392508828} |
|||
- component: {fileID: 33637668222527050} |
|||
- component: {fileID: 23884762458033986} |
|||
- component: {fileID: 65127406890793516} |
|||
m_Layer: 0 |
|||
m_Name: Ground |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!1 &1397068878990112 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4361737954148748} |
|||
m_Layer: 0 |
|||
m_Name: Environment |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!1 &1443645207696638 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4375311246580522} |
|||
- component: {fileID: 33901337408327470} |
|||
- component: {fileID: 23193444324016616} |
|||
- component: {fileID: 54689989726730810} |
|||
- component: {fileID: 65926472061210326} |
|||
- component: {fileID: 114324000266803040} |
|||
m_Layer: 0 |
|||
m_Name: BANANA |
|||
m_TagString: banana |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!1 &1636414264033908 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
serializedVersion: 5 |
|||
m_Component: |
|||
- component: {fileID: 4934277330601300} |
|||
- component: {fileID: 33642916657174232} |
|||
- component: {fileID: 65952232483064516} |
|||
- component: {fileID: 23040153015144764} |
|||
- component: {fileID: 54736480612104248} |
|||
- component: {fileID: 114113529865546740} |
|||
m_Layer: 0 |
|||
m_Name: Agent |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4015457392508828 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1177949541621604} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 0, z: 0} |
|||
m_LocalScale: {x: 40, y: 1, z: 40} |
|||
m_Children: [] |
|||
m_Father: {fileID: 4361737954148748} |
|||
m_RootOrder: 0 |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!4 &4361737954148748 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1397068878990112} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 0, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_Children: |
|||
- {fileID: 4015457392508828} |
|||
- {fileID: 4934277330601300} |
|||
- {fileID: 4375311246580522} |
|||
m_Father: {fileID: 0} |
|||
m_RootOrder: 0 |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!4 &4375311246580522 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} |
|||
m_LocalPosition: {x: 3, y: 7, z: 3} |
|||
m_LocalScale: {x: 150, y: 150, z: 150} |
|||
m_Children: [] |
|||
m_Father: {fileID: 4361737954148748} |
|||
m_RootOrder: 2 |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} |
|||
--- !u!4 &4934277330601300 |
|||
Transform: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 3, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_Children: [] |
|||
m_Father: {fileID: 4361737954148748} |
|||
m_RootOrder: 1 |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!23 &23040153015144764 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RenderingLayerMask: 4294967295 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: fd56382c5d1a049b6a909c184a4c6d42, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_PreserveUVs: 1 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 0 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
--- !u!23 &23193444324016616 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RenderingLayerMask: 4294967295 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 29857f71905e1484ba5cf296a5749a5f, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 0 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
--- !u!23 &23884762458033986 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1177949541621604} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RenderingLayerMask: 4294967295 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 260483cdfc6b14e26823a02f23bd8baa, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_PreserveUVs: 1 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 0 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
--- !u!33 &33637668222527050 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1177949541621604} |
|||
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!33 &33642916657174232 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!33 &33901337408327470 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
m_Mesh: {fileID: 4300000, guid: 5497a3e7df6c348349d95740032ed132, type: 3} |
|||
--- !u!54 &54689989726730810 |
|||
Rigidbody: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
serializedVersion: 2 |
|||
m_Mass: 5 |
|||
m_Drag: 0.25 |
|||
m_AngularDrag: 0.05 |
|||
m_UseGravity: 0 |
|||
m_IsKinematic: 0 |
|||
m_Interpolate: 0 |
|||
m_Constraints: 112 |
|||
m_CollisionDetection: 0 |
|||
--- !u!54 &54736480612104248 |
|||
Rigidbody: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
serializedVersion: 2 |
|||
m_Mass: 1 |
|||
m_Drag: 0 |
|||
m_AngularDrag: 0.05 |
|||
m_UseGravity: 1 |
|||
m_IsKinematic: 0 |
|||
m_Interpolate: 0 |
|||
m_Constraints: 112 |
|||
m_CollisionDetection: 0 |
|||
--- !u!65 &65127406890793516 |
|||
BoxCollider: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1177949541621604} |
|||
m_Material: {fileID: 0} |
|||
m_IsTrigger: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 2 |
|||
m_Size: {x: 1, y: 1, z: 1} |
|||
m_Center: {x: 0, y: 0, z: 0} |
|||
--- !u!65 &65926472061210326 |
|||
BoxCollider: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
m_Material: {fileID: 0} |
|||
m_IsTrigger: 1 |
|||
m_Enabled: 1 |
|||
serializedVersion: 2 |
|||
m_Size: {x: 0.02, y: 0.02, z: 0.04} |
|||
m_Center: {x: 0.004, y: -0.0000000074447537, z: 0.0004914426} |
|||
--- !u!65 &65952232483064516 |
|||
BoxCollider: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
m_Material: {fileID: 0} |
|||
m_IsTrigger: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 2 |
|||
m_Size: {x: 1, y: 1, z: 1} |
|||
m_Center: {x: 0, y: 0, z: 0} |
|||
--- !u!114 &114113529865546740 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1636414264033908} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0f09741cbce2e44bc88d3e92917eea0e, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
brain: {fileID: 0} |
|||
stepCounter: 0 |
|||
agentParameters: |
|||
agentCameras: [] |
|||
maxStep: 0 |
|||
resetOnDone: 1 |
|||
onDemandDecision: 1 |
|||
numberOfActionsBetweenDecisions: 1 |
|||
banana: {fileID: 1443645207696638} |
|||
strength: 500 |
|||
--- !u!114 &114324000266803040 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 1 |
|||
m_PrefabParentObject: {fileID: 0} |
|||
m_PrefabInternal: {fileID: 100100000} |
|||
m_GameObject: {fileID: 1443645207696638} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: bf223292f05ef4b7da282ea02ef6206a, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|
|||
fileFormatVersion: 2 |
|||
guid: e2c4e1ad4f2224d34bb09d20f26b3207 |
|||
timeCreated: 1520378767 |
|||
licenseType: Free |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 100100000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
|
|||
7 |
|||
global_stepConst* |
|||
dtype0* |
|||
valueB :�� |
|||
R |
|||
global_step/readIdentityglobal_step* |
|||
T0* |
|||
_class |
|||
loc:@global_step |
|||
L |
|||
vector_observationPlaceholder* |
|||
dtype0* |
|||
shape:��������� |
|||
� |
|||
running_meanConst* |
|||
dtype0*] |
|||
valueTBR"H��Y=A
f? BB=�f��}@��I<��q=T�z?��D=�$��6ڊ@��7<iπ=�l�?jN=�� |
|||
��)�@�sX< |
|||
U |
|||
running_mean/readIdentityrunning_mean* |
|||
T0* |
|||
_class |
|||
loc:@running_mean |
|||
� |
|||
running_varianceConst* |
|||
dtype0*] |
|||
valueTBR"Hb��K�K�HUD�K8�TJ��J��VJO��Kx`�H-�K�6iJe�IpkJM��KꛒH�KZ�~J |
|||
�hI3t�J |
|||
a |
|||
running_variance/readIdentityrunning_variance* |
|||
T0*# |
|||
_class |
|||
loc:@running_variance |
|||
: |
|||
subSubvector_observationrunning_mean/read* |
|||
T0 |
|||
6 |
|||
CastCastglobal_step/read* |
|||
|
|||
SrcT0* |
|||
|
|||
DstT0 |
|||
2 |
|||
add/yConst* |
|||
valueB |
|||
* �?* |
|||
dtype0 |
|||
|
|||
addAddCastadd/y* |
|||
T0 |
|||
7 |
|||
truedivRealDivrunning_variance/readadd* |
|||
T0 |
|||
|
|||
SqrtSqrttruediv* |
|||
T0 |
|||
( |
|||
truediv_1RealDivsubSqrt* |
|||
T0 |
|||
G |
|||
normalized_state/Minimum/yConst* |
|||
valueB |
|||
* �@* |
|||
dtype0 |
|||
S |
|||
normalized_state/MinimumMinimum truediv_1normalized_state/Minimum/y* |
|||
T0 |
|||
? |
|||
normalized_state/yConst* |
|||
valueB |
|||
* ��* |
|||
dtype0 |
|||
R |
|||
normalized_stateMaximumnormalized_state/Minimumnormalized_state/y* |
|||
T0 |
|||
� |
|||
dense/kernelConst* |
|||
dtype0*� |
|||
value�B�8"����<���ty>���2�M=f3H�̗@��FN> |
|||
K�>�.{>i�N>D��>[Z���v�=��=��%���Ծ�����݅�6�>6��=TM�=�7O>ӡ3����=�A4>��>��$> |