A System of Intelligent Algorithms for a Module of Onboard Equipment of Mobile Vehicles

The area of intelligent robotics is moving from the single robot control problem to that of controlling multiple robots operating together and even collaborating in dynamic and unstructured intelligent environments. In such conditions, an intelligent robot control system is only part of general intelligent system. In this paper, we consider a model of such system.


Introduction
Intelligent control systems has been extensively studied in robotics (see e.g.[1,2,3]).It is well-known that the area of intelligent robotics is moving from the single robot control problem to that of controlling multiple robots operating together and even collaborating in dynamic and unstructured intelligent environments (see e.g.[4,5]).Therefore, it is natural to consider an intelligent robot control system as a part of general intelligent system.In particular, for mobile robots, we need to consider a module of onboard equipment of mobile vehicles.Note that an usage of an unmanned vehicle is preferable during solving many practical tasks.In some cases, even for low quality of motion unmanned vehicles have an advantages, which is associated with impossibility of presence of a human or danger for human life.Perhaps, the most simple and inexpensive way for creation of unmanned vehicle is an usage of some onboard equipment for traditional vehicles that provides a remote operator control system for such vehicles.However, in many cases, full transference of control to the operator is impossible.For many applications, there is a large number of different problems with remote operator control systems.In particular, we can mention problems with connections: noise, delays, active interferences.It is clear that partial or full disconnection does not should lead to loss of controllability.We can not allow unpredictable behaviors of vehicles.For this purposes, a system of intelligent algorithms is needed.In particular, such system can allow us to obtain some local control system during communication failures.It is clear that we can use some similar ideas for a module of onboard equipment of traditional vehicles and onboard modules of robots in intelligent environments.We use this approach to consider a general model of a module of onboard equipment of mobile vehicles.

Measurement of Noises
It should be noted that a system of intelligent algorithms can be used in different modes according to traffic capacity of data channel and levels of noises in it.To determine correct values of these parameters and to measure degrees of reliance of incoming signals it is necessary a separate intelligent algorithm.Functioning of this algorithm is based on analysis of time series by combinatorial algorithms and intelligent system of prediction of anomalies in incoming data.

Information about Environment
Measurements of the traffic capacity of a data channel, levels of noises, and degrees of the reliance of control signals allow us to estimate a proper level of the vehicle control autonomy.However, these data are insufficient to choose a final model of an intelligent module.The local control system should have some information about environment.Therefore, the system of algorithms of onboard equipment have subsystems for gathering and analysis of sensor data.
It should be noted that sensor data transmitted to operator can become unavailable.On the other hand, it is economically feasible to store all sensor data on vehicle board.Therefore, a specialized intelligent system in real time analyzes sensor data and performs preparation of onboard information during the functioning of vehicle.This information can be used in the case of disconnection.

Selection of Simple Intelligent Algorithms
According to selected autonomy mode an onboard navigation system uses selection of simple intelligent algorithms.In particular the system of such algorithms includes • installation of the route from point to point; • pursuit of object; • avoidance of objects; • object surveillance; • maintenance of distance; • maintenance of formation with other vehicles; • rounding of obstacles; • collision avoidance; • installation of route for independent return to base.

Module of Self-Awareness
In parallel with the system of simple navigation algorithms operates a module of self-awareness of vehicle control system (see e.g.[6] - [10]) and anticipation of simple facts (see e.g.[11] - [14]).This system should perform following tasks: • anticipation of different dangers; • anticipation of changes in the environment; • malfunction detection of vehicle.
Moreover, a module of self-awareness with module of simple algorithms implements task of construction of more complex navigation algorithms.In particular, we can mention such algorithms as • search of safe shelter; • finding of advantageous point for surveillance; • movement through rugged terrain and environment that is dangerous for navigation.
Another important function is estimating of efficiency of current algorithms of navigation.This function is performed by module of self-awareness.In this case, if some algorithm of navigation will be recognized as ineffective, then a module of self-awareness generates a request for later regeneration of this algorithm.
It is should to be noted that regeneration of navigation algorithms is an expensive task from the computational point of view.Therefore, it is preferable to transmit a request for regeneration to the operator on the base.If a connection with the operator is impossible, then a module of self-awareness puts the control system to the mode of reduced operability for releasing of computational resources.

Generating System
There are three problems that are associated with the development of navigation systems, • automatization of creation of simple navigation systems; • automatization of method of selection of appropriate navigation system; • accumulation and generalization of knowledge for facilitation of transition from construction of simplest navigation systems to more complex.
A natural way to solve mentioned above problems is a creation of some generating system (see e.g.[15]) which is able to generate modules of navigation by some data stream automatically, construct from these modules new navigation systems and generate control modules, providing a correct selection of navigation system for the specific task.Herewith such system can have knowledge base for storing statistical information.Generation of new modules and navigation systems on the basis of existing ones is a classical genetic programming task.In the simplest case, for the same type of navigation modules it is possible to construct a generalizing module for account of simultaneously connected initial modules.
Direct usage of the simultaneous connection of initial modules leads to a successive increase of sizes of generated modules, and in the end to the decrease of its computational efficiency.Therefore, for efficient functioning of generating system a library of specialized algorithms is needed.These algorithms should provide a maintenance of computational efficiency of constructed modules.In particular, this library should contain • minimization algorithms (e.g.simulated annealing, construct minimal automata, algorithm of minimization of neural network through learning a network of specified architecture, different methods of extraction of common part); • algorithms of intelligent parallelization of neural networks and genetic algorithms; • algorithms of transformation and embedding methods (e.g.methods of construction a neural networks by genetic algorithms, algorithms of embedding of finite state automaton in neural networks, methods of construction a genetic algorithms over some specified grammar etc.).
In the process, navigation system of vehicle keeps statistics of incoming information.Herewith functioning is considered within the framework of model "onboard computer -control computer -supercomputer".Thus, generation of new navigation modules occurs on supercomputer and not in the module of onboard equipment.In this case, transmission of tasks to a supercomputer, keeping statistics, performing of auxiliary algorithms redistribution and processing of statistical data is implemented on control computer.This makes it possible to significantly reduce cost of module of onboard equipment, herewith all computations are performed on supercomputer.Thus, if it is necessary to change navigation algorithm or operating conditions of a system are changed, the system sends a signal for regeneration of algorithm.A supercomputer implements analysis of current conditions and generates an efficient algorithm.Then it sends the new algorithm to a vehicle.

Autonomy of a Vehicle
One of the important elements in the remote control is an autonomy of a vehicle.Naturally, requirements to a vehicle control system are determined by its architecture, environment, the range of solved task, and an autonomy mode, in which operates the vehicle.An autonomy mode is a some state of robot control system, which shows how the robot depends from human or other robot during performing the task.
When robot performs under a human command or a human control, there are several kinds of control that depend from degree of human participation in control.Among them, three main types can be allocated.First is described full autonomy of system work, when robot performs a some specified task without any guidance.The next type involves semiautonomous robots, that is a robot partially depends from a human control.In this case, a human can have only limited set of commands.Last type is a mode in which robot performs actions under a full human control.
It is important to note that different algorithms can be used depending from the level of autonomy.This algorithms provide to a vehicle more or less freedom in choice of action.For example, decision making during navigation in typical simple conditions can be fully transferred on the module of onboard equipment.From selected autonomy mode can also depend a mode of computational resources distribution and different kinds of treatment of sensor information.For example, in the case of disconnection with a control computer a vehicle can independently generate some simple navigation modules on board.Otherwise in complex undefined situations the vehicle can wait instructions from control center or independently return to base.

Correspondence Between the System of Self-Awareness and the Navigation System
It is clear that we can consider a correspondence between the navigation system and the self-awareness system.For example, from the one hand, a vehicle should follow the instructions of navigation algorithms, and not take into account own knowledge about what the vehicle should do.From the other hand, it is possible that following to the instructions of navigation algorithms is disadvantageously for the vehicle, and it should intensify a self-awareness system.For example, it is possible that a some heavy object fell into the vehicle.When this happens, the vehicle can conclude about slipping of wheels and tracks herewith onboard camera captures the same visual picture, which is almost unchanged, and process of motion continues.In this case, the vehicle can for some time not accept instructions from navigation algorithm and can try independently get out from under the object, analyzing dependence of own motions from sensor data.

The General System of Motion Planning
The general system of motion planning can be constructed from external and internal modules.To create the external module of motion planning we can use system of multi-agent path planning [16] and system of reconfiguration planning for modular robots [1].These algorithms can be used as a base part of module.To improve the module we can use self-learning system that utilizes the module of safe planning [2] and the model of Hamiltonian path with fixed number of color repetitions [3].Internal module needed for single robot motion planning.It is natural to consider motion planning for humanoid robots separately (see e.g.[17,18]).For mobile robots, the problem of motion planning can be considered as the problem of generation of sequences of motor primitives.To solve this problem we can use different string problems and algorithms for these problems (see [19] - [32]).To improve the internal module we can use the model of one shot learning by imitation.

One Shot Learning by Imitation and Feature Distortion Warping
An algorithm for one shot learning by imitation was proposed in [33] for humanoid robots.It is clear that the same idea can be applied to any mobile robot.This algorithm creates the task path from the cloud of possible waypoints using minimum-energy strategy.In particular, the idea of feature distortion warping is used.Following [33], we can define the k Cartesian coordinates a i from the template as the invariant control points P and the corresponding invariant control points a j in the task P .Note that if we can define each mapping from P to P as a function f , to minimize the distortion of feature in space is equivalent to minimize the following energy function [34]: Note that the regularization parameter λ is a trade-off between the exact matching of points and the smoothness.This parameter is particularly useful in the presence of a noise.It is clear that the quality of the algorithm is critically dependent on the values of the regularization parameter.However, the exact way to calculate values of λ is not obvious.
It is natural to consider different intelligent algorithms for the prediction values of the regularization parameter.Since λ is useful in the presence of a noise, we can also consider different Kalman filters.In our computational experiments, we consider genetic algorithms (GA), multilayer perceptron networks (MPN) with gradient learning algorithm, recurrent neural networks (RN) gradient learning algorithm, 4-order Runge Kutta neural networks (see e.g.[35]), unscented Kalman filters (UKF) (see e.g.[36]), extended Kalman filters (EKF) (see e.g.[36]), adaptive unscented Kalman filters (AUKF) (see e.g.[36]), adaptive neuro-fuzzy extended Kalman filter (ANFEKF) (see e.g.[37]).Runge Kutta neural networks we consider for multilayer perceptron networks with the gradient learning algorithm (RKN-P-GLA) (see [35]), the nonlinear recursive least square learning algorithm (RKN-P-NLSLA) (see [35]), the zeroorder nonlinear recursive least square learning algorithm (RKN-P-0-NLSLA) (see [35]), the first-order nonlinear recursive least square learning algorithm (RKN-P-1-NLSLA) (see [35]) and for recurrent neural networks with the gradient learning algorithm (RKN-R-GLA) (see [35]), the nonlinear recursive least square learning algorithm (RKN-R-NLSLA) (see [35]), the zero-order nonlinear recursive least square learning algorithm (RKN-R-0-NLSLA) (see [35]), the first-order nonlinear recursive least square learning algorithm (RKN-R-1-NLSLA) (see [35]). Let be the set of spatial feature points that represents the template path.Let p} be the set of spatial feature points that represents the path for λ = const.Let ), 1 ≤ l ≤ p} be the set of spatial feature points that represents the path for λ controlled by the algorithm A. It is clear that we can use the average value avrV [A] of as a measure of the quality of the algorithm A. Selected experimental results are given in Tab. 1.

SAT Solvers
It is well-known that usage of efficient satisfiability algorithms and encoding different hard problems as instances of satisfiability has caused considerable interest recently (see e.g.[38,39,40,41]).However, most of them require the use of a supercomputer.For the module of onboard equipment of mobile vehicles we need a SAT-solver that requires significantly less computing resources.In particular, GSAT is a well-known satisfiability algorithm [ (see also [43,44]).This algorithm is extensively used for the solution of the satisfiability problem.It should be noted that GSAT applies only to clausal formulas.The notion of score plays a key role in GSAT.
Note that some modification of the score function are considered.However, usually, the score function is the number of clauses of formula which are falsified by the truth assignment (see e.g.[45]).A modification of GSAT with adaptive score function was proposed in [44].In particular, a genetic algorithm was used for prediction of values of score function.In this paper we consider a new modification of GSAT.In particular, we use Runge Kutta neural networks (see e.g.[35]) for the calculation of values of the adaptive score function.
Let f (z[1], . . ., z[n]) be a CNF.Let T be a truth assignment for the variables of f .Let #occ(k, f, z[i]) be the number of positive occurrences of z T, f ) be the set of clauses of f which are falsified by T .Following [33], we can assume that Also, following [44], we can use a genetic algorithm for prediction of values of α and β.
It is clear that we can consider α and β as functions of time.In this case, we can consider α(t) and β(t) as dynamical systems α = F (α, t) and β = G(β, t) for some unknown functions F and G.
Clearly, a genetic algorithm for prediction of values of α and β can be used to calculate initial conditions α(t) = α 0 and β(t) = β 0 .
Let a(t) be a solution trajectory of the system α = F (α, t).To predict a(t), we consider the 4-order Runge Kutta neural network that described by where where the neural network N α (y, w α ), with input y and weights w α , is the multilayer perceptron network, h α is the time step (see [35]).Similarly, let b(t) be a solution trajectory of the system β = G(β, t).To predict b(t), we consider the 4-order Runge Kutta neural network that described by where where the neural network N β (y, w β ), with input y and weights w β , is the multilayer perceptron network, h β is the time step.For 4-order Runge Kutta neural networks, we consider a gradient learning algorithm.

G = 10 4 G = 10 5 G = 10 6 T 3 :
GSAT −ASF −RK T GSAT −ASF The performance of GSAT-ASF and GSAT-ASF-RK where G is a number of generations of genetic algorithm, T GSAT −ASF is the average time of solution of GSAT-ASF, T GSAT −ASF −RK is the average time of solution of GSAT-ASF-RK.ACKNOWLEDGEMENTS.The work was partially supported by Analytical DepartmentalProgram "Developing the scientific potential of high school", RFBR, research project No. 13-01-00048 a, and Ural Federal University development program with the financial support of young scientists.

Table 1 :
The dependence of the quality of different algorithms from the number p of spatial feature points.

Table 2 :
A number of solved formulas for GSAT-ASF and GSAT-ASF-RK where G is a number of generations of genetic algorithm.