Artificial Pets

Artificial Pets

Creating artificial agents that can exhibit emotional and social intelligence for human interaction is an open challenge currently tackled through top-down approaches. In this project, we instead aim to do so incrementally, by exploiting the analogy with domestic animals: autonomous agents we create a harmonious relation with through mutual efforts and understanding.
Read more

ABrain

ABrain

ABrain is a C++ library with Python bindings implementing the encoding of ES-HyperNEAT. Its main purpose is to give straightforward access to an expressive genetic space for the manipulation of large-scale neural networks. From the experimenter, it only requires the specification on a robot’s inputs and outputs: the topology and the functionality are emergent properties.
Read more

AMaze

AMaze

AMaze is a pure Python library for sighted learning agents. It combines low computational costs with a high capacity for customization to generate challenging, yet quickly computed, tasks. Its main use is as a benchmark generator to try out different implementation of algorithms from Reinforcement Learning to NeuroEvolution.
Read more

Miscellaneous projects

Splinoids port to python

The Splinoids have an incredibly complex morphological space with 3 human-level senses. However, their current implementation in C++ drastically limits their interoperability with other tools. Either by creating Python bindings or by completely porting the code, the Pynoids/sPlYnoids/Spynoids (pun is a work in progress) would be able to colonize a more favorable ecosystem.

BSc/MSc projects

  • Open-Ended Evolutionary Robotics (~1 student each):
    • Meeting
    • Mating
    • Environment
  • Impact of human teacher on interactive Reinforcement Learning
  • CNN and fully discrete agents in AMaze
  • CPPNs encoding for body-brain co-evolution in Evolutionary Robotics
  • Extending CPPNs with cell-types for multimodal I/O