PennController for IBEX › Forums › Support › Ensuring subjects who take the experiment multiple times see different data.
- This topic has 4 replies, 2 voices, and was last updated 3 years, 3 months ago by
Jeremy.
-
AuthorPosts
-
May 5, 2021 at 4:49 pm #6928
symonjorystevensguille
ParticipantHi,
I’m running an experiment which subjects can complete multiple times. Every time they do the experiment, I’d like them to see new data. I expect to log their ID, then use this ID to ensure the stimuli they see are new to them. Is there a well-known solution to this issue?
thanks in advance!
May 5, 2021 at 6:48 pm #6929Jeremy
KeymasterHi,
Unfortunately there’s no straightforward way to do that in PCIbex, as it would require keeping track of information across runs. The only thing close to that is the internal counter, which increases with each new submission, and which can be used to automatically assign different groups to participants, but it doesn’t keep track of every single participant specifically
You would need to set up your own solution to keep track of each participant’s submissions and communicate with your PCIbex experiment to run the desired set of stimuli. I have never tried to do something like that before, but it surely isn’t a trivial task. I’m happy to answer any questions though
Jeremy
May 6, 2021 at 5:30 am #6930symonjorystevensguille
ParticipantHi Jeremy,
Do you think it would be possible to log the groups the subject sees then subsequently use these logs to ensure the next time the subject is encountered by the experiment (I explicitly collect this ID in the beginning of the experiment) they’re given some new group of stimuli? In effect, the experiment would consult some log file for every run, check the ID of the subject with respect to the groups of stimuli recorded for the subject in the log file, then give the subject a new group, then log this new group for the subject ID. I guess this would require logging two files, one the experiment results, the second the file where the lines correspond to unique IDs plus the groups they’ve seen. Then the experiment would need to consult its own second log file. Could this be done in PC Ibex or would I need to do the checking of the info in the second log by some other program (which might be embedded in the experiment script, since JS is quite expressive)?
Best,
SymonMay 6, 2021 at 5:35 am #6931symonjorystevensguille
ParticipantIt occurs to me that if the results file logs the groups, then the existing results file itself could just be consulted for every experiment run. Then two log files wouldn’t be needed. Is it possible for the experiment to read from its result file (it can write to it obviously)?)
May 6, 2021 at 10:28 am #6932Jeremy
KeymasterHi Symon,
As I said, the only sort of log file that (PC)Ibex reads is the internal counter. Any other cross-run log system will need to be implemented manually
The results file is written when the submission is sent to the servers, but not read: doing so would publicly expose the results of every participants
Editing a (PC)Ibex experiment means editing the javascript code, that is, the code that is executed on the client side (the participant’s browser). Communication with a log file that persists across runs involves setting up something on the server side, which cannot be done by simply editing an experiment. This is why you would need a parallel setup that would communicate with PennController in some way or another
Jeremy
-
AuthorPosts
- You must be logged in to reply to this topic.