Open access peer-reviewed chapter

Multi-Spacecraft Attitude Path Planning Using Consensus with LMI-Based Exclusion Constraints

By Innocent Okoloko

Submitted: May 17th 2017Reviewed: October 10th 2017Published: September 26th 2018

DOI: 10.5772/intechopen.71580

Downloaded: 671


Space missions involving multi-vehicle teams require the cooperative navigation and attitude slewing of the spacecraft or satellites, for such purposes as interferometry and optimal sensor coverage. This introduces extra constraints of exclusion zones between the spacecraft, in addition to the default exclusion constraints already introduced by damaging or blinding celestial objects. In this work, we present a quaternion-based attitude consensus protocol by using the communication topology of the spacecraft team. By using the Laplacian matrix of their communication graph and a semidefinite program, a synthesis of a time-varying optimal stochastic matrix P is done, which is used to generate various consensus and cooperative attitude trajectories from the initial attitudes of the spacecraft. The concept of quaternion-based quadratically constrained attitude control is then employed to satisfy cone avoidance constraints, where exclusion zones are identified, expressed as linear matrix inequalities (LMI), and solved by semidefinite programming (SDP).


  • attitude path planning
  • consensus
  • exclusion
  • optimization
  • LMI

1. Introduction

Attitude control is the process of making a spacecraft, e.g. a satellite to point toward a specific direction of interest, and attitude path planning is an essential part of space missions. Some current and future space missions require the deployment of teams of spacecraft for such purposes as interferometry and sensor coverage, e.g. [1, 2]. The general problem of attitude control (AC) is important, not only in the navigation of satellites but also of other spacecraft [3], aircraft, and robots. For this reason, the topic has been studied extensively in the literature, e.g. [4, 5, 6, 7, 8, 9, 10].

Attitude path planning is a challenging problem and becomes more challenging when it involves multiple spacecraft. First, they are moving at very high speed in highly dynamic environments, subject to external constraints such as blinding celestial objects, which can damage onboard sensors. Secondly, because they are in a team, they must be careful with each other when changing attitude, so as not to collide with each other and damage appendages. We consider a team of networked spacecraft, which share some common objectives, where consensus theory based on graph Laplacians can be applied [11, 12].

Spacecraft attitude dynamics is usually represented by unit quaternions because quaternion dynamics do not encounter the singularities associated with other representations. However, quaternion dynamics are non-linear, which makes it difficult to apply Laplacian-like dynamics directly to quaternions.

Next, we consider some previous work on constrained attitude path planning. In [4], attitude control was formulated as a quadratically constrained optimization problem. Linear matrix inequalities (LMIs) and semidefinite programming (SDP) were employed to solve it for a multiple spacecraft scenario in [6]. In [10], spacecraft attitude stabilization on a sphere was studied. The control torques required for effective attitude stabilization were reduced from three to two. In [12], a consensus-based approach was applied in distributed attitude alignment of a team of communicating spacecraft flying in formation. In [13], a Laplacian-based protocol implemented using the modified Rodriquez parameters(MRP) was employed in leader followingattitude control of spacecraft.

However, none of these aforementioned works apply consensus theory directly to quaternions, except our previous works [7, 8, 9]. In addition, only [4, 6, 7, 8, 9] tackle the important problem of attitude cone avoidance constraints. Moreover, the works [4, 6, 7] were developed for spacecraft in the same coordinate frame, which does not have a direct practical implementation unless developed further.

To handle the difficulty of nonlinearity in quaternion kinematics, we cast the Q-CAC problem as a semidefinite program, which is subject to convex quadratic constraints, stated as LMI. Then a series of Laplacian-like matrices are synthesized, which satisfy the constraints and enables the spacecraft achieve consensus with exclusion. We employed available optimization software tools such as Sedumi [14] and Yalmip [15] running inside MATLAB®, for simulation.

Moreover, the solution presented here was developed for the realistic scenario of spacecraft in different coordinate frames, making it practical to implement directly. Therefore, the contributions of this chapter are aspects of our previous works [7, 8, 9], which are: (1) development of a quaternion consensus protocol; (2) incorporating dynamic cone avoidance constraints into the consensus framework; (3) providing a mathematical convergence analysis for the quaternion-based consensus framework; (4) extending the approach to multiple spacecraft in any coordinate frames, thereby making it more suitable for practical implementation.

