rlu_locomoción

  • Descripción :

RL Unplugged es un conjunto de puntos de referencia para el aprendizaje por refuerzo fuera de línea. El RL Unplugged está diseñado en torno a las siguientes consideraciones: para facilitar el uso, proporcionamos los conjuntos de datos con una API unificada que facilita al profesional trabajar con todos los datos en la suite una vez que se ha establecido una canalización general.

Los conjuntos de datos siguen el formato RLDS para representar pasos y episodios.

Estas tareas se componen de las tareas de locomoción del corredor que involucran al CMU Humanoid, para las cuales los esfuerzos anteriores han utilizado datos de captura de movimiento Merel et al., 2019a , Merel et al., 2019b o entrenamiento desde cero Song et al., 2020 . Además, el repositorio de DM Locomotion contiene un conjunto de tareas adaptadas para adaptarse a un roedor virtual Merel et al., 2020 . Hacemos hincapié en que las tareas de locomoción de DM presentan la combinación de un control continuo desafiante de alto DoF junto con la percepción de ricas observaciones egocéntricas. Para obtener detalles sobre cómo se generó el conjunto de datos, consulte el documento.

Le recomendamos que pruebe los métodos de RL fuera de línea en el conjunto de datos de DeepMind Locomotion, si está interesado en un conjunto de datos de RL fuera de línea muy desafiante con espacio de acción continua.

