File size: 1,542 Bytes
95f0c27
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# EXOKERN Skill v0.1 — Configuration
# Diffusion Policy for Peg Insertion with Force/Torque (trained on v0.1.1 dataset)

model:
  architecture: "TemporalUNet1D"
  parameters: 71315719
  action_dim: 7
  obs_horizon: 10
  pred_horizon: 16
  action_horizon: 8
  base_channels: 256
  channel_mults: [1, 2, 4]
  cond_dim: 256

diffusion:
  num_train_steps: 100
  num_inference_steps: 16
  noise_schedule: "cosine"

training:
  epochs: 300
  batch_size: 256
  learning_rate: 0.0001
  weight_decay: 0.0001
  lr_schedule: "cosine_annealing"
  lr_min: 0.000001
  ema_decay: 0.995
  grad_clip: 1.0
  seeds: [42, 123, 7]

conditions:
  full_ft:
    obs_dim: 22
    description: "Joint states (16) + Force/Torque wrench (6)"
    state_components:
      - joint_position: 7
      - joint_velocity: 7
      - joint_torque: 2
      - force_xyz: 3
      - torque_xyz: 3

  no_ft:
    obs_dim: 16
    description: "Joint states only (16)"
    state_components:
      - joint_position: 7
      - joint_velocity: 7
      - joint_torque: 2

normalization:
  method: "min_max"
  range: [-1, 1]
  # Stats are stored in checkpoint["stats"]

dataset:
  repo_id: "EXOKERN/contactbench-forge-peginsert-v0.1.1"
  total_episodes: 5000
  total_frames: 745000
  train_ratio: 0.85
  val_ratio: 0.15

environment:
  simulator: "NVIDIA Isaac Lab (Isaac Sim 4.5)"
  env_name: "Isaac-Forge-PegInsert-Direct-v0"
  robot: "Franka FR3"
  control_mode: "joint_position"
  physics_dt: 0.008333  # 120 Hz
  control_dt: 0.066667  # 15 Hz (decimation=8)
  domain_randomization: true