public Brain GetBrain(string name)
        {
            if (_configuration == null)
            {
                _configuration = AvatarConfiguration.GetConfiguration();
            }

            var brain = ScriptableObject.CreateInstance <LearningBrain>();

            brain.name = name;

            var actionSpaceSize = GetActionVectorSize();
            var descriptionList = new string[actionSpaceSize[0]];

            for (var i = 0; i < actionSpaceSize[0]; i++)
            {
                descriptionList[i] = "Action" + i;
            }

            var brainParameters = new BrainParameters
            {
                numStackedVectorObservations = _configuration["numStackedVectorsObservation"],
                vectorObservationSize        = GetObservationSize(),
                vectorActionSpaceType        = SpaceType.continuous,
                vectorActionSize             = actionSpaceSize,
                cameraResolutions            = new Resolution[] {},
                vectorActionDescriptions     = descriptionList
            };

            brain.brainParameters = brainParameters;
            brain.SetToControlledExternally();

            return(brain);
        }
 void Awake()
 {
     limbsConfig = AvatarConfiguration.GetConfiguration();
     _academy    = FindObjectOfType <ArmMoveAcademy>();
     Debug.Log($"agent {name}, got academy");
 }