github Unity-Technologies/ml-agents 0.15.0
ML-Agents Beta 0.15.0

latest releases: release_21_docs, release_21, python-packages_1.0.0...
pre-release4 years ago

Major Changes

  • Agent.CollectObservations now takes a VectorSensor argument. (#3352, #3389)
  • Added Agent.CollectDiscreteActionMasks virtual method with a DiscreteActionMasker argument to specify which discrete actions are unavailable to the Agent. (#3525)
  • We consolidated our API for DiscreteActionMasker. SetMask takes two arguments : the branch index and the list of masked actions for that branch. (#3525)
  • Beta support for ONNX export was added. If the tf2onnx python package is installed, models will be saved to .onnx as well as .nn format. Note that Barracuda 0.6.0 or later is required to import the .onnx files properly. (#3101)
  • Multi-GPU training and the --multi-gpu option has been removed temporarily. (#3345)
  • All Sensor related code has been moved to the namespace MLAgents.Sensors. (#3519)
  • All SideChannel related code has been moved to the namespace MLAgents.SideChannels. (#3533)
  • The following methods in the Agent class have been deprecated and will be removed in a later release (#3557):
    • InitializeAgent() was renamed to Initialize()
    • AgentAction() was renamed to OnActionReceived()
    • AgentReset() was renamed to OnEpisodeBegin()
    • Done() was renamed to EndEpisode()
    • GiveModel() was renamed to SetModel()

Minor Changes

  • Monitor.cs was moved to Examples. (#3372)
  • Automatic stepping for Academy is now controlled from the AutomaticSteppingEnabled property. (#3376)
  • The GetEpisodeCount, GetStepCount, GetTotalStepCount and methods of Academy were changed to EpisodeCount, StepCount, TotalStepCount properties respectively. (#3376)
  • Several classes were changed from public to internal visibility. (#3390)
  • Academy.RegisterSideChannel and UnregisterSideChannel methods were added. (#3391)
  • A tutorial on adding custom SideChannels was added. (#3391)
  • The stepping logic for the Agent and the Academy has been simplified. (#3448)
  • Update Barracuda to 0.6.1-preview. (#3584)
  • The interface for RayPerceptionSensor.PerceiveStatic() was changed to take an input class and write to an output class, and the method was renamed to Perceive(). (#3527)
  • The checkpoint file suffix was changed from .cptk to .ckpt. (#3470)
  • The command-line argument used to determine the port that an environment will listen on was changed from --port to --mlagents-port. (#3477)
  • DemonstrationRecorder can now record observations outside of the editor. (#3354)
  • DemonstrationRecorder now has an optional path for the demonstrations. This will default to Application.dataPath if not set. (#3354)
  • DemonstrationStore was changed to accept a Stream for its constructor, and was renamed to DemonstrationWriter. (#3354)
  • The method GetStepCount() on the Agent class has been replaced with the property getter StepCount. (#3476)
  • RayPerceptionSensorComponent and related classes now display the debug gizmos whenever the Agent is selected (not just Play mode). (#3484)
  • Most fields on RayPerceptionSensorComponent can now be changed while the editor is in Play mode. The exceptions to this are fields that affect the number of observations. (#3484)
  • Most fields on CameraSensorComponent and RenderTextureSensorComponent were changed to private and replaced by properties with the same name. (#3564)
  • Unused static methods from the Utilities class (ShiftLeft, ReplaceRange, AddRangeNoAlloc, and GetSensorFloatObservationSize) were removed. (#3495)
  • The Agent class is no longer abstract. (#3528)
  • SensorBase was moved out of the package and into the Examples directory. (#3528)
  • AgentInfo.actionMasks has been renamed to AgentInfo.discreteActionMasks. (#3539)
  • DecisionRequester has been made internal (you can still use the DecisionRequesterComponent from the inspector). RepeatAction was renamed toTakeActionsBetweenDecisions for clarity. (#3555)
  • The IFloatProperties interface has been removed. (#3570)
  • Improved inference performance for models with multiple action branches. (#3598)
  • The interfaces to the SideChannel classes (on C# and python) have changed to use new IncomingMessage and OutgoingMessage classes. These should make reading and writing data to the channel easier. (#3596)

Bug Fixes and Improvements

  • Various documentation changes and additions. (#3603, #3574, #3577, #3568, #3567, #3551, #3582)
  • Fixed logging issue with SAC. (#3606)
  • Fixed an issue when using GAIL with less than batch_size number of demonstrations. (#3591)
  • Made Unity lifecycle methods protected (OnEnable, OnDisable). (#3590)
  • SideChannel messages were lost if sent before the first call to reset from Python. (#3573)
  • Updated the ExpertPyramid.demo example demonstration file. (#3613)
  • Updated project version for example environments to 2018.4.18f1. (#3618)
  • Changed the Product Name in the example environments to remove spaces, so that the default build executable file doesn't contain spaces. (#3612)

Don't miss a new ml-agents release

NewReleases is sending notifications on new releases.