Neural Network Creatures: Multiple Behaviors
With the addition of a single scalar feature and a few different reward functions the creatures can now learn multiple behaviors simultaneously.
Added keyboard controls allow you to take top level control, while low level joint torques achieve the desired goal.
For instance, to train the creature to walk left, you make the new feature -1, and reward all leftward movements. Walk right? Make it 1 and reward all rightward movement. Jump? Make the feature 0 and reward all vertical movement.
Cycle through each action randomly as the creature is trained, so it has to learn to perform each. Now a single neural network not only learns efficient walking strategies, it responds to this overarching "command" feature, and learns how to behave well given a few different goals.
Thanks for watching! You can make and train your own creature with the code here:
https://github.com/JonComo/stumbly