RatLab - sensory input and motor control of rats governed by integrate-and-fire networks in 2-D virtual environments. Inputs from the environment to the network include the visual field, proximity to markers in the environment, ambient sound and proprioreception.
See individual components for details: RatWorld, RatEnvironment, Rat, RatNetwork and their subcomponents.
The display shows the current environment (center bottom) and the network of the active rat (lower right). These can be built and modified with the RatEnvironmentEditor and RatNetworkEditor. One or more rat can be included in the environment with the menus on the left. All rats can be moved with the mouse but keyboard actions are directed to the one selected with the rat menu. The network correspoinding to this rat is shown on the right and above it the sensory input. Clockwise from the bottom left the inputs are: the visual field; proximity to markers in the environment; sound - frequency on the x axis, volume color coded; and proprioreception - upper bar angle of turn, lower one speed backwards or forwards.
Above the environment display is a brief summary of the current state of the calculations showing the elapsed time, the activity modes of the rat(s), and the current memory usage.
Various modes of operation are possible as set by the mode field:
1 user driven Left alone, the rat does nothing. It may be shifted and turned with the mouse with the active points at the center or nose and tail respectively. The rat selected by the rat field also responds to the arrow keys for moving forward, backward, left or right. Motion continues after the key is released until another key is pressed. The spacebar stops the rat.
2 random the rat makes random steps and changes of direction following an auto regressive (AR1) process. See Rat for details. By default each step is independent of the last - regression parameter 0. In this mode, the rat may also be dragged around and responds to key presses just as in the user driven mode.
3 predefined The RatEnvironmentEditor includes facilities for recording rat trajectories. These can be set in the traject field of an individual rat, or overridden for the active rat with the traject feild in RatWorld. In this case the calculation runs to the end of the defined trajectory and stops.
4 network driven The RatNetwork object which receives sensory input has one permanent output noded for motor output. If the network provides a vector propagating connection to this node, the first two elements are taken as the rate of forward motion and turning rate. In driven mode these govern the rats motion.
For cases 2, 3 and 4, the calculation of the whole model is governed by the calculation of the rat network(s). Elapsed rat time and actual time is shown in the upper center display. In cases 1 and where there is user input to case 2, there is a scaling between real time and rat time set by TRbyTU (T-Rat by T-User). For example it may be easy to move the rat around much faster than is realistic, so, setting TRbyTU to 10 would cause 10 seconds worth of sensory input to be sent to the rat for one second of the user dragging it with the mouse or driving it from the keyboard.
When sensory input is provided faster than the network can digest it accumulates in an input buffer specified in the object and is displayed in the upper middle ColorPanel. If the buffer is filled through user input, the mouse is temporarily frozen so the network can catch up.