Reachable Sets for Simple Models of Car Motion

formed. The construction continued for the closed front. At time τ ∗ = 6.08, the inner front shrinks into a point. The computation of the closed outer front is also continued till this time τ ∗ . The optimal result function V is discontinuous outside of M on the barrier ce . Mobile robots are the focus of a great deal of current research in robotics. Mobile robotics is a young, multidisciplinary field involving knowledge from many areas, including electrical, electronic and mechanical engineering, computer, cognitive and social sciences. Being engaged in the design of automated systems, it lies at the intersection of artificial intelligence, computational vision, and robotics. Thanks to the numerous researchers sharing their goals, visions and results within the community, mobile robotics is becoming a very rich and stimulating area. The book Recent Advances in Mobile Robotics addresses the topic by integrating contributions from many researchers around the globe. It emphasizes the computational methods of programming mobile robots, rather than the methods of constructing the hardware. Its content reflects different complementary aspects of theory and practice, which have recently taken place. We believe that it will serve as a valuable handbook to those who work in research and development of mobile robots.


Introduction
In 1889, Andrey Andreevich Markov published a paper in "Soobscenija Charkovskogo Matematiceskogo Obscestva" where he considered four mathematical problems related to the design of railways. The simplest among these problems (and the first one in course of the presentation) is described as follows. Find a minimum length curve between two points in the plane provided that the curvature radius of the curve should not be less than a given quantity and the tangent to the curve should have a given direction at the initial point. In 1951, Rufus Philip Isaacs submitted his first Rand Corporation Report on differential game theory where he stated and lined out a solution to the "homicidal chauffeur" problem. In that problem, a "car" with a bounded turning radius and a constant magnitude of the linear velocity tries as soon as possible to approach an avoiding the encounter "pedestrian". At the initial time, the direction of the car velocity is given. In 1957, in American Journal of Mathematics, Lester Eli Dubins considered a problem in the plane on finding among smooth curves of bounded curvature a minimum length curve connecting two given points provided that the outgoing direction at the first point and incoming direction at the second point are specified. Obviously, if one takes a particular case of Isaacs' problem with the immovable "pedestrian", then the "car" will minimize the length of the curve with the bounded turning radius. The arising task coincides with the problem considered by A. A. Markov. The difference from the problem by L. E. Dubins is in the absence of a specified direction at the incoming point. The fixation of incoming and outgoing directions presents in the other three problems by A. A. Markov. However, they contain additional conditions inherent to the railway construction. In such a way the notion of a "car" which moves only forward and has bounded turning radius appeared. In 1990, in Pacific Journal of Mathematics, James Alexander Reeds and Lawrence Alan Shepp considered an optimization problem where the object with bounded turning radius and constant magnitude of the linear velocity can instantaneously change the direction of motion to the opposite one. In a similar way, carts move around storage rooms. Thus, the model of the car that can move forward and backward has appeared. Two models (the forward moving car with bounded turning radius; the forward and backward moving car with bounded turning radius) gave rise to numerous literature where various optimization problems related to the transportation are studied. More sophisticated models in which a moving object is considered in a more realistic way have arisen (controlled wheel, bicycle, car with two chassis, car with a trailer). Optimization problems related to such complicated tasks are extremely difficult. The simplest models serve as a "sample" showing where the situation is easy and where it becomes complex. One of the key notion in the mathematical control theory (Pontryagin et al., 1962), (Lee & Markus, 1967), (Agrachev & Sachkov, 2004) is reachable set. The reachable set is a collection of states which can be attained within the framework of the motion model under consideration. The reachable set at given time describes a collection of states realizable at a specified time instant. The reachable set by given time is a collection of states that can be obtained on the whole time interval from an initial time instant to a specified one. This paper is devoted to the investigation of reachable sets at given and by given time for simplest models of car motion.

