OstrichRL: A Musculoskeletal Ostrich Simulation to Study Bio-mechanical Locomotion.

Overview

OstrichRL



This is the repository accompanying the paper OstrichRL: A Musculoskeletal Ostrich Simulation to Study Bio-mechanical Locomotion.

It contains models of a musculoskeletal ostrich and of the Cassie robot, motion capture data, and tasks for the dm_control suite:

  • ostrich-run
  • ostrich-mocap_tracking
  • ostrich-foraging
  • ostrich-run_torque
  • cassie-run
  • cassie-mocap_tracking

Instructions

To install

Download and install OstrichRL:

git clone https://github.com/vittorione94/ostrichrl
pip install -e ostrichrl/

To launch experiments

We recommend using the Tonic RL library.

Download and install Tonic:

git clone https://github.com/fabiopardo/tonic
pip install -e tonic/

To play with the environments and random actions

python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('ostrich-run')" \
--agent "tonic.agents.UniformRandom()"
python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('ostrich-mocap_tracking', task_kwargs=dict(clip='cyclic', test=True, play=True))" \
--agent "tonic.agents.UniformRandom()"
python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('ostrich-foraging')" \
--agent "tonic.agents.UniformRandom()"
python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('ostrich-run_torque')" \
--agent "tonic.agents.UniformRandom()"
python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('cassie-run')" \
--agent "tonic.agents.UniformRandom()"
python -m tonic.play --header "import ostrichrl" \
--env "tonic.environments.ControlSuite('cassie-mocap_tracking', task_kwargs=dict(clip='0100', test=True, play=True))" \
--agent "tonic.agents.UniformRandom()"

To train

python -m tonic.train --header "import ostrichrl, tonic.tensorflow" \
--env "tonic.environments.ControlSuite('ostrich-mocap_tracking', task_kwargs=dict(clip='0047'))" \
--test_env "tonic.environments.ControlSuite('ostrich-mocap_tracking', task_kwargs=dict(clip='0047', test=True))" \
--agent "tonic.tensorflow.agents.TD4()" \
--parallel 8 \
--sequential 5
Owner
Vittorio La Barbera
Current intern @Rokoko. PhD student at RVC blending reinforcement learning and biomechanics. Previously MSc in Computer Graphics, Vision and Imaging @ UCL
Vittorio La Barbera
Cooperative Driving Dataset: a dataset for multi-agent driving scenarios

Cooperative Driving Dataset (CODD) The Cooperative Driving dataset is a synthetic dataset generated using CARLA that contains lidar data from multiple

Eduardo Henrique Arnold 124 Dec 28, 2022
Deep Ensembling with No Overhead for either Training or Testing: The All-Round Blessings of Dynamic Sparsity

[ICLR 2022] Deep Ensembling with No Overhead for either Training or Testing: The All-Round Blessings of Dynamic Sparsity by Shiwei Liu, Tianlong Chen, Zahra Atashgahi, Xiaohan Chen, Ghada Sokar, Elen

VITA 18 Dec 31, 2022
A simple but complete full-attention transformer with a set of promising experimental features from various papers

x-transformers A concise but fully-featured transformer, complete with a set of promising experimental features from various papers. Install $ pip ins

Phil Wang 2.3k Jan 03, 2023
Pip-package for trajectory benchmarking from "Be your own Benchmark: No-Reference Trajectory Metric on Registered Point Clouds", ECMR'21

Map Metrics for Trajectory Quality Map metrics toolkit provides a set of metrics to quantitatively evaluate trajectory quality via estimating consiste

Mobile Robotics Lab. at Skoltech 31 Oct 28, 2022
Python implementation of Wu et al (2018)'s registration fusion

reg-fusion Projection of a central sulcus probability map using the RF-ANTs approach (right hemisphere shown). This is a Python implementation of Wu e

Dan Gale 26 Nov 12, 2021
(CVPR 2021) Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds

BRNet Introduction This is a release of the code of our paper Back-tracing Representative Points for Voting-based 3D Object Detection in Point Clouds,

86 Oct 05, 2022
Data augmentation for NLP, accepted at EMNLP 2021 Findings

AEDA: An Easier Data Augmentation Technique for Text Classification This is the code for the EMNLP 2021 paper AEDA: An Easier Data Augmentation Techni

Akbar Karimi 81 Dec 09, 2022
Official PyTorch implementation of "Rapid Neural Architecture Search by Learning to Generate Graphs from Datasets" (ICLR 2021)

Rapid Neural Architecture Search by Learning to Generate Graphs from Datasets This is the official PyTorch implementation for the paper Rapid Neural A

48 Dec 26, 2022
O-CNN: Octree-based Convolutional Neural Networks for 3D Shape Analysis

O-CNN This repository contains the implementation of our papers related with O-CNN. The code is released under the MIT license. O-CNN: Octree-based Co

Microsoft 607 Dec 28, 2022
(Py)TOD: Tensor-based Outlier Detection, A General GPU-Accelerated Framework

(Py)TOD: Tensor-based Outlier Detection, A General GPU-Accelerated Framework Background: Outlier detection (OD) is a key data mining task for identify

Yue Zhao 127 Jan 05, 2023
A small fun project using python OpenCV, mediapipe, and pydirectinput

Here I tried a small fun project using python OpenCV, mediapipe, and pydirectinput. Here we can control moves car game when yellow color come to right box (press key 'd') left box (press key 'a') lef

Sameh Elisha 3 Nov 17, 2022
PyTorch Autoencoders - Implementing a Variational Autoencoder (VAE) Series in Pytorch.

PyTorch Autoencoders Implementing a Variational Autoencoder (VAE) Series in Pytorch. Inspired by this repository Model List check model paper conferen

Subin An 8 Nov 21, 2022
This is the code used in the paper "Entity Embeddings of Categorical Variables".

This is the code used in the paper "Entity Embeddings of Categorical Variables". If you want to get the original version of the code used for the Kagg

Cheng Guo 845 Nov 29, 2022
A generalist algorithm for cell and nucleus segmentation.

Cellpose | A generalist algorithm for cell and nucleus segmentation. Cellpose was written by Carsen Stringer and Marius Pachitariu. To learn about Cel

MouseLand 733 Dec 29, 2022
Collaborative forensic timeline analysis

Timesketch Table of Contents About Timesketch Getting started Community Contributing About Timesketch Timesketch is an open-source tool for collaborat

Google 2.1k Dec 28, 2022
A PyTorch implementation of EfficientDet.

A PyTorch impl of EfficientDet faithful to the original Google impl w/ ported weights

Ross Wightman 1.4k Jan 07, 2023
Sample Code for "Pessimism Meets Invariance: Provably Efficient Offline Mean-Field Multi-Agent RL"

Sample Code for "Pessimism Meets Invariance: Provably Efficient Offline Mean-Field Multi-Agent RL" This is the official codebase for Pessimism Meets I

3 Sep 19, 2022
Turi Create simplifies the development of custom machine learning models.

Quick Links: Installation | Documentation | WWDC 2019 | WWDC 2018 Turi Create Check out our talks at WWDC 2019 and at WWDC 2018! Turi Create simplifie

Apple 10.9k Jan 01, 2023
Exadel CompreFace is a free and open-source face recognition GitHub project

Exadel CompreFace is a leading free and open-source face recognition system Exadel CompreFace is a free and open-source face recognition service that

Exadel 2.6k Jan 04, 2023
PyTorch implementation of the method described in the paper VoiceLoop: Voice Fitting and Synthesis via a Phonological Loop.

VoiceLoop PyTorch implementation of the method described in the paper VoiceLoop: Voice Fitting and Synthesis via a Phonological Loop. VoiceLoop is a n

Meta Archive 873 Dec 15, 2022