<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Reachable set computation for solving fuel consumption terminal control problem using zonotopes</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>1-Ural Federal University (Yekaterinburg, Russia)</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>2-JSC ”Scientific and Production Association of Automatics”</institution>
          ,
          <addr-line>Yekaterinburg</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2010</year>
      </pub-date>
      <volume>29</volume>
      <fpage>2589</fpage>
      <lpage>2594</lpage>
      <abstract>
        <p>In this paper, fuel consumption terminal control problem of liquidpropellant rocket is considered as an optimal terminal control problem of linear discrete-time dynamical system. Control of the system is supposed bounded. Also, we assume there are no external disturbances affect on the system. For solving optimal terminal control problem we introduce the problem of exact reachable set computation. Usually for discrete-time dynamical systems the exact reachable sets have polytope representation. This paper provides an algorithm of exact reachable set computation using zonotopes to represent the exact reachable sets of discrete-time dynamical system. Zonotopes are the special class of polytopes, which are usually used for approximations of reachable sets. Zonotopes have an efficient property: they are closed under linear transformations and Minkowski sum. Performance of proposed algorithm is shown in comparison to exact reachable set computation algorithm using polytopes at the modeling example of launch vehicle two-tank sixteen-step discrete-time dynamical system in R4.</p>
      </abstract>
      <kwd-group>
        <kwd>Reachable Set</kwd>
        <kwd>Polytopes</kwd>
        <kwd>Zonotopes</kwd>
        <kwd>Terminal Control</kwd>
        <kwd>Optimal Control</kwd>
        <kwd>Launch Vehicle</kwd>
        <kwd>Fuel Consumption Control</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Most of the modern space missilery plants which have liquid-propellant engine (e.g. launch vehicles, long-range
missiles, spacecrafts) involve four basic control problems: guidance, navigation, control (stabilization) and fuel
consumption control.</p>
      <p>The fuel consumption control problem of liquid-propellant vehicle is to synchronously consume fuel components
in two tanks: oxidizer tank and fuel tank. Furthermore, it is needed to completely consume fuel supply at a
given time. Thus, the fuel consumption control problem could be considered as an optimal terminal control
problem, where the quality criterion is to minimize deviation of fuel rate and amount of fuel from their desired
values at final time instant. Over the past 40 years a large number of papers have been devoted to solving fuel
consumption terminal control problem of liquid-propellant vehicle. The results of the long investigation of this
problem are summarized in [AI13].</p>
      <p>Copyright © by the paper’s authors. Copying permitted for private and academic purposes.</p>
      <p>At the present time the optimization problems of dynamical system terminal control with known probabilistic
characteristics of a-priori uncertain parameters are investigated well enough. However, in real life, there is an
absence of such probabilistic characteristics of a-priori unknown initial state vector [Sh93]. To handle the optimal
control of complex plants with terminal cost function one needs to take it into account. In order to address this
problem we need to study system dynamics in the time domain. The central concept arising in such studies is
the reachable set – such set of states to which the dynamical system can be steered using feasible controls.</p>
      <p>This paper is a continuation of our research (see [SK16-1], [SK16-2]) that aimed to solve the terminal control
problem of fuel consumption of the liquid-propellant launch vehicle. The previous papers [SK16-1], [SK16-2]
are devoted to forming of linear discrete-time model of launch vehicle dynamics in terms of propulsion system
dynamics and to modeling of obtained linear discrete-time system on PC. In this paper, we present algorithm for
exact reachable set computation that allow us to solve above optimal terminal control problem later. In order
to describe exact reachable set we use two representations: V-polytope (vertex representation of polytope) (e.g.
see [Zi98], [Sh93], [Pa95]) and zonotope (see [Fu04], [Co03]). The proposed reachable set computation algorithm
based on ideas stated in [Sh93] and has one difference: to represent exact reachable sets of linear discrete-time
dynamical system new algorithm uses zonotopes instead of V-polytopes.</p>
      <p>The paper is organized as follows. First, we briefly describe the fuel consumption control problem. Then,
