Skip to main content

Revolve2: Standard tools, parameters, terrains, robots and more for simulations and experiments.

Project description

Revolve2

Revolve2 is a collection of Python packages used for researching evolutionary algorithms and modular robotics. Its primary features are a modular robot framework, an abstraction layer around physics simulators, and evolutionary algorithms.

Documentation: ci-group.github.io/revolve2

Installation: ci-group.github.io/revolve2/installation

Get help: github.com/ci-group/revolve2/discussions/categories/ask-for-help

DOI License: LGPL v3 CI

Sample

Here we create and simulate a modular robot, and then calculate how far it moved over the xy plane. This is a shortened version of examples/evaluate_single_robot.

# (...) Omitted preamble

# Create a modular robot.
body = modular_robots_v1.gecko_v1()
brain = BrainCpgNetworkNeighborRandom(body=body, rng=rng)
robot = ModularRobot(body, brain)

# Create a scene.
scene = ModularRobotScene(terrain=terrains.flat())
scene.add_robot(robot)

# Create a simulator.
simulator = LocalSimulator(headless=False)

# Simulate the scene and obtain states sampled during the simulation.
scene_states = simulate_scenes(
    simulator=simulator,
    batch_parameters=make_standard_batch_parameters(),
    scenes=scene,
)

# Get the state at the beginning and end of the simulation.
scene_state_begin = scene_states[0]
scene_state_end = scene_states[-1]

# Retrieve the states of the modular robot.
robot_state_begin = scene_state_begin.get_modular_robot_simulation_state(robot)
robot_state_end = scene_state_end.get_modular_robot_simulation_state(robot)

# Calculate the xy displacement of the robot.
xy_displacement = fitness_functions.xy_displacement(
    robot_state_begin, robot_state_end
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

revolve2_standards-1.2.4-cp311-cp311-win_amd64.whl (196.4 kB view details)

Uploaded CPython 3.11Windows x86-64

revolve2_standards-1.2.4-cp311-cp311-musllinux_1_1_x86_64.whl (984.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ x86-64

revolve2_standards-1.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (973.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

revolve2_standards-1.2.4-cp311-cp311-macosx_14_0_arm64.whl (373.9 kB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

revolve2_standards-1.2.4-cp310-cp310-win_amd64.whl (121.1 kB view details)

Uploaded CPython 3.10Windows x86-64

revolve2_standards-1.2.4-cp310-cp310-musllinux_1_1_x86_64.whl (511.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

revolve2_standards-1.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (503.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

revolve2_standards-1.2.4-cp310-cp310-macosx_14_0_arm64.whl (210.4 kB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

Details for the file revolve2_standards-1.2.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bb4ce8c187afb6d7560b1e4dae0f86f2b3920209fe469d89703dfaa212076b9a
MD5 729fe2304002f3e8cfe6e45f2fa8e38d
BLAKE2b-256 bda9fcc692482c356cb44bf1f5f55115505ca6bb502459c4749bbcc59bc179bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp311-cp311-win_amd64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 780aac94548160de02d0831476b62c30723dd73236ba7089e8455e0cb49fac70
MD5 49e8a87e51b8d89d70f6dd7594af6651
BLAKE2b-256 ee0355dcb4c7b9934fd423cc6cb16da3f6db03752c54a2349328553bd7bebfa9

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp311-cp311-musllinux_1_1_x86_64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f3f2d4acd9d77ce6fb3539b441ac89b2ff6b687dd3a061131f301c593207cb4
MD5 139309ea8d1391242ea2e369ab65ea6c
BLAKE2b-256 9101f0350d3608ce3f72108e1259ca4daf52e1d7b63d17f8e2d12e0bb8e2d112

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f38f365168b30631b33136ed249f3926fee6bf662e79aa37f355f8c01507fd25
MD5 ddf20f1897c1d948c86e0bab2e9dc32c
BLAKE2b-256 1b57a6cc69a0bdf19fd18628b0772dfb6874f795a274663b6796868c03f0cd83

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9d9d879c297c799fffa9e63b2e24fd4435d750687c917dcc2166dc35ba01076a
MD5 34abe944b9bd7103e20c0659def35562
BLAKE2b-256 4a8ba66a2d08222b18d920f1971f64e54719e7ba4000edf5160828ab6812fc9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp310-cp310-win_amd64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0be159b970b59279b1abfb24b970a348c1bd1be52c789d0d1401abdc648b21b8
MD5 4989680c8c6761b00397dba75c9479dc
BLAKE2b-256 7f442452c58dc1db828460ef75ab87f2bda0dc69923132b8aeb9022ed2c3c950

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp310-cp310-musllinux_1_1_x86_64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b82fcce7a83f443ba0007dfcd49c87edce8348b096055ff459c7f9192e37af8
MD5 6521e49737810865b83df127a20910c3
BLAKE2b-256 b247028a099c350d42d2a46786df09c2b89a09cb86ca8c688f8bd8d0f95450ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file revolve2_standards-1.2.4-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for revolve2_standards-1.2.4-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 9fb2c08dfa4d9391715d5b259171563635304ac9fef0783b61253dff5f69ef94
MD5 ec24c3a15b28da8d04557355c76f00f0
BLAKE2b-256 07d1b277433cffbefec616194e658f3c0b63a342d32fd03f7471053540a81cc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for revolve2_standards-1.2.4-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: main.yml on ci-group/revolve2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page