Simple models of car motion
The simplest car dynamics are described in dimensionless variables by the following system of equationsẋ = sin θ,ẏ = cos θ,θ = u; |u|≤1.
The variables x, y specify the center mass position in the two-dimensional plane; θ is the angle between the direction of the velocity vector and that of the vertical axis y measured clockwise from the latter. The value u acts as a control input. The control u(t) specifies the instantaneous angular velocity of the vector (ẋ(t),ẏ(t)) of linear velocity and is bounded as |u(t)|≤1. The motion trajectories in the plane x, y are curves of bounded curvature. The paper (Markov, 1889) considers four optimization problems related to curves of bounded curvature. The first problem (Markov, 1889), p. 250, can be interpreted as a time-optimal control problem for car dynamics (1). Also, the main theorem (Dubins, 1957), p. 515, allows an interpretation in the context of time-optimal problem for such a car. In works on theoretical robotics (Laumond, 1998), an object with dynamics (1) is called Dubins' car. Model (1) is often utilized in differential game problem formulations (Isaacs, 1951;1965). Next in complexity is the car model by Reeds and Shepp (Reeds & Shepp, 1990): Control u changes the angular velocity, control w is responsible for instantaneous changes of the linear velocity magnitude. In particular, the car can instantaneously change its motion direction to the opposite one. The angle θ is the angle between the direction of the axis y and the direction of the forward motion of the car. It is natural to consider control dynamics where the control w is from the interval [a,1]: Here a ∈ [−1, 1] is the parameter of the problem. If a = 1, Dubins' car is obtained; if a = −1, Reeds and Shepp's car appears.
Finally, one can consider non-symmetric constraint u ∈ [b,1] instead of the bound |u|≤1. Assume that the values of the parameter b satisfy the inclusion b ∈ [−1, 0). In this case, controlled system preserves essential properties inherent to the case |u|≤1 (since the value u = 0 remains the internal point of the restriction on u). Let us write down the dynamics of the last system as the most general one among the above mentioned: Here, a and b are fixed parameters with a ∈ [−1, 1], b ∈ [−1, 0). The model (4) is kinematic, since it does not take into account forces acting on the body. The car is represented as a point mass. The control u determines the angular rate of the linear velocity vector; the control w changes the magnitude of the linear velocity.
In the paper, reachable sets at given time and those ones by given time for system (4) are studied using numerical constructions. The reachable set at time t * is a collection of all states which can be obtained exactly at given time t * . If such states are considered in the plane x, y, then we have a two-dimensional reachable set; if the consideration takes place in space x, y, θ, then a three-dimensional set is obtained. The peculiarity of the reachable set "by given time" is in accounting for the states reachable not only at time t * but on the whole interval [0, t * ].