we introduce the mathematical notion of zonotope. Afterwards, we provide algorithm for exact reachable set
computation using zonotopes. Finally, performance of proposed algorithm is shown in comparison to exact
reachable set computation algorithm [Sh93] using polytopes at the modeling example of launch vehicle two-tank
sixteen-step discrete-time dynamical system in R4.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Fuel consumption terminal control problem</title>
      <p>Above we said that on-board fuel consumption control system, implemented on some liquid-propellant launch
vehicles, is required for increasing its energy potential. To achieve this purpose it is necessary to address the
main problem that is completely and synchronously consume fuel components at a given time.</p>
      <p>To solve above the main problem we present the model of linear discrete-time dynamical system, constraints
of state and control vector, and quality criterion.
2.1</p>
      <p>Mathematical model
At the given time interval 0, T = {0, 1, . . . , T } we consider linear discrete-time system that represent the dynamics
of liquid-propellant launch vehicle propulsion system with two fuel tanks shown on figure 2.1. The system has
the following state-space representation:
x(t + 1) = A(t)x(t) + B(t)u(t),
(1)
(2)
(3)
where x(·) ∈ Rn is the state vector; u(·) ∈ Rr is the control (input) vector; A(·) ∈ Rn×n is the state matrix;
B(t) ∈ Rn×r is the input matrix; t is the discrete time, t ∈ 0, T − 1.</p>
      <p>The state vector of this dynamical system includes masses and rates of fuel as the state coordinates. Detailed
procedure of obtaining such linear discrete-time model of propulsion system and fuel tanks of launch vehicle
described in [SK16-1].
2.2</p>
      <p>System constraints
The initial state vector of the plant is determined by variety of propulsion system initial setting-up errors
(e.g. filling error, throttle error, combustion chamber pressure error, etc). Since probabilistic characteristics
of propulsion system initial setting-up errors are unknown, but only their upper bounds, one can consider the
following initial set of states:
The requirement of propulsion system safe work (explosion prevention) constrains the control vector by the set:
x(0) ∈ X0 ⊂ Rn.
u(t) ∈ P(t) ⊂ Rp.
The main problem is to completely and synchronously consume fuel components at a given time T . Moreover,
it should be taken into account that the better values of fuel rates in propulsion system at final time T is to
be equal to nominal (effective) values. Therefore, it is necessary to minimize deviation of state vector x(T ) at
time T (fuel rate and amount of fuel) from desired values xd, i.e. to minimize the following Euclidean norm
Φ : Rn × Rr×(T −1) → R1:
Φ =
σ x(T ) − xd</p>
      <p>,
n
(4)
where x(T ) = x x(0), {u(t)}t∈1,T −1 ∈ Rn – final state vector of plant (1); xd – desired final state vector of
plant (1); σ – scale coefficient vector; || · || – Euclidean norm in Rn.</p>
      <p>Accordingly, the optimal terminal control problem of launch vehicle fuel consumption leads to finding such
control sequence
u(e)(·) =</p>
      <p>u(e)(t) t∈1,T −1 ∈ Rr×T −1, ∀t ∈ 1, T − 1 : u(e)(t) ∈ P(t),
that steers the system (1) at time T from initial set (2) to such final set, in which functional (4) possesses the
minimum value.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Zonotopes: definition and properties</title>
      <p>Zonotopes are a special class of convex polytopes. Zonotope is usually defined as the linear image of a
pdimensional hypercube in Rn. Equivalently, a zonotope is a Minkowski sum of a finite set of line segments. In
this paper, we keep the following definition:</p>
      <sec id="sec-3-1">
        <title>Definition 1 (Zonotope). A zonotope Z is a set such that:</title>
        <p>Z =
(</p>
        <p>i=p )
x ∈ Rn : x = c + X xiri, −1 6 xi 6 1 ,
i=1
where c, r1, . . . , rp are vectors in Rn. We note Z = c, hr1, . . . , rpi .</p>
        <p>Zonotope Z = c, hr1, . . . , rpi is always centrally symmetric and the point c ∈ Rn is the center of Z. The set
of vectors r1, . . . , rp is called the set of generators of zonotope Z. On figure 2 we show a zonotope construction
with three generators in R2.</p>
        <p>Zonotopes have long been studied in combinatorial geometry [Zi98]. At the present time zonotopes are usually
