Shortest Path from Bandar Tun Razak to Berjaya Times Square using Dijkstra Algorithm

The shortest path is an issue that involves the route from one point (nodes) to another. It is to find a path with a minimum travelling time. Nowadays, traffic problems have affected many transport users especially in Kuala Lumpur area. The time wasted on the road causes a lot of problems to the users. Furthermore, the costs between two destinations are rather expensive. Therefore, the inability of users to use the shortest path has attracted the researcher to propose several travel alternatives to overcome this problem. In addition, this study will help to improve the efficiency of the road and make people want to use it more often. The objectives of this study are to find the shortest path from Bandar Tun Razak to Berjaya Times Square and to cut down the cost between these two destinations. The time of the shortest path problem and the cost problem are drawn separately. Moreover, Dijkstra algorithm is applied to find the shortest path. The shortest path is calculated by using C programming of Dev C++. Nevertheless, both time and cost of shortest path are constructed in different paths. The time and cost of the journey are described by driving a car from Bandar Tun Razak to Lebuhraya SMART to Kampung Pandan, then Berjaya Times Square. The total time taken is 23 minutes (RM8.00), whereas, the cost is based on the shortest path from Bandar Tun Razak to Taman Maluri to Seasons Tower and Berjaya Times Square. The minimum cost is RM4.00 (30 minutes).


INTRODUCTION
Traffic problem has affected transport users. This is because of the time wasted on the road. Although the number of road and expressway is increasing, traffic problems in Kuala Lumpur area still exist.
The shortest path is a problem that involves the route from one point (nodes) to another (Kumari & Geethanjali, 2010). It is to find a path with a minimum travelling time. It is important for every passenger especially workers who need to arrive at their workplace on time. For instance, in order to improve the effectiveness of travelling time, there is a need to provide some rational alternatives that can cut down the time of one's journey. Furthermore, the shortest path is also used to minimize the cost (Gupta et al., 2016). Dijkstra algorithm has been used in general. It is actually a variant to find the shortest path between two nodes, but is a more common variant which fixes a single node as it is the source of node and finds the shortest path from the sources to all the nodes. Dijkstra algorithm builds the optimal path based on the node that it reaches. However, it cannot handle the negative edges (Rohila et al., 2007).
In Malaysia, globalization has turned drivers into a complex system nowadays. Mobility has been an easier transportation whether on land, air or water to get through from one destination to another. Therefore, there are a lot of people who prefer to have their own transport such as cars, motorcycles and vans. This is because, it is much easier compared to taking a public transportation. Unfortunately, if driving their own transport, the drivers need to face traffic jam especially in the Kuala Lumpur area. For example, if one family consists of five members and each of them has his/her own car, then the crowdedness on the road will be obvious. The traffic jam in this area is considered as serious since the drivers have to wait on the road for about an hour at least. Furthermore, the costs between two destinations are rather expensive. Since the cost of living in Malaysia increases in every aspect, then it can be a burden for the drivers and they cannot just neglect it. This is because, if the drivers calculate the cost for only one day it can be considered fine but the problem is for those who work in the area of Kuala Lumpur. This is because they need to face this problem for a long period of time. The total cost for fuel and toll can be half of their salary which is not worthy. The traffic situation and costs sometimes change from time to time. These problems can be rectified through the shortest path by using the Dijkstra algorithm.
The main objective of this study is to find the shortest path from Bandar Tun Razak to Berjaya Times Square by using Dijkstra algorithm and to cut down the cost between the two destinations.
This research applies Dijkstra algorithm to measure the shortest path in the area of Bandar Tun Razak to Berjaya Times Square. It will concentrate among all roads that start from Bandar Tun Razak to Berjaya Times Square that will give the shortest distance and the lowest cost of journey. It will consider several roads that will be chosen as the best road to meet the objective. Data is collected from Google Map and also by driving a car from Bandar Tun Razak to Berjaya Times Square.
In order to determine the shortest path for a road between the two destinations, Dijkstra algorithm will be applied. The shortest path will find the shortest distance between the two destinations and also the lowest cost between Bandar Tun Razak to Berjaya Times Square. It can also improve the efficiency of which road and make people want to use it more often.