The rest of the chapter is organized as follows: The problem statement is in Section 2, followed by brief mathematical preliminaries in Section 3. The solution technique and convergence analysis are in Section 4, numerical simulations in Section 5, and conclusion in Section 6. Notations frequently used in this chapter are listed in Table 1. The words obstacle, avoidance, exclusion, exclusion vectormay be used interchangeably in this chapter.

SCi, SCiSpacecraft i
qiAttitude quaternion vector of SCi, SCi, qi = [q1 q2 q3q4]T
qior qiConjugate of qi
q¯iVector part of qi, q¯i=q1q2q3T
q¯i×Antisymmetric of qi
qStacked vector of more than one quaternion vectors
qoffStacked vector of more than one offset quaternion vectors
Ω, ΠQuaternion dynamics plant matrix
PQuaternion dynamics Laplacian-like plant matrix
ωAngular velocity
τControl torque
JInertia matrix
LLaplacian matrix
PLaplacian-like stochastic matrix
InThen n × nidentity matrix
SmThe set of m × mpositive definite matrices
A~Cone avoidance constraint matrix
RiRotation matrix corresponding to qi
FSCiIFixed coordinate (Inertial) frame with origin at SCi’s center
FSCiBRotational coordinate (Body) frame with origin at SCi’s center
vobsiBVector of obstacle in FSCiB
vobsiIVector of obstacle in FSCiI
vobsi.jIVector of the jthobstacle in FSCiI
vcamiBVector of the SCi’s camera in FSCiB
vcamiIVector of the SCi’s camera in FSCiI
Kronecker multiplication operator
Quaternion multiplication operator
Quaternion difference operator
t0Initial time
tfFinal time
xiPosition vector of SCi, SCi
xStacked vector of nposition vectors
(xij)offOffset vector between iand j
xoffStacked vector of noffset vectors
CThe consensus space for q,C=qq1=q2==qn

Table 1.

Frequently used notations in this chapter.


2. Problem statement

The problem of attitude reconfiguration of a team of communicating spacecraft with avoidance constraints can be stated as follows. Given a set of communicating spacecraft with initial positions at xi(t0) ∈ R3i = 1⋯n, initial attitudes represented by quaternions qi(t0), generate a sequence of consensus trajectories that drive the team to a consensus attitude q(tf) while satisfying exclusion, avoidance and norm constraints.

There are two aspects of the problem stated above: the first is a consensusproblem, wherein it is desired to drive the attitudes to a collective consensus attitude, or to various formation attitudes. For bare consensus, the final consensus is that each spacecraft should eventually point to the average of the initial attitudes. However, relative offset quaternionscan be applied so the consensus attitude can be a desired formation attitude, e.g. each spacecraft can point at 5° away from each other about the z axis. The second problem is that of avoidanceconstraints. This is also important for the team, because spacecraft usually have appendages, some have thrusters that emit plumes, and some have instruments that can be damaged by blinding celestial objects or by the appendage or plume of a team member.

However, the ordinary consensus protocol was not developed for quaternion dynamics. It violates the non-linearity of quaternion kinematics and the quaternion norm preserving requirement. Moreover, the ordinary consensus algorithm also does not incorporate collision avoidance in adversarialsituations; this is a Q-CAC problem. Thus, in this paper, we present aspects of our previous works [7, 8, 9, 16], where we combined consensus theory with constrained optimization to solve the problems stated above. We cast the problems as a semidefinite program(SDP), which is augmented with some convex quadratic constraints written as linear matrix inequalities(LMI).

We present a quaternion consensus protocol that computes a consensus attitude trajectory each time step, and a Q-CAC optimization procedure, which decides whether it is safe to follow the computed attitude trajectory or not. When generated trajectories are unsafe, it computes a new set of quaternion vectors that avoid collision and the cycle repeats until consensus is achieved.

To understand the avoidance aspect, we begin with a simpler illustration of the spacecraft Q-CAC problem with a single spacecraft and a single obstacle (exclusion) vector, as shown in Figure 1.