applied to approximate the reachable sets of uncertain dynamical systems (e.g. [Co03], [Gi05], [ASB10]). In this
paper, zonotopes are used to compute exact reachable set of linear discrete-time dynamical system (1).</p>
        <p>Finally, let us show two main properties of zonotopes:
1. Zonotopes are closed under linear transformation. Let L be a linear map and Z = c, hr1, . . . , rpi a zonotope,
LZ =
(</p>
        <p>i=p )
Lx : x = c + X xiri, −1 6 xi 6 1 =
i=1</p>
        <p>Lc, hLr1, . . . , Lrpi , p ∈ N.</p>
        <p>One can compute the image of a zonotope by linear map in linear time with regard to the order of the
zonotope. Order of the zonotope is p/n, where p – number of generators and n – space dimension.
2. Zonotopes are closed under Minkowski sum. Let Z1 = c1, hr1, . . . , rpi and Z2 = c2, hl1, . . . , lqi be two
zonotopes,</p>
        <p>Z1 + Z2 = c1 + c2, hr1, . . . , rp, l1, . . . , lqi , p ∈ N, q ∈ N.</p>
        <p>Hence, one can compute the Minkowski sum of two zonotopes by simple concatenation of two lists.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Reachable sets: definition and properties</title>
      <p>Before we present an algorithm of a reachable set computation, let us introduce the definition and some properties
of a reachable set of system (1). Following definition of a reachable set is based on [Sh93].</p>
      <sec id="sec-4-1">
        <title>Definition 2 (Reachable set). Reachable set of system (1)–(3), corresponding to pair i, X(i)</title>
        <p>×2Rn , at time j (j ∈ i + 1, T ) is a set
∈ 0, T − 1 ×
G i, X(i), j =</p>
        <p>x(j) : x(j) ∈ Rn ∀t ∈ i, j − 1,
x(t + 1) = Ax(t) + Bu(t), x(i) ∈ X(i), u(t) ∈ P(t) .</p>
        <p>In [Sh93] it is assumed that sets X0 and P(t) are the convex polytopes. Taking into account this assumption
and considering the linearity of system (1), we can present the following properties of reachable set.
Property 1 (Compactness and Convexness). A set G 0, X0, t for all t ∈ 1, T is a convex polytope in Rn.</p>
        <sec id="sec-4-1-1">
          <title>Property 2 (Evolutionary property).</title>
          <p>G 0, X0, t + 1 = G t, X(t), t + 1 ,
where X(t) = G 0, X0, t), t ∈ 1, T − 1.</p>
          <p>It is important to note that every reachable set G 0, X0, t , ∀t ∈ 1, T is exact reachable set, since it includes
only such states of system in which system can be steered by feasible control u(t) ∈ P(t). From the evolutionary
property we have the following.</p>
          <p>Corollary 1. Multi-step problem of reachable set G 0, X0, T computation leads to solving of recurrent sequence
of one-step problems of reachable set X(t + 1) = G t, X(t), t + 1 , t ∈ 0, T − 1 computation.
Also, in [Sh93] it is shown that reachable sets G 0, X0, t , ∀t ∈ 1, T can be represented as the set of all vertices
of the polytope, that is as so-called V-polytope (see also [Zi98], [Fu04]).</p>
          <p>In this paper, to represent reachable set of system (1)–(3) we use zonotopes. Since the problem is to compute
exact reachable set of system (1), it is necessary to do the following assumptions.</p>
        </sec>
      </sec>
      <sec id="sec-4-2">
        <title>Assumption 1. The initial set of states X0 is zonotope, i.e. it can be represented as</title>
        <p>X0 = c1, hr1, . . . , rpi , p ∈ N.</p>
        <p>Assumption 2. The constraint of control vector u(t) at every time step t (t ∈ 0, T − 1) is zonotope, i.e. it can
be represented as</p>
        <p>P(t) = c2, hl1, . . . , lqi , q ∈ N.</p>
        <p>Thus, the following proposition holds.</p>
        <p>Proposition 1. Let initial set X0 and control constraint set P(t) of the linear discrete-time dynamical system (1)