Reachable sets at given and by given time
Let z 0 =(x 0 , y 0 ) be the initial geometric position and θ 0 be the initial angle at time t 0 = 0. The reachable set G 2 (t * ; z 0 , θ 0 ) at given time t * in the plane x, y is the set of all geometric positions which can be reached from the starting point z 0 , θ 0 at time t * by the trajectories of system (4) using admissible piecewise continuous controls u(·), w(·).
For z 0 = 0, θ 0 = 0, the notation G 2 (t * ) will be used instead of G 2 (t * ;0,0). Since the right-hand side of system (4) does not contain variables x, y, and due to the type of appearance of θ in the right-hand side of (4), the geometry of reachable sets does not depend on z 0 , θ 0 . Namely, Here, Π θ is the operator of clockwise rotation of the plane x, y by the angle θ 0 . Therefore, the study of reachable sets for point-wise initial conditions can be restricted to the case z 0 = 0, θ 0 = 0. The reachable sets by given time are defined in a similar way. Let Classical and the best known is the construction of the reachable sets G 2 (t * ) and G 2 (t * ) for system (1). It was established in paper (Cockayne & Hall, 1975) that any point of the boundary ∂G 2 (t * ) can be attained using piecewise control with at most one switch. Namely, the following variants of the control actions are possible: (−1, 0), (1, 0), (−1, 1), (1, −1). The first variant means that control u ≡ 1 acts on some interval [0,t), and control u ≡ 0 works on the interval [t, t * ]. The similar is true for the rest of the four variants. Using this proposition and running the switch instantt from 0 to t * , we can construct the boundary of the set G 2 (t * ). The form of the sets G 2 (t * ) for four instants of time t * = i 0.5π, i = 1, 2, 3, 4, is shown in Fig. 1.
The chosen values t * correspond to the time needed to turn the velocity vector by the angle i 0.5π when moving with the control u = 1( u = −1). For every t * , the figure has its own scale. In Fig. 2, several trajectories arriving at the boundary of the reachable set are shown.
The trajectories with the extreme controls u = 1 and u = −1 are the circles of radius 1. For u = 0, the motion along a straight line occurs. Fig. 1. Form of the reachable sets G 2 (t * ) for system (1) Since the set G 2 (t * ) is the union of the sets G 2 (t) over all t ∈ [0, t * ], then any point of the boundary ∂G 2 (t * ) is reachable with the control of the above mentioned structure (but this control is defined in general on [0,t] wheret ∈ [0, t * ]). The minimum time problem for system (1) with the initial point z 0 and given direction θ 0 of the velocity vector to the point z for which the angle θ is not specified is very popular. The structure of the solution to this problem was described by A. A. Markov. It was also known to R. Isaacs, since such problem is a degenerate case of the differential game "homicidal chauffeur". Nevertheless, accurate images of reachable sets G 2 (t * ) have been appeared only in the beginning of 1990s (Boissonnat Structure of the controls steering to the boundary of the reachable set G 2 (π) for system (1)  Bui, 1994). Fig. 3 shows the form of the sets G 2 (t) computed by the authors on the interval [0, t f ], t f = 7.3, the output step for the construction results is δ = 0.1.
Hence, when constructing G 2 D (t * ), we add the set D which is rigidly rotated with respect to the origin by the angle θ(t * ;0,0,u(·), w(·)) to each point (being attainable at the time t * with u(·), w(·)) of the usual reachable set. It is assumed that z 0 = 0 and θ 0 = 0. The sense of the set G 2 D (t * ) can be explained using the following example. Let us fix controls u(·), w(·). At the time t * , the geometric position z(t * ;0,0,u(·), w(·)) and the slope θ(t * ;0,0,u(·), w(·)) of the velocity vector are realized. Suppose we are interested at this time instant in a point located at the distance d from the point z(t * ;0,0,u(·), w(·)) orthogonally to the velocity vectorż(t * )=(ẋ(t * ),ẏ(t * )) to the left from its direction. Such point is written as z(t * ;0,0,u(·), w(·)) + Π θ(t * ;0,0,u(·),w(·)) (D), if we take the set consisting from the point (−d,0) in the plane x, y as the set D. The total collection of points at the time t * with the property we are interested in is obtained by the enumeration of admissible controls u(·), w(·) and forms the set G 2 D (t * ). The reachable set G 2 D (t * ) by the time t * with regard to an orientedly added set D is defined as

Isaacs' transformation
System (4) is of the third order with respect to the state variables. Since we are interested in the construction of reachable sets in the plane of geometric coordinates, it is convenient to pass to a system of the second order with respect to the state variables. This can be done using Isaacs' transformation.
Isaacs utilized system (4) with w ≡ 1, u ∈ [−1, 1] (i.e. system (1)) for the formulation and solution of several pursuit-evasion differential games. The pursuit-evasion game "homicidal chauffeur" proposed by R. Isaacs in his report (Isaacs, 1951) was then published in his famous book "Differential games" (Isaacs, 1965) and became classical problem. We will apply the transformation, which R. Isaacs used in this game, for our purposes. Let h(t) be a unit vector in the direction of forward motion of system (4) at time t. The orthogonal to h(t) unit vector is denoted by k(t) (see Fig. 4). We have Axis y of the reference system is directed along the vector h(t), axis x is directed along the vector k(t). Letz =(x,ỹ) be a fixed point in the plane x, y. The coordinates x(t), y(t) of this point in the movable reference system whose origin coincides with the point z(t) are Here, the prime denotes the operation of transposition. Taking into account (5) and (6), one obtainṡ The projection of the velocity vector of system (4) on the axis x at time t is zero, the projection on the axis y is w(t). Therefore, Using (7) and (9), we obtainẋ (t)=−y(t)θ(t).

