This page describes how to start the experiment software once everything has been installed. Please follow the instructions in chronological order.
First the SpaceNavigator input device should be plugged in, and the 'spacenavd' driver started:
sudo spacenavd
A blue light on the SpaceNavigator (unless disabled in the 'spacenavd' configuration) should now turn on.
You should also start the YARP server:
yarp server
Each of the 5 subjects are given a unique ID for the experiment. The subject IDs used are 231, 375, 727, 883 and 917. Each of the 8 sessions are also given a specific ID, from 0 to 7 (note that 1 to 8 is used in the description of the experimental paper).
These are startup parameters for some of the modules, as shown below ([subjectID] and [sessionID] labels, respectively). Launch each executable in a separate terminal window or tab.
For the openrave environment driver 'exp_openrave_driver:
./exp_openrave_driver
For 'kdb_neural_weights', giving the subject ID and the size of the neural network matrix:
./kdb_neural_weights [subjectID] 20 20
For 'main_exp_manager_steering', giving the subject and session IDs:
./main_exp_manager_steering [subjectID] [sessionID]
For 'main_trajectory_player', which will read the 'trajectory_in' noise file from the 'share' folder (which takes about 10 seconds):
./main_trajectory_player
For 'main_uci_proximity_neural', giving the 'TTC_min' and 'gamma' parameters. The former is equivalent to the 'beta_vel' parameter in Algorithm 1 in the description, while 'gamma' can be seen in Equation (5) in the description (Hebb learning rule). 'TTC_min' ('beta_vel') was set to '0' during the four first sessions, as no shared control was used. Then '3000000' was used for the four last sessions.
./main_uci_proximity_neural 3000000 1
For 'main_window_feedback', giving the (optional) font name:
./main_window_feedback r24
For 'spacenavigator_spnav' (note that the 'spacenavd' driver must be already running'):
./spacenavigator_spnav
To connect all the experiment modules through the YARP server, execute the 'connect_experiment.sh' script found in the 'share' folder:
./connect_experiment.sh
Double-check that all modules have been connected ok from the information displayed in the terminal (no failed attempts).
To start the experiment first go to the terminal of the 'main_trajectory_player' module and enter 'y' as instructed. This module now starts streaming the noise trajectory, a total of about 33 minutes (2000 seconds exactly).
Then go to the terminal with the 'main_exp_manager_steering' and do the same, enter 'y' to start the experiment, as instructed. You should now see the hand in its initial position, the target object (light blue) and a '0.0' written in blue in the window for the timer ('main_window_feedback' executable).
The participant begins the first trial by pushing the left button on the SpaceNavigator input device.
After a participant has completed a session, the 'main_exp_manager_steering' module will exit. To start the next session simply restart the module with the correct [sessionID]. If need be the 'main_trajectory_player' can also be restarted. Also make sure the 'main_uci_proximity_neural' is using the correct 'TTC_min' ('beta_vel') value for the session. Then reconnect all modules and start the session as described above.
All experiment results are stored in a folder named 'out' in the respective folder for the executables. Make sure the folder exists before starting the experiment. All results are in the form of text files, with comma separated formatting. The trial-level results and the trajectories are generated by the module 'main_exp_manager_steering'. The neural network weights by 'kdb_neural_weights'.
See [AdaptiveCollisionHand-DataSets] for a description of the content of the data set generated.
[Home] [ExperimentalPapers] [AdaptiveCollisionHand] [AdaptiveCollisionHand-Code]
Wiki: AdaptiveCollisionHand-Code-Install
Wiki: AdaptiveCollisionHand-Code
Wiki: AdaptiveCollisionHand-DataSets
Wiki: AdaptiveCollisionHand-Method
Wiki: AdaptiveCollisionHand
Wiki: ExperimentalPapers
Wiki: Home