Figure 1.

Constrained attitude control problem for a single-spacecraft single-exclusion scenario.

Let SCidenote spacecraft i, and vcamiItdenote the unit camera vector in FSCiIcorresponding to the SCi’s attitude qi(see Table 1 for definitions). Also, let vobsiItbe the attitude quaternion representing the obstacle to be avoided (e.g. the Sun, as shown in Figure 1). It is desired that the time evolution of camera vector vcamiIt0to vcamiItfshould avoid vobsiItalways, while maintaining a minimum angular separation of ∅. The requirement can therefore be stated as




The constraint is non-convexand quadraticand should be convexifiedfor it to be represented as a LMI. The convexification was provided in [4], using the quaternion attitude constraints formulation developed in [3] for a single-spacecraft single-obstacle scenario. For that solution, vobsIwas static, vcamiItwas evolving, and both vectors were in the same coordinate frame. This makes it incomplete for practical implementation because, in reality the obstacle and spacecraft are in different coordinate frames.

In [7, 8, 9, 16], we extended the previous avoidance solution to multiple spacecraft. Then we developed a consensus theory of quaternions and appended the new avoidance protocols. We further solved the problem for spacecraft and dynamic obstacles in different coordinate frames to make the solutions more suitable for practical implementation. Next, we present the basic mathematical preliminaries.


3. Mathematical background

In this section, we consider the two basic mathematical theories relevant to this chapter.

3.1. Quaternion-based rotational dynamics

It is convenient to use unit quaternions to represent the attitude of a rigid body rotating in three-dimensional space (such as spacecraft or satellite) because quaternions are not susceptible to the problems of singularities inherent in using Euler angles [17].

The quaternion is a four-element vector


Here, [q1 q2 q3]Tis a vector representing the axis of rotation in the Cartesian (x, y, z) coordinates and q4 is a scalar representing the angle of rotation, of the quaternion. The difference between two quaternions q1 and q2 can be represented in multiplication terms as


where q−2 is the conjugate of q2 and ⊙ is defined in Table 1. Q2 is defined as


It follows that the transformation of q1 to q2 was achieved by the rotation quaternion qd.

The rotational dynamics for the ithquaternion is




Euler’s first-order discretization of Eq. (6) gives


The dynamics of the rotational velocity ωiis


Euler’s first-order discretization of Eq. (10) is


where Jjiis the moment of inertia, ωjiis the rotational velocity and τjiis the control torque, along the three principal axes j = 1, 2, 3, for the ithrigid body. Combining Eqs. (9) and (11) in stacked vector form yields


It is the task of controller synthesis to determine the Ξiand Ψito obtain the torque τithat stabilizes the system.

3.2. Basic consensus theory

The Consensus-based algorithms are distributed protocols based on communication graphs, which can drive the states of a team of communicating agents to an agreed state or a common state. The agents (or vehicles) i (i = 1, ⋯, n) are represented by vertices of the graph and the edges of the graph are the communication links between them. Denote the state of a vehicle ias xi; xis the stacked vector of the states all vehicles in the team, then for systems modeled by first-order dynamics, the following first-order consensus protocol (or similar protocols) have been proposed, e.g. [18, 19]


When ‖xi − xj‖ → (xij)offas t → ∞, ∀i ≠ jthen consensus has been achieved. A more comprehensive presentation of the mathematical basis of consensus (including graph theory), can be found in [16].

However, the basic consensus protocol Eq. (13) cannot admit quaternions directly. Thus, to extend Eq. (13) to attitude quaternions, the following consensus protocol for quaternions was proposed in [7]


where P(t) is a Laplacian-like matrix and q(t) = [q1(t), q2(t)⋯qn(t)]T. More analysis of P(t) follows in the next sections.


4. Solutions

We present solutions to the problem statement in Section 2 [7, 8, 9, 16]. The solution involves four steps: (1) synthesis of consensus attitudes for multiple spacecraft; (2) formulation of Q-CAC in different coordinate frames; (3) determining obstacle vectors in different coordinate frames; (4) integration for consensus based Q-CAC.

4.1. Synthesis of consensus attitudes for multiple spacecraft