Solvability sets for problems of approach at given time and by given time
Let M be a closed set in the plane x, y. Denote by W(τ, M) (respectively, by W (τ, M)) the set of all points z =(x, y) with the property: there exist piecewise continuous admissible controls u(·), w(·) which bring system (13) from the initial point z to the set M at time τ (respectively, by time τ). The set W(τ, M) (W (τ, M)) is the solvability set in the problem of reaching the set M at time τ (by time τ). Take now the same set M as a terminal set in the problem of reaching a given set for system (13) and as a set D in the problem of finding reachable set in geometric coordinates for system (4) with regard to an orientedly added set. It follows from the sense of Isaacs' transformation that the set W(τ, M) drawn in coordinates x, y coincides with the set G 2 M (τ) depicted in coordinates x,y. Therefore, Similarly, In the following, we will utilize relations (14), (15) in order to obtain the reachable sets G 2 D (t) and G 2 D (t) of system (4) using the sets W(τ, M) and W (τ, M) computed for system (13) with τ = t and M = D. In addition, if M is a one-point set that coincides with the origin in the plane x, y, then By fixing some pointz =(x,ȳ) in the plane and by increasing t, let us find the first instantt whenz ∈G 2 M (t) (equivalently,z ∈ G 2 M (t)). Sucht be the optimal time V(z) of passing from the point z 0 = 0, θ 0 = 0 to the pointz for system (4) with accounting for M. Hence, the Lebesgue set {z : V(z) ≤ t} of the optimal result function coincides with the set G 2 M (t)=W (t, M). For the sets shown in Fig. 3 (where M = {0}), the function z → V(z) is discontinuous on the upper semi-circumferences of radius 1 with the centers at the points (−1, 0), (1, 0).

