efficient search of an underwater area based on probability1333810/fulltext01.pdf · munikation med...

42
INOM EXAMENSARBETE DATATEKNIK, GRUNDNIVÅ, 15 HP , STOCKHOLM SVERIGE 2019 Efficient search of an underwater area based on probability HAMPUS PUKITIS FURHOFF KTH SKOLAN FÖR ELEKTROTEKNIK OCH DATAVETENSKAP

Upload: others

Post on 25-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

INOM EXAMENSARBETE DATATEKNIK,GRUNDNIVÅ, 15 HP

, STOCKHOLM SVERIGE 2019

Efficient search of an underwater area based on probability

HAMPUS PUKITIS FURHOFF

KTHSKOLAN FÖR ELEKTROTEKNIK OCH DATAVETENSKAP

Page 2: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Abstract

Today more and more different types of autonomous robots and vehiclesare being developed. Most of these rely on the global positioning systemand/or communication with other robots and vehicles to determine theirglobal position. However, these are not viable options for the autonomousunderwater vehicles (AUVs) of today since radio-waves does not travel wellin water. Instead, various techniques for determining the AUVs position areused which comes with a margin of error. This thesis examines the problemof efficiently performing a local search within this margin of error with theobjective of finding a docking-station or a bouy.

To solve this problem research was made on the subject of search theoryand how it previously has been applied in this context. What was foundwas that classical bayesian search theory had not been used very often inthis context since it would require to much processing power to be a viableoption in the embedded systems that is AUVs. Instead different heuristicswere used to get solutions that still were viable for the situations in whichthey were used, even though they maybe wasn’t optimal.

Based on this the search-strategies Spiral, Greedy, Look-ahead and Quad-tree were developed and evaluated in a simulator. Their mean time to de-tection (MTTD) were compared as well as the average time it took for thestrategies to process a search. Look-ahead was the best one of the four dif-ferent strategies with respect to the MTTD and based on this it is suggestedthat it should be implemented and evaluated in a real AUV.

Keywords: Bayesian search theory, AUV, Heuristics, Quadtree, NP-hard,Dead reckoning

Page 3: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Abstrakt

Idag utvecklas allt fler olika typer av autonoma robotar och fordon. De flestaav dessa ar beroende av det globala positioneringssystemet och/eller kom-munikation med andra robotar och fordon for att bestamma deras globalaposition. Detta ar dock inte realistiska alternativ for autonoma undervat-tensfordon (AUV) idag eftersom radiovagor inte fardas bra i vatten. I stalletanvands olika tekniker for att bestamma AUVens position, tekniker som oftahar en felmarginal. Denna rapport undersoker problemet med att effekt-ivt utfora en lokal sokning inom denna felmarginal med malet att hitta endockningsstation eller en boj.

For att losa detta problem gjordes en litteraturstudie om amnet sokteorioch hur det tidigare har tillampats i detta sammanhang. Det som hittadesvar att den klassiska bayesiska sokteorin inte hade anvants mycket ofta idetta sammanhang eftersom det skulle krava for mycket processorkraft foratt det skulle vara ett rimligt alternativ for de inbyggda systemen pa enAUV. Istallet anvandes olika heuristiska metoder for att fa losningar somfortfarande var dugliga for de situationer dar de anvandes, aven om de kanskeinte var optimala.

Baserat pa detta utvecklades sokstrategierna Spiral, Greedy, Look-aheadoch Quad-tree och utvarderades i en simulator. Deras genomsnittliga tid foratt upptacka malet (MTTD) jamfordes liksom den genomsnittliga tiden dettog for strategierna att bearbeta en sokning. Look-ahead var den basta av defyra olika strategierna med avseende pa MTTD och baserat pa detta foreslasdet att den ska implementeras och utvarderas i en verklig AUV.

Nyckelord: Bayesisk sokteori, AUV, Heuristik, Quadtree, NP-hart, Dodrakning

ii

Page 4: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Contents

Abstract i

1 Introduction 11.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.4 Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.5 Social benefits, ethics and sustainability . . . . . . . . . . . . 31.6 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.7 Employer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.8 Delimitations . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.9 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Search theory 62.1 Optimal search . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.1.1 NP-completeness and NP-hardness . . . . . . . . . . . 92.1.2 Heuristic algorithms . . . . . . . . . . . . . . . . . . . 92.1.3 Quadtrees . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2 Search-strategies . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.1 Optimal search plans with unknown probability distri-

bution . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.2 Bayesian search theory . . . . . . . . . . . . . . . . . . 12

3 Methods 143.1 Research-methods . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1 Literature study . . . . . . . . . . . . . . . . . . . . . . 143.1.2 Experiments . . . . . . . . . . . . . . . . . . . . . . . . 15

3.2 Project-methods . . . . . . . . . . . . . . . . . . . . . . . . . 163.3 Technological methods . . . . . . . . . . . . . . . . . . . . . . 18

3.3.1 Design and construction . . . . . . . . . . . . . . . . . 18

4 Strategies 204.1 Shared behaviour . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.1.1 Figure explanation . . . . . . . . . . . . . . . . . . . . 214.2 Spiral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3 Greedy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Page 5: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

4.4 Look-ahead . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.5 Quad-tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5 Results 265.1 Algorithms and areas chosen for evaluation . . . . . . . . . . . 265.2 Simulation-data . . . . . . . . . . . . . . . . . . . . . . . . . . 27

6 Discussion and conclusions 296.1 Answers for the research questions . . . . . . . . . . . . . . . . 296.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306.3 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306.5 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316.6 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 31

