Android Mobile Application for Traveling Salesman Problem TSP
Android Mobile Application for Traveling Salesman Problem (TSP) Presented By: Capstone Team #2 http: //dcm. uhcl. edu/caps 10 g 4/home. html 1
Team Information…. Team Members Shravani Reddy Tappati e-mail: Tappatis 9068@uhcl. edu Instructor & Mentor Dr. Perez Davila e-mail: perezd@uhcl. edu Tejasri Yelamanchili e-mail: Yelamanchili. T 8554@uhcl. edu Nikunj Tibdewal e-mail: tibdewaln 9188@uhcl. edu Divya Karukonda e-mail: karukondad 9030@uhcl. edu 2
Outline…. Presenter 1: Divya Karukonda Presenter 3 Tejasri Yelamanchili • Overview • Software requirement • System architecture • Use case • Class diagram • Sequence diagram • Project timeline Presenter 2 Nikunj Tibdewal Presenter 4 Shravani Reddy Tappati • Application content • GUI • Algorithm • Google Android • Sample code • Project schedule • References 3
Project Overview…. • To develop a mobile application using the Google android platform for finding the optimal route • This application allows the user to input the multiple locations that the user is interested to visit and find the optimal route among them • The user can give his/her own priority in visiting the locations, so the optimal route can be found in the listed priority 4
Software Requirement…. • Windows XP (32 -bit) or Vista (32 - or 62 -bit) • Eclipse IDE 3. 5 (Galileo) • Android SDK 2. 1 • XML 5
Basic System Architecture…. Figure 1. Basic Architecture Diagram 6
Use Case…. Android mobile application for TSP Figure 2. Application overview use case diagram 7
What does the application contain? . . • Graphical User Interface (GUI ) • Algorithm • Google Maps 8
Graphic User Interface…. Android mobile application for TSP Figure 3. GUI for the android mobile application 9
Algorithm…. • Euclidean Distance Formula • Nearest Neighbor Algorithm 10
Euclidean Distance Formula…. • Calculate distance between locations Where, p: Current location q: Desire location d: distance between p & q 11
Nearest Neighbor Algorithm…. 1. Stand on an arbitrary vertex as current vertex 2. Find out lightest edge connecting current vertex and unvisited vertex V 3. Set current vertex to V 4. Mark V as visited 5. If all the vertices in domain are visited, then terminate 6. Go to step 2 12
Class Diagram Figure 4. UML class diagram for application 13
Sequence Diagram…. User GUI HTTP connection Android application Application server Google Map 1. Get. Connect() 2. . Set. Connect () 3. Set. Application() 4. Getapplication() 5. Get. Address() 6. Save. Address() 7. Searc() 8. showroute () 9. Get. Address() 10. Cal. Distance() 11. Getdistance() 12. Find. NN() 13. Get. NN() 14. Map. NN() 15. Show. Optimized. Route() Figure 5. Sequence diagram 14
Project Timeline…. 15
Android…. • Android is mobile phone operating system developed by Google • Is first complete, open and free mobile platform • 100% java support • We can create application for the android platform using the Android SDK 16
Android…. • Java and XML based GUI • Application written using java programming language run on Dalvik, a custom virtual machine designed for embedded use, which runs on top of a Linux Kernel 17
Android Architecture…. Figure 6. Android Architecture 18
Download and Install the SDK…. Download and install the SDK starter package Select a starter package for your operating system and download it Install the ADT Plug-in for Eclipse If you are developing in Eclipse, set up a remote update site and install the Android Development Tools (ADT) plugin Add Android platforms to your SDK Use the Android SDK and AVD Manager, included in the SDK starter package, to add one or more Android platforms 19
Sample Android Code…. File. java package com. android. helloactivity; import android. app. Activity; import android. os. Bundle; /** * A minimal "Hello, World!" application. */public class Hello. Activity extends Activity { public Hello. Activity() { } /** * Called with the activity is first created. */ @Override public void on. Create(Bundle saved. Values) { super. on. Create(saved. Values); // Set the layout for this activity. You can find it // in res/layout/hello_activity. xml set. Content. View(R. layout. hello_activity); restore. Values(saved. Values); } private void restore. Values(Bundle saved. Values) { // TODO Autogenerated method stub }} File. xml <? xml version="1. 0" encoding="utf-8"? > <!-- Demonstrates using a relative layout to create a form --> <Relative. Layout xmlns: android="http: //schemas. android. com /apk/res/android” android: layout_width="fill_parent" android: layout_height="wrap_content" android: padding="10 px"> <Text. View android: id="@+id/label" android: layout_width="fill_parent" android: layout_height="wrap_content" android: text="Zip Code: "/><Edit. Text android: id="@+id/entry" android: layout_width="fill_parent" android: layout_height="wrap_content“ android: background="@android: drawable/ed itbox_background” android: layout_below="@id/label"/> <Button android: id="@+id/ok" android: layout_width="wrap_content" android: layout_height="wrap_content" android: layout_below="@id/entry" android: layout_align. Parent. Right="true" android: layout_margin. Left="10 px" android: text="OK" /> <Button android: layout_width="wrap_content" android: layout_height="wrap_content" android: layout_to. Left. Of="@id/ok" android: layout_align. Top="@id/ok" android: text="Cancel" /> </Relative. Layout> 20
Work Accomplished…. • Class diagram • Sequence diagram • Installed Android SDK 2. 1 • Installed Eclipse Galileo 3. 5 • Tested sample codes 21
Work To Do…. • GUI implementation • Algorithm implementation • GUI and Algorithm integration • Testing • Deployment 22
Project Schedule…. Project phase Starting Ending Team Member Status Project Initial Specification 1. 22. 2010 1. 28. 2010 Divya, Tejasri, Shravani Done Project Web Site 1. 29. 2010 2. 5. 2010 Shravani Done Software Requirement Specification 2. 5. 2010 2. 24. 2010 Team Done Project Design Document 2. 19. 2010 3. 5. 2010 Tejasri, Nikunj Done Mid Term Presentation 3. 5. 2010 Team Done Basic Implementation [ API’s, Map, Location] 2. 19. 2010 3. 12. 2010 Team Partially Implementation of Required GUI 3. 12. 2010 3. 26. 2010 Tejasri, Shravani Pending Implementation of Algorithm 3. 16. 2010 3. 31. 2010 Nikunj, Divya Pending Integration of GUI & Algorithm 4. 01. 2010 4. 09. 2010 Team Pending Testing 4. 10. 2010 4. 2010 Team Pending Deployment 4. 2010 4. 29. 2010 Team Pending Final Presentation 4. 30. 2010 Team Pending Figure 7. Project Schedule 23
References…. • Android logo http: //www. devicedaily. com/wp-content/uploads/2008/10/android-logo. png • Nearest Neighbor algorithm http: //en. wikipedia. org/wiki/Nearest_neighbour_algorithm • http: //www. wikipedia. org/ • http: //code. google. com/android/ • http: //developer. android. com/resources/tutorials/hello-world. html 24
Thank You !! 25
Any Queries? ? ? 26
- Slides: 26