A Food Ordering System With Delivery Routing Optimization .

Transcription

Vol.8/No.1 (2016)INTERNETWORKING INDONESIA JOURNAL17A Food Ordering System with Delivery RoutingOptimization Using Global Positioning System(GPS) Technology and Google MapsRoy Deddy Hasiholan Tobing Abstract—The capability of a consumer to purchase productsonline or via telephone, and then has the purchased items to bedelivered safely to her/his address is a value added by sellers. Theproducts may vary and food is one of items that can be orderedvia website and delivered to customers’ location. In daily life,some fast-food chain restaurants in Indonesia have implementedthis type of service to their customers. However, one of the mainproblems in current delivery service is the routing optimization.The delivery staff may have little knowledge about location,street names and the shortest path to deliver some ordered food,especially in relatively big city. Moreover, the customers usuallydo not have much information about the status of their order northe position of the delivery staff. This research develops an onlinefood ordering system and applies heuristic algorithm to solve theso-called Travelling Sales Problem (TSP) in routing optimization.The system also uses the Global Position Systems (GPS)technology in Android-based mobile phone and takes theadvantage of Google Maps for coordinate-to-map solution.Index Terms—Travelling Salesmanalgorithm, Android, GPS, Google Maps.Problem,heuristicI. INTRODUCTIONIMPROVING customer satisfaction can increase thecustomers’ loyalty to a product or service provider. Oneway to improve it is by having a food ordering system whichenables customers to purchase the products without physicallyvisiting the shop, namely by phone or by website, and thenhave the product delivered to the customer’s address safelyand in good condition. Some food franchises in Indonesiahave implemented this type of system, such as Kentucky FriedChicken, McDonald’s, and Pizza Hut [1-3].In delivery service, one of the main problems is to find theshortest path between customers’ addresses in order to deliverthe product in reasonably short time, to save fuel usage and tooptimize the utilization of the vehicles and delivery personnel[4][5]. The optimization requirement is usually represented onthe delivery staff job vacancy announcement that oftenrequires the applicants to know the streets or shortcuts inparticular area or city. The routing problem that is related tothe condition of food delivery service is called TravelingR. D. H. Tobing is with the Faculty of Informatics Engineering andElectro, Del Institute of Technology, Laguboti, Indonesia (e-mail:roy.deddy@del.ac.id).Salesman Problem (TSP). In TSP, the seller starts movingfrom his/her hometown and is required to visit several citiesexactly one time before going back to his/her hometown withminimum total distance. All cities are connected to each other.In this research, the author develops a system that canoptimize the delivery routing process by implementing one ofthe solutions to TSP, which is heuristics algorithm. Inaddition, the system also utilizes the Global PositioningSystem (GPS) technology and mapping solution software,Google Maps.Nowadays, the usage of GPS has been part of modernhuman daily activities. The technology can be found and hasbecome the standard feature of most smartphones [6]. Thistechnology can be used to give information about something’sor someone’s position on earth surface. The GPS technologycan be used along with Google Maps ApplicationProgramming Interface (API) to make the proposed deliveryservice system working better. GPS technology can return thecoordinate of specific position; meanwhile, Google Maps canbe used to (1) calculate the distance of two coordinates, and(2) return the information of a set of streets name and theirdirections that must be passed to arrive at one address fromother address [7].II. METHODOLOGYWhen conducting the research, the author followssystematic steps in order to provide the food ordering systemwith routing optimization feature. The steps that also representSoftware Development Life Cycle (SLDC) are shown in thefollowing Fig. 1.RequirementGathering on FoodOrdering BusinessProcessesStudy on GPSTechnologyAnalysisPhaseStudy on GoogleMaps APITechnologyFig. 1. The research methodology.ISSN: 1942-9703 / 2016 IIJDesignPhaseImplementationPhaseTestingPhase

