You are on page 1of 11

Robot Navigation

Using Shortest Path Algorithm

By:
Problem Definition

How to move a robot in path from a starting point to a fixed target in


an n dimensional domain??
How does the surrounding environment interferes with that
autonomous object?
Is there any known priori information about the geometry of the
workspace? about the number , extension and location of obstacles?
Depending on either of the scenarios, the problem resolution can be
more or less complex.
Can we represent that problem as a geometrical space and solve it
with an algorithm?
Introduction

Robot navigation is becoming more popular because of the


convenience that it gives.
Its technology is used now in places such as factories, buildings,
streets and there is a need to optimize its path in terms of
distance, costs, time.
To do so, intelligent path planning is being incorporated robots’
functionality.
Mainly two components need to be considered in intelligent
path planning.
Algorithm

The first component is the algorithm that calculates the


shortest path to have an efficient path planning.
There are a number of varieties of algorithm that can be used.
One of them is shortest path’s algorithm. Shortest path’s
algorithm is used to calculate the shortest distance between
nodes in a graph. There are a lot of different variants of the
shortest path’s algorithm that exist.
Algorithm

 Dijkstra's algorithm solves the single-source shortest path problem with non-


negative edge weight.
 Bellman–Ford algorithm solves the single-source problem when edge
weights can have negative values.
 A* search algorithm solves for single pair shortest path using heuristics to
try to speed up the search.
 Floyd–Warshall algorithm solves all pairs shortest paths.
 Johnson's algorithm solves all pairs shortest paths, and may be faster than
Floyd–Warshall on sparse graphs.
 Viterbi algorithm solves the shortest stochastic path problem with an
additional probabilistic weight on each node.
Algorithm

Most of these variants use fixed nodes as their source in finding the
shortest path and producing a shortest path tree.
In robot navigation, a forward-backward shortest path algorithm can
be used.
We use the target node to find all possible paths back to the source
node.
The running time of the algorithm on a complete directed graph on n
nodes is O(n), with very high probability. This improves on the
previously best result of O(n^2) or O(n log n), which are the case if only
forward scans are allowed
Graphical Representation

The second component to consider is the map.


Factories, streets, and buildings usually have floor plans or routes.
Maps can be used to make a representation of areas for small scale
projects to have an overview on how robots can navigate from its
source to a defined destination.
A topological map is a simplified type of diagram that contains only
vital information and unnecessary information is not considered.
Depending on the specificity of the environment, modification is
brought on the topological map but the relationship between
coordinate points remains constant.
Solution Formulation

Let G = (N, A) be a directed network with an arc length (or arc cost/time) c ij
associated with each arc (i, j) ∈A.
•The network has a distinguished node s, called the source.
•Let A(i) represent the arc adjacency list of node i.
•let C = max {cij: (i, j) ∈A}.
•We define the length of a directed path as the sum of the lengths of arcs in
the path.
•The shortest path problem is to determine for every non source node I ∈ N a
shortest length directed path from node s to node i.
•Alternatively, we might view the problem as sending 1 unit of flow as cheaply
as possible (with arc flow costs as cij) from node s to each of the nodes in N -
{s} in an uncapacitated network.
Solution Formulation
Between a single source node and a single target node
Solution Formulation
Shortest path between the source node and every other node
Thank You

You might also like