Standalone Mobile Application for Shipping Services Based on Geographic Information System and A-Star Algorithm

Geographic Information Systems (GIS) plays an essential role in shipping service related application. By utilizing GIS, the courier can find the route to deliver goods for its customer. This research proposes a standalone mobile application to provide the shortest route to the destinations by utilizing geographic information systems with A-Star algorithm. This application is intended to be used although the area has no Internet network available. The developed application can handle several drop off points then calculates the shortest route that passes through all the drop off points. According to the conducted testing, the number of drop off points that can be calculated is influenced by the specification of the smartphone. More destinations require more smartphone resources and time to process.


Introduction
Shipping service is closely related to Geographic Information System (GIS). One of main features of shipping service is finding the cheapest and fastest way to go to the destination. Because this will affect service charges to the customer. This condition is closely related to online retailers. Online retailers are suggested to strategically arrange a proper shipping charges to maximize profitability [1]. Current technology has supported these requirements. Maps are available and can be accessed online or offline. The algorithms to find the cheapest way, with various kind of parameters, are available and easy to access.
Previous research has conducted a research about food delivery system [2]. This research utilizes A-Star algorithm to determine the shortest path and location-based service (LBS) to expose its current location. Thus, a user can monitor the movement of the courier before and after he/she goes to the requested destination. Recent publication proposed the optimization of A-Star algorithm using Parallel Bidirectional Search (PBS) in hexagon-based environment [3]. They found that by implementing PBS A-Star, it can accelerate 68% faster compared to classic A-Star algorithm. A-Star algorithm is also used in network routing to obtain function effectiveness [4]. This research is intended to obtain the optimal routing path. According to conducted simulation, their proposed method shows improving result when the effectiveness of the evaluation function is also enhanced. Not only for routing function, A-Star algorithm can also be used as the solving tools to kinematic problems of robot arm [5].
Despite of utilizing A-Star algorithm which is especially designed to find the shortest path, another kind of algorithm, such as a clustering algorithm might be used to find shortest path. A research utilized traditional self-organizing map (SOM) to allow all agents exclusively search the real-time shortest path to go to their targets [6]. The SOM algorithm also can be used to cluster texts [7] or images [8]. This research is intended to build a standalone mobile application in Android platform for shipping services based on geographic information system and utilizing A-Star algorithm to obtain the shortest path. This mobile application is designed to calculate the shortest path in the device, not in the server. Therefore, the data communication can be eliminated to cover network issue if the application is used in rural area.
This paper is organized in four sections. The first section discusses the background, aim and related works of the conducted research. Section two focuses on the research methodology to cover the issue in the first section. The third section is the result of the implementation of standalone mobile application which utilizes GIS and A-Star algorithm. In the last section we draw a conclusion.

Research Methodology
This research is discussing the development of a standalone mobile application that will be used to assist shipping services to deliver goods by providing maps and the shortest path to the destination. The mobile application is built on Android platform. In this research, the shortest path calculation support more than one destination. Thus, the application will calculate the shortest path which pass through the whole destinations.
In client-server model, the business process or the calculation of the shortest path is done in server. In practice, the calculation requires high server specification and the ability to handle many requests from clients. Also, the data communication between client and server requires Internet network. However, lack of Internet network in rural area will cause this client-server model useless. Therefore, we proposed standalone mobile application. Standalone mobile application means this application is intended to be used in absence of client-server communication. Thus, the application is required to be operated without Internet network availability. However, due to the lack of offline maps available, in this experiment we are going to use an online maps service called Google Maps.
The application implements loosely coupled design. Therefore, the online map can be replaced with the offline map in the production phase. In addition, we are going to implement A-Star algorithm to provide the shortest path to the expected destination. However, we assume that there is no obstacle (that can cause cost) in the path. This research is divided into three parts. First of all is providing the coordinates. Second, implementing A-Star algorithm to provide the shortest path. Third, testing the application. These parts are depicted in figure 1.  Figure 1 shows that the coordinates are defined by manually capture coordinates from the Google Maps. This coordinates can also be captured on the spot by using Global Positioning System (GPS). To focus on the development of the standalone mobile application, we only capture the coordinates of every crossroads in Medan. This action is required because Google Maps does not provide coordinates of the crossroads. Thus, we have to define them by ourselves. This coordinates will be saved in the database. Then, we also set the possible path from one node to others. This will be used to calculate the possible paths and compare them to obtain the shortest path. Second, implementing A-Star algorithm to find the shortest path. This algorithm requires the cost of one point to another point by calculating the distance of two coordinates. The first coordinates will be defined by the GPS installed in the smartphone. Then the application will find the closest coordinates saved in the database. Next, the application calculates every possible path to obtain the shortest path to the destination. For example, we are going to calculate the shortest path from node A to G which is depicted in figure 2.  To calculate the shortest path, we have to compare the calculation of the distance between two nodes (symbolized by ( )) and estimation cost between two nodes by using heuristic function (symbolized by ℎ( )) as shown in formula (1). In this case, we use euclidean distance (formula (2)) to provide heuristic function. The distance between two nodes and the result of heuristic function calculation is shown in table 2.  The illustration of finding the shortest path is shown in figure 2. Every possible paths will be calculated and compared each other. Then the results of every possible paths which toward to the same node will be compared and the lowest will be chosen as the shortest possible path. According to the calculation of in the table 2, the shortest path result is A-E-F-G. This result is depicted in figure  3.

Figure 3. Shortest path result
Third, the result of shortest path calculation is visualized to the online map by using Google Maps. This maps can be replaced with the offline map in production phase. In addition, we test the application by using two kind of different smartphones. By conducting this test, we observe the influence of the number of destinations with the smartphone specification. In this research we experiment with five, seven and eight destinations. We observe the memory usage and required time to accomplish the task.

Result and Discussion
This section will discuss the implementation of geographic information system (GIS) and the A* algorithm to obtain the shortest path for shipping service application. In this research we did the experiment by using two smartphones. The specification of both smartphones are as shown in table 3.
Both smartphones' operating system are Android. Smartphone A and B uses Android version 2.3 and 4.0 respectively. Smartphone A uses less Central Processing Unit (CPU) compared to smartphone B. Smartphone A also lacks of Graphical Processing Unit (GPU) and chipset. Both smartphones use the same network. They use the same A-GPS for the GPS system. However, smartphone B added GLONASS in addition to A-GPS.    figure 4. Figure 4   Both smartphones can successfully calculate five and seven destinations. As shown in table 4, both smartphones require more time and spend more memory to process more destination. However, smartphone A cannot calculate more than seven destinations. It stops when calculating eight destinations. This might be caused by many possible path in eight destinations which drain smartphone's resources.