This commit is contained in:
allenzren
2024-09-03 21:03:27 -04:00
commit 8293b0936b
282 changed files with 34664 additions and 0 deletions
+1
View File
@@ -0,0 +1 @@
{"env_name": "PickPlaceCan", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": true, "ignore_done": true, "use_object_obs": true, "use_camera_obs": true, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 96, "camera_widths": 96, "reward_shaping": false, "camera_names": ["robot0_eye_in_hand"], "render_gpu_device_id": 0}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "PickPlaceCan", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": false, "ignore_done": true, "use_object_obs": true, "use_camera_obs": false, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 84, "camera_widths": 84, "reward_shaping": false}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "Lift", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": true, "ignore_done": true, "use_object_obs": true, "use_camera_obs": true, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 96, "camera_widths": 96, "reward_shaping": false, "camera_names": ["robot0_eye_in_hand"], "render_gpu_device_id": 0}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "Lift", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": false, "ignore_done": true, "use_object_obs": true, "use_camera_obs": false, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 84, "camera_widths": 84, "reward_shaping": false}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "NutAssemblySquare", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": true, "ignore_done": true, "use_object_obs": true, "use_camera_obs": true, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 96, "camera_widths": 96, "reward_shaping": false, "camera_names": ["agentview"], "render_gpu_device_id": 0}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "NutAssemblySquare", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": false, "ignore_done": true, "use_object_obs": true, "use_camera_obs": false, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda"], "camera_depths": false, "camera_heights": 84, "camera_widths": 84, "reward_shaping": false}}
@@ -0,0 +1 @@
{"env_name": "TwoArmTransport", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": true, "ignore_done": true, "use_object_obs": true, "use_camera_obs": true, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda", "Panda"], "env_configuration": "single-arm-opposed", "camera_depths": false, "camera_heights": 96, "camera_widths": 96, "reward_shaping": false, "camera_names": ["shouldercamera0", "shouldercamera1"], "render_gpu_device_id": 0}}
+1
View File
@@ -0,0 +1 @@
{"env_name": "TwoArmTransport", "env_version": "1.4.1", "type": 1, "env_kwargs": {"has_renderer": false, "has_offscreen_renderer": false, "ignore_done": true, "use_object_obs": true, "use_camera_obs": false, "control_freq": 20, "controller_configs": {"type": "OSC_POSE", "input_max": 1, "input_min": -1, "output_max": [0.05, 0.05, 0.05, 0.5, 0.5, 0.5], "output_min": [-0.05, -0.05, -0.05, -0.5, -0.5, -0.5], "kp": 150, "damping": 1, "impedance_mode": "fixed", "kp_limits": [0, 300], "damping_limits": [0, 10], "position_limits": null, "orientation_limits": null, "uncouple_pos_ori": true, "control_delta": true, "interpolation": null, "ramp_ratio": 0.2}, "robots": ["Panda", "Panda"], "env_configuration": "single-arm-opposed", "camera_depths": false, "camera_heights": 84, "camera_widths": 84, "reward_shaping": false}}
@@ -0,0 +1,106 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_awr_diffusion_agent.TrainAWRDiffusionAgent
name: ${env_name}_awr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# AWR specific
scale_reward_factor: 1
max_adv_weight: 100
beta: 10
buffer_size: 3000
batch_size: 256
replay_ratio: 64
critic_update_ratio: 4
model:
_target_: model.diffusion.diffusion_awr.AWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.10
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dipo_diffusion_agent.TrainDIPODiffusionAgent
name: ${env_name}_dipo_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DIPO specific
scale_reward_factor: 1
eta: 0.0001
action_gradient_steps: 10
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dipo.DIPODiffusion
# HP to tune
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,106 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dql_diffusion_agent.TrainDQLDiffusionAgent
name: ${env_name}_dql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DQL specific
scale_reward_factor: 1
eta: 1.0
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dql.DQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,115 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_idql_diffusion_agent.TrainIDQLDiffusionAgent
name: ${env_name}_idql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# IDQL specific
scale_reward_factor: 1
eval_deterministic: True
eval_sample_num: 10 # how many samples to score during eval
critic_tau: 0.001 # rate of target q network update
use_expectile_exploration: True
buffer_size: 3000
batch_size: 512
replay_ratio: 16
model:
_target_: model.diffusion.diffusion_idql.IDQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic_q:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
critic_v:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,114 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt # use 8000 for comparing policy parameterizations
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,164 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_img_agent.TrainPPOImgDiffusionAgent
name: ${env_name}_ft_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_img_ta4_td100/2024-07-30_22-23-55/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
ft_denoising_steps: 5
cond_steps: 1
horizon_steps: 4
act_steps: 4
use_ddim: True
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['robot0_eye_in_hand_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 200
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
augment: True
grad_accumulate: 15
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 500
logprob_batch_size: 500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.9
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
use_ddim: ${use_ddim}
ddim_steps: ${ft_denoising_steps}
learn_eta: False
eta:
base_eta: 1
input_dim: ${obs_dim}
mlp_dims: [256, 256]
action_dim: ${action_dim}
min_eta: 0.1
max_eta: 1.0
_target_: model.diffusion.eta.EtaFixed
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
time_dim: 32
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,117 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_unet_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_unet_ta4_td20/2024-06-29_02-49-45/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 40
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,122 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_exact_diffusion_agent.TrainPPOExactDiffusionAgent
name: ${env_name}_ft_exact_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo_exact.PPOExactDiffusion
sde:
_target_: model.diffusion.sde_lib.VPSDE # VP for DDPM
N: ${denoising_steps}
rtol: 1e-4
atol: 1e-4
sde_hutchinson_type: Rademacher
sde_step_size: 0.05
sde_method: euler
sde_num_epsilon: 2
sde_min_beta: 1e-10
sde_probability_flow: True
#
gamma_denoising: 0.99
clip_ploss_coef: 0.01
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,103 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_gaussian_mlp_ta4/2024-06-28_13-31-00/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,141 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_img_agent.TrainPPOImgGaussianAgent
name: ${env_name}_ft_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_gaussian_mlp_img_ta4/2024-07-28_21-54-40/checkpoint/state_1000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['robot0_eye_in_hand_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 200
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
augment: True
grad_accumulate: 5
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 1500
logprob_batch_size: 1000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_gaussian_transformer_ta4/2024-06-28_13-42-20/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_gmm_mlp_ta4/2024-06-28_13-32-19/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,105 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_gmm_transformer_ta4/2024-06-28_13-43-21/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_qsm_diffusion_agent.TrainQSMDiffusionAgent
name: ${env_name}_qsm_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# QSM specific
scale_reward_factor: 1
q_grad_coeff: 50
critic_tau: 0.005 # rate of target q network update
buffer_size: 3000
batch_size: 256
replay_ratio: 32
model:
_target_: model.diffusion.diffusion_qsm.QSMDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,91 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_rwr_diffusion_agent.TrainRWRDiffusionAgent
name: ${env_name}_rwr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/can/can_pre_diffusion_mlp_ta4_td20/2024-06-28_13-29-54/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
lr: 1e-5
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# RWR specific
max_reward_weight: 100
beta: 10
batch_size: 1000
update_epochs: 16
model:
_target_: model.diffusion.diffusion_rwr.RWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,106 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_awr_diffusion_agent.TrainAWRDiffusionAgent
name: ${env_name}_awr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# AWR specific
scale_reward_factor: 1
max_adv_weight: 100
beta: 10
buffer_size: 3000
batch_size: 256
replay_ratio: 64
critic_update_ratio: 4
model:
_target_: model.diffusion.diffusion_awr.AWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.10
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dipo_diffusion_agent.TrainDIPODiffusionAgent
name: ${env_name}_dipo_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DIPO specific
scale_reward_factor: 1
eta: 0.0001
action_gradient_steps: 10
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dipo.DIPODiffusion
# HP to tune
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,106 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dql_diffusion_agent.TrainDQLDiffusionAgent
name: ${env_name}_dql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DQL specific
scale_reward_factor: 1
eta: 1.0
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dql.DQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,115 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_idql_diffusion_agent.TrainIDQLDiffusionAgent
name: ${env_name}_idql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# IDQL specific
scale_reward_factor: 1
eval_deterministic: True
eval_sample_num: 10 # how many samples to score during eval
critic_tau: 0.001 # rate of target q network update
use_expectile_exploration: True
buffer_size: 3000
batch_size: 512
replay_ratio: 16
model:
_target_: model.diffusion.diffusion_idql.IDQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic_q:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
critic_v:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,114 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt # use 8000 for comparing policy parameterizations
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,164 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_img_agent.TrainPPOImgDiffusionAgent
name: ${env_name}_ft_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_img_ta4_td100/2024-07-30_22-24-35/checkpoint/state_2500.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
ft_denoising_steps: 5
cond_steps: 1
horizon_steps: 4
act_steps: 4
use_ddim: True
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['robot0_eye_in_hand_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 200
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
augment: True
grad_accumulate: 15
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 500
logprob_batch_size: 500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.9
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
use_ddim: ${use_ddim}
ddim_steps: ${ft_denoising_steps}
learn_eta: False
eta:
base_eta: 1
input_dim: ${obs_dim}
mlp_dims: [256, 256]
action_dim: ${action_dim}
min_eta: 0.1
max_eta: 1.0
_target_: model.diffusion.eta.EtaFixed
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
time_dim: 32
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,117 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_unet_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_unet_ta4_td20/2024-06-29_02-49-45/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 40
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,103 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_gaussian_mlp_ta4/2024-06-28_14-48-24/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,141 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_img_agent.TrainPPOImgGaussianAgent
name: ${env_name}_ft_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_gaussian_mlp_img_ta4/2024-07-28_23-00-48/checkpoint/state_500.pt # trained very quickly
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['robot0_eye_in_hand_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 200
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
augment: True
grad_accumulate: 5
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 200
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 1500
logprob_batch_size: 1000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_gaussian_transformer_ta4/2024-06-28_14-49-23/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_gmm_mlp_ta4/2024-06-28_15-30-32/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,105 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_gmm_transformer_ta4/2024-06-28_14-51-23/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 7500
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_qsm_diffusion_agent.TrainQSMDiffusionAgent
name: ${env_name}_qsm_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 300
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# QSM specific
scale_reward_factor: 1
q_grad_coeff: 50
critic_tau: 0.005 # rate of target q network update
buffer_size: 3000
batch_size: 256
replay_ratio: 32
model:
_target_: model.diffusion.diffusion_qsm.QSMDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,91 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_rwr_diffusion_agent.TrainRWRDiffusionAgent
name: ${env_name}_rwr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/lift/lift_pre_diffusion_mlp_ta4_td20/2024-06-28_14-47-58/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 300
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 300
gamma: 0.999
lr: 1e-5
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# RWR specific
max_reward_weight: 100
beta: 10
batch_size: 1000
update_epochs: 16
model:
_target_: model.diffusion.diffusion_rwr.RWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_awr_diffusion_agent.TrainAWRDiffusionAgent
name: ${env_name}_awr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# AWR specific
scale_reward_factor: 1
max_adv_weight: 100
beta: 10
buffer_size: 3000
batch_size: 256
replay_ratio: 64
critic_update_ratio: 4
model:
_target_: model.diffusion.diffusion_awr.AWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.10
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,108 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dipo_diffusion_agent.TrainDIPODiffusionAgent
name: ${env_name}_dipo_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DIPO specific
scale_reward_factor: 1
eta: 0.0001
action_gradient_steps: 10
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dipo.DIPODiffusion
# HP to tune
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dql_diffusion_agent.TrainDQLDiffusionAgent
name: ${env_name}_dql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DQL specific
scale_reward_factor: 1
eta: 1.0
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dql.DQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,116 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_idql_diffusion_agent.TrainIDQLDiffusionAgent
name: ${env_name}_idql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# IDQL specific
scale_reward_factor: 1
eval_deterministic: True
eval_sample_num: 10 # how many samples to score during eval
critic_tau: 0.001 # rate of target q network update
use_expectile_exploration: True
buffer_size: 3000
batch_size: 512
replay_ratio: 16
model:
_target_: model.diffusion.diffusion_idql.IDQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic_q:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
critic_v:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,115 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 500
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,164 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_img_agent.TrainPPOImgDiffusionAgent
name: ${env_name}_ft_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_img_ta4_td100/2024-07-30_22-27-34/checkpoint/state_4000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
ft_denoising_steps: 5
cond_steps: 1
horizon_steps: 4
act_steps: 4
use_ddim: True
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['agentview_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 500
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
augment: True
grad_accumulate: 20
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 500
logprob_batch_size: 1000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.9
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
use_ddim: ${use_ddim}
ddim_steps: ${ft_denoising_steps}
learn_eta: False
eta:
base_eta: 1
input_dim: ${obs_dim}
mlp_dims: [256, 256]
action_dim: ${action_dim}
min_eta: 0.1
max_eta: 1.0
_target_: model.diffusion.eta.EtaFixed
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
time_dim: 32
mlp_dims: [768, 768, 768]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,117 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_unet_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_unet_ta4_td20/2024-06-29_02-48-45/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.1
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 64
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,103 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_gaussian_mlp_ta4/2024-06-28_15-02-32/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,141 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_img_agent.TrainPPOImgGaussianAgent
name: ${env_name}_ft_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_gaussian_mlp_img_ta4/2024-07-30_18-44-32/checkpoint/state_4000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 9
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos']
image_keys: ['agentview_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 500
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
augment: True
grad_accumulate: 10
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 1000
logprob_batch_size: 1000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
spatial_emb: 128
mlp_dims: [768, 768, 768]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_gaussian_transformer_ta4/2024-06-28_15-02-39/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,104 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_gmm_mlp_ta4/2024-06-28_15-03-08/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,105 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_gmm_transformer_ta4/2024-06-28_15-03-15/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 4
act_steps: 4
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 10
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,108 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_qsm_diffusion_agent.TrainQSMDiffusionAgent
name: ${env_name}_qsm_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 5
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# QSM specific
scale_reward_factor: 1
q_grad_coeff: 50
critic_tau: 0.005 # rate of target q network update
buffer_size: 3000
batch_size: 256
replay_ratio: 32
model:
_target_: model.diffusion.diffusion_qsm.QSMDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,92 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_rwr_diffusion_agent.TrainRWRDiffusionAgent
name: ${env_name}_rwr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/square/square_pre_diffusion_mlp_ta4_td20/2024-07-10_01-46-16/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 4
act_steps: 4
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 400
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 300
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
lr: 1e-5
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-5
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# RWR specific
max_reward_weight: 100
beta: 10
batch_size: 1000
update_epochs: 16
model:
_target_: model.diffusion.diffusion_rwr.RWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.1
randn_clip_value: 3
#
network_path: ${base_policy_path}
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,109 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_awr_diffusion_agent.TrainAWRDiffusionAgent
name: ${env_name}_awr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# AWR specific
scale_reward_factor: 1
max_adv_weight: 100
beta: 10
buffer_size: 3000
batch_size: 256
replay_ratio: 64
critic_update_ratio: 4
model:
_target_: model.diffusion.diffusion_awr.AWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,110 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dipo_diffusion_agent.TrainDIPODiffusionAgent
name: ${env_name}_dipo_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DIPO specific
scale_reward_factor: 1
eta: 0.0001
action_gradient_steps: 10
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dipo.DIPODiffusion
# HP to tune
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,109 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_dql_diffusion_agent.TrainDQLDiffusionAgent
name: ${env_name}_dql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# DQL specific
scale_reward_factor: 1
eta: 1.0
buffer_size: 400000
batch_size: 5000
replay_ratio: 64
model:
_target_: model.diffusion.diffusion_dql.DQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,118 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_idql_diffusion_agent.TrainIDQLDiffusionAgent
name: ${env_name}_idql_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 5
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# IDQL specific
scale_reward_factor: 1
eval_deterministic: True
eval_sample_num: 10 # how many samples to score during eval
critic_tau: 0.001 # rate of target q network update
use_expectile_exploration: True
buffer_size: 3000
batch_size: 512
replay_ratio: 16
model:
_target_: model.diffusion.diffusion_idql.IDQLDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic_q:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
critic_v:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,117 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.08
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,170 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_img_agent.TrainPPOImgDiffusionAgent
name: ${env_name}_ft_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_img_ta8_td100/2024-07-30_22-30-06/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 18
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 100
ft_denoising_steps: 5
cond_steps: 1
horizon_steps: 8
act_steps: 8
use_ddim: True
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos"]
image_keys: ['shouldercamera0_image',
'shouldercamera1_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [6, 96, 96]
state:
shape: [18]
action:
shape: [14]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 500
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
augment: True
grad_accumulate: 20
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 500
logprob_batch_size: 1000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.9
clip_ploss_coef: 0.01
clip_ploss_coef_base: 0.001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.08
min_logprob_denoising_std: 0.1
#
use_ddim: ${use_ddim}
ddim_steps: ${ft_denoising_steps}
learn_eta: False
eta:
base_eta: 1
input_dim: ${obs_dim}
mlp_dims: [256, 256]
action_dim: ${action_dim}
min_eta: 0.1
max_eta: 1.0
_target_: model.diffusion.eta.EtaFixed
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
num_img: 2
spatial_emb: 128
time_dim: 32
mlp_dims: [768, 768, 768]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
num_img: 2
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,120 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_diffusion_agent.TrainPPODiffusionAgent
name: ${env_name}_ft_diffusion_unet_ta${horizon_steps}_td${denoising_steps}_tdf${ft_denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_unet_ta16_td20/2024-07-04_02-20-53/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
ft_denoising_steps: 10
cond_steps: 1
horizon_steps: 16
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.diffusion.diffusion_ppo.PPODiffusion
# HP to tune
gamma_denoising: 0.99
clip_ploss_coef: 0.001
clip_ploss_coef_base: 0.0001
clip_ploss_coef_rate: 3
randn_clip_value: 3
min_sampling_denoising_std: 0.08
min_logprob_denoising_std: 0.1
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 64
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
ft_denoising_steps: ${ft_denoising_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
cond_steps: ${cond_steps}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,106 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_gaussian_mlp_ta8/2024-07-10_01-50-52/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.08
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,147 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_img_agent.TrainPPOImgGaussianAgent
name: ${env_name}_ft_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_gaussian_mlp_img_ta8/2024-07-30_21-39-34/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}-img.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}-img/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 18
action_dim: 14
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: False
use_image_obs: True
wrappers:
robomimic_image:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos"]
image_keys: ['shouldercamera0_image',
'shouldercamera1_image']
shape_meta: ${shape_meta}
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
shape_meta:
obs:
rgb:
shape: [6, 96, 96]
state:
shape: [18]
action:
shape: [14]
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 500
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
augment: True
grad_accumulate: 10
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 500
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 1000
logprob_batch_size: 1000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: False
num_img: 2
spatial_emb: 128
mlp_dims: [768, 768, 768]
residual_style: True
fixed_std: 0.08
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.ViTCritic
spatial_emb: 128
num_img: 2
augment: False
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_gaussian_transformer_ta8/2024-06-28_15-18-16/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gaussian_ppo.PPO_Gaussian
clip_ploss_coef: 0.01
randn_clip_value: 3
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.08
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,107 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_gmm_mlp_ta8/2024-07-10_01-51-21/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 8
act_steps: 8
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.08
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,108 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_ppo_gaussian_agent.TrainPPOGaussianAgent
name: ${env_name}_ft_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_gmm_transformer_ta8/2024-06-28_15-18-43/checkpoint/state_5000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
cond_steps: 1
horizon_steps: 8
act_steps: 8
num_modes: 5
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# PPO specific
reward_scale_running: True
reward_scale_const: 1.0
gae_lambda: 0.95
batch_size: 10000
update_epochs: 8
vf_coef: 0.5
target_kl: 1
model:
_target_: model.rl.gmm_ppo.PPO_GMM
clip_ploss_coef: 0.01
network_path: ${base_policy_path}
actor:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.08
learn_fixed_std: True
std_min: 0.01
std_max: 0.2
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObs
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,110 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_qsm_diffusion_agent.TrainQSMDiffusionAgent
name: ${env_name}_qsm_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: False
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 5
n_steps: 400
gamma: 0.999
actor_lr: 1e-5
actor_weight_decay: 0
actor_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
critic_lr: 1e-3
critic_weight_decay: 0
critic_lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-3
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# QSM specific
scale_reward_factor: 1
q_grad_coeff: 50
critic_tau: 0.005 # rate of target q network update
buffer_size: 3000
batch_size: 256
replay_ratio: 32
model:
_target_: model.diffusion.diffusion_qsm.QSMDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
actor:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
critic:
_target_: model.common.critic.CriticObsAct
action_dim: ${action_dim}
action_steps: ${act_steps}
obs_dim: ${obs_dim}
mlp_dims: [256, 256, 256]
activation_type: Mish
residual_style: True
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,94 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.finetune.train_rwr_diffusion_agent.TrainRWRDiffusionAgent
name: ${env_name}_rwr_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-finetune/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
base_policy_path: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/transport/transport_pre_diffusion_mlp_ta8_td20/2024-07-08_11-18-59/checkpoint/state_8000.pt
robomimic_env_cfg_path: cfg/robomimic/env_meta/${env_name}.json
normalization_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env_name}/normalization.npz
seed: 42
device: cuda:0
env_name: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
cond_steps: 1
horizon_steps: 8
act_steps: 8
env:
n_envs: 50
name: ${env_name}
best_reward_threshold_for_success: 1
max_episode_steps: 800
save_video: false
wrappers:
robomimic_lowdim:
normalization_path: ${normalization_path}
low_dim_keys: ['robot0_eef_pos',
'robot0_eef_quat',
'robot0_gripper_qpos',
"robot1_eef_pos",
"robot1_eef_quat",
"robot1_gripper_qpos",
'object'] # same order of preprocessed observations
multi_step:
n_obs_steps: ${cond_steps}
n_action_steps: ${act_steps}
max_episode_steps: ${env.max_episode_steps}
reset_within_step: True
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env_name}-finetune
run: ${now:%H-%M-%S}_${name}
train:
n_train_itr: 1000
n_critic_warmup_itr: 2
n_steps: 400
gamma: 0.999
lr: 1e-5
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 1000
warmup_steps: 10
min_lr: 1e-6
save_model_freq: 100
val_freq: 10
render:
freq: 1
num: 0
# RWR specific
max_reward_weight: 100
beta: 10
batch_size: 1000
update_epochs: 16
model:
_target_: model.diffusion.diffusion_rwr.RWRDiffusion
# Sampling HPs
min_sampling_denoising_std: 0.08
randn_clip_value: 3
#
network_path: ${base_policy_path}
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
device: ${device}
@@ -0,0 +1,68 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${obs_dim}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,91 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
time_dim: 32
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,71 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_unet_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 40
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,60 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,83 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 1000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,64 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: can
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,68 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 16
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,91 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 2500
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 8000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
time_dim: 32
mlp_dims: [512, 512, 512]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,71 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_unet_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 40
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
transition_dim: ${transition_dim}
cond_dim: ${obs_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,60 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,83 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 500
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 3000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [512, 512, 512]
residual_style: True
fixed_std: 0.1
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,64 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: lift
obs_dim: 19
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 96
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,69 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
cond_mlp_dims: [512, 64]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,91 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 100
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 4000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 8000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
time_dim: 32
mlp_dims: [768, 768, 768]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,71 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_unet_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 64
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,60 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,83 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 9 # proprioception only
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 4000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
spatial_emb: 128
mlp_dims: [768, 768, 768]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,64 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: square
obs_dim: 23
action_dim: 7
transition_dim: ${action_dim}
horizon_steps: 4
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,68 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 8
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.DiffusionMLP
time_dim: 32
mlp_dims: [1024, 1024, 1024]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,92 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_mlp_img_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 18 # proprioception only
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 100
horizon_steps: 8
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 8000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.mlp_diffusion.VisionDiffusionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
num_img: 2
spatial_emb: 128
time_dim: 32
mlp_dims: [768, 768, 768]
residual_style: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,71 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_diffusion_agent.TrainDiffusionAgent
name: ${env}_pre_diffusion_unet_ta${horizon_steps}_td${denoising_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
denoising_steps: 20
horizon_steps: 16
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 8000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 10000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.diffusion.diffusion.DiffusionModel
predict_epsilon: True
denoised_clip_value: 1.0
network:
_target_: model.diffusion.unet.Unet1D
diffusion_step_embed_dim: 16
dim: 64
dim_mults: [1, 2]
kernel_size: 5
n_groups: 8
smaller_encoder: False
cond_predict_scale: True
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
obs_dim: ${obs_dim}
action_dim: ${action_dim}
transition_dim: ${transition_dim}
denoising_steps: ${denoising_steps}
cond_steps: ${cond_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,60 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
horizon_steps: 8
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,84 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_mlp_img_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}-img/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 18 # proprioception only
action_dim: 14
transition_dim: ${action_dim}
horizon_steps: 8
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
shape_meta:
obs:
rgb:
shape: [3, 96, 96]
state:
shape: [9]
action:
shape: [7]
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 500
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.mlp_gaussian.Gaussian_VisionMLP
backbone:
_target_: model.common.vit.VitEncoder
obs_shape: ${shape_meta.obs.rgb.shape}
cfg:
patch_size: 8
depth: 1
embed_dim: 128
num_heads: 4
embed_style: embed2
embed_norm: 0
augment: True
num_img: 2
spatial_emb: 128
mlp_dims: [768, 768, 768]
residual_style: True
fixed_std: 0.1
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
use_img: True
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
max_n_episodes: 100
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gaussian_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
horizon_steps: 8
cond_steps: 1
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gaussian.GaussianModel
network:
_target_: model.common.transformer.Gaussian_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,62 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_mlp_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
horizon_steps: 8
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.mlp_gmm.GMM_MLP
mlp_dims: [1024, 1024, 1024]
residual_style: True
fixed_std: 0.1
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}
@@ -0,0 +1,64 @@
defaults:
- _self_
hydra:
run:
dir: ${logdir}
_target_: agent.pretrain.train_gaussian_agent.TrainGaussianAgent
name: ${env}_pre_gmm_transformer_ta${horizon_steps}
logdir: ${oc.env:DPPO_LOG_DIR}/robomimic-pretrain/${name}/${now:%Y-%m-%d}_${now:%H-%M-%S}_${seed}
train_dataset_path: ${oc.env:DPPO_DATA_DIR}/robomimic/${env}/train.pkl
seed: 42
device: cuda:0
env: transport
obs_dim: 59
action_dim: 14
transition_dim: ${action_dim}
horizon_steps: 8
cond_steps: 1
num_modes: 5
wandb:
entity: ${oc.env:DPPO_WANDB_ENTITY}
project: robomimic-${env}-pretrain
run: ${now:%H-%M-%S}_${name}
train:
n_epochs: 5000
batch_size: 256
learning_rate: 1e-4
weight_decay: 1e-6
lr_scheduler:
first_cycle_steps: 5000
warmup_steps: 100
min_lr: 1e-5
epoch_start_ema: 20
update_ema_freq: 10
save_model_freq: 1000
model:
_target_: model.common.gmm.GMMModel
network:
_target_: model.common.transformer.GMM_Transformer
transformer_embed_dim: 160
transformer_num_heads: 4
transformer_num_layers: 4
fixed_std: 0.1
learn_fixed_std: False
num_modes: ${num_modes}
cond_dim: ${eval:'${obs_dim} * ${cond_steps}'}
horizon_steps: ${horizon_steps}
transition_dim: ${transition_dim}
horizon_steps: ${horizon_steps}
device: ${device}
ema:
decay: 0.995
train_dataset:
_target_: agent.dataset.sequence.StitchedActionSequenceDataset
dataset_path: ${train_dataset_path}
horizon_steps: ${horizon_steps}
cond_steps: ${cond_steps}
device: ${device}