Minimum energy optimal external torque control of human binocular vision

In this paper, we consider eyes from the human binocular system, that simultaneously gaze on stationary point targets in space, while optimally skipping from one target to the next, by rotating their individual gaze directions. The head is assumed fixed on the torso and the rotating gaze directions of the two eyes are assumed restricted to pass through a point in the visual space. It is further assumed that, individually the rotations of the two eyes satisfy the well known Listing’s law. We formulate and study a combined optimal gaze rotation for the two eyes, by constructing a single Riemannian metric, on the associated parameter space. The goal is to optimally rotate so that the convergent gaze changes between two pre-specified target points in a finite time interval [0, 1]. The cost function we choose is the total energy, measured by the L2\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$L^2$$\end{document} norm, of the six external torques on the binocular system. The torque functions are synthesized by solving an associated ‘two-point boundary value problem’. The paper demonstrates, via simulation, the shape of the optimal gaze trajectory of the focused point of the binocular system. The Euclidean distance between the initial and the final point is compared to the arc-length of the optimal trajectory. The consumed energy, is computed for different eye movement chores and discussed in the paper. Via simulation we observe that certain eye movement maneuvers are energy efficient and demonstrate that the optimal external torque is a linear function in time. We also explore and conclude that splitting an arbitrary optimal eye movement into optimal vergence and version components is not energy efficient although this is how the human oculomotor control seems to operate. Optimal gaze trajectories and optimal external torque functions reported in this paper is new.


Introduction
The class of problem that we consider in this paper is how the human eyes switch their focused points between two point targets in the visual space. Typically we assume that the eyes are on a stationary head, and rotate to inspect point targets that are located in 3D. The gaze directions are always constrained to pass through a point and the goal of the sensing mechanism is to initially start with a target fixed in its view and to switch to an alternate target in the visual field in a fixed interval of time, assumed to be [0, 1]. The paper analyses optimal rotation for a pair of human eyes as an optimal control problem over a fixed interval of time, extending two of our prior work [1,2]. In our earlier research, binocular eye movement has been studied as a cascade of version and vergence eye rotation applied to the two eyes separately (see also [3,4] and Sect. 6.2 of this paper).
Modeling the dynamics of monocular eye rotation has been an important goal in Neuroscience (see [5] for a short review article on how brain controls the eye movement) and Biomechanics [6]. Since the early half of the 19th century, scientists have tried to create dynamic models in order to understand various eye movement trajectories (see [7] for some historical details). The eyes rotate with three degrees of freedom [8,9], rendering the eye movement system, a relatively simple mechanical control system compared to other complex human movement systems [10]. Starting from some of the initial papers of [11], the principles from geometry, 1 3 for example as in [12][13][14], are central to many of the key questions in nonlinear systems theory (see [15]), applied to rotational dynamics. Specific to the eye movement control system, we would also like to refer to [16][17][18] and many references therein. For a single eye, optimization problems associated with gaze control [19], have been extended to optimal control problems studied by [20,21] and [22].
Geometric methods are well known in the study of eye movement rotation (see [23][24][25] and [26]). Riemannian geometry (see [27,28]) has been introduced for monocular control problems in [8]. The main contribution of this paper is to extend the Riemannian geometric formulation to binocular control problems. A configuration space for the binocular eye pair is described as a subset of (3) × (3) . As described in our earlier papers [21], to every gaze direction of the eye there corresponds a circle of rotation matrices. This ambiguity is resolved by imposing a Listing's Law on each of the two eyes 1 . Additionally we assume that the gaze directions of the two eyes always meet at a point in the visual space ℝ 3 , i.e., the eyes are always focused (see Fig. 1).
To end this section, we would like to make the point that binocular eye movement study was perhaps introduced by [30], not much later than the original eye movement studies of Listing in 1845 and Donders in 1848. In spite of that, literature on how the binocular eye is actuated, is rather sparse (see [31] and [32]). Human eyes, according to [30], are actuated 'versionally' towards a target followed by a 'vergence' focusing mechanism (see Fig. 2). In an actual eye movement maneuver, the order of vergence and version can repeat multiple times. The Donders' constraint during the specific eye movements have also been studied in [32] and we would like to refer our readers to [4] (see also [33,34] and [35] for other aspects of binocular eye movement studies). In a recent study, see [36], the role of torsional rotation of the human eye to match the two images of the retina has been introduced. Riemannian geometric approach to optimal binocular eye movement, studied in this paper, is new.

Notations and terminology
We start this section by introducing the axis-angle parametrization, see Fig. 3, of quaternions where the notations are borrowed from [20,21] and [8]. Let us begin with the space of quaternions denoted by Q , see [37] and write each q ∈ Q as q 0 1 + q 1 i + q 2 j + q 3 k.
Space of unit quaternions will be identified with the unit sphere S 3 , and can be written as where ∈ [0, 2 ] is an angle variable and n = (n 1 , n 2 , n 3 ) is a unit axis vector in ℝ 3 . We denote by , the standard map from S 3 into ( ) which maps the quaternion q to an orthogonal matrix that rotates a vector in ℝ 3 around the axis The 'vergence' and 'version' eye movements. The point E is the mid-point between two eyes. Initial and final gaze points are C and D, respectively. C is an arbitrary point in ℝ 3 . D is chosen in such a way that the center of the left eye, C and D are collinear. Point F is the 'end-point of the vergence' and 'initial point of the version' eye movements. The distance between F and E is chosen to equal the distance between D and E. Among the two possible choices of F, the one chosen is closest from D of rotation n by a counterclockwise angle (see Fig. 3). It is easy to verify (see (3) in [21]) that The orthogonal matrix (2) can be associated with the orientation of a rotating rigid body as follows: Each column of (2) is a mutually orthogonal unit vector. We can associate the three column vectors to three body coordinates that describe the orientation. The rotating rigid body, viz. the human eye, has a specific 'gaze direction,' a vector whose direction is what we propose to control. We use the convention that the gaze direction is given by the third column of the rotation matrix (2). We therefore have the following projection map, projecting the orientation matrix (2) to a gaze direction vector where Typically our interest is to control the gaze vector (3) so that it is pointing towards a suitable point target (see Fig. 4). As has been commented in Sect. 1, additional constraints on the quaternion q need to be imposed, so that the constrained orientation matrix with a specific gaze direction is unique. We would consider the pair of eyes to individually satisfy Listing's constraint, given by q 3 = 0 . In the literature on binocular rotation, a general Donders' constraint is also of interest, see [36] where torsional movements allow fusion of images from the two eyes, but will be considered in later papers.

Riemannian metric on human binocular system
We begin by considering parametrization of a point in S 3 , as introduced in (1) and further describe the unit vector n, the axis of rotation, as (4) n = [cos cos sin cos sin ],  Configuration space of the binocular system. The centers of the left and the right eyes are located respectively at (0, 0, 0) and (0, 1, 0). Note that the center of the axes is assumed to coincide with the left eye, upward-pointing axis is the positive x-axis while the forward-pointing axis is the positive z-axis. The y-axis joins the center of the two eyes and the direction from left to right is chosen positive. Curly arrows (in blue) indicate the positive (clockwise, viewed from the axis center) rotation about each axis. The blue dot is the target, and the two red arrows are the eye-gaze directions ]. The parameterization (1), (4) together describes, what is known in [21], as the axisangle parameterization of S 3 and ( ) using the mapping ' '. In order for the orientation of a single eye to satisfy Listing's constraint, q 3 = 0 , we impose = 0 , forcing the axis of rotation to always lie on the plane z = 0 . This reduces the quaternion in (1) to the form (see [8]) We now introduce two such quaternions, one for the left eye q L and the other for the right eye q R , described as and The pair (q L , q R ) is thus an element of S 3 × S 3 . Note that the gaze directions corresponding to the left and the right eye are given by Let us now assume that the left and the right eye has centers separated by the vector e = (x, y, z) = (0, 1, 0) as shown in Fig. 4. The figure shows that the centers of the left and the right eyes are located respectively at (0, 0, 0) and (0, 1, 0). The configuration space of the binocular system is now described by imposing that the vectors g L , g R and e are coplanar. Such a co-planarity condition will impose that the gaze directions of the left and the right eyes always meet at a point. Thus we have We denote by (L stands for Listing, BIN stands for Binocular), the subset of ( ) × ( ) where the orientation matrices separately obey Listing's Law and together the corresponding gaze directions satisfy the co-planarity condition (10). Equivalently, is a subset of × (see [8]) where the gaze directions of each component satisfy (10). Let be the mapping described as where from (10) we have Let us denote by P the 'yz-plane' (also called the Transverse Plane), we remark that the right hand side function of (13) is well defined if g L ∉ P and g R ∉ P , i.e., if the eyes are typically looking above or below, in the quadrant of positive or negative x-axis respectively. On the other hand, assuming that g L ≠ (0, 0, 1) and g R ≠ (0, 0, 1) , then the right hand side function of (13) is not defined if g L ∈ P and g R ∈ P . In Sect. 5 of this paper, we assume that the eyes are always looking in the quadrant corresponding to positive x-axis.
A Riemannian metric on is easily induced from ( ) × ( ) . We define elements g ij of the symmetric Riemannian matrix G LB as 2 and compute 3 the Riemannian metric g given by as 4 (12) ̇L̇L . 2 We define ⟨⋅⟩ to be the standard Euclidean inner product on the product space ℝ 4 × ℝ 4 . 3 The details of this computation is omitted, see [8]. 4 G is the corresponding Riemannian matrix of inner products, see [8].

Euler-Lagrangian formulation of binocular eye movement
Since a Riemannian metric defines kinetic energy on the manifold, we use g in (15) to define the Lagrangian L = 1 2 g of the binocular system 5 . The controlled Euler-Lagrange equations are given by where ∈ { L , L , R } . It follows from [21] that (17) can be written as where G LB is the Riemannian matrix, ∇ is the gradient and is the vector of generalized torques . Further as [21] describes, we define the external torque vector T, in the inertial coordinate to be and 6

Remark 1
The columns of the matrix M are called the Euler basis vectors, see [38], where T has been described as the resultant moment relative to the center of mass on the body. Now we setup our dynamical system for the binocular eye rotation by defining We require that the states go from some a priori agreed Z(0) to Z(1) while minimizing the control energy in a fixed interval of time where T is the vector of external torques on the system given by 7 We denote the costate variables by and define the Hamiltonian as Using the Hamilton's equations [13], the system is now obtained. Using equations (18), (19), and (21), one can recast equation (25) as Finally using the Pontryagin's Maximum Principle, the expressions for optimal external torques (see [8]) are obtained: which we write symbolically as The control torques can now be eliminated from the state space system (26) and we obtain the following dynamical system Since we know only the initial and the final value of Z, we have a two-point boundary value problem. The resulting problem is solved using COMSOL Multiphysics program (see [39]). 8 The computed Z and variables are plugged in (29) to obtain the optimal vector T, which is denoted by T BVP . In Sect. 5, the optimal T BVP is computed and plotted for ten different eye movement examples. In the following paragraph we describe how the ordinary differential equation (30) is implemented in COMSOL. COMSOL is a finite-element based software that can be used to solve both ordinary and partial differential equations. It has a graphical-user-interface (GUI), where one can implement the modeling equations and corresponding initial and boundary conditions. In this paper, we use the COMSOL's Coefficient form PDE module to implement the system of ODEs in (30). The generic PDE takes the form: When implementing (30) as a boundary value problem, we set the coefficient matrices e a = d a = c = = = a = 0 and the unknown vector Further, we choose the parameters = I 12 and f =F[Z ] . Finally, the space variable in (31) is taken as time t, and hence, ∇ ∶= t in (31). In this problem, both boundary conditions correspond to the state variables z 1 … z 6 , and boundary conditions for the costate variables stay free at both endpoints of the time interval. We impose Dirichlet boundary condition for the state variables at t = 0 using the first 6 equations and at t = 1 using the last 6 equations, and do not specify any boundary conditions for the costate variables.

Eye movement scenarios on LBIN explored by simulation
In this section, we present simulation results corresponding to three primary types of eye movements that arise from gazing stationary targets in space: Right-to-Left (RL), Near-to-Far (NF), and Top-to-Bottom (TB), and vice versa. Further, we focus on gazing near targets as well as distant targets. During our simulation, we consider combination of the primary eye movements along with the distance of the gaze. Using the coordinates of the given initial and final target positions, we calculate the corresponding values for the angle variables: L , L , and R and use the computed angle variables as boundary conditions for the resulting twopoint boundary value problem described using (30). The optimal trajectories for the generalized coordinates, velocities, torques, and the external torques are obtained over a unit-interval of time 9 . (31) The simulation results consist of solving the two-point boundary value problem for each eye movement scenario given in Figs. 5, 6, 7, 8, 9, 10, 11, 12, 13 and 14. In each figure, we illustrate the optimal variations of (a) generalized coordinates, (b) generalized velocities, (c) generalized torques, and (d) external torques. Further, in subplots (e)-(h), the change in the focused gaze point of the two eyes and its projections on coordinate planes are shown when the gaze switches from one point target to another. Figs. 5, 6, 7 show simulation results for gazing near targets and the remaining Figs. 8, 9, 10, 11, 12, 13 and 14 illustrate results for gazing distant targets.
In each of the examples below, the center of the two eyes are located at (0, 0, 0) and (0, 1, 0). The separation between the eyes is along the y-axis and is assumed to be of unit length (see Fig. 4).
Example 1 (SV-RL) The target points are at a 'short view' compared to the separation of the two eyes. Two eyes are gazing from right-to-left to move between targets that are located at the points (1, 1, 1) and (1, 0, 1). Hence, both eyes have to primarily rotate about the upward-pointing axis (x-axis) in the counterclockwise direction (see Fig. 5h). In Fig. 5d it is also observed that the torques T L x and T R x are applied about the x-axis. In Fig. 5f it is observed that the eyes rotate in the clockwise direction about the forwardpointing z-axis. Thus the torques T L z and T R z being applied about the z-axis in the clockwise direction are depicted in Fig. 5d with a sign opposite to that of T L x and T R x .
Example 2 (SV-NF) The target points are at a 'short view' compared to the separation of the two eyes. Two eyes are gazing from near-to-far to move between targets that are located at the points (1, 0.5, 1) and (1, 0.5, 2). Hence, both eyes have to primarily rotate about the right-pointing axis (y-axis) in the clockwise direction (see Fig. 6g). In Fig. 6d it is also observed that the torques T L x and T R x are applied about the x-axis. In Fig. 6h it is observed that the eyes rotate in opposite direction about the upward-pointing x-axis. Hence T L x and T R x have opposite signs.
Example 3 (SV-TB) The target points are at a 'short view' compared to the separation of the two eyes. Two eyes are gazing from top-to-bottom to move between targets that are located at the points (2, 0.5, 1) and (1, 0.5, 1). Therefore, both eyes have to primarily rotate about the right-pointing axis (y-axis), and the direction of rotation about the y-axis should be in the clockwise direction for both eyes, and hence, the initial signs of the external torques, about the y-axis, are negative. This behavior can be observed in Fig. 7d as larger external torques are applied about the y-axis: T L y and T R y . Interestingly, in contrast to Example 2, both eyes experience nonzero external torque values along the z-axis.    The gaze point moves from Right-to-Left with Top-to-Bottom between targets that are located at the points (7,2,4) and (3, −2, 4) Example 4 (LV-RL) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from right-to-left to move between targets that are located at the points (3, 2, 4) and (3, −2, 4) . As depicted in Fig. 8d and h, the primary axis of rotation is the upwardpointing x-axis, and hence, we observe larger external The gaze point moves from Top-to-Bottom with Near-to-Far between targets that are located at the points (7,2,4) and (3,2,8)

3
Fig. 14 Example 10 (LV-TBRLNF): Target located at a long view. The gaze point moves from Top-to-Bottom with Right-to-Left with Nearto-Far between targets that are located at the points (7,2,4) and (3, −2, 8) torques around it. In Fig. 8f, it is observed that the eyes rotate in the clockwise direction about the forward-pointing z-axis. Thus the torques T L z and T R z being applied about the z-axis in the clockwise direction is depicted in Fig. 8d with a sign opposite to that of T L x and T R x .
Example 5 (LV-NF) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from near-to-far and moving between targets that are located at the points (3,2,4) and (3,2,8). Hence, both eyes are primarily rotating about the right-point y-axis in the clockwise direction (see Fig. 9g). In Fig. 9d, it is also observed that the torques T L x and T R x are applied about the x-axis. Using the locations of the two eyes and from Fig. 9h, it is observed that both eyes rotate in the counterclockwise direction about the upward-pointing x-axis.
Example 6 (LV-TB) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from top-to-bottom to move between targets that are located at the points (7,2,4) and (3,2,4). Therefore, again, both eyes have to primarily rotate about the right-pointing axis (y-axis), and as illustrated in Fig. 10g, the direction of rotation about the y-axis should be in the clockwise direction for both eyes, and hence, the initial sign of the external torques is negative. This behavior can be observed in Fig. 10d as larger external torques are applied about the y-axis: T L y and T R y . It is also observed from Fig. 10f that the eyes rotate about the z-axis in the same direction (counterclockwise). Further, Fig. 10h indicates the presence of a rotation of two eyes about the upward-pointing x-axis.
Example 7 (LV-RLNF) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from right-to-left with near-to-far (RLNF) to move between targets that are located at the points (3,2,4) and (3, −2, 8) . In this eye movement scenario, as shown in Fig. 11d, g, and h, both eyes primarily rotate about the upward-pointing axis (x-axis) as well as the right-pointing axis (y-axis). In the former axis, the eyes rotate in the counterclockwise direction and in the latter axis the rotation is about the clockwise direction. Moreover, the largest external torques are applied about the x-axis: T L x and T R x . It is also observed from Fig. 11f that the eyes rotate about the z-axis in the clockwise direction yielding negative initial external torques T L z and T R z .
Example 8 (LV-RLTB) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from right-to-left with top-to-bottom (RLTB) to move between targets that are located at the points (7,2,4) and (3, −2, 4) . Similar to RLNF, both eyes primarily rotate about the upward-pointing axis (x-axis) as well as the right-pointing axis (y-axis). As illustrated in Fig. 12d, g, and h, the eyes rotate about the x-axis in the counterclockwise direction resulting positive initial torques: T L x and T R x . Further, it is also observed from Fig. 12f that the eyes rotate about the z-axis in the clockwise direction yielding negative initial external torques T L z and T R z .
Example 9 (LV-TBNF) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from top-to-bottom with near-to-far (TBNF) to move between targets that are located at the points (7, 2, 4) and (3,2,8). In this eye movement scenario, Fig. 12d and g indicate that both eyes primarily rotate about the right-pointing axis (y-axis) in the clockwise direction resulting in negative initial external torques: T L y and T R y . Interestingly, Fig. 12f  and h show counterclockwise rotations about the x-and z-axes.
Example 10 (LV-TBRLNF) The target points are at a 'long view' compared to the separation of the two eyes. Two eyes are gazing from top-to-bottom with right-to-left and nearto-far (TBRLNF) to move between targets that are located at the points (7,2,4) and (3, −2, 8) . Figure 14d indicates that both eyes primarily rotate about the x-and y-axes and possess larger initial external torques about those two axes. Further, Fig. 14f, g, and h show a counterclockwise rotation about the x-axis and clockwise rotations about the remaining two axes for both eyes.
For each of Examples 1-10, in Table 1 we have entered the initial and the final points of the target, the Euclidean distance between the two points together with the arc length, the energy spent to make the optimal move and the corresponding energy spent per unit arc length. With these data, the different examples can now be compared as has been done in Sec. 6.
The computed values of the optimal external torque function (let us call this T BVP (t) ), for each of the ten examples 1-10 have been plotted in Figs. 5d, 6d, 7d, 8d, 9d, 10d, 11d, 12d, 13d and 14d. In Table 2, we have noted down all the six components of T BVP (0) , which is the initial value of the optimal external torque function. The table lists the initial torque vector for each of the ten examples.

Discussion on the simulation results for Examples 1-10
Examples 1-3, in Figs. 5d, 6d, 7d, show that both the eyes experience the same magnitude in the corresponding external torque components, i.e., |T L x | = |T R x |, |T L y | = |T R y |, and |T L z | = |T R z | . The cause for this property is due to the symmetry between the two eyes and the initial and final target positions. Examples 4-6, in Figs. 8, 9, 10 correspond to gazing distant targets and exhibit similar qualitative properties in the variation of the external torques as in the first three examples. However, we observe a slight difference in the corresponding external torques ( T L i ≠ T R i for i ∈ {x, y, z} ) that arise due to the asymmetry in the configurations of the left and right eyes with respect to the initial and final target positions. We make the following observations: -Optimal path that includes 'Moving Right to Left' is not a straight line: In Examples 1, 4, 7, 8 and 10 wherein the initial and the final points involve movements in the 'Right to Left direction', the arc lengths are higher than the straight line distance between the initial and the final target positions (see Table 1). For side wise movement of the gaze, optimal arc is not straight.  Table 1). Said differently, optimal arcs in the xz-plane are significantly straight. -'Optimal movements between targets at a short view are more energy expensive,' compared to targets that are further away. If we compare energy spent per unit arc length, for Examples 1 and 4, 2 and 5, 3 and 6, using Table 1, we will notice the validity of this statement. -'Right to Left movements are more expensive' compared to Near to Far and Top to Bottom movements. This fact is evident by comparing Examples 1 with 2 and 3, and Examples 4 with 5 and 6 (see Table 1, energy spent per unit arc length.) When the primary eye movements are combined, this deficiency is not particularly visible (see Table 1, rows 7 − 10). Regarding satisfaction of Herring's Law, exception occurs in Example 5, see Fig. 11d, wherein the T x components are substantially different between the left and the right eyes. In Example 6, see Fig. 10d, the T z and the T x components do not have precisely the same magnitude, whereas T y , the strongest component does have the same magnitude between the two eyes. Similar comments can be made for other examples. It is indeed quite interesting to note that in Example 10, see Fig. 14d, wherein the eye movement has all the three primary components, Herring's law is satisfied. The three external torque components in the two eyes are almost identical. In Example 11, to be discussed in Sect. 6.2, the initial and the final points are chosen in such a way that the left eye does not have to move and only right eye movement is sufficient to switch the gaze from an initial to a final point.
In this example, we show that optimal eye movement does not support Herring's Law.

Herring's and Helmholtz' controversy
In order to decide whether, from the point of view of optimal control, it makes sense to assume that the left and the right eye are simultaneously innervated or the innervations to the two eyes are separate. In [34], a binocular eye movement experiment was conducted in which the initial point, the final point and the center of the left eye were in one line. The binocular gaze was shifted from the initial to the final point. In this experiment, the left eye does not need to move at all, whereas the right eye needs to rotate. If the eyes were innervated separately, only the right eye is required to move, as was proposed by Helmholtz. In the experiment, however, the eye movement was observed to be split into a cascade of vergence and version movements. In Example 11, the experiment from [34] was repeated from the point of view of optimal control. In Example 12, the vergence/version decomposition of the Example 11 has been described. In Example 13, the vergence/version decomposition of the Example 10 has been described. The details exhibited in Figs. 16 and 17 are described as follows.

Example 11
The gaze of the binocular eyes is rotating between points (1, 1, 1) and (3,3,3). The two eyes are centered as before at points (0, 0, 0) and (0, 1, 0). As shown in Fig. 15, the optimal gaze trajectory is a straight line wherein the left eye does not rotate at all and the right eye changes its gaze from the initial to the final point. Thus the optimal eye movement corroborates Helmholtz's prediction of how the eyes are controlled, i.e., they are innervated separately.
Example 12 (vergence/version) We now split the eye movement in Example 11 into a cascade of 'vergence' followed by 'version', as indicated in [34]. It would follow that under vergence the gaze point moves between (1, 1, 1) and Fig. 15 Example 11: The gaze point moves along a vector parallel to gaze direction of the left eye between targets that are located at the points (1, 1, 1) and (3,3,3). The simulation shows that the left eye does not move, whereas the right eye does. This movement is not observed in an actual human binocular eye movement, where the left eye is not innervated at all whereas the right eye is (3.28, 2.14, 3.28). 11 It is evident from Fig. 16d that the two eyes move in opposite directions during the vergence phase of the eye movement, indicated by the opposite signs of T L z and T R z . We assume that the vergence movement is completed in the time interval [0, 1 2 ] . Next we consider version during the interval [ 1 2 , 1] and the gaze point moves between (3.28, 2.14, 3.28) and (3,3,3). It is evident from Fig. 16 that this time the two eyes move in the same direction (indicated by the same signs of T L z and T R z ).  Fig. 17, along with the external torques (see Table 3 as well). It is evident from Fig. 17e that in this example, the vergence movement is small compared to version. The magnitude of the external torque vector for vergence is considerably small (see Fig. 17d) compared to version. The actual numbers are in the last row of

Remark 2
When an optimal gaze movement is split up between vergence and version, the expended energy rises rapidly. This is evident from Examples 12 and 13, wherein  11 We now indicate how the point F = (3.28, 2.14, 3.28) is computed. Let E be the midpoint between the center of the two eyes and let us denote by C and D the points (1, 1, 1) and (3, 3, 3) respectively (see Fig. 2). We choose F in such a way that F, C and E are in a straight line. Moreover, we assume that the distance F and E equals the distance between D and E. Among two possible coordinate choices of F, we choose the one closest to D. we observe that by and large, the version movements are energy inefficient.

The structure of the optimal controller
Recall that for eyes centered on the y-axis and for rotation matrices in (as introduced in Sect. 3), the optimal external torque function obtained in (29) has an interesting linear structure. For each of the Examples 1-11, the optimal external torque function (see Figs. 5d, 6d, 7d, 8d, 9d, 10d,  11d, 12d, 13d, 14d, and 15d), is of the form where t ∈ [0, 1] . The acronym 'BVP' stands for Boundary Value Problem, and T BVP (t) is the optimal external torque controller obtained by solving the 'BVP' outlined in (30) 13 .
Note that in (29)  We now state and prove the following proposition. (32), if t 1 and t 2 be such that t 1 ≠ t 2 and t 1 , t 2 ∈ [0, 1] and we define a 6 × 6 matrix it follows that rank L < 6. (32) and (33) or equivalently from (34) it would follow that there exists a nonzero vector T BVP (0) contained in row span of W(t 1 ) and row span of W(t 2 ) . It follows that there exists nonzero vectors (a 1 , b 1 , c 1 ) and (a 2 , b 2 , c 2 ) such that 1] row span of W(t).

Remark 3
For each of Examples 1-10, we have computed in Table 4 the singular values of the matrix L (see (35)) choosing t 1 = 0 and t 2 = 0.25, 0.50, 0.75, 1.00 . Each row in the table lists out the 6 singular values. There are 4 pairs of (t 1 , t 2 ) for each example contributing to 4 rows. Ideally if (32) is perfectly satisfied, then the smallest singular value should be zero. This would imply that the last column of Table 4 should ideally be zero. Table 2, the vector T BVP (0) is listed for each of the ten examples. The equation (32) indicates that these vectors completely determine the optimal external torques function. To verify that the control input T BVP (t) to the dynamical system (18), (19), we solve the corresponding initial value problem. In Fig. 18, we display the generalized coordinates from the initial value problem and the boundary value problem from Example 10 (see Fig. 14a), showing that the co-ordinates match perfectly. The matching has been performed for all the other examples as well, but the results are not displayed.

Remark 4 In
Consider an optimal control problem where the goal is to move from a point C to an arbitrary point D i (see Fig. 19). If we assume that the initial point C is fixed and the terminal point D i is arbitrary we consider the the following map: where In (36) the notation (3,6) refers to the Grassmannian manifold [40] of homogeneous 3-planes in ℝ 6 .
The following proposition pertains to the optimal external torque function, which transfers the gaze optimally from C to D i and is denoted by T CD i . Let us denote this function by T CD i (t) 14 . We now state the following proposition.
Proposition 2 Let us assume that the optimal external torque function T CD i (t) satisfy (32) for every D i in ℝ 3 , it follows that T CD i (t) ∈ (C), 14 T CD i (t) is the external torque function computed by solving the Boundary Value Problem on the system (30). 13 In Examples 12, 13 we have T BVP (t) ≈ T BVP (0)(1 − 4t) , since the interval of simulation is 0, 1 2 . This would imply that T CD i (0) ∈ (C) . Using the fact that the external torque function T CD i (t) satisfy (32), it would follow that T CD i (t) ∈ (C) . ◻ To end this section we would like to make the following remark.

Remark 5
The image of the map in (36) can be described as follows

Conclusions
Using Riemannian formulation proposed in this paper, our main goal is to propose and solve a binocular optimal control problem, wherein a pair of visual sensors rotate to focus attention from one target to another. The associated dynamical system (26) is written out using the Euler-Lagrange equations as a control system with 'External Torque' as input. The goal is to minimize a suitable quadratic control energy function while the binocular system changes focus from one target to another. Various eye movement chores were simulated in Sect. 5 and their optimal gaze trajectories were computed. In Examples 12 and 13, the optimal gaze trajectory is split up into an optimal vergence and version movement. We observe that the 'vergence/version' movements are not energy efficient and note this fact in Table 4. In this table, it is noted that energy requirement for two consecutive transfers, vergence followed by version, is significantly higher than the optimal energy requirement for a direct transfer. We conclude this paper by emphasizing two particularly interesting observations that we were able to demonstrate in our simulations in Sect. 5. The first one is that 'Eye movement chores side to side, i.e., from right to left and back are energy expensive,' as opposed to eye movements along the xz-plane (see Table 1, where we observe that in Examples 1 and 4 energy per unit arc length numbers are higher compared to the corresponding numbers for Examples 2, 3, 5 and 6.). The second one is that 'The optimal external torque function is linear in time' (see Sect. 6.3). Somewhat surprisingly, we observe that the 'initial value of the external torque vector completely determines the entire function in the interval [0, 1]' and the choice of this vector is determined by the initial and the final position of the gaze point in ℝ 3 . Moreover the initial value of the external torque vector lies in a fixed 3-plane in ℝ 6 determined by the initial value of the gaze. Changing the initial gaze point alters the 3-plane in ℝ 6 as a point in the Grassmannian manifold (3, 6) 16 (see [40]).
We do not have a specific explanation for the two simulation based observations described here. However, they do have consequences in terms of how visual exploration could be carried out for the binocular system of eyes. If there is a set of n visual targets in space, for some positive integer n, one would like to design a search scheme to sequentially explore the targets. A smart strategy would be avoid, as much as possible, Right to Left and Left to Right movements, because these row span of W(0) = row span of M T LB . 15 Note that although the = [ 2 (t) 4 (t) 6 (t)] vector depends on both C and D i , the matrix W(0) depends only on C.  are energy inefficient. Finally, the linearity of the external optimal torque function has computational consequences. To compute these functions, it is enough to compute T BVP (0) , the optimal torque vector at the initial time t = 0 . In principal one can compute these vectors over a discrete set of target points and use interpolation for other intermediate values. This simplifies the optimal controller computation as opposed to solving the boundary value problem for every set of target points. As a final remark we note that optimal binocular eye movement is an important problem to study in order to design machines that can visually explore a terrain optimally. A limitation of the proposed research is that -optimal controllers we design are typically implemented in an open loop and the computation requires solving a two point boundary value problem, using COMSOL that may not be readily available. Such controllers are perhaps not robust and keeping the final target point stable could become an issue. As a possible subject for future work, we propose to compare optimal controllers synthesized in this paper with other stabilizing, but possibly non-optimal controllers.
Acknowledgements Part of the work on this paper was possible while the first author was visiting the School of Automation Engg., UESTC at Chengdu, China as a Professor. This paper was also supported in part by Dick and Martha Professorship at Texas Tech University, Lubbock, U.S.A.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creat iveco mmons .org/licen ses/by/4.0/.

Appendix: Riemannian matrix calculations on LBIN
Using the axis-angle parameterization from Sect. 2, we now show how to construct the M matrix in (19). Let us begin by referring to [20], page 2488 that, for the Listing's manifold, the angular and the generalized velocity vectors, with respect to a head fixed inertial frame, are related by the following For the Binocular system of eyes, where the two eyes separately satisfy the Listing's constraint (see [29]), we can augment (37) and write where the superscripts L and R refer to the left and the right eye, respectively. Writing the co-planarity condition (13) as one can express and hence, we can rewrite the transformation matrix in (38) as a 6 × 3 matrix M, for as follows: The subscript LB stands for Listing and Binocular. The operator ∇ is defined as The matrix M T LB is precisely the transformation between the vector T of 'external torque to the two eyes' to the generalized torque vector as outlined in (19) (see also [38]). We are now ready to prove the following proposition: Proposition 3 Let G LB be the Riemannian matrix on and let M LB be the matrix defined in (40), and it follows that equation (20) is satisfied 17 .

Proof of Proposition 3
Explicitly writing the matrix G from (16), we obtain 17 This proposition is already known to be true on ( ) and as has been already reported in [21].