--- a +++ b/SAC/perturbation_specs.py @@ -0,0 +1,44 @@ +import numpy as np + +#Sensory feedback elimination specs: when mode in configs.py is "SFE" +#Feedback to eliminate can include ["proprioceptive", "muscle_forces", "joint_feedback", "visual_position", "visual_distance", "visual_velocity", "task_scalar", "recurrent_connections", "stimulus"] +sf_elim = ["task_scalar"] + +#Sensory feedback perturbation when the mode in configs.py is "sensory_pert" +#The perturbation vectors should be np.ndarrays +#Shape of the vectors: [args.timestep_limit, n_features_in_sensory_part] + +#Add perturbation to the stimulus feedback +stim_feedback_pert = [] + +#Add perturbation to muscle lengths +muscle_lengths_pert = [] + +#Add perturbation to muscle velocities +muscle_velocities_pert = [] + +#Add perturbation to muscle forces +muscle_forces_pert = [] + +#Add perturbation to joint positions +joint_positions_pert = [] + +#Add perturbation to joint velocities +joint_velocities_pert = [] + +#Add perturbation to visual positions +visual_position_pert = [] + +#Add perturbation to visual velocities +visual_velocity_pert = [] + +#Add perturbation to visual distances +visual_distance_pert = [] + +#Neural perturbation when the mode in configs.py is "neural_pert" +#The neural perturbation is added to the neurons of the uSim/nuSim neurons/units +#It should be a numpy array of the shape [timepoints, n_hidden_units (for uSim controller/policy RNN)] +#If timepoints < args.timestep_limit, the neural perturbation will keep on repeating until the episode ends + +neural_pert = np.ones((100, 256)) +