Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement different phases of the task in micropython #8

Open
amchagas opened this issue Nov 17, 2021 · 1 comment
Open

implement different phases of the task in micropython #8

amchagas opened this issue Nov 17, 2021 · 1 comment

Comments

@amchagas
Copy link
Member

this system is being built for a specific task used in Sarah King's lab. Therefore we need to code the different stages of this task in a way that:

  • each stage is a different class
  • they can be independently started
  • we can use code to make them start in sequence, in a way that the ending condition of one, starts the next one.
  • They should be able to play nicely with the code developed in Write python and micropython code to transfer data #6
  • Certain variables, defining critical aspects of the task, should be accessible/settable from "outside"
  • implementation in a way that users can start/modify things using a jupyter notebook

Phases of the task are:

  • Magazine training (train animals to feed at the magazine)
  • nose poke training (train animals to put their noses on one of the illuminated holes and getting food for it)
@amchagas
Copy link
Member Author

Here is a more defined outline of the different phases (based on this paper https://www.nature.com/articles/srep42519):

Magazine training (train the mice to get food from the pellet dispenser):

  • 50 trials in total (which in this case correspond to the animal getting food 50 times)
  • Inter trial interval (a random choice between 4,8,16 and 32 seconds)
  • Once ITI finishes, magazine LED turns on, and a food pellet is dispensed
  • System keeps waiting indefinetely for input from the IR beam at the food well. When the beam is disrupted, we know the animal found the reward.
  • Once animal has broken the beam, the ITI starts again

T1 phase starts immediatly after previous phase is concluded

  • all 5 nosepokes illuminate and system waits for a nose poke
  • Once a nose poke is registered in any of the doors, NP lights turn off and the light in the food dispenser turns on
  • System waits for reward to be collected
  • No information on whether or not an ITI was used in this case but I suspect it was similar to magazine training
  • this phase ends also with 50 rewards

T2 phase also starts immediatly after previous phase

  • trial starts by turning on the food dispenser light and waits for the animal to interact with it (break the IR beam), which turns the light off.
  • 5 seconds ITI
  • One of the nose poke ports LED turns on. Response in the illuminated port turns the NP LED off and turns the food dispenser LED on, while also dispensing a food pellet. (responses to the non-illuminated NP leads to no rewards, nor time outs).
  • Once the food is collected, the food dispenser led turns off
  • consumption interval - 20 seconds of "nothing"
  • start from the top.
  • repeat everything 100 times (100 rewards)

5- choice serial reaction time task PHASE 1

  • trial starts similarly to T2.
  • 5 second ITI
  • one of the NP port LED turns on for a specific amount of time (as defined by stimulus duration variable).
  • A response in the illuminated port, during stimulus duration, or up to 4 seconds after it turns the NP LED off.
  • Food dispenser LED turns on, food is dispensed.
  • Once food is collected, 20 sec of consumption interval
  • after consumption interval, start the next trial
  • In this phase, incorrect responses (either the wrong NP interaction, or a NP during ITI) or omissions lead to a 5 sec timeout period. After the timeout, the food dispenser LED turns on, so the animal starts the next trial
  • In this phase stimulus duration started at 16 seconds, being gradually decreased in steps (8, 4, 2, 1.5, 1 sec) everytime a criteria was met: at least 50 started trials, 60% accuracy and [ommissions<30% OR number of correct responses >=200]. accuracy and ommission percentages were calculated using running averages with window size 20.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant