Controlling an arm-like effector in a centre-out reaching task with a curl field.

(a) Schematic of the environment (containing the effector) and policy. (b) Endpoint trajectories of centre-out reaching movements in a null and curl field, for a policy RNN that is untrained (naive) and then trained to reach in that curl field. The effector was as defined in Kistemaker et al. (2010) (c) Different variables over time during a rightward reaching movement.

Conceptual organization of a MotorNet model.

A policy ANN receives arbitrary input as well as recurrent connections from itself and sends action signals to an effector embedded in an environment, which in turn sends sensory feedback information. Typically, this feedback will be visual and proprioceptive, and can contain feedback-specific time delays Δp and Δv. Gaussian noise can be added to the recurrent connection, action signal, and proprioceptive and visual feedback, with specific standard deviation σh, σ u, σ p, and σ v.

Implementation of MotorNet.

(a) Information flow of a MotorNet model during runtime. (b) Declarative structure of a MotorNet object. Each object instance is held in memory as an attribute of another according to this hierarchical representation, except for the Muscle, and Skeleton instances.

Overview of Python base classes and their respective pre-built subclasses in MotorNet. GRU: Gated Recurrent Unit.

Geometrical properties of an Effector object.

(a) Schematic of a point-mass in two positional configurations within a square workspace. The point-mass Skeleton was linked to four muscles in a “X” configuration. (b) Moment arm values for each of the positional configurations represented in (a), with respect to x and y. (c) Complete moment arm function over the position space for each muscle (columns) and with respect to each DoF. The upper and lower row indicate the moment arm with respect to the x and y position, respectively. (d) Moment arms of a mono-articular extensor muscle on an arm26. (e) Moment arms of a bi-articular flexor muscle on an arm26. (f) Passive drift in endpoint position of an arm26 similar to Figure 1c due to passive force developed by overstretch Hill-type muscles.

A MotorNet model can learn a control policy that generalizes to out-of-distribution perturbations.

(a) Behavioural outputs to a training set input sample after training. (b) Loss function over training iterations, with a batch size of 1024. (c) Trajectories in a centre-out reaching task with mechanical perturbations applied at the arm’s endpoint 120 ms after the “go” cue. The perturbations were orthogonal to the reaching axis passing from the starting position to the target. o.o.d.: out of distribution. (d) Same as (c) for a postural control task. In this task, the network was not provided with a target and therefore only had to remain in the starting position against the perturbations. Mechanical perturbations were in the vertical (left) or horizontal (right) axis. (e) Muscle activation over time for two trajectories in (c) (black and blue lines) and a trajectory in (g) (green line). BE: bi-articular extensor. BF: bi-articular flexor. EE: elbow extensor. EF: elbow flexor. SE: shoulder extensor. SF: shoulder flexor. (f) Reaching task as in (c) for a network never exposed to mechanical perturbations during training. (g) Postural task as in (d) for the same network as in (f). Perturbations were in the vertical (top) or horizontal (bottom) axis.

The distribution of preferential movement direction tuning is sensitive to the geometry of the effector.

(a) Schematic of the two models compared. The RNNs and their architecture were identical, but the effector differed, with one RNN controlling a two-joint arm26 (left) and the other controlling a point-mass (right). (b) Centre-out reaching trajectories to 24 targets for the arm26 (left) and point-mass (right) model. (c) Distribution of preferential movement directions (PMDs) for the arm26 (left) and point-mass (right) model. The PMDs were determined by regression of each GRU’s hidden activity averaged over time against reach angle (see Methods for details). (d) Normalized muscle activations across reaching angles and for the 300 ms following the “go” cue for the arm26 model. (e) Normalized β coefficients of the regression models used for (c). The GRUs were ordered according to the angle of their maximum β value. Note that the “ridge” of maximum β yields roughly a straight line for the point-mass model, while it yields a crooked line for the arm26, indicative of a representation bias. (f) Hidden activity over time and across reaching angles for a random sample of GRUs in the arm26 model.

MotorNet is expandable.

MotorNet allows for new features to be implemented through subclassing.

skeleton parameters for the arm26 model, taken from Nijhof & Kouwenhoven (2000).

parameters for the Hill-type muscle actuators used in the arm26, taken from Kistemaker et al. (2010).

parameters used to compute moment arms in the arm26 models with moment arm approximation, taken from Kistemaker et al. (2010).

Coordinate frames for declaring muscle paths in MotorNet.

(a) MotorNet handle muscle paths using coordinate frames relative to the bone on which a fixation point is. The world space is indexed as the fixation body “0” and its coordinate frame is the general coordinate system. (b) Schematic illustration of the muscle paths used for the arm26 arm26 model with no moment arm approximation described in section 4.3 and table 5, for a shoulder and elbow angle of 45° and 90°, respectively.

Muscle paths for the arm26 model with no moment arm approximation.