Evolving Virtual Creatures... PART II!
Description
Evolving teamwork between virtual creatures.
Description
Last year at UTMIST, the Virtual Creatures Project successfully managed to evolve and train an impressively diverse range of walking and swimming creatures, all just using a simple evolutionary algorithm from 1994. This year, we will take this project to the next level by introducing intelligent teamwork and collaboration between these evolved creatures, using NEAT and modern multi-agent reinforcement learning techniques.
Developers best suited for this project should have a strong interest in evolutionary algorithms and reinforcement learning, have experience with Unity and C#, and be committed to 3-6 hours per week. Email anoop.reh@gmail.com or efetoronto@gmail.com (or DM “Anoop R.” or “Efe T.” in the UTMIST Discord) if you’re interested!
Developer Requirements
Our team is divided into the following three subteams, each of which have their own respective requirements:
The Evolution Subteam is mainly responsible for evolving creatures using ml-agents and NEAT. We are looking for 4 developers that ideally have prior experience with or a strong understanding of:
  • Modern multi-agent reinforcement learning algorithms
  • Evolutionary algorithms, and especially the NEAT algorithm
  • Implementing and performing operations on complex graph structures
  • Working on large codebases in C#
  • The Environment Subteam is mainly responsible for developing the soccer environment in Unity and interfacing it with the creatures. We are looking for 2 developers that ideally have prior experience with or a strong understanding of:
  • Developing 3D physics-based games with Unity and C#
  • Implementing and performing operations on complex graph structures
  • The Visualization Subteam is mainly responsible for developing informative visualizations of both the training process as well as the physical representations of the creatures themselves. We are looking for 2 developers that ideally have prior experience with or a strong understanding of:
  • Insightful data analysis and visualization
  • 3D graphics development in Unity (working with shaders, lighting, VFX, etc.)
  • UI design and implementation in Unity
  • Creating simple 2D and 3D assets (models and textures)
  • The Team
    Team member image
    Evolution Subteam
    4 Developers Needed
    Team member image
    Environment Subteam
    2 Developers Needed
    Team member image
    Visualization Subteam
    2 Developers Needed