├── ma-poca ├── mapoca │ ├── mapoca │ │ ├── __init__.py │ │ ├── trainers │ │ │ ├── ghost │ │ │ │ └── __init__.py │ │ │ ├── poca │ │ │ │ └── __init__.py │ │ │ ├── ppo │ │ │ │ └── __init__.py │ │ │ ├── sac │ │ │ │ └── __init__.py │ │ │ ├── torch │ │ │ │ ├── __init__.py │ │ │ │ ├── components │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── bc │ │ │ │ │ │ └── __init__.py │ │ │ │ │ └── reward_providers │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── reward_provider_factory.py │ │ │ │ │ │ └── extrinsic_reward_provider.py │ │ │ │ ├── decoders.py │ │ │ │ └── action_flattener.py │ │ │ ├── model_saver │ │ │ │ └── __init__.py │ │ │ ├── policy │ │ │ │ └── __init__.py │ │ │ ├── optimizer │ │ │ │ ├── __init__.py │ │ │ │ └── optimizer.py │ │ │ ├── trainer │ │ │ │ └── __init__.py │ │ │ ├── __init__.py │ │ │ ├── action_info.py │ │ │ ├── run_experiment.py │ │ │ ├── exception.py │ │ │ ├── directory_utils.py │ │ │ └── behavior_id_utils.py │ │ ├── plugins │ │ │ └── __init__.py │ │ └── torch_utils │ │ │ ├── __init__.py │ │ │ ├── globals.py │ │ │ ├── cpu_utils.py │ │ │ └── torch.py │ └── README.md ├── Environments │ ├── Assets │ │ ├── csc.rsp │ │ ├── ML-Agents │ │ │ ├── Editor │ │ │ │ ├── Tests │ │ │ │ │ ├── SampleExporter.cs.meta │ │ │ │ │ └── StandaloneBuildTest.cs.meta │ │ │ │ ├── Tests.meta │ │ │ │ ├── DisableBurstFromMenu.cs.meta │ │ │ │ └── DisableBurstFromMenu.cs │ │ │ ├── Examples │ │ │ │ ├── SharedAssets │ │ │ │ │ ├── Scripts │ │ │ │ │ │ ├── ModelOverrider.cs.meta │ │ │ │ │ │ ├── ProjectSettingsOverrides.cs.meta │ │ │ │ │ │ ├── Area.cs │ │ │ │ │ │ ├── Monitor.cs.meta │ │ │ │ │ │ ├── GroundContact.cs.meta │ │ │ │ │ │ ├── SensorBase.cs.meta │ │ │ │ │ │ ├── TargetContact.cs.meta │ │ │ │ │ │ ├── CollisionCallbacks.cs.meta │ │ │ │ │ │ ├── DirectionIndicator.cs.meta │ │ │ │ │ │ ├── TargetController.cs.meta │ │ │ │ │ │ ├── AdjustTrainingTimescale.cs.meta │ │ │ │ │ │ ├── JointDriveController.cs.meta │ │ │ │ │ │ ├── Area.cs.meta │ │ │ │ │ │ ├── OrientationCubeController.cs.meta │ │ │ │ │ │ ├── FlyCamera.cs.meta │ │ │ │ │ │ ├── CameraFollow.cs.meta │ │ │ │ │ │ ├── OrientationCubeController.cs │ │ │ │ │ │ ├── CameraFollow.cs │ │ │ │ │ │ ├── TargetContact.cs │ │ │ │ │ │ ├── DirectionIndicator.cs │ │ │ │ │ │ ├── AdjustTrainingTimescale.cs │ │ │ │ │ │ ├── SensorBase.cs │ │ │ │ │ │ └── GroundContact.cs │ │ │ │ │ ├── Meshes │ │ │ │ │ │ ├── symbol_x.fbx │ │ │ │ │ │ ├── AgentCube.fbx │ │ │ │ │ │ ├── symbol_tri.fbx │ │ │ │ │ │ ├── LongPlatform.fbx │ │ │ │ │ │ ├── symbol_circle.fbx │ │ │ │ │ │ ├── symbol_star.fbx │ │ │ │ │ │ └── LongNarrowPlatform.fbx │ │ │ │ │ ├── Materials │ │ │ │ │ │ ├── Textures │ │ │ │ │ │ │ ├── NetAL.tif │ │ │ │ │ │ │ ├── LogoCube.png │ │ │ │ │ │ │ ├── Checkers_CO.tif │ │ │ │ │ │ │ ├── Checkers_NO.png │ │ │ │ │ │ │ ├── UnityLogo.png │ │ │ │ │ │ │ ├── gridTexture.png │ │ │ │ │ │ │ ├── CheckersGray_BC.png │ │ │ │ │ │ │ ├── Checkers_CO.tif.meta │ │ │ │ │ │ │ ├── Checkers_NO.png.meta │ │ │ │ │ │ │ ├── gridTexture.png.meta │ │ │ │ │ │ │ ├── CheckersGray_BC.png.meta │ │ │ │ │ │ │ └── NetAL.tif.meta │ │ │ │ │ │ ├── Textures.meta │ │ │ │ │ │ ├── Black.mat.meta │ │ │ │ │ │ ├── Brown.mat.meta │ │ │ │ │ │ ├── Door.mat.meta │ │ │ │ │ │ ├── Green.mat.meta │ │ │ │ │ │ ├── White.mat.meta │ │ │ │ │ │ ├── Eye.mat.meta │ │ │ │ │ │ ├── Headband.mat.meta │ │ │ │ │ │ ├── LightGreen.mat.meta │ │ │ │ │ │ ├── Net.mat.meta │ │ │ │ │ │ ├── Orange.mat.meta │ │ │ │ │ │ ├── Purple.mat.meta │ │ │ │ │ │ ├── ShaderOutline.shader.meta │ │ │ │ │ │ ├── UIDefault.mat.meta │ │ │ │ │ │ ├── AgentBlue.mat.meta │ │ │ │ │ │ ├── BallMat.mat.meta │ │ │ │ │ │ ├── LightGrey.mat.meta │ │ │ │ │ │ ├── Outline.mat.meta │ │ │ │ │ │ ├── ShaderRadialGrid.shader.meta │ │ │ │ │ │ ├── AgentPurple.mat.meta │ │ │ │ │ │ ├── Checkers_Ball.mat.meta │ │ │ │ │ │ ├── Checkers_Gray.mat.meta │ │ │ │ │ │ ├── GrayMiddle.mat.meta │ │ │ │ │ │ ├── LogoSymbol.mat.meta │ │ │ │ │ │ ├── GridMat.mat.meta │ │ │ │ │ │ ├── GridMatBall.mat.meta │ │ │ │ │ │ ├── GridMatFloor.mat.meta │ │ │ │ │ │ ├── GridMatHallway.mat.meta │ │ │ │ │ │ ├── GridMatMoveable.mat.meta │ │ │ │ │ │ ├── GridPatternShader.shader.meta │ │ │ │ │ │ ├── Red.mat.meta │ │ │ │ │ │ ├── LightRed.mat.meta │ │ │ │ │ │ ├── Yellow.mat.meta │ │ │ │ │ │ ├── ShaderOutline.shader │ │ │ │ │ │ ├── Black.mat │ │ │ │ │ │ ├── Headband.mat │ │ │ │ │ │ ├── Door.mat │ │ │ │ │ │ ├── Red.mat │ │ │ │ │ │ ├── White.mat │ │ │ │ │ │ ├── Yellow.mat │ │ │ │ │ │ ├── Green.mat │ │ │ │ │ │ ├── LightGreen.mat │ │ │ │ │ │ ├── LightRed.mat │ │ │ │ │ │ ├── BallMat.mat │ │ │ │ │ │ ├── ShaderRadialGrid.shader │ │ │ │ │ │ ├── Brown.mat │ │ │ │ │ │ ├── Orange.mat │ │ │ │ │ │ ├── Net.mat │ │ │ │ │ │ ├── Purple.mat │ │ │ │ │ │ ├── Eye.mat │ │ │ │ │ │ ├── LogoSymbol.mat │ │ │ │ │ │ ├── Outline.mat │ │ │ │ │ │ ├── AgentBlue.mat │ │ │ │ │ │ └── AgentPurple.mat │ │ │ │ │ ├── Meshes.meta │ │ │ │ │ ├── Prefabs.meta │ │ │ │ │ ├── Prefabs │ │ │ │ │ │ ├── OrientationCube.prefab.meta │ │ │ │ │ │ ├── DirectionIndicator.prefab.meta │ │ │ │ │ │ ├── DynamicTargetPlatform.prefab.meta │ │ │ │ │ │ ├── PlatformDynamicTarget.prefab.meta │ │ │ │ │ │ ├── Targets │ │ │ │ │ │ │ ├── DynamicTarget.prefab.meta │ │ │ │ │ │ │ └── StaticTarget.prefab.meta │ │ │ │ │ │ ├── Platforms.meta │ │ │ │ │ │ ├── Platforms │ │ │ │ │ │ │ └── LongPlatform.prefab.meta │ │ │ │ │ │ ├── Targets.meta │ │ │ │ │ │ ├── Symbol_O.prefab.meta │ │ │ │ │ │ ├── Symbol_Star.prefab.meta │ │ │ │ │ │ ├── Symbol_X.prefab.meta │ │ │ │ │ │ ├── AgentCube_Blue.prefab.meta │ │ │ │ │ │ ├── AgentCube_Purple.prefab.meta │ │ │ │ │ │ ├── Canvas_Watermark.prefab.meta │ │ │ │ │ │ ├── Symbol_Triangle.prefab.meta │ │ │ │ │ │ ├── AgentCubeBeveled_Blue.prefab.meta │ │ │ │ │ │ ├── Directional_Light.prefab.meta │ │ │ │ │ │ ├── Logo-PlaneMesh-BLACK.prefab.meta │ │ │ │ │ │ ├── Logo-PlaneMesh-GRAY.prefab.meta │ │ │ │ │ │ ├── Logo-PlaneMesh-WHITE.prefab.meta │ │ │ │ │ │ ├── AgentCubeBeveled_Purple.prefab.meta │ │ │ │ │ │ ├── AgentCubeWithCamera_Blue.prefab.meta │ │ │ │ │ │ ├── AgentCubeWithCamera_Purple.prefab.meta │ │ │ │ │ │ └── Directional_Light.prefab │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ └── Materials.meta │ │ │ │ ├── BatonPass │ │ │ │ │ ├── BatonPass.onnx │ │ │ │ │ ├── Prefabs │ │ │ │ │ │ ├── Court.fbx │ │ │ │ │ │ ├── Switch.fbx │ │ │ │ │ │ ├── Agent.prefab.meta │ │ │ │ │ │ ├── Court.prefab.meta │ │ │ │ │ │ ├── Switch.prefab.meta │ │ │ │ │ │ └── Food.prefab.meta │ │ │ │ │ ├── Scenes │ │ │ │ │ │ └── BatonPass.unity.meta │ │ │ │ │ ├── Prefabs.meta │ │ │ │ │ ├── Scenes.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ ├── Scripts │ │ │ │ │ │ ├── ExitDetect.cs.meta │ │ │ │ │ │ ├── BatonPassAgent.cs.meta │ │ │ │ │ │ ├── BatonPassArea.cs.meta │ │ │ │ │ │ ├── BatonPassButton.cs.meta │ │ │ │ │ │ ├── BatonPassFood.cs.meta │ │ │ │ │ │ ├── ExitDetect.cs │ │ │ │ │ │ ├── BatonPassFood.cs │ │ │ │ │ │ └── BatonPassButton.cs │ │ │ │ │ └── BatonPass.onnx.meta │ │ │ │ ├── DungeonEscape │ │ │ │ │ ├── Meshes │ │ │ │ │ │ ├── Cave.fbx │ │ │ │ │ │ └── Door.fbx │ │ │ │ │ ├── TFModels │ │ │ │ │ │ ├── POCAHard.onnx │ │ │ │ │ │ ├── DungeonEscape.onnx │ │ │ │ │ │ ├── POCAHard.onnx.meta │ │ │ │ │ │ └── DungeonEscape.onnx.meta │ │ │ │ │ ├── Prefabs │ │ │ │ │ │ ├── Sword.prefab.meta │ │ │ │ │ │ ├── Column.prefab.meta │ │ │ │ │ │ ├── DungeonEscapeAgent.prefab.meta │ │ │ │ │ │ ├── DungeonEscapeHardAgent.prefab.meta │ │ │ │ │ │ ├── DungeonEscapeHardPlatform.prefab.meta │ │ │ │ │ │ └── DungeonEscapePlatform.prefab.meta │ │ │ │ │ ├── Meshes.meta │ │ │ │ │ ├── Prefabs.meta │ │ │ │ │ ├── Scenes.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ ├── TFModels.meta │ │ │ │ │ ├── Scenes │ │ │ │ │ │ ├── DungeonEscapeHard.unity.meta │ │ │ │ │ │ └── DungeonEscape.unity.meta │ │ │ │ │ └── Scripts │ │ │ │ │ │ ├── SimpleNPC.cs.meta │ │ │ │ │ │ ├── DungeonEscapeEnvController.cs.meta │ │ │ │ │ │ ├── PushAgentEscape.cs.meta │ │ │ │ │ │ └── SimpleNPC.cs │ │ │ │ ├── PushBlock │ │ │ │ │ ├── TFModels │ │ │ │ │ │ ├── PushBlock.nn │ │ │ │ │ │ ├── PushBlockCollab.onnx │ │ │ │ │ │ ├── PushBlockCollabRays.onnx │ │ │ │ │ │ ├── PushBlock.nn.meta │ │ │ │ │ │ ├── PushBlockCollab.onnx.meta │ │ │ │ │ │ └── PushBlockCollabRays.onnx.meta │ │ │ │ │ ├── Demos │ │ │ │ │ │ ├── ExpertPushBlock.demo │ │ │ │ │ │ └── ExpertPushBlock.demo.meta │ │ │ │ │ ├── Meshes │ │ │ │ │ │ └── PushBlockCourt.fbx │ │ │ │ │ ├── Demos.meta │ │ │ │ │ ├── Meshes.meta │ │ │ │ │ ├── TFModels.meta │ │ │ │ │ ├── Prefabs │ │ │ │ │ │ ├── PushBlockAgentGridCollab.prefab.meta │ │ │ │ │ │ ├── PushBlockAgentRayCollab.prefab.meta │ │ │ │ │ │ ├── PushBlockCollabAreaGrid.prefab.meta │ │ │ │ │ │ ├── PushBlockCollabAreaRay.prefab.meta │ │ │ │ │ │ └── PushBlockArea.prefab.meta │ │ │ │ │ ├── Scenes.meta │ │ │ │ │ ├── Scenes │ │ │ │ │ │ └── PushBlockCollab.unity.meta │ │ │ │ │ ├── Prefabs.meta │ │ │ │ │ ├── Scripts.meta │ │ │ │ │ └── Scripts │ │ │ │ │ │ ├── GoalDetectTrigger.cs.meta │ │ │ │ │ │ ├── PushBlockSettings.cs.meta │ │ │ │ │ │ ├── PushBlockEnvController.cs.meta │ │ │ │ │ │ ├── PushAgentBasic.cs.meta │ │ │ │ │ │ ├── PushAgentCollab.cs.meta │ │ │ │ │ │ ├── GoalDetect.cs.meta │ │ │ │ │ │ ├── GoalDetect.cs │ │ │ │ │ │ ├── PushBlockSettings.cs │ │ │ │ │ │ └── GoalDetectTrigger.cs │ │ │ │ ├── BatonPass.meta │ │ │ │ ├── SharedAssets.meta │ │ │ │ ├── DungeonEscape.meta │ │ │ │ └── PushBlock.meta │ │ │ ├── Editor.meta │ │ │ └── Examples.meta │ │ ├── csc.rsp.meta │ │ └── ML-Agents.meta │ ├── ProjectSettings │ │ ├── ProjectVersion.txt │ │ ├── ClusterInputManager.asset │ │ ├── PresetManager.asset │ │ ├── EditorBuildSettings.asset │ │ ├── XRSettings.asset │ │ ├── TimeManager.asset │ │ ├── VFXManager.asset │ │ ├── AudioManager.asset │ │ ├── UnityConnectSettings.asset │ │ ├── TagManager.asset │ │ ├── PackageManagerSettings.asset │ │ ├── EditorSettings.asset │ │ ├── DynamicsManager.asset │ │ ├── NavMeshAreas.asset │ │ └── Physics2DSettings.asset │ ├── Project.sln.DotSettings │ ├── Packages │ │ └── manifest.json │ └── .gitignore ├── images │ └── all_vary.png ├── config │ ├── ppo │ │ ├── DungeonEscape.yaml │ │ ├── PushBlockCollab.yaml │ │ ├── BatonPass.yaml │ │ └── ParticlesEnv.yaml │ ├── poca │ │ ├── PushBlockCollab.yaml │ │ ├── DungeonEscape.yaml │ │ ├── BatonPass.yaml │ │ └── ParticlesEnv.yaml │ └── coma │ │ ├── PushBlockCollab.yaml │ │ ├── DungeonEscape.yaml │ │ ├── BatonPass.yaml │ │ └── ParticlesEnv.yaml └── README.md ├── README.md ├── catalog-info.yaml ├── CONTRIBUTING.md └── .gitignore /ma-poca/mapoca/mapoca/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/ghost/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/poca/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/ppo/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/sac/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/model_saver/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/components/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/components/bc/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/csc.rsp: -------------------------------------------------------------------------------- 1 | -warnaserror+ 2 | -warnaserror-:618 -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/plugins/__init__.py: -------------------------------------------------------------------------------- 1 | ML_AGENTS_STATS_WRITER = "mapoca.stats_writer" 2 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/policy/__init__.py: -------------------------------------------------------------------------------- 1 | from mapoca.trainers.policy.policy import Policy # noqa 2 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/optimizer/__init__.py: -------------------------------------------------------------------------------- 1 | from mapoca.trainers.optimizer.optimizer import Optimizer # noqa 2 | -------------------------------------------------------------------------------- /ma-poca/images/all_vary.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/images/all_vary.png -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.4.21f1 2 | m_EditorVersionWithRevision: 2019.4.21f1 (b76dac84db26) 3 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor/Tests/SampleExporter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 914d5be190bb435eb11383db3aaf70eb 3 | timeCreated: 1615161245 -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/ModelOverrider.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a6da8f78a394c6ab027688eab81e04d 3 | timeCreated: 1579651041 -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/ProjectSettingsOverrides.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec51f47c5ed0478080c449c74fd9c154 3 | timeCreated: 1578511069 -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/trainer/__init__.py: -------------------------------------------------------------------------------- 1 | from mapoca.trainers.trainer.trainer import Trainer # noqa 2 | from mapoca.trainers.trainer.trainer_factory import TrainerFactory # noqa 3 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: [] 7 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/BatonPass.onnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/BatonPass.onnx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Court.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Court.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Switch.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Switch.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Meshes/Cave.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Meshes/Cave.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Meshes/Door.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Meshes/Door.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlock.nn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlock.nn -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_x.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_x.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/csc.rsp.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c919ab2efb86f4001a0176ec5a1a3329 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/AgentCube.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/AgentCube.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_tri.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_tri.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/POCAHard.onnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/POCAHard.onnx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Demos/ExpertPushBlock.demo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Demos/ExpertPushBlock.demo -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Meshes/PushBlockCourt.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Meshes/PushBlockCourt.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/LongPlatform.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/LongPlatform.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_circle.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_circle.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_star.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/symbol_star.fbx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollab.onnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollab.onnx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/DungeonEscape.onnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/DungeonEscape.onnx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/NetAL.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/NetAL.tif -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/LongNarrowPlatform.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes/LongNarrowPlatform.fbx -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/__init__.py: -------------------------------------------------------------------------------- 1 | # Version of the library that will be used to upload to pypi 2 | __version__ = "0.1" 3 | 4 | # Git tag that will be checked to determine whether to trigger upload to pypi 5 | __release_tag__ = None 6 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0464d237504614b8fb9b2d96c707cac2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollabRays.onnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollabRays.onnx -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/LogoCube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/LogoCube.png -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6584f096f53dc43eeb32803b91f36c5c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_CO.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_CO.tif -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_NO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_NO.png -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/UnityLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/UnityLogo.png -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/gridTexture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/gridTexture.png -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c324397e98ed45d28d29fd1056c6df0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd559c482422c45a9b508f44419a5179 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Agent.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6530f00a066554555b52695c5d6a75f4 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Court.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afae07d0c869146b08980a507d6a7280 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Switch.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5fbb3aa3ba3d14bf09eefb61402d60ae 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scenes/BatonPass.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 05725e50445ae482993162d694cc11be 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/Sword.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e7a35edaf71a428eb9473e1e0dd60d8 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f83c851cdce246a0b97472ec6d35622 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/CheckersGray_BC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Unity-Technologies/paper-ml-agents/HEAD/ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/CheckersGray_BC.png -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e1ee888893c974167a479549c555f50f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 605e585bbf957495a9d70f5740cff781 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0f354eb3dc584d6ea012490b2860dfb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ee1af8bad0b14bfcb4eb70491929ffa 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/Column.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69a64861a32794a5db3bcea0cae3bef2 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Demos.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1329fcb394f243928b532bf0b53a342 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Meshes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e806d68316eff0e46a3fda372ae42c44 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Meshes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52cc95bb0ae204a03b020b5e25025f92 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 182a0bae21aa344beaf59b06aa99949e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 18bd62bca21784541a3ef42aff1e4950 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1aeac7dad8bb42fb92cfa7dc7bc3d3f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28cc4e23163ed4144be9a5100f66585b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5855121f0ded74dad8e1dd15a8bcdca1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Meshes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1eb7d6f36c88fbc48ac541afedc1ccc0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a5b8af9e6b4248a185db6a60bd8f319 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/OrientationCube.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 72f745913c5a34df5aaadd5c1f0024cb 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 11630fa83cc8b4194b94352e3e6cdb9d 3 | folderAsset: yes 4 | timeCreated: 1504127524 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/DungeonEscapeAgent.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f3c5280e4ae094a9a9b8b6702630c941 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scenes/DungeonEscapeHard.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0925aa438b2de44888e2602a1522462d 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockAgentGridCollab.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac01d0f42c5e1463e943632a60d99967 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockAgentRayCollab.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f668b6b5cc52457c94c30c5f21f724c 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockCollabAreaGrid.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f5bbed44a6ea747a687fbbb738eb1730 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockCollabAreaRay.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 112869623e17b4f95b17420c511c7555 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DirectionIndicator.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e568400ebedb3474fac505995f12ed4a 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d6fc96a99a9754f07b48abf1e0d55a5c 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/PlatformDynamicTarget.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0d7741d9e06247f6843b921a206b978 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Targets/DynamicTarget.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46734abd0de454192b407379c6a4ab8d 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Targets/StaticTarget.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2173d15c0b5fc49e5870c9d1c7f7ee8e 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/DungeonEscapeHardAgent.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d3e5d382fe464a67b0427aae345a95a 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/DungeonEscapeHardPlatform.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 206cdf965d8f141518abfdf93339ad50 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Prefabs/DungeonEscapePlatform.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5878a6d7527854d0a84b133c7c6efe55 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: deb4e063d69e95e49b8e069be7c5c886 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Platforms.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7242efdea21e94af2990b19ee4524b17 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Platforms/LongPlatform.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 790f969f5c774490abce721fdd2fa4b4 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Targets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88818c9b63c96424aa8e0fca85552133 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/torch_utils/__init__.py: -------------------------------------------------------------------------------- 1 | from mapoca.torch_utils.torch import torch as torch # noqa 2 | from mapoca.torch_utils.torch import nn # noqa 3 | from mapoca.torch_utils.torch import set_torch_config # noqa 4 | from mapoca.torch_utils.torch import default_device # noqa 5 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Black.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69fefdd39d2b34b169e921910bed9c0d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Brown.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16fb7514bd09f43f8ae773b97bf3819d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Door.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: daf629e39cc0f4521b64c93cd9604da9 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Green.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c67450f290f3e4897bc40276a619e78d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/White.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eaad04b0e0dec42229c9cb00a981d7ac 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/Area.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | public class Area : MonoBehaviour 6 | { 7 | public virtual void ResetArea() 8 | { 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Prefabs/Food.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5962ea080c59a45dd8ca48f02fb00864 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Eye.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f731be6866ce749fd8349e67ae81f76a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Headband.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04be259c590de46f69db4cbd1da877d5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LightGreen.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df32cc593804f42df97464dc455057b8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Net.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: daad6e777b6e99a46bbcded7cf6816ee 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Orange.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c59bd36def9a4684be49a21cf201a2d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Purple.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ff14134b548ad4790809bd7ffdffbf32 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/ShaderOutline.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5dfe02aa25125453eaaaa295936dc8cd 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/UIDefault.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 463606e709fd24f29ac1096d0aade647 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/AgentBlue.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c9fa44c2c3f8ce74ca39a3355ea42631 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/BallMat.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bbb71e91b4d8a44999b1f690a488dc5a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LightGrey.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6fdf8e49597ff42648c9e99d7ecfc005 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Outline.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed61fc8f39c7640afacb9c268a73983c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/ShaderRadialGrid.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e0c93c373dca4f798a00646683badb2 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/AgentPurple.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0da1813c36914e678ba57f2790424e1 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Checkers_Ball.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf2a3769e6d5446698f2e3f5aab68915 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Checkers_Gray.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36c7baa347d68f347a9aa9698aa1bcdd 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GrayMiddle.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66163cf35956a4be08e801b750c26f33 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LogoSymbol.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3825ef6e3f8624bc5934d59be09c0c92 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Symbol_O.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0ce898e8d61d44a2b141509e1e6969d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Symbol_Star.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9f9ac03f750149ed8ae35949376dbf5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Symbol_X.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 58a7c245130274d559eccf656e2fbc44 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCube_Blue.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70d695e1d8399400bb0f2873bdf29bb0 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCube_Purple.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f203a22ac5f5e484386222536623c6ab 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Canvas_Watermark.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ce107b4a79bc4eef83afde434932a68 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Symbol_Triangle.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 58c36a1fc2609452c92aaa5a0b56b8c4 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCubeBeveled_Blue.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed50871dc03034e4bb0fc839e3c5e383 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Directional_Light.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5889392e3f05b448a8a06c5def6c2dec 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Logo-PlaneMesh-BLACK.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a475958cc9466411db1430dcd47163d2 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Logo-PlaneMesh-GRAY.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c8b8cb388800475291391089d1a2351 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Logo-PlaneMesh-WHITE.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b6ea6f04dd0647a1bde5bea97c8cd35 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4197ece8ca6d74a00adc6bafbabda158 3 | folderAsset: yes 4 | timeCreated: 1506303336 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCubeBeveled_Purple.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a4068050c927b4ec0b4b561f123190cc 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCubeWithCamera_Blue.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a60300fb512c946049325c74b6bf6089 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/AgentCubeWithCamera_Purple.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b3f44c5319ba14b88a7cc096cfd91979 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9da26ec059778432080bf5fa24374960 3 | folderAsset: yes 4 | timeCreated: 1516234013 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scenes/PushBlockCollab.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9c81cbb0f0ac40649eddfef0971e81b 3 | timeCreated: 1506808980 4 | licenseType: Pro 5 | DefaultImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scenes/DungeonEscape.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d00d2995d83c94f5da81bb19644a00ac 3 | timeCreated: 1506808980 4 | licenseType: Pro 5 | DefaultImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d2b9d5547d934200a786212743850c4 3 | folderAsset: yes 4 | timeCreated: 1514922259 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca44e3d53154a4ff0a1279be30b23bdf 3 | folderAsset: yes 4 | timeCreated: 1514922284 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMat.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc7340babc47c45c987fee58e013ed3f 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | NativeFormatImporter: 6 | mainObjectFileID: 0 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4636aef99947747db8e1ed87884ed35b 3 | folderAsset: yes 4 | timeCreated: 1518416203 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b6abdaf6376c42e5acce313e3a7ed94 3 | folderAsset: yes 4 | timeCreated: 1517449349 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatBall.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e687a6242afc4a7e993fec6042518a9 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | NativeFormatImporter: 6 | mainObjectFileID: 0 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatFloor.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: acba6bf2a290a496bb8989b42bf8698d 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | NativeFormatImporter: 6 | mainObjectFileID: 0 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatHallway.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3855c73a8adc453f89d8df66068f21f 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | NativeFormatImporter: 6 | mainObjectFileID: 0 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatMoveable.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b26f66bd59d534f92a03ca870ae19724 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | NativeFormatImporter: 6 | mainObjectFileID: 0 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/GridPatternShader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bbecf177c38d84ff08d7c683c116affd 3 | timeCreated: 1527928195 4 | licenseType: Store 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Red.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88b9ae7af2c1748a0a1f63407587a601 3 | timeCreated: 1513128297 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 0 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LightRed.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1daf31cdf41e484ca9ac33a5c6f524a 3 | timeCreated: 1513128297 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 0 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Yellow.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52eab8ab5010f438fab93da85735ba1d 3 | timeCreated: 1513128297 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 0 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 17c1cb2556fa64702acde6d37c5f21d2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Prefabs/PushBlockArea.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03bcc81e249714a22bb411dddcc5d15e 3 | timeCreated: 1515023875 4 | licenseType: Free 5 | NativeFormatImporter: 6 | externalObjects: {} 7 | mainObjectFileID: 100100000 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor/Tests/StandaloneBuildTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0c87e095448c49e9812863bb5d1f4e1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/ExitDetect.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f95419eadaba5449a9a718778a8b5587 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/Monitor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eca114d0a5b45439384024291ba7d40a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_RenderPipeSettingsPath: 10 | m_FixedTimeStep: 0.016666668 11 | m_MaxDeltaTime: 0.05 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassAgent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b40fc6135a7db4330a5d1f5447cc8ac6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassArea.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4446291dce83433d8032abfd89f9832 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassButton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c455af59e9f274a46ab05b31c7e9f97b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassFood.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3be85869cef4f4499a6952afe59e59c1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scripts/SimpleNPC.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9685bac759362440ea71765cdece3305 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/GroundContact.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2666e257ea992476cae0f7f163165e71 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf19888920fa24df7ad75a52ede51cf3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetContact.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5086c435d3e8b44ffa8262a5c124661f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/GoalDetectTrigger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9dcea692df32b46b4a884cfcc150aef7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/PushBlockSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e5ed63dbfa25542ecb8bc013adfba183 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/CollisionCallbacks.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df05ec10e50114a9d92106879d04d89d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1513f8a85fedd47efba089213b7c5bde 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c8f113a8b8d94967b1b1782c549be81 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/PushBlockEnvController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4bb2bb36bb51d452ab58d30a868dfab3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d6f3eab3776b4fb79724ac4216dfd7b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/JointDriveController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1b29724baddfa457da6eeab446fa49ca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scripts/DungeonEscapeEnvController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f0d060d8c3074edf80fc69e847d4c60 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/Area.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b46b66a9b32b24fab9d7ffcca24f1f43 3 | timeCreated: 1506809357 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 771e78c5e980e440e8cd19716b55075f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/FlyCamera.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83d7b886385fb48b999bc3fbc41bc181 3 | timeCreated: 1508627099 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentBasic.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dea8c4f2604b947e6b7b97750dde87ca 3 | timeCreated: 1506829537 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/PushAgentCollab.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d94a85eca2e074578943301959c555ba 3 | timeCreated: 1506829537 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/CameraFollow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec40c70d5160b47cd8deaab79e24892c 3 | timeCreated: 1508523647 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # papers-ml-agents 2 | This repository is meant to offer a way to reproduce the experiments of some of the papers Unity published using ML-Agents. 3 | 4 | ## MA-POCA 5 | **Multi-Agent POsthumous Credit Assignment** (MA-POCA) is a multi-agent learning algorithm that can gracefully deal with spawning and despawning agents without the use of absorbing states. 6 | See [here](ma-poca) for more information. -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scripts/PushAgentEscape.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78c960fbbc7844c269d4d14ae68abfc8 3 | timeCreated: 1506829537 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/torch_utils/globals.py: -------------------------------------------------------------------------------- 1 | from typing import Optional 2 | 3 | _rank: Optional[int] = None 4 | 5 | 6 | def get_rank() -> Optional[int]: 7 | """ 8 | Returns the rank (in the MPI sense) of the current node. 9 | For local training, this will always be None. 10 | If this needs to be used, it should be done from outside ml-agents. 11 | :return: 12 | """ 13 | return _rank 14 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/GoalDetect.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d079d09ceed84ff49cf6841c66cf7ec 3 | timeCreated: 1513645763 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlock.nn.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70db47ab276e44fe0beb677ff8d69382 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: main obj 6 | 11400002: model data 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3} 12 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/BatonPass.onnx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26b3c8d89edb943dc83947b835d30d61 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 11500000, guid: 683b6cb6d0a474744822c888b46772c9, type: 3} 11 | optimizeModel: 1 12 | forceArbitraryBatchSize: 1 13 | treatErrorsAsWarnings: 0 14 | importMode: 1 15 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/POCAHard.onnx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48aa5ba217ee74febbd1c4e16899d8c5 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 11500000, guid: 683b6cb6d0a474744822c888b46772c9, type: 3} 11 | optimizeModel: 1 12 | forceArbitraryBatchSize: 1 13 | treatErrorsAsWarnings: 0 14 | importMode: 1 15 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollab.onnx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3aafa29d87154882bcb52488c6446ec 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 11500000, guid: 683b6cb6d0a474744822c888b46772c9, type: 3} 11 | optimizeModel: 1 12 | forceArbitraryBatchSize: 1 13 | treatErrorsAsWarnings: 0 14 | importMode: 1 15 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlockCollabRays.onnx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d1a61c6bc1d64fcdbce8fe250c9861f 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 11500000, guid: 683b6cb6d0a474744822c888b46772c9, type: 3} 11 | optimizeModel: 1 12 | forceArbitraryBatchSize: 1 13 | treatErrorsAsWarnings: 0 14 | importMode: 1 15 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/TFModels/DungeonEscape.onnx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b56a13a0e996e4f719001b218cb87d5a 3 | ScriptedImporter: 4 | fileIDToRecycleName: 5 | 11400000: main obj 6 | 11400002: model data 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | script: {fileID: 11500000, guid: 683b6cb6d0a474744822c888b46772c9, type: 3} 12 | optimizeModel: 1 13 | forceArbitraryBatchSize: 1 14 | treatErrorsAsWarnings: 0 15 | -------------------------------------------------------------------------------- /ma-poca/Environments/Project.sln.DotSettings: -------------------------------------------------------------------------------- 1 | 2 | ML 3 | True -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 0 20 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Demos/ExpertPushBlock.demo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f11f35191533404c9957443a681aaee 3 | ScriptedImporter: 4 | internalIDToNameTable: 5 | - first: 6 | 114: 11400002 7 | second: Assets/ML-Agents/Examples/PushBlock/Demos/ExpertPushBlock.demo 8 | externalObjects: {} 9 | serializedVersion: 2 10 | userData: ' (Unity.MLAgents.Demonstrations.DemonstrationSummary)' 11 | assetBundleName: 12 | assetBundleVariant: 13 | script: {fileID: 11500000, guid: 7bd65ce151aaa4a41a45312543c56be1, type: 3} 14 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/ExitDetect.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Unity.MLAgents; 5 | 6 | public class ExitDetect : MonoBehaviour 7 | { 8 | public BatonPassArea Area; 9 | public float RewardAtExit; 10 | 11 | void OnCollisionEnter(Collision other) 12 | { 13 | if (other.gameObject.CompareTag("agent")) 14 | { 15 | Area.AddReward(Academy.Instance.EnvironmentParameters.GetWithDefault("exit_reward", RewardAtExit)); 16 | other.gameObject.GetComponent().Kill(); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /catalog-info.yaml: -------------------------------------------------------------------------------- 1 | # For more information about the available options please visit: http://go/backstage (VPN required) 2 | apiVersion: backstage.io/v1alpha1 3 | kind: Component 4 | metadata: 5 | annotations: 6 | github.com/project-slug: Unity-Technologies/paper-ml-agents 7 | name: paper-ma-poca 8 | description: A repository to reproduce the experiments of papers published with ml-agents 9 | labels: 10 | costcenter: "5160" 11 | tags: 12 | - planned-public 13 | links: 14 | - url: https://unity.slack.com/messages/C02BRPA0LC9/ 15 | title: "#devs-ai-amlr" 16 | icon: chat 17 | spec: 18 | type: other 19 | lifecycle: production 20 | owner: unity-technologies/machine-learning 21 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassFood.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class BatonPassFood : MonoBehaviour 6 | { 7 | 8 | public BatonPassArea Area; 9 | 10 | void OnTriggerEnter(Collider other) 11 | { 12 | if (other.gameObject.CompareTag("agent")) 13 | { 14 | var agent = other.gameObject.GetComponent(); 15 | if (agent.CanEat) 16 | { 17 | this.gameObject.SetActive(false); 18 | Area.FoodEaten(); 19 | agent.CanEat = false; 20 | } 21 | 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /ma-poca/config/ppo/DungeonEscape.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | DungeonEscape: 3 | trainer_type: ppo 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 20000000 24 | time_horizon: 10000000 25 | summary_freq: 60000 26 | env_settings: 27 | seed: 1 28 | num_envs: 1 -------------------------------------------------------------------------------- /ma-poca/config/poca/PushBlockCollab.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | PushBlockCollab: 3 | trainer_type: poca 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 15000000 24 | time_horizon: 10000000 25 | summary_freq: 60000 26 | env_settings: 27 | num_envs: 1 28 | seed: 5 -------------------------------------------------------------------------------- /ma-poca/config/ppo/PushBlockCollab.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | PushBlockCollab: 3 | trainer_type: ppo 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 15000000 24 | time_horizon: 10000000 25 | summary_freq: 60000 26 | env_settings: 27 | num_envs: 1 28 | seed: 5 -------------------------------------------------------------------------------- /ma-poca/config/poca/DungeonEscape.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | DungeonEscape: 3 | trainer_type: poca 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 20000000 24 | time_horizon: 10000000 25 | summary_freq: 60000 26 | env_settings: 27 | seed: 1 28 | num_envs: 1 29 | -------------------------------------------------------------------------------- /ma-poca/config/coma/PushBlockCollab.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | PushBlockCollab: 3 | trainer_type: coma 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | max_num_agents: 3 14 | network_settings: 15 | normalize: false 16 | hidden_units: 256 17 | num_layers: 2 18 | vis_encode_type: simple 19 | reward_signals: 20 | extrinsic: 21 | gamma: 0.99 22 | strength: 1.0 23 | keep_checkpoints: 5 24 | max_steps: 15000000 25 | time_horizon: 10000000 26 | summary_freq: 60000 27 | env_settings: 28 | num_envs: 1 29 | seed: 5 -------------------------------------------------------------------------------- /ma-poca/config/coma/DungeonEscape.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | DungeonEscape: 3 | trainer_type: coma 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | max_num_agents: 5 14 | network_settings: 15 | normalize: false 16 | hidden_units: 256 17 | num_layers: 2 18 | vis_encode_type: simple 19 | reward_signals: 20 | extrinsic: 21 | gamma: 0.99 22 | strength: 1.0 23 | keep_checkpoints: 5 24 | max_steps: 20000000 25 | time_horizon: 10000000 26 | summary_freq: 60000 27 | env_settings: 28 | seed: 1 29 | num_envs: 1 30 | environment_parameters: 31 | absorbing_state: 1.0 32 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_CLOUD_BUILD 2 | using UnityEditor; 3 | 4 | public class DisableBurstFromMenu 5 | { 6 | /// This method is needed to disable Burst compilation on windows for our cloudbuild tests. 7 | /// Barracuda 0.4.0-preview depends on a version of Burst (1.1.1) which does not allow 8 | /// users to disable burst compilation on a per platform basis. The burst version 1.3.0-preview-1 9 | /// allows for cross compilation, but is not released yet. 10 | /// 11 | /// We will be able to remove this when 12 | /// 1. Barracuda updates burst 1.3.0-preview-1 or 13 | /// 2. We update our edior version for our tests to 2019.1+ 14 | public static void DisableBurstCompilation() 15 | { 16 | EditorApplication.ExecuteMenuItem("Jobs/Burst/Enable Compilation"); 17 | } 18 | } 19 | #endif 20 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/GoalDetect.cs: -------------------------------------------------------------------------------- 1 | //Detect when the orange block has touched the goal. 2 | //Detect when the orange block has touched an obstacle. 3 | //Put this script onto the orange block. There's nothing you need to set in the editor. 4 | //Make sure the goal is tagged with "goal" in the editor. 5 | 6 | using UnityEngine; 7 | 8 | public class GoalDetect : MonoBehaviour 9 | { 10 | /// 11 | /// The associated agent. 12 | /// This will be set by the agent script on Initialization. 13 | /// Don't need to manually set. 14 | /// 15 | [HideInInspector] 16 | public PushAgentBasic agent; // 17 | 18 | void OnCollisionEnter(Collision col) 19 | { 20 | // Touched goal. 21 | if (col.gameObject.CompareTag("goal")) 22 | { 23 | agent.ScoredAGoal(); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/components/reward_providers/__init__.py: -------------------------------------------------------------------------------- 1 | from mapoca.trainers.torch.components.reward_providers.base_reward_provider import ( # noqa F401 2 | BaseRewardProvider, 3 | ) 4 | from mapoca.trainers.torch.components.reward_providers.extrinsic_reward_provider import ( # noqa F401 5 | ExtrinsicRewardProvider, 6 | ) 7 | from mapoca.trainers.torch.components.reward_providers.curiosity_reward_provider import ( # noqa F401 8 | CuriosityRewardProvider, 9 | ) 10 | from mapoca.trainers.torch.components.reward_providers.gail_reward_provider import ( # noqa F401 11 | GAILRewardProvider, 12 | ) 13 | from mapoca.trainers.torch.components.reward_providers.rnd_reward_provider import ( # noqa F401 14 | RNDRewardProvider, 15 | ) 16 | from mapoca.trainers.torch.components.reward_providers.reward_provider_factory import ( # noqa F401 17 | create_reward_provider, 18 | ) 19 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/decoders.py: -------------------------------------------------------------------------------- 1 | from typing import List, Dict 2 | 3 | from mapoca.torch_utils import torch, nn 4 | from mapoca.trainers.torch.layers import linear_layer 5 | 6 | 7 | class ValueHeads(nn.Module): 8 | def __init__(self, stream_names: List[str], input_size: int, output_size: int = 1): 9 | super().__init__() 10 | self.stream_names = stream_names 11 | _value_heads = {} 12 | 13 | for name in stream_names: 14 | value = linear_layer(input_size, output_size) 15 | _value_heads[name] = value 16 | self.value_heads = nn.ModuleDict(_value_heads) 17 | 18 | def forward(self, hidden: torch.Tensor) -> Dict[str, torch.Tensor]: 19 | value_outputs = {} 20 | for stream_name, head in self.value_heads.items(): 21 | value_outputs[stream_name] = head(hidden).squeeze(-1) 22 | return value_outputs 23 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/optimizer/optimizer.py: -------------------------------------------------------------------------------- 1 | import abc 2 | from typing import Dict 3 | 4 | from mapoca.trainers.buffer import AgentBuffer 5 | 6 | 7 | class Optimizer(abc.ABC): 8 | """ 9 | Creates loss functions and auxillary networks (e.g. Q or Value) needed for training. 10 | Provides methods to update the Policy. 11 | """ 12 | 13 | def __init__(self): 14 | self.reward_signals = {} 15 | 16 | @abc.abstractmethod 17 | def update(self, batch: AgentBuffer, num_sequences: int) -> Dict[str, float]: 18 | """ 19 | Update the Policy based on the batch that was passed in. 20 | :param batch: AgentBuffer that contains the minibatch of data used for this update. 21 | :param num_sequences: Number of recurrent sequences found in the minibatch. 22 | :return: A Dict containing statistics (name, value) from the update (e.g. loss) 23 | """ 24 | pass 25 | -------------------------------------------------------------------------------- /ma-poca/config/poca/BatonPass.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | BatonPass: 3 | trainer_type: poca 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 15000000 24 | time_horizon: 640000 25 | summary_freq: 200000 26 | checkpoint_interval: 50000000 27 | env_settings: 28 | seed: 1 29 | num_envs: 1 30 | environment_parameters: 31 | max_food: 20 32 | penalty: 2.5 33 | exit_reward: 0 34 | time_penalty: 0 35 | collision_penalty: 0.001 36 | # area_steps: 30000 -------------------------------------------------------------------------------- /ma-poca/config/ppo/BatonPass.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | BatonPass: 3 | trainer_type: ppo 4 | hyperparameters: 5 | batch_size: 1024 6 | buffer_size: 10240 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 256 16 | num_layers: 2 17 | vis_encode_type: simple 18 | reward_signals: 19 | extrinsic: 20 | gamma: 0.99 21 | strength: 1.0 22 | keep_checkpoints: 5 23 | max_steps: 15000000 24 | time_horizon: 640000 25 | summary_freq: 200000 26 | checkpoint_interval: 50000000 27 | env_settings: 28 | # seed: 1 29 | num_envs: 1 30 | environment_parameters: 31 | max_food: 20 32 | penalty: 2.5 33 | exit_reward: 0 34 | time_penalty: 0 35 | collision_penalty: 0.001 36 | # area_steps: 30000 -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/action_info.py: -------------------------------------------------------------------------------- 1 | from typing import NamedTuple, Any, Dict, List 2 | import numpy as np 3 | from mlagents_envs.base_env import AgentId 4 | 5 | ActionInfoOutputs = Dict[str, np.ndarray] 6 | 7 | 8 | class ActionInfo(NamedTuple): 9 | """ 10 | A NamedTuple containing actions and related quantities to the policy forward 11 | pass. Additionally contains the agent ids in the corresponding DecisionStep 12 | :param action: The action output of the policy 13 | :param env_action: The possibly clipped action to be executed in the environment 14 | :param outputs: Dict of all quantities associated with the policy forward pass 15 | :param agent_ids: List of int agent ids in DecisionStep 16 | """ 17 | 18 | action: Any 19 | env_action: Any 20 | outputs: ActionInfoOutputs 21 | agent_ids: List[AgentId] 22 | 23 | @staticmethod 24 | def empty() -> "ActionInfo": 25 | return ActionInfo([], [], {}, []) 26 | -------------------------------------------------------------------------------- /ma-poca/Environments/Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.ide.rider": "3.0.5", 4 | "com.unity.inputsystem": "1.1.0-preview.3", 5 | "com.unity.ml-agents": "2.1.0-exp.1", 6 | "com.unity.ml-agents.extensions": "git+https://github.com/Unity-Technologies/ml-agents.git?path=com.unity.ml-agents.extensions#release_18", 7 | "com.unity.nuget.newtonsoft-json": "2.0.0", 8 | "com.unity.test-framework": "1.1.24", 9 | "com.unity.toolchain.macos-x86_64-linux-x86_64": "0.1.20-preview", 10 | "com.unity.ugui": "1.0.0", 11 | "com.unity.modules.imageconversion": "1.0.0", 12 | "com.unity.modules.jsonserialize": "1.0.0", 13 | "com.unity.modules.physics": "1.0.0", 14 | "com.unity.modules.physics2d": "1.0.0", 15 | "com.unity.modules.uielements": "1.0.0", 16 | "com.unity.modules.unityanalytics": "1.0.0" 17 | }, 18 | "testables": [ 19 | "com.unity.ml-agents", 20 | "com.unity.ml-agents.extensions", 21 | "com.unity.inputsystem" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Guidelines 2 | 3 | Thank you for your interest in contributing to this project! 4 | To facilitate your contributions, we've outlined a brief set 5 | of guidelines to ensure that your extensions can be easily integrated. 6 | 7 | ## Git Branches 8 | 9 | The main branch corresponds to the most recent version of the project. 10 | 11 | When contributing to the project, please make sure that your Pull Request (PR) 12 | contains the following: 13 | 14 | - Detailed description of the changes performed 15 | - Corresponding changes to documentation and sample environments (if 16 | applicable) 17 | - Summary of the tests performed to validate your changes 18 | - Issue numbers that the PR resolves (if any) 19 | 20 | ## Contributor License Agreements 21 | 22 | When you open a pull request, you will be asked to acknowledge our Contributor 23 | License Agreement. We allow both individual contributions and contributions made 24 | on behalf of companies. We use an open source tool called CLA assistant. -------------------------------------------------------------------------------- /ma-poca/config/coma/BatonPass.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | BatonPass: 3 | trainer_type: coma 4 | hyperparameters: 5 | max_num_agents: 22 6 | batch_size: 1024 7 | buffer_size: 10240 8 | learning_rate: 0.0003 9 | beta: 0.01 10 | epsilon: 0.2 11 | lambd: 0.95 12 | num_epoch: 3 13 | learning_rate_schedule: constant 14 | network_settings: 15 | # max_num_agents: 22 16 | normalize: false 17 | hidden_units: 256 18 | num_layers: 2 19 | vis_encode_type: simple 20 | reward_signals: 21 | extrinsic: 22 | gamma: 0.99 23 | strength: 1.0 24 | keep_checkpoints: 1 25 | max_steps: 15000000 26 | time_horizon: 640000 27 | summary_freq: 200000 28 | checkpoint_interval: 50000000 29 | env_settings: 30 | # seed: 1 31 | num_envs: 1 32 | environment_parameters: 33 | absorbing_state: 1 34 | max_food: 20 35 | penalty: 2.5 36 | exit_reward: 0 37 | time_penalty: 0 38 | collision_penalty: 0 39 | # area_steps: 30000 -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | /// 6 | /// Utility class to allow a stable observation platform. 7 | /// 8 | public class OrientationCubeController : MonoBehaviour 9 | { 10 | //Update position and Rotation 11 | public void UpdateOrientation(Transform rootBP, Transform target) 12 | { 13 | var dirVector = target.position - transform.position; 14 | dirVector.y = 0; //flatten dir on the y. this will only work on level, uneven surfaces 15 | var lookRot = 16 | dirVector == Vector3.zero 17 | ? Quaternion.identity 18 | : Quaternion.LookRotation(dirVector); //get our look rot to the target 19 | 20 | //UPDATE ORIENTATION CUBE POS & ROT 21 | transform.SetPositionAndRotation(rootBP.position, lookRot); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /ma-poca/config/coma/ParticlesEnv.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | simple_spread: 3 | trainer_type: coma 4 | hyperparameters: 5 | batch_size: 512 6 | buffer_size: 5120 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 128 16 | num_layers: 2 17 | vis_encode_type: simple 18 | # memory: 19 | # memory_size: 64 20 | # sequence_length: 10 21 | reward_signals: 22 | extrinsic: 23 | gamma: 0.99 24 | strength: 1.0 25 | keep_checkpoints: 5 26 | max_steps: 60000000 27 | time_horizon: 64 28 | summary_freq: 10000 29 | env_settings: 30 | seed: 5 31 | 32 | # cloud: 33 | # pre_training_exec_hooks: 34 | # - ls -al 35 | # - echo cloning particle envs 36 | # - git clone https://github.com/openai/multiagent-particle-envs.git 37 | # - cd ./multiagent-particle-envs && pip3 install -e ./ 38 | -------------------------------------------------------------------------------- /ma-poca/config/poca/ParticlesEnv.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | simple_spread: 3 | trainer_type: poca 4 | hyperparameters: 5 | batch_size: 512 6 | buffer_size: 5120 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 128 16 | num_layers: 2 17 | vis_encode_type: simple 18 | # memory: 19 | # memory_size: 64 20 | # sequence_length: 10 21 | reward_signals: 22 | extrinsic: 23 | gamma: 0.99 24 | strength: 1.0 25 | keep_checkpoints: 5 26 | max_steps: 60000000 27 | time_horizon: 64 28 | summary_freq: 10000 29 | env_settings: 30 | seed: 5 31 | 32 | # cloud: 33 | # pre_training_exec_hooks: 34 | # - ls -al 35 | # - echo cloning particle envs 36 | # - git clone https://github.com/openai/multiagent-particle-envs.git 37 | # - cd ./multiagent-particle-envs && pip3 install -e ./ 38 | -------------------------------------------------------------------------------- /ma-poca/config/ppo/ParticlesEnv.yaml: -------------------------------------------------------------------------------- 1 | behaviors: 2 | simple_spread: 3 | trainer_type: ppo 4 | hyperparameters: 5 | batch_size: 512 6 | buffer_size: 5120 7 | learning_rate: 0.0003 8 | beta: 0.01 9 | epsilon: 0.2 10 | lambd: 0.95 11 | num_epoch: 3 12 | learning_rate_schedule: constant 13 | network_settings: 14 | normalize: false 15 | hidden_units: 128 16 | num_layers: 2 17 | vis_encode_type: simple 18 | # memory: 19 | # memory_size: 64 20 | # sequence_length: 10 21 | reward_signals: 22 | extrinsic: 23 | gamma: 0.99 24 | strength: 1.0 25 | keep_checkpoints: 5 26 | max_steps: 60000000 27 | time_horizon: 64 28 | summary_freq: 10000 29 | env_settings: 30 | seed: 5 31 | 32 | # cloud: 33 | # pre_training_exec_hooks: 34 | # - ls -al 35 | # - echo cloning particle envs 36 | # - git clone https://github.com/openai/multiagent-particle-envs.git 37 | # - cd ./multiagent-particle-envs && pip3 install -e ./ 38 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity3d.com 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 0 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/run_experiment.py: -------------------------------------------------------------------------------- 1 | import argparse 2 | from typing import Optional, List 3 | from mapoca.trainers.learn import run_cli 4 | from mapoca.trainers.settings import RunOptions 5 | from mapoca.trainers.cli_utils import load_config 6 | 7 | 8 | def parse_command_line(argv: Optional[List[str]] = None) -> argparse.Namespace: 9 | parser = argparse.ArgumentParser( 10 | formatter_class=argparse.ArgumentDefaultsHelpFormatter 11 | ) 12 | parser.add_argument("experiment_config_path") 13 | return parser.parse_args(argv) 14 | 15 | 16 | def main(): 17 | """ 18 | Provides an alternative CLI interface to mlagents-learn, 'mlagents-run-experiment'. 19 | Accepts a JSON/YAML formatted mapoca.trainers.learn.RunOptions object, and executes 20 | the run loop as defined in mapoca.trainers.learn.run_cli. 21 | """ 22 | args = parse_command_line() 23 | expt_config = load_config(args.experiment_config_path) 24 | run_cli(RunOptions.from_dict(expt_config)) 25 | 26 | 27 | if __name__ == "__main__": 28 | main() 29 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: 7 | - agent 8 | - iWall 9 | - wall 10 | - pit 11 | - frozenAgent 12 | - ball 13 | - blueGoal 14 | - blueAgent 15 | - goal 16 | - ground 17 | - block 18 | - switchOff 19 | - pyramid 20 | - switchOn 21 | - stone 22 | - target 23 | - badFood 24 | - food 25 | - walkableSurface 26 | - symbol_X 27 | - symbol_O 28 | - symbol_X_Goal 29 | - symbol_O_Goal 30 | - purpleAgent 31 | - purpleGoal 32 | - tile 33 | layers: 34 | - Default 35 | - TransparentFX 36 | - Ignore Raycast 37 | - 38 | - Water 39 | - UI 40 | - 41 | - 42 | - invisible 43 | - 44 | - 45 | - 46 | - 47 | - 48 | - 49 | - 50 | - 51 | - 52 | - 53 | - 54 | - 55 | - 56 | - 57 | - 58 | - 59 | - 60 | - 61 | - 62 | - 63 | - 64 | - 65 | - 66 | m_SortingLayers: 67 | - name: Default 68 | uniqueID: 0 69 | locked: 0 70 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/PackageManagerSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_ScopedRegistriesSettingsExpanded: 1 16 | oneTimeWarningShown: 0 17 | m_Registries: 18 | - m_Id: main 19 | m_Name: 20 | m_Url: https://packages.unity.com 21 | m_Scopes: [] 22 | m_IsDefault: 1 23 | m_UserSelectedRegistryName: 24 | m_UserAddingNewScopedRegistry: 0 25 | m_RegistryInfoDraft: 26 | m_ErrorMessage: 27 | m_Original: 28 | m_Id: 29 | m_Name: 30 | m_Url: 31 | m_Scopes: [] 32 | m_IsDefault: 0 33 | m_Modified: 0 34 | m_Name: 35 | m_Url: 36 | m_Scopes: 37 | - 38 | m_SelectedScopeIndex: 0 39 | -------------------------------------------------------------------------------- /ma-poca/Environments/.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /Logs/ 3 | /[Tt]emp/ 4 | /[Oo]bj/ 5 | /[Bb]uild/ 6 | /[Bb]uilds/ 7 | /Assets/AssetStoreTools* 8 | /Assets/Plugins* 9 | /Assets/Demonstrations* 10 | /Assets/ML-Agents/Timers* 11 | /csharp_timers.json 12 | 13 | # Environemnt logfile 14 | *Project.log 15 | 16 | # Visual Studio 2015 cache directory 17 | /.vs/ 18 | 19 | # Autogenerated VS/MD/Consulo solution and project files 20 | /ProjectExportedObj/ 21 | /Project.consulo/ 22 | *.csproj 23 | *.unityproj 24 | *.sln 25 | *.suo 26 | *.tmp 27 | *.user 28 | *.userprefs 29 | *.pidb 30 | *.booproj 31 | *.svd 32 | *.pdb 33 | 34 | # Unity3D generated meta files 35 | *.pidb.meta 36 | 37 | # Unity3D Generated File On Crash Reports 38 | /sysinfo.txt 39 | 40 | # Builds 41 | *.apk 42 | *.unitypackage 43 | *.app 44 | *.exe 45 | *.x86_64 46 | *.x86 47 | 48 | # Plugins 49 | /Assets/VideoRecorder* 50 | 51 | # Mac hidden files 52 | *.DS_Store 53 | */.ipynb_checkpoints 54 | */.idea 55 | *.pyc 56 | *.idea/misc.xml 57 | *.idea/modules.xml 58 | *.idea/ 59 | *.iml 60 | *.cache 61 | */build/ 62 | */dist/ 63 | *.egg-info* 64 | *.eggs* 65 | *.gitignore.swp 66 | 67 | # VSCode hidden files 68 | *.vscode/ 69 | 70 | .DS_Store 71 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/CameraFollow.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | public class CameraFollow : MonoBehaviour 6 | { 7 | [Tooltip("The target to follow")] public Transform target; 8 | 9 | [Tooltip("The time it takes to move to the new position")] 10 | public float smoothingTime; //The time it takes to move to the new position 11 | 12 | private Vector3 m_Offset; 13 | private Vector3 m_CamVelocity; //Camera's velocity (used by SmoothDamp) 14 | 15 | // Use this for initialization 16 | void Start() 17 | { 18 | m_Offset = gameObject.transform.position - target.position; 19 | } 20 | 21 | void FixedUpdate() 22 | { 23 | var newPosition = new Vector3(target.position.x + m_Offset.x, transform.position.y, 24 | target.position.z + m_Offset.z); 25 | 26 | gameObject.transform.position = 27 | Vector3.SmoothDamp(transform.position, newPosition, ref m_CamVelocity, smoothingTime, Mathf.Infinity, 28 | Time.fixedDeltaTime); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/PushBlockSettings.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class PushBlockSettings : MonoBehaviour 4 | { 5 | /// 6 | /// The "walking speed" of the agents in the scene. 7 | /// 8 | public float agentRunSpeed; 9 | 10 | /// 11 | /// The agent rotation speed. 12 | /// Every agent will use this setting. 13 | /// 14 | public float agentRotationSpeed; 15 | 16 | /// 17 | /// The spawn area margin multiplier. 18 | /// ex: .9 means 90% of spawn area will be used. 19 | /// .1 margin will be left (so players don't spawn off of the edge). 20 | /// The higher this value, the longer training time required. 21 | /// 22 | public float spawnAreaMarginMultiplier; 23 | 24 | /// 25 | /// When a goal is scored the ground will switch to this 26 | /// material for a few seconds. 27 | /// 28 | public Material goalScoredMaterial; 29 | 30 | /// 31 | /// When an agent fails, the ground will turn this material for a few seconds. 32 | /// 33 | public Material failMaterial; 34 | 35 | } 36 | -------------------------------------------------------------------------------- /ma-poca/mapoca/README.md: -------------------------------------------------------------------------------- 1 | # Unity ML-Agents Trainers 2 | 3 | The `mlagents` Python package is part of the 4 | [ML-Agents Toolkit](https://github.com/Unity-Technologies/ml-agents). `mlagents` 5 | provides a set of reinforcement and imitation learning algorithms designed to be 6 | used with Unity environments. The algorithms interface with the Python API 7 | provided by the `mlagents_envs` package. See [here](../docs/Python-API.md) for 8 | more information on `mlagents_envs`. 9 | 10 | The algorithms can be accessed using the: `mlagents-learn` access point. See 11 | [here](../docs/Training-ML-Agents.md) for more information on using this 12 | package. 13 | 14 | ## Installation 15 | 16 | Install the `mlagents` package with: 17 | 18 | ```sh 19 | python -m pip install mlagents==0.27.0 20 | ``` 21 | 22 | ## Usage & More Information 23 | 24 | For more information on the ML-Agents Toolkit and how to instrument a Unity 25 | scene with the ML-Agents SDK, check out the main 26 | [ML-Agents Toolkit documentation](../docs/Readme.md). 27 | 28 | ## Limitations 29 | 30 | - `mlagents` does not yet explicitly support multi-agent scenarios so training 31 | cooperative behavior among different agents is not stable. 32 | - Resuming self-play from a checkpoint resets the reported ELO to the default 33 | value. 34 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 9 7 | m_ExternalVersionControlSupport: Hidden Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 1 10 | m_DefaultBehaviorMode: 0 11 | m_PrefabRegularEnvironment: {fileID: 0} 12 | m_PrefabUIEnvironment: {fileID: 0} 13 | m_SpritePackerMode: 0 14 | m_SpritePackerPaddingPower: 1 15 | m_EtcTextureCompressorBehavior: 1 16 | m_EtcTextureFastCompressor: 1 17 | m_EtcTextureNormalCompressor: 2 18 | m_EtcTextureBestCompressor: 4 19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref 20 | m_ProjectGenerationRootNamespace: 21 | m_CollabEditorSettings: 22 | inProgressEnabled: 1 23 | m_EnableTextureStreamingInEditMode: 1 24 | m_EnableTextureStreamingInPlayMode: 1 25 | m_AsyncShaderCompilation: 1 26 | m_EnterPlayModeOptionsEnabled: 0 27 | m_EnterPlayModeOptions: 3 28 | m_ShowLightmapResolutionOverlay: 1 29 | m_UseLegacyProbeSampleCount: 1 30 | m_AssetPipelineMode: 1 31 | m_CacheServerMode: 0 32 | m_CacheServerEndpoint: 33 | m_CacheServerNamespacePrefix: default 34 | m_CacheServerEnableDownload: 1 35 | m_CacheServerEnableUpload: 1 36 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 10 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 12 13 | m_DefaultSolverVelocityIterations: 12 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebffffffddffffffeffffffff5fffffffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 1 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ContactPairsMode: 0 26 | m_BroadphaseType: 0 27 | m_WorldBounds: 28 | m_Center: {x: 0, y: 0, z: 0} 29 | m_Extent: {x: 250, y: 250, z: 250} 30 | m_WorldSubdivisions: 8 31 | m_FrictionType: 0 32 | m_EnableEnhancedDeterminism: 1 33 | m_EnableUnifiedHeightmaps: 1 34 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetContact.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | /// 6 | /// This class contains logic for locomotion agents with joints which might make contact with a target. 7 | /// By attaching this as a component to those joints, their contact with the ground can be used as 8 | /// an observation for that agent. 9 | /// 10 | [DisallowMultipleComponent] 11 | public class TargetContact : MonoBehaviour 12 | { 13 | [Header("Detect Targets")] public bool touchingTarget; 14 | const string k_Target = "target"; // Tag on target object. 15 | 16 | /// 17 | /// Check for collision with a target. 18 | /// 19 | void OnCollisionEnter(Collision col) 20 | { 21 | if (col.transform.CompareTag(k_Target)) 22 | { 23 | touchingTarget = true; 24 | } 25 | } 26 | 27 | /// 28 | /// Check for end of ground collision and reset flag appropriately. 29 | /// 30 | void OnCollisionExit(Collision other) 31 | { 32 | if (other.transform.CompareTag(k_Target)) 33 | { 34 | touchingTarget = false; 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | public class DirectionIndicator : MonoBehaviour 6 | { 7 | 8 | public bool updatedByAgent; //should this be updated by the agent? If not, it will use local settings 9 | public Transform transformToFollow; //ex: hips or body 10 | public Transform targetToLookAt; //target in the scene the indicator will point to 11 | public float heightOffset; 12 | private float m_StartingYPos; 13 | 14 | void OnEnable() 15 | { 16 | m_StartingYPos = transform.position.y; 17 | } 18 | 19 | void Update() 20 | { 21 | if (updatedByAgent) 22 | return; 23 | transform.position = new Vector3(transformToFollow.position.x, m_StartingYPos + heightOffset, 24 | transformToFollow.position.z); 25 | Vector3 walkDir = targetToLookAt.position - transform.position; 26 | walkDir.y = 0; //flatten dir on the y 27 | transform.rotation = Quaternion.LookRotation(walkDir); 28 | } 29 | 30 | //Public method to allow an agent to directly update this component 31 | public void MatchOrientation(Transform t) 32 | { 33 | transform.position = new Vector3(t.position.x, m_StartingYPos + heightOffset, t.position.z); 34 | transform.rotation = t.rotation; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /ma-poca/README.md: -------------------------------------------------------------------------------- 1 | # MA-POCA 2 | **Multi-Agent POsthumous Credit Assignment** (MA-POCA) is a multi-agent learning algorithm that can gracefully deal with spawning and despawning agents without the use of absorbing states. 3 | 4 | You can check the original paper [here](todo-link-to-paper). 5 | 6 | ## Average calculation with absorbing states 7 | 8 | This [notebook](AverageCalculationWithAbsorbingStates.ipynb) can be used to generate some of the plots of the paper (Figure 1 and Appendix A). 9 | 10 | 11 | 12 | ## Reproduce RL experiments 13 | 14 | ### Installation 15 | 16 | To install the code for training, in the ma-poca folder, run the command: 17 | 18 | ``` 19 | pip install -e mapoca/ 20 | ``` 21 | 22 | The mapoca package functions similarly to the mlagents package (see [here](https://github.com/Unity-Technologies/ml-agents/tree/release_18/ml-agents) for more information) 23 | 24 | To launch an experiment, use the command : 25 | 26 | ``` 27 | mapoca-learn config//.yaml --env= --run-id= 28 | ``` 29 | 30 | where: 31 | - `` is the name of one of our four environments: 32 | - BatonPass 33 | - DungeonEscape 34 | - ParticlesEnv 35 | - PushBlockCollab 36 | - `` can be one of the three provided algorithms: 37 | - mapoca 38 | - coma 39 | - ppo 40 | - and `` a unique identifier for the experiment 41 | 42 | The results of the experiment will be inside the `results` folder. 43 | 44 | 45 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/exception.py: -------------------------------------------------------------------------------- 1 | """ 2 | Contains exceptions for the trainers package. 3 | """ 4 | 5 | 6 | class TrainerError(Exception): 7 | """ 8 | Any error related to the trainers in the ML-Agents Toolkit. 9 | """ 10 | 11 | pass 12 | 13 | 14 | class TrainerConfigError(Exception): 15 | """ 16 | Any error related to the configuration of trainers in the ML-Agents Toolkit. 17 | """ 18 | 19 | pass 20 | 21 | 22 | class TrainerConfigWarning(Warning): 23 | """ 24 | Any warning related to the configuration of trainers in the ML-Agents Toolkit. 25 | """ 26 | 27 | pass 28 | 29 | 30 | class CurriculumError(TrainerError): 31 | """ 32 | Any error related to training with a curriculum. 33 | """ 34 | 35 | pass 36 | 37 | 38 | class CurriculumLoadingError(CurriculumError): 39 | """ 40 | Any error related to loading the Curriculum config file. 41 | """ 42 | 43 | pass 44 | 45 | 46 | class CurriculumConfigError(CurriculumError): 47 | """ 48 | Any error related to processing the Curriculum config file. 49 | """ 50 | 51 | pass 52 | 53 | 54 | class MetaCurriculumError(TrainerError): 55 | """ 56 | Any error related to the configuration of a metacurriculum. 57 | """ 58 | 59 | pass 60 | 61 | 62 | class SamplerException(TrainerError): 63 | """ 64 | Related to errors with the sampler actions. 65 | """ 66 | 67 | pass 68 | 69 | 70 | class UnityTrainerException(TrainerError): 71 | """ 72 | Related to errors with the Trainer. 73 | """ 74 | 75 | pass 76 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/torch_utils/cpu_utils.py: -------------------------------------------------------------------------------- 1 | from typing import Optional 2 | 3 | import os 4 | 5 | 6 | def get_num_threads_to_use() -> Optional[int]: 7 | """ 8 | Gets the number of threads to use. For most problems, 4 is all you 9 | need, but for smaller machines, we'd like to scale to less than that. 10 | By default, PyTorch uses 1/2 of the available cores. 11 | """ 12 | num_cpus = _get_num_available_cpus() 13 | return max(min(num_cpus // 2, 4), 1) if num_cpus is not None else None 14 | 15 | 16 | def _get_num_available_cpus() -> Optional[int]: 17 | """ 18 | Returns number of CPUs using cgroups if possible. This accounts 19 | for Docker containers that are limited in cores. 20 | """ 21 | period = _read_in_integer_file("/sys/fs/cgroup/cpu/cpu.cfs_period_us") 22 | quota = _read_in_integer_file("/sys/fs/cgroup/cpu/cpu.cfs_quota_us") 23 | share = _read_in_integer_file("/sys/fs/cgroup/cpu/cpu.shares") 24 | is_kubernetes = os.getenv("KUBERNETES_SERVICE_HOST") is not None 25 | 26 | if period > 0 and quota > 0: 27 | return int(quota // period) 28 | elif period > 0 and share > 0 and is_kubernetes: 29 | # In kubernetes, each requested CPU is 1024 CPU shares 30 | # https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#how-pods-with-resource-limits-are-run 31 | return int(share // 1024) 32 | else: 33 | return os.cpu_count() 34 | 35 | 36 | def _read_in_integer_file(filename: str) -> int: 37 | try: 38 | with open(filename) as f: 39 | return int(f.read().rstrip()) 40 | except FileNotFoundError: 41 | return -1 42 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/PushBlock/Scripts/GoalDetectTrigger.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.Events; 3 | 4 | public class GoalDetectTrigger : MonoBehaviour 5 | { 6 | 7 | [Header("Trigger Collider Tag To Detect")] 8 | public string tagToDetect = "goal"; //collider tag to detect 9 | 10 | [Header("Goal Value")] 11 | public float GoalValue = 1; 12 | 13 | private Collider m_col; 14 | [System.Serializable] 15 | public class TriggerEvent : UnityEvent 16 | { 17 | } 18 | 19 | [Header("Trigger Callbacks")] 20 | public TriggerEvent onTriggerEnterEvent = new TriggerEvent(); 21 | public TriggerEvent onTriggerStayEvent = new TriggerEvent(); 22 | public TriggerEvent onTriggerExitEvent = new TriggerEvent(); 23 | 24 | private void OnTriggerEnter(Collider col) 25 | { 26 | if (col.CompareTag(tagToDetect)) 27 | { 28 | onTriggerEnterEvent.Invoke(m_col, GoalValue); 29 | } 30 | } 31 | 32 | private void OnTriggerStay(Collider col) 33 | { 34 | if (col.CompareTag(tagToDetect)) 35 | { 36 | onTriggerStayEvent.Invoke(m_col, GoalValue); 37 | } 38 | } 39 | 40 | private void OnTriggerExit(Collider col) 41 | { 42 | if (col.CompareTag(tagToDetect)) 43 | { 44 | onTriggerExitEvent.Invoke(m_col, GoalValue); 45 | } 46 | } 47 | // Start is called before the first frame update 48 | void Awake() 49 | { 50 | m_col = GetComponent(); 51 | } 52 | 53 | // Update is called once per frame 54 | void Update() 55 | { 56 | 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs: -------------------------------------------------------------------------------- 1 | //This script lets you change time scale during training. It is not a required script for this demo to function 2 | 3 | using UnityEngine; 4 | 5 | namespace MLAgentsExamples 6 | { 7 | public class AdjustTrainingTimescale : MonoBehaviour 8 | { 9 | // Update is called once per frame 10 | void Update() 11 | { 12 | if (Input.GetKeyDown(KeyCode.Alpha1)) 13 | { 14 | Time.timeScale = 1f; 15 | } 16 | if (Input.GetKeyDown(KeyCode.Alpha2)) 17 | { 18 | Time.timeScale = 2f; 19 | } 20 | if (Input.GetKeyDown(KeyCode.Alpha3)) 21 | { 22 | Time.timeScale = 3f; 23 | } 24 | if (Input.GetKeyDown(KeyCode.Alpha4)) 25 | { 26 | Time.timeScale = 4f; 27 | } 28 | if (Input.GetKeyDown(KeyCode.Alpha5)) 29 | { 30 | Time.timeScale = 5f; 31 | } 32 | if (Input.GetKeyDown(KeyCode.Alpha6)) 33 | { 34 | Time.timeScale = 6f; 35 | } 36 | if (Input.GetKeyDown(KeyCode.Alpha7)) 37 | { 38 | Time.timeScale = 7f; 39 | } 40 | if (Input.GetKeyDown(KeyCode.Alpha8)) 41 | { 42 | Time.timeScale = 8f; 43 | } 44 | if (Input.GetKeyDown(KeyCode.Alpha9)) 45 | { 46 | Time.timeScale = 9f; 47 | } 48 | if (Input.GetKeyDown(KeyCode.Alpha0)) 49 | { 50 | Time.timeScale *= 2f; 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Output Artifacts (Legacy) 2 | /models 3 | /summaries 4 | # Output Artifacts 5 | /results 6 | */results 7 | # Output Builds 8 | /Builds 9 | */Builds 10 | 11 | # Training environments 12 | /envs 13 | 14 | # Environemnt logfile 15 | *Project.log 16 | 17 | # Custom settings asset 18 | *.settings.asset* 19 | 20 | # Visual Studio 2015 cache directory 21 | /Project/.vs/ 22 | 23 | # Autogenerated VS/MD/Consulo solution and project files 24 | /com.unity.ml-agentsExportedObj/ 25 | /com.unity.ml-agents.consulo/ 26 | *.csproj 27 | *.unityproj 28 | *.sln 29 | *.suo 30 | *.tmp 31 | *.user 32 | *.userprefs 33 | *.pidb 34 | *.booproj 35 | *.svd 36 | *.pdb 37 | 38 | # Unity3D generated meta files 39 | *.pidb.meta 40 | 41 | # Unity3D Generated File On Crash Reports 42 | /com.unity.ml-agents/sysinfo.txt 43 | 44 | # Builds 45 | *.apk 46 | *.unitypackage 47 | *.app 48 | *.exe 49 | *.x86_64 50 | *.x86 51 | 52 | # Plugins 53 | /com.unity.ml-agents/VideoRecorder* 54 | 55 | # Generated doc folders 56 | /docs/html 57 | 58 | # Mac hidden files 59 | *.DS_Store 60 | */.ipynb_checkpoints 61 | */.idea 62 | *.pyc 63 | *.idea/misc.xml 64 | *.idea/modules.xml 65 | *.idea/ 66 | *.iml 67 | *.cache 68 | */build/ 69 | */dist/ 70 | *.egg-info* 71 | *.eggs* 72 | *.gitignore.swp 73 | 74 | # VSCode hidden files 75 | *.vscode/ 76 | 77 | .DS_Store 78 | .ipynb_checkpoints 79 | 80 | # pytest cache 81 | *.pytest_cache/ 82 | 83 | # Ignore compiled protobuf files. 84 | *Grpc.Tools* 85 | 86 | # Ignore PyPi build files. 87 | dist/ 88 | build/ 89 | 90 | # Python virtual environment 91 | venv/ 92 | .mypy_cache/ 93 | 94 | # Code coverage report 95 | .coverage 96 | coverage.xml 97 | /htmlcov/ 98 | 99 | **/UserSettings/* 100 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/directory_utils.py: -------------------------------------------------------------------------------- 1 | import os 2 | from mapoca.trainers.exception import UnityTrainerException 3 | 4 | 5 | def validate_existing_directories( 6 | output_path: str, resume: bool, force: bool, init_path: str = None 7 | ) -> None: 8 | """ 9 | Validates that if the run_id model exists, we do not overwrite it unless --force is specified. 10 | Throws an exception if resume isn't specified and run_id exists. Throws an exception 11 | if --resume is specified and run-id was not found. 12 | :param model_path: The model path specified. 13 | :param summary_path: The summary path to be used. 14 | :param resume: Whether or not the --resume flag was passed. 15 | :param force: Whether or not the --force flag was passed. 16 | """ 17 | 18 | output_path_exists = os.path.isdir(output_path) 19 | 20 | if output_path_exists: 21 | if not resume and not force: 22 | raise UnityTrainerException( 23 | "Previous data from this run ID was found. " 24 | "Either specify a new run ID, use --resume to resume this run, " 25 | "or use the --force parameter to overwrite existing data." 26 | ) 27 | else: 28 | if resume: 29 | raise UnityTrainerException( 30 | "Previous data from this run ID was not found. " 31 | "Train a new run by removing the --resume flag." 32 | ) 33 | 34 | # Verify init path if specified. 35 | if init_path is not None: 36 | if not os.path.isdir(init_path): 37 | raise UnityTrainerException( 38 | "Could not initialize from {}. " 39 | "Make sure models have already been saved with that run ID.".format( 40 | init_path 41 | ) 42 | ) 43 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/action_flattener.py: -------------------------------------------------------------------------------- 1 | from typing import List 2 | from mapoca.torch_utils import torch 3 | 4 | from mlagents_envs.base_env import ActionSpec 5 | from mapoca.trainers.torch.agent_action import AgentAction 6 | from mapoca.trainers.torch.utils import ModelUtils 7 | 8 | 9 | class ActionFlattener: 10 | def __init__(self, action_spec: ActionSpec): 11 | """ 12 | A torch module that creates the flattened form of an AgentAction object. 13 | The flattened form is the continuous action concatenated with the 14 | concatenated one hot encodings of the discrete actions. 15 | :param action_spec: An ActionSpec that describes the action space dimensions 16 | """ 17 | self._specs = action_spec 18 | 19 | @property 20 | def flattened_size(self) -> int: 21 | """ 22 | The flattened size is the continuous size plus the sum of the branch sizes 23 | since discrete actions are encoded as one hots. 24 | """ 25 | return self._specs.continuous_size + sum(self._specs.discrete_branches) 26 | 27 | def forward(self, action: AgentAction) -> torch.Tensor: 28 | """ 29 | Returns a tensor corresponding the flattened action 30 | :param action: An AgentAction object 31 | """ 32 | action_list: List[torch.Tensor] = [] 33 | if self._specs.continuous_size > 0: 34 | action_list.append(action.continuous_tensor) 35 | if self._specs.discrete_size > 0: 36 | flat_discrete = torch.cat( 37 | ModelUtils.actions_to_onehot( 38 | torch.as_tensor(action.discrete_tensor, dtype=torch.long), 39 | self._specs.discrete_branches, 40 | ), 41 | dim=1, 42 | ) 43 | action_list.append(flat_discrete) 44 | return torch.cat(action_list, dim=1) 45 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/components/reward_providers/reward_provider_factory.py: -------------------------------------------------------------------------------- 1 | from typing import Dict, Type 2 | from mapoca.trainers.exception import UnityTrainerException 3 | 4 | from mapoca.trainers.settings import RewardSignalSettings, RewardSignalType 5 | 6 | from mapoca.trainers.torch.components.reward_providers.base_reward_provider import ( 7 | BaseRewardProvider, 8 | ) 9 | from mapoca.trainers.torch.components.reward_providers.extrinsic_reward_provider import ( 10 | ExtrinsicRewardProvider, 11 | ) 12 | from mapoca.trainers.torch.components.reward_providers.curiosity_reward_provider import ( 13 | CuriosityRewardProvider, 14 | ) 15 | from mapoca.trainers.torch.components.reward_providers.gail_reward_provider import ( 16 | GAILRewardProvider, 17 | ) 18 | from mapoca.trainers.torch.components.reward_providers.rnd_reward_provider import ( 19 | RNDRewardProvider, 20 | ) 21 | 22 | from mlagents_envs.base_env import BehaviorSpec 23 | 24 | NAME_TO_CLASS: Dict[RewardSignalType, Type[BaseRewardProvider]] = { 25 | RewardSignalType.EXTRINSIC: ExtrinsicRewardProvider, 26 | RewardSignalType.CURIOSITY: CuriosityRewardProvider, 27 | RewardSignalType.GAIL: GAILRewardProvider, 28 | RewardSignalType.RND: RNDRewardProvider, 29 | } 30 | 31 | 32 | def create_reward_provider( 33 | name: RewardSignalType, specs: BehaviorSpec, settings: RewardSignalSettings 34 | ) -> BaseRewardProvider: 35 | """ 36 | Creates a reward provider class based on the name and config entry provided as a dict. 37 | :param name: The name of the reward signal 38 | :param specs: The BehaviorSpecs of the policy 39 | :param settings: The RewardSignalSettings for that reward signal 40 | :return: The reward signal class instantiated 41 | """ 42 | rcls = NAME_TO_CLASS.get(name) 43 | if not rcls: 44 | raise UnityTrainerException(f"Unknown reward signal type {name}") 45 | 46 | class_inst = rcls(specs, settings) 47 | return class_inst 48 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/torch/components/reward_providers/extrinsic_reward_provider.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | from typing import Dict 3 | 4 | from mapoca.trainers.buffer import AgentBuffer, BufferKey 5 | from mapoca.trainers.torch.components.reward_providers.base_reward_provider import ( 6 | BaseRewardProvider, 7 | ) 8 | from mlagents_envs.base_env import BehaviorSpec 9 | from mapoca.trainers.settings import RewardSignalSettings 10 | 11 | 12 | class ExtrinsicRewardProvider(BaseRewardProvider): 13 | """ 14 | Evaluates extrinsic reward. For single-agent, this equals the individual reward 15 | given to the agent. For the POCA algorithm, we want not only the individual reward 16 | but also the team and the individual rewards of the other agents. 17 | """ 18 | 19 | def __init__(self, specs: BehaviorSpec, settings: RewardSignalSettings) -> None: 20 | super().__init__(specs, settings) 21 | self.add_groupmate_rewards = False 22 | 23 | def evaluate(self, mini_batch: AgentBuffer) -> np.ndarray: 24 | indiv_rewards = np.array( 25 | mini_batch[BufferKey.ENVIRONMENT_REWARDS], dtype=np.float32 26 | ) 27 | total_rewards = indiv_rewards 28 | if BufferKey.GROUPMATE_REWARDS in mini_batch and self.add_groupmate_rewards: 29 | groupmate_rewards_list = mini_batch[BufferKey.GROUPMATE_REWARDS] 30 | groupmate_rewards_sum = np.array( 31 | [sum(_rew) for _rew in groupmate_rewards_list], dtype=np.float32 32 | ) 33 | total_rewards += groupmate_rewards_sum 34 | if BufferKey.GROUP_REWARD in mini_batch: 35 | group_rewards = np.array( 36 | mini_batch[BufferKey.GROUP_REWARD], dtype=np.float32 37 | ) 38 | # Add all the group rewards to the individual rewards 39 | total_rewards += group_rewards 40 | return total_rewards 41 | 42 | def update(self, mini_batch: AgentBuffer) -> Dict[str, np.ndarray]: 43 | return {} 44 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_CO.tif.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0dbde4b748147ad46bb2c40602273db7 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 4 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: -1 36 | wrapV: -1 37 | wrapW: -1 38 | nPOTScale: 1 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 0 51 | spriteTessellationDetail: -1 52 | textureType: 0 53 | textureShape: 1 54 | maxTextureSizeSet: 0 55 | compressionQualitySet: 0 56 | textureFormatSet: 0 57 | platformSettings: 58 | - buildTarget: DefaultTexturePlatform 59 | maxTextureSize: 2048 60 | resizeAlgorithm: 0 61 | textureFormat: -1 62 | textureCompression: 1 63 | compressionQuality: 50 64 | crunchedCompression: 0 65 | allowsAlphaSplitting: 0 66 | overridden: 0 67 | androidETC2FallbackOverride: 0 68 | spriteSheet: 69 | serializedVersion: 2 70 | sprites: [] 71 | outline: [] 72 | physicsShape: [] 73 | spritePackingTag: 74 | userData: 75 | assetBundleName: 76 | assetBundleVariant: 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/Checkers_NO.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4b43567aafd8a040b34a6a86ce60ad9 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 4 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 0 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: -1 36 | wrapV: -1 37 | wrapW: -1 38 | nPOTScale: 1 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 0 51 | spriteTessellationDetail: -1 52 | textureType: 1 53 | textureShape: 1 54 | maxTextureSizeSet: 0 55 | compressionQualitySet: 0 56 | textureFormatSet: 0 57 | platformSettings: 58 | - buildTarget: DefaultTexturePlatform 59 | maxTextureSize: 2048 60 | resizeAlgorithm: 0 61 | textureFormat: -1 62 | textureCompression: 1 63 | compressionQuality: 50 64 | crunchedCompression: 0 65 | allowsAlphaSplitting: 0 66 | overridden: 0 67 | androidETC2FallbackOverride: 0 68 | spriteSheet: 69 | serializedVersion: 2 70 | sprites: [] 71 | outline: [] 72 | physicsShape: [] 73 | spritePackingTag: 74 | userData: 75 | assetBundleName: 76 | assetBundleVariant: 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/gridTexture.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 178121dcf42de421385195f200d9a001 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 4 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: -1 36 | wrapV: -1 37 | wrapW: -1 38 | nPOTScale: 1 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 0 51 | spriteTessellationDetail: -1 52 | textureType: 0 53 | textureShape: 1 54 | maxTextureSizeSet: 0 55 | compressionQualitySet: 0 56 | textureFormatSet: 0 57 | platformSettings: 58 | - buildTarget: DefaultTexturePlatform 59 | maxTextureSize: 2048 60 | resizeAlgorithm: 0 61 | textureFormat: -1 62 | textureCompression: 1 63 | compressionQuality: 50 64 | crunchedCompression: 0 65 | allowsAlphaSplitting: 0 66 | overridden: 0 67 | androidETC2FallbackOverride: 0 68 | spriteSheet: 69 | serializedVersion: 2 70 | sprites: [] 71 | outline: [] 72 | physicsShape: [] 73 | spritePackingTag: 74 | userData: 75 | assetBundleName: 76 | assetBundleVariant: 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs: -------------------------------------------------------------------------------- 1 | using Unity.MLAgents.Sensors; 2 | 3 | namespace Unity.MLAgentsExamples 4 | { 5 | /// 6 | /// A simple sensor that provides a number default implementations. 7 | /// 8 | public abstract class SensorBase : ISensor 9 | { 10 | /// 11 | /// Write the observations to the output buffer. This size of the buffer will be product 12 | /// of the Shape array values returned by . 13 | /// 14 | /// 15 | public abstract void WriteObservation(float[] output); 16 | 17 | /// 18 | public abstract ObservationSpec GetObservationSpec(); 19 | 20 | /// 21 | public abstract string GetName(); 22 | 23 | /// 24 | /// Default implementation of Write interface. This creates a temporary array, 25 | /// calls WriteObservation, and then writes the results to the ObservationWriter. 26 | /// 27 | /// 28 | /// The number of elements written. 29 | public virtual int Write(ObservationWriter writer) 30 | { 31 | // TODO reuse buffer for similar agents 32 | var numFloats = this.ObservationSize(); 33 | float[] buffer = new float[numFloats]; 34 | WriteObservation(buffer); 35 | 36 | writer.AddList(buffer); 37 | 38 | return numFloats; 39 | } 40 | 41 | /// 42 | public void Update() { } 43 | 44 | /// 45 | public void Reset() { } 46 | 47 | /// 48 | public virtual byte[] GetCompressedObservation() 49 | { 50 | return null; 51 | } 52 | 53 | /// 54 | public virtual CompressionSpec GetCompressionSpec() 55 | { 56 | return CompressionSpec.Default(); 57 | } 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/CheckersGray_BC.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c922805328ab07d4396783401534201b 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 4 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: -1 36 | wrapV: -1 37 | wrapW: -1 38 | nPOTScale: 1 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 0 51 | spriteTessellationDetail: -1 52 | textureType: 0 53 | textureShape: 1 54 | maxTextureSizeSet: 0 55 | compressionQualitySet: 0 56 | textureFormatSet: 0 57 | platformSettings: 58 | - buildTarget: DefaultTexturePlatform 59 | maxTextureSize: 2048 60 | resizeAlgorithm: 0 61 | textureFormat: -1 62 | textureCompression: 1 63 | compressionQuality: 50 64 | crunchedCompression: 0 65 | allowsAlphaSplitting: 0 66 | overridden: 0 67 | androidETC2FallbackOverride: 0 68 | spriteSheet: 69 | serializedVersion: 2 70 | sprites: [] 71 | outline: [] 72 | physicsShape: [] 73 | spritePackingTag: 74 | userData: 75 | assetBundleName: 76 | assetBundleVariant: 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Scripts/GroundContact.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using Unity.MLAgents; 3 | 4 | namespace Unity.MLAgentsExamples 5 | { 6 | /// 7 | /// This class contains logic for locomotion agents with joints which might make contact with the ground. 8 | /// By attaching this as a component to those joints, their contact with the ground can be used as either 9 | /// an observation for that agent, and/or a means of punishing the agent for making undesirable contact. 10 | /// 11 | [DisallowMultipleComponent] 12 | public class GroundContact : MonoBehaviour 13 | { 14 | [HideInInspector] public Agent agent; 15 | 16 | [Header("Ground Check")] public bool agentDoneOnGroundContact; // Whether to reset agent on ground contact. 17 | public bool penalizeGroundContact; // Whether to penalize on contact. 18 | public float groundContactPenalty; // Penalty amount (ex: -1). 19 | public bool touchingGround; 20 | const string k_Ground = "ground"; // Tag of ground object. 21 | 22 | /// 23 | /// Check for collision with ground, and optionally penalize agent. 24 | /// 25 | void OnCollisionEnter(Collision col) 26 | { 27 | if (col.transform.CompareTag(k_Ground)) 28 | { 29 | touchingGround = true; 30 | if (penalizeGroundContact) 31 | { 32 | agent.SetReward(groundContactPenalty); 33 | } 34 | 35 | if (agentDoneOnGroundContact) 36 | { 37 | agent.EndEpisode(); 38 | } 39 | } 40 | } 41 | 42 | /// 43 | /// Check for end of ground collision and reset flag appropriately. 44 | /// 45 | void OnCollisionExit(Collision other) 46 | { 47 | if (other.transform.CompareTag(k_Ground)) 48 | { 49 | touchingGround = false; 50 | } 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/torch_utils/torch.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | from distutils.version import LooseVersion 4 | import pkg_resources 5 | from mapoca.torch_utils import cpu_utils 6 | from mapoca.trainers.settings import TorchSettings 7 | from mlagents_envs.logging_util import get_logger 8 | 9 | 10 | logger = get_logger(__name__) 11 | 12 | 13 | def assert_torch_installed(): 14 | # Check that torch version 1.6.0 or later has been installed. If not, refer 15 | # user to the PyTorch webpage for install instructions. 16 | torch_pkg = None 17 | try: 18 | torch_pkg = pkg_resources.get_distribution("torch") 19 | except pkg_resources.DistributionNotFound: 20 | pass 21 | assert torch_pkg is not None and LooseVersion(torch_pkg.version) >= LooseVersion( 22 | "1.6.0" 23 | ), ( 24 | "A compatible version of PyTorch was not installed. Please visit the PyTorch homepage " 25 | + "(https://pytorch.org/get-started/locally/) and follow the instructions to install. " 26 | + "Version 1.6.0 and later are supported." 27 | ) 28 | 29 | 30 | assert_torch_installed() 31 | 32 | # This should be the only place that we import torch directly. 33 | # Everywhere else is caught by the banned-modules setting for flake8 34 | import torch # noqa I201 35 | 36 | 37 | torch.set_num_threads(cpu_utils.get_num_threads_to_use()) 38 | os.environ["KMP_BLOCKTIME"] = "0" 39 | 40 | 41 | _device = torch.device("cpu") 42 | 43 | 44 | def set_torch_config(torch_settings: TorchSettings) -> None: 45 | global _device 46 | 47 | if torch_settings.device is None: 48 | device_str = "cuda" if torch.cuda.is_available() else "cpu" 49 | else: 50 | device_str = torch_settings.device 51 | 52 | _device = torch.device(device_str) 53 | 54 | if _device.type == "cuda": 55 | torch.set_default_tensor_type(torch.cuda.FloatTensor) 56 | else: 57 | torch.set_default_tensor_type(torch.FloatTensor) 58 | logger.debug(f"default Torch device: {_device}") 59 | 60 | 61 | # Initialize to default settings 62 | set_torch_config(TorchSettings(device=None)) 63 | 64 | nn = torch.nn 65 | 66 | 67 | def default_device(): 68 | return _device 69 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/DungeonEscape/Scripts/SimpleNPC.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class SimpleNPC : MonoBehaviour 4 | { 5 | 6 | public Transform target; 7 | 8 | private Rigidbody rb; 9 | public bool KeyCarrier = false; 10 | 11 | private DungeonEscapeEnvController m_GameController; 12 | public float walkSpeed = 1; 13 | // public ForceMode walkForceMode; 14 | private Vector3 dirToGo; 15 | 16 | // private Vector3 m_StartingPos; 17 | // Start is called before the first frame update 18 | 19 | public void Initialize() 20 | { 21 | rb = GetComponent(); 22 | m_GameController = GetComponentInParent(); 23 | } 24 | void Awake() 25 | { 26 | Initialize(); 27 | // m_StartingPos = transform.position; 28 | } 29 | 30 | // Update is called once per frame 31 | void Update() 32 | { 33 | } 34 | 35 | 36 | void OnCollisionEnter(Collision col) 37 | { 38 | if (KeyCarrier) 39 | { 40 | 41 | if (col.transform.CompareTag("portal")) 42 | { 43 | m_GameController.BaddieTouchedBlock(); 44 | } 45 | } 46 | } 47 | 48 | void FixedUpdate() 49 | { 50 | Vector3 goToward; 51 | if (!KeyCarrier) 52 | { 53 | goToward = m_GameController.GetNearestAgent(transform.position); 54 | } 55 | else 56 | { 57 | goToward = target.position; 58 | } 59 | 60 | dirToGo = goToward - transform.position; 61 | dirToGo.y = 0; 62 | rb.rotation = Quaternion.LookRotation(dirToGo); 63 | // rb.AddForce(dirToGo.normalized * walkSpeed * Time.fixedDeltaTime, walkForceMode); 64 | // rb.MovePosition(rb.transform.TransformDirection(Vector3.forward * walkSpeed * Time.deltaTime)); 65 | // rb.MovePosition(rb.transform.TransformVector() (Vector3.forward * walkSpeed * Time.deltaTime)); 66 | rb.MovePosition(transform.position + transform.forward * walkSpeed * Time.deltaTime); 67 | } 68 | 69 | public void SetRandomWalkSpeed() 70 | { 71 | walkSpeed = Random.Range(1f, 7f); 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/ShaderOutline.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 2 | 3 | Shader "Custom/Outline and ScreenSpace texture" 4 | { 5 | Properties 6 | { 7 | [Header(Outline)] 8 | _OutlineVal ("Outline value", Range(0., 2.)) = 1. 9 | _OutlineCol ("Outline color", color) = (1., 1., 1., 1.) 10 | [Header(Texture)] 11 | _MainTex ("Texture", 2D) = "white" {} 12 | _Zoom ("Zoom", Range(0.5, 20)) = 1 13 | _SpeedX ("Speed along X", Range(-1, 1)) = 0 14 | _SpeedY ("Speed along Y", Range(-1, 1)) = 0 15 | } 16 | SubShader 17 | { 18 | Tags { "Queue"="Geometry" "RenderType"="Opaque" } 19 | 20 | Pass 21 | { 22 | Cull Front 23 | 24 | CGPROGRAM 25 | #pragma vertex vert 26 | #pragma fragment frag 27 | #include "UnityCG.cginc" 28 | 29 | struct v2f { 30 | float4 pos : SV_POSITION; 31 | }; 32 | 33 | float _OutlineVal; 34 | 35 | v2f vert(appdata_base v) { 36 | v2f o; 37 | 38 | // Convert vertex to clip space 39 | o.pos = UnityObjectToClipPos(v.vertex); 40 | 41 | // Convert normal to view space (camera space) 42 | float3 normal = mul((float3x3) UNITY_MATRIX_IT_MV, v.normal); 43 | 44 | // Compute normal value in clip space 45 | normal.x *= UNITY_MATRIX_P[0][0]; 46 | normal.y *= UNITY_MATRIX_P[1][1]; 47 | 48 | // Scale the model depending the previous computed normal and outline value 49 | o.pos.xy += _OutlineVal * normal.xy; 50 | return o; 51 | } 52 | 53 | fixed4 _OutlineCol; 54 | 55 | fixed4 frag(v2f i) : SV_Target { 56 | return _OutlineCol; 57 | } 58 | 59 | ENDCG 60 | } 61 | 62 | Pass 63 | { 64 | CGPROGRAM 65 | #pragma vertex vert 66 | #pragma fragment frag 67 | #include "UnityCG.cginc" 68 | 69 | float4 vert(appdata_base v) : SV_POSITION 70 | { 71 | return UnityObjectToClipPos(v.vertex); 72 | } 73 | 74 | sampler2D _MainTex; 75 | float _Zoom; 76 | float _SpeedX; 77 | float _SpeedY; 78 | 79 | fixed4 frag(float4 i : VPOS) : SV_Target 80 | { 81 | // Screen space texture 82 | return tex2D(_MainTex, ((i.xy / _ScreenParams.xy) + float2(_Time.y * _SpeedX, _Time.y * _SpeedY)) / _Zoom); 83 | } 84 | 85 | ENDCG 86 | } 87 | } 88 | } -------------------------------------------------------------------------------- /ma-poca/Environments/ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_BaumgarteScale: 0.2 17 | m_BaumgarteTimeOfImpactScale: 0.75 18 | m_TimeToSleep: 0.5 19 | m_LinearSleepTolerance: 0.01 20 | m_AngularSleepTolerance: 2 21 | m_DefaultContactOffset: 0.01 22 | m_JobOptions: 23 | serializedVersion: 2 24 | useMultithreading: 0 25 | useConsistencySorting: 0 26 | m_InterpolationPosesPerJob: 100 27 | m_NewContactsPerJob: 30 28 | m_CollideContactsPerJob: 100 29 | m_ClearFlagsPerJob: 200 30 | m_ClearBodyForcesPerJob: 200 31 | m_SyncDiscreteFixturesPerJob: 50 32 | m_SyncContinuousFixturesPerJob: 50 33 | m_FindNearestContactsPerJob: 100 34 | m_UpdateTriggerContactsPerJob: 100 35 | m_IslandSolverCostThreshold: 100 36 | m_IslandSolverBodyCostScale: 1 37 | m_IslandSolverContactCostScale: 10 38 | m_IslandSolverJointCostScale: 10 39 | m_IslandSolverBodiesPerJob: 50 40 | m_IslandSolverContactsPerJob: 50 41 | m_AutoSimulation: 1 42 | m_QueriesHitTriggers: 1 43 | m_QueriesStartInColliders: 1 44 | m_CallbacksOnDisable: 1 45 | m_ReuseCollisionCallbacks: 0 46 | m_AutoSyncTransforms: 0 47 | m_AlwaysShowColliders: 0 48 | m_ShowColliderSleep: 1 49 | m_ShowColliderContacts: 0 50 | m_ShowColliderAABB: 0 51 | m_ContactArrowScale: 0.2 52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 57 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Black.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Black 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0 64 | - _GlossyReflections: 1 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 1 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.048, g: 0.048, b: 0.048, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Textures/NetAL.tif.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 47c07dd05d80a8d42b0329ff416b8455 3 | TextureImporter: 4 | fileIDToRecycleName: {} 5 | externalObjects: {} 6 | serializedVersion: 4 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | grayScaleToAlpha: 0 25 | generateCubemap: 6 26 | cubemapConvolution: 0 27 | seamlessCubemap: 0 28 | textureFormat: 1 29 | maxTextureSize: 2048 30 | textureSettings: 31 | serializedVersion: 2 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapU: -1 36 | wrapV: -1 37 | wrapW: -1 38 | nPOTScale: 1 39 | lightmap: 0 40 | compressionQuality: 50 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spritePixelsToUnits: 100 47 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 48 | spriteGenerateFallbackPhysicsShape: 1 49 | alphaUsage: 1 50 | alphaIsTransparency: 0 51 | spriteTessellationDetail: -1 52 | textureType: 0 53 | textureShape: 1 54 | maxTextureSizeSet: 0 55 | compressionQualitySet: 0 56 | textureFormatSet: 0 57 | platformSettings: 58 | - buildTarget: DefaultTexturePlatform 59 | maxTextureSize: 128 60 | resizeAlgorithm: 0 61 | textureFormat: -1 62 | textureCompression: 1 63 | compressionQuality: 50 64 | crunchedCompression: 0 65 | allowsAlphaSplitting: 0 66 | overridden: 0 67 | androidETC2FallbackOverride: 0 68 | - buildTarget: Standalone 69 | maxTextureSize: 128 70 | resizeAlgorithm: 0 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | androidETC2FallbackOverride: 0 78 | spriteSheet: 79 | serializedVersion: 2 80 | sprites: [] 81 | outline: [] 82 | physicsShape: [] 83 | spritePackingTag: 84 | userData: 85 | assetBundleName: 86 | assetBundleVariant: 87 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Prefabs/Directional_Light.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1001 &100100000 4 | Prefab: 5 | m_ObjectHideFlags: 1 6 | serializedVersion: 2 7 | m_Modification: 8 | m_TransformParent: {fileID: 0} 9 | m_Modifications: [] 10 | m_RemovedComponents: [] 11 | m_ParentPrefab: {fileID: 0} 12 | m_RootGameObject: {fileID: 1537121661968964} 13 | m_IsPrefabParent: 1 14 | --- !u!1 &1537121661968964 15 | GameObject: 16 | m_ObjectHideFlags: 0 17 | m_PrefabParentObject: {fileID: 0} 18 | m_PrefabInternal: {fileID: 100100000} 19 | serializedVersion: 5 20 | m_Component: 21 | - component: {fileID: 4943719350691982} 22 | - component: {fileID: 108227806558212132} 23 | m_Layer: 0 24 | m_Name: Directional_Light 25 | m_TagString: Untagged 26 | m_Icon: {fileID: 0} 27 | m_NavMeshLayer: 0 28 | m_StaticEditorFlags: 4294967295 29 | m_IsActive: 1 30 | --- !u!4 &4943719350691982 31 | Transform: 32 | m_ObjectHideFlags: 1 33 | m_PrefabParentObject: {fileID: 0} 34 | m_PrefabInternal: {fileID: 100100000} 35 | m_GameObject: {fileID: 1537121661968964} 36 | m_LocalRotation: {x: 0.31598538, y: -0.3596048, z: 0.13088542, w: 0.8681629} 37 | m_LocalPosition: {x: 106.38621, y: 38.840767, z: 34.72934} 38 | m_LocalScale: {x: 1, y: 1, z: 1} 39 | m_Children: [] 40 | m_Father: {fileID: 0} 41 | m_RootOrder: 0 42 | m_LocalEulerAnglesHint: {x: 40, y: -45, z: 0} 43 | --- !u!108 &108227806558212132 44 | Light: 45 | m_ObjectHideFlags: 1 46 | m_PrefabParentObject: {fileID: 0} 47 | m_PrefabInternal: {fileID: 100100000} 48 | m_GameObject: {fileID: 1537121661968964} 49 | m_Enabled: 1 50 | serializedVersion: 8 51 | m_Type: 1 52 | m_Color: {r: 1, g: 0.99570733, b: 0.984, a: 1} 53 | m_Intensity: 1 54 | m_Range: 27.9 55 | m_SpotAngle: 74.8 56 | m_CookieSize: 10 57 | m_Shadows: 58 | m_Type: 2 59 | m_Resolution: -1 60 | m_CustomResolution: -1 61 | m_Strength: 0.8 62 | m_Bias: 0.05 63 | m_NormalBias: 0.4 64 | m_NearPlane: 0.2 65 | m_Cookie: {fileID: 0} 66 | m_DrawHalo: 0 67 | m_Flare: {fileID: 0} 68 | m_RenderMode: 0 69 | m_CullingMask: 70 | serializedVersion: 2 71 | m_Bits: 4294967295 72 | m_Lightmapping: 4 73 | m_AreaSize: {x: 1, y: 1} 74 | m_BounceIntensity: 1 75 | m_ColorTemperature: 6570 76 | m_UseColorTemperature: 0 77 | m_ShadowRadius: 0 78 | m_ShadowAngle: 0 79 | -------------------------------------------------------------------------------- /ma-poca/mapoca/mapoca/trainers/behavior_id_utils.py: -------------------------------------------------------------------------------- 1 | from typing import NamedTuple 2 | from urllib.parse import urlparse, parse_qs 3 | from mlagents_envs.base_env import AgentId, GroupId 4 | 5 | GlobalGroupId = str 6 | GlobalAgentId = str 7 | 8 | 9 | class BehaviorIdentifiers(NamedTuple): 10 | """ 11 | BehaviorIdentifiers is a named tuple of the identifiers that uniquely distinguish 12 | an agent encountered in the trainer_controller. The named tuple consists of the 13 | fully qualified behavior name, the name of the brain name (corresponds to trainer 14 | in the trainer controller) and the team id. In the future, this can be extended 15 | to support further identifiers. 16 | """ 17 | 18 | behavior_id: str 19 | brain_name: str 20 | team_id: int 21 | 22 | @staticmethod 23 | def from_name_behavior_id(name_behavior_id: str) -> "BehaviorIdentifiers": 24 | """ 25 | Parses a name_behavior_id of the form name?team=0 26 | into a BehaviorIdentifiers NamedTuple. 27 | This allows you to access the brain name and team id of an agent 28 | :param name_behavior_id: String of behavior params in HTTP format. 29 | :returns: A BehaviorIdentifiers object. 30 | """ 31 | 32 | parsed = urlparse(name_behavior_id) 33 | name = parsed.path 34 | ids = parse_qs(parsed.query) 35 | team_id: int = 0 36 | if "team" in ids: 37 | team_id = int(ids["team"][0]) 38 | return BehaviorIdentifiers( 39 | behavior_id=name_behavior_id, brain_name=name, team_id=team_id 40 | ) 41 | 42 | 43 | def create_name_behavior_id(name: str, team_id: int) -> str: 44 | """ 45 | Reconstructs fully qualified behavior name from name and team_id 46 | :param name: brain name 47 | :param team_id: team ID 48 | :return: name_behavior_id 49 | """ 50 | return name + "?team=" + str(team_id) 51 | 52 | 53 | def get_global_agent_id(worker_id: int, agent_id: AgentId) -> GlobalAgentId: 54 | """ 55 | Create an agent id that is unique across environment workers using the worker_id. 56 | """ 57 | return f"agent_{worker_id}-{agent_id}" 58 | 59 | 60 | def get_global_group_id(worker_id: int, group_id: GroupId) -> GlobalGroupId: 61 | """ 62 | Create a group id that is unique across environment workers when using the worker_id. 63 | """ 64 | return f"group_{worker_id}-{group_id}" 65 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Headband.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Headband 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 1 64 | - _GlossyReflections: 1 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 1 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.98039216, g: 0.6509804, b: 0.16078432, a: 1} 76 | - _EmissionColor: {r: 0.98039216, g: 0.6509804, b: 0.16078432, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Door.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Door 11 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 0.2830189, g: 0.22119384, b: 0.16153437, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Red.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Red 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.74509805, g: 0.22745098, b: 0.15294118, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/White.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: White 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.9254902, g: 0.9372549, b: 0.9411765, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Yellow.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Yellow 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 1, g: 0.79607844, b: 0.15294118, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Green.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Green 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.40392157, g: 0.7372549, b: 0.41960785, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LightGreen.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: LightGreen 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.5926951, g: 0.7372549, b: 0.5994979, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LightRed.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: LightRed 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.74509805, g: 0.48966902, b: 0.45290273, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/BallMat.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: BallMat 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 2800000, guid: be5d24d9d9e024be784fbcb911cb18e8, type: 3} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.23 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 1 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 1 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.5147059, g: 0.5147059, b: 0.5147059, a: 1} 76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/ShaderRadialGrid.shader: -------------------------------------------------------------------------------- 1 | Shader "Custom/WireFrame" { 2 | Properties { 3 | _LineColor ("LineColor", Color) = (1, 1, 1, 1) 4 | _MainColor ("_MainColor", Color) = (1, 1, 1, 1) 5 | _LineWidth ("Line width", Range(0, 1)) = 0.1 6 | _ParcelSize ("ParcelSize", Range(0, 100)) = 1 7 | } 8 | SubShader { 9 | Tags { "Queue"="Transparent" "RenderType"="Transparent" } 10 | 11 | CGPROGRAM 12 | #pragma surface surf Lambert alpha 13 | 14 | sampler2D _MainTex; 15 | float4 _LineColor; 16 | float4 _MainColor; 17 | fixed _LineWidth; 18 | float _ParcelSize; 19 | 20 | struct Input { 21 | float2 uv_MainTex; 22 | float3 worldPos; 23 | }; 24 | 25 | void surf (Input IN, inout SurfaceOutput o) { 26 | half val1 = step(_LineWidth * 2, frac(IN.worldPos.x / _ParcelSize) + _LineWidth); 27 | half val2 = step(_LineWidth * 2, frac(IN.worldPos.z / _ParcelSize) + _LineWidth); 28 | fixed val = 1 - (val1 * val2); 29 | o.Albedo = lerp(_MainColor, _LineColor, val); 30 | o.Alpha = 1; 31 | } 32 | ENDCG 33 | } 34 | FallBack "Diffuse" 35 | } 36 | 37 | // //Shader uses screen-space partial derivatives, works the best with terrain meshes. 38 | 39 | // Shader "Wireframe" 40 | // { 41 | // Properties 42 | // { 43 | // [Header(Settings)] [Toggle] _transparency ("Transparency", Float) = 1 44 | // } 45 | // Subshader 46 | // { 47 | // Pass 48 | // { 49 | // Cull Off 50 | // CGPROGRAM 51 | // #pragma vertex vertex_shader 52 | // #pragma fragment pixel_shader 53 | // #pragma target 3.0 54 | 55 | // struct structure 56 | // { 57 | // float4 gl_Position : SV_POSITION; 58 | // float3 vertex : TEXCOORD0; 59 | // }; 60 | 61 | // float _transparency; 62 | 63 | // structure vertex_shader (float4 vertex:POSITION) 64 | // { 65 | // structure vs; 66 | // vs.gl_Position = UnityObjectToClipPos (vertex); 67 | // vs.vertex = vertex; 68 | // return vs; 69 | // } 70 | 71 | // float4 pixel_shader (structure ps) : COLOR 72 | // { 73 | // float2 p = ps.vertex.xz; 74 | // float2 g = abs(frac(p - 0.5) - 0.5) / fwidth(p); 75 | // float s = min(g.x, g.y); 76 | // float4 c = float4(s,s,s, 1.0); 77 | // if (c.r<1.0) 78 | // return 1.0-c; 79 | // else 80 | // { 81 | // if (_transparency==1) discard; 82 | // return 0; 83 | // } 84 | // } 85 | // ENDCG 86 | // } 87 | // } 88 | // } -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Brown.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Brown 11 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0 65 | - _GlossyReflections: 0 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 0 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 0.294, g: 0.294, b: 0.294, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Orange.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Orange 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | m_Floats: 58 | - _BumpScale: 1 59 | - _Cutoff: 0.5 60 | - _DetailNormalMapScale: 1 61 | - _DstBlend: 0 62 | - _GlossMapScale: 1 63 | - _Glossiness: 0.5 64 | - _GlossyReflections: 0 65 | - _Metallic: 0 66 | - _Mode: 0 67 | - _OcclusionStrength: 1 68 | - _Parallax: 0.02 69 | - _SmoothnessTextureChannel: 0 70 | - _SpecularHighlights: 0 71 | - _SrcBlend: 1 72 | - _UVSec: 0 73 | - _ZWrite: 1 74 | m_Colors: 75 | - _Color: {r: 0.98039216, g: 0.6509804, b: 0.16078432, a: 1} 76 | - _EmissionColor: {r: 0.98039216, g: 0.6509804, b: 0.16078432, a: 1} 77 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Net.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Net 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _ALPHATEST_ON 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 2450 16 | stringTagMap: 17 | RenderType: TransparentCutout 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 2800000, guid: 47c07dd05d80a8d42b0329ff416b8455, type: 3} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 1 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Purple.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Purple 11 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 0 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 0 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 0.875, g: 0.39112502, b: 0.86165184, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Eye.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: Eye 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _ALPHATEST_ON _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 2450 16 | stringTagMap: 17 | RenderType: TransparentCutout 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 10912, guid: 0000000000000000f000000000000000, type: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 0 66 | - _Metallic: 0 67 | - _Mode: 1 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 0 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 0.058823526, g: 0.058823526, b: 0.058823526, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/LogoSymbol.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: LogoSymbol 10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: ETC1_EXTERNAL_ALPHA _ALPHATEST_ON _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: 2450 16 | stringTagMap: 17 | RenderType: TransparentCutout 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 2800000, guid: be5d24d9d9e024be784fbcb911cb18e8, type: 3} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.714 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 0 66 | - _Metallic: 0 67 | - _Mode: 1 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 0 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 0, g: 0, b: 0, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/Outline.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Outline 11 | m_Shader: {fileID: 4800000, guid: 5dfe02aa25125453eaaaa295936dc8cd, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _OutlineVal: 0.08 70 | - _Parallax: 0.02 71 | - _SmoothnessTextureChannel: 0 72 | - _SpecularHighlights: 1 73 | - _SpeedX: 0 74 | - _SpeedY: 0 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | - _Zoom: 1 79 | m_Colors: 80 | - _Color: {r: 1, g: 1, b: 1, a: 1} 81 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 82 | - _OutlineCol: {r: 1, g: 0, b: 0, a: 1} 83 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/BatonPass/Scripts/BatonPassButton.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using Random = UnityEngine.Random; 3 | using Unity.MLAgents; 4 | 5 | public class BatonPassButton : MonoBehaviour 6 | { 7 | public Material onMaterial; 8 | public Material offMaterial; 9 | public GameObject myButton; 10 | public GameObject AgentPrefab; 11 | public GameObject Food; 12 | public BatonPassArea Area; 13 | bool m_State; 14 | 15 | 16 | 17 | public bool GetState() 18 | { 19 | return m_State; 20 | } 21 | 22 | 23 | public void ResetSwitch() 24 | { 25 | m_State = false; 26 | tag = "switchOff"; 27 | transform.rotation = Quaternion.Euler(0f, 0f, 0f); 28 | myButton.GetComponent().material = offMaterial; 29 | if (Random.Range(0f, 1f) < Academy.Instance.EnvironmentParameters.GetWithDefault("button_on_prob", 0f)) 30 | { 31 | Activate(null); 32 | } 33 | } 34 | 35 | void OnCollisionEnter(Collision other) 36 | { 37 | if (other.gameObject.CompareTag("agent") && m_State == false) 38 | { 39 | var agent = other.gameObject.GetComponent(); 40 | if (agent.CanPress) 41 | { 42 | Activate(other.gameObject); 43 | agent.CanPress = false; 44 | } 45 | } 46 | } 47 | 48 | public void SetActivated(){ 49 | myButton.GetComponent().material = onMaterial; 50 | m_State = true; 51 | tag = "switchOn"; 52 | } 53 | 54 | void Activate(GameObject pressingAgent) 55 | { 56 | SetActivated(); 57 | SpawnAgent(pressingAgent); 58 | // pressingAgent.GetComponent().SetLife(50); 59 | Food.gameObject.SetActive(true); 60 | } 61 | 62 | void SpawnAgent(GameObject pressingAgent) 63 | { 64 | // if (pressingAgent != null) 65 | // { 66 | // Area.UnregisterAgent(pressingAgent); 67 | // Destroy(pressingAgent); 68 | // var agent1 = GameObject.Instantiate(AgentPrefab, gameObject.transform.position + new Vector3(2 , 0, 0), default(Quaternion), Area.transform); 69 | // // Area.AddReward(0f); 70 | // Area.RegisterAgent(agent1); 71 | // } 72 | 73 | var agent2 = GameObject.Instantiate(AgentPrefab, gameObject.transform.position + new Vector3(3, 0, 0), default(Quaternion), Area.transform); 74 | // Area.AddReward(0f); 75 | Area.RegisterAgent(agent2); 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/AgentBlue.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: AgentBlue 10 | m_Shader: {fileID: 47, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | - _SpecGlossMap: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0.5 68 | - _GlossyReflections: 0 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 0 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 0.12941177, g: 0.5882353, b: 0.9529412, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 81 | -------------------------------------------------------------------------------- /ma-poca/Environments/Assets/ML-Agents/Examples/SharedAssets/Materials/AgentPurple.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: AgentPurple 10 | m_Shader: {fileID: 47, guid: 0000000000000000f000000000000000, type: 0} 11 | m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 12 | m_LightmapFlags: 4 13 | m_EnableInstancingVariants: 0 14 | m_DoubleSidedGI: 0 15 | m_CustomRenderQueue: -1 16 | stringTagMap: {} 17 | disabledShaderPasses: [] 18 | m_SavedProperties: 19 | serializedVersion: 3 20 | m_TexEnvs: 21 | - _BumpMap: 22 | m_Texture: {fileID: 0} 23 | m_Scale: {x: 1, y: 1} 24 | m_Offset: {x: 0, y: 0} 25 | - _DetailAlbedoMap: 26 | m_Texture: {fileID: 0} 27 | m_Scale: {x: 1, y: 1} 28 | m_Offset: {x: 0, y: 0} 29 | - _DetailMask: 30 | m_Texture: {fileID: 0} 31 | m_Scale: {x: 1, y: 1} 32 | m_Offset: {x: 0, y: 0} 33 | - _DetailNormalMap: 34 | m_Texture: {fileID: 0} 35 | m_Scale: {x: 1, y: 1} 36 | m_Offset: {x: 0, y: 0} 37 | - _EmissionMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _MainTex: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _MetallicGlossMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _OcclusionMap: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _ParallaxMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | - _SpecGlossMap: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | m_Floats: 62 | - _BumpScale: 1 63 | - _Cutoff: 0.5 64 | - _DetailNormalMapScale: 1 65 | - _DstBlend: 0 66 | - _GlossMapScale: 1 67 | - _Glossiness: 0.5 68 | - _GlossyReflections: 0 69 | - _Metallic: 0 70 | - _Mode: 0 71 | - _OcclusionStrength: 1 72 | - _Parallax: 0.02 73 | - _SmoothnessTextureChannel: 0 74 | - _SpecularHighlights: 0 75 | - _SrcBlend: 1 76 | - _UVSec: 0 77 | - _ZWrite: 1 78 | m_Colors: 79 | - _Color: {r: 0.5541859, g: 0.42738053, b: 0.78431374, a: 1} 80 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 81 | --------------------------------------------------------------------------------