@inproceedings{gulcehre2020rl,
 title = {RL Unplugged: A Suite of Benchmarks for Offline Reinforcement Learning},
 author = {Gulcehre, Caglar and Wang, Ziyu and Novikov, Alexander and Paine, Thomas and G'{o}mez, Sergio and Zolna, Konrad and Agarwal, Rishabh and Merel, Josh S and Mankowitz, Daniel J and Paduraru, Cosmin and Dulac-Arnold, Gabriel and Li, Jerry and Norouzi, Mohammad and Hoffman, Matthew and Heess, Nicolas and de Freitas, Nando},
 booktitle = {Advances in Neural Information Processing Systems},
 pages = {7248--7259},
 volume = {33},
 year = {2020}
}

rlu_locomotion/humanoid_corridor (configuración predeterminada)

  • Tamaño del conjunto de datos : 1.88 GiB

  • Divisiones :

Separar Ejemplos
'train' 4,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(56,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'body_height': Tensor(shape=(1,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
                'joints_pos': Tensor(shape=(56,), dtype=float32),
                'joints_vel': Tensor(shape=(56,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (56,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/andador/cuerpo_altura Tensor (1,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/walker/end_effectors_pos Tensor (12,) flotar32
pasos/observación/andador/articulaciones_pos Tensor (56,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (56,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/humanoid_gaps

  • Tamaño del conjunto de datos : 4.57 GiB

  • Divisiones :

Separar Ejemplos
'train' 8,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(56,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'body_height': Tensor(shape=(1,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
                'joints_pos': Tensor(shape=(56,), dtype=float32),
                'joints_vel': Tensor(shape=(56,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (56,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/andador/cuerpo_altura Tensor (1,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/walker/end_effectors_pos Tensor (12,) flotar32
pasos/observación/andador/articulaciones_pos Tensor (56,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (56,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/humanoid_walls

  • Tamaño del conjunto de datos : 2.36 GiB

  • Divisiones :

Separar Ejemplos
'train' 4,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(56,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'body_height': Tensor(shape=(1,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'end_effectors_pos': Tensor(shape=(12,), dtype=float32),
                'joints_pos': Tensor(shape=(56,), dtype=float32),
                'joints_vel': Tensor(shape=(56,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (56,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/andador/cuerpo_altura Tensor (1,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/walker/end_effectors_pos Tensor (12,) flotar32
pasos/observación/andador/articulaciones_pos Tensor (56,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (56,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/rodent_bowl_escape

  • Tamaño del conjunto de datos : 16.46 GiB

  • Divisiones :

Separar Ejemplos
'train' 2,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(38,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'appendages_pos': Tensor(shape=(15,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'joints_pos': Tensor(shape=(30,), dtype=float32),
                'joints_vel': Tensor(shape=(30,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_touch': Tensor(shape=(4,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'tendons_pos': Tensor(shape=(8,), dtype=float32),
                'tendons_vel': Tensor(shape=(8,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (38,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/caminante/apéndices_pos Tensor (15,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/andador/articulaciones_pos Tensor (30,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (30,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_toque Tensor (4,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/andador/tendons_pos Tensor (8,) flotar32
pasos/observación/andador/tendons_vel Tensor (8,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/rodent_gaps

  • Tamaño del conjunto de datos : 8.90 GiB

  • Divisiones :

Separar Ejemplos
'train' 2,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(38,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'appendages_pos': Tensor(shape=(15,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'joints_pos': Tensor(shape=(30,), dtype=float32),
                'joints_vel': Tensor(shape=(30,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_touch': Tensor(shape=(4,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'tendons_pos': Tensor(shape=(8,), dtype=float32),
                'tendons_vel': Tensor(shape=(8,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (38,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/caminante/apéndices_pos Tensor (15,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/andador/articulaciones_pos Tensor (30,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (30,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_toque Tensor (4,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/andador/tendons_pos Tensor (8,) flotar32
pasos/observación/andador/tendons_vel Tensor (8,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/rodent_mazes

  • Tamaño del conjunto de datos : 20.71 GiB

  • Divisiones :

Separar Ejemplos
'train' 2,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(38,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'appendages_pos': Tensor(shape=(15,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'joints_pos': Tensor(shape=(30,), dtype=float32),
                'joints_vel': Tensor(shape=(30,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_touch': Tensor(shape=(4,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'tendons_pos': Tensor(shape=(8,), dtype=float32),
                'tendons_vel': Tensor(shape=(8,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (38,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/caminante/apéndices_pos Tensor (15,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/andador/articulaciones_pos Tensor (30,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (30,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_toque Tensor (4,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/andador/tendons_pos Tensor (8,) flotar32
pasos/observación/andador/tendons_vel Tensor (8,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64

rlu_locomotion/rodent_two_touch

  • Tamaño del conjunto de datos : 23.05 GiB

  • Divisiones :

Separar Ejemplos
'train' 2,000
  • Estructura de características :
FeaturesDict({
    'episode_id': int64,
    'steps': Dataset({
        'action': Tensor(shape=(38,), dtype=float32),
        'discount': float32,
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'observation': FeaturesDict({
            'walker': FeaturesDict({
                'appendages_pos': Tensor(shape=(15,), dtype=float32),
                'egocentric_camera': Image(shape=(64, 64, 3), dtype=uint8),
                'joints_pos': Tensor(shape=(30,), dtype=float32),
                'joints_vel': Tensor(shape=(30,), dtype=float32),
                'sensors_accelerometer': Tensor(shape=(3,), dtype=float32),
                'sensors_gyro': Tensor(shape=(3,), dtype=float32),
                'sensors_touch': Tensor(shape=(4,), dtype=float32),
                'sensors_velocimeter': Tensor(shape=(3,), dtype=float32),
                'tendons_pos': Tensor(shape=(8,), dtype=float32),
                'tendons_vel': Tensor(shape=(8,), dtype=float32),
                'world_zaxis': Tensor(shape=(3,), dtype=float32),
            }),
        }),
        'reward': float32,
    }),
    'timestamp': int64,
})
  • Documentación de características :
Rasgo Clase Forma Tipo D Descripción
CaracterísticasDict
episodio_id Tensor int64
pasos conjunto de datos
pasos/acción Tensor (38,) flotar32
pasos/descuento Tensor flotar32
pasos/es_primero Tensor bool
pasos/es_último Tensor bool
pasos/es_terminal Tensor bool
pasos/observación CaracterísticasDict
pasos/observación/andador CaracterísticasDict
pasos/observación/caminante/apéndices_pos Tensor (15,) flotar32
pasos/observación/caminante/egocentric_camera Imagen (64, 64, 3) uint8
pasos/observación/andador/articulaciones_pos Tensor (30,) flotar32
pasos/observación/andador/articulaciones_vel Tensor (30,) flotar32
pasos/observación/andador/sensores_acelerómetro Tensor (3,) flotar32
pasos/observación/andador/sensores_gyro Tensor (3,) flotar32
pasos/observación/andador/sensores_toque Tensor (4,) flotar32
pasos/observación/andador/sensores_velocimetro Tensor (3,) flotar32
pasos/observación/andador/tendons_pos Tensor (8,) flotar32
pasos/observación/andador/tendons_vel Tensor (8,) flotar32
pasos/observación/caminante/mundo_zaxis Tensor (3,) flotar32
pasos/recompensa Tensor flotar32
marca de tiempo Tensor int64