ARIEL β€” A Robot Evolution FrameworkΒΆ

Ariel Logo

ARIEL is a Python package that provides efficient and easy-to-use tools for evolutionary computing and evolutionary robotics. Designed with a clear API, sensible defaults, and support for both beginners and advanced users, ARIEL lets you go from idea to evolving robot with minimal boilerplate.


Why ARIEL?ΒΆ

ARIEL brings together the full evolutionary robotics pipeline in a single, cohesive package:

  • End-to-end: genome encoding β†’ evolution β†’ simulation β†’ result analysis.

  • Batteries included: pre-built robot bodies, CPG controllers, and EA operators so you spend time on science, not scaffolding.

  • Flexible: swap genotype representations (NDE, CPPN, Tree, Vector) or optimisers without rewriting your experiment.

  • Scalable: native support for parallel evaluation via Ray.

  • Reproducible: built-in database logging and pandas/polars/SQLite export for every run.

Framework

🧬 Body–Brain Co-Design

🧠 Learning

πŸ€– Physical Twins

⚑ Async Evo & Learning

πŸ§ͺ Built-in Simulation

πŸ–₯️ GUI

πŸ—„οΈ Database Integration

🧩 Modularity

RoboGen

βœ…

❌

βœ…

❌

βœ…

❌

❌

βœ…

JBotEvolver

βœ…

βœ…

❌

❌

βœ…

❌

❌

βœ…

2D-VSR Sim

❌

βœ…

❌

❌

βœ…

❌

❌

❌

Evolution Gym

βœ…

❌

❌

❌

βœ…

❌

❌

βœ…

POEM

βœ…

βœ…

❌

❌

❌

❌

❌

❌

Framsticks

βœ…

❌

❌

❌

βœ…

βœ…

❌

βœ…

EvoSoro/PyroSim

βœ…

❌

❌

❌

βœ…

❌

❌

βœ…

Revolve

βœ…

βœ…

βœ…

❌

βœ…

❌

❌

βœ…

EvoTorch

❌

βœ…

❌

❌

❌

❌

❌

βœ…

DEAP

❌

❌

❌

❌

❌

❌

❌

βœ…

ARIEL

βœ…

βœ…

βœ…

βœ…

βœ…

βœ…

βœ…

βœ…


FeaturesΒΆ

Feature

Description

Evolutionary Algorithms

Ready-to-use EA operators for both continuous and discrete problems.

Multiple Genotype Encodings

NDE, CPPN, Tree, and Vector representations, each with evolutionary operators.

Robot Systems

Modular robot morphology and the ARIEL Lynx Arm, simulated in MuJoCo.

Simulation & Control

CPG-based controllers (simple, NA-CPG, normalised) and prebuilt terrains.

Parallelisation

Scale evaluations across cores or machines with Ray integration.

Database & Analysis

Automatic SQLite experiment logging with pandas, polars, and sqlite3 query examples.

Visualisation

GUI (in progress) and analysis utilities for plotting fitness progression and robot behaviour.

MuJoCo Integration

Full access to MuJoCo data variables β€” forces, sensors, spatial transforms, and more.


InstallationΒΆ

See the Installation Guide for full details, including:

  • Supported platforms and prerequisites

  • Installing with uv or VS Code Dev Containers (recommended)

  • Verifying your installation

  • Troubleshooting tips


ContentsΒΆ


LicenseΒΆ

Copyright Β© 2025, ARIEL.
All rights reserved.