ToProto(string name, bool isTraining) { var brainParametersProto = new CommunicatorObjects.BrainParametersProto { VectorObservationSize = vectorObservationSize, NumStackedVectorObservations = numStackedVectorObservations, VectorActionSize = { vectorActionSize }, VectorActionSpaceType = (CommunicatorObjects.SpaceTypeProto)vectorActionSpaceType, BrainName = name, IsTraining = isTraining }; brainParametersProto.VectorActionDescriptions.AddRange(vectorActionDescriptions); foreach (Resolution res in cameraResolutions) { brainParametersProto.CameraResolutions.Add( new CommunicatorObjects.ResolutionProto { Width = res.width, Height = res.height, GrayScale = res.blackAndWhite }); } return(brainParametersProto); }
/// <summary> /// Converts a Brain into to a Protobuff BrainInfoProto so it can be sent /// </summary> /// <returns>The BrainInfoProto generated.</returns> /// <param name="brainParameters">The BrainParameters.</param> /// <param name="name">The name of the brain.</param> /// <param name="type">The type of brain.</param> public static CommunicatorObjects.BrainParametersProto BrainParametersConvertor( BrainParameters brainParameters, string name, CommunicatorObjects.BrainTypeProto type) { var brainParametersProto = new CommunicatorObjects.BrainParametersProto { VectorObservationSize = brainParameters.vectorObservationSize, NumStackedVectorObservations = brainParameters.numStackedVectorObservations, VectorActionSize = brainParameters.vectorActionSize, VectorActionSpaceType = (CommunicatorObjects.SpaceTypeProto)brainParameters.vectorActionSpaceType, VectorObservationSpaceType = (CommunicatorObjects.SpaceTypeProto)brainParameters.vectorObservationSpaceType, BrainName = name, BrainType = type }; brainParametersProto.VectorActionDescriptions.AddRange( brainParameters.vectorActionDescriptions); foreach (resolution res in brainParameters.cameraResolutions) { brainParametersProto.CameraResolutions.Add( new CommunicatorObjects.ResolutionProto { Width = res.width, Height = res.height, GrayScale = res.blackAndWhite }); } return(brainParametersProto); }
public BrainParameters(CommunicatorObjects.BrainParametersProto brainParametersProto) { vectorObservationSize = brainParametersProto.VectorObservationSize; numStackedVectorObservations = brainParametersProto.NumStackedVectorObservations; vectorActionSize = brainParametersProto.VectorActionSize.ToArray(); vectorActionDescriptions = brainParametersProto.VectorActionDescriptions.ToArray(); vectorActionSpaceType = (SpaceType)brainParametersProto.VectorActionSpaceType; }