Search Unity

Runtime Training and/or alternatives

Discussion in 'ML-Agents' started by Fressbrett, Jun 30, 2020.

  1. Fressbrett

    Fressbrett

    Joined:
    Apr 11, 2018
    Posts:
    97
    Hello everyone!
    For my bachelor thesis I was planning on creating a little Machine Learning sandbox game, where Agents are trained during runtime.

    ML-Agents seems like l good fit, apart from the fact that accoring to posts from over a year ago this was not something achievable with ML-Agents due to the python dependency. I now wonder if that is still the case.

    If so, does anyone know any other workarounds (maybe manually implementing reinforcement networks in C#, or somehow including python dependencies in the build??).

    I would really like to stick with Unity for this project and train my agents from inside the build. This doesn't have to be platform independend, it should only need to run on Windows.

    Any pointer into a direction that could allow me to achieve that goal are heavily appreciated :)

    Thank you all
    Florian
     
  2. sohojoe

    sohojoe

    Joined:
    Feb 13, 2015
    Posts:
    21
    Hi @Fressbrett - you still need python. Those issues impact you if you are trying to ship a commercial product. For a research product, you could stick with python. There are flags you can set on the python end that stop the environment from running faster than in real-time. The bigger issue is how to do something that feels like it is training in real-time with a single environment. Typically RL needs a ton of observations to learn. You could read up on meta-learning and/or continual learning as these research areas address some of these issues
     
  3. Fressbrett

    Fressbrett

    Joined:
    Apr 11, 2018
    Posts:
    97
    Thank you! Regarding the need of python, I just stubled on Tensorflow.NET which pretty much fully ports Tensorflow to C#.

    Do you think that could be a fit?