Reinforcement Learning
ml-agents
TensorBoard
ONNX
Pyramids
deep-reinforcement-learning
ML-Agents-Pyramids
Instructions to use AnnaMats/ppo-Pyramids-Training with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- ml-agents
How to use AnnaMats/ppo-Pyramids-Training with ml-agents:
mlagents-load-from-hf --repo-id="AnnaMats/ppo-Pyramids-Training" --local-dir="./download: string[]s"
- Notebooks
- Google Colab
- Kaggle
| // <auto-generated> | |
| // Generated by the protocol buffer compiler. DO NOT EDIT! | |
| // source: mlagents_envs/communicator_objects/brain_parameters.proto | |
| // </auto-generated> | |
| using pb = global::Google.Protobuf; | |
| using pbc = global::Google.Protobuf.Collections; | |
| using pbr = global::Google.Protobuf.Reflection; | |
| using scg = global::System.Collections.Generic; | |
| namespace Unity.MLAgents.CommunicatorObjects { | |
| /// <summary>Holder for reflection information generated from mlagents_envs/communicator_objects/brain_parameters.proto</summary> | |
| internal static partial class BrainParametersReflection { | |
| /// <summary>File descriptor for mlagents_envs/communicator_objects/brain_parameters.proto</summary> | |
| public static pbr::FileDescriptor Descriptor { | |
| get { return descriptor; } | |
| } | |
| private static pbr::FileDescriptor descriptor; | |
| static BrainParametersReflection() { | |
| byte[] descriptorData = global::System.Convert.FromBase64String( | |
| string.Concat( | |
| "CjltbGFnZW50c19lbnZzL2NvbW11bmljYXRvcl9vYmplY3RzL2JyYWluX3Bh", | |
| "cmFtZXRlcnMucHJvdG8SFGNvbW11bmljYXRvcl9vYmplY3RzGjNtbGFnZW50", | |
| "c19lbnZzL2NvbW11bmljYXRvcl9vYmplY3RzL3NwYWNlX3R5cGUucHJvdG8i", | |
| "iwEKD0FjdGlvblNwZWNQcm90bxIeChZudW1fY29udGludW91c19hY3Rpb25z", | |
| "GAEgASgFEhwKFG51bV9kaXNjcmV0ZV9hY3Rpb25zGAIgASgFEh0KFWRpc2Ny", | |
| "ZXRlX2JyYW5jaF9zaXplcxgDIAMoBRIbChNhY3Rpb25fZGVzY3JpcHRpb25z", | |
| "GAQgAygJIrYCChRCcmFpblBhcmFtZXRlcnNQcm90bxIlCh12ZWN0b3JfYWN0", | |
| "aW9uX3NpemVfZGVwcmVjYXRlZBgDIAMoBRItCiV2ZWN0b3JfYWN0aW9uX2Rl", | |
| "c2NyaXB0aW9uc19kZXByZWNhdGVkGAUgAygJElEKI3ZlY3Rvcl9hY3Rpb25f", | |
| "c3BhY2VfdHlwZV9kZXByZWNhdGVkGAYgASgOMiQuY29tbXVuaWNhdG9yX29i", | |
| "amVjdHMuU3BhY2VUeXBlUHJvdG8SEgoKYnJhaW5fbmFtZRgHIAEoCRITCgtp", | |
| "c190cmFpbmluZxgIIAEoCBI6CgthY3Rpb25fc3BlYxgJIAEoCzIlLmNvbW11", | |
| "bmljYXRvcl9vYmplY3RzLkFjdGlvblNwZWNQcm90b0oECAEQAkoECAIQA0oE", | |
| "CAQQBUIlqgIiVW5pdHkuTUxBZ2VudHMuQ29tbXVuaWNhdG9yT2JqZWN0c2IG", | |
| "cHJvdG8z")); | |
| descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, | |
| new pbr::FileDescriptor[] { global::Unity.MLAgents.CommunicatorObjects.SpaceTypeReflection.Descriptor, }, | |
| new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] { | |
| new pbr::GeneratedClrTypeInfo(typeof(global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto), global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto.Parser, new[]{ "NumContinuousActions", "NumDiscreteActions", "DiscreteBranchSizes", "ActionDescriptions" }, null, null, null), | |
| new pbr::GeneratedClrTypeInfo(typeof(global::Unity.MLAgents.CommunicatorObjects.BrainParametersProto), global::Unity.MLAgents.CommunicatorObjects.BrainParametersProto.Parser, new[]{ "VectorActionSizeDeprecated", "VectorActionDescriptionsDeprecated", "VectorActionSpaceTypeDeprecated", "BrainName", "IsTraining", "ActionSpec" }, null, null, null) | |
| })); | |
| } | |
| } | |
| internal sealed partial class ActionSpecProto : pb::IMessage<ActionSpecProto> { | |
| private static readonly pb::MessageParser<ActionSpecProto> _parser = new pb::MessageParser<ActionSpecProto>(() => new ActionSpecProto()); | |
| private pb::UnknownFieldSet _unknownFields; | |
| [] | |
| public static pb::MessageParser<ActionSpecProto> Parser { get { return _parser; } } | |
| [] | |
| public static pbr::MessageDescriptor Descriptor { | |
| get { return global::Unity.MLAgents.CommunicatorObjects.BrainParametersReflection.Descriptor.MessageTypes[0]; } | |
| } | |
| [] | |
| pbr::MessageDescriptor pb::IMessage.Descriptor { | |
| get { return Descriptor; } | |
| } | |
| [] | |
| public ActionSpecProto() { | |
| OnConstruction(); | |
| } | |
| partial void OnConstruction(); | |
| [] | |
| public ActionSpecProto(ActionSpecProto other) : this() { | |
| numContinuousActions_ = other.numContinuousActions_; | |
| numDiscreteActions_ = other.numDiscreteActions_; | |
| discreteBranchSizes_ = other.discreteBranchSizes_.Clone(); | |
| actionDescriptions_ = other.actionDescriptions_.Clone(); | |
| _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); | |
| } | |
| [] | |
| public ActionSpecProto Clone() { | |
| return new ActionSpecProto(this); | |
| } | |
| /// <summary>Field number for the "num_continuous_actions" field.</summary> | |
| public const int NumContinuousActionsFieldNumber = 1; | |
| private int numContinuousActions_; | |
| [] | |
| public int NumContinuousActions { | |
| get { return numContinuousActions_; } | |
| set { | |
| numContinuousActions_ = value; | |
| } | |
| } | |
| /// <summary>Field number for the "num_discrete_actions" field.</summary> | |
| public const int NumDiscreteActionsFieldNumber = 2; | |
| private int numDiscreteActions_; | |
| [] | |
| public int NumDiscreteActions { | |
| get { return numDiscreteActions_; } | |
| set { | |
| numDiscreteActions_ = value; | |
| } | |
| } | |
| /// <summary>Field number for the "discrete_branch_sizes" field.</summary> | |
| public const int DiscreteBranchSizesFieldNumber = 3; | |
| private static readonly pb::FieldCodec<int> _repeated_discreteBranchSizes_codec | |
| = pb::FieldCodec.ForInt32(26); | |
| private readonly pbc::RepeatedField<int> discreteBranchSizes_ = new pbc::RepeatedField<int>(); | |
| [] | |
| public pbc::RepeatedField<int> DiscreteBranchSizes { | |
| get { return discreteBranchSizes_; } | |
| } | |
| /// <summary>Field number for the "action_descriptions" field.</summary> | |
| public const int ActionDescriptionsFieldNumber = 4; | |
| private static readonly pb::FieldCodec<string> _repeated_actionDescriptions_codec | |
| = pb::FieldCodec.ForString(34); | |
| private readonly pbc::RepeatedField<string> actionDescriptions_ = new pbc::RepeatedField<string>(); | |
| [] | |
| public pbc::RepeatedField<string> ActionDescriptions { | |
| get { return actionDescriptions_; } | |
| } | |
| [] | |
| public override bool Equals(object other) { | |
| return Equals(other as ActionSpecProto); | |
| } | |
| [] | |
| public bool Equals(ActionSpecProto other) { | |
| if (ReferenceEquals(other, null)) { | |
| return false; | |
| } | |
| if (ReferenceEquals(other, this)) { | |
| return true; | |
| } | |
| if (NumContinuousActions != other.NumContinuousActions) return false; | |
| if (NumDiscreteActions != other.NumDiscreteActions) return false; | |
| if(!discreteBranchSizes_.Equals(other.discreteBranchSizes_)) return false; | |
| if(!actionDescriptions_.Equals(other.actionDescriptions_)) return false; | |
| return Equals(_unknownFields, other._unknownFields); | |
| } | |
| [] | |
| public override int GetHashCode() { | |
| int hash = 1; | |
| if (NumContinuousActions != 0) hash ^= NumContinuousActions.GetHashCode(); | |
| if (NumDiscreteActions != 0) hash ^= NumDiscreteActions.GetHashCode(); | |
| hash ^= discreteBranchSizes_.GetHashCode(); | |
| hash ^= actionDescriptions_.GetHashCode(); | |
| if (_unknownFields != null) { | |
| hash ^= _unknownFields.GetHashCode(); | |
| } | |
| return hash; | |
| } | |
| [] | |
| public override string ToString() { | |
| return pb::JsonFormatter.ToDiagnosticString(this); | |
| } | |
| [] | |
| public void WriteTo(pb::CodedOutputStream output) { | |
| if (NumContinuousActions != 0) { | |
| output.WriteRawTag(8); | |
| output.WriteInt32(NumContinuousActions); | |
| } | |
| if (NumDiscreteActions != 0) { | |
| output.WriteRawTag(16); | |
| output.WriteInt32(NumDiscreteActions); | |
| } | |
| discreteBranchSizes_.WriteTo(output, _repeated_discreteBranchSizes_codec); | |
| actionDescriptions_.WriteTo(output, _repeated_actionDescriptions_codec); | |
| if (_unknownFields != null) { | |
| _unknownFields.WriteTo(output); | |
| } | |
| } | |
| [] | |
| public int CalculateSize() { | |
| int size = 0; | |
| if (NumContinuousActions != 0) { | |
| size += 1 + pb::CodedOutputStream.ComputeInt32Size(NumContinuousActions); | |
| } | |
| if (NumDiscreteActions != 0) { | |
| size += 1 + pb::CodedOutputStream.ComputeInt32Size(NumDiscreteActions); | |
| } | |
| size += discreteBranchSizes_.CalculateSize(_repeated_discreteBranchSizes_codec); | |
| size += actionDescriptions_.CalculateSize(_repeated_actionDescriptions_codec); | |
| if (_unknownFields != null) { | |
| size += _unknownFields.CalculateSize(); | |
| } | |
| return size; | |
| } | |
| [] | |
| public void MergeFrom(ActionSpecProto other) { | |
| if (other == null) { | |
| return; | |
| } | |
| if (other.NumContinuousActions != 0) { | |
| NumContinuousActions = other.NumContinuousActions; | |
| } | |
| if (other.NumDiscreteActions != 0) { | |
| NumDiscreteActions = other.NumDiscreteActions; | |
| } | |
| discreteBranchSizes_.Add(other.discreteBranchSizes_); | |
| actionDescriptions_.Add(other.actionDescriptions_); | |
| _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); | |
| } | |
| [] | |
| public void MergeFrom(pb::CodedInputStream input) { | |
| uint tag; | |
| while ((tag = input.ReadTag()) != 0) { | |
| switch(tag) { | |
| default: | |
| _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); | |
| break; | |
| case 8: { | |
| NumContinuousActions = input.ReadInt32(); | |
| break; | |
| } | |
| case 16: { | |
| NumDiscreteActions = input.ReadInt32(); | |
| break; | |
| } | |
| case 26: | |
| case 24: { | |
| discreteBranchSizes_.AddEntriesFrom(input, _repeated_discreteBranchSizes_codec); | |
| break; | |
| } | |
| case 34: { | |
| actionDescriptions_.AddEntriesFrom(input, _repeated_actionDescriptions_codec); | |
| break; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| internal sealed partial class BrainParametersProto : pb::IMessage<BrainParametersProto> { | |
| private static readonly pb::MessageParser<BrainParametersProto> _parser = new pb::MessageParser<BrainParametersProto>(() => new BrainParametersProto()); | |
| private pb::UnknownFieldSet _unknownFields; | |
| [] | |
| public static pb::MessageParser<BrainParametersProto> Parser { get { return _parser; } } | |
| [] | |
| public static pbr::MessageDescriptor Descriptor { | |
| get { return global::Unity.MLAgents.CommunicatorObjects.BrainParametersReflection.Descriptor.MessageTypes[1]; } | |
| } | |
| [] | |
| pbr::MessageDescriptor pb::IMessage.Descriptor { | |
| get { return Descriptor; } | |
| } | |
| [] | |
| public BrainParametersProto() { | |
| OnConstruction(); | |
| } | |
| partial void OnConstruction(); | |
| [] | |
| public BrainParametersProto(BrainParametersProto other) : this() { | |
| vectorActionSizeDeprecated_ = other.vectorActionSizeDeprecated_.Clone(); | |
| vectorActionDescriptionsDeprecated_ = other.vectorActionDescriptionsDeprecated_.Clone(); | |
| vectorActionSpaceTypeDeprecated_ = other.vectorActionSpaceTypeDeprecated_; | |
| brainName_ = other.brainName_; | |
| isTraining_ = other.isTraining_; | |
| ActionSpec = other.actionSpec_ != null ? other.ActionSpec.Clone() : null; | |
| _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); | |
| } | |
| [] | |
| public BrainParametersProto Clone() { | |
| return new BrainParametersProto(this); | |
| } | |
| /// <summary>Field number for the "vector_action_size_deprecated" field.</summary> | |
| public const int VectorActionSizeDeprecatedFieldNumber = 3; | |
| private static readonly pb::FieldCodec<int> _repeated_vectorActionSizeDeprecated_codec | |
| = pb::FieldCodec.ForInt32(26); | |
| private readonly pbc::RepeatedField<int> vectorActionSizeDeprecated_ = new pbc::RepeatedField<int>(); | |
| /// <summary> | |
| /// mark as deprecated in communicator v1.3.0 | |
| /// </summary> | |
| [] | |
| public pbc::RepeatedField<int> VectorActionSizeDeprecated { | |
| get { return vectorActionSizeDeprecated_; } | |
| } | |
| /// <summary>Field number for the "vector_action_descriptions_deprecated" field.</summary> | |
| public const int VectorActionDescriptionsDeprecatedFieldNumber = 5; | |
| private static readonly pb::FieldCodec<string> _repeated_vectorActionDescriptionsDeprecated_codec | |
| = pb::FieldCodec.ForString(42); | |
| private readonly pbc::RepeatedField<string> vectorActionDescriptionsDeprecated_ = new pbc::RepeatedField<string>(); | |
| /// <summary> | |
| /// mark as deprecated in communicator v1.3.0 | |
| /// </summary> | |
| [] | |
| public pbc::RepeatedField<string> VectorActionDescriptionsDeprecated { | |
| get { return vectorActionDescriptionsDeprecated_; } | |
| } | |
| /// <summary>Field number for the "vector_action_space_type_deprecated" field.</summary> | |
| public const int VectorActionSpaceTypeDeprecatedFieldNumber = 6; | |
| private global::Unity.MLAgents.CommunicatorObjects.SpaceTypeProto vectorActionSpaceTypeDeprecated_ = 0; | |
| /// <summary> | |
| /// mark as deprecated in communicator v1.3.0 | |
| /// </summary> | |
| [] | |
| public global::Unity.MLAgents.CommunicatorObjects.SpaceTypeProto VectorActionSpaceTypeDeprecated { | |
| get { return vectorActionSpaceTypeDeprecated_; } | |
| set { | |
| vectorActionSpaceTypeDeprecated_ = value; | |
| } | |
| } | |
| /// <summary>Field number for the "brain_name" field.</summary> | |
| public const int BrainNameFieldNumber = 7; | |
| private string brainName_ = ""; | |
| [] | |
| public string BrainName { | |
| get { return brainName_; } | |
| set { | |
| brainName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); | |
| } | |
| } | |
| /// <summary>Field number for the "is_training" field.</summary> | |
| public const int IsTrainingFieldNumber = 8; | |
| private bool isTraining_; | |
| [] | |
| public bool IsTraining { | |
| get { return isTraining_; } | |
| set { | |
| isTraining_ = value; | |
| } | |
| } | |
| /// <summary>Field number for the "action_spec" field.</summary> | |
| public const int ActionSpecFieldNumber = 9; | |
| private global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto actionSpec_; | |
| [] | |
| public global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto ActionSpec { | |
| get { return actionSpec_; } | |
| set { | |
| actionSpec_ = value; | |
| } | |
| } | |
| [] | |
| public override bool Equals(object other) { | |
| return Equals(other as BrainParametersProto); | |
| } | |
| [] | |
| public bool Equals(BrainParametersProto other) { | |
| if (ReferenceEquals(other, null)) { | |
| return false; | |
| } | |
| if (ReferenceEquals(other, this)) { | |
| return true; | |
| } | |
| if(!vectorActionSizeDeprecated_.Equals(other.vectorActionSizeDeprecated_)) return false; | |
| if(!vectorActionDescriptionsDeprecated_.Equals(other.vectorActionDescriptionsDeprecated_)) return false; | |
| if (VectorActionSpaceTypeDeprecated != other.VectorActionSpaceTypeDeprecated) return false; | |
| if (BrainName != other.BrainName) return false; | |
| if (IsTraining != other.IsTraining) return false; | |
| if (!object.Equals(ActionSpec, other.ActionSpec)) return false; | |
| return Equals(_unknownFields, other._unknownFields); | |
| } | |
| [] | |
| public override int GetHashCode() { | |
| int hash = 1; | |
| hash ^= vectorActionSizeDeprecated_.GetHashCode(); | |
| hash ^= vectorActionDescriptionsDeprecated_.GetHashCode(); | |
| if (VectorActionSpaceTypeDeprecated != 0) hash ^= VectorActionSpaceTypeDeprecated.GetHashCode(); | |
| if (BrainName.Length != 0) hash ^= BrainName.GetHashCode(); | |
| if (IsTraining != false) hash ^= IsTraining.GetHashCode(); | |
| if (actionSpec_ != null) hash ^= ActionSpec.GetHashCode(); | |
| if (_unknownFields != null) { | |
| hash ^= _unknownFields.GetHashCode(); | |
| } | |
| return hash; | |
| } | |
| [] | |
| public override string ToString() { | |
| return pb::JsonFormatter.ToDiagnosticString(this); | |
| } | |
| [] | |
| public void WriteTo(pb::CodedOutputStream output) { | |
| vectorActionSizeDeprecated_.WriteTo(output, _repeated_vectorActionSizeDeprecated_codec); | |
| vectorActionDescriptionsDeprecated_.WriteTo(output, _repeated_vectorActionDescriptionsDeprecated_codec); | |
| if (VectorActionSpaceTypeDeprecated != 0) { | |
| output.WriteRawTag(48); | |
| output.WriteEnum((int) VectorActionSpaceTypeDeprecated); | |
| } | |
| if (BrainName.Length != 0) { | |
| output.WriteRawTag(58); | |
| output.WriteString(BrainName); | |
| } | |
| if (IsTraining != false) { | |
| output.WriteRawTag(64); | |
| output.WriteBool(IsTraining); | |
| } | |
| if (actionSpec_ != null) { | |
| output.WriteRawTag(74); | |
| output.WriteMessage(ActionSpec); | |
| } | |
| if (_unknownFields != null) { | |
| _unknownFields.WriteTo(output); | |
| } | |
| } | |
| [] | |
| public int CalculateSize() { | |
| int size = 0; | |
| size += vectorActionSizeDeprecated_.CalculateSize(_repeated_vectorActionSizeDeprecated_codec); | |
| size += vectorActionDescriptionsDeprecated_.CalculateSize(_repeated_vectorActionDescriptionsDeprecated_codec); | |
| if (VectorActionSpaceTypeDeprecated != 0) { | |
| size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) VectorActionSpaceTypeDeprecated); | |
| } | |
| if (BrainName.Length != 0) { | |
| size += 1 + pb::CodedOutputStream.ComputeStringSize(BrainName); | |
| } | |
| if (IsTraining != false) { | |
| size += 1 + 1; | |
| } | |
| if (actionSpec_ != null) { | |
| size += 1 + pb::CodedOutputStream.ComputeMessageSize(ActionSpec); | |
| } | |
| if (_unknownFields != null) { | |
| size += _unknownFields.CalculateSize(); | |
| } | |
| return size; | |
| } | |
| [] | |
| public void MergeFrom(BrainParametersProto other) { | |
| if (other == null) { | |
| return; | |
| } | |
| vectorActionSizeDeprecated_.Add(other.vectorActionSizeDeprecated_); | |
| vectorActionDescriptionsDeprecated_.Add(other.vectorActionDescriptionsDeprecated_); | |
| if (other.VectorActionSpaceTypeDeprecated != 0) { | |
| VectorActionSpaceTypeDeprecated = other.VectorActionSpaceTypeDeprecated; | |
| } | |
| if (other.BrainName.Length != 0) { | |
| BrainName = other.BrainName; | |
| } | |
| if (other.IsTraining != false) { | |
| IsTraining = other.IsTraining; | |
| } | |
| if (other.actionSpec_ != null) { | |
| if (actionSpec_ == null) { | |
| actionSpec_ = new global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto(); | |
| } | |
| ActionSpec.MergeFrom(other.ActionSpec); | |
| } | |
| _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); | |
| } | |
| [] | |
| public void MergeFrom(pb::CodedInputStream input) { | |
| uint tag; | |
| while ((tag = input.ReadTag()) != 0) { | |
| switch(tag) { | |
| default: | |
| _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); | |
| break; | |
| case 26: | |
| case 24: { | |
| vectorActionSizeDeprecated_.AddEntriesFrom(input, _repeated_vectorActionSizeDeprecated_codec); | |
| break; | |
| } | |
| case 42: { | |
| vectorActionDescriptionsDeprecated_.AddEntriesFrom(input, _repeated_vectorActionDescriptionsDeprecated_codec); | |
| break; | |
| } | |
| case 48: { | |
| vectorActionSpaceTypeDeprecated_ = (global::Unity.MLAgents.CommunicatorObjects.SpaceTypeProto) input.ReadEnum(); | |
| break; | |
| } | |
| case 58: { | |
| BrainName = input.ReadString(); | |
| break; | |
| } | |
| case 64: { | |
| IsTraining = input.ReadBool(); | |
| break; | |
| } | |
| case 74: { | |
| if (actionSpec_ == null) { | |
| actionSpec_ = new global::Unity.MLAgents.CommunicatorObjects.ActionSpecProto(); | |
| } | |
| input.ReadMessage(actionSpec_); | |
| break; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |