In applied mathematics, Wahba's problem, first posed by Grace Wahba in 1965, seeks to find a rotation matrix (special orthogonal matrix) between two coordinate systems from a set of (weighted) vector observations. Solutions to Wahba's problem are often used in satellite attitude determination utilising sensors such as magnetometers and multi-antenna GPS receivers. The cost function that Wahba's problem seeks to minimise is as follows:
for
where is the k-th 3-vector measurement in the reference frame, is the corresponding k-th 3-vector measurement in the body frame and is a 3 by 3 rotation matrix between the coordinate frames.The rotation in the problem's definition transforms the body frame to the reference frame. Most publications define rotation in the reverse direction, i.e. from the reference to the body frame which amounts to . is an optional set of weights for each observation.
A number of solutions to the problem have appeared in literature, notably Davenport's q-method, QUEST and methods based on the singular value decomposition (SVD). Several methods for solving Wahba's problem are discussed by Markley and Mortari.
This is an alternative formulation of the orthogonal Procrustes problem (consider all the vectors multiplied by the square-roots of the corresponding weights as columns of two matrices with N columns to obtain the alternative formulation). A compact and elegant derivation can be found in Appel (2015).
Solution via SVD
One solution can be found using a singular value decomposition (SVD).
1. Obtain a matrix as follows:
2. Find the singular value decomposition of
3. The rotation matrix is simply:
where
Geometric interpretation using quaternion circles A geometric interpretation of Wahba’s problem using unit quaternions was presented by Liu, et al. (2026)
For unit vector observations, each correspondence defines a circle of admissible quaternions, called a ''quaternion circle''. To see this, choose any unit quaternion whose rotation maps to . Every other rotation satisfying this correspondence is obtained by subsequently rotating about . With scalar-first quaternions and Hamilton multiplication , the corresponding quaternion can therefore be written asQuaternion multiplication preserves norms, and . Thus and are orthonormal vectors in , and the complete set of admissible quaternions forms a great circle; this arises from the 2-to-1 mapping from unit quaternions to rotation matrices.
For mutually consistent observations, the solution lies at the common intersection of these circles. Two correspondences with non-collinear source vectors determine a unique rotation, represented by two antipodal intersection points. With measurement noise, the circles need not have a common intersection.
The same geometry gives a linear least-squares formulation. Let the rows of form an orthonormal basis for the orthogonal complement of the subspace spanned by and . Therefore, each exact correspondence is equivalent towhich yields a classical linear formulation subject to a unit-norm constraint.
Notes
References Wahba, G. Problem 65–1: A Least Squares Estimate of Satellite Attitude, SIAM Review, 1965, 7(3), 409 Shuster, M. D. and Oh, S. D. Three-Axis Attitude Determination from Vector Observations, Journal of Guidance and Control, 1981, 4(1):70–77 Markley, F. L. Attitude Determination using Vector Observations and the Singular Value Decomposition, Journal of the Astronautical Sciences, 1988, 38:245–258 Markley, F. L. and Mortari, D. Quaternion Attitude Estimation Using Vector Observations, Journal of the Astronautical Sciences, 2000, 48(2):359–380 Markley, F. L. and Crassidis, J. L. Fundamentals of Spacecraft Attitude Determination and Control, Springer 2014 Libbus, B. and Simons, G. and Yao, Y. Rotating Multiple Sets of Labeled Points to Bring Them Into Close Coincidence: A Generalized Wahba Problem, The American Mathematical Monthly, 2017, 124(2):149–160 Lourakis, M. and Terzakis, G. Efficient Absolute Orientation Revisited, IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2018, pp. 5813-5818.
See also Triad method Kabsch algorithm Orthogonal Procrustes problem