Finding Your Way with KLAS A Look into a Location Aware System Kingsbury Location Awareness System (KLAS) Final Design Review Senior Project ECE 791 Researchers Mark Taipan Matthew Lape Submitted to Advisor Dr. Andrew Kun December 11 th, 2008
Executive Summary Pervasive location awareness systems have become prevalent in today s society. An example of this is the overwhelming use of devices utilizing Global Positioning Systems (GPS). This technology has become omnipresent, as most current model vehicles include it as either a standard or an optional feature [1]. While GPS is not reliable (and usually unusable) in indoor environments, they do indeed show the value of having location aware digital assistance. Currently, a digital location aware assistant does not exist for visitors of any building of the University of New Hampshire campus. This assistant can help prospective students and visitors learn more about the campus and navigate campus buildings effectively. Current UNH community members can use this system as a way to find classrooms and offices easily as well. The Kingsbury Location Awareness System, or KLAS, is the proposed prototype for a location aware digital assistant for academic buildings at the University of New Hampshire campus. This specific system will run on the 2 nd Floor of Kingsbury Hall. KLAS will be comprised of two main components, the location awareness system and the user-interactive software. The location awareness system will consist of a sensor network of IEEE 802.11 access points. Software will determine the user s location by using signal strengths to the network of IEEE 802.11 access points. A personal data assistant (PDA) will contain this location determination software as well as the user-interactive software. The user-interactive software will have two main features, a dynamic tour guide that will convey information about nearby rooms to the user and a navigation application, which will provide the user directions to a given room. Finally the software will be tested to find the most effective and efficient user interface, through both quantitative and qualitative testing. Page 2 of 30
Table of Contents Executive Summary... 2 Table of Figures... 4 Background... 5 Location Aware Systems... 5 Where s my KLAS?... 5 Objectives... 7 Approach... 8 KLAS Infrastructure... 8 Location Determination Algorithm... 10 KLAS Software... 13 KLAS Tour Guide... 15 Navigator... 16 Investigating Indoor Navigation GUIs... 18 Design and Design Analysis... 19 Project Organization and Management... 22 Project Organization... 22 Facilities... 22 Schedule... 23 Deliverables... 24 Budget... 25 Conclusion and Future Work... 26 Appendix A... 27 References... 27 Appendix B... 28 Decision Matrix... 28 Difference Algorithm Flow Chart... 29 Difference Algorithm Block Diagram... 30 Page 3 of 30
Table of Figures Figure 1: Typical UNH Wireless Access Point... 9 Figure 2 : Location of the Ten Access Points... 10 Figure 3: Master List Locations divided into User Regions... 12 Figure 4: KLAS Software Architecture and Communication Flow... 14 Figure 5: Tour Guide... 15 Figure 6: Route Map The First Step... 16 Figure 7: Route Map Changing Maps... 17 Figure 8: Route Map The End... 17 Figure 9: Example Indoor Navigation GUIs... 18 Figure 10: KLAS Propagation Model... 20 Figure 11: Difference vs. Dot Product Algorithms... 21 Figure 12: KLAS Work Facility... 22 Figure 13: Gantt Chart Time Table... 23 Figure 14: KLAS Budget... 25 Figure 15: Decision Matrix KLAS Infrastructure... 28 Figure 16: Difference Algorithm - Flow Chart... 29 Figure 17: Difference Algorithm - Block Diagram... 30 Page 4 of 30
Background Location Aware Systems Pervasive location awareness systems have become prevalent in today s society. An example of this is the overwhelming use of devices utilizing Global Positioning Systems (GPS). This technology has become omnipresent, as most current model vehicles include it as either a standard or an optional feature [1]. While GPS is not reliable (and usually unusable) in indoor environments, GPS navigation devices shows the value of having digital mapping assistance. Indoor location awareness systems can be created through the use of a variety of technologies such as infrared, Bluetooth, the IEEE 802.11 protocol and radio frequency identification (RFID). Using these available technologies, several indoor location awareness systems have been implemented worldwide [3][4][5], particularly in museums where digital guided tours providing location-based information have been useful. An example of this is the system at the Marble Museum of Carrara. Using infrared emitters, the location awareness system provides visitors location dependent information using a personal data assistant (PDA). The user is able to retrieve information visually and audibly through the PDA based on the current exhibit the user is in [3]. Where s my KLAS? As a visitor to UNH, one way to get acclimated to the building is to take a guided tour. If a prospective student is interested in a specific major, he or she can contact a department to schedule an appointment with a professor. Depending on the time of year, the process of finding a time that works with both parties can be a laborious process. What if they want to learn about other departments as well? Few of the faculty and students know the details about Page 5 of 30
each lab facility, faculty member, and classes. Through our own experiences like these and those shared by other visitors of Kingsbury Hall, we have identified two main problems to solve. The first problem we noticed was that the current methods of indoor navigation are inefficient in Kingsbury Hall. Furthermore, giving knowledgeable guided tours require human resources that not all the UNH engineering departments have. A location-aware digital assistant can solve these two problems. By having a visitor carry a device that knows where the user is, the device can display instructions to help the user get to a location. The device could also act as a tour guide that gives you information about nearby rooms; this eliminates the need for more knowledgeable human resources. Visitors and UNH community members can also use this system as a way to find classrooms and offices easily. Page 6 of 30
Objectives To solve the inadequate navigation solutions in Kingsbury Hall and provide more accessible tour guides, a location-aware digital assistant is needed. The design and development of this location aware system has four main goals: 1. This system should be easy to implement throughout the academic buildings and should be portable using industry standard components. 2. After the infrastructure is determined, the system should use a deterministic location algorithm. 3. With the location algorithm developed, the next objective is to create a Tour Guide and the Navigator applications for users to interact with. 4. With these applications created, the last objective would be to investigate what makes an effective indoor navigation user interface. With these four goals in mind, we developed the Kingsbury Location Awareness System, or KLAS. This system is built for the 2 nd floor of Kingsbury Hall and will provide users a Tour Guide and Navigator for the 2 nd floor. KLAS is a prototype system that can be hopefully expanded to all the academic buildings at UNH. Furthermore, KLAS can also be used for indoor navigation research. Page 7 of 30
Approach KLAS Infrastructure To create a system at UNH that used industry standard components, it was decided early on to use only IEEE 802.11 signal strengths to determine a user s location. IEEE 802.11 is a standard networking protocol that is used in places such as college campuses and businesses [5]. This prevalence in today s society is why we chose to use the IEEE 802.11 protocol for the basis of KLAS s location determination. The IEEE 802.11 protocol defines a medium access control mechanism and physical access methods to facilitate communication between two devices. This communication can be done through the use of an access point, a normally stationary device that transmits wireless signals to other IEEE 802.11 interfaced devices (e.g. laptops, PDAs) [2]. The drawback to using the IEEE 802.11 protocol is that achieving a high level of location accuracy is difficult to implement practically. Furthermore, a large amount of calibration is needed due to the uncertainty in radio wave propagation within buildings [3]. Since UNH has implemented IEEE 802.11 access points for wireless internet (Wi-Fi) in all their academic buildings, it was fitting to use this protocol to determine a user s location. With portability in mind, a personal data assistant (PDA) that utilizes IEEE 802.11 and the Windows Mobile operating system would be used. Windows Mobile is a standard for operating systems on portable devices and thus, future implementations of KLAS could be distributed to the public by providing an installer software package. Furthermore, the application development would involve using Project54 (which requires the use of Windows due to its use of the.net Framework and COM) and Visual Studios as our software development tool. Page 8 of 30
Upon selecting the technologies and hardware that will be used for KLAS, we sought to implement the infrastructure for KLAS. First, the environment that KLAS would be developed for is the 2 nd floor of Kingsbury Hall due to our knowledge of its layout and to ease the complexity of the project. The next step was to devise the KLAS infrastructure so it would provide Wi-Fi coverage to the entire second floor of Kingsbury Hall. Proving the high prevalence of wireless computing, it was soon realized that there was an already pre-established UNH Wireless Access Points evenly positioned throughout the building. With the addition of a few more access points to the areas where there was no Wi-Fi coverage, we were able to achieve complete coverage of the entire floor. A total of 10 access points are currently being used with each being uniquely identified by their MAC address. Figure 1: Typical UNH Wireless Access Point This picture shows the typical look of a UNH Wireless Access Point. This particular one is located within the Engineering Library located on the second floor of Kingsbury Hall. Page 9 of 30
Figure 2 : Location of the Ten Access Points This map shows the location of the ten access points used in the KLAS infrastructure. The red dots are the UNH Wireless access points. The blue dots are the access points added by us to provide full coverage. Location Determination Algorithm Once the hardware and software technologies were selected, the next step to developing KLAS was to create the location determination algorithm. We decided early on to use a deterministic algorithm due to the mathematical complexity of probabilistic models and our lack of knowledge in this field. Thus, we were faced with two components of deterministic algorithms: the calibration phase and the location determination phase. The first phase, the calibration phase, is similar to modeling the radio wave propagation in the environment (in this case, it is the 2 nd floor). It requires taking several Received Signal Strength Indicator (RSSI) readings, the signal strength from the PDA to a specific access point, at different points around the environment. Once the values have been recorded, statistical values are associated with each location (e.g. the mean or mode of the RSSI readings at a specific location). Page 10 of 30
After performing the calibration, the next step is to determine the location algorithm. Please see the Design section to review the algorithms that we explored and how we decided on a specific algorithm. With every phase in the developing KLAS, we tested our designs by first implementing them in the West Wing of the 2 nd Floor using just our added access points (the blue dots in Figure 2). This enabled us to start with a small-scale and then, if successful, implement the corresponding design throughout the entire floor. Using this small-scale test method, we first took five calibration points along the West Wing by standing in a direction and collecting 50 RSSI values. We then rotated 90 degrees three times, collecting 50 more RSSI values in each orientation to account for attenuation that would occur from the water in our bodies. The relative humidity was also recorded since the moisture in the air affects the 2.4GHz waves used in the 802.11 protocol (more humidity equals more attenuation). The mean values were calculated and associated with each calibration point. As shown in the Design section, we took paths by walking along a path collecting a single RSSI reading at predetermined locations. The algorithms that we tested compared the values from the paths to the calibration points to determine the location of the user. We noticed that there were two problems with this method. First, our four orientations are not balanced because there is very little attenuation when holding the PDA to your side (as oppose to completely facing away an access point). Thus, it was concluded that in our next calibration for the entire floor, we should take 200 RSSI readings with half of them facing one direction of the hallway and the other half facing the other way. The second problem was that Page 11 of 30
we need to take more calibration points in a given section to hopefully decrease the error distance in our location estimation. Upon deciding our location algorithm and calibration methods, we retrieved 200 RSSI values at 46 different locations around the 2 nd floor of Kingsbury Hall (again only using two different orientations and recording the relative humidity). We then applied our location algorithm and ran several runs that recorded the location estimates (at this point, the software estimates what calibration location the user is closest to). Using 95% confidence limits, we condensed areas that had similar location estimates (e.g. Area D contains Calibration Locations 2-6). Figure 3 below depicts the final areas. These are the areas that the KLAS software will determine the user is in and are used in the Tour Guide and Navigator software. Figure 3: Master List Locations divided into User Regions This map shows the areas that were created from the 46 master points. This allows for better user data conveyance (as seen in the next two phases). Page 12 of 30
KLAS Software To develop KLAS, the Project54 software framework was used. The Project54 framework allows programmers to code applications with specific features. One of the useful features Project54 provides is the accessibility of the user interface. The user can interact with the software through both graphical and speech means. All the applications developed for KLAS were implemented using Project54 s software framework, C++, Microsoft s.net framework and COM. The KLAS software architecture has three main components: the Location Determination, the Tour Guide, and the Navigator. The Location Determination component contains three specific applications: the RSSI Recorder, the Location Determination, and the Location Display. The RSSI Recorder was used to record RSSI readings for the calibration phase, and also reads the RSSI values real-time from the wireless interface on the PDA. The Location Determination application takes the values from the RSSI Recorder and applies our location algorithm, determining the location estimate using the calibration locations. The Location Display takes the location estimate from the previous application and determines the final area as depicted in Figure 3. The Tour Guide and the Navigator use the area information from the Location Display for their own purposes. Page 13 of 30
Figure 4: KLAS Software Architecture and Communication Flow Page 14 of 30
KLAS Tour Guide Once we were able to determine the user s location, we moved on to the next phase, the development of a prototype Tour Guide software application. This software program is the one of the two user-interactive applications. With this digital tour guide, the user will be able to get different information about nearby rooms. Currently, this prototype allows the user to see the Room Number, the Occupant(s), and some information about either the room or the occupant(s). Furthermore, since we wanted to test this on a small scale before applying it to the entire 2 nd floor, this application currently only works in the West Wing of the 2 nd floor of Kingsbury Hall. The pictures below displays the two screens the user would see. Figure 5: Tour Guide Page 15 of 30
Navigator After developing the prototype Tour Guide application, the second half of the userinteractive software, the Navigation application, was developed. Like the previous application, the functionality of this software was only tested and used in the west wing of the 2 nd floor of Kingsbury Hall. This application allows the user to select a room number from a list and then obtain pictorial directions to get to the selected room. The following pictures demonstrate a user using the Navigation application to get to room W219. Figure 6: Route Map The First Step Upon hitting the Create Route button in the setup screen, a map will appear. The user is currently somewhere in the shaded orange region, and should follow the arrow to proceed to the room. The user can also get out of the Navigation application by pressing Main Screen. If the user wishes to cancel the current route and go to another room, pressing the Change Dest. Button will bring the user back to the route setup screen. In this scenario, the user is following the map arrow to the desired room, W219. Page 16 of 30
Figure 7: Route Map Changing Maps As the user progresses through the route, the map will change based on the user s current location. Again, the orange region is the area the user is currently in, and the arrow is the direction the user should travel. Figure 8: Route Map The End Once the user reaches the region the destination is in, a map with a line and a dot is shown. The user should follow the line to the dot to reach the destination. It looks like our user has successfully reached the destination! Page 17 of 30
Investigating Indoor Navigation GUIs The next step after creating the user-interactive software applications is to determine what makes an effective and easy to use interface for an indoor navigation system. In the second semester, we plan on creating an experiment that will have users traverse routes around the second floor of Kingsbury Hall. These routes will be traversed using different categories of information (e.g. turn-by-turn and landmarks) conveyed through pictures, maps, and text and speech. We plan on evaluating user performance using metrics such as time to complete the route, wrong turns made, etc. We also wish to evaluate subjective user opinions about the various aspects of the navigation aid. The results will be used to determine what type of information presentation results in the best user performance and user satisfaction. Figure 9 depicts example GUIs that would be displayed in our experiment. Figure 9: Example Indoor Navigation GUIs Page 18 of 30
Design and Design Analysis In order to develop the best location algorithm for KLAS, three location algorithms were created, tested and compared to one another. The location algorithm is the heart of the KLAS system, where by the estimations and all other related data is derived from this algorithm. Therefore it is important that this algorithm be as accurate and consistent as possible, but still factor in the computational complexity so as to allow for operation on a PDA. In order to test these three algorithms, the results for each of the 46 calibration locations were used (known as the master list). This provided the basis for each algorithm s model to work with. From there, each algorithm deviated slightly in their approach when they were fed a list of real-time signal strength values to compare to the master list. The first algorithm devised, called the Propagation Model, was based off of using the master list to create a propagation model of the area. This allowed for the system to have a continuous model of the floor to estimate locations with. Once the model reached the testing phase of the real-time data, it was seen that there were extreme fluctuations in the location accuracy. Many times the algorithm was able to estimate the user s exact location; however in many cases it was extremely inaccurate and was imprecise. Secondly this algorithm is computationally complex and is therefore demanding on the CPU of the processing computer. In this case the computer is a PDA where battery life must be conserved and the processor power is limited, meaning every process it runs must be optimized for performance. For these reasons, it was decided that this algorithm was not a match for this system. Page 19 of 30
Figure 10: KLAS Propagation Model On the left we see the signal propagation of an access point placed in the ECE office. The signal strength decreases (blue color) as the distance increases from the access point. On the right we see an example of the results from the algorithm. The orange box is where the user is actually and the red box is where the location estimate is. The blue and green boxes show the individual access point estimates. As you can see, the red box is the average of the blue and green boxes. The second algorithm created utilized the difference method. This method would find the difference between each master location point and the real-time input data. The resulting data would then be measured for the least difference, which would then produce the estimated location. This algorithm provided greater simplicity compared to the propagation model, as well as an increased consistency in estimations. However, it did lack in the overall accuracy compared to the propagation model. Based on the KLAS requirements and needs, it was decided that the loss in accuracy was within the acceptable limits. (See the Appendix for the difference algorithm s flow chart and block diagram) Page 20 of 30
The third algorithm utilizes the dot product to estimate the location in much of the same manner as the second algorithm uses the difference between the real-time data and the master list. This algorithm provides much of the same benefits and advantages of the difference method. Therefore determining which algorithm would perform best required a test of them side-by-side. To do this, each algorithm was feed the same raw real-time data. The resulting estimations were then mapped on top of the master locations. Figure 11: Difference vs. Dot Product Algorithms Therefore, from the above results, it was determined that the difference algorithm provided the best raw estimations, and when combined with some filtering, would provide the best overall algorithm for KLAS. Page 21 of 30
Project Organization and Management Project Organization The KLAS team is a business partnership which is a subsidiary of the parent company Consolidated Advanced Technology Laboratory (CATLab), or Project54. Mark Taipan and Matthew Lape, KLAS business partners, equally divide the project s workload and responsibilities in order to ensure a quality product is produced. As Team Leader, Matthew Lape is responsible for the administrative aspects of the company, managing the schedule, reports, as well as the budget. As Technical Director, Mark Taipan oversees and conducts the software creation and management. Facilities KLAS, being a subsidiary of Project54, has access and usage of their facilities. This provides KLAS with the computer, PDA, and other needed physical resources. In addition to this laboratory room, Project54 also provides the human resources needed to help test and improve KLAS. Figure 12: KLAS Work Facility Here we see a picture of the Project54 Lab used by the KLAS team. This Lab is located in Morse Hall, next to Kingsbury Hall. Page 22 of 30
Schedule Figure 13: Gantt Chart Time Table Page 23 of 30
Deliverables The KLAS project will provide a location aware tour guide and navigation application. This means specifically developing, testing and refining this application so that it will provide the students, faculty and visitors alike a beneficial tool that will facilitate their navigation. It will also provide users with data such as Professor s office location, phone number, email address, etc. as they move around the second floor. This data may not necessarily be some that the user would have at the time, and thus it will allow them to efficiently contact a professor if he/she is not in their office. Throughout the entire system there will also be focus on the user interface, ensuring that the final produce it user-friendly, straightforward and intuitive. In order to allow for development and improvement, KLAS will produce a working product at three different phases in the project. The first prototype was created after Phase Four, or the development of the Navigation Application v1.0 in September 2008. This allowed for the initial testing and proof of concept. Here the initial major issues were found and corrected. The second prototype will follow Phase Six in January 2009, after the correction and improvement to the application as well as the system calibration. At this stage the prototype will be functional in most respects, allowing for the testing and refinement of the user interface. This will also be the stage where comparison testing between KLAS and the traditional building navigation will happen. Here complete testing and verification of our design will also take place. Finally, after all revisions are made and tests are completed, KLAS will produce its final working product for release in April 2009. Page 24 of 30
Budget As outlined in the project s initial proposal, KLAS has been funded from a combination of two sources, namely Project54 and the Summer Undergraduate Research Fellowship (SURF) fund for the University of New Hampshire. During the project s fourteen month duration, SURF funded two months of the budget s salary costs (totaling $7,000). The remainder of the cost will be subsidized by Project54 in return for the provided research. Figure 14: KLAS Budget Page 25 of 30
Conclusion and Future Work Next semester, we will primarily work on finishing and optimizing the software, explore the effects of relative humidity changing differently due to the weather, and performing our user-interface experiment. The KLAS software needs to be optimized by condensing the three location determination applications and limiting the amount of messages exchanged between the applications. Also, the Navigator should be extended to the entire floor to facilitate the user interface experiment. Since we took the relative humidity readings during the summer when first calibrating KLAS, we want to take the relative humidity during the winter and compare the location estimation results. Lastly, we want to perform our experiment in determining what makes an effective user-interface for an indoor navigation system. We hope that the work that has been done with KLAS will be the ground work of a system that will be implemented campus-wide. KLAS shows the benefits of using a locationaware device in an indoor environment. We also believe that a system like KLAS would not only beneficial to visitors of UNH, but to the UNH community as well with getting up-to-date information about rooms around campus. KLAS can also be used as a system for researching indoor navigation systems and user interfaces. We look forward to continuing working on this excited project next semester. Page 26 of 30
Appendix A References [1] Yao, Chao-Hsu Global Positioning System (GPS) Technology and Cars Released: April 2002 Accessed: February 2008 http://www.csa.com/discoveryguides/gpscars/overview.php [2] Heegard, C.; Coffey, J.T.; Gummadi, S.; Murphy, P.A.; Provencio, R.; Rossin, E.J.; Schrum, S.; Shoemake, M.B., "High performance wireless Ethernet," Communications Magazine, IEEE, vol.39, no.11, pp.64-73, Nov 2001 http://ieeexplore.ieee.org/iel5/35/20848/00965361.pdf?isnumber=20848 =STD&ar number=965361&arnumber=965361&arst=64&ared=73&arauthor=heegard%2c+c.%3b+coffey%2c+j.t.%3b+gummadi%2c+s.%3b+murphy%2c+p.a.%3b+prove ncio%2c+r.%3b+rossin%2c+e.j.%3b+schrum%2c+s.%3b+shoemake%2c+m.b. [3] Ciavarella, C. and Paternò, F. 2004. The design of a handheld, location-aware guide for indoor environments. Personal Ubiquitous Comput. 8, 2 (May. 2004), 82-91. http://dx.doi.org/10.1007/s00779-004-0265-z [4] Youssef, M. and Agrawala, A. 2005. The Horus WLAN location determination system. In Proceedings of the 3rd international Conference on Mobile Systems, Applications, and Services (Seattle, Washington, June 06-08, 2005). MobiSys '05. ACM, New York, NY, 205-218. DOI= http://doi.acm.org/10.1145/1067170.1067193 [5] Haeberlen, A., Flannery, E., Ladd, A. M., Rudys, A., Wallach, D. S., and Kavraki, L. E. 2004. Practical robust localization over large-scale 802.11 wireless networks. In Proceedings of the 10th Annual international Conference on Mobile Computing and Networking (Philadelphia, PA, USA, September 26 - October 01, 2004). MobiCom '04. ACM, New York, NY, 70-84. DOI= http://doi.acm.org/10.1145/1023720.1023728 Page 27 of 30
Appendix B Decision Matrix Figure 15: Decision Matrix KLAS Infrastructure Page 28 of 30
Difference Algorithm Flow Chart Figure 16: Difference Algorithm - Flow Chart Page 29 of 30
Difference Algorithm Block Diagram Figure 17: Difference Algorithm - Block Diagram Page 30 of 30