References 32

A Implementation 35

B Samples 36

Page 6: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

1 Introduction

The research-subject of autonomous robots and vehicles is one that has notbeen lacking in attention the last couple of decades. These autonomous ro-bots and vehicle are often used to go on missions in remote places in extremeenvironments. However, one sub-area of this research-subject that is laggingis the one of autonomous underwater vehicles (AUV’s).

Scientists and other organizations hope to be able to use AUV’s to per-form tasks underwater in the future to a greater extent, without the use ofhuman interference [1]. Therefore, this study aims to decrease the energy andtime used by an AUV while searching for an object within a known area, andin this chapter the different parts of the study is introduced.

1.1 Background

The Swedish maritime robotics centre (SMaRC) has identified four researchareas to be of particular interest concerning the futures unmanned maritimerobots [2]:

• Autonomy – the ability to adapt actions based on sensed data

• Endurance – the ability to stay on mission for a prolonged period oftime

• Perception – the “eyes and ears” of the maritime robotics, not only formission-related tasks but also for navigation

• Communication – the notion of sending and receiving data, typicallyunder extremely challenging circumstances

These areas are selected because of the wish that the future AUV’s shouldbe easier to handle, need less assistance from humans and be able to takeon more difficult missions further away in unknown waters. An ambition isthat an AUV should be able to start a mission from a known position and goto a specific position after the mission has been performed, without humaninterference.

However, going out on longer missions comes with some problems.

1

Page 7: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

1.2 Problem

Due to the fact that radio waves cannot penetrate water very far an AUVcannot rely on the global positioning system (GPS) when navigating [3].Instead strategies like dead-reckoning can be used. Dead-reckoning meansthat based on a previously known position, known as a fix, and input fromsensors measuring the movement of the object, the current position can becalculated. A problem with using dead-reckoning for navigation is that thecurrent position always comes with a margin of error, known as a navigationalerror, that grows in size with increasing time since the last fix. An illustrationof this can be seen in figure 1.

At t0

After some time, t >> t0

Most plausible current position

Margin of error

Figure 1: Accumulation and transformation of navigational error over time.

A problem arises given that an AUV should be able to go to a specificposition after a mission and that the AUV most likely have accumulated arather large navigational error during this mission. How will the AUV knowthat it is at the correct position after returning from its mission?

Before any research-question can be formulated, we need to make someassumptions:

1. We assume that at the specific position there is some kind of device

2

Page 8: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

(e.g. a docking-station or a buoy) capable of receiving and transmittingsonar messages that can let us know that we have arrived at the correctdestination.

2. The area of the navigational error is sufficiently small so that the AUVcan search through it without the navigational error expanding beyondmanageability.

With these assumptions in place, the following research-questions can beformulated:

• RQ1: How do you compare different searching-algorithms with respectto energy-consumption and time-efficiency?

• RQ2: Based on RQ1, what is a good algorithm to implement in soft-ware for an AUV with limited computational power, to efficiently searcha bounded area for a stationary object?

1.3 Purpose

The purpose of the study is to minimize the power and time used by an AUVwith a navigational error when searching for a device.

1.4 Goals

The aim of the study and the project is to suggest a software-implementationof an algorithm, based on existing theories or by own construction, that canbe used to minimize the power and time used by an AUV when searching fora device within an area given by a navigational error.

1.5 Social benefits, ethics and sustainability

After this study has been performed and documented, others who may havean interest in performing research with AUV’s will be able to make use of theknowledge gained and implement it in their own projects. So hopefully thisstudy will in the end contribute to increased knowledge about what is goingon in our oceans. It will also have contributed towards the two research areasmentioned in section 1.1, Autonomy and Endurance.

3

Page 9: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

If this study finds a way to decrease the energy used by AUV’s this willnot only mean that they get a smaller environmental impact, but also thatthe AUV’s can stay out on longer missions and gather more data about ouroceans.

However, it can also be used for various military purposes such as mine-countermeasures, attacking targets and gathering intelligence [4]. Althoughit is unlikely that this study will have a great impact in that sense since manymilitary organizations already do extensive research on this subject.

1.6 Methods

A literature study is performed to gain knowledge about what algorithmsalready exists and how comparison have been performed previously.

Given the setting of the project where the software eventually could beimplemented at the employers AUV, the way of working would be with aqualitative and inductive case-study. This means that based on this caseand the observations made of it, some selected algorithms are implementedand tested thoroughly. The testing is done by quantitatively gathering datafrom simulations and getting numerical result, from which conclusions canbe drawn and theories formulated.

1.7 Employer

The Swedish maritime robotics centre (SMaRC) is a Swedish research centerwhere several universities and industry-leading companies cooperate with thepurpose of researching the AUV’s of the future and to develop solutions topromote the transition to these [5]. The research areas they focus on areautonomy, endurance, perception and communication.

1.8 Delimitations

The study will not investigate the following:

• Search-strategies where several AUV’s participate and coordinate.

• Search-strategies where the navigational error grows significantly dur-ing the search.

4

Page 10: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

• How to implement dead-reckoning and calculations of navigational er-ror. A precondition for the algorithms considered is that an area willbe given together with a probability distribution over the area.

• Searches that take place in the XY Z-space.

1.9 Outline

Chapter 2 explains the theoretic foundation needed to understand the prob-lem, the methods used, the results obtained and the conclusions drawn.Chapter 3 presents the research-methods and project-methods used in thestudy. Chapter 4 explains the strategies implemented. In chapter 5 theresults are presented in tabular form and analyzed. Finally, chapter 6 an-swers the research-questions, discusses the results and the methods and someconclusions are drawn. Suggestions for future work are given.