18INTERNETWORKING INDONESIA JOURNALTOBINGorder information to the web-based application.In each steps, the activities are:1) Observe the delivery service business process of severalfast-food franchises in Indonesia. These observedbusiness processes are the based to develop the proposedfood ordering system in this research.2) Study on GPS technology in order to gather information,data, and knowledge that can be used to develop thesystem. In this research, the developed application usesthe GPS technology in Android smartphones.3) Study about Google Maps API. This process aims toexplore the features and functionalities offered by GoogleMaps. The study uses the resources available on theInternet and university library.4) Using the result of phase (1), (2), and (3), the authorconducts analysis to produce complete information fordeveloping the system.5) In design phase, the author designs the system using theinformation provided by analysis phase. This phaseprovides the blueprint for the developed system.6) During the implementation phase, the application isdeveloped using the chosen technology and tools.7) To confirm the functionalities of the application, a testingphase is entered in which the application is tested usingseveral test case.III. ANALYSISA. Food Ordering SystemThe architecture of the developed food ordering system canbe seen in Fig. 2. The food ordering system can be dividedinto two main applications, which are:1) Web-based food ordering application. This applicationcan be accessed by Customer and he/she can order theproducts after registering himself/herself. As for theOperator, this application is used to register a Customerthat has ordered via telephone, input the order into theapplication, and generate the information about the outletthat will handle the request and route that should befollowed by Delivery Staff. Cook also uses theapplication to receive the order and prepare the food. Theassigned Cook will be notified by the system. In addition,the status of the order can be accessed by Customer usingthis web-based application.2) Android-based application [8]. The application is installedin the Android smartphone used by the Delivery Staff.This application is used to access information about theCustomers, their orders, the address for delivery and therecommended route that should be passed. Thisapplication also records the position of the Delivery Staffso that the Customer can check the position of his/herordered food.As Fig. 2 suggests, Customer can make order usingtelephone or the website. The assigned outlet will haveOperator that handles the orders from telephone and enter theWhen the information has been inputted, the system willautomatically assign the outlet and Cook that will handle theorder. After the food has been prepared, the Delivery Staffwill be notified to pick-up the food and bring them to theCustomer. The Delivery Staff will get notification, order anddelivery information in the smartphone.Order via erCustomerCustomerCustomerOutlet 2Outlet yDeliveryStaffStaffCookCookOutlet 1AppApp ffSatelliteOrder-By-PhoneOrder-By-Phone ustomerCustomerOrder by PhoneFig. 2. Food Ordering System Architecture.The business process of proposed ordering system can beseen in the following Fig 3. Customer can make order usingtelephone or the website. After order has been made bytelephone and website, in Fig. 3 we can see that severalactivities related to food ordering application are added (bluebox).B. Heuristic Algorithm for Routing OptimizationHeuristics algorithm is based on the model of undirectedweighted graph. The constructive heuristics algorithm isapplied in the developed system and uses nearest-neighbor(NN) approach. The algorithm that is used to solve TSP hasseveral iterations, which are [9,10]:1) Salesman is in initial point as the current vertex.2) Search the edge that has the least weight between thecurrent vertex and the unvisited vertex V.3) V is set as the current vertex.4) Mark V as visited vertex.5) Repeat step 2.6) If all vertices have been visited, stop the iteration and goback to initial point.The output of this algorithm is the sequence of steps as theTSP solution.