i. Dijkstra Algorithm
The purpose of Dijkstra algorithm is it can be applied directly to find a physical direction. Next, it can also be used in networking or for telecommunication applications. Furthermore, it can solve a variety of shortest path problems that arise in plants and also robotics, facility layouts and transportation. Kai et al. (2014) did a research about emergency response system based on Dijkstra algorithmn. The researchers intended to investigate how well the emergency response mechanism decreases hazardous events. It is also used to find a minimum time to arrive at a destination during fatal rescue operations. The integration of Geographic Information System (GIS), Asynchronous JavaScript and XML (Ajax) technologies and web services are used to find the best or optimal route. The reserchers also stated that the shortest path will not solve the problem because there are also some factors that affect travelling time. The reserchers used Dijkstra algorithm in order to search the length of the shortest path from sources to sources. Arjun et al. (2015) stated that the shortest path problem is a problem to find the vertices between the sources on the graph. Engineers usually use Dijkstra algorithm in their calculations. This survey has stated an optimization method which mostly enhanced the nodes selection of the shortest path and data structure and organization. In brief, the optimized Dijkstra algorithm which has advanced space complication, time complication and storage combination, decreases the storage space, data redundancy and hugely increases the running rate.
Tirastittam and Waiyawuththanapoom (2014) did a case study an Bangkok metropolitan public transport planning system using Dijkstra algorithm. The research was about public transport planning system, using Dijkstra algorithm, focusing on buses, Bangkok Mass Transit System (BTS) and Metropolitan Rapid Transit (MRT) schedules because the citizens lack of information and they are scared to use the subway system mainly because of the time and safety factors. The researchers' objective was to design a public transportation planning system by using Dijkstra algorithm in Bangkok area to judge the public transportation users' satisfaction.
Moreover, Jaafar et al. (2014) did a research on intelligent guidance parking system using Dijkstra algorithm. The proposed intelligent parking guidance system is a system that gives the closest vacant bay to drivers with necessary direction stated on a ticket so the driver can find the best lot in a short amount of time. The conclusion that the researchers made is the system has been installed to assist parking users.
Moreover, Gupta et al. (2016) did a research about applying Dijkstra algorithm in routing process. The researchers proposed that Dijkstra algorithm is one of the best methods that can be used to calculate the shortest path problem compared to other algorithms. The researchers' target was to search for the shortest path from sources node to destination node. To search for the shortest path, this algorithm uses connection matrix and weight matrix. The researchers also applied the data in computer networking for routing systems and also in Google map.

ii. Techniques for the Shortest Path
One of the research by Patel and ChitraBaggar (2014) was a survey of Bellman-Ford algorithm and Dijkstra algorithm to search for the shortest path in Geographic Information System (GIS) application. The researchers wanted to make a comparison between Bellman-Ford method and Dijkstra method and choose the best one. The main problem in transportation management is finding the shortest path and using the act of Geographic Information System (GIS). The conclusion made by the researchers is that Dijkstra algorithm is very quick to use compared to Bellman-Ford algorithm and it also works widely in real time application. Chandak et al. (2016) stated that there are a variety methods available to discover the shortest path. Examples of methods introduced by researchers are A-star algorithm, Hierarchical A-star and Dijkstra algorithm. The Dijkstra algorithm needs a huge memory and a lot of redundant calculations performed which it can or cannot be functional for the current path. In addition, the hierarchy in the map by dividing it into district by decreasing the computation needed and memory needed by the systems. This can be used when the area in the map is considered big enough. It depends on the application to use the hierarchy to search for the shortest path to decrease the load on the system's memory.

Research Methodology
The shortest path cannot cross all the vertices. It needs to search for the shortest path from vertex sources to all vertices and then calculate the path between the vertices that are attracted to. Due to its simplicity, it only deals with graphs with non-negative edges. It is often advantageous to route all communication on a sparse spanning sub network, typically a spanning tree. Unvisited vertices are consistently on the list. It selects a vertex and allocates the maximum possible cost for each of other vertex. In each of the following steps of Dijkstra algorithm, it attempts to reduce the cost for every vertex. The cost will be the length of the journey, time taken to achieve that vertex from the source vertex or money. The minimization of cost is a multi-step procedure. Figure 1 shows a network in which the arcs are labelled with the distance between two connected nodes. It will search for the shortest route from the origin o, to the destination, t, by using Dijkstra algorithm. The number between the nodes and the next nodes is representing the distance. Vertex 0 represents Bandar Tun Razak, vertex a represents Lebuhraya SMART, vertex b represents Taman Connaught, vertex c represents Taman Maluri, vertex d represents Chan Sow Lin, vertex e represents Seasons Tower, vertex f represents Kampung Pandan and vertex t represents Berjaya Times Square. Step 1: Initialize by displaying the origin as solved. It will be labelled as 0 since it is 0 unit from the origin. Next, each unsolved vertex is connected to an identified solved node.
Step 2: Evaluate the candidate distance. Candidate distance = distance to the solved nodes + length of arc.
Step 3: The smallest candidate distance is chosen. Repeat the step until it arrives at the destination node. Evaluate the candidate distance of every connecting arc. Figure 2 shows the shortest routes which are: oabdt. This is because if compared with others, it is the only route that is short which is only 13. The time and cost for the research have been made by using the C programming. The time and cost for the journey have been done separately. The procedure for the cost is using the same procedure for time network   The result in figure 3 shows that the path of 0 1 2 7 is the shortest to minimize the time. It means that the path is from Bandar Tun Tazak to Lebuhraya SMART to Kampung Pandan then Berjaya Times Square. The total time to reach at the destination is 23 minutes.

CONCLUSION AND RECOMMENDATION
Based on the results, it shows that the main objective of this research has been met. The goal for this research is to optimize the path by limiting the maximum detour and cost from Bandar Tun Razak to Berjaya Times Square. The method that has been used is Dijkstra algorithm. Due to the limited time of the study, the cost dependent and time dependent have been treated separately. The shortest duration is 23 minutes. Furthermore, the cheapest cost is only RM4.00. Therefore, the path can be chosen either for the shortest time or the cheapest cost.