be zonotopes. Then the exact reachable set G 0, X0, T of this dynamical system at final (terminal) time T is
also zonotope.</p>
        <p>Proof. Since zonotopes are the special class of convex polytopes, it also have a evolutionary property, that is
G 0, X0, t + 1 = G t, X(t), t + 1 and X(t) = G 0, X0, t), t ∈ 1, T − 1. As it shown above, the exact reachable
set G 0, X0, T at final (terminal) time T can be determined by recurrent sequence of computation of transitional
reachable sets X(t + 1) = G t, X(t), t + 1 , t ∈ 0, T − 1. Thus, it is necessary to show that transitional reachable
sets G t, X(t), t + 1 , t ∈ 0, T − 1 are zonotopes. For t = 0 by definition of reachable set we have
X(1) = G 0, X0, 1 =</p>
        <p>x(1) : x(1) = Ax(0) + Bu(0), x(0) ∈ X0, u(0) ∈ P(0) .</p>
        <p>Taking into account Assumptions 1 and 2, we can consider this reachable set as Minkowski sum of two sets:
X(1) = G 0, X0, 1 = AX0 + BP(0) =
=
=</p>
        <p>Ac1, hAr1, . . . , Arpi + Bc2, hBl1, . . . , Blqi =</p>
        <p>Ac1 + Bc2, hAr1, . . . , Arp, Bl1, . . . , Blqi , p ∈ N, q ∈ N.</p>
        <p>It is clear that X(1) is a zonotope. Accordingly, using X(1) as the initial set it is easy to find that X(2) is also
a zonotope. By induction, using zonotope X(T − 1) as initial set we define that the set G T − 1, X(T − 1), T
is a zonotope. This completes the proof.</p>
        <p>Note that to obtain all vertices of some zonotope Z we assume that the generators are of form ri = [0, bi] for
all i = 1, . . . , m. For each i we just select 0 or bi and compute the sum. Each vertex of Z is such a sum. There
are 2m sums that constitute this highly redundant V-representation. Then, one can remove all redundant ones
using linear programming methods (e.g. [Pa95], [Sh93]). This is a simple but very inefficient way to compute
V-polytope from zonotope. It can be employed only for low dimensions of state space and little number of time
steps. However, there is a much more efficient algorithm [AF96] which is polynomial in the size of both input
and output.</p>
        <p>Now, we ready to present an algorithm of reachable set computation using zonotopes.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Algorithm of reachable set computation</title>
      <p>An algorithm presented in this section is a modification of one in ([Sh93]), and it consists in using of zonotopes
instead of V-polytopes. The obtaining of the algorithm is based on Proposition 1 and the results of previous
section. The purpose of the following recurrent algorithm is to compute reachable set of system (1)–(3) on one
step forward.</p>
      <sec id="sec-5-1">
        <title>Algorithm 1 (Reachable set computation).</title>
        <sec id="sec-5-1-1">
          <title>Phase 1: Generating the set of states described by zonotope:</title>
          <p>ZX(t) = c1, hr1, . . . , rni ,
where c1 – center of zonotope X(t), hr1, . . . , rni – generators of X(t), t ∈ 0, T − 1.</p>
        </sec>
        <sec id="sec-5-1-2">
          <title>Phase 2: Generating the set of feasible controls described by zonotope:</title>
          <p>where c2 – center of zonotope P(t), hl1, . . . , lpi – generators of P(t), t ∈ 0, T − 1.</p>
        </sec>
        <sec id="sec-5-1-3">
          <title>Phase 3: Linear transformation of zonotopes:</title>
          <p>ZP(t) = c2, hl1, . . . , lpi ,
ZˆX(t) = AZX(t) =
ZˆP(t) = BZP(t) =
Ac1, hAr1, . . . , Arni ,
Ac2, hBl1, . . . , Blpi .</p>
        </sec>
        <sec id="sec-5-1-4">
          <title>Phase 4: Determination of the Minkowski sum:</title>
          <p>X(t + 1) = ZˆX(t) + ZˆP(t) =</p>
          <p>Ac1 + Ac2, hAr1, . . . , Arn, Bl1, . . . , Blpi ,
