Professional Documents
Culture Documents
The Mathematics Used in Navigation Systems
The Mathematics Used in Navigation Systems
The Mathematics Used in Navigation Systems
Hengshan Li
School of Computing and Information Science
University of Maine
5711 Boardman Hall, Orono, ME
hengshan.li@umit.maine.edu
Dijkstras algorithm
One basic function of navigation system is to find the shortest path to the destination.
A* search algorithm solves for single-pair shortest path using heuristics. Most navigation
systems use A * algorithm to answer how to navigate from current location to destination.
Dijkstras algorithm solves the single-source shortest path problem, which means to find
shortest paths from a source vertex v to all other vertices in the graph. In this paper,
however, I focused on the Dijkstras algorithm, as from the literature search, it is the
basis for all optimizations of shortest path algorithm.
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505
An example of finding the shortest bath was presented to illustrate how the algorithm
works. As is shown in the figure 1, we assume that each building is located on a separated
island. The power of each edge between two buildings is the distance between islands.
Which is the shortest to get to Boardman hall from Forgler library?
Figure 1: The Dijkstras Algorithm Example.
First, mark all nodes unvisited. Set the initial node as Forgler. Create a set of the
unvisited nodes called the unvisited set consisting of all the nodes except the initial node.
The unvisited set consists Alumni, Lord, Stevens, Aubert, Little, Hart and Boardman.
The table is as below.
Alumni
Hart
Boardman
Forgler
Second, for the current node, consider all of its unvisited neighbors and calculate their
tentative distances. If this distance is less than the previously recorded distance, then
overwrite that distance. This is the first iteration, so there is no previously recorded
distance. We just put the distance in the table. If there is no edge between two nodes,
we simply put infinity symbol.
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505
Forgler
Alumni
20
Hart
Boardman
Third, considering all of the neighbors of the current node, mark the current node as
visited and remove it from the unvisited set. A visited node will never be checked again;
its distance recorded now is final and minimal. In this case, the nearest distance between
Stevens and Forgler is 20. We remove Stevens from the unvisited set. The table now is
as below:
Table 3: The Third Step
Alumni Lord Aubert Little Hart
Forgler
Stevens
20+20
20+80
Boardman
We repeat the step 3 until the unvisited set is empty, and then stop. The algorithm has
finished. We can get that the shortest path from Forgler to Boardman is from Stevens to
Lord, Aubert, Hart and Boardman. The distance is 80. For the convenience, I combined
all the tables in one table as below:
Al
L
Forgler
Stevens 20+20
Lord
Aubert
Hart
Little
20+80
20+20+10 20+80
120+40 50+10
60+10
20+20+10+10+20
20+20+10+10+20
As for the indoor navigation system, the shortest path is different in terms of that
the weights between edges are sometimes incomparable. For example, my office is located
at the 238 Boardman as is shown in figure 2, and there are two nearby bathrooms. One
is located at the third floor opposite the mail room. Another is at the same floor with
my office, but it is around 100 feets away. It is a little bit tricky to assign the weights
between my office and the two bathrooms, as it seems to be incomparable between height
and distance. In this case, the shortest path for indoor space might depend on the context.
For example, if the time is limited, the third floor bathroom would be a better choice.
Another example is that, in emergency, navigation system needs to find the way to
escape from the building as is shown in figure 3. In this case, navigation system might
needs to find a pseudo destination. Which destination chose make a difference for the
success of escaping.
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505
Another commonly used function of navigation system is to find all the amenities
nearby. As is shown in the figure 4, we want to find the gas stations within 2 miles. At
first, I thought is a topological operation problem. Actually, it is still a graph problem,
and the topology operation can be used to constrain the searching.
Figure 4: The Nearby Gas Station Example.
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505
First, we use the topology operation and find two gas stations. Obviously, the gas
station 2 is more than 2 miles far. Next, we use the graph to calculate the shortest
distance between the current location and all the gas stations.
If you drive to the Bangor Mall, the navigation system will use the speech interface,such
as in 500 feet, turn right on Main Street, to guide you. Speech interface is intuitive
and helpful. The second aspect of math I will illustrate is the regular language and finite
automata used in the speech interface of navigation system.
There are two kinds of languages. The first one is termed as finite alphabet languageague, such as in, feet, turn, right, on and street and so on. For these
words, we can record the voice in advance. In this case, the alphabet A equals {in, feet,
turn, right, on, street}. Another kind of language is termed as infinite alphabet lanague,
such as the address name or the street name. Theoretically, it is finite. However, it will
be extremely time-consuming and needs a large storge space to record all the vedio of
street names. For these words, we have to use the text to speech technology to synthesize
the speech. In this case, the alphabet consists of all the vowels and consonants. In this
paper, I only focus on the first kind of language, which is the regular language. There are
four categories of the alphabet.
The first category contains the number {0,1,2,3,4,5,6,7,8,9,.} and the unit {feet, mile,
kilometer, meter}. This category can construct any distance words, such as 1.3 mile, 0.4
kilometer and 500 feet and so on. The second category contains the direction right, left
and the action turn. This category is responsible for constructing the direction instruction,
such as turn left and turn right. The third category contains the informing words and some
prepositions, such as recalculating, in and on and so on. Based on the three categories,
the grammar of the navigation system speech is:
S recalculating | in A.A B turn C on D street
A T|AT
T 0|1|2|3|4|5|6|7|8|9|.
B feet| mile| kilometer| meter
C left| right
D is the synthesized speech of the street name. The automata graph is as below:
For the indoor space, there are at least two differences. First, there are stairs, escalators
and elevators in the indoor space, so the language might contain enter the elevator and go
upstairs to the 5 floor. Another different is that there is no corridor name, so we cannot
say turn right on Broadway corridor. The substitute approach is to add landmarks, so
the language might be in 20 feet, go upstairs and get to floor 5 and turn left,the room
238 is at your right. The automata of indoor space is shown is the figure 4.
The indoor automata machine is just a rough model. It is a very interesting topic
and I may keep on searching related literature, as it is closely related to my research.
In summary, I discussed two Mathematic used in the navigation system and compared a
little bit difference between the application for indoor and outdoor spaces.
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505
final paper of SIE 505 Formal Foundation for Information Science class (2011), #SIE 505