Skip to main content

BC #02: MMOneSphere, ntrain100, PNet2_svd_pointwise_flow

3DoF demonstrators, testing pointwise loss using `flow` instead of `ee2flow`, which might be more realistic but may lose information related to collisions.
Created on April 30|Last edited on May 16
Contrast these results with using ee2flow instead of flow:
And the simple averaging layer (we want to do as good as this, I suppose, given that SVD should just give us the average of the flows for translation if the rotation is indeed the identity):
Hmm ... this does seem pretty good in my view. The eval/info_done_final is showing at the end: (0.7639+0.7051+0.3441)/3 = 0.6043 and this is largley due to the weakness of 1 of the runs.
Edit: ah that was with a different smoothing level, with the same smoothing of 0.99 to compare with others, I get:
(0.6118 + 0.5099 + 0.3641) / 3 = 0.4952 so it's not as good, all right that seems fair the learning curves for eval/info_done_final seem to show a slower initial learning for some reason.

Edit 05/14/2022: I don't think we can look at eval/MSE_loss as these were before the 05/14 fix where I put the entire evaluation under the model.eval() context.

Binary Success, Train/Eval MSEs


Run set
3


Example GIFs

1st seed after 250 epochs (LGTM):

2nd seed after 250 epochs (LGTM):

3rd seed after 250 epochs (LGTM):


Variant

Using act_type: flow and action_type: svd as expected, with ladle_algorithmic_v02 (NOT v04) and translation action mode.
{
"_hidden_keys": [],
"act_type": "flow",
"action_type": "svd",
"actor_lr": 0.0001,
"agent": "bc",
"alg_policy": "ladle_algorithmic_v02",
"algorithm": "BC",
"batch_size": 24,
"bc_data_dir": "/data/dseita/softgym_mm/data_demo/MMOneSphere_v01_BClone_filtered_ladle_algorithmic_v02_nVars_2000_obs_combo_act_translation",
"bc_data_filtered": true,
"data_buffer_capacity": 1000000,
"encoder_type": "pointnet_svd_pointwise",
"env_kwargs": {
"action_mode": "translation",
"action_repeat": 8,
"camera_name": "top_down",
"deterministic": false,
"headless": true,
"horizon": 100,
"num_variations": 1000,
"observation_mode": "cam_rgb",
"render": true,
"render_mode": "fluid"
},
"env_kwargs_action_mode": "translation",
"env_kwargs_camera_height": 128,
"env_kwargs_camera_width": 128,
"env_kwargs_deterministic": false,
"env_kwargs_num_variations": 2000,
"env_kwargs_observation_mode": "point_cloud",
"env_name": "MMOneSphere",
"env_version": "v01",
"exp_name": "MMOneSphere_v01_BC_ntrain_0100_PCL_PNet2_svd_pointwise_flow_2022_04_29_22_24_34_0001",
"hidden_dim": 1024,
"lambda_pos": 1.0,
"lambda_rot": 100.0,
"log_interval": 1,
"n_epochs": 250,
"n_eval_episodes": 10,
"n_train_demos": 100,
"num_filters": 32,
"num_layers": 4,
"project_axis_ang_y": false,
"save_freq": 10,
"save_model": true,
"save_video": true,
"seed": 100,
"wandb_entity": "mooey5775",
"wandb_project": "mixed_media",
"weighted_MSE": false
}