A New Efficient Obstacle Avoidance Control Method for Cars Based on Big Data and Just-in-Time Modeling ()
1. Introduction
A lot of studies on automatic operation for cars have been actively done by various companies and research groups [1] [2] [3] . Automatic operation technique includes automatic obstacle avoidance, automatic braking, automatic parking, automatic driving, automatic tracking, and so on. On the other hand, the word “big data” is spreading rapidly and it is utilized in various research fields [4] [5] [6] . It is expected that the big data technique can be applied to automatic operation problems of cars. However, the number of the researches on automatic operation techniques from the viewpoint of big data is small, and we can say that these techniques are strongly needed in terms of actual utilization of self-driving cars.
The purpose of this research is to develop a new efficient avoidance control method of encountered moving obstacles for cars based on big data and just-in-time modeling. In the just-in-time modeling technique, we regard a database which includes a lot of input and output data for a system as a mathematical model of the system, and we compute a control input by using some extracted data from the database [7] [8] [9] [10] . That is to say, just-in-time modeling is one of the applications of big data. In [11] [12] , the authors have proposed a obstacle avoidance control method for cars based on big data and just-in-time modeling, and have shown that the proposed method can compute a control input that can make a car avoid an encountered obstacle. However, in some situations, the car moves with waste motions, and hence there is a room for improvement in the control method.
The contents of this paper are as follows. First, in Section 2, the problem formulation on the obstacle avoidance control problem for a car is stated. Next, Section 3 gives a brief summary of just-in-time modeling and develops a new efficient control method for obstacle avoidance control of the car. Then, in Section 4, some numerical simulations are demonstrated in order to check the effectiveness of the new method.
2. Problem Formulation
In this section, the problem formulation on the obstacle avoidance control problem for cars shall be presented. This study considers the next nonholonomic car model on the 2-dimensional plane as a mathematical model of a car:
(1)
where
is the center point of the car,
is the heading angle of the car. In addition,
are the control inputs as shown in Figure 1, where
is the velocity to the heading angle direction and
is the angular velocity.
Next, the problem setting of an obstacle is shown. We assume that the shape of the obstacle is circular with the radius of the obstacle is
, and the center of the obstacle is located on the x-axis at the point
as illustrated in Figure 2.
Now, it is assumed that the control inputs
are represented in the form:
(2)
where
is the constant velocity of the car, A is the gain, and
is the control time. It must be noted that if the control inputs (2) are applied to the car model (1), the car moves as depicted in Figure 3. That is to say, the car moves as avoiding an obstacle and returns on the x-axis.
In this research, we consider the following problem on obstacle avoidance control of the car.
Problem [Obstacle Avoidance Control Problem] For a set of given data: a velocity of the car
and a circular obstacle
, find a gain
and an control time
of the control input
in (2) which can avoid collision with the obstacle for the car (1).
As illustrated in Figure 4, if the values of the gain A and the control time
are not suitable, the car collides with the obstacle. In the next section, we will consider a new method based on just-in-time modeling as a solution of the above obstacle avoidance problem.
Figure 3. Obstacle avoidance control for a car.
3. Just-in-Time Modeling Approach to Obstacle Avoidance Control
3.1. Summary of JIT Modeling
In this section, a new method of obstacle avoidance control of a car based on the just-in-time modeling (JIT modeling) approach will be developed. First, a brief summary on just-in-time modeling is shown. A general algorithm on just-in-time modeling is carried out in accordance with the following procedure.
1) Construct a database that contains input-output data of the system.
2) In order to compute an output for a query data, extract some neighborhood data of the query data.
3) Derive a local linear model at the query data from the obtained neighborhood data.
4) Using the local linear model, compute the output for the query data.
Figure 5 shows an illustration of just-in-time modeling. The advantages of just-in-time modeling are as follows; we do not derive a mathematical model of the system for control, it is available for not only linear systems but also nonlinear ones. Computation of an output for a query data needs low calculation amount, however, we have some options such as definition of neighborhood, the total number of data in the database, the number of neighborhood data, derivation of local linear model, and so on.
3.2. Construction of Database
We here consider how to construct a database on obstacle avoidance of the car. At first, we have to decide the range of database. For example, for the velocity of the car
, we denote the minimum and maximum values by
and
, respectively. In addition, we also denote the interval of data for
by
Then, the number of
can be calculated by
(3)
Figure 5. An illustration on just-in-time modeling.
We have to note that
, and
have to be determined so that
is an integer. In a similar way, we can define the number of
and
as
and
:
(4)
respectively.
Next, a computation method of gains and control times which can avoid collision with obstacles is derived. For the range of the gain A and the control time
in the control input
, we denote their maximum and minimum values by
and
, respectively. For a data
, we perform a numerical simulation of the car with the gain A. It is noted that we change the values of A and
from
and
to
and
with the intervals
and
in ascending order, respectively. For the simplicity, it is assumed that the shape of the car is approximated by a circle with a radius
. Then, the condition such that the car does not collide with the obstacle can be represented by
(5)
where
is an offset distance between the car and the obstacle for safety. If the inequality holds while the simulation, obstacle avoidance control is achieved and save the gain
and the control time
in the database. According to circumstances, the gain and the control time which avoid collision cannot be obtained because of the setting of
, that is to say, the car may not avoid an obstacle in spite of the maximum values of the gain
and the control time
. Hence, the number of data in the database N satisfies
(6)
where
is the number of data for which obstacle avoidance control is not achieved. The number of data in the database have greater influence on the control performance and the computation amount in just-in-time modeling.
3.3. Computation of Gain and Control Time
Then, a computation method of a gain for a query data is shown. First, we have to extract some neighborhood data of the query data. We denote the number of data in the database by N and the index of the data by
. In the simplest way, we use Euclidian distance and define the distance between a data
and the query data
as
(7)
The distance
is also saved in the database. Next, we sort all the data in ascending order with respect to the distance
:
, and extract
data from the sorted database (the tilde ~ over variables means sorted data). Finally, by using the K extracted data
, we calculate the gain
and the control time
of the query data
as weighted means:
(8)
where the inverse numbers of the distances
are utilized as weights.
The procedure of obstacle avoidance control of the car based on just-in-time modeling is summarized as the next algorithm and Figure 6.
Algorithm [Obstacle Avoidance Control via JIT Modeling]
Step 1 For various data
, compute a gain A and a control time
which can avoid an obstacle. Then, construct the database which contains the inputs
and the outputs
.
Step 2 For a query data
, calculate distances
for all the data
in the database with (7), add the distances to the database.
Step 3 Sort all the data in the database in ascending order with respect to the distance:
and extract
data from the sorted database
.
Step 4 By using the gains and the distances in the extract K data
, compute the gain
and the control time
from (8).
Step 5 By using the control inputs (2) with the computed gain
and the computed control time
, control the car.
The advantages of the proposed method based on just-in-time modeling are as follows: 1) once the database that includes inputs and outputs data of the car is constructed, control inputs that can realizes obstacle avoidance for various encountered obstacles can be computed using not a mathematical model but the database, 2) the algorithm does not need come complicated calculations, and just needs simple ones such as the four basic arithmetic operators and the sort, hence real-time control is achieved.
Figure 6. Obstacle avoidance control of a car via just-in-time modeling.
4. Numerical Simulations
This section shows some numerical simulations in order to confirm the effectiveness of the proposed method. First, a database on obstacle avoidance of the car for just-in-time modeling is constructed. For construction of a database, we set the ranges of input data as Table 1.
The parameters of the car are set as
. For construction of a database, the range of the gain A is set as
, and the range of the control time
is also set as
. A part of the obtained database is shown in Table 2. The number of data in the database is
, which is equal to
, hence this implies
.
By the database and the proposed algorithm, six cases of numerical simulations (from No. 1 to 6) are carried out and the simulation settings are shown in Table 3. The simulations results are illustrated in Figure 7. Figure 7 shows the trajectories of the car on the xy-plane. From these simulation results, it turns out that the car can avoid the obstacles for various situations. Moreover, it is also confirmed that the proposed control method requires small computation time. We next compare the proposed method to the previous one [11] [12] in terms of efficiency of the movement of the car. In the previous method, the control time
is treated as one of the inputs, and the output is only the gain A. Figure 8 depicts simulation results with the previous method with the three problem settings (from No. 1 to 3) in Table 3. In comparison with Figures 1-3 in Figure 8, we can see that the car moves effectively and has less waste from Figures 1-3 in Figure 7. Consequently, the results indicate the effectiveness of the proposed method.
Table 1. The parameter settings for construction of a database.
Table 2. A part of the obtained database.
Figure 7. Numerical simulation results by the new control method.
Figure 8. Numerical simulation results by the previous method.
5. Conclusion
In this paper, a new obstacle avoidance control method of a car has been developed via just-in-time modeling. The new control method can compute a gain and a control time of the control inputs to avoid encountered obstacles with small computation time. From some numerical simulations, it is showed that the car can avoid various obstacles, and hence the effectiveness of the proposed method can be checked. In addition, the movement of the car generated by the proposed new method is more efficient in comparison with one generated by the previous method. Future work on automatic driving of cars includes the next topics: an extension to avoidance control for moving obstacles, automatic parking and automatic driving based on just-in-time modeling.