|
a |
|
b/SAC/perturbation_specs.py |
|
|
1 |
import numpy as np |
|
|
2 |
|
|
|
3 |
#Sensory feedback elimination specs: when mode in configs.py is "SFE" |
|
|
4 |
#Feedback to eliminate can include ["proprioceptive", "muscle_forces", "joint_feedback", "visual_position", "visual_distance", "visual_velocity", "task_scalar", "recurrent_connections", "stimulus"] |
|
|
5 |
sf_elim = ["task_scalar"] |
|
|
6 |
|
|
|
7 |
#Sensory feedback perturbation when the mode in configs.py is "sensory_pert" |
|
|
8 |
#The perturbation vectors should be np.ndarrays |
|
|
9 |
#Shape of the vectors: [args.timestep_limit, n_features_in_sensory_part] |
|
|
10 |
|
|
|
11 |
#Add perturbation to the stimulus feedback |
|
|
12 |
stim_feedback_pert = [] |
|
|
13 |
|
|
|
14 |
#Add perturbation to muscle lengths |
|
|
15 |
muscle_lengths_pert = [] |
|
|
16 |
|
|
|
17 |
#Add perturbation to muscle velocities |
|
|
18 |
muscle_velocities_pert = [] |
|
|
19 |
|
|
|
20 |
#Add perturbation to muscle forces |
|
|
21 |
muscle_forces_pert = [] |
|
|
22 |
|
|
|
23 |
#Add perturbation to joint positions |
|
|
24 |
joint_positions_pert = [] |
|
|
25 |
|
|
|
26 |
#Add perturbation to joint velocities |
|
|
27 |
joint_velocities_pert = [] |
|
|
28 |
|
|
|
29 |
#Add perturbation to visual positions |
|
|
30 |
visual_position_pert = [] |
|
|
31 |
|
|
|
32 |
#Add perturbation to visual velocities |
|
|
33 |
visual_velocity_pert = [] |
|
|
34 |
|
|
|
35 |
#Add perturbation to visual distances |
|
|
36 |
visual_distance_pert = [] |
|
|
37 |
|
|
|
38 |
#Neural perturbation when the mode in configs.py is "neural_pert" |
|
|
39 |
#The neural perturbation is added to the neurons of the uSim/nuSim neurons/units |
|
|
40 |
#It should be a numpy array of the shape [timepoints, n_hidden_units (for uSim controller/policy RNN)] |
|
|
41 |
#If timepoints < args.timestep_limit, the neural perturbation will keep on repeating until the episode ends |
|
|
42 |
|
|
|
43 |
neural_pert = np.ones((100, 256)) |
|
|
44 |
|