Vol.8/No.1 (2016)CustomerINTERNETWORKING INDONESIA JOURNALOperatorRestaurant OutletFig. 5 shows the example of optimized route for fouraddresses. In this application, point 1 is the initial and endpoint. Table with blue cells contain the data about distancebetween two points that are generated using Google MapsAPI. Meanwhile, the table with red and yellow cells containsthe solution for optimized routes.Order notification Isavailable at thesystemFig. 5. Example of optimized routing using application that applies heuristicalgorithm and uses Google Maps.Cook processes theOrderIV. DESIGN RESULTStartOrders via Telephone/WebsiteCustomer& OrderCompletes thedataAcceptsAccepts orderorder && validatevalidatecustomercustomer && orderorder datadataAsksAsks datadata viaviaPhone/sendsPhone/sendsemailemail totocustomercustomerNo19IsIs datadatacompletecomplete?YesChooses the nearest outletfrom customer addressGeneratesdelivery routeDelegates orderhandling to outletCustomer& Order,DeliveryRouteStaff prints thepayment billDelivery staffdownload the orderand delivery routedata into mobilephoneReceives order anddoes paymentA. Data DesignThe Physical Data Model (PDM) can be used as the base forimplementing the database and table structure of theapplication. The PDM of web-based food ordering applicationcan be seen in Fig. 6.Staff delivers theordered itemsDelivery staffreturns and reportsthe paymentsMENU OUTLETKODE OUTLET Text(20)KODE MENUText(50)MENU ITEMKODE MENU ITEMText(50)KODE (10)DESKRIPSIMemoPAKET ANTARID PAKET ANTARLongIntegerID OUTLETText(50)KODE KARYAWANText(50)KODE KENDARAANText(20)TANGGAL ANTARDateTimeJAM ANTARDateTimeJAM KEMBALIDateTimeTOTAL EST WAKTUText(20)TOTAL EST JARAKText(20)CURRENT POS LONGText(50)CURRENT POS LATText(50)STATUSIntegerEndFig. 3. The proposed food ordering business process.A simple web-based application was developed to test theheuristic algorithm for routing optimization. This testingapplication also utilizes Google Maps API. In this application,user can input several locations/addresses, and then GoogleMaps API will return the coordinate of those locations. Thisfunction can be seen in Fig 4.PAKET ANTAR RUTEID PAKET ANTARLongIntegerTUJUAN KEIntegerLONG STARTText(50)LAT STARTText(50)LONG ENDText(50)LAT ENDText(50)OUTLETKODE OUTLET Text(20)NAMA 50)LATITUDEText(50)JAM BUKADateTimeJAM TUTUPDateTimeSTATUSIntegerKATEGORI PRODUKKODE KAT Text(50)NAMA KAT Text(250)KARYAWAN OUTLETKODE OUTLETText(20)KODE KARYAWANText(50)STATUSIntegerJENIS KENDARAANKODE JENIS Text(20)JENIS TEKS Text(100)VOLUMEText(10)DESKRIPSIMemoKONFIGNAMA KONFIG Text(50)NILAI KONFIGDateTimeKETERANGANText(250)ORDER CUSTOMERID ORDERLongIntegerUSERNAME Text(50)ARTIKELID ARTIKELLongIntegerJUDUL ARTIKELText(250)SPOILERText(250)ISI ARTIKELDateTimeTGL BUATDateTimeJAM BUATDateTimeTGL BATASDateTimeJAM BATASDateTimeREADERText(50)STATUSIntegerJENIS KARYAWANID JENISIntegerJENISText(20)JENIS TEKS Text(100)DESKRIPSIMemoUSR PRIV LINKID USR PRIVLongIntegerJENIS PENGGUNAText(50)DAFTAR USR PRIVID USR PRIVLongIntegerUSR IntegerID USR PRIV ID USR PRIVUSR PRIV TEKSFig. 6. PDM of web-based food ordering system.ISSN: 1942-9703 / 2016 IIJORDERID ORDERLongIntegerTGL ORDERDateTimeJAM ORDERDateTimeTIPE ORDERDateTimeIP ORDERText(50)KETERANGAN Text(250)STATUSIntegerPELANGGANNAMAText(250)TGL LAHIRDateTimeTGL TUDEText(50)TGL LAST LOGINDateTimeIP LAST LOGINText(20)USERNAMEText(50)PASSWORDText(100)REG SOURCEText(10)KENDARAAN OUTLETKODE OUTLETText(20)KODE KENDARAANText(20)STATUSIntegerKARYAWANKODE KARYAWANText(50)NAMA DEPANText(50)NAMA BELAKANGText(50)TEMPAT LAHIRText(50)TGL LAHIRDateTimeTGL MASUKDateTimeTGL LAST LOGINDateTimePASSWORDText(100)JENIS KARYAWANText(20)JENIS KENDARAANText(20)STATUSIntegerIS SETText(50)ORDER EXPRESSID UDE Text(50)LATITUDEText(50)PAKET ANTAR ORDERID PAKET ANTARLongIntegerID ORDERLongIntegerTUJUAN KEIntegerSTATUSIntegerKENDARAANKODE KENDARAANText(20)KODE JENISText(20)JENIS TEKSText(100)VOLUMEText(10)NAMA KENDARAANText(50)NO PLATText(10)DESKRIPSIMemoSTATUSIntegerJADWAL OUTLETKODE OUTLETText(20)KODE OUTLET TEKSText(250)NAMA JADWALText(200)TANGGALDateTimeJAM BUKADateTimeJAM TUTUPDateTimeDESKRIPSIMemoFig. 4. Example of application that applies heuristic algorithm and usesGoogle Maps.ORDER MENUID ORDERLongIntegerKODE MENU ITEMText(50)JUMLAHText(10)HARGAText(20)MENUKODE MENU Text(50)KODE KATText(50)NAMA MENU DateTime

20INTERNETWORKING INDONESIA JOURNALAs to Android-based food ordering application, the PDMcan be seen in Fig. 7. This PDM implies that the mobileapplication will save into and query data from the followingtables. The mobile application downloads the data from thedeveloped web service.Meanwhile, the system user characteristic can be seen in thefollowing Table 1.TABLE IUSER CHARACTERISTICORDER ANTARPAKET ANTARID PAKET ANTARID OUTLETID KARYAWANKODE KENDARAANTANGGAL ANTARJAM ANTARJAM KEMBALITOTAL EST WAKTUTOTAL EST JARAKTOTAL VOLUMECURR LONGITUDECURR LATITUDECURR D

Chicken, McDonald’s, and Pizza Hut [1-3]. In delivery service, one of the main problems is to find the shortest path between customers’ addresses in order to deliver the product in reasonably short time, to save fuel usage and to optimize the utilization of the vehicles and delivery personnel [4][5]. The optimization requirement is usually represented on the delivery staff job vacancy .