MouseBot: Automating the Single Pellet Reaching Task

Single Pellet Reaching for Mice and Rats

The single pellet reaching task is used in pre-clinical drug research to evaluate new therapies and their potential to reverse paralysis of the upper limbs after stroke or spinal cord injury.

The video below shows a rat executing  the task where each sugar pellet is presented to the rat by a technician. The rat is removed from its home cage and placed in a clear perspex box. Sugar pellets are placed beyond and offset from a vertical slot (or, “reaching window”) and are reachable by only one paw depending on the side it is placed.

The rat smells that a pellet is present, extends its paw through the slot, rotates its wrist and grasps at the pellet. The rat then retracts the arm to bring the pellet to its mouth. In order to execute this task well, rats are trained daily for two weeks. Rats are considered trained when they are able to successfully reach, grasp and eat 70% of the pellets. Once they have reached this training stage, a brain or spinal cord injury is surgically induced. This hinders the rat’s ability to perform the pre-trained task as brain circuitry, the corticospinal tract, key for voluntary movement, degenerate. Neuroscientists assess the injured rats’ performance of the single pellet reaching task on a weekly basis, having been given a neurorehabilitative drug candidate or a control.

This task is a very good model for hand and arm function in humans, and the impairments after surgical induction of injury mimic the human condition closely.

Unfortunately, training a cohort of rats and mice for a large pre-clinical study on this task requires many hours of human labour. It is also subjective: the time of day, day of the week and person training the animal can all impact the performance of animals executing this task. Also, increasingly, research groups have began exploring high-intensity rehabilitation in conjunction with therapies, where 100 trials of pellet reaches are required per animal per session, where previously a session would terminate after 20 trials. The need to automate this task is very high.

MouseBot: Automation of the Single Pellet Reaching Task

The MouseBot is a robot I developed with Dr. Lawrence Moon and Dr. Dhireshan Gadiagellan at King’s College London. It is an automated solution to the issues outlined above

Below is a CAD animation of the MouseBot. Hardware was 3D printed and laser cut and designed using SolidWorks CAD.

The device’s firmware is written entirely in Python3. Pellets are placed in a high capacity hopper, driven through a chute and then deposited on a “spoon”. The spoon then rotates into the view of a camera. Real-time blob detection determines the presence of the sugar pellet on the spoon. Once detected, the coordinates of the pellet are used to drive the motor to position the pellet. The pellet’s position progressively increases from the reaching window (the slot) as mice get better at the task. When the pellet is positioned, a list is filled with NumPy arrays containing the pixel values, 640×480 in shape, generated at approximately 180 times per second with a maximum capacity of 700. When the pellet is dislodged, the NumPy arrays are encoded to video and stored with meta data (for example, the last microchip read by the on-board Radio Frequency Identity (RFID) reader) to a MongoDB cloud instance.

Videos are then downloaded, as they are generated, to a dedicated PC with NVIDIA GPUs, and they are fed through a trained neural network in order for key features in frames to be located.

The above gif shows the video from which frames were annotated, the below, the outputted labels from the neural network from a video it had not previously “seen”.

The location of the sugar pellet, paw’s digits and snout all contribute to determining the outcome of each trial (success or drop).

The entire device is placed within the home cage of animals and data is sent wirelessly as it is generated.