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 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: 201 n_critic_warmup_itr: 2 n_steps: 400 gamma: 0.999 actor_lr: 2e-5 actor_weight_decay: 0 actor_lr_scheduler: first_cycle_steps: ${train.n_train_itr} warmup_steps: 10 min_lr: 1e-4 critic_lr: 1e-3 critic_weight_decay: 0 critic_lr_scheduler: first_cycle_steps: ${train.n_train_itr} 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: 5 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}'} action_dim: ${action_dim} critic: _target_: model.common.critic.CriticObs mlp_dims: [256, 256, 256] activation_type: Mish residual_style: True cond_dim: ${eval:'${obs_dim} * ${cond_steps}'} ft_denoising_steps: ${ft_denoising_steps} horizon_steps: ${horizon_steps} obs_dim: ${obs_dim} action_dim: ${action_dim} denoising_steps: ${denoising_steps} device: ${device}