Skip to content

Animal-AI supports interdisciplinary research to help better understand human, animal, and artificial cognition.

License

Notifications You must be signed in to change notification settings

Kinds-of-Intelligence-CFI/animal-ai

Repository files navigation

steampunkFOURcrop

Animal-AI

Animal-Artificial Intelligence (Animal-AI) supports interdisciplinary research to help better understand human, animal, and artificial cognition. It aims to support AI research towards unlocking cognitive capabilities and better understanding the space of possible minds. It is designed to facilitate testing across animals, humans, and AI. Animal-AI is an active, open-source software engineering and research project.

agent-cyl-fail agent-cyl-pass
animal-cyl-fail animal-cyl-pass

Table of Contents

Overview

  • Website: here
  • Youtube Channel: here
  • Unity/C# Source Code: here
  • Python Source Code: here

This repository serves as the primary hub for essential information and activities related to the Animal-AI environment. It contains a collection of in-depth guides to the environment, as well as an extensive library of 900 tasks featured in the inaugural Animal-AI Olympics competition.

If you wish to contribute to the project, please familiarize yourself with the Contributing Guide and the Code of Conduct first. A comprehensive documentation of how Animal-AI works is also available here, where you can understand the inner workings of how the environment is built and how it functions (csharp and Python codebases).

The Animal-AI environment and packages are currently tested on Windows 11, Linux, and MacOS, with Python 3.9.x support, but Python 3.6.x+ has been reported to be working also. Linux distros are also working and stable.

Features

Interdisciplinary Research Platform:

  • Facilitates research across human, animal, and artificial cognition
  • Supports cross-disciplinary studies and comparative assessments among humans, animals, and AIs

Comprehensive AI Environment:

  • Provides a versatile platform for AI experiments, from basic setups to advanced configurations
  • Wraps Unity learning environments into both gym(nasium) and PettingZoo formats

Extensive Task Library:

  • Includes multiple example tasks to help you get started
  • Features 900 tasks from the Animal-AI Olympics competition
  • Supports procedural generation of YAML configuration files

Unity Game Engine:

  • Utilizes the Unity3D Game Engine for advanced simulation capabilities
  • Employs the Unity ML-Agents toolkit for AI training
  • Leverages Unity's physics engine for realistic interactions

Cross-Platform Compatibility:

  • Compatible with Windows 10+, Linux, and macOS
  • Supports Python 3.6.x and above

Control Modes:

  • Player Mode: Allows for interactive control of the environment, ideal for human testing
  • Training Mode: Designed for Reinforcement Learning, with support for TensorFlow analysis
  • Facilitates AI model training across various systems

Interactive and Dynamic Environment:

  • Provides interactive elements for complex AI training scenarios
  • Supports dynamic environment generation
  • Includes a variety of objects to create diverse training scenarios for AI

Getting Started

We've prepared a comprehensive set of tutorials to help you get started with the Animal-AI environment. Your first stop should be the Getting Started Guide, which will guide you on where to start and where to go next depending on your interests and experience.

Installation

See here for a detailed installation guide.

(latest release) / (all releases)

For legacy builds of Animal-AI, please see (legacy releases)

Citation

We've published our latest paper on Animal-AI, which you can find here. If you use Animal-AI in your research, please cite our paper:

Voudouris, K., Alhas, I., Schellaert, W., Crosby, M., Holmes, J., Burden, J., Chaubey, N., Donnelly, N., Patel, M., Halina, M,. Hernández-Orallo, J. & Cheke, L. G. (2023). Animal-AI 3: What's New & Why You Should Care. arXiv preprint arXiv:2312.11414.

@article{voudouris2023animal,
  title={Animal-AI 3: What's New \& Why You Should Care},
  author={Voudouris, Konstantinos and Alhas, Ibrahim and Schellaert, Wout and Crosby, Matthew and Holmes, Joel and Burden, John and Chaubey, Niharika and Donnelly, Niall and Patel, Matishalin and Halina, Marta and Hernández-Orallo, José and Cheke, Lucy G.},
  journal={arXiv preprint arXiv:2312.11414},
  year={2023}
}

For further publications related to Animal-AI, see our website here.

Unity ML-Agents

We implement some of Unity's ML-Agent's toolkit in Animal-AI.

Juliani, A., Berges, V., Vckay, E., Gao, Y., Henry, H., Mattar, M., Lange, D. (2018). Unity: A General Platform for Intelligent Agents. arXiv preprint arXiv:1809.02627

Documentation for ML-Agents should be consulted if you want additional resources.

The Animal-AI Community

Animal-AI has been an open-source research project from the beginning, and will continue to be so in the future. We welcome contributions from the community from all backgrounds and experiences, and we are always looking for new ways to collaborate. Do check out our Contributing Guide if you are interested in contributing to the project.