To develop consensus for quaternions, we adopt an optimization approach. The Laplacian-like stochastic matrix P(t) in Eq. (14) is synthesized (by an optimization process) at each time step to drive q(t) to consensus while satisfying quaternion kinematics. The components of P(t) are


where Λi(t) > 0 is an unknown positive definite optimization matrix variable, whose components are chosen by the optimization process. Matrix Γ is composed of components of the Laplacian L = [lij] (i, j = 1, ⋯, n), which gives P(t) its Laplacian-like behavior.

We shall now prove the stability of P(t), i.e. that Eq. (14) does indeed achieve consensus. Note that all the theorems, lemmas and proofs in this section had been presented in [7].

Recall the following standard result on a matrix pencil[20].

Theorem 1: For a symmetric-definitepencil A − λB, there exists a nonsingular S = [s1, ⋯, sn] such that


Moreover, Asi = λiBsifor i = 1, ⋯, n, where λi = ai/bi.

Lemma 1: For any time t, the eigenvalues of P(t) are γiηi(t). Here, γiare the eigenvalues of Γ and ηi(t) the eigenvalues of Λ(t). It can therefore be observed that P(t) has only four zero eigenvalues, the rest of its eigenvalues are strictly positive.

Proof:To find the eigenvalues of P(t), consider a scalar λ such that for some nonzero vector s


Eq. (18) defines a symmetric-definite generalized eigenvalue problem(SDGEP), where Γ − λΛ−1(t) defines a matrix pencil. Theorem 1 therefore immediately implies that the eigenvalues of P(t) are γiηi(t). One can also easily observe that due to the property of the Laplacian matrix L, P(t) has positive eigenvalues except for four eigenvalues. This proves the claim.

Theorem 2:The time-varying system Eq. (14) achieves consensus.

Proof:for simplicity, let us assume that there are no offsets, i.e. qoff = 0 (or (qoff)i = [0 0 0 1]T ∀ i). Note, when qhas entered the consensus spaceC=qq1=q2==qn, then q̇=0. Cis the nullspaceof P(t), i.e. the set of all qsuch that P(t)q = 0. Therefore, once qenters Cit stays there.

Suppose that qhas not entered C, then consider a Lyapunov candidate function V = qTΓq; V > 0 unless qC. Then,


where z = Γq ≠ 0 for qC. This implies that qapproaches a point in Cas t → ∞, which proves the claim. Eq. (19) is true as long as Lis nonempty, i.e. if some vehicles can sense, see, or communicate with each other all the time.

4.2. Formulation of Q-CAC in different coordinate frames

Any rigid appendage attached to the body of the ithspacecraft, e.g. a camera, whose pointing direction is vcamiIin inertial frame, can be transformed to the spacecraft fixed body frame by the rotation




is the rotation matrix corresponding to the qi(t) at time t; q¯it×is the antisymmetric matrix[21].

For simplicity let us consider a single SCiwith a single camera, vcamiI, and m(possibly, time-varying) obstacles, vobsi.jIj=1m, defined in FSCiI, to be avoided by vcamiIwhen SCiis re-orientating. Then according to [3], the resulting attitude constraint of Eq. (2) can be written as


Its LMI equivalent according to [4] is


In Eq. (23), μis chosen to ensure μI4+A~jitis positive definite, and




for j = 1, ⋯, m.

Eq. (22) defines the set of attitude quaternions qi(t) to satisfy the constraint vcamiItTvobsi.jItt ∈ [t0, tf], so it is used to find a collision-free vcamiIt. However, in practical situations, another SC(SCj) can be near SCi, then another obstacle vector vobsjIt(e.g. a thruster vector emanating from SCj) defined in FSCjIshould be avoided by SCi. To address such a practical issue, we present a mechanism to calculate vobsi.jI(defined in FSCiI) corresponding to vobsjI(defined in FSCjI) (vobsi.jImeans the obstacle vector originated from the rotating frame of SCjbut defined in FSCiI). Essentially, the mechanism determines the intersection point of vobsjItwith the sphere of radius r, centered on SCi. If such an intersection exists, it defines vobsi.jIwhich can be used to define an attitude constraint represented as Eq. (22) to be avoided by SCi.