5

Page 11: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

2 Search theory

In this chapter the theory of optimal search is explained and an overview ofdifferent applied solutions to cases similar to the problem will be given.

2.1 Optimal search

Search theory is, as explained in a monograph on the subject, “... one ofthe oldest areas of operations research, has continuously provided powerfulsupport for planning efficient search operations in real-world applications.The aim of the searcher is to efficiently find the target in his search operations,and analysts are asked to offer theoretical bases for optimal planning of thesearch.”[6, p. 1].

It is often assumed[7] that there is a known probability distribution ofthe targets position at time t = 0 and that the searchers decisions are basedon that. There exists[6] a variety of different search problems and a diagramof the different types can be seen in figure 2. Here follows an explanation ofthe different types:

• One-sided decision vs. Two-sided decisions: With one-sided search thesearcher can determine a search path in advance based on probability,whereas with two-sided decisions the target can take actions againstthe searcher to avoid detection.

• Single-stage decision vs. Multistage decision: During a multistagesearch the searcher can make new decisions based on new information,in contrast to single-stage search where the search is planned aheadand no alternations are made. This is also called in other literature[8, 9, 10] for offline and online search correspondingly.

• Discrete target-space vs. Continuous target-space: The target-space isthe space in which the search is taking place. This can be viewed as acollection of discrete points or as a continuous area. Often[10, 11, 12]searches that take place in a continuous area are meshed and the cell-size of the mesh corresponds to the range of the detecting sensor in aneffort to make the target-space discrete and easier to handle.

• Appeared target vs. Appearing/Disappearing target: If the target isappearing in the target-space before the search and for the entirety

6

Page 12: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

of the search, then the target is an appeared target. If the targetmay appear or disappear at some time it is an appearing/disappearingtarget.

• Stationary target vs. Moving target: If the target is in a fixed positionit is a stationary target. If the target can move it is a moving target.

• Discrete searching effort vs. Continuous searching effort: The searcheffort is the searchers resources, such as fuel, man-hours or expenditure.If the search effort is quantifiable it is a discrete search effort. If thesearch effort is continuously divisible it is a continuous search effort.

• Noiseless detection vs. Noisy detection: With a noisy detection thereis a possibility of false contact, meaning that the searcher may incor-rectly think it has detected the target. This is also referred to in otherliterature[10, 13] as the presence of false positives.

7

Page 13: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 2: Classifications of different search problems, from [6, p. 4].

However, the search problem can be categorized further [14]. The timehorizon for the search can be viewed as finite or infinite. If the time hori-

8

Page 14: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

zon is finite the probability of detecting (PD) the target is one measure ofeffectiveness that can be used. If the time horizon is infinite the expectedtime (ET) until the target is detected is another measure of effectivenessthat can be used. Aside from the measures PD and ET a search strategycan be evaluated based on expected cost until target is found, whereaboutsprobability (i.e. being able to point out the target position, by detecting thetarget or successfully guessing its position after a completed search), expectedrisk (i.e. the difference between the expected reward of detecting the targetand the expected searching cost after the target has been found or the searchhas stopped) and expected entropy gain (i.e. how much new information isretrieved during the search) [6].

Based on this information the problem for this study can be viewed asa search problem with an appeared and stationary target in a continuous,noiseless target-space. The search is also one-sided with a continuous search-ing effort, with the freedom of choice in whether or not the implementedalgorithm at the AUV should be single-stage or multistage. The time hori-zon can be viewed as finite since the AUV does not have unlimited battery-capacity, which makes it a NP-complete problem [14]. However, the timehorizon can also be viewed as infinite since the AUV can plan its missionin such a way that it is guaranteed that the AUV will be able to search theentire navigational error with energy to spare. When the time horizon isviewed as infinite, the problem is classified as NP-hard [14].

2.1.1 NP-completeness and NP-hardness

A NP-complete problem is a problem that takes non-deterministic polyno-mial time to solve [15], i.e. it can be difficult to solve it quickly when dealingwith large input-sizes. A NP-hard problem is a problem that is at least ashard to solve as a NP-complete problem but it might be even harder to solve.To deal with these kind of problems different methods can be used to reducethe running time of the algorithms. These methods may include the use ofheuristics, which means that optimality, completeness, accuracy, or precisionis traded for speed.

2.1.2 Heuristic algorithms

A heuristic algorithm is an algorithm that find a solution to a NP-completeoptimization problem, which may not be guaranteed to be optimal, correct,

9

Page 15: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

accurate or precise [16]. Examples of traits for a heuristic algorithm include,but are not limited to, greediness.

A greedy algorithm is an algorithm that at every stage makes the choiceof instant maximal return, even if it would be more profitable to chooseanother option in the long run. A pitfall of using a greedy algorithm is thatit may only detect the locally most optimal solution, as depicted in figure 3where given a starting node on a graph the highest point should be located.

start

global optima

local optima

Figure 3: With a greedy algorithm there is a big risk that only the local optimawill be detected and the true optima remains unknown since the locally mostoptimal choice is made at every stage. E.g. the algorithm will climb righttowards the local optima since there is a steeper ascent towards it given thestarting position compared to the global optima.

The problem of getting stuck on local optimas is not unique for greedyalgorithms, other heuristic techniques such as local-search also suffers fromthis flaw.

To combat the problem of getting stuck on local optimas algorithms canuse datastructures such as quadtrees[17] to facilitate the finding of globaloptimas.

2.1.3 Quadtrees

