浏览代码

update soccer raycasts

/soccer-comms/disc
Andrew Cohen 4 年前
当前提交
5bbe796b
共有 4 个文件被更改,包括 205 次插入62 次删除
  1. 224
      Project/Assets/ML-Agents/Examples/Soccer/Prefabs/SoccerFieldTwos.prefab
  2. 2
      Project/Assets/ML-Agents/Examples/Soccer/Scripts/AgentSoccerCollab.cs
  3. 39
      config/ppo/SoccerTwos.yaml
  4. 2
      ml-agents/mlagents/trainers/trainer_controller.py

224
Project/Assets/ML-Agents/Examples/Soccer/Prefabs/SoccerFieldTwos.prefab


- component: {fileID: 114320493772006642}
- component: {fileID: 9152743230243588598}
- component: {fileID: 798330825103180240}
- component: {fileID: 2927736745919867320}
m_Layer: 0
m_Name: PurpleStriker
m_TagString: purpleAgent

m_Name:
m_EditorClassIdentifier:
m_BrainParameters:
VectorObservationSize: 10
VectorObservationSize: 2
BranchSizes: 0a000000
BranchSizes: 02000000
m_Model: {fileID: 5022602860645237092, guid: 0793e0466d1074c3c902e854b9b2a289, type: 3}
m_Model: {fileID: 5022602860645237092, guid: 5edf3e561a5894d03b35cc983c261748, type: 3}
m_InferenceDevice: 0
m_BehaviorType: 0
m_BehaviorName: SoccerTwos

agentParameters:
maxStep: 0
hasUpgradedFromAgentParameters: 1
MaxStep: 3000
MaxStep: 5000
team: 0
area: {fileID: 114559182131992928}
position: 2

m_EditorClassIdentifier:
m_SensorName: PurpleRayPerceptionSensor
m_DetectableTags:
- ball
- wall
- wall
- purpleAgent
- blueAgent
m_RaysPerDirection: 5

m_RayLayerMask:
serializedVersion: 2
m_Bits: 4294967291
m_Bits: 819
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

m_Name:
m_EditorClassIdentifier:
debugCommandLineOverride:
--- !u!114 &2927736745919867320
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1095606497496374}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6bb6b867a41448888c1cd4f99643ad71, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SensorName: BallPurpleRayPerceptionSensor
m_DetectableTags:
- wall
- purpleGoal
- blueGoal
- ball
m_RaysPerDirection: 5
m_MaxRayDegrees: 30
m_SphereCastRadius: 0.5
m_RayLength: 20
m_RayLayerMask:
serializedVersion: 2
m_Bits: 1536
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}
m_StartVerticalOffset: 0.5
m_EndVerticalOffset: 0.5
--- !u!1 &1100217258374548
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 114516244030127556}
- component: {fileID: 404683423509059512}
- component: {fileID: 8557426429796011212}
- component: {fileID: 7968280251315294774}
m_Layer: 0
m_Name: BlueStriker
m_TagString: blueAgent

m_Name:
m_EditorClassIdentifier:
m_BrainParameters:
VectorObservationSize: 10
VectorObservationSize: 2
BranchSizes: 0a000000
BranchSizes: 02000000
m_Model: {fileID: 5022602860645237092, guid: 0793e0466d1074c3c902e854b9b2a289, type: 3}
m_Model: {fileID: 5022602860645237092, guid: 5edf3e561a5894d03b35cc983c261748, type: 3}
m_InferenceDevice: 0
m_BehaviorType: 0
m_BehaviorName: SoccerTwos

agentParameters:
maxStep: 0
hasUpgradedFromAgentParameters: 1
MaxStep: 3000
MaxStep: 5000
team: 0
area: {fileID: 114559182131992928}
position: 2

m_EditorClassIdentifier:
m_SensorName: BlueRayPerceptionSensor
m_DetectableTags:
- ball
- wall
- wall
- blueAgent
- purpleAgent
m_RaysPerDirection: 5

m_Name:
m_EditorClassIdentifier:
debugCommandLineOverride:
--- !u!114 &7968280251315294774
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1131626411948014}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6bb6b867a41448888c1cd4f99643ad71, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SensorName: BallBlueRayPerceptionSensor
m_DetectableTags:
- wall
- blueGoal
- purpleGoal
- ball
m_RaysPerDirection: 5
m_MaxRayDegrees: 30
m_SphereCastRadius: 0.5
m_RayLength: 20
m_RayLayerMask:
serializedVersion: 2
m_Bits: 1536
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}
m_StartVerticalOffset: 0.5
m_EndVerticalOffset: 0.5
--- !u!1 &1141134673700168
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 33151135767273144}
- component: {fileID: 23420896636371710}
- component: {fileID: 64474002074256704}
m_Layer: 0
m_Layer: 9
m_Name: WallSideA
m_TagString: wall
m_Icon: {fileID: 0}