Figure 2 illustrates the scenario. SC1 and SC2 are in their different coordinate frames relative to Earth. A thruster attached to SC1 body frame is at vobs1I, while the circles around SC1 and SC2 are spheres representing the coordinate frames from which their attitude evolves. If both spacecraft are close enough, then vector vobs1Imay intersect a point on the sphere of SC2, whereby the intersection defines vobs2.1Iin the frame of SC2. The requirement is that as SC2 changes its attitude from q0 to qf, vcam2Imust avoid the cone created around vobs2.1Itt0tf.

Figure 2.

Q-CAC problem in different frames.

4.3. Determination of obstacle vectors in different coordinate frames

Given SCiin FSCiIand SCjin FSCjI, with emanating vectors, one can easily determine an intersection between a vector emanating from FSCjIwith the sphere centered on FSCiIby using onboard sensors, or by application of computational geometry. Given a line segment originating at p1 and terminating at p2, a point p = [px py pz]Ton [p1, p2] can be tested for intersection with a sphere centered at p3 with radius r[22]. Thus, for any vobsjItin FSCjI, if an intersection point p(t) exists at time twith the sphere centered on FSCiIwith radius r, then vobsi.jIt=pt; otherwise, one can set vobsi.jIt=vcamiIt, to show that no constraints violation has occurred. The value of rwill therefore depend on the application at hand, but must be proportional to the urgency of avoiding obstacle vectors originating from other spacecraft.

The above formulation effectively decentralizes the problem. Therefore, each spacecraft can solve the problem by communicating with its neighbors and/or using its own sensors. Euler first order discretization of Eq. (14) is


The decentralized dynamics for any SCiis therefore


where q1Ttq2TtqyTtare the quaternions of the yother neighboring SC,which SCican communicate with at time t. Moreover, since we are going to apply consensus quaternion protocol Eq. (29), norm constraints must be enforced as follows:


Eq. (30) is the discrete time version of qitTq̇it=0or qtTq̇t=0. This guarantees that qi(t)Tqi(t) = 1 or q(t)Tq(t) = nfor SC, iff ‖qi(0)‖ = 1 ∀ i.

4.4. Integration for consensus based Q-CAC

Using semidefinite programming, the solutions presented previously be cast as an optimization problem, augmented with a set of LMI constraints, and solved for optimal consensus quaternion trajectories. We consider the algorithm in discrete time. Given the initial attitude qi(0) of SCi, (i = 1, ⋯, n), find a sequence of consensus quaternion trajectories that satisfies the following constraints:

qk+1i=qkitPitqki,quaternion consensus dynamics constraintE31
μqitTqitμI4+A~jit10exclusion constraintsE33

Once the next safe quaternion trajectory qsafeihas been determined, the control torque τiand angular velocity ωito rotate the SCioptimally to qsafeican be determined by using the normal quaternion dynamics Eq. (12).


5. Simulation results

Due to limitation of space, we present three results for attitude multi-path planning in different coordinate frames. More results can be found in [7, 8, 16].

5.1. Dynamic avoidance in different coordinate frames without consensus

In this experiment, SC1 and SC2 are attempting a reconfiguration to Earth (either changing orientation to Earth or pointing an instrument to Earth). The initial quaternions of SC1 and SC2 are q01=q02=0001T. The desired final quaternions are


Three thrusters of SC1 in FSC1Bare


A single thruster of SC2 in FSC2Bis at


We want vobs2Ito avoid vobs1.1Iby 50°, and avoid vobs1.2Iand vobs1.3Iby 30° while both are maneuvering to their desired final attitudes. Figure 3(a) shows the avoidance between thrusters of SC1 and SC2 during reorientation to Earth: SC2 cannot reconfigure to the desired qf2due to the avoidance constraints. Note that vobs2.1I, vobs2.2I, vobs2.3Iare the points of intersections of vobs1.1I, vobs1.2I, vobs1.3Iwith SC2. Figure 3(b) satisfaction of avoidance constraints: the sudden jumps to and from −1 indicate times when any of vobs1.1I, vobs1.2I, vobs1.3Ilost intersection with the sphere of SC2 and therefore was replaced with vobs1.iI,i=1,,3.