Backward procedure for construction of solvability sets
The algorithms developed by the authors for the numerical construction of the sets W(τ, M) and W (τ, M) are based on the backward procedure (the parameter τ increases starting from τ = 0) and being variants of the dynamic programming method for the considered class of problems. Backward procedures for the construction of the solvability sets at given time and by given time are intensively developed (Grigor'eva et al., 2005), (Mikhalev & Ushakov, 2007) for control problems and differential games. Elements of the backward constructions are included in one or another form (Sethian, 1999), (Cristiani & Falcone, 2009) into grid methods for solving differential games. For control problems, the backward procedures are simpler, since the second player whose actions should be accounted for in differential games is absent. Especially simple are the backward procedures for problems in the plane. In this case, one can storage the boundary of the sets W(τ, M) and W (τ, M) in form of polygonal lines. The general idea for the construction of the solvability sets W(τ, M) in the problem of approaching a set M by system (13) at time τ is the following. We deal with polygonal sets which are considered as approximations of the ideal sets W(τ, M). Specify a time step ∆ (it can also be variable) and define τ 0 = 0, ..., τ i+1 = τ i + ∆. Consider the vectogram E(z)= u∈P f (z, u) of the right hand side of the controlled system.
describes approximately the collection of points from which the point z can be approached at time ∆. Running over the boundary ∂W(τ i , M) and attaching the set z − ∆E(z) "to every" point of the boundary, we approximately construct the boundary ∂W(τ i+1 , M) of the set W(τ i+1 , M). Theoretically, the solvability set W (τ * , M) for the problem of approaching the set M by system (13) by the time τ * is defined through the union of the sets W(τ, M), τ ∈ [0, τ * ]. However, one can reject the explicit realization of the union operation and try to construct the boundary of the set W (τ i+1 , M) directly on the base of the boundary of the set W (τ i , M). To this end, the notion of a front is introduced. Using the optimal result function V, the front corresponding to the time τ is formally defined as Ifz / ∈W(τ, M), then every trajectory of system (13) starting from the pointz can approach W (τ, M) through the front F(τ) only. It is known (see e.g. Bardi & Capuzzo-Dolcetta (1997) It follows from results of optimal control theory and theory of differential games that the function z → V(z) is discontinuous on the set A := τ≥0 A(τ) and continuous in the remaining part of the plane. Possible structure of the set A is not well explored for time-optimal problems. It is reasonable to assume that if the set B := A\M is not empty, then it consists of a collection of smooth arcs. Such arcs are called barriers (Isaacs, 1965). By the definition of the front F(τ), we have F(τ) ⊂ W(τ, M). From here, with accounting for the relations F(τ) ⊂ ∂W (τ, M), W(τ, M) ⊂W(τ, M), we obtain F(τ) ⊂ ∂W(τ, M). The main idea of the algorithm of the backward construction of the sets W (τ, M) is explained in Fig. 5. The next set W (τ i+1 , M) for τ i+1 = τ i + ∆ is computed on the basis of the previous set W (τ i , M). The central role in this computation belongs to the front F(τ i ). As a result, the front F(τ i+1 ) is obtained, and a new set A(τ i+1 ) is formed via the extension or reduction of the set A(τ i ). The union F(τ i+1 ) A(τ i+1 ) is the boundary of the next set W (τ i+1 , M). The initial front F(0) coincides with those part of the boundary ∂M that consists of the points from which the trajectories of system (13) (being written in backward time) leave M with increasing τ for at least one pair of admissible controls u(·), w(·). According to (Isaacs, 1965), such part of the boundary of M is called the usable part of M. Therefore, the algorithm resembles the front propagation. Several typical cases (local fragments) of the front propagation are presented in Figs. 6 and 7. Fig. 6a shows the case in which the left end of the front is moving from the endpoint c of the usable part of ∂M with increasing τ. In the algorithm, simultaneously with the computation of the next front F(τ i+1 ), the extension of the barrier is computed by means of connection of the left ends of the fronts F(τ i ) and F(τ i+1 ). In the case considered, this results in the local increase of the totality A(τ i+1 ) with respect to A(τ i ). The extension of the barrier forms a line on which the value function is discontinuous.  In the case shown in Fig. 6b, the right end of the front starts to move along ∂M from the very beginning i.e. for small τ > 0. Here, no barrier line emanates from the right endpoint d of the usable part. The value function near the point d outside the set M is continuous. Fig. 7 represents the case where the left end of the front is running along the back side of the already constructed barrier. This results in the local decrease of the totality A(τ i+1 ) comparing to A(τ i ).
A more detailed description of the algorithm is given in (Patsko & Turova, 2009). Fig. 7. The left end of the front is bending around the barrier line

Results of numerical construction of solvability sets (reachable sets)
Let M be a one-point set that coincides with the origin (in the numerical computations, a circle with a very small radius is taken). For system (3) with a < 0, the set G 2 (t) "swells" monotonically with increasing t, i.e. G 2 (t 2 ) ⊃ G 2 (t 1 ) for t 2 > t 1 , where the strict inclusion holds. This provides that the sets G 2 (t) and G 2 (t) coincide. For a = −1 (i.e. for system (2)) the set G 2 (t)=G 2 (t) is symmetric with respect to the axes x, y. After publishing the paper (Reeds & Shepp, 1990) related to the minimum time problem for system (2), the obtained results were refined and essentially propelled in the works (Sussmann & Tang, 1991), (Soueres et al., 1994), and(Soueres &Laumond, 1996) by using the Pontryagin maximum principle. The second paper describes in particular the construction of reachable sets G 2 (t) and give the structure of controls steering to the boundary of these sets. The properties of monotonic swelling of the sets G 2 (t) and the symmetry make system (2) very convenient for solving very complex problems of robot transportation (Laumond, 1998), pp. 23 -43. For a = −0.8 and a = −1, the reachable sets are shown in Fig. 8. As before, the notation t f means the end time of the construction interval. The symbol δ denotes the output step of the representation, which is not necessarily equal to the step ∆ of the backward constructions. The latter is, as a rule, smaller. For a = 0.8 and a = 0.2, the behavior of the reachable sets G 2 (t) for system (3) with increasing t is shown in Fig. 9. The dependency of the sets G 2 (t) and G 2 (t) on the parameter a is presented for t = 1.8 in Fig. 10. Similar sets but for non-symmetric constraint u ∈ [−0.6, 1] (i.e. for system (4)) are depicted in Fig. 11. Non-symmetry of the restriction on the control u results in the non-symmetry of the obtained sets with respect to the vertical axis. Note that from the theoretical point of view, the minimum time problem and the related problem of the construction of the sets G 2 (t) for system (4) with a = 1 and b ∈ [−1, 0) were studied in (Bakolas & Tsiotras, 2011). In Figs. 12 and 13, the sets G 2 M (τ) computed for a = 0.2 and b = −0.6 are shown. The set G 2 M (τ)=W (τ, M) becomes for the first time non-simply-connected at τ * = 4.452 when the right part of the front collides with M. Here, one needs to fill a "hole" adjoining to the back side of initial part of the barrier. The hole is completely filled out by the timeτ = 4.522. The second hole occurs at time τ * = 5.062 when left and right parts of the front meet. In this case, the filling out of the hole ends atτ = 5.21. The function V of the optimal result is  Fig. 6a). After passing the point d, the left end begins to move along the same barrier line but over its back side. The right end runs along the boundary of the terminal set with increasing τ (as in Fig. 6b), then changes over to the back side of the barrier. At time τ * = 4.864, the self-intersection of the front occurs. The front is divided into two parts: the inner and the outer ones. The ends of the inner front slide along the left barrier until they meet each other and a closed front is formed. The construction then is continued for the closed front. At time τ * = 6.08, the inner front shrinks into a point. The computation of the closed outer front is also continued till this time τ * . The optimal result function V is discontinuous outside of M on the barrier ce.

Structure of controls steering to the boundary of reachable sets at given time
In paper (Patsko et al., 2003), it was established based on the application of the Pontryagin maximum principle to system (1) that for any point (z, θ) ∈ ∂G 3 (t * ) the control steering to this point is piecewise continuous and has at most two switches. In addition, there are only 6 variants of changing the control: 1) 1, 0, 1; 2) −1, 0, 1; 3) 1, 0, −1; 4) −1, 0, −1; 5) 1, −1, 1; 6) −1, 1, −1. The second variant means that the control u ≡− 1 acts on some interval [0, t 1 ), the control u ≡ 0 works on an interval [t 1 , t 2 ), and the control u ≡ 1 operates on the interval [t 2 , t * ].I f t 1 = t 2 , then the second interval (where u ≡ 0) vanishes, and we obtain a single switch from u = −1t ou = 1. In the case t 1 = 0, the first interval where u ≡− 1 vanishes; in the case t 2 = t * the third interval with u ≡ 1 is absent. The control has constant value for all t ∈ [0, t * ] if one of the following three conditions holds: t 1 = t * , t 2 = 0, or both t 1 = 0 and t 2 = t * . Similar is true for the other variants. The proposition on six variants of the control u(t) steering to the boundary of the reachable set G 3 (t * ) is similar in form to the Dubins theorem on the variants of the controls steering to the boundary of the reachable set G 3 (t * ). The same variants are valid. However, due to the relation between the sets G 3 (t * ) and G 3 (t * ) (the set G 3 (t * ) is the union of the sets G 3 (t) over t ∈ [0, t * ]), the above mentioned properties of the controls leading to the boundary of the set G 3 (t * ) result in the analogous properties of the controls leading to the boundary of the set G 3 (t * ), but the converse is false.

