Protocol for closed-economy paradigm

236 views
Skip to first unread message

Benoît Delignat-Lavaud

unread,
Oct 9, 2021, 10:18:03 AM10/9/21
to FEDforum
Hello Pr. Kravitz,

I'm interested to use your FED3 devices to test motivation for food intakes in a dopamine deficient mouse model. For this I was thinking of using the closed-economy food intake paradigm you presented in your eLife article.

My question is about the optimal protocol to investigate this aspect. Your article explains that magazine training is interesting for the mice to learn faster to use the devices, but I think you did not use this protocol for the closed economy paradigm ? 

Is the following protocol seems correct to you ? Or do you think step 2 is unnecessary ? Use magazine training would not be incompatible if we want to investigate the learning aspect of the task in addition to the motivation for food ?

1.       HABITUATION - DAY 1: adult WT and KO mice at P70 or around will be place in an individual homecage with water and food ad libitum for 1 day to habituate them to their new environment

2.       TRAINING - DAY 2- DAY 4: magazine training to improve acquisition of operant behavior. FED3 device will be introduce in the mouse homecages. Regulate food pellet will be remove (water still ad libidum) and FED3 device will be activate on Free feeding mode (dispenses a pellet into the feeding well of FED3 and replaces it whenever it is removed). Mice body weight and health will be monitored daily.

3.       OPERANT TASK - DAY 5 – DAY 9 (5 days): FED3 devices will be set on repeating progressive ratio task mode. Nose-poking requirement began on FR1 and increased each time a pellet was earned. When mice refrained from poking on either port for 30 min the ratio reset to FR1. During this 5-days period, mice body weight and health will be monitored daily.

Thanks a lot for your help and also for designing these wonderful devices. 

Best regards,

Benoît Delignat-Lavaud.

Lex Kravitz

unread,
Oct 9, 2021, 4:10:33 PM10/9/21
to FEDforum

Hi Benoît!

We are running this closed economy protocol a lot in our lab now, although we modified it a bit from what we did in the eLife protocol.  In the eLife paper we used a exponentially increasing ratio, but we found it was getting too hard for some mice around pellet #20.  So we’ve switched to a “PR1” protocol, which just adds one poke to the requirement for each additional earned pellet, still resetting after 30 minutes with no pokes.  You can find the protocol as an Example in the latest FED3 library (v.1.8.4), as “ClosedEconomy_PR1”, see photo below.

In terms of our training protocol, we do:

Day 1: Have mice habituation to the FED3 on free-feeding with regular food in their cage (this is magazine training).  

Day 2: Remove their laboratory chow so they are getting all food from FED3, still on free-feeding

Day 3: Move them to FR1 for 3 days to make sure they understand how to get pellets from poking.  You can use this data to measure acquisition rates or performance (%correct pokes) here too.

Day4-11: Run 7 days of PR1.  Honestly I don’t think we need 7 days of PR1, but that’s what my lab has settled on.  The data across days is highly correlated after day 1.  (Day 1 is more different as they’re figuring it out)

When FED3 is their only source of food you should monitor pellets and weigh mice daily to make sure they are getting enough food and not losing weight.  If there’s a problem with the device you don’t want them to starve!  You also will likely need to swap batteries in the middle, it tends to last ~7 days.  Good luck! -Lex


pic1.png

Benoît Delignat-Lavaud

unread,
Oct 11, 2021, 9:33:25 AM10/11/21
to Lex Kravitz, FEDforum
  Thank you very much for your reply. We will go with this protocol then.

Small question though : To avoid overwriting the ClassicFED3 (which contains the Free Feeding and FR1 protocols needed for the first 3 days of experiment) when I upload the CloseEc protocol in my devices I just copy-pasted the latest script as a mode #12 of the ClassicFED3.

Unfortunately I get this error message because of the "void loop" function.
Sorry I'm not very good at coding, could you please help me to solve this issue ?

image.png

Thanks.

Ben.
-----
error message
Arduino : 1.8.13 (Windows 10), Carte : "Adafruit Feather M0, Arduino, Off"
C:\Users\benit\AppData\Local\Temp\arduino_modified_sketch_921937\ClassicFED3.ino: In function 'void loop()':
ClassicFED3:256:14: error: a function-definition is not allowed here before '{' token
 void setup() {
              ^
ClassicFED3:263:13: error: a function-definition is not allowed here before '{' token
 void loop() {
             ^
ClassicFED3:339:1: error: expected '}' at end of input
 }
 ^
exit status 1
a function-definition is not allowed here before '{' token

Garanti sans virus. www.avast.com

--
You received this message because you are subscribed to the Google Groups "FEDforum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fedforum+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fedforum/d3758520-381b-4a40-8140-6df312008dffn%40googlegroups.com.


--
Benoît Delignat-Lavaud, candidat au doctorat

Laboratoire Dr. Louis-Eric Trudeau,

Département de pharmacologie et physiologie, département de neurosciences

Local S-405, pavillon Roger-Gaudry

Université de Montréal
2900 Boulevard Édouard-Montpetit

Montréal, Québec, H4T 1J4

 

Lex Kravitz

unread,
Oct 11, 2021, 10:44:30 AM10/11/21
to FEDforum
Hi again!  It sounds like you are re-defining the void setup() and void loop() functions by copy/pasting the entire PR1 script into the Classic_FED3 program.  You can only have one instance of each of these function definitions in your script.

But I think I may have a simpler solution than merging these two programs: Are you trying to make a version of the menu program that includes Free-Feeding, FR1, and the repeating PR1?  One of the examples, Beta_Programs>Menu2 does exactly that!  Sorry "Menu2" isn't a very informative name for it, I was just trying to include some examples of how to queue up multiple programs in a menu at startup.  But this is the one we use a lot as you can switch between these three programs without re-flashing FED3.  If you flash this, on the screen at startup you'll select between "Mode 1" for Free feeding, "Mode 2" for FR1 and "Mode 3" for PR1.  I plan to make this text at startup say what the programs actually are but didn't get around to it yet.  In the datafile it will record the mode in a more informative way, ie "Free_feed", "FR1", "Closed_econ".

If you want to learn more about how to customize the Menu system yourself check out this video too.

And please post back how this code works for you - if it works as expected for you I may move this script out of Beta_Programs. 

Benoît Delignat-Lavaud

unread,
Oct 11, 2021, 11:10:08 AM10/11/21
to FEDforum
Hello,

I understand the problem now thank you.

That's exactly the kind of protocol I wanted for doing the entire closed economy paradigm without rebooting the devices after the FR1 training ! 
The interface gave me 12 different modes, but only the first protocols are used (mode 1 = mode 0 in the script, for free feeding, mode 2 = FR1 and mode 3 = PR with a +1 increment).
I guess I just have to remove this to avoid dealing with the 9 empty modes:
if (fed3.FEDmode > 2) {
    fed3.DisplayNoProgram();

Otherwise your video is very clear, thank you for that ! 


Garanti sans virus. www.avast.com

Lex Kravitz

unread,
Oct 11, 2021, 2:50:30 PM10/11/21
to FEDforum
Great! 

Yes currently the "menu" function (called by setting fed3.FED3Menu = true; in void setup) is written with 12 "modes" for programs.  If you don't define the other modes they won't do anything but you can still select them.  I should fix this but for now you just have to keep track of what Modes actually have programs in them and only select those (Mode 1-3 in this case).
Reply all
Reply to author
Forward
0 new messages