Figure 3.

Reconfiguration of two spacecraft with avoidance in different coordinate frames: (a) the trajectories, (b) the avoidance graph.

This experiment demonstrates that when both constraints are in conflict the avoidance constraint is superior to the desired final quaternion constraint. As seen from (a), SC2 cannot reconfigure exactly to the desired qf2due to the satisfaction of the avoidance constraints. To resolve this, it is necessary to change either the position of SC2 or SC1.

5.2. Consensus-based dynamic avoidance in different coordinate frames

In this experiment, SC1, SC2, and SC3 will maneuver to a consensus attitude. The initial positions are


A set of initial quaternions were randomly generated, with the following data:


In the direction of the initial attitude q0iof each SCi, a sensitive instrument vcamiIis attached. Also, each SCihas a thruster pointing to the opposite of q0i. It is desired that vcamiIavoids the thruster plumes emanating from each of the two other SCby 30° during the entire period of the maneuvers. From the generated initial quaternions, there is possibility of intersection of the thrusters of SC1 and SC3, with SC2, and the thruster of SC2 may damage SC1 or SC3 at any time k. Figure 4(a) shows the solution trajectories; (b) shows the avoidance graph, which shows that constraints are not violated; (c) shows the consensus graph. The final consensus quaternion is qf = [−0.8167 0.4807 − 0.2396 0.2112]T. This is the normalized average of the initial attitude quaternions, which proves that consensus is achieved.

Figure 4.

Consensus-based dynamic avoidance in different coordinate frames. (a) Reorientation to consensus attitude with intervehicle thruster plume avoidance, (b) avoidance constraints graph, (c) attitude consensus graph.

5.3. Consensus-based attitude formation acquisition with avoidance

To test the capability of the consensus algorithm in formation acquisition, SC1, SC2, and SC3 will maneuver to a consensus formation attitude. Relative offset quaternions were defined to enable the sensitive instruments to point at 30° offsets from each other about the z-axis. The previous set of initial data for q0iand FSCiIwere used. The relative offsets are


Like the previous experiment, we want the sensitive instruments to avoid the thruster plumes emanating from each of the two other SCby an angle of 30°. The trajectories are shown in Figure 5(a) and (b) shows the avoidance graph; no constraints are violated, and (c) shows the consensus graph. The final consensus quaternions are


Figure 5.

Consensus-based attitude formation acquisition with avoidance. (a) Reorientation to consensus formation attitude with intervehicle thruster plume avoidance, (b) avoidance constraints graph, (c) attitude consensus graph.

The differences of these quaternions are 30° apart about the same axis.


6. Conclusion

We presented a solution, which we previously developed, to the problem of attitude path planning for multiple spacecraft with avoidance of exclusion zones, by combining consensus theory and Q-CAC optimization theory. Using the solutions, a team of spacecraft can point to the same direction, or to various formation patterns, while they avoid an arbitrary number of attitude obstacles or exclusion zones in any coordinate frames. We also provided the proof of stability of the Laplacian-like matrix used for the attitude synchronization. Simulation results demonstrated the effectiveness of the algorithm. Current work is underway to implement the algorithms using rotorcraft.

© 2018 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

How to cite and reference

Link to this chapter Copy to clipboard

Cite this chapter Copy to clipboard

Innocent Okoloko (September 26th 2018). Multi-Spacecraft Attitude Path Planning Using Consensus with LMI-Based Exclusion Constraints, Advanced Path Planning for Mobile Entities, Rastislav Róka, IntechOpen, DOI: 10.5772/intechopen.71580. Available from:

chapter statistics

671total chapter downloads

More statistics for editors and authors

Login to your personal dashboard for more detailed statistics on your publications.

Access personal reporting

Related Content

This Book

Next chapter

Search-Based Planning and Replanning in Robotics and Autonomous Systems

By An T. Le and Than D. Le

Related Book

First chapter

Software‐Defined Optical Networking (SDON): Principles and Applications

By Yongli Zhao, Yuqiao Wang, Wei Wang and Xiaosong Yu

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.

More About Us