Numerical construction of three-dimensional reachable sets at given time
Let us apply the above formulated result on the structure of the control u(t) steering to ∂G 3 (t * ) for the numerical construction of the boundary ∂G 3 (t * ). To construct the boundary ∂G 3 (t * ) of the set G 3 (t * ), we search through all controls of the form 1-6 with two switches t 1 , t 2 . For every variant of switches, the parameter t 1 is chosen from the interval [0, t * ], and the parameter t 2 from the interval [t 1 , t * ]. In addition, controls with one switch and without switches are also considered. Taken a specific variant of switching and searching through the parameters t 1 , t 2 on some sufficiently fine grid, we obtain a collection of points generating a surface in the three-dimensional space x, y, θ. Therefore, each of the six variants yields its own surface in the three-dimensional space. The boundary of the reachable set G 3 (t * ) is composed of pieces of these surfaces. The six surfaces are loaded into the visualization program without any additional processing of data. Using this program, the boundary of the reachable sets is extracted. Some surfaces (in part or as a whole) find themselves inside of the reachable set. The visualization program does not plot such pieces.
The visualization of the three-dimensional sets is done with the program "Cortona VRML Client" utilizing the open standard format VRML/X3D for the demonstration of interactive vector graphics. Fig. 16 shows the boundary of the set G 3 (t * ) at time t * = 1.5π from two perspectives. The initial values of x 0 , y 0 , and θ 0 are equal to zero. The different parts of the boundary are marked with different colors. For example, part 2 is reachable for the trajectories with the control u(t) of the form −1, 0, 1 with two switches. The sections of the reachable set by the plane θ = const are depicted with some step along the axis θ. The points of junction lines of parts 1,2; 1,3; 2,4; 2,5; 2,6; 3,4; 3,5; 3,6 are obtained with a single-switch control. Any point of the common line of parts 5 and 6 is reachable for two trajectories with two switches each. Parts 5 and 6 have non-smooth junction along this line. The angle of the junction is not visible because it is rather small. The control u(t) ≡ 0 steers to the junction point of parts 1−4.  Fig. 16. The set G 3 (t * ) for t * = 1.5π shown from the two perspectives Fig. 17 shows reachable sets G 3 (t * ) at the same perspective but with different scales for four time instants t * . The transformation of the structure of the reachable set boundary is clearly seen. With increasing time, the forward part of the boundary covers the back part composed of patches 5, 6. Note that the angle θ is not restricted as θ ∈ [−π, π). Passing from t * = 3π to t * = 4π, one arrives at the time t * ≈ 3.65π when the reachable set G 3 (t * ) becomes non-simply-connected for some small time interval. Namely, a cavity that does not belong to the reachable set arises. In Fig. 18, an origination of such a situation is shown. Here, a cut of two sets G 3 (t * ) corresponding to instants t * = 3π and t * = 3.65π is depicted. The cut is done using the plane θ = 0. The set G 3 (3π) is simply connected and the set G(3.65π) is not. Fig. 19 shows the set G 3 (t * ) for t * = 1.6π, t * = 2π, and t * = 2.5π. Here the angle θ is calculated modulo 2π.  Fig. 19. The set G 3 (t * ) for three time instants with θ computed modulo 2π