A quadtree is a datastructure in the form of a tree, where each node has fourchildren, see figure 4. Using this type of datastructure to subdivide an areamakes it possible to look up where in the area the maximum is located in O(d)

10

Page 16: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 4: Visual representation of a quadtree. Each node can hold informa-tion about itself, its child-nodes and its parent-node.

time, where d is the depth of the tree. This is in contrast to the bruteforce-solution which would take O(n2) time, where n = warea

wcell, warea =width of the

area and wcell =width of the cells subdividing the area. It is also proven[17]that the depth d is not greater then log(n)+ 3

2and that constructing the tree

takes at most O((d+ 1)n2) time.

2.2 Search-strategies

Based on the theory above, a number of different search-strategies have beendeveloped and implemented in different settings.

2.2.1 Optimal search plans with unknown probability distribution

When the probability distribution is unknown it has been shown[18] that aspiral search is optimal when dealing with a stationary target, with respectto the length of the searchers trajectory compared to the minimal distance tothe target. To perform a spiral search the searcher starts at a given locationand moves away from it in a circular fashion until the target is found, seefigure 5.

11

Page 17: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 5: An illustration of spiral search where the searcher starts at aninitial position and then spirals out from it.

2.2.2 Bayesian search theory

A common search-strategy[19, 20] when searching for a stationary target isthe one known as Bayesian search theory [21]. To apply Bayesian searchtheory the searcher formulates as many plausible hypotheses as possible thatwhen answered give an indication to where the target may be and then com-pute a probability distribution function (PDF) for each of these hypotheses.These PDF’s are then used together with the knowledge of the searcherssensor specifications (i.e. sensor-range, shape of sampled area, etc.) to con-struct a probability density map (PDM) of the search-area (see figure 6 foran example of such a map) that serves as the basis for the searchers pathplanning. What the searcher often does is to start at the position with thehighest probability of finding the target and then visit nodes in the PDMin the order of descending probability of finding the target. After each visitBayes’ theorem (See equation 1) is applied to the PDM based on the findingsof the visit.

P (A|B) =P (B|A)P (A)

P (B)(1)

12

Page 18: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 6: An example of a probability density map, from [19, p. 3].

13

Page 19: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

3 Methods

This chapter explains the methods being used in the project to answer theresearch-questions:

• RQ1: How do you compare different searching-algorithms with respectto energy-consumption and time-efficiency?

• RQ2: Based on RQ1, what is a good algorithm to implement in soft-ware for an AUV with limited computational power, to efficiently searcha bounded area for a stationary object?

First the selected research-methods are described. After that a descrip-tion of the project-methods used to make sure the project meets time-,budget- and quality-requirements follows and lastly the technological meth-ods used for creating the simulator and implementing the algorithms areexplained.

3.1 Research-methods

As explained in the book by Patel and Davidson[22, p. 53] the methodsused in the research should be based on the research-questions. If we thenconsider the research-questions it is reasonable to say that we should workinductively because we want to find out what algorithms could be used inthe target system and how the different algorithms can be compared.

To answer the RQ’s it is expected that a compilation of different al-gorithms are made where performance-records of energy-use and time-use ispresented for different types of problems and problem-sizes. There should bean analysis of the results and how they can interpreted.

3.1.1 Literature study

To find out which algorithms exist today a literature study is performed[22, p. 42-49]. By searching for search-strategies we also find good ways ofcomparing the different strategies since when some paper or book introducesan strategy it often does so by comparing it to some other already existingstrategy.

Some keywords that are used, in various combinations, is: AUV; UUV;search; search and rescue; docking; homing; search theory; Bayesian search.

14

Page 20: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

In the literature study some similar cases are encountered. These aremainly cases of search and rescue operations at sea where crashed airplanesand shipwrecks was recovered. In these scenarios it is common to postulateas many hypotheses as possible about the whereabouts of the target andconstruct probability density functions based on those hypotheses. Theseprobability density functions are then joined and gives a map of probabil-ity of detecting the target at different locations. The locations with highprobability of detection are visited first and then the locations with lowerprobability of detection.

This approach is however quite computationally heavy and other ap-proaches are used in cases where various autonomous vehicles with limitedcomputational power have to plan the search. In these cases different heur-istics are used, such as greedily going to the locally most optimal locations.

In cases where no probability density function is available, an approachis used where the vehicle moves away from its initial position in a circularfashion, i.e. it spirals away.

3.1.2 Experiments

The algorithms are implemented and empirically tested in a software-simulatorthat was built specifically with the employers AUV in mind. A link to thissimulator can be found in appendix A. The system used is a Lenovo ideapad100S with 64-bitwindows 10 home and 2.00 GB RAM with a x64 based pro-cessor named Intel Celeron CPU N3060 at 1.60 GHz. The simulator generatesan area to be searched and places a target somewhere in the area, based ona normal distribution with the expected value in the middle of the area.

A common way to measure search-strategies efficiency when the searchhas an infinite time horizon is to measure their Expected Time (ET) orMean Time To Detection (MTTD) [6, 10, 14, 23]. This means that a searchis performed multiple times and the average time for the searcher to detecttarget gives the MTTD.

If the time horizon is finite, the probability of detecting the target duringthe search (PD, Probability Detection) is a common way to measure thesearchers efforts [6, 14, 24].

We compare the search-strategies implemented in the simulator based ontheir MTTD, because when implemented in the real AUV it is assumed thatthere will be enough battery-power left to traverse the search-area at leastonce. If there is time left to perform more testing, the PD of the search-

15

Page 21: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

strategies will be evaluated as well.

3.2 Project-methods

Since this is not a trivial project, some project-methods are necessary to givean overview of the project as to not lose track of time and direction of theproject [25]. To first set a frame for the project a project definition was set upin agreement with the most important stakeholders. In the project definitionthe three corners of the project management triangle[25] are defined, a Gantt-schedule is presented and the available man-hours are planned.

The project management triangle is a way of visualizing the constraintsof a project and how these constraints affect the quality of the project. Thethree constraints that define the corners of the triangle are time, cost andscope, see figure 7. The quality in the middle is thus determined by thecorners of the triangle and might suffer if one of the three constraints changeduring the project unless it is compensated for by altering one of the otherconstraints.

16

Page 22: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 7: The project management triangle.

An iterative and incremental project-model that is based on Polya’s method[26]is used by repeating the steps 1-3 below until there is no more interestingalgorithms or the project is starting to run out of time or budget, then step4 is performed.

1. Research - Research is made about interesting and untested algorithms.

2. Hypothesis - A hypothesis is formulated when an interesting algorithmis found.

3. Testing - The algorithm is implemented in the simulator and becomesa subject of some tests.

4. Evaluation - The results of the tests are evaluated, conclusions aredrawn and new theory is formulated.

Polya’s method for solving problems is a way of systematically dealingwith a problem. It consist of the following four steps:

17

Page 23: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

1. Understand the problem - Make sure that you fully understand theproblem.

2. Devise a plan - How will you deal with the problem? What are somedifferent strategies that can be used to solve the problem?

3. Carry out the plan - Try and solve the problem with the plan thatyou have devised. If the plan does not, try another plan.

4. Look back - Is the solution that you came up with reasonable anddoes it really solve the problem? Could you have solved the problemin a simpler way? Is the solution reusable for other problems?

By working in this way MoSCoW-prioritization[27] can be applied tochose which algorithms should be evaluated, which helps ensure that thelimits set for the project management triangle are not broken.

MoSCoW-prioritization is a method that can be used to reach an under-standing with stakeholders of what is important in a project. The idea isthat the requirements set up for a project is categorized into being Must have- critical for the project, Should have - important but can be met at a latertime, Could have - desirable but not necessary and Won’t have - beyond thescope of this project but may be added at a later time.

3.3 Technological methods

Here follows an explanation of the technological methods being used whencreating the simulator and implementing the strategies.

3.3.1 Design and construction

As per request by the employer all code should be written in an object-oriented fashion. The design is made using the UML-tool Astah[28].

Designing and building is done iteratively and incrementally with MoSCoW-prioritization to make sure that the limits of the project management triangleare not broken. What this means is that the code to support the most im-portant requirements are created first, i.e. the Must-have requirements aredesigned and implemented first, then the Should-have requirements, then theCould-have requirements and in case there is time the Won’t-have require-ments.

18

Page 24: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

The programming-language used for writing the simulator and the strategiesshould be Python[29] version 2.7. This is because there exists a python-basedAPI for controlling the AUV in possession of the employer and because Py-thon is a high-level, object oriented programming language which makesdeveloping an object oriented application easier.

19

Page 25: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

4 Strategies

This chapter explains how the implemented strategies, Spiral, Greedy, Look-ahead and Quad-tree operates. The finished code is available in appendix Aand videos of sample runs is available in appendix B.

4.1 Shared behaviour

All the strategies presumes that the target will be in the middle of the search-area and goes there first. The strategy will make the AUV search for thetarget within the search-area only when it is clear that the target is notpresent at the presumed location.

The sensor used has a probability of detection within a certain rangethat is specified prior to the search. In figure 8 a model of a sensor witha range of 50 meters can be viewed. Here a detection means that a strongcommunication link can be established between the target and the AUV, andthe AUV can therefore be guided towards the target.

All the strategies uses their own type of map to keep track of the area, butthey are in general very similar. At the core they keep a two-dimensionalarray with cells that represent the subdivision of the area. In these cellssome information is stored about the particular part of the area which maydiffer for the different strategies. Some of the strategies also add additionaldatastructures linked to the two-dimensional array to facilitate certain oper-ations.

20

Page 26: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 8: A model of a sensor with a range of 50 meters.

4.1.1 Figure explanation

The figures 9, 10, 11 and 12 all follow the same pattern since they are outputsfrom the simulator. The right plot depicts the trajectory of the AUV andthe perimeter of the search-area. The sensor range is depicted by the bluecircle in the right plot and the target is located at the red dot.

In figure 10, 11 and 12 the left plot depicts the subdivision of the areawith the probability of finding the target in each cell. In figure 9 the left plotdepicts which cells in the subdivision of the area that has been covered bythe AUVs sensor.

4.2 Spiral

After the AUV has reached the presumed target location but not found thetarget, it starts to spiral out. It does so by calculating a waypoint pathwhere the coordinates of the waypoints are given by transforming the polarcoordinates (r, θ) given by the equation r = c× θ, where c is a constant thatdetermines the increase in radius per turn, to cartesian coordinates.

An example of a completed search can be seen in figure 9.

21

Page 27: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 9: The completed search when the strategy Spiral was used on a search-area in the shape of circle with a radius of 10 meters. See section 4.1.1 forfurther explanations of the figure.

4.3 Greedy

In this strategy the sidewidth of the cells equals Sensorrange√2

, which meansthat the AUV has to be in the middle of a cell to cover it fully, i.e. the areais subdivided into sensor-sized cells.

After the AUV has reached the presumed target location but not foundthe target, the strategy checks all the adjacent cells to see which one has thehighest probability of containing the target and drives to the middle of thatcell. This is repeated until the target is found.

An example of a completed search can be seen in figure 10.

22

Page 28: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 10: The completed search when the strategy Greedy was used on asearch-area in the shape of circle with a radius of 10 meters. See section4.1.1 for further explanations of the figure.

4.4 Look-ahead

In this strategy the sidewidth of the cells is predetermined by the user, whichmeans that the AUV can sample several cells at once if the cell-width issmaller then the sensor-range.

After the AUV has reached the presumed target location but not foundthe target, the strategy checks all the adjacent cells within the sensor-rangeto see which one has the highest probability of containing the target anddrives towards the middle of that cell. This is repeated until the target isfound.

An example of a completed search can be seen in figure 11.

23

Page 29: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 11: The completed search when the strategy Look-ahead was used ona search-area in the shape of circle with a radius of 10 meters. See section4.1.1 for further explanations of the figure.

4.5 Quad-tree

In this strategy the maximal sidewidth of the cells is predetermined by theuser, which means that the AUV can sample several cells at once if the cell-width is smaller then the sensor-range. On top of the map a quadtree isbuilt, and maintained during the search, to keep track of which cell has theglobally maximal chance of containing the target.

After the AUV has reached the presumed target location but not foundthe target, the strategy checks globally which cell has the highest probabilityof containing the target using the quadtree. Then it drives towards themiddle of that cell. This is repeated until the target is found.

An example of a completed search can be seen in figure 12.

24

Page 30: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Figure 12: The completed search when the strategy Quad-tree was used ona search-area in the shape of circle with a radius of 10 meters. See section4.1.1 for further explanations of the figure.

25

Page 31: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

5 Results

This chapter presents the results from the study. These results should answerthe research-questions:

• RQ1: How do you compare different searching-algorithms with respectto energy-consumption and time-efficiency?

• RQ2: Based on RQ1, what is a good algorithm to implement in soft-ware for an AUV with limited computational power, to efficiently searcha bounded area for a stationary object?

To answer RQ1 a literature study was performed with the intent of find-ing out how others have evaluated their algorithms in similar scenarios, suchas search-and-rescue operations. A common measure of effectiveness for asearch-algorithm that was found was Mean Time To Detection (MTTD).The way it is used is by simulating several searches with a target placed at arandom location and measuring the average time it takes for each search tocomplete.

To answer RQ2, the MTTD and average processing time is presented fordifferent search-strategies and search-areas (SA). For each search-area andstrategy 50 runs were made. The target was placed at a random locationsampled from the probability distribution of the search-area. The targetlocation of run i, i ∈ [1 → i → 50], was the same for each strategy. Thecourse with which the vehicle arrives at the presumed position of the dockingstation is also random for each run but the same for each strategy for runi, i ∈ [1→ i→ 50].

5.1 Algorithms and areas chosen for evaluation

These were the algorithms chosen for evaluation (see chapter 4 for explana-tions):

• Spiral

• Greedy

• Look-ahead

• Quad-tree

26

Page 32: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

And these were the search-areas chosen for evaluation:

SA1: A circle with a diameter of 500 meters.

SA2: An ellipse with a height of 500 meters and width of 1000 meters.

SA3: An ellipse with a height of 1000 meters and width of 250 meters.

The reasons for choosing these search-areas were that the dead-reckoningtechnique used by the employers AUV produces a navigational error in theform of an ellipse and the people at SMaRC believes that these are somenavigational errors that are likely to occur in their AUV.

5.2 Simulation-data

Here the data obtained from the simulations is presented. The computerused was a Lenovo ideapad 100S with 64-bit windows 10 home and 2.00 GBRAM. The processor in use was an x64 based, Intel Celeron CPU N3060@ 1.60 GHz. The simulator used was a simulator specifically built for theemployers AUV. A link to this simulator can be found in appendix A. Intable 1 the MTTD in seconds is shown for each strategy and search-area.

Algorithm SA1 SA2 SA3 TotalSpiral 572.62 s 1378.33 s 1259.04 s 1070.00 sGreedy 1834.18 s 3342.26 s 2214.54 s 2463.66 sLook-ahead 554.56 s 1309.99 s 941.77 s 935.44 sQuad-tree 563.86 s 1782.47 s 1201.4 s 1182.58 s

Table 1: The MTTD in seconds for the algorithms evaluated with the definedsearchareas.

In table 2 the average processing time in seconds is shown for each strategyand search-area.

27

Page 33: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Algorithm SA1 SA2 SA3 TotalSpiral 24.101 s 217.833 s 214.106 s 152.013 sGreedy 0.752 s 1.585 s 1.023 s 1.120 sLook-ahead 37.370 s 237.330 s 179.098 s 151.266 sQuad-tree 17.960 s 143.545 s 94.596 s 85.367 s

Table 2: The average processing time in seconds for the algorithms evaluatedwith the defined searchareas.

28

Page 34: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

6 Discussion and conclusions

This chapter discusses the methods and results of the study and draws con-clusions from the study based on the research-questions:

• RQ1: How do you compare different searching-algorithms with respectto energy-consumption and time-efficiency?

• RQ2: Based on RQ1, what is a good algorithm to implement in soft-ware for an AUV with limited computational power, to efficiently searcha bounded area for a stationary object?

6.1 Answers for the research questions

Some conclusions can be drawn to answer the research-questions based onthe information presented in the previous chapter.

Simulating different search-strategies and measuring their mean time todetection (MTTD) is one way of comparing the time- and energy-efficiencyof those search-algorithms. This way has the advantage that the result of thecomparison, the MTTD for each strategy, can be seen as a direct measureof the time-efficiency. And since there is less energy consumed if the AUV isspending less time driving it is safe to say that the result of the comparisoncan be seen as an indirect measure of a strategy’s energy-efficiency.

Out of the four strategies compared, Lookahead is the one that has con-sistently managed to perform best with regards to its MTTD. It has alsobeen one of the computationally heaviest algorithms time-wise, which couldbe a cause for trouble if it would be implemented on a real AUV with anot as powerful computer onboard as the one used during the simulations.However, the difference between the system used during the simulations andthe system onboard the employers AUV can be neglected.

Quad-tree could prove to offer a good trade-off between MTTD and com-putational complexity. If an implementation of Djikstra’s shortest path oran A∗ pathfinding algorithm would be added to avoid multiple coverage toQuad-tree it’s MTTD could potentially be lowered significantly, at the ex-pense of making it computationally heavier.

The Spiral is a valid choice for systems where there are no known prob-ability distribution of the target or for when the person responsible of imple-menting the search-strategy needs a strategy that is easy to implement. Itshould however not be used in systems with limited processing-power.

29

Page 35: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Greedy has an atrocious MTTD but has the clear advantage that it doesnot require much processing power at all.

6.2 Conclusion

I would suggest that the Lookahead-strategy should be implemented in a realAUV since it is the one that consistently has performed best with regards toMTTD even though it was one of the most computationally heavy strategies.This is because the average processing time is significantly smaller then theMTTD and when the strategy operates in real-time it will do so continuallyduring the search, so the AUV should be able to use the strategy withoutbeing delayed because of the time it takes to calculate the next decision ofthe search.

6.3 Methods

Did the chosen methods give results that could answer the research-questions?Yes, they did! The literature study yielded a couple of ways to compare

different search-strategies, wherein the most appropriate could be chosen forthis study. The quantitative experiments, i.e. the simulations, resulted incomparable data from the search-strategies from which conclusions could bedrawn to help answer the research-questions.

Would the result be the same if someone else would apply the methods inan attempt to answer the research-questions?

Probably, but it is not certain. There is definitively room for interpret-ation when implementing the strategies and different design-choices couldprobably have an impact on the results obtained. It is also possible thatsomeone else would chose to compare the different search-strategies witha different measure, such as the probability of detection (PD) instead ofMTTD. In that case it is possible that some completely different strategieswould be of more interest. Maybe a different simulator would have given adifferent result as well, especially since the simulator used in this thesis wasdesigned for the employers AUV.

6.4 Results

Can the obtained results be used to answer the research-questions?

30

Page 36: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

Yes, they can! They are well suited for answering the research-questionssince the MTTD measurement is a direct measurement of time-efficiency andindirect measurement of energy-efficiency.

Can the results be trusted to be correct?Yes, they can! This is due to the fact that a substantial amount of

simulations was performed, with randomized parameters based on realisticprobabilities.

6.5 Future work

A natural continuation of this project would be to implement a strategy, forinstance Lookahead, on a real AUV to see if it behaves as expected. If itdoesn’t then the simulator and the strategies can be improved to be morerealistic and the strategies can be evaluated again.

More and different types of strategies can be implemented and evaluated,such as genetic algorithms, clustering algorithms or other coverage strategies.

The implemented strategies can be improved and fine-tuned with regardsto their MTTD and average processing time. Quadtree for example canbe improved by adding subroutines to make sure that multiple coverage isavoided. The time it takes for different subroutines of the strategies can bemeasured in an attempt to identify problem-areas of the code and deal withthose so that the average processing time can be minimized.

Other methods of comparing energy-consumption and time-efficiency, suchas measuring the strategies probability of detection or entropy gain can beused to compare the different strategies.

Another dimension can be added to the search so that the AUV is notsearching in the XY -plane but instead in the XY Z-space.

False positives and false negatives can be added to the simulation.

6.6 Acknowledgements

My supervisor at SMaRC, Filip Soderling, deserves a special place in heavenfor being one of the kindest people I have ever met and for all of his helpduring the project. I would also like to thank my academic supervisor An-ders Sjogren and examiner Leif Lindback for all of their help and feedbackwhich has been invaluable. To all the people at the KTH Centre for NavalArchitecture I would like to say that it has been great getting to know youand I will miss you.

31

Page 37: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

References

[1] Swedish Foundation for Strategic Research. Nationellt Centerfor Maritim Robotik [Internet]. Stockholm: Swedish Founda-tion for Strategic Research; 2019 [cited 2019-02-28]. Availablefrom: https://strategiska.se/en/research/ongoing-research/

industrial-research-centres/project/8310/

[2] SMaRC - Swedish maritime robotics centre. Next generation ofmaritime robotics [Internet]. Stockholm: SMaRC, KTH; 2019[cited 2019-02-28]. Available from: https://smarc.se/about-smarc/

next-generation-of-maritime-robotics/

[3] Taraldsen G, Reinen TA, Berg T. The underwater GPS problem. In:OCEANS 2011 IEEE - Spain. IEEE; 2011. p. 1–8.

[4] Bull P, Ogren P, Grahn P, Hillerstrom G, Johansson P, Jandel M, etal. Forstudie obemannade farkoster [Internet]. Stockholm: Totalfors-varets Forskningsinstitut; 2012 [updated 2014-01-08, cited 2019-03-01].Available from: http://urn.kb.se/resolve?urn=urn:nbn:se:fhs:

diva-2954

[5] SMaRC - Swedish maritime robotics centre. About SMaRC [Internet].Stockholm: SMaRC, KTH; 2019 [cited 2019-02-28]. Available from:https://smarc.se/aboutsmarc/

[6] Koji I. Studies on the optimal search plan. Berlin; New York: Springer-Vlg; 1992.

[7] Stone LD. Theory of optimal search. New York: Academic Press; 1975.

[8] Choi YH, Lee TK, Baek SH, Oh SY. Online complete coverage pathplanning for mobile robots based on linked spiral paths using constrainedinverse distance transform. In: 2009 IEEE/RSJ International Confer-ence on Intelligent Robots and Systems. IEEE; 2009. p. 5788–5793.

[9] Golan Y, Edelman S, Shapiro A, Rimon E. Online Robot NavigationUsing Continuously Updated Artificial Temperature Gradients. IEEERobotics and Automation Letters. 2017; 2(3): p. 1280–1287.

32

Page 38: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

[10] McMahon JJ, Waters ZJ, Yetkin H, Wolek A, Stilwell DJ. TowardsReal-Time Search Planning in Subsea Environments. IEEE InternationalConference on Intelligent Robots and Systems. 2017. p. 87–94.

[11] Baylog JG, Wettergren TA. A ROC-Based Approach for DevelopingOptimal Strategies in UUV Search Planning. IEEE Journal of OceanicEngineering. 2018; 43(4): p. 843–855.

[12] Lee TK, Baek SH, Choi YH, Oh SY. Smooth coverage path planningand control of mobile robots based on high-resolution grid map repres-entation. Robotics and Autonomous Systems. 2011; 59(10): p. 801–812.

[13] Yetkin H, Lutz C, Stilwell D. Acquiring environmental informationyields better anticipated search performance. In: OCEANS 2016 MT-S/IEEE Monterey. IEEE; 2016. p. 1–6.

[14] Trummel KE, Weisinger JR. The Complexity of the Optimal SearcherPath Problem. Operations Research. 1986; 34(2): p. 324-327

[15] Garey MR, Johnson DS. Computers and intractability: a guide to thetheory of NP-completeness. San Francisco: Freeman; 1979.

[16] Vazirani VV. Approximation algorithms. Berlin: Springer; 2003.

[17] Berg M de., Cheong O, Kreveld M van., Overmars M. ComputationalGeometry Algorithms and Applications. 3 ed. Berlin: Springer-Verlag;2008.

[18] Langetepe E. Proceedings of the Annual ACM-SIAM Symposium onDiscrete Algorithms. In 2010. p. 1–12.

[19] Davey S, Gordon N, Holland I, Rutten M, Williams J. Bayesian Methodsin the Search for MH370. 2016.

[20] Stone L, Keller C, Kratzke T, Strumpfer J. Search for the Wreckage ofAir France Flight AF 447. Statistical Science [Internet]. 2014; 29(1):p. 69–80. Available from: http://search.proquest.com/docview/

1753039218/

[21] Caudle K. Searching Algorithm Using Bayesian Updates. Journal ofComputers in Mathematics and Science Teaching. 2010; 29(1): p. 19–29.

33

Page 39: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

[22] Patel R, Davidson B. Forskningsmetodikens grunder: att planera, gen-omfora och rapportera en undersokning. 4 ed. Lund: Studentlitteratur;2011.

[23] Agcayazi MT, Cawi E, Jurgenson A, Ghassemi P, Cook G. ResQuad:Toward a semi-autonomous wilderness search and rescue unmanned aer-ial system. In: 2016 International Conference on Unmanned AircraftSystems (ICUAS). IEEE; 2016. p. 898–904.

[24] Bourgault FF, Durrant-Whyte HF, Furukawa T. Optimal search for alost target in a Bayesian world. Springer Tracts in Advanced Robotics.2006; 24: p. 209–222.

[25] Eklund S. Arbeta i projekt: individen, gruppen, ledaren. 4 ed. Lund:Studentlitteratur; 2011.

[26] Polya G. Problemlosning: En handbok i rationellt tankande. 2 ed. Stock-holm: Nordstedts; 2008.

[27] Miranda E. Time boxing planning: buffered moscow rules. ACM SIG-SOFT Software Engineering Notes. 2011; 36(6): p. 1–5.

[28] Astah. Astah UML, ver. 8.1 [computer program]. Fukui: Astah; 2019.[cited 4 June 2019]. Available from: http://astah.net/download

[29] Guido van Rossum. Python, ver. 2.7. [computer program]. Delaware:Python Software Foundation; 2019. [cited 4 June 2019]. Available from:https://www.python.org/downloads/

34

Page 40: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

A Implementation

The implementation of the simulator and the strategies can be found onGitHub at this repository: https://github.com/hfurhoff/exjobb

The strategies can be found in the folder src/simulationmodel/strategiesat the link https://github.com/hfurhoff/exjobb/tree/master/src/simulationmodel/

strategies.The maps the strategies use can be found in the folder src/simulationmodel/maps

at the link https://github.com/hfurhoff/exjobb/tree/master/src/simulationmodel/

maps.

35

Page 41: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

B Samples

Some search-videos can be found at https://drive.google.com/open?id=1KqWXdcZTArw82-U6EHyQ6_FSBFmEzZ1y

36

Page 42: Efficient search of an underwater area based on probability1333810/FULLTEXT01.pdf · munikation med andra robotar och fordon f or att best amma deras globala position. Detta ar dock

TRITA-EECS-EX-2019:213

www.kth.se