m_Enabled: 1
serializedVersion: 3
m_Convex: 0
m_CookingOptions: 14
m_CookingOptions: -1
m_Mesh: {fileID: 4300014, guid: 02257fc10ef7ad149b5daa123a7df881, type: 3}
--- !u!1 &1401986251305704
GameObject:

- component: {fileID: 33588944737043670}
- component: {fileID: 23135375652557800}
- component: {fileID: 64463101538527252}
m_Layer: 0
m_Layer: 9
m_Name: WallSideB
m_TagString: wall
m_Icon: {fileID: 0}

- component: {fileID: 33594846689333450}
- component: {fileID: 23472375383448142}
- component: {fileID: 65419777742325110}
m_Layer: 0
m_Layer: 9
m_Name: GoalBlue
m_TagString: blueGoal
m_Icon: {fileID: 0}

m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 200, y: 50, z: 850.0001}
m_Center: {x: 0, y: 0, z: 0}
m_Size: {x: 200, y: 400, z: 850.0001}
m_Center: {x: 0, y: 200, z: 0}
--- !u!1 &1618901466348856
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 135993924486820224}
- component: {fileID: 114273807544954564}
- component: {fileID: 54100138833592438}
m_Layer: 0
m_Layer: 10
m_Name: Soccer Ball
m_TagString: ball
m_Icon: {fileID: 0}

m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1682753582128710}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -1.7, y: 0.5, z: 0}
m_LocalPosition: {x: 0, y: 0.5, z: 0}
m_LocalScale: {x: 0.015, y: 0.015, z: 0.015}
m_Children: []
m_Father: {fileID: 4558743310993102}

- component: {fileID: 33693580190047416}
- component: {fileID: 23941816170183106}
- component: {fileID: 65779051553495090}
m_Layer: 0
m_Layer: 9
m_Name: GoalPurple
m_TagString: purpleGoal
m_Icon: {fileID: 0}

m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 200, y: 50, z: 850.0001}
m_Center: {x: 0, y: 0, z: 0}
m_Size: {x: 200, y: 400, z: 850.0001}
m_Center: {x: 0, y: 200, z: 0}
--- !u!1 &736576636681813138
GameObject:
m_ObjectHideFlags: 0

m_EditorClassIdentifier:
m_SensorName: PurpleRayPerceptionSensorReverse
m_DetectableTags:
- ball
- wall
- wall
- purpleAgent
- blueAgent
m_RaysPerDirection: 1
m_MaxRayDegrees: 45
m_SphereCastRadius: 0.5

m_Bits: 4294967291
m_Bits: 512
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

m_EditorClassIdentifier:
m_SensorName: BlueRayPerceptionSensorReverse
m_DetectableTags:
- ball
- wall
- wall
- blueAgent
- purpleAgent
m_RaysPerDirection: 1
m_MaxRayDegrees: 45
m_SphereCastRadius: 0.5

m_Bits: 4294967291
m_Bits: 512
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

m_EditorClassIdentifier:
m_SensorName: BlueRayPerceptionSensorReverse
m_DetectableTags:
- ball
- wall
- wall
- blueAgent
- purpleAgent
m_RaysPerDirection: 1
m_MaxRayDegrees: 45
m_SphereCastRadius: 0.5

m_Bits: 4294967291
m_Bits: 512
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

- component: {fileID: 1023485123796557062}
- component: {fileID: 8734522883866558980}
- component: {fileID: 6283479335904612434}
- component: {fileID: 3335939469943012466}
m_Layer: 0
m_Name: PurpleStriker (1)
m_TagString: purpleAgent

m_Name:
m_EditorClassIdentifier:
m_BrainParameters:
VectorObservationSize: 10
VectorObservationSize: 2
BranchSizes: 0a000000
BranchSizes: 02000000
m_Model: {fileID: 5022602860645237092, guid: 0793e0466d1074c3c902e854b9b2a289, type: 3}
m_Model: {fileID: 5022602860645237092, guid: 5edf3e561a5894d03b35cc983c261748, type: 3}
m_InferenceDevice: 0
m_BehaviorType: 0
m_BehaviorName: SoccerTwos

agentParameters:
maxStep: 0
hasUpgradedFromAgentParameters: 1
MaxStep: 3000
MaxStep: 5000
team: 0
area: {fileID: 114559182131992928}
position: 2

m_EditorClassIdentifier:
m_SensorName: PurpleRayPerceptionSensor
m_DetectableTags:
- ball
- wall
- wall
- purpleAgent
- blueAgent
m_RaysPerDirection: 5

m_RayLayerMask:
serializedVersion: 2
m_Bits: 4294967291
m_Bits: 819
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