Numerical construction of three-dimensional reachable sets by given time
Let us describe the reachable sets G 3 (t * ) by given time. Theoretically, their construction can base on the definition G 3 (t * )= t∈[0,t * ] G 3 (t), and the boundary of the sets G 3 (t) can be obtained by running t on [0, t * ] with a small step. However, this is very difficult approach for practical constructions. The analysis of the development of the sets G 2 (t * ) and G 2 (t * ) in the plane x, y suggests a more thrifty method. The observation of change of the set G 3 (t) gives the following. For t * ∈ (0, π), any point inside of that part of the boundary ∂G 3 (t * ) which is generated by the controls of the kind 1−4 is strictly inside of the set G 3 (t * + ∆t) for any sufficiently small ∆t > 0. Conversely, any point lying inside of that part of the boundary ∂G 3 (t * ) which is generated by the controls of the kind 5,6 is outside of the set G 3 (t * + ∆t).
Therefore, one can say that for t * ∈ (0, π), the front part of the boundary ∂G 3 (t * ) be the piece of the boundary generated by the controls 1−4, and the back part be the piece of the boundary ∂G 3 (t * ) corresponding to the controls 5,6. The junction of the front and back parts of the boundary ∂G 3 (t * ) occurs along two one-dimensional arcs in space x, y, θ, which correspond to the controls of the form (1, -1) and (-1, 1) with one switch on [0, t * ]. Computing the collection of such arcs for every t ∈ [0, t * ], we obtain a surface which forms the "barrier" part of the boundary of the set G 3 (t * ). In total, the boundary of the set G 3 (t * ) is composed of the front and barrier parts. Thus, the construction of the boundary ∂G 3 (t * ) for t * ∈ [0, π] requires loading of 4 surfaces corresponding to the controls 1−4 with two switches and 2 surfaces corresponding to the controls of the form (1, -1) (surface I) and (-1, 1) (surface II) with one switch on the interval [0, t], where t ∈ [0, t * ], to the visualization program. The program constructs automatically the visible from the outside boundary of the set G 3 (t * ). Let now t * ∈ (π,4π]. In this case, some part of the boundary ∂G 3 (t * ) generated by the controls of the form 5 and 6 becomes the front one. For the construction of the boundary ∂G 3 (t * ), 6 surfaces corresponding to the controls 1−6 with two switches and 2 surfaces I and II corresponding to the controls of the form (1, -1) and (-1, 1) with one switch on [0, t], where t ∈ [0, t * ], are loaded into the visualization program. Note that for t * ∈ [2π,4π] it is not necessary to increment two latter surfaces. It is sufficient to use their parts constructed up to time 2π. It should be emphasized that similarly to the case of the sets G 3 (t * ), there is a small time interval from [3π,4π] on which the set G 3 (t * ) becomes non-simply-connected. For t * from such an interval, the above described rule of the construction of the boundary using the visualization program gives only the external part of the boundary of the sets G 3 (t * ). The detection of the "internal" boundary requires additional analysis and is not described here. Starting from the instant of time t * = 4π, the boundary of the set G 3 (t * ) becomes entirely a front. In this case, G 3 (t * )=G 3 (t * ), t * ≥ 4π. The set G 3 (t * ) for t * = 1.5π is shown from two perspectives in Fig. 20; development of G 3 (t * ) with increasing t * is given in Fig. 21. These pictures can be compared with Figs. 16 and 17. The difference of the reachable sets by given time from the reachable sets at given time is in the presence of the barrier part formed by the smooth surfaces I and II. To understand better its arrangement, Fig. 22 gives the cut-off sets G 3 (2π) and G 3 (3π) (cutting plane is θ = 0). The barrier part is developed from the initial point (0, 0, 0) (white point in the pictures). Every of the shown level lines on the barrier part corresponds to its own instant of time. Till t * = π, the level lines are closed curves. With t * increasing, new level lines which are not anymore closed occur. In addition, the old level lines are reduced at their ends, among them those ones constructed until t * = π. Starting from the instant t * = 2π, the reduction of the constructed lines begins. It finishes at the time t * = 4π when the set G 3 (4π) captures the point (0, 0, 0). The set G 3 (t * ) for t * = 2π with the angle θ computed modulo 2π is shown in Fig. 23. Time-dependent construction of the reachable sets G 3 (t * ) with the indication of which control from variants 1-6 corresponds to every particular piece on the front part of these sets is close to finding of optimal feedback control synthesis for the minimum time problem of steering to the point (0, 0, 0). The optimal feedback control synthesis for system (1) was obtained in (Pecsvaradi, 1972) (θ is taken modulo 2π). Note that some individual images of three-dimensional reachable sets by given time (with θ taken modulo 2π) obtained by other means are available in the works (Laumond, 1998), p. 7, and(Takei &Tsai, 2010), pp. 22, 23, 26, and27.

