Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
using Fluctio.FluctioSim.Common.Configuration;
using Unity.MLAgents.Actuators;
using UnityEngine;

namespace Fluctio.FluctioSim.Core.Components.MachineLearning.Actuating
{
	[AddComponentMenu(Config.PrefixedName+"/Machine Learning/Actuating/Change Control", Config.ComponentMenuOrder + 520)]
	public class ChangeControl : DirectControl
	{
		
		[SerializeField] private float strength = 0.01f;
		private float _cumulativeChange = 0f;
		
		public override ActionBuffers GetActions()
		{
			var modelActionValue = base.GetActions().GetOneContinuous();
			var valueChange = modelActionValue * strength; //remap [-1; 1] to [-strength; strength]
			_cumulativeChange += valueChange;
			return ActionBuffersExtensions.FromOneContinuous(_cumulativeChange);
		}
		
	}
}