which describes reachable set of system (1)–(3) at moment t + 1.</p>
          <p>It is necessary to note that if matrix A in (1) is not a unity matrix, then the number of reachable set generators
will grow linearly. But when one need to compute V-representation of reachable set from zonotope representation,
the linear programming problem of convex hull computation can expend too much time. Thus, computational
capability of PC constrains in a manner the number of time steps T and dimensionality of a system.
6</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Modeling example</title>
      <p>The obtained reachable set computation algorithm 1 has been realized in MATLAB R2014a. We are going to
show the performance of proposed algorithm in comparison to exact reachable set computation algorithm using
polytopes at the numerical simulation example of launch vehicle two-tank sixteen-step discrete-time dynamical
system in R4, presented in Section 2.</p>
      <p>Example. On the given time interval 0, 16 the dynamic of system (1)–(3), which reproduce the launch vehicle
propulsion system work, is considered. The state vector is:
Control of the system is a scalar u(t) ∈ R, t ∈ 0, 15. Matrices A and B in (1) are equal to:
The initial set of states X0 is a zonotope with:
Since u(t) 6 1, the feasible control set P(t) is a zonotope with:
x(t) =
x1(t), x2(t), x3(t), x4(t)</p>
      <p>∈ R4, t ∈ 0, 16.
00 , B = 02 .</p>
      <p>4</p>
      <p>0
c2 = 00 , l1 = 11 .</p>
      <p>0</p>
      <p>1</p>
      <p>The simulation was realized on an Intel Core i5 3.4 GHz with 8 Gb RAM. The time of simulation is less than
0.5 sec for both algorithm using zonotopes and algorithm using V-polytopes. It is necessary to note that for
systems with dimensions higher than 8 and time steps higher than, say, 50, both algorithms becomes inefficient
since the simplex-method is used.
7</p>
    </sec>
    <sec id="sec-7">
      <title>Conclusion</title>
      <p>In this paper, we presented an algorithm for computation of exact reachable set of linear discrete-time systems.
That algorithm is a modification of one presented in [Sh93]. The modification uses zonotopes, which allow an
efficient implementation of the algorithm to fuel consumption terminal control problem, since time steps are
always low and the sets of constraints may be considered as zonotopes.</p>
      <p>The use of zonotopes for computation of exact reachable sets on large time intervals is possible only using some
approximation procedures (e.g. [Co03], [Gi05]), but there will be a loss in accuracy of reachable set. However,
there are methods allow us to find all vertices of zonotope in polynomial time in the size of both input and
output [AF96].</p>
      <p>Our future work should focus on several points. First, using reachable set computation algorithm we should
solve open-loop fuel consumption optimal terminal control problem of liquid-propellant vehicle. Second, it is
necessary to extend the algorithm to handle linear discrete-time system with external uncertain disturbances.
The third and the most important point is to solve closed-loop fuel consumption optimal terminal control problem
of liquid-propellant vehicle.</p>
      <p>This paper is performed with the assistance of Russian Foundation for Basic Research (project №15-01-02368).
7.0.1</p>
      <p>Acknowledgements
[AI13]</p>
      <p>A.Y. Andrienko, V.P. Ivanov. Theoretical and Practical Problems in On-Board Terminal Systems
Design for Liquid-Propellant Carrier Rockets. Automation and Remote Control, 74(3):401–412, 2013.
[AF96]</p>
      <p>D. Avis, K. Fukuda. Reverse Search for Enumeration. Discrete Appl. Math., 65:21–46, 1996.</p>
      <p>K. Fukuda. From the Zonotope Construction to the Minkowski Addition of Convex Polytopes. Journal
of Symbolic Computation, 38:1261–1272, 2004.</p>
      <p>V.A. Tyulyukin, A.F. Shorikov. Algorithm for Handling the Terminal Control Problem for Linear
Discrete System. Automation and Remote Control, 4:115–127, 1993.
[Zi98]</p>
    </sec>
  </body>
  <back>
    <ref-list />
  </back>
</article>