Case of non-symmetric constraint on control u
The proposition on the structure of controls steering trajectories of system (1) to the boundary of the reachable set G 3 (t * ) is also preserved for the case of non-symmetric constraint u ∈ [b,1] with b ∈ [−1, 0). One should only replace u = −1byu = b. Results of the construction of the sets G 3 (t * ) are shown for b = −0.25 in Fig. 24. The sets G 3 (4π) and G 3 (6π) are depicted from the same perspective and have the same scale. Approximately the same perspective but a larger scale is used in Fig. 25 presenting the set G 3 (4π). This set with the angle θ taken modulo 2π is shown in Fig. 26. With a fixed point (x, y, θ), we can compute the first instant V(x, y, θ) when this point is on the boundary of the set G 3 (t) or, what is the same, on the boundary of G 3 (t). The value V(x, y, θ) be the optimal steering time from the point (0, 0, 0) to the point (x, y, θ). Paper (Bakolas & Tsiotras, 2011) gives results on the computation of level sets of the function V(x, y, θ) for fixed values θ (modulo 2π) and different values of the parameter b. This is equivalent to the computation of θ-sections of the sets G 3 (t) for different values of b.  Fig. 24. The reachable sets G 3 (t * ) for the instants t * = 4π and t * = 6π for non-symmetric constraint on the control u  Fig. 26. The reachable set G 3 (4π) with the angle θ computed modulo 2π

Conclusion
The paper considers reachable sets and inherent character of their development for simplest models of "car" motion used in the mathematical literature. Our investigation is restricted to the cases where reachable sets are constructed in two-and three-dimensional spaces. The understanding of the features and complexities that appear in low dimensional problems can be useful for the analysis of more complex models and for solving real practical problems (Laumond, 1998), (Lensky & Formal'sky, 2003), (LaValle, 2006), (Martynenko, 2007). Mobile robots are the focus of a great deal of current research in robotics. Mobile robotics is a young, multidisciplinary field involving knowledge from many areas, including electrical, electronic and mechanical engineering, computer, cognitive and social sciences. Being engaged in the design of automated systems, it lies at the intersection of artificial intelligence, computational vision, and robotics. Thanks to the numerous researchers sharing their goals, visions and results within the community, mobile robotics is becoming a very rich and stimulating area. The book Recent Advances in Mobile Robotics addresses the topic by integrating contributions from many researchers around the globe. It emphasizes the computational methods of programming mobile robots, rather than the methods of constructing the hardware. Its content reflects different complementary aspects of theory and practice, which have recently taken place. We believe that it will serve as a valuable handbook to those who work in research and development of mobile robots.