m_Name:
m_EditorClassIdentifier:
debugCommandLineOverride:
--- !u!114 &3335939469943012466
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6257467487437560250}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6bb6b867a41448888c1cd4f99643ad71, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SensorName: BallPurpleRayPerceptionSensor
m_DetectableTags:
- wall
- purpleGoal
- blueGoal
- ball
m_RaysPerDirection: 5
m_MaxRayDegrees: 30
m_SphereCastRadius: 0.5
m_RayLength: 20
m_RayLayerMask:
serializedVersion: 2
m_Bits: 1536
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}
m_StartVerticalOffset: 0.5
m_EndVerticalOffset: 0.5
--- !u!1 &6442519122303792292
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 2562571719799803906}
- component: {fileID: 1018414316889932458}
- component: {fileID: 6939753220642424022}
- component: {fileID: 7012862867354099991}
m_Layer: 0
m_Name: BlueStriker (1)
m_TagString: blueAgent

m_Name:
m_EditorClassIdentifier:
m_BrainParameters:
VectorObservationSize: 10
VectorObservationSize: 2
BranchSizes: 0a000000
BranchSizes: 02000000
m_Model: {fileID: 5022602860645237092, guid: 0793e0466d1074c3c902e854b9b2a289, type: 3}
m_Model: {fileID: 5022602860645237092, guid: 5edf3e561a5894d03b35cc983c261748, type: 3}
m_InferenceDevice: 0
m_BehaviorType: 0
m_BehaviorName: SoccerTwos

agentParameters:
maxStep: 0
hasUpgradedFromAgentParameters: 1
MaxStep: 3000
MaxStep: 5000
team: 0
area: {fileID: 114559182131992928}
position: 2

m_EditorClassIdentifier:
m_SensorName: BlueRayPerceptionSensor
m_DetectableTags:
- ball
- wall
- wall
- blueAgent
- purpleAgent
m_RaysPerDirection: 5

m_RayLayerMask:
serializedVersion: 2
m_Bits: 4294967291
m_Bits: 819
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

m_Name:
m_EditorClassIdentifier:
debugCommandLineOverride:
--- !u!114 &7012862867354099991
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8360301818957399454}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6bb6b867a41448888c1cd4f99643ad71, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SensorName: BallBlueRayPerceptionSensor
m_DetectableTags:
- wall
- blueGoal
- purpleGoal
- ball
m_RaysPerDirection: 5
m_MaxRayDegrees: 30
m_SphereCastRadius: 0.5
m_RayLength: 20
m_RayLayerMask:
serializedVersion: 2
m_Bits: 1536
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}
m_StartVerticalOffset: 0.5
m_EndVerticalOffset: 0.5
--- !u!1 &8522824188468050476
GameObject:
m_ObjectHideFlags: 0

m_EditorClassIdentifier:
m_SensorName: PurpleRayPerceptionSensorReverse
m_DetectableTags:
- ball
- wall
- wall
- purpleAgent
- blueAgent
m_RaysPerDirection: 1
m_MaxRayDegrees: 45
m_SphereCastRadius: 0.5

m_Bits: 4294967291
m_Bits: 512
m_ObservationStacks: 3
rayHitColor: {r: 1, g: 0, b: 0, a: 1}
rayMissColor: {r: 1, g: 1, b: 1, a: 1}

2
Project/Assets/ML-Agents/Examples/Soccer/Scripts/AgentSoccerCollab.cs


int m_Previous = 0;
float[] m_Message = new float[10];
float[] m_Message = new float[2];
public GameObject teammate_gb;
AgentSoccerCollab teammate;

39
config/ppo/SoccerTwos.yaml


network_settings:
normalize: false
hidden_units: 512
num_layers: 2
num_layers: 3
vis_encode_type: simple
reward_signals:
extrinsic:

window: 10
play_against_latest_model_ratio: 0.5
initial_elo: 1200.0
environment_parameters:
ball_touch:
curriculum:
- name: Lesson0
completion_criteria:
measure: progress
behavior: SoccerTwos
signal_smoothing: true
min_lesson_length: 100
threshold: 0.0005
value: 1.0
- name: Lesson1
completion_criteria:
measure: progress
behavior: SoccerTwos
signal_smoothing: true
min_lesson_length: 100
threshold: 0.001
value: 0.5
- name: Lesson2
completion_criteria:
measure: progress
behavior: SoccerTwos
signal_smoothing: true
min_lesson_length: 100
threshold: 0.0015
value: 0.1
- name: Lesson3
completion_criteria:
measure: progress
behavior: SoccerTwos
signal_smoothing: true
min_lesson_length: 100
threshold: 0.002
value: 0.0
num_envs: 4
num_envs: 2

2
ml-agents/mlagents/trainers/trainer_controller.py


def reset_env_if_ready(self, env: EnvManager) -> None:
# Get the sizes of the reward buffers.
reward_buff = {k: list(t.reward_buffer) for (k, t) in self.trainers.items()}
curr_step = {k: int(t.step) for (k, t) in self.trainers.items()}
curr_step = {k: int(t.get_step) for (k, t) in self.trainers.items()}
max_step = {k: int(t.get_max_steps) for (k, t) in self.trainers.items()}
# Attempt to increment the lessons of the brains who
# were ready.

正在加载...
取消
保存