GPS Boundary Navigation using MATLAB Simulation
VOLUME 3, OCTOBER 2010
Zulkifli Zainal Abidin
Postgraduate Student(Phd)
B.Eng Computer and Information Engineering (International Islamic University Malaysia)
Project title: A Novel Fly Optimization Algorithm: Animal-inspired Metaheuristic
DrosoBOTs: Swarms of Mini Autonomous Surface Vehicles with Animal Inspired Metaheuristic Algorithm Approach
GPS Boundary Navigation using MATLAB Simulation
In order to mobilize the movements of the ASVs at scattered positions around the navigation area within the boundary, an algorithm is created using the function rand in MATLAB which randomly generates a number with four decimal places that ranges from 0 to 1. This generates random positions as destinations for each ASV.
To obtain a random number within a desired range, we utilize the following equation:
Fig 1: Angles from the x-axis
By using equation (1), the random number generated will fall within the range of the upper and lower limit. The result will be inputted into the algorithm described in sections B, C and D to verify whether the position is within the boundary (Fig. 1).
The ASV may proceed to the position if it is positive. Otherwise, the iteration will be repeated. Once the ASV reaches the position, another new position will be generated and verified. The whole process (i.e. random number generation, verification, moving towards the destination) will be repeated until the number of positions required for each of the ASV is reached.
Fig. 2 displays the routes of a single DrosoBot created by connecting lines to the random positions (waypoints) generated. The X’s mark the positions for the DrosoBot.
The algorithm is such that the DrosoBot starts moving from the west-most and south-most corner of the boundary. Fig. 3 shows the routes of 8 Drosobots also within the same boundary. Each coloured line represents a DrosoBot with an ideal condition speed of 0.6 m/s.
A.Generating random positions using Lévy flight
We have also utilized another random algorithm; the Lévy flight to facilitate the presence of large jumps in locations. This will eventually increase the coverage area of the DrosoBots compared to those generated by the random function.
From Fig. 4, we can observe that there are huge transitions from one position to another compared to the positions generated by the random function. Fig. 5 depicts the routes of 8 Drosobots using Lévy flight. By comparing Fig. 3 and Fig. 5, the routes do not look much different from each other.
Fig. 4: Routes of a single Drosobot with 5 waypoints using Lévy flight
Fig 5: Routes of 8 Drosobots with 5 waypoints using Lévy flight
Table 1 displays the simulated times taken for using both normal random and Lévy flight random algorithms which may be exported and integrated onto the DrosoBots provided all the points or vertices of the boundary is to be determined first by using GPS. Thereafter, the longitude and latitude of the points may be entered into the programs to enable a unique navigational chart mapping for every single DrosoBot. Then, the DrosoBots will not drift away beyond the boundary and will only bounce within it.
Although the conventional lawn mower path may be adopted for the mapping application, we chose to focus this study in trying to find the optimum way to locate the deepest location and simultaneously generating the underwater contour.