Navigation function usually refers to a function of position, velocity, acceleration and time which is used to plan robot trajectories through the environment. Generally, the goal of a navigation function is to create feasible, safe paths that avoid obstacles while allowing a robot to move from its starting configuration to its goal configuration.
Potential functions as navigation functions
Potential functions assume that the environment or work space is known. Obstacles are assigned a high potential value, and the goal position is assigned a low potential. To reach the goal position, a robot only needs to follow the negative
gradient
In vector calculus, the gradient of a scalar-valued differentiable function of several variables is the vector field (or vector-valued function) \nabla f whose value at a point p is the "direction and rate of fastest increase". If the gr ...
of the surface.
We can formalize this concept mathematically as following: Let
be the state space of all possible configurations of a robot. Let
denote the goal region of the state space.
Then a potential function
is called a (feasible) navigation function if
#
#
if and only if no point in
is reachable from
.
#For every reachable state,
, the local operator produces a state
for which
.
Probabilistic navigation function
Probabilistic navigation function is an extension of the classical navigation function for static stochastic scenarios. The function is defined by permitted collision probability, which limits the risk during motion. The Minkowski sum used for in the classical definition is replaced with a convolution of the geometries and the Probability Density Functionss of locations. Denoting the target position by
, the Probabilistic navigation function is defined as:
where
is a predefined constant like in the classical navigation function, which ensures the Morse nature of the function.
is the distance to the target position
, and
takes into account all obstacles, defined as
where
is based on the probability for a collision at location
. The probability for a collision is limited by a predetermined value
, meaning:
and,
where
is the probability to collide with the i-th obstacle.
A map
is said to be a probabilistic navigation function if it satisfies the following conditions:
# It is a navigation function.
# The probability for a collision is bounded by a predefined probability
.
Navigation Function in Optimal Control
While for certain applications, it suffices to have a feasible navigation function, in many cases it is desirable to have an optimal navigation function with respect to a given
cost functional
Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criterion, from some set of available alternatives. It is generally divided into two subfi ...
. Formalized as an
optimal control problem, we can write
:
:
whereby
is the state,
is the control to apply,
is a cost at a certain state
if we apply a control
, and
models the transition dynamics of the system.
Applying
Bellman's principle of optimality
A Bellman equation, named after Richard E. Bellman, is a necessary condition for optimality associated with the mathematical optimization method known as dynamic programming. It writes the "value" of a decision problem at a certain point in time ...
the optimal cost-to-go function is defined as
Together with the above defined axioms we can define the optimal navigation function as
#
#
if and only if no point in
is reachable from
.
#For every reachable state,
, the local operator produces a state
for which
.
#
Even if a navigation function is an example for reactive control, it can be utilized for optimal control problems as well which includes planning capabilities.
Stochastic Navigation Function
If we assume the transition dynamics of the system or the cost function as subjected to noise, we obtain a
stochastic optimal control problem with a cost
and dynamics
. In the field of
reinforcement learning
Reinforcement learning (RL) is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward. Reinforcement learning is one of three basic machine ...
the cost is replaced by a reward function
and the dynamics by the transition probabilities
.
See also
*
Control Theory
Control theory is a field of mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a ...
*
Optimal Control
*
Robot Control
Robotic control is the system that contributes to the movement of robots. This involves the mechanical aspects and programmable systems that makes it possible to control robots. Robotics could be controlled in various ways, which includes using ma ...
*
Motion Planning
Motion planning, also path planning (also known as the navigation problem or the piano mover's problem) is a computational problem to find a sequence of valid configurations that moves the object from the source to destination. The term is used ...
*
Reinforcement Learning
Reinforcement learning (RL) is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward. Reinforcement learning is one of three basic machine ...
References
;Sources
*
* {{citation
, last1 = Laumond , first1 = Jean-Paul
, title = Robot Motion Planning and Control
, edition = First
, publisher = Springer
, year = 1998
, isbn = 3-540-76219-1
, url = http://homepages.laas.fr/jpl/book-toc.html
External links
NFsim MATLAB Toolbox for motion planning using Navigation Functions.
Robot control