Graf-baseret Wifi Positionering

Størrelse: px
Starte visningen fra side:

Download "Graf-baseret Wifi Positionering"

Transkript

1 Graf-baseret Wifi Positionering Første skridt mod Wifi Positionering i praksis: Effektiv Positionering til ressource-begrænsede apparater Dat8 Rapport Gruppe D801a René Hansen Vejleder Bent Thomsen

2

3 Det naturvidenskabelige fakultet Aalborg Universitet Institut for Datalogi SYNOPSIS: TITEL: Graf-baseret Wifi Positionering UNDERTITEL: Første skridt mod Wifi Positionering i praksis SEMESTERPERIODE: DAT8, 1. Februar Juni 06 PROJEKTGRUPPE: D801a GRUPPEMEDLEMMER: René Hansen, rhansen@cs.aau.dk VEJLEDER: Bent Thomsen, bt@cs.aau.dk ANTAL KOPIER: 4 ANTAL SIDER: 119 Dette projekt omhandler empirisk baseret indendørs Wifi positionering. Empirisk baseret Wifi positionering anvender indsamling af signalstyrke som teknik til indendørs positionering istedet for den traditionelle tilgang med måling af vinkler og tid til udregning af en position, der kan være problematisk i et indendørs miljø. Empirisk baseret Wifi positionering har vist gode resultater med hensyn til opnåelse af høj positioneringsnøjagtighed i et indendørs miljø, men metoden kommer på bekostning af en krævende beregningskompleksitet, hvilket er et problem ift. anvendelse på virkeligt mobile apparater som Wifi telefoner og PDAer. Hidtil har forskningen primært fokuseret på algoritmisk forbedring af positioneringsnøjagtigheden, mens aspektet med at gøre beregningen effektiv nok til at kunne afvikles på et mobilt apparat ikke er betragtet. Dette projekt præsenterer en metode, baseret på graf-modellering af det fysiske miljø, der gør positionsudregning effektivt nok til at kunne udføres på et mobilt apparat. Der udvikles en applikation til en PDA der inkorporer metoden, og dette repræsenterer således det første forsøg på at udføre empirisk baseret Wifi positionering på et mobilt apparat.

4

5 The Faculty of Engineering and Science University of Aalborg Department of Computer Science Abstract: TITLE: Graph Based Wifi Positioning SUBTITLE: A first step towards practical Wifi Positioning SEMESTER PERIOD: DAT8, 1st February 06-1st June 06 PROJECT GROUP: d801a René Hansen, rhansen@cs.aau.dk SUPERVISOR: Bent Thomsen, bt@cs.aau.dk NO. COPIES: 4 NO. PAGES: 119 This project concerns the area of indoor empirically based Wifi positioning. Empirically based Wifi positioning employs a technique of collecting signal strength information as a means for inferring a position, as opposed to the traditional outdoor techniques of measuring angles and time of incoming signals, which prove problematic in an indoor environment. So far, good results with respect to obtaining accurate position estimates have been achieved with empirically based Wifi positioning. However, the accuracy comes at the expense of computational efficiency which is a serious hindrance towards realizing accurate indoor position systems for the intended target devices such as Wifi phones and PDAs. So far, the existing research have primarily focused on algorithmically improving the positioning accuracy while the practical aspect of ensuring that positioning can be done on a mobile device has been neglected. This project presents a method based on graph modelling of the indoor environment that makes empirically based Wifi positioning efficient enough to allow for computation on a mobile device. An application which incorporates the method is developed for a PDA. Consequently, this project represents the first attempt of performing empirically based Wifi positioning on a mobile device.

6

7 iii Forord Denne rapport er skrevet ved Institut for datalogi ved Aalborg Universitet inden for suppleringsfaget i Industrirettet Datalogi. Projektet indeholder en case hvor empirisk baseret Wifi positionering beskrives ift. et konkret anvendelsesområde. Jeg vil i den forbindelse gerne takke Randers Bibliotek for deres deltagelse, og ikke mindst udviklingschef på Randers Bibliotek, Hans Nielsen, for drøftelser vedrørende perspektivet for indførelse af et indendørs navigeringssystem på Randers Bibliotek. Jeg vil endvidere gerne takke min vejleder, Bent Thomsen, for mange interessante og givtige diskussioner, ikke kun i forbindelse med dette projekt, men over de sidste to år, hvor han har fungeret som vejleder på projekter jeg har deltaget i. Aalborg, 1. Juni, 2006 René Hansen

8

9 Cd Den vedlagte cd indeholder følgende - Den udviklede applikation - Rapporten i pdf format

10

11 Indhold 1 Indledning 3 I Baggrund og relateret arbejde 9 2 Baggrund Sensor teknologier Positioneringsteknikker Algoritmer Udfordringer Relateret arbejde Relateret arbejde Sammenligning af resultater II Udvikling af system 41 4 Udvikling af system Indledning Mobil applikation

12 INDHOLD i 4.3 Klassediagram Funktionalitet Strategi for deployering Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet Indledning Graf-metoden i aktion Radius-knuder Afrunding af graf-metoden Case: Randers Bibliotek Indførelse af et navigeringssystem III Afslutning 75 7 Konklusion og perspektivering Videre arbejde og perspektiver IV Appendix 83 A Skærmbilleder 85 B Kildekode for klienten 89 B.1 Funktionalitet B.2 Modellag Figurer 111

13 INDHOLD 1 Listings 113

14

15 Kapitel 1 Indledning Dette projekt omhandler indendørs Wifi positionering - et forskningsområde hvor Wifi teknologi udnyttes til at kunne positionsbestemme en bruger i et indendørs miljø. Viden om en brugers position kan være meget værdifuldt, og kan hjælpe til at udvikle en klasse af systemer, der bredt betegnes som værende kontekst-bevidste. Kontekst-bevidsthed inkluderer al information om en brugers omgivelser og situation [3,10,15], og muliggør at der kan udvikles applikationer der er meget specifikt tilpasset den enkelte bruger. Viden om en brugers position er ikke mindst en vigtig parameter i kontekst-bevidsthed. En sådan viden kan bla. udnyttes kommercielt af firmaer til at målrette deres markedsføring, baseret på deres kunders bevægelsesmønstre, ligesom positionsinformation kan komme slutbrugeren til gavn, eksempelvis ved navigering i ukendte omgivelser eller som en hjælp til hurtigt at lokalisere interesse-emner eller andre personer. Indtil videre er kontekst-bevidste applikationer ikke udbredt hvor brugerne tilbringer hovedparten af deres tid, nemlig indendørs. De tilgængelige teknologier har hidtil været en begrænsning herfor. Mens GPS og Celle-ID teknologierne har fundet anvendelse til en række systemer til u- dendørs brug, så er de meget begrænsede i deres anvendelighed til indendørs brug. Samtidig har der været en kløft mellem teknologier der rent faktisk kan bruges til indendørs positionering. Eksempelvis, så er Infrarød og Bluetooth teknologierne integreret i mange moderne mobiltelefoner, men Infrarød og Bluetooth infrastrukturer er yderst sjældne. Omvendt, så har Wifi i stigende grad vundet indpas som infrastruktur i mange organisationer og virksomheder, ligesom udbredelsen af Wifi Hotspots har været betydelig i de seneste år, både hos private personer, cafeer, hoteller, biblioteker, tankstationer, mv. [31]. Imidlertid har klientapparater med Wifi egenskaber hovedsagligt været begrænset til laptops og PDAer mens mobiltelefoner med disse, har været et niche område. Dette billede er dog ved at ændre sig da et stigende antal mobiltelefoner med Wifi egenskaber er ved at komme på markedet [5]. Et nyt forretningsområde der kan være med til at accelere denne tendens er mobil IP-telefoni - IP-telefoni til mobiltelefoner. Mobil IP-telefoni spåes

16 4 Indledning af flere analytikere et stort potentiale [24, 33, 48, 49] og på nuværende tidspunkt er mobil IP-telefoni allerede ved at blive realiseret: I Januar 2006 blev det herhjemme muligt at foretage IP telefoni via en Accton Wifi mobiltelefon og Skype [39]. Telia er desuden i øjeblikket ved at teste et system der skal tillade en kombination af mobil IP-telefoni og traditionel mobiltelefoni. Tjenesten vil facilitere sømløs handover mellem GSM, når brugeren er udenfor et Wifi netværk, og skifte til Wifi når brugeren er i nærheden af enten et hjemmenetværk eller firmaets Wifi netværk for erhverskunder [9, 46]. Løsningen forventes ifølge Telia lanceret i 2006 [46]. Derudover har det danske selskab V2Tel lanceret en sammenkobling af sine mobilabonnementer med IP-samtaler. Samtalerne er ikke gratis, men minutprisen er væsentlig lavere end den gængse minutpris, især ved opkald til andre lande, hvorfor markedssegmentet da også primært er erhverskunder. Endelig debuterer Microsoft i 2006 med et konkurrerende produkt til Skype som analytikere mener kan ændre markedet for mobiltelefoni dramatisk - ikke mindst fordi servicen er bundet tæt sammen til Microsofts øvrige produkter, især Office [33]. En begrænsning af ren mobil IP-telefoni er på nuværende tidspunkt manglen på dækkende, tilgængelige Hotspots. En interessant måde at fremme udbredelsen af mobil IP-telefoni er dog eksemplificeret ved det spanske selskab Fon, der har startet et netværk ejet af dets brugere, i kontrast til en model hvor til en stort telekommunikationsvirksomhed f.eks udbyder mobil IP-telefoni på abonnement basis. Firmaet har indtil videre registrerede medlemmer (april 2006) hvor 200 nye kommer til hver dag. Ideen er, at Fon opfordrer netværksmedlemmer til at tilbyde Wifi adgang i bytte mod selv at få Wifi adgang til andre Fon hotspots [50]. Udover mobil IP-telefoni muliggør Wif telefoner også, pga. den større overførselshastighed sammenlignet med GSM og 3G, overførsel af større filer, bla. lyd, billeder og multimedia, hvilket åbner for flere anvendelsesmuligheder. Perspektivet for Wifi telefoner er derfor lovende, og vil, når det bliver indfriet, betyde en konvergens af Wifi teknologi på klient- og serversiden. Dette åbner mulighed for en række kontekstbevidste applikationsområder hvor en brugers position anvendes aktivt. Eksempelvis kan man forestille sig systemer til navigering i lufthavne. Ved at udnytte information om hvilken afgang en bruger er interesseret i kan brugeren navigeres til den relevante skranke og afgangs-gate. Derudover kan en bruger guides til toldfri butikker, restauranter, toiletfaciliteter, mv. På samme måde kan positionsinformation udnyttes på f.eks biblioteker: At finde det rette materiale på et bibliotek kan være en udfordring. Konsekvensen er, at en betragtelig del af bibliotekarenes tid forbruges til at hjælpe folk med at finde det materiale de søger. Ved at have et indendørs navigeringssystem vil folk være i stand til at udføre denne opgave selv ved at søge efter det angivne materiale og derefter få vist vej via en navigeringsapplikation. Hermed kan biblioteksoplevelsen forbedres for de besøgende, ligesom personalets ressourcer kan frigives til andre opgaver. Generelt kan man indledningsvis forestille sig en lang række områder hvor po-

17 5 sitionsinformation kunne være gavnligt såsom museer, universiteter, storcentre, hoteller, kontorbygninger, offentlige bygninger, mv. Lokationsinformation kan derudover benyttes til at forbedre sikkerheden ved trådløse netværk. Signalet fra Access Points kan gennemtrænge vægge og virksomheders intranet kan derfor udsættes for angreb fra personer der befinder sig uden for bygningen. De basale teknikker til at sikre den trådløse sikkerhed kan være utilstrækkelige. Service Set Identifiers (SSID) angiver det fælles netværksnavn for apparater i et Wifi system, og forhindrer adgang fra klienter der ikke har det pågældende SSID. Som default udsender Access Points deres SSID, men selv hvis dette er slået fra kan hackere detektere SSID gennem sniffing [11]. Nogle systemer understøtter autencitet baseret på MAC adressen af klientens netværkskort, men MAC adresser kan forfalskes ligesom tabte eller stjålne netværkskort kan benyttes til at skaffe adgang [11]. Adskillige forskningsartikler har ifølge Cisco Systems, Inc., peget på svagheder ved Wired Equivalent Privacy (WEP) nøgler der bruges til at kryptere og dekryptere transmitteret data [11]. Sikkerheden af trådløse netværk kan derfor udbygges ved at inkludere lokationsinformation. Herved kan der effektivt dannes en ring omkring en bygning sådan at personer udenfor denne ring forhindres adgang, ligesom lokationen på personer der uretmæssigt har sikret sig adgang til en bygning kan detekteres [11, 26]. Før kontekst-bevidste applikation baseret på Wifi teknologi bliver anvendeligt i praksis og kan sikres generel udbredelse i indendørs miljøer er der imidlertid nogle udfordringer der skal håndteres. Indtil videre har forskningen indenfor indendørs Wifi positionering primært beskæftiget sig med opnåelse af høj positioneringsnøjagtighed. De bedste resultater er opnået ved at anvende empirisk indsamling af signalstyrke information - en metode hvor der foretages signalstyrke målinger ved en række lokationer udover området der skal dækkes af et positioneringssystem. Disse lokationer, hvor der er foretaget målinger, repræsenterer på positioneringstidspunktet den mængde af mulige lokationer hvor er bruger kan estimeres til at befinde sig på. Mens metoden med empirisk indsamling af signalstyrke information har vist gode resultater medfører den samtidig et væsentligt problem: Positionsudregning kan blive meget processor-krævende, da et datasæt med mulige positions-kandidater skal gennemsøges for at fastslå det mest sandsynlige positionsestimat. Dette medfører et problem med hensyn til at være i stand til at foretage positionsopdateringer hurtigt nok. I et indendørs miljø forældes en brugers position hurtigt. Personer har en høj grad af bevægelsesfrihed, og er ikke i samme omfang bundet af en fysisk infrastruktur som i udendørs navigeringssystemer, hvor vejnetværket sætter en naturlig begrænsning for hvor en bruger (bil) kan befinde sig, og hvor en brugers fremtidige position nemmere kan forudsiges. Der er derfor behov for hyppige positionsopdateringer for at være i stand til nøjagtigt at reflektere en brugers

18 6 Indledning aktuelle position. Herved opstår problemet, hvis beregningskompleksiteten (køretiden) overstiger det interval for positionsopdateringer der er nødvendigt for at kunne følge med brugeren. Dette problem er en funktion af størrelsen af datasættet, opdateringsintervallet og de tilgængelige ressourcer. Det kan således hurtigt blive et problem at udføre positionering på klienten hvis datasættet er stort og opdateringsintervallet lavt - et problem der forværres på et mobilt apparat pga. de begrænsede ressourcer. Hidtil har de udførte eksperimenter anvendt laptops i forbindelse med undersøgelsen af empirisk baseret Wifi positionering. Laptops vil dog ikke være anvendelige til hovedparten af anvendelsesområderne, f.eks. navigering, ligesom laptops ikke er repræsentative for ressourcerne der findes på den type apparater som kontekstbevidste applikationer sigter mod, nemlig virkeligt mobile apparater som telefoner og PDAer. I dette projekt fokuseres på udfordringen med at gøre empirisk baseret Wifi positionering effektivt nok til at positionsudregning kan foretages på et mobilt apparat. Der foreslås en metode til reduktion af beregningskompleksiteten der baserer sig på udnyttelse af en velkendt datastruktur - den vægtede graf. Ideen er, at kombinere kontekst-information om en tidligere estimeret position, med grafens forbundethed, for derved at indsnævre søgefeltet til lokationer der er realistiske kandidater til en næste positionsopdatering. Herved forbedres både positioneringsnøjagtighed og beregningskompleksitet da urealistiske lokationer (selv dem tæt på en bruger) ikke betragtes. I forbindelse med projektet udvikles en applikation til en PDA der inkorporerer graf-ideen. Dette er første gang, så vidt vides, at der udvikles en applikation til et mobilt apparat i stand til at udføre empirisk baseret Wifi positionering på k- lienten. Applikationen er udviklet til at kunne foretage indsamling af signalstyrke, analyse af den indsamlede information, og test af nøjagtigheden via graf-metoden. Processen med at indsamle signalstyrke information kaldes også for offline fasen, og repræsenterer den største omkostning i forbindelse med deployering af et empirisk Wifi positioneringssystem. Applikationen kan bruges som et værktøj til at udføre offline fasen omkostningseffektivt, og der inkluderes desuden en strategi for hvordan dette gøres mest hensigtsmæssigt. Endelig indeholder rapporten en case: Navigering på et offentligt bibliotek. Der tages udgangspunkt i et samarbejde med Randers Bibliotek, og det diskuteres hvordan positionering vil kunne hjælpe til med at finde materiale mere effektivt. Resten af rapporten er organiseret som følger: I del I diskuteres baggrunden og relateret arbejde inden for indendørs Wifi positionering. Kapitel 2 diskuterer forskellige alternativer der eksisterer mht. valg af teknologi, metode og positioneringsalgoritme, mens kapitel 3 opsummerer og diskuterer tidligere udførte eksperimenter

19 indenfor empirisk baseret Wifi positionering. Del II omhandler udviklingen af systemet. Kapitel 4 præsenterer modelleringen og funktionaliteten af applikationen og det diskuteres hvordan applikationen kan hjælpe til at reducere omkostningerne til deployering af et empirisk baseret Wifi positioneringssystem. Kapitel 5 introducerer graf-metoden som middel til at forbedre nøjagtigheden og beregningskompleksiteten, mens kapitel 6 omhandler casen. Del III afrunder rapporten og diskuterer perspektiverne for videre arbejde. I appendix findes dokumentation for den udviklede applikation, i form af skærmbilleder og kildekode. 7

20

21 Del I Baggrund og relateret arbejde

22

23 Kapitel 2 Baggrund Indholdsfortegnelse 2.1 Sensor teknologier Positioneringsteknikker Algoritmer k-nearest Neighbour Bayesianske netværk Neurale netværk Udfordringer Bygningens layout Den menneskelige faktor Netværkskort faktoren Access Point faktoren Afstand mellem målepunkter Antal målinger Tracking faktoren Et indendørs positioneringssystem består grundlæggende af fire komponenter: en sensor teknologi til at transmittere signaler; en positioneringsteknik der er en metode til håndtering af indkomne signaler; en positioneringsalgoritme der anvendes til at foretage et positionsestimat; samt en positionsvisning - som oftest en grafisk repræsentation af den estimerede position i forhold til det omgivende miljø [5]. Disse komponenter, samt deres indbyrdes forhold, er illustreret i Figur 2.1.

24 12 Baggrund Pos. teknologi Pos. teknik Pos. algoritme Pos. visning Signal(er) ankommer Signaler processeres Positionsestimat udregnes Display... Figur 2.1: Komponenter i et positioneringssystem [5] 2.1 Sensor teknologier Populære sensor teknologier inkluderer: GPS, Celle Identifikation (Celle ID) for mobilantenner, Bluetooth, Infrarød, RFID og Wifi. De fire førstnævnte teknologier har nogle problemer der gør Wifi til den mest passende sensor teknologi til indendørs positionering: Såvel GPS som Celle-ID har vist sig nyttigt til en række udendørs anvendelsesområder, men er ineffektive til indendørs positionering. G- PS signalet blokeres af bygninger, og i mange tilfælde kan der slet ikke modtages et signal indendørs [5, 7, 26, 53]. Problemet med en Celle ID løsning er, at denne afhænger kraftigt af cellestørrelsen, ligesom signalet indendørs er påvirket af reflektioner fra bygningsstrukturen hvilket gør at der kun kan opnås begrænset nøjagtighed [5, 7, 41, 53]. Ulempen ved både Bluetooth og infrarød er, udover en begrænset rækkevidde, at der kræves en investering i en dedikeret positioneringsinfrastruktur. Infrarød er specielt problematisk da teknologien kræver Line-Of-Sight mellem en sender og modtager eftersom lys ikke kan gennemtrænge obstruktioner, som f.eks. vægge. Hertil kommer at andre lyskilder kan interfere med det infrarøde signal og derved negativt påvirke positioneringsnøjagtigheden [5, 7]. RFID teknologi anvendes i stigende grad i industrien til genstands-tracking (asset tracking) samt i niche industrien med at lokalisere børn eller kæledyr [5]. Et RFID system består basalt af et RFID tag og en RFID læser. Taggen er selve dataenheden der gemmer data på en microchip som så kan læses af en RFID læser. Der findes tre typer tags: Passive tags, semi-aktive tags, og aktive tags. Passive tags har ingen intern strømforsyning men beror på RFID læserens energifelt til at forsyne dem med strøm til chippen hvorfor den mulige kommunikationsafstand til læseren er meget begrænset - typisk fra omkring 2 mm op til et par meter [40,51]. Denne type tags er meget små - ifølge Wikipedia er de mindste passive tags per ,15 mm * 0,15 mm, og med en tykkelse på 7,5 mikro-meter (tyndere end papir) [51]. Semipassive tags minder om passive tags, men har indbyggede batterier. Da disse tags ikke behøver strøm fra læserens felt kan opnås længere afstande. Lyngsøe Systems har produceret semi-passive tags istand til at kommunikere på op til 100 meters afstand [28]. Passive og semi-passive tags er responsive tags, dvs. de responderer kun når en læser foretager en request. Aktive tags derimod kan også anvendes som beacon tags [51]. Dette betyder at aktive tags, udover at kunne modtage re-

25 2.2 Positioneringsteknikker 13 quests fra en læser, selv er istand til at udsende data, f.eks ved prædefinerede intervaller. Ulempen ved RFID teknologi til indendørs positionering af brugere er, ligesom Bluetooth og Infrarød at der kræves en dedikeret positionerings-infrastruktur (tilstrækkeligt med RFID læsere). Udbredelsen af Wifi infrastrukturer kombineret med den stigende udbredelse af Wifi mobiltelefoner gør Wifi til en attraktiv teknologi for indendørs positioneringssystemer, da løsninger vil kunne implementeres udelukkende via software, hvilket gør behovet for dedikerede positioneringsinfrastrukturer overflødigt. Eksempler på mobiltelefoner med Wifi egenskaber inkluderer: Nokia 9500, Nokia E70 Smartphone, Nokia E61 Smartphone, Nokia E60 Smartphone, Nokia 9300i, Nokia N80, Nokia N91 og Nokia N92 [34], QTek 8310 [38], QTek 9000 [37], QTek 9090 [2],BenQ P50 [8] og Sony Ericsson P990i [45] og Xda Atom [35] [5]. 2.2 Positioneringsteknikker Der findes grundlæggende tre teknikker til positionering: Måling af tid, måling af vinkler, eller måling af signalstyrke. Den traditionelle (udendørs) tilgang til positionering er foregået via måling af vinkler (Angle Of Arrival) og tid (Time Of Arrival, Time Difference Of Arrival) for indkommende signaler [25, 56]. Denne tilgang er imidlertid problematisk i indendørs miljøer [7, 25]. Det indendørs miljø påvirker udbredelsen af signalet på ikke-trivielle måder, der gør at signalet udviser uregelmæssige fluktuationer. Når radiobølger udbredes gennem et indendørs miljø, spreder miljøet signalet på forskellige måder, med det resultat at signalet kan ankomme fra flere forskellige vinkler - et fænomen kendt som multipath effekten [18]. Brug af tid til positionering, fungerer ved at måle den tid det tager at sende en pakke fra en afsender til en modtager. Ved indendørs positionering er afstanden mellem afsender og modtager oftest ikke særlig stor, og i mange tilfælde betyder det, at den tid det tager for en pakke at rejse fra afsenderen til modtageren er mindre end den mindste tidsgranularitet det er muligt at registrere med almindeligt udstyr (et RF signal rejser 3 meter på 10 nanosekunder [42]). Derudover har propageringsmodeller - matematiske modeller der beskriver hvordan et signal svækkes over distance, såvel som gennem forskellige materialer - deres begrænsning. Udover multipath effekten findes desuden andre faktorer der påvirker signaludbredelsen i et indendørs miljø og som vanskeliggør en teoretisk udregning af signalstyrke information ved forskellige lokationer. Disse faktorer vil blive diskuteret senere i dette afsnit. På grund af disse problemer har den dominerende tilgang til indendørs positionering baseret sig på empirisk indsamling af signalstyrke information. Empirisk baserede

26 14 Baggrund metoder fungerer på følgende måde: Der indsamles manuelt signalstyrke information ved en række lokationer fordelt udover området der skal omfattes af positioneringssystemet. Denne proces kaldes også for offline fasen. I den tilsvarende online fase, benyttes informationen der blev indsamlet i offline fasen til at give et positions-estimat af en bruger. På denne måde kan positionsbestemmelse ved empirisk baserede metoder betragtes som et klassificeringsproblem: Givet et træningssæt af præ-klassificerede variable (målte signalstyrke værdier klassificeret som værende tilhørende en specifik lokation) så er problemet at korrekt klassificere, eller estimere, en endnu uset variabel (signalstyrke information målt i online fasen). Det er derfor også naturligt at anvende klassificeringsalgoritmer til positionsbestemmelsesproblemet. Indtil videre har især tre klassificeringssalgoritmer vundet udbredelse ifm. indendørs positionering: k-nearest Neighbour, Neurale Netværk og Bayesianske Netværk. I det følgende vil jeg give en kort beskrivelse af disse og diskutere deres relative fordele og ulemper i forbindelse med Wifi positionering. 2.3 Algoritmer k-nearest Neighbour k-nearest Neighbour algoritmen er en instans-baseret algoritme [32], der fungerer ved at data i træningssættet (indsamlet i offline fasen) er gemt, og estimering af et nyt målingssæt (i online fasen) foregår ved at sammenligne med det mest ens målingssæt i træningssættet. Et målingssæt ved en lokation l gemmes som en vektor v = (ap 1, ap 2,..., ap n ) hvor ap 1..ap n angiver den signalstyrke der er målt for Access Point AP 1, AP 2,.., AP n ved lokation l. Data analytikere anvender distance til at måle ensartethed, og den mest almindelige distance funktion er Euklidisk distance, der repræsenterer den måde man tænker på distance i det virkelige liv [27]. Figur 2.2 viser den euklidiske distance mellem to punkter (6,16) og (13,7). Formlen for den euklidiske distance er givet i formel 2.1. d euklid = n (p i r i ) 2 (2.1) i=1 Estimering af en lokation foregår på følgende måde: Vi betragter et eksempel hvor offline målingssættet består af 2 målingssæt på lokation 1 og 2. Vi antager at loka-

27 2.3 Algoritmer 15 Figur 2.2: Euklidisk distance mellem to punkter tion 1 har x og y koordinaterne (60, 70), og at der er registreret følgende signalstyrke målinger på denne lokation: (AP1 = -60, AP2 = -45, AP3 = -80) (signalstyrke måles i negative decibelmeter, -dbm). Ligeledes har vi et målingssæt for lokation 2, lokaliseret på koordinaterne (80,80), hvor der er foretaget følgende signalstyrke målinger: (AP1 = -40, AP2 = -60, AP3 = -75). I online fasen foretages en måling hvor der fås følgende resultater (AP1 = -40, AP2 = -55, AP3 = -65). Problemet er nu at udregne hvilken lokation (lokation 1 eller lokation 2) der giver det bedste positionsestimat for online målingen. Estimering af den nye, ukendte position (online målingen) vha. den euklidiske distance funktion giver os følgende resultater: d euklid (60, 70) = d euklid (80, 80) = ( 40 60) 2 + ( 55 45) 2 + ( 65 80) 2 = 26, 93 ( 40 50) 2 + ( 55 60) 2 + ( 65 75) 2 = 15 Baseret på vores offline målingssæt får vi, at lokation 2 har den mindste distance til online målingen, og derfor giver det bedste estimat. Fordelen ved k-nearest Neighbour algoritmen er, at den er hurtig at deployere, da den kan anvendes uden træning eller tuning af positioneringsalgoritmen [25]. Ulempen er, at beregningskompleksiteten stiger i takt med antallet af værdier i variable (dvs. antallet af Access Points) og antallet af målepunkter i træningssættet (dvs. lokationer) [25]. Skalerbarheden for k-nearest Neighbour algoritmen er endnu ikke undersøgt for meget store bygninger [25]

28 16 Baggrund Bayesianske netværk Bayesianske netværk tilhører gruppen af probabilistiske klassificeringsalgoritmer. Den underliggende ide bag probabilistiske klassificeringsalgoritmer er at betragte det bedste (lokations)estimat som værende det estimat med den højeste sandsynlighed for at være korrekt, givet et observeret målingssæt (i online fasen) [32]. Data i træningssættet følger en fælles sandsynligheds distribution (joint probability distribution) hvor hvert målingssæt på en lokation l er tildelt en sandsynlighed P (l) [21]. Sandsynligheder måles i intervallet 0..1 hvor en værdi = 0 angiver helt sikkert ikke og en værdi = 1 angiver helt sikkert [22]. Den fælles sandsynligheds distribution udtrykker at sandsynlighederne summerer til 1, og at et estimat således helt sikkert vil resultere i en af lokationerne i træningssættet: i P (l i) = 1 Som udgangspunkt (før der er indsamlet signalstyrke information) kan sandsynligheden der tildeles til lokationer være tilfældig, f.eks, ens sandsynlighed for alle lokationer, eller sandsynligheden kan tildeles på basis af baggrundsviden. Den initielle sandsynlighed P (l) kaldes a priori sandsynligheden for l, og angiver sandsynligheden for lokation l uden at vi har foretaget målinger ved lokation l [32]. Som nævnt kan apriori sandsynligheden P (l) reflektere baggrundsviden eller være ens for alle lokationer. På samme måde angiver man P (AP ) for sandsynligheden for at målingssættet AP = (ap 1,..ap n ) vil blive observeret (uden viden om hvilken lokation målingssættet AP tilhører). Man skriver P (AP l) for sandsynligeden for at observere målingssættet AP givet at lokation l gælder. Målet er, at finde sandsynligheden for en lokation l givet at et målingssæt AP er observeret, altså P (l AP ). P (l AP ) kaldes også a posteriori sandsynligheden for l, og reflekterer indflydelsen fra målingssættet AP på sandsynligheden l, i modsætning til P (l) som er uafhængig af målinger. Bayesianske netværk udnytter Bayes teorem som metode til at udregne a posteriori sandsynligheden P (l AP ) fra a priori sandsynlighed P (l) sammen med P (AP ) og P (AP l) [32]. Bayes teorem kan ses i formel 2.2 P (l AP ) = P (AP l)p (l) P (AP ) (2.2)

29 2.3 Algoritmer 17 Bayes teorem kan således bruges til at finde det bedste estimat, estimatet med den største sandsynlighed for at være korrekt, også kaldet maximum a posteriori (MAP ), given en online måling: l MAP = argmax(p (l AP )) Fordelen ved bayesianske netværk er, at de har vist sig at være effektive til mange forskellige typer klassficeringsopgaver, men ulempen er, at bayesianske netværk kræver et stort træningssæt at lære fra for at producere gode resultater. I mange domæner er dette ikke noget problem, da mange databaser indeholder enorme mængder information, men ift. praktisk empirisk baseret positionering kan det være problematisk, da vi gerne vil være i stand til at deployere systemer med mindst mulig omkostning, og derfor gerne vil reducere processen med indsamling af signalstyrke information mest muligt Neurale netværk Neurale netværk er en metode til klassificering der er inspireret af dyrs (deriblandt menneskers) hjerner, der består af tætforbundne neuroner. En enkelt neuron kan have en relativt simpel struktur, men kombinationen af forbundne neuroner er i stand til at udføre meget komplekse opgaver. Den menneskelige hjerne er estimeret til at indeholde ca neuroner, der hver især er forbundet til 10 4 andre neuroner [32]. Neuroner bruger input fra andre neuroner til at producere et output når den kombinerede input information når en vis tærskel. Outputtet bruges herefter som input til endnu andre neuroner. Hver forbindelse mellem neuroner har en vægt tilknyttet. Som udgangspunkt tildeles disse vægte en tilfældigt valgt værdi mellem 0 og 1 [27]. Neurale netværk består af lag-delte, feedforward, fuldt forbundne netværk af neuroner (illustreret i Figur 2.3). Feedforward betyder, at netværket går i en enkelt retning, dvs. det er ikke tilladte at loope i et enkelt lag. At netværket er fuldt forbundet betyder at enhver neuron i et givet lag er forbundet til alle neuroner i det næste lag. Neurale netværk består typisk af 3 lag: Et input lag, et skjult lag (hidden layer) og et output lag. Antallet af skjulte lag kan variere, men normalt benyttes kun et enkelt skjult lag hvilket er tilstrækkeligt i de fleste tilfælde [27]. Input laget modtager input fra træningssættet, og sender disse værdier til det skjulte lag u- den at processere dem. Input laget kan således betragtes som en buffer for input værdier. Der anvendes først en kombinationsfunktion hvor vægtene kombineres til en enkelt værdi (se Figur 2.4). Ved en neuron bruges resultatet af kombinationsfunktionen som input til en (normalt ikke-lineær [27]) aktiveringsfunktion. Den

30 18 Baggrund mest almindelige aktiveringsfunktion er sigmod funktionen [27]. Herefter bruges output værdien fra aktiveringsfunktionen som input til alle neuroner i det næste lag der ved ét skjult lag, således typisk er outputlaget - derfor giver output værdien et estimat. For empirisk baserede positioneringssystemer er inputtet signalstyrke målinger. Der bruges et input per Access Point - inputtet kan f.eks være den gennemsnitlige signalstyrke målt over en periode. Hvis vi f.eks baserer systemet på målinger fra 3 Access Points fås således 3 input neuroner. Antallet af neuroner outputlaget s- varer til det mulige antal klassificeringer, der i dette tilfælde er lokationer. Hvis vi således har indsamlet signalstyrke ved 80 lokationer er der 80 mulige estimater, og derfor 80 neuroner i output laget. Antallet af neuroner i det skjulte lag kan konfigureres af brugeren. Hvis performance ikke er tilfredsstillende kan antallet øges. Et for stort skjult lag kan imidlertid risikere at medføre overfitting - et fænomen, hvor algoritmen i for høj grad tilpasses træningssættet på bekostning af generalitet, dvs. endnu usete signalstyrke målinger [27]. Figur 2.3: Struktur af neurale netværk [21] Neurale netværk trænes ved at sammenligne output værdien (estimatet) med den faktiske værdi (den korrekte lokation). De fleste neurale netværk anvender Sum of Squared Errors (SSE, formel 2.3) funktionen til at at måle output-estimatet. Problemet er herefter, at konstruere en mængde af vægte der minimerer SSE. En meget udbredt algoritme til at gøre dette er back-propagation algoritmen der fungerer ved at back-tracke i netværket og justere vægtene [32]. Back-propagation algoritmen benytter sig af en gradient descent metode der fortæller hvilken retning vægtene skal justeres [27]. Back-propagation algoritmen anvendes iterativt indtil en tilfredsstillende performance opnås. Det kan kræve mange gennemløb at opnå en tilfredsstillende nøjagtighed, og denne proces kan også give en tendens til overfitting. Alternativt kan back-propagation algoritmen termineres efter X antal

31 2.4 Udfordringer 19 Figur 2.4: Grundplan [7] gennemløb, på mulig bekostning af en tilfredsstillende performance. SSE = traeningssaet output neuroner (faktisk output) 2 (2.3) Ulempen ved neurale netværk er en langsom træningstid, og at de ofte kræver et stort træningssæt for at kunne give nøjagtige estimater [25, 27, 32]. Endvidere, så er neurale netværk udpræget en black-box metode, og deres kompleksitet gør at den resulterende performance ikke er umiddelbart analyserbar af mennesker [25, 27, 32]. 2.4 Udfordringer Som nævnt findes der en række faktorer der skaber irregulære fluktuationer i signalstyrken i et indendørs miljø. Derudover findes der en række design-faktorer, såsom antal Access Points, afstand mellem målepunkter, mv. der indvirker på den nøjagtighed det er muligt at opnå via empirisk baseret Wifi positionering. Denne sektion opsummerer de akkumulerede erfaringer der er gjort fra tidligere eksperimenter vedrørende disse effekter [5, 7, 26, 41, 42, 53, 55] Bygningens layout Vi har allerede berørt multipath effekten - reflektioner fra obstruktioner i det indendørs miljø der gør at et signal kan ankomme til modtageren via flere stier. U- dover reflektion, så absorberes signalet desuden af forskellige typer, og tykkelser,

32 20 Baggrund af materiale. Signalets styrker aftager således i varierende grad afhængig af typerne og antallet af obstruktioner, f.eks. vægge, som signalet passerer igennem [17, 53]. Da obstruktioner både medvirker til at reflektere og absorbere signalet kan det potentielt medføre ændringer i signalstyrken hvis obstruktioner henholdsvis fjernes eller tilføjes. Resultatet er, at det kan blive nødvendigt at gentage offline fasen hvis der foretages omstruktureringer i det fysiske miljø. Dette er problematisk, da offline fasen udgør den største omkostning ved deployering af et empirisk baseret Wifi positioneringssystem [5, 25, 41, 53] Den menneskelige faktor 2.4 GHz frekvensen som RF signaler opererer ved, er en resonant frekvens til vand, og eftersom den menneskelige krop består af ca. 70% vand, påvirker mennesker af forskellig størrelse og antal ligeledes signalet [5,7,25,55]. Effekten fra mennesker kan mærkes på både den gennemsnitlige signalstyrke og variansen i signalet. Selve tilstedeværelsen af en bruger tæt på måleudstyret kan skabe større fluktuationer i det modtagne signal end hvis brugeren var fraværende. [25] målte at standardafvigelsen for signalstyrken var 0,68 dbm når der ikke befandt sig en bruger i nærhed af måleudstyret, mens standardafvigelsen steg til 3 dbm ved brugerens tilstedeværelse. Figur 2.5 illustrerer spredningen i signal styrken når brugeren er henholdsvis i nærheden eller er fraværende. På samme måde kan brugerens retning have en, endog stor, effekt. [25] registrerede udsving på op til 9,32 dbm som en følge af brugerens retning. Af denne årsag er det blevet almindelig praksis i offline fasen at foretage målinger i fire retninger ved hver lokation (nord, syd, øst, vest). Selv brugere der ikke befinder sig i umiddelbar nærhed af måleudstyret kan bidrage til en øget fluktuation. [7] observerede således at signalet var relativt stabilt tidligt om morgenen og sent om aftenen, mens der ikke var andre personer i den pågældende bygning, mens signalet varierede betydeligt mere kraftigt inden for kontorets åbningstid. Dette ledte til konklusionen at det er nødvendigt at gentage offline fasen på forskellige tidspunkter af dagen samt over en længere periode, f.eks et par uger Netværkskort faktoren IEEE standarderne [47] definerer signalstyrke målinger som værende en værdi mellem 0 og 255. Imidlertid, så måler leverandører af netværkskort signal styrke værdier forskelligt, idet de benytter proprietære målingsskalaer og granularitet [25]. Eksempelvis, så måler Cisco s kort signalstyrke på en skala med 100 enheder, mens Atheros chipsettet har et maksimum på 60 enheder [25]. Figur 2.6 viser måleområderne for forskellige netværkskort.

33 2.4 Udfordringer 21 Figur 2.5: Effekt af brugerens nærhed [25] Figur 2.6: Måleområde for forskellige netværkskort [25] Hertil kommer, at forskellige netværkskort måler signalstyrke med varierende præcision, dvs. nogle kort måler signalstyrke med større svingninger end andre netværkskort. I positioneringsøjemed er netværkskort med en bred måleskala og/eller en god granularitet at foretrække, af den årsag at de flere mulige signalstyrke værdier det er muligt at måle, giver bedre mulighed for at differentiere mellem forskellige signalstyrker, og dermed bedre mulighed for at skelne mellem signalstyrke målinger fra to lokationer placeret tæt på hinanden. Derudover er det ønskværdigt at kortet måler med høj præcision, dvs. små udsving, da det hermed reducerer risikoen for overlappende signalstyrke værdier ved lokationer tæt på hinanden. Det faktum, at forskellige leverandører måler signalstyrke forskelligt kombineret med varierende præcision gør det vanskeligt at bygge omkostningseffektive sys-

34 22 Baggrund temer der kan håndtere heterogene netværkskort. Det er selvfølgelig muligt at foretage en offline fase per netværkskort, men næppe hensigtsmæssigt ud fra et økonomisk synspunkt. Problemet forværres kun yderligere hvis der er behov for at gentage offline fasen. Indtil videre er dette aspekt ikke betragtet, men tidligere forsøg er alle udført med samme netværkskort i både offline og online faserne. [25] understreger da også netop vigtigheden af, at anvende den samme type netværkskort til både on-line- og off-line fasen pga. de ovennævnte problemer Access Point faktoren Antallet af Access Points har en indflydelse på den nøjagtighed det er muligt at opnå med et positioneringssystem. Ved kun at have et enkelt Access Point til rådighed er det naturligvis ikke muligt unikt at bestemme en lokation. Hvis der findes Line-Of-Sight (LOS) fra Access Pointet, og obstruktioner således ikke influerer på signaludbredelsen, er alle punkter i en given radius fra det pågældende Access Point ligeværdige kandidater til at producere et estimat. Til positioneringssystemer er der derfor behov for flere Access Points. Ved at tilføre Access Points mindskes risikoen for identiske målingssæt ved forskellige lokationer, men det er imidlertid ikke klart hvor mange Access Points der er nødvendige. I de hidtil udførte eksperimenter er der anvendt forskellige antal Access Points med forskellige konklusioner vedrørende det rette antal. Eksempelvis så udførte [42] forsøg med henholdsvis 3 og 8 Access Points og observerede en betydelig forøgelse af positioneringsnøjagtigheden i takt med det øgede antal Access Points. En lignende effekt blev observeret i [41], illustreret ved figur 2.7 der viser nøjagtigheden der blev opnået med henholdsvis 3 og 10 Access Points i forsøget. Omvendt, fandt [53] at effekten af at tilføre Access Points var marginal efter det tredje Access Point (Figur 2.8 illustrerer effekten på positioneringsnøjagtigheden af, at benytte fra 2 til 5 Access Points i dette forsøg). [53] anfører dog samtidig at for at opnå en acceptabel nøjagtighed er det bedre at tilføje flere Access Points, hvilket der også synes at være generel konsensus om i de eksperimenter udført hidtil [5, 7, 26, 41, 42, 53, 55] - ihvertfald melder ingen af projekterne om en forringet nøjagtighed ved at tilføre Access Points. Ligeså vigtigt som antallet af Access Points er formentlig placeringen af Access Points. I det ovennævnte eksempel med henholdsvis 3 og 8 Access Points [53] var der i forvejen placeret et Access Point i hvert lokale (3 lokaler) der dominerede signalstyrken for det pågældende rum ift. signalstyrken fra de andre Access Points der skulle bevæge sig gennem vægge og derved blev svækket. Intuitivt vil det ikke give nogen nævneværdig effekt at placere yderligere Access Points tæt på eksisterende, da signalstyrken kan forventes at være relativt ens. Derudover er der gjort følgende observationer angående placeringen af Access Points: [5] observerede at Access Points der befandt sig langt fra måleområdet havde så svag signalstyrke at det ikke

35 2.4 Udfordringer 23 Figur 2.7: God effekt ved flere Access Points [41] Figur 2.8: Marginal effekt ved flere Access Points [53] var muligt at registrere ændringer i signalstyrken selv når brugeren bevægede sig over længere afstande - signalstyrken fra disse Access Points langt væk forblev konstant. Disse Access Points bidrog derfor ikke konstruktivt til positionering af brugeren. Omvendt fandt [25] at Access Points placeret langt væk fra brugeren var at foretrække, da den målte varians i signalstyrken i disse tilfælde var væsentlig mindre end variansen målt tæt på et Access Point. Generelt må der tilsigtes en s- trategisk placering af Access Points der dækker området - både for at forhindre dead spots, men også for at sikre at et passende antal Access Points kan høres ved enhver lokation, og dermed bidrage til en ensartet positioneringsnøjagtighed i måleområdet. Ved en fornuftig placering af Access Points bliver det i højere grad muligt at triangulere brugerens position.

36 24 Baggrund Afstand mellem målepunkter Afstanden mellem målepunkter, også kaldet grid spacing [25], har en indflydelse på den nøjagtighed og præcision det er muligt at opnå. Begrebet præcision er adopteret fra [25] og angiver den procentvise klassificeringsrate, dvs. i hvor mange tilfælde det lykkes at producere et estimat med en given nøjagtighed. Som et eksempel: En nøjagtighed på 3 meter med en præcision på 70%, betyder, at det i 70% af tilfældende er muligt at lokalisere en bruger inden for 3 meters nøjagtighed. Der eksisterer et naturligt tradeoff forhold mellem nøjagtighed og præcision - et forsøg på at øge den ene har en tendens til at formindske den anden. Eksempelvis vil en grid spacing (og dermed nøjagtigheds-målestok) sat til 10 meter formentlig i de fleste tilfælde resultere i 100% præcision, hvorimod et forsøg på at opnå en nøjagtighed på 10 cm. sandsynligvis vil resultere i en præcision tæt på 0. Dette forhold skyldes naturligvis fluktuationen i signalstyrken: Ved 10 meters afstand mellem målepunkter er den målte signalstyrke højst sandsynlig markant anderledes for to lokationer, hvorfor det bliver lettere at skelne to lokationer med 10 meters afstand fra hinanden. Omvendt vil en måleafstand sat til 10 cm, pga. variansen, resultere i så betydeligt overlap af signalstyrken mellem to lokationer at positionsbestemmelse på det nærmeste bliver tilfældigt og præcisionen dermed meget lav. Figur 2.9 illustrerer målinger fra to lokationer der er klart adskilte og derved lette at skelne fra hinanden. Figur 2.9: Målinger fra to lokationer med klar separation i signalstyrke [25] Lokationer kan derfor kun bestemmes (med høj præcision) hvis variationen som

37 2.4 Udfordringer 25 følge af påvirkningen af disse faktorer er betydligt mindre end variationen i signalstyrke som følge af en ændret lokation. Der findes imidlertid ingen ideel måleafstand. På grund af de irregulære fluktuationer fra de forskellige faktorer kan denne afstand være forskellig i forskellige situationer (forskellige miljøer, antal personer, netværkskort, osv.). Derfor må det bero på en observation i den aktuelle situation for at fastlægge måleafstanden - en for stor afstand mellem målepunkter giver en ringere granularitet af lokationsinformation. Omvendt kan en for lille måleafstand være spild af tid pga. et betydeligt overlap i signalstyrken ved tilstødende målepunkter Antal målinger Der rejser sig et spørgsmål angående hvor mange målinger der skal foretages ved hvert målepunkt. Ideelt skal målingerne ved et målepunkt være repræsentative for hvilken signalstyrke en bruger kan forvente at måle ved den pågældende lokation. Dette indikerer at en længere måleperiode, og dermed flere målinger, kan være nødvendige for at at give et repræsentativt billede af signalstyrken i modsætning til f.eks én enkelt måling der kan risikere at være en outlier og dermed ikke forventes at optræde i de fleste tilfælde. Begrebet outlier vil blive brugt om værdier der ligger langt væk i forhold til de fleste andre værdier i et datasæt. Ved at foretage flere målinger kan man udligne effekten fra outliers og give et mere reelt billede af de faktiske omstændigheder. Desuden er et stort træningssæt, som nævnt, en fordel i træningen af klassificeringsalgoritmer som Bayesianske netværk og neurale netværk. Et stort antal målinger har imidlertid en negativ effekt på omkostningen til offline fasen, og ud fra et økonomisk synspunkt vil det således være fordelagtigt at dette kunne holdes til et minimum Tracking faktoren Tracking, som defineret ved positionsbestemmelse af en bruger i bevægelse, giver erfaringsvis ringere nøjagtig end statisk positionsbestemmelse [5, 7, 25, 53]. Kun et enkelt af de udførte forsøg har imidlertid forsøgt at gøre rede for dette fænomen: [5] spekulerede at en mulig forklaring kan være at effekten fra de forskellige faktorer forstærkes når brugeren bevæger sig - eksempelvis kan en bruger på et øjeblik gå fra at have Line-Of-Sight til et Access Point til at have flere vægge der obstruerer signalet. Dette er stadig en sandsynlig forklaring, men derudover har Doppler effekten [17,52] formentlig også en indflydelse på den ringere nøjagtighed. Doppler effekten forklarer den tilsyneladende ændring i i et signals frekvens som den opfattes af en person (eller måleudstyr) der bevæger sig relativt til kilden til signal-bølgerne. Doppler effekten forklarer således fænomenet hvor tonen fra en ambulances sirene

38 26 Baggrund vil lyde højere end dens normale (stationære) leje mens ambulancen nærmer sig en person, og lavere end dens stationære leje når den bevæger sig væk fra personen. Frekvensen som bølgerne udsendes med ændres ikke - det gør kun bølgelængden - men dette resulterer i en anden opfattet frekvens hos brugeren. Doppler effekten virker både ved bevægelse fra kilden til signalet, og ved bevægelse af en obervatør. Doppler effekten for en stationær kilde og en observatør i bevægelse, hvilket er tilfældet for tracking hvor Access Points er stationære mens brugeren bevæger sig, er givet i formel 2.4. f angiver den frekvens brugeren modtager signaler ved; f 0 den frekvens signalet faktisk udsendes ved; v er hastigheden hvormed signalet rejser, og brugerens hastighed er repræsenteret ved v 0 - v 0 er et positivt tal hvis brugeren bevæger sig væk fra kilden og negativt hvis brugeren bevæger sig mod kilden. Figur 2.10 og 2.11 illustrerer Doppler effekten ved henholdsvis en næsten statisk og en kilde i bevægelse. Disse er skærmbilleder fra RippleTank Applet v1.7c ( - en Java Applet der grafisk demonstrerer Doppler effekten.. f = f 0 (1 v 0 v ) (2.4) Figur 2.10: Skærmbillede fra RippleTank Applet v1.7c: Doppler effekt ved langsom bevægelse

39 Figur 2.11: Skærmbillede fra RippleTank Applet v1.7c: Doppler effekt ved hurtig bevægelse

40

41 Kapitel 3 Relateret arbejde Indholdsfortegnelse 3.1 Relateret arbejde RADAR: An In-Building RF-Based User Location and Tracking System [7] Location Determination of a Mobile Device Using IEEE b Access Point Signals [42] WLAN Location Determination via Clustering and Probability Distributions [55] Robotics-Based Location Sensing Using Wireless Ethernet [26] A Probabilistic Approach to WLAN User Location Estimation [41] A wireless LAN based indoor positioning technology [53] Wifi Positionering: Potentiale og Praksis [5] Sammenligning af resultater Relateret arbejde I denne sektion beskrives andres eksperimentelle undersøgelse af empirisk baseret Wifi positionering. For hvert eksperiment beskrives hvilken algoritme, design-parametre (antallet af Access Points, måleperiode, mv.) og udstyr der blev anvendt samt resultaterne der blev opnået.

42 30 Relateret arbejde RADAR: An In-Building RF-Based User Location and Tracking System [7] Dette forsøg, også kaldet Radar projektet - udført hos Microsoft Research - var det første til at studere empirisk baseret Wifi positionering, og er blevet standarden hvorpå efterfølgende eksperimenter har målt deres succes. Radar projektet var naturligt nok også det første forsøg der bemærkede hvordan effekten fra faktorerne, beskrevet i forrige afsnit, indvirker på den nøjagtighed det er muligt at opnå med et Wifi positioneringssystem. Til forsøget blev der anvendt 3 basestationer der fungerede som Access Points. Basestationerne blev udgjort af 3 PCer hver udstyret med et Lucent WaveLAN netværkskort, og klienten var en laptop udstyret med et Digital RoamAbout netværkskort. I både offline og online fasen blev foretaget 20 signalstyrke målinger i hver retning ved hver lokation. Projektet anvendte en k-nearest Neighbour algoritme og var i stand til at opnå en nøjagtighed på 2,94 meter med en præcision på 50%. Ved en præcision på 75% var nøjagtigheden nede på 4,69 meter. Tracking af en bruger i bevægelse resulterede i en nøjagtighed på 3,5 meter med en præcision på 50%. Der blev eksperimentet med k > 1 naboer. Intuitionen bag var, at der ofte findes adskillige naboer i signalrum der er cirka samme distance fra et interessepunkt, hvorfor der grundlæggende ikke er nogen ide i at vælge én lokation frem for de andre. Gennemsnittet af flere naboer kan således føre til et bedre estimat af en brugers position end der kan opnås med individuelle lokationer. Figur 3.1 illustrerer dette scenarie. Punkterne N 1..N 3 angiver målepunkter, mens G er punktet der fås ved at tage gennemsnittet af N 1..N 3. Det ses således at G er tættere på den faktiske lokation T end nogle af punkterne N 1..N 3. Eksperimenterne inkluderede k = 2,...k = 5, men resultaterne viste at der ikke var nogen mærkbar forskel i nøjagtigheden ved at betragte flere naboer. Ved k > 5 blev nøjagtigheden faktisk værre, da der nu blev inkluderet naboer der befandt sig langt fra den faktiske position. Figur 3.1: k-nearest Neighbour, k = 3 [7]

43 3.1 Relateret arbejde 31 Et muligt problem ved at anvende k > 1, der ikke blev beskrevet er, at det udregnede gennemsnit kan risikere at repræsentere en lokation hvor det ikke er fysisk muligt for en bruger at befinde sig, jvf. bygningsstrukturen - f.eks et positionsestimat midt i en væg eller i et aflåst lokale. Udover den empirisk-baserede k-nearest Neighbour metode blev der desuden eksperimenteret med 3 forskellige propageringsmodeller, Wall Attenuation Factor (WAF), Rician Distribution, og Rayleigh fading, men resultaterne af disse var ikke sammenlignelige med resultaterne fra den empiriske model. WAF modellen, der producerede de bedste estimater, resulterede i estimater med en nøjagtighed på 4,3 meter med en præcision på 50% Location Determination of a Mobile Device Using IEEE b Access Point Signals [42] I dette eksperiment blev der anvendt 3 Access Points og indsamlet data med en laptop udstyret med et Lucent Orinoco Wireless LAN netværkskort. Der blev indsamlet signalstyrke information 10 gange per sekund (Access Points var konfigureret til at udsende pakker hvert 100. millisekund). Dataindsamlingen blev foretaget i 4 retninger i en periode på 5 minutter i hver retning. Ialt blev der indsamlet data for 19 forskellige lokationer der, som det udtrykkes, var mere eller mindre jævnt spredt udover området. Dataindsamlingsprocessen blev gentaget på forskellige tidspunkter af dagen i en periode på et par uger. Eksperimentet undersøgte både k-nearest Neighbour og neurale netværk. Til begge klassificeringsalgoritmer blev den gennemsnitlige signalstyrke værdi brugt som input. Arealet blev inddelt i 19 clusters svarende til de 19 målepunkter. Der blev udført to typer eksperimenter: I den første type blev der testet ved nøjagtig samme position som et offline målepunkt, mens der ved den anden type tilfældigt blev udvalgt en lokation der normalt var inden for 3 meters radius af et offline målepunkt for at bestemme hvilket cluster denne måling blev klassificeret som. Resultater med 3 Access Points Ved tests på præcis samme lokation som offline målingerne opnåede k-nearest Neighbour algoritmen en præcision på omkring 90%, mens neurale netværk algoritmen var i stand til at give en præcision tæt på 97-99%. Ved tilfældigt valgte testpunkter opnåede NNS algoritmen en præcision i forhold til det nærmeste punkt (det korrekte cluster) på omkring 85%, mens neurale netværk

44 32 Relateret arbejde opnåede en korrekt cluster-klassificering i omkring 90% af tilfældende. Disse præcisionsangivelser blev opnået når minimumsdistancen (og dermed nøjagtigheden) mellem to målepunkter var 3.12 meter. Resultater med 8 Access Points Der blev endvidere udført eksperimenter med 8 Access Points. Denne gang blev granulariteten mellem målepunkter formindsket til 2-3 meter, og antallet af målepunkter øget til 24 for at dække området. Det blev observeret at effekten af det øgede antal Access Points på nøjagtigheden er mærkbar. k-nearest Neighbour algoritmen og neurale netværk nærmede sig hinanden performancemæssigt, med neurale netværk en anelse foran. Neurale netværk var således i stand til at opnå en nøjagtighed på mindre end en meter med en præcision på 72%, mindre end 2,6 meters nøjagtighed med en præcision over 95%, og endelig, en nøjagtighed på 3,3 meter med næsten 98% sandsynlighed. Fejldistancen er udregnet ved gennemsnittet over samtlige tests. Et forbehold for resultaterne er imidlertid, at nogle resultater blev klassficeret som Unable to Classify og dermed ignoreret. Dette var estimater der ikke kunne bestemmes til en specifik lokation. Effekten af denne filtrering på den angivne nøjagtighed og præcision er imidlertid ikke angivet. En konklusion fra eksperimentet er, at nøjagtigheden og præcisionen ikke ændrer sig mærkbart ved at enten øge eller formindske længden af måleperioden. Det indikerer derfor at man kan nøjes med at foretage offline målinger i kort tid ved hver lokation, og stadig opnå tilfredsstillende performance WLAN Location Determination via Clustering and Probability Distributions [55] Eksperimentet benytter bayesianske netværk og foreslår en teknik de kalder jointclustering til at reducere beregningskompleksiteten ved gennemsøgning af søgefeltet (mængden af offline målinger). Eksperimentet er udført med en laptop udstyret med et Lucent Orinoco Silver NIC netværkskort. Ved hver lokation blev der indsamlet signalstyrke information i 5 minutter med et opdateringsinterval på et sekund (300 samples). Afstanden mellem datapunkter var 5 fod (ca. 1,5 meter) og der blev ialt indsamlet information for 110 lokationer. Joint-clustering teknikken fungerer ved at inddele området i et antal clusters. Et cluster defineres som et område hvor lokationerne indenfor clusteret deler en fælles

45 3.1 Relateret arbejde 33 mængde Access Points, dvs., to lokationer placeres i et cluster hvis, og kun hvis, mængden af Access Points der kan høres ved de to lokationer er identiske. Eftersom antallet af Access Points der kan høres ved en lokation kan variere over tid, foreslår forfatterne at udvælge en delmængde q af de k Access der kan høres indenfor et cluster. Delmængden q vælges til at være delmængden af Access Points med den stærkeste signalstyrke, da disse har størst sandsynlighed for at ville kunne høres på et givet tidspunkt. På online tidspunktet vælges de q stærkeste Access Points fra online målingen til at bestemme et cluster hvori den mest sandsynlige lokation findes. Mere specifikt, da antallet af Acces Points i en online måling kan risikere at være mindre end q (f.eks. online = (AP1, AP2) og q = 3), så søges der efter et estimat i alle clustre der har AP1, AP2 som delmængde. Resultater Der kunne gennemsnitligt opfanges signalstyrke fra 4 Access Points det meste af tiden. Der blev derfor valgt k = 4, og eksperimenter viste at q = 3 gav det bedste resultat. Joint clustering teknikken med k = 4 og q = 3, gav en nøjagtighed indenfor 7 fod (ca. 2,10 meter) med en præcision på 90%. Joint clustering teknikken giver en forbedret performance mht. beregningskompleksitet, da kun en delmængde af træningssættet skal gennemsøges. Ulempen ved metoden er imidlertid at i miljøer hvor et mindre antal Access Points kan høres kan q blive så lav at nøjagtighed og præcisionen skades Robotics-Based Location Sensing Using Wireless Ethernet [26] Eksperimentet blev udført med en laptop udstyret med et LinkSys netværkskort, og der var placeret 9 Access Points på samme etage som forsøget blev udført på. Derudover indgik Access Points fra andre etager der kunne høres i forsøget. Der blev ikke anvendt nogen specifik indsamlingsperiode af signalstyrke. Istedet anvendte forsøget en konvergens-funktion således at indsamlingen blev stoppet når signalstyrke fluktuationen havde en stabil distribution. Det bemærkes at indsamlingstiden typisk varierede mellem 10 sekunder og ét minut per retning. Afstanden mellem målepunkter var 5 fod (ca. 1,5 meter). Forsøget anvendte Bayesianske netværk som positioneringsalgoritme med en ensartet sandsynlighedsdistribution. Det antages at brugeren er blevet væk og alle positioner tildeles derfor den samme a priori sandsynlighed. Det bemærkes at forsøg

46 34 Relateret arbejde på at påvirke estimaterne kan skade lokaliseringsevnen fra starten af. Forsøget antager at miljøet forbliver konsistent mellem offline og online fasen, og i særdeleshed at antallet af tilstedeværende personer holdes til et minimum. Miljøet var karakteriseret ved at være både semi-åbent (åbent på den ene side) og lukket (gange). De bedste resultater blev opnået i lukkede miljøer langs gangene med en nøjagtighed på 1,5 meter og en præcision på 83%, mens præcisionen i semi-åbne områder faldt med 10%. Der blev imidlertid også opnået forskellig nøjagtighed på forskellige gange, og placeringen af Access Points gives som forklaring på denne forskel A Probabilistic Approach to WLAN User Location Estimation [41] I dette forsøg undersøges to varianter af Bayesianske netværk til positionering: Histogram og kernel metoderne, og til sammenligningsformål anvendes desuden en k-nearest Neighbour algoritme. Forsøget udføres, som det formuleres, i et realistisk miljø med et varierende antal personer. Tilgangen til Bayesianske netværk metoden er, ligesom i [26] at tildele en ensartet sandsynlighedsdistribution til lokationer i miljøet. I forsøget indgik 10 Access Points hvoraf fire af dem var udstyret med direktionelle antenner. Målinger i offline fasen blev foretaget med 2-meters mellemrum ud over hele området, og ved hvert målepunkt blev der indsamlet 20 signalstyrkemålinger over to dage, dvs. ialt 40 målinger per lokation. I online fasen blev der eksperimentet med at benytte henholdsvis 1 og 20 observerede signalstyrke målinger. Figur 3.2 opsummerer resultaterne fra forsøget. Det ses at de bedste resultater opnås med Bayesianske netværk, men dog med forskellige varianter - der er således ikke nogen entydig bedste metode. Det kan desuden ses at forskellen i nøjagtighed er marginal når der anvendes 20 signalstyrke målinger i online fasen. Det bemærkes desuden at det kan være svært at foretage en fair sammenligning pga. faktorer der er uden for forsøgets kontrol, bla. et varierende antal mennesker i bygningen. Som resultaterne indikerer er det muligt at opnå gode resultater med Bayesianske netværk trods et moderat træningssæt A wireless LAN based indoor positioning technology [53] Eksperimentet, udført hos IBM China Research Laboratory, undersøgte Bayesianske netværk som positioneringsalgoritme og udnyttede topologi information til at forbedre estimat-nøjagtigheden. I modsætning til [26, 41] blev der tildelt a priori sandsynligheder til lokationer baseret på om de var tæt placerede og ikke adskilt af vægge. Der indgik 5 Access Points i forsøget og målinger blev foretaget med en laptop

47 3.1 Relateret arbejde 35 Figur 3.2: Resultater fra [41] udstyret med et Cisco Aironet 340 Series netværkskort. Der blev foretaget 300 målinger per retning ved hver lokation med 2 sekunders interval. Målingerne blev gentaget over en to-ugers periode på forskellige tidspunkter af dagen. Forsøget undersøgte både statisk positionering samt tracking og resultaterne der blev opnået var henholdsvis en nøjagtighed på 2 meter og en præcision på 90% for statisk positionering og en nøjagtighed på 5 meter, ligeledes med en præcision på 90%, for tracking. I forsøget blev det observeret hvordan antallet af målinger havde en markant inflydelse på den nøjagtighed det var muligt at opnå Wifi Positionering: Potentiale og Praksis [5] I forbindelse med tidligere arbejde forfatteren har deltaget i blev der udviklet en prototype på et Wifi positioneringsframework til en laptop. Projektet identificerede en række anvendelser for et positioneringssystem til Aalborg Universitet og med udgangspunkt i krav til et eventuelt system blev der anlagt en situationsbestemt strategi for reduktion af offline fasen hvor der blev indsamlet netop kun den nødvendige signalstyrke information. På baggrund af en række identificerede anven-

48 36 Relateret arbejde delser, bla. navigering, kombineret med bygningens topologi blev det fastlagt at der var brug for per rum samt line of sight nøjagtighed. Ved per rum og line of sight nøjagtighed forstås at en bruger lokaliseres enten til et enkelt rum eller i ende-punkter af en gang hvorfra der er Line-of-sight til den modsatte ende. Rationalet bag denne strategi var at rummene var af begrænset størrelse (ca. 2 * 3 meter) hvorfor det var tilstrækkeligt med et enkelt målepunkt per rum. I eksperimentet blev benyttet et Atheros netværkskort hvor der blev målt signalstyrke værdier i området mellem -30 og -95 dbm. I offline fasen blev der indsamlet 50 målinger i hver retning ved hver position. Målingerne blev foretaget hvert halve sekund således at der blev indsamlet signalstyrke i ialt (4 * 25) 100 sekunder ved hver position. I online fasen blev der foretaget 2 målinger per positionsopdatering med et halvt sekunds mellemrum sådan at der blev foretaget en positionsopdatering hvert sekund. Algoritmen der blev benyttet var en modificeret version af k-nearest Neighbour algoritmen. Modifikationen bestod i at filtrere Access Points fra, baseret på hvor meget signalet fra det pågældende Access Point fluktuerede. Det blev observeret hvordan signalstyrken fra visse Access Points var så svag at den ikke ændrede sig, heller ikke når brugeren bevægede sig, hvorfor disse Access Points ikke bidrog til nøjagtig positionering, men istedet kunne risikere at have en negativ effekt. Statisk positionering af en bruger til et givet rum gav gode resultater: Der blev opnået et korrekt rum-estimat i 97,8% af tilfældende, dvs. brugeren blev estimeret til at befinde sig i det korrekte rum. I 99,99% af tilfældende var nøjagtigheden indenfor 3 meter, dvs. hvis estimatet var forkert viste det et tilstødende lokale hvor distancen, jvf. rummenes størrelse, var <3 meter. Som et eksperiment blev det forsøgt at forlænge opdateringsintervallet i online fasen til 20 sekunder for at udligne effekten af eventuelle udsving i signalstyrken. Dette gav imidlertid ikke nogen yderligere gevinst for nøjagtigheden, men intervallet sat til 1 sekund gav ligeså gode resultater. Dette understøtter observationen fra [42] at en kort måleperiode kan være tilstrækkelig. Tracking, altså positionering af en bruger i bevægelse, gav som forventet en lavere nøjagtighed. Generelt var nøjagtigheden imidlertid acceptabel - hvis en brugers position blev fejlestimeret viste estimatet i de fleste tilfælde et tilstødende lokale til brugerens faktisk position. Der optrådte dog også enkelte outliers hvor en bruger blev estimeret så langt som 12 meter væk fra den faktiske position. Det blev bemærket at viden om bygningens topologi og basale fysiske love (at en bruger maksimalt kan bevæge sig X antal meter på Y sekunder) ville kunne forhindre sådanne anomalier. Et umiddelbart opsigtsvækkende resultat var at nøjagtigheden blev opnået med ét Access Point - signalstyrken fra de resterende Access Points var så svag at de var

49 3.2 Sammenligning af resultater 37 filtreret fra. Et forbehold for dette resultat er imidlertid at forsøget blev udført i en afgræset del af bygningen hvor rummene var placeret i forlængelse af hinanden ift. placering af Access Pointet - væggene der adskilte rummene bidrog således til en sækning af signalstyrken for hvert rum signalet rejste igennem. Der er dog grund til at tro, at med en tilføjelse af yderligere, strategisk placerede Access Points, vil denne per rum nøjagtighed kunne bibeholdes i den resterende del af bygningen. 3.2 Sammenligning af resultater Figur 3.3 opsummerer resultaterne fra forsøgene og giver et overblik over de anvendte design parametre og positioneringsalgoritmer der blev benyttet. Første kolonne angiver eksperimentet (Exp); anden kolonne (Alg.), den positioneringsalgoritme der blev benyttet i eksperimentet, hvor knn indikerer en k-nearest Neighbour algoritme, mens bn og nn er forkortelser for henholdsvis Bayesianske netværk og neurale netværk. De følgende kolonner angiver design-parametrene, henholdsvis antal Access Points benyttet (AP); antal målinger ved hver lokation (Målinger); dernæst antal retninger der blev målt i (Retn.); afstanden mellem målepunkter (Grid); og til sidst de opnåelse resultater for henholdsvis statisk positionering (Stat. res) og tracking (Tracking). Resultaterne er angivet som nøjagtighed (m.)/præcision(%). Hvor en given design-parameter ikke er oplyst, eller hvis systemet ikke inkluderede en undersøgelse af tracking, anvendes tegnet - til at indikere fraværet. Figur 3.3: Sammenligning af resultater og design-parametre Ligesom [41] bemærker at det kan være problematisk at foretage en direkte sammenligning af algoritmer i samme miljø pga. et varierende antal personer i bygnin-

50 38 Relateret arbejde gen på tidspunktet hvor tests blev udført, er det (endnu mere) problematisk at foretage en sammenligning af eksperimenter foretaget i forskellige miljøer og med forskellige design-parametre. Som nævnt bemærkede [26] at nøjagtigheden i forsøget var påvirket af om testen foregik i semi-åbent eller lukket rum, hvor test i lukkede gange gav det bedste resultat, ligesom placeringen af Access Points gjorde en forskel i tilsyneladende sammenlignelige miljøer - forskellige resultater på forskellige lukkede gange. Antallet af tilstedeværende personer i forsøgene har også været forskelligt. [26] antog et minimum af personer, og [53] blev udført i et laboratorie hos IBM hvorfor det må formodes at folks færden ligeledes har været kontrolleret i dette forsøg. Omvendt blev [5, 7, 41] udført i almindelige miljøer hvor folks færden var uden for forsøgets kontrol. Endvidere kan det være svært at sammenligne nøjagtigheden for de forskellige eksperimenter. Dette ville minimum kræve en direkte sammenligning af præcisionen hvormed den givne positionsnøjagtighed er opnået. Det er ikke muligt blot at foretage en normalisering af resultaterne, da forholdet mellem nøjagtighed og præcision ikke nødvendigvis er proportionelt. F.eks kan det ses i Figur 3.2 hvordan k-nearest Neighbour algoritmen i [41] havde en dårligere nøjagtighed ved en præcision på både 50% og 67% end kernel metoden, men ved 90% præcision opnåede k-nearest Neighbour end højere nøjagtighed end kernel metoden. Det vil være kunstigt at forsøge at drage konklusioner vedrørende en bestemt algoritmes effektivitet ud fra den opnåede nøjagtighed, da nøjagtigheden i høj grad er påvirket af omstændighederne, dvs. miljøet og design-paramtrene. Forholdet er kommutativt - det er ligeledes vanskeligt at drage konklusioner vedrørende en enkelt design-paramters indflydelse, da de resterende design-paramtre er forskellige fra forsøg til forsøg. Manglen på en standardiseret test-procedure gør det således vanskeligt at vurdere den relative effekt af en bestemt algoritme kontra design-paramtrene. Selv hvis man besluttede sig for en standardiseret test-procedure - samme antal Access Points, måleafstand, antal målinger, netværkskort og retninger - vil miljøet spille ind, da signaludbredelsen ikke vil være identisk i to forskellige bygninger. Skal man imidlertid udlede en konklusion syntes der ikke at være den store forskel i nøjagtighed - groft sagt opnås ca. en nøjagtighed på omkring 2-3 meter med 90% i de fleste forsøg. 2-3 meters radius kan meget vel repræsentere smertegrænsen for nøjagtighed - hvor det i de fleste tilfælde er muligt at adskille signalstyrken fra to lokationer - men hvor der forekommer lejlighedsvise fluktuationer der medfører outliers. Hvis vi antaget at 2-3 meter er smertegrænsen er der i højere grad behov for at forbedre præcisionen, således at vi ignorerer disse outliers - især dem der repræsenterer lokationer hvor det ikke er fysisk muligt for en bruger at befinde sig. Der er ligeledes behov

51 3.2 Sammenligning af resultater 39 for at forbedre tracking evnen da denne endnu ikke er i nærheden af nøjagtigheden ved statisk positionering. For at kunne anvende disse positioneringssystemer i deres rette element er der desuden behov for at teste deres performance på den type apparat hvor de skal anvendes i virkeligheden, ligesom der er behov for at forbedre offline fasen.

52

53 Del II Udvikling af system

54

55 Kapitel 4 Udvikling af system Indholdsfortegnelse 4.1 Indledning Mobil applikation Klassediagram Funktionalitet Opsætnings-funktionalitet Kort funktionalitet Offline Analyse af offline resultat Analyse af tidspunkt for måling Online test Web Service Håndtering af kort-visning Strategi for deployering Indledning Dette kapitel præsenterer en applikation, udviklet i forbindelse med projektet, til et mobilt apparat (en PDA), der kan anvendes til at foretage indsamling og analyse af signalstyrke information samt aftestning af positioneringsnøjagtigheden. Applikationen inkorporerer en graf-modellering af det fysiske miljø som et middel til at forbedre beregningskompleksiteten - hvordan dette udføres er emnet for kapitel 5.

56 44 Udvikling af system I dette kapitel diskuteres endvidere hvordan applikationen er designet til at facilitere en omkostningseffektiv offline fase og der præsenteres en strategi herfor med udgangspunkt i den udviklede applikation. Det skal bemærkes at applikationen er et værktøj til systemarkitekten der skal deployere et empirisk baseret Wifi positioneringssystem, og skal ikke forveksles med en applikation som den vil anvendes af en slutbruger af et positioneringssystem. En slutbruger applikation vil således ikke indeholde funktionalitet til indsamling og analyse af signalstyrke information, men vil istedet (skjult for brugeren) indeholde positioneringsalgoritmen til at estimere en brugers position. Et sådant system kan være f.eks. et dedikeret navigeringssystem, eller lokationsevnen kan inkorporeres som et led i en applikation der indeholder yderligere funktionalitet derudover. I kapitel (BIB) præsenteres et eksempel-anvendelsesområde, positionering på et offentligt bibliotek hvor der gives et eksempel hvordan en eventuel slutbruger applikation kan se ud. 4.2 Mobil applikation De hidtil udførte eksperimenter har alle benyttet laptops til indsamling af signalstyrke og aftestning af systemet. I forbindelse med tidligere arbejde som forfatteren deltog i [5] blev der ligeledes udviklet en prototype på et positioneringsframework til en laptop. I forbindelse med dette projekt er der imidlertid foretaget en komplet re-implementering med henblik på at udvikle et positioneringssystem der kan afvikles på en PDA. Baggrunden for dette er, at langt de fleste implementationer af positioneringssystemer vil finde deres anvendelse på mobile apparater. Laptops vil ikke være praktiske til mange anvendelsesområder, f.eks. navigering. Der er således foretaget en re-implementering med henblik på at at tilpasse et system til de specielle udfordringer et mobilt apparat præsenterer, ikke mindst med hensyn til performance og skærmstørrelse. De fysiske karakteristika for Pocket PC platformen stiller andre krav til systemets interface. Skærmstørrelsen er væsentlig reduceret - 3,5 tommer i forhold til normalt ca. 15 tommer for en laptop version. Dette betyder at der må anvendes en anden strategi til visning af kort. Derudover stiller Pocket PC platformen krav til et minimalistisk interaktion med brugeren, da input til de fleste Pocket PC apparater foregår vha. af en pen, der kraftigt reducerer hurtigheden hvormed input kan indtastes. Herudover, og mest væsentligt, når positionsudregning skal foretages på klient-siden: En Pocket PC version stiller specielle krav til performance, da såvel hukommelse, plads og processor-hastighed er en brøkdel af de tilsvarende ressourcer på en laptop. Applikationen i dette projekt er implementeret i C# 2.0 og drager fordel af de nye

57 4.2 Mobil applikation 45 egenskaber der er tilført sproget, bla. generics der tillader typecheck af elementer i en container på compile tidspunktet. Dette giver en forbedret performance da der spares overhead ved at foretage type-tjek og casts på run-time tidspunktet. Server vs. apparatudregning Positionsudregning foretages i dette projekt på klient-apparatet. Motivation for dette valg er, kombineret med valget af platform (Pocket PC) at afteste det virkelighedstro aspekt og undersøge muligheden for tilfælde hvor det vil være mest hensigtsmæssigt at udføre positionsudregning på klient siden Ved at overdrage positionsudregning til klienten blive det muligt i højere grad at sikre sikkerheden og privatlivets fred for brugere ligesom load på server og netværk fjernes. Der kan være tungtvejende grunde (bla. kommercielle) til at udføre positionsudregning på server-siden. Viden om brugeres positioner og bevægelsesmønstre kan bla. udnyttes til at tilbyde målrettede reklamer til brugernes apparater; placere målrettede reklamer for bestemte fokusgrupper på strategisk udvalgte steder i det fysiske miljø; varer på hylder kan placeres mest hensigtsmæssigt, osv. Der er gjort flere undersøgelser af brugernes holdning til centraliseret lokalisering af deres position, og [4,54] peger på at brugerne sandsynligvis er villige til at afsløre deres position i kommercielt øjemed såfremt de har en tilstrækkelig stor fordel ud af at gøre dette, og at de oplyses om hvordan data håndteres. Der kan imidlertid også være situationer hvor viden om brugernes lokation er af mindre vigtighed for organisationen, men hvor positioneringssystemet istedet udnyttes til at give en større grad af incitament for brugerne for at benytte den pågældende service og derved som et middel til at tiltrække flere brugere. Dette kunne f.eks være tilfældet i den case som jeg vil beskrive senere i rapporten. Fordelen ved at udvikle positioneringssystemet til at blive afviklet på klient-siden er, at eftersom klient-apparatet, performance-mæssigt, udgør den laveste fællesnævner, bliver det muligt at bygge systemer der kan facilitere begge typer positionsudregning. Det er trivielt at portere en løsning udviklet på klient-siden til serversiden - eksempelvis ved at implementere den som en web service. Men da forholdet ikke er kommutativt vil en server-løsning ikke på samme måde sømløst kunne overføres til klient-siden. Ved meget store bygninger eller ved positioneringsssytemer der udspænder flere bygninger kan det imidlertid være nødvendigt at inddrage server-siden, i det mindste delvist. Det vil stadig være muligt at afvikle hovedparten af programlogikken på klienten. Ved et stort antal fysiske lokationer kan klienten således hente den rel-

58 46 Udvikling af system evante information, dvs. målepunkter i et afgrænset område baseret på brugerens nuværende position over på klientapparatet. Denne information kan forespørges fra serveren med prædefinerede intervaller ud fra et kriterie om hvor langt en bruger kan nå at bevæge sig mellem to server-forespørgelser. Den hyppige positionsopdatering foretages således på klienten (ud fra den relevante delmængde af data) hvilket reducerer load på serveren og netværket i forhold til en løsning hvor positionsopdatering for alle klienter foregår på server-siden. Der findes adskillige datastrukturer der er velegnede til en logisk gruppering af geometriske data, (bla. Weight-Balanced B-Tree, R* Tree, PR-Tree og Buffer Tree [6]) og således understøtter en sådan løsning. 4.3 Klassediagram Systemet modelleres vha. en vægtet graf som datastruktur (se Figur 4.1). Grafen består af knuder der repræsenterer lokationer i det fysiske miljø hvor der er foretaget målinger (dvs. målepunkter). Knuder er forbundne via kanter der repræsenterer en fysisk forbindelse mellem to målepunkter. En knude kan have tilknyttet flere målinger, repræsenteret ved klassen Measurement, for at muliggøre målinger på forskellige tidspunkter af døgnet, eller specielle dage, f.eks en travl lørdag eller en stille formiddag i et indkøbscenter, hvor der således kan være et ekstraordinært højt eller lavt antal personer i bygningen. Measurement klassen kan være af to forskellige typer: FingerPrint eller ResultHolder. Objekter af typen FingerPrint (begrebet er adopteret fra [25] og angiver signalstyrke målinger for en specifik lokation) indeholder statistisk data for en måling foretaget på et givet punkt. Mere specifikt, så bruges klassen til at holde den gennemsnitlige signalstyrke værdi der er målt for de Access Points der indgår i målesættet. Den gennemsnitlige værdi er normalt ikke langt fra en variabels centrum hvis værdierne er relativt centreret omkring midten. Gennemsnittet kan dog påvirkes af outliers hvorfor andre statistiske metrikker kan anvendes, f.eks medianen (værdien i midten når alle værdier er ordnet i sorteret rækkefølge) eller mode (den hyppigst forekommende værdi). Mens FingerPrint klassen indeholder statistisk information om signalstyrke målinger for et punkt indeholder ResultHolder klassen derimod samtlige målinger der er foretaget på lokationen. F.eks vil en måling hvor der indgår signalstyrke information fra 4 Access Points indsamlet i 5 minutter (300 sekunder) med en opdatering hvert halve sekund resultere i et objekt af ResultHolder klassen med følgende information: (AP1, måling#1, måling#2,..., måling#600) (AP2, måling#1, måling#2,..., måling#600) (AP3, måling#1, måling#2,..., måling#600) (AP4, måling#1, måling#2,..., måling#600)

59 4.4 Funktionalitet 47 Figur 4.1: Klassediagram Dette giver ialt 2400 måleresultater. Eftersom denne typer objekter hurtigt ville kunne volde hukommelsesproblemer på et klient-apparat anvendes istedet objekter af typen FingerPrint til at holde oplysninger om signalstyrke indsamling fra offline fasen. Et objekt af typen FingerPrint der repræsenterer ovenstående målesæt vil have følgende data: (AP1, gennemsnitlig_ss) (AP2, gennemsnitlig_ss) (AP3, gennemsnitlig_ss) (AP4, gennemsnitlig_ss) Dvs. ialt kun 4 værdier. FingerPrint klassen er således en letvægts-version af en ResultHolder klasse med henblik på anvendelse på et mobilt apparat. ResultHolder klassen anvendes primært til analyse af en offline måling når den er foretaget - ResultHolder klassen er således et singleton objekt, hvor der kun eksisterer ét eksemplar på et givet tidspunkt. 4.4 Funktionalitet Denne sektion beskriver design-valg vedrørende funktionaliteten som systemet stiller til rådighed. Systemet er designet med henblik på at kunne fungere som et generisk framework.

60 48 Udvikling af system Opsætnings-funktionalitet Før offline fasen kan begyndes skal der foretages valg af hvilket netværkskort der skal anvendes til indsamling af signalstyrke ligesom det skal bestemmes hvilke Access Points der skal indgå i systemet. Netværkskort Da et apparat kan have flere netværkskort, også kaldet adapters, f.eks et indbygget Wifi kort samt et indstiks-wifi kort, er det nødvendigt at tillade en bruger at vælge hvilket netvækskort der skal anvendes til indsamling af signalstyrke. Ved at give brugeren mulighed for selv at angive et netvækskort tillader man derfor at der kan foretages signalstyrke indsamlinger med forskellige netværkskort, og derved kan der opbygges en database med målinger svarende til et givet netværkskort. Herved bliver det muligt at lave systemer der kan anvendes af forskellige apparater. Man kan således have de respektive databaser placeret på en server. Ved opstart på k- lienten sendes oplysninger om klientens netværkskort til serveren, og serveren kan herefter returnere relevante dele af databasen med signalstyrke information for det givne netværkskort hvis det er understøttet. Access Points Udbredelsen af trådløst Internet via Wifi gør at der ofte vil kunne registreres Access Points der ikke er tilknyttet organisationen hvorpå systemet skal indføres. Dette kan f.eks. være Access Points fra nærliggende firmaer, organisationer eller privatpersoner. For at sikre et stabilt system er det vigtigt at man kun beror på målinger fra organisationens egne Access Points. Selv om et antal yderligere Access Points fra eksterne kilder potentielt ville kunne bidrage til en forbedret positionsnøjagtighed er det vigtigt at frasortere disse, da de er uden for organisationens kontrol. Hvis disse eksterne Access Points indgik i positionsudregningen ville deres pludselige fravær (hvis de f.eks. blev udskiftet) kunne medføre problemer for systemet der nødvendiggjorde en ny offline fase. Systemet skal således tillade brugeren at vælge hvilke Access Points der skal indgå i offline og online faserne. Brugergrænsefladen opsætning Overvejelserne vedrørende netværkskort og Access Points er afspejlet i brugergrænsefladen opsætning (se Figur 4.2). Opsætningsskærmen indeholder en drop-down boks der viser hvilke adapters der

61 4.4 Funktionalitet 49 Figur 4.2: Opsætning-funktionalitet er tilgængelige på apparatet, og hvor brugeren kan foretage et valg vedrørende hvilken adapter der skal anvendes til indsamling af signalstyrke. Opsætningsskærmen giver desuden mulighed for at scanne for tilgængelige Access Points, og vælge hvilke Access Points der skal indgå i systemet. Mens der foretages en scanning vises signalstyrken fra de tilgængelige Access Points. I listen af Access Points kan brugeren markere hvilke Access Points der skal indgå i systemet Kort funktionalitet Figur 4.3 viser skærmbilledet for en funktionalitet der giver brugeren et visuelt overblik over måleområdet. Før en bruger foretager en offline måling markeres en position på kortet. X og Y koordinaterne for det valgte punkt gemmes, og hvis lokationen repræsenterer et nyt målepunkt oprettes en ny knude i grafen. Alternativt kan en bruger vælge at markere et eksisterende punkt hvorved det blive muligt at knytte flere målinger til det pågældende punkt. Udover at give en visuel repræsentation af området får brugeren ligeledes overblik over hvilke lokationer der er foretaget målinger ved og kan således se systemets aktuelle dækning.

62 50 Udvikling af system Figur 4.3: Kort-funktionalitet Offline Offlinemålinger udgør effektivt øjebliksbilleder af signaludbredelsen i det fysiske miljø, og for at offlinemålingerne kan bruges til at udlede nøjagtige positionsestimater i online fasen er det vigtigt at offlinemålinger givet et repræsentativt billede af signalstyrken. Som vi har set er der uenighed om længden af en måleperiode for at producere gode resultater - eksempelvis peger [53] på at et relativt højt antal målinger per lokation er nødvendige, mens [5] viser at gode resultater kan opnås med en måleperiode på helt ned til ét sekund. Da der således ikke eksisterer konsensus om en ideel indsamlingsperiode gives brugeren mulighed for selv at angive en måleperiode på hvert punkt. Dette, kombineret med analyse af måleresultaterne kan være med til at reducere omfanget af offline fasen, ved at der kun indsamles netop den nødvendige information. Da signalstyrke ligeledes kan variere på forskellige tidspunkter af døgnet, gives der være mulighed for at knytte adskillige målinger til et punkt, sådan at signalstyrke information kan repræsenteres for bestemte tidspunkter eller dage. Brugergrænsefladen til indsamling af signalstyrke information for et enkelt punkt er vist i Figur 4.4.

63 4.4 Funktionalitet 51 Figur 4.4: Offline-funktionalitet Øverst er vist X og Y koordinaterne for det pågældende punkt. Såfremt punktet repræsenterer en knude hvor der før er foretaget målinger, vises desuden knudens navn. Brugeren kan starte indsamling af signalstyrke for punktet ved at trykke på Start måling. Når en måling foretages gemmes et timestamp for tidspunktet målingen blev udført, og mens målingen foregår vises signalstyrken for de Access Points der indgår (valgt i Opsætnings-funktionaliteten). Brugeren kan foretage en måling blot for at få et billede af signalets styrke og fluktuation, eller brugeren kan vælge at gemme målesættet. Herved skabes der en ny knude i grafen med en målesæt tilknyttet, eller der tilføjes et målesæt til en eksisterende knude Analyse af offline resultat Ved at analysere en offline måling kan det afgøres hvor mange målinger der er nødvendige for at producere et godt resultat. Den passende længde for en offline indsamling er det punkt hvor yderligere målinger ikke bidrager til en ændring i resultatet. Brugeren kan anvende dette til på et tidligt i deployeringsprocessen at fastslå den passende længde af offline målinger. Figur 4.5 viser skærmen for analyse af en offline-måling. Ved at ændre inputtet kan brugeren få vist resultatet af offline målingen ift. det givne interval. F.eks, hvis offline målingen har varet 1000 sekun-

64 52 Udvikling af system der kan brugeren vælge at se målingerne for hvert 100 sekund - herefter vises målingsresultaterne efter 100, 200,..., 1000 sekunder, hvilket brugeren kan bruge til at afgøre om offline-fasen kan forkortes. Figur 4.5: Analyse 1-funktionalitet Analyse af tidspunkt for måling For at brugeren kan vurdere eventuelle ændringer ved målinger foretaget på forskellige tidspunkter kan brugeren se den gennemsnitlige signalstyrke fra forskellige Access Points på forskellige måletidspunkter. Figur 4.6 viser dette. Ved at trykke på Vis får brugeren vist alle målesæt der er tilknyttet den angivne lokation Online test For at gøre brugeren i stand til at vurdere effektiviten af positioneringssystemet tidligt kombineres offline og online fasen i samme applikation. Dette gøres ved at benytte k-nearest Neighbour algoritmen til at afteste positioneringsnøjagtigheden for allerede indsamlede målinger og derved vurdere effektiviteten af dataindsamlingen on-the-fly istedet for at vente på at hele træningssættet bygges før der kan aftestes. K-Nearest Neighbour algoritmen er et passende valg da den ikke kræver

65 4.4 Funktionalitet 53 Figur 4.6: Analyse2-funktionalitet et stort træningssæt til at lære fra, men istedet benytter sig af en distance-funktion. Denne tilgang kan spare omfattende ressourcer - det er selvsagt betydeligt billigere på et tidligt tidspunkt at kunne afgøre om der er brug for at justere designparametre, f.eks ændre måleafstanden, i forhold til at vente på at en tilstrækkelig mængde data er indsamlet for at kunne vurdere performance via en læringsalgoritme som f.eks Bayesianske netværk. Figur 4.7 viser skærmen for online funktionaliteten. Brugeren vælger først en lokation på kort-skærmen der angiver brugerens nuværende position. Ved at trykke på start knappen igangsættes positionsudregningen via en (graf-baseret) k-nearest Neighbour algoritme, og resultaterne vises i listen nedenunder Web Service I det foregående har jeg vist funktionaliteten systemet stiller til rådighed for at brugeren kan indsamle signalstyrke målinger, foretage basal analyse af måleresultaterne samt foretage løbende tests af nøjagtigheden. Denne funktionalitet kan udbygges og forfines ved at sende måleresultaterne for hvert målepunkt (singleton ResultHolder objektet efter en måling) til en web service der kører på en laptop/desktop/server. PC platformen giver qua den større skærmstørrelse og øgede

66 54 Udvikling af system Figur 4.7: Online test-funktionalitet ressourcer mulighed for at holde de akkumulerede indsamlede data og foretage mere avancerede analyser af test resultaterne. Denne tilgang giver desuden mulighed for at benytte de indkomne resultater (offline såvel som online test målinger) til at træne en læringsalgoritme Håndtering af kort-visning Kort-funktionaliteten i den viste applikation tillader at personen der indsamler signalstyrke kan scrolle på bygningskortet. I en slutbruger applikation er det ikke optimalt hvis brugeren selv skal scrolle på en skærm for at holde styr på sin nuværende position. En strategi for visning af kort på en slutbruger applikation kan være at gemme en bygningstegning på klientapparatet og på skærmens display at vise et udsnit af bygningstegninigen i en radius omkring brugerens position..net Compact Framework tillader at et kan billede overskride displayets dimensioner, hvilket Figur 4.8 illustrerer. Herefter kan der placeres usynlige scrollbars på en PictureBoxkomponent der holder kortet, dvs. scrollbars med deres visible egenskab sat til false. Ved hver positionsopdatering scrolles kortet (gennemsigtigt for brugeren),

67 4.5 Strategi for deployering 55 baseret på på X og Y koordinaterne for lokationsestimatet. Dette giver en fortløbende, glidende visning af kortet centreret omkring brugerens aktuelle position. Så vidt vides er der ingen øvre grænse for hvor store billeder der kan placeres i en.net PictureBox komponent. Derfor kan der benyttes selv meget store bygningstegninger, og samtidig bibeholdes en accetabel detaljegrad så brugeren kan orientere sig i forhold til omkringliggende fikspunkter. Givet at der ikke er nogen øvre grænse for billerders størrelser kan systemer der dækker flere bygninger håndteres på samme måde. De forskellige bygningstegninger kan kombineres til én tegning i et tegneprogram, og derved i applikationen anvendes som ét samlet kort, hvorved en sømløs overgang mellem bygninger sikres. Afhængig af størrelsen af området der skal dækkes kan klient-apparatets hukommelse på et tidspunkt sætte en begrænsning for hvor store kort der kan gemmes i applikationen. I sådanne tilfælde, er det nødvendigt at gemme de forskellige bygningskort på en server hvorfra et relevant kort kan overføres til klientapplikationen. Hvis et positionsestimat på et tidspunkt indikerer at brugeren bevæger sig ind i en ny bygning kan dette kort derefter hentes over på klient-apparatet. Tilgangen med et enkelt kort på klienten kan dog være upraktisk, f.eks hvis brugeren ombestemmer sig, og bevæger sig tilbage ind i den bygning hvor brugeren kom fra - herved skal foretages endnu et kald til serveren. Denne proces kan så gentage sig, afhængig af brugerens ubeslutsomhed. Alternativt kan kort nedbrydes i mindre dele, så kortenes reducerede størrelse gør, at f.eks to kort holdes på klient-apparatet ad gangen. Herefter kan det ældste kort (der repræsenterer et område langt fra brugerens nuværende position) udskiftes med det nye kort, samtidig med at det tidligere nye kort stadig bibeholdes, hvorved brugeren kan bevæge sig mellem de to bygninger uden at det involverer et kald til serversiden for overførsel af et nyt kort. Udskiftning af kort foregår således på First-In-First-Out facon. Denne diskussion har omhandlet effektiviteten ved håndtering af kort, og en diskussion om f.eks zoom funktionalitet er udenfor området af denne rapport. 4.5 Strategi for deployering I denne sektion diskuteres en strategi for en hensigtsmæssig deployering af empirisk baserede Wifi positioneringsssystemer. Strategien tager udgangspunkt i den præsenterede applikation og det vises hvordan denne vil kunne bidrage til en reduktion af offline fasen. Det er ikke hensigtsmæssigt at påbegynde offline fasen uden at have foretaget en indledende analyse af signaludbredelsen i det tiltænkte miljø. Hvis offline fasen således igangsættes med det samme, med et sæt af arbitrært valgte design-parametre, især antal målinger per lokation og afstand mellem målepunkter kan der opstå problemer. Dels kan antallet af målinger være for højt ift. hvor mange målinger der reelt er behov for, hvilket vil være spild af ressourcer. Omvendt kan antallet

68 56 Udvikling af system Figur 4.8: Image komponent tillader for store kort af målinger være for lavt ift. at give et repræsentativt billede af signaludbredelsen. Ligeledes bør det undersøges hvorvidt der er behov for at måle på forskellige tidspunkter og dage, så systemet kan give nøjagtig positionering hele tiden, i modsætning til kun tidspunkter hvor forholdene ligner dem som på tidspunktet for offline målingerne. Et evt. behov for målinger på forskellige tidspunkter kan afklares gennem kravspecifikationen - udvikles systemet til et miljø hvor der er et højt varierende antal personer på forskellige tidspunkter? Det bør undersøges hvilken granularitet det er muligt at måle med, altså hvor tæt målepunkter kan placeres før signalstyrken overlapper i en sådan grad at præcisionen af positionsestimater bliver utilfredsstillende. Herudover er der behov for at kortlægge den grundlæggende dækning fra opstillede Access Points inden offline fasen igangsættes. Lad os antage at offline fasen er påbegyndt, og det på et tidspunkt bliver klart at der eksisterer dead spots - områder hvor der ikke er dækning fra nogen Access Points. I dette tilfælde er det nødvendigt at opstille flere Access Points og/eller relokalisere eksisterende Access Points. Begge alternativer har en negativ effekt på de allerede udførte målinger. Relokalisering af Access Points er værst - herved bliver allerede udførte målinger ugyldige da man ikke længere kan regne med at måle den samme signalstyrke fra den, eller de, flyttede Access Points. Tilføjelse af Access Points er ligeledes problematisk - herved bliver eksisterende målinger handicappet ift. nye hvor der kan høres flere Access Points, da manglende Access Points bliver tildelt en straf-værdi (kapitel 5 diskuterer straf-værdier for manglende Access Points). Det er derfor vigtigt at der kan høres et ensartet, og tilstrækkeligt, antal Access Points på enhver given lokation for at sikre nøjagige, og dækkende, systemer.

69 4.5 Strategi for deployering 57 Endelig er det naturligvis vigtigt at sikre sig at det benyttede netværkskort er anvendeligt til formålet, dvs. kortet har en stor måleskala, fin granularitet og stabil målepræcision. Da offline fasen udgør den største omkostning i forbindelse med deployering af et empirisk baseret Wifi positioneringssystem er der behov for at den udføres mest hensigtsmæssigt, og det ville selvfølgelig ikke være acceptabelt hvis fasen fordyres eller må gentages som følge af at der ikke er foretaget en indledende undersøgelse design-paramtrenes og bygningsstrukturens effekt. Med udgangspunkt i den præsenterede applikation og de nævnte problemer foreslås her en strategi der beskriver en effektiv udførelse sekventielt: Som det første skal der, med udgangspunkt i systemets anvendelse, fastslås om der er behov for at foretage målinger på forskellige tidspunkter. Der skal foretages en indledende test for at afgøre anvendeligheden af det netværkskort man påtænker at anvende. Opsætnings-funktionaliteten tillader at forskellige netværkskort kan testes, ligesom der gives et billede af signalstyrken med det pågældende netværkskort hvormed kortets egnethed kan vurderes. Hernæst skal signaludbredelsen i miljøet kortlægges. Dette kan foregå ved at brugeren går en tur rundt i bygningen, og med enten opsætnings- eller offline funktionaliteten scanner for henholdsvis alle, eller kun relevante, Access Points der kan høres. Processen med at danne sig et overblik over signaludbredelsen i miljøet kan desuden hjælpes på vej ved at benytte et værktøj som f.eks Ekahau Site Survey [16]. Et sådant værktøj kan desuden bruges til at fastslå om der er en ensartet dækning fra de eksisterende Access Points, og om der måtte være dead-spots, interferens, ligesom der kan foretages queries, f.eks vis områder hvor signalstyrken er stærkere end -70 dbm [16]. Det næste skridt er at fastslå længden af offline målinger. Ved at benytte analysefunktionaliteten kan målinger ved et punkt kan nedbrydes i tidsintervaller, hvorved det bliver muligt at analysere resultatet efter et vilkårligt antal sekunder, og dermed vurdere en passende længde for offline målinger. Denne test kunne foretages på s- trategisk udvalgte lokationer i måleområdet for at afgøre om der måtte være forskelle, eksempelvis i åbent, semi-åbent og lukket rum hvis miljøet inkluderede alle typer. Herefter vil det næste skridt være at undersøge måleafstanden for at se hvor fin nøjagtigheds-granularitet der vil kunne registreres. Dette kunne undersøges ved udvalgte små-områder i både åbent, semi-åbent, og lukket rum, hvor et par nærliggende lokationer blev testet for at se hvor tæt måleafstand der ville kunne opnås inden signalstyrkemålingerne begyndte at overlappe for meget. Denne information ville både kunne fås fra opsætnings- eller offline funktionaliteten der løbende viser signalets opførsel. Alternativt kunne disse data sendes til en web service, og der kunne

70 58 Udvikling af system bruges et værktøj som f.eks Clementine R til at give en visuel repræsentation af fordelingen af signalstyrke målinger, og derved vise graden af overlap. Ved at have dannet sig et overblik over signaludbredelsen i det pågældende miljø samtidig med at der er fastlagt en passende måleperiode og måleafstand kan man herefter begynde på selve offline fasen baseret på et mere kvalificeret grundlag. Denne diskussion har fokuseret på deployering mht. til opnåelse af maksimal positioneringsnøjagtighed. Til konkrete systemer skal der naturligvis tages udgangspunkt i specificerede krav til systemet, og hvis kravene til positioneringsnøjagtighed er mindre strikse kan nogle af trinene lettes. F.eks er det ikke nødvendigt at undersøge den minimale måleafstand hvis en bruger blot skal lokaliseres på lokale-niveau.

71 Kapitel 5 Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet 5.1 Indledning Lokationer der er tæt relaterede i signalrum er ikke nødvendigvis tæt relaterede i det fysiske rum, forstået sådan, at der kan være fysisike obstruktioner mellem lokationer tæt på hinanden der gør at det ikke er muligt for en bruger at bevæge sig fra det ene punkt til det andet. Et indendørs positioneringssystem skulle gerne differentiere mellem sådanne lokationer, selvom signalstyrke målingerne ved to sådanne punkter kan være meget ens. Eksempelvis behøver en bogreol der adskiller to lokationer ikke nødvendigvis medføre en nævneværdig adskillelse i signalstyrke. En grafstruktur er velegnet til at modellere den fysiske forbundethed af geografiske punkter og dette kapitel viser hvordan dette kan bruges til at forbedre nøjagtigheden og beregningskompleksiteten baseret på en tidligere estimeret position. Betragt følgende eksempel (vist i Figur 5.1) I eksemplet er vist 5 knuder (knude 1-5) forbundet med kanter i en afstand af 2 meter fra hinanden. Brugerens aktuelle position er givet ved knuden med et kryds (knude 1). Fra brugerens position ved knude 1 er brugerens næste sandsynlige position mængden af knuder hvortil der findes en fysisk forbindelse fra knude 1, dvs. 1, 2, 3. Det ses at knude 5 befinder sig i samme afstand fra knude 1 som knude 2 og 3. Knude 5 vil derfor have omtrent samme sandsynlighed som knude 2 og 3 for at blive estimeret som den næste sandsynlige lokation. Det samme vil iøvrigt knude

72 60 Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet Figur 5.1: Forbundne målepunkter 4 hvis afstand til knude 1 også er omtrent 2 meter. Med et opdateringsinterval sat til eksempelvis hvert halve sekund er det imidlertid ikke muligt for brugeren at bevæge sig til lokationerne repræsenteret ved knude 4 og 5. Derfor bør disse knuder udelades fra mængden af mulige estimater. Udtrykt ved en graf er de næste sandsynlige estimater den nuværende knuder samt knudens naboer. Eftersom ikkenaboer til en estimeret position ikke er mulige at bevæge sig til i den virkelige verden er der grundlæggende heller ingen grund til at medtage disse positioner i søgefeltet af positionskandidater til en næste positions-opdatering. Ved kun at medtage realistiske lokationer kan søgefeltet reduceres drastisk - fra alle knuder i grafen, der kan være hundreder eller tusinder, til meget få knuder, typisk 4 - en knude for hver retning brugeren kan bevæge sig. Dette har natuligvis en særdeles gavnlig effekt på beregningskompleksiteten når der skal foretages et positionsestimat - en effekt der især er en fordel når positionsudregning foregår på et mobilt apparat. 5.2 Graf-metoden i aktion Listing 5.1 viser hvordan den graf-baserede positionsudregning foregår i Online testen. Det er denne program-logik der vil kunne anvendes i en slutbruger applikation til at udregne en brugers position. p r i v a t e void O n l i n e T e s t ( ) 2 Knude e s t i m a t ; L i s t <Knude> knuder = g r a f. Knuder ; 4 while (ONLINE_RUNNING) 6 S s I n d s a m l i n g (UPDATE_INTERVAL, UPDATE_INTERVAL, 1 ) ; 8 e s t i m a t = Compare ( globalmeas, knuder ) ; knuder = f e a s i b l e P o s i t i o n s ( e s t i m a t ) ; 10

73 5.2 Graf-metoden i aktion 61 Listing 5.1: Online Test Der foretages en online måling og resultatet gemmes i singleton ResultHolder objektet globalmeas. Dette gøres ved at kalde metoden SsIndsamling(..) (linje 7). Se Appendix B for detaljeret kode for signalstyrke indsamling. Den første parameter i metode-signaturen til SsIndsamling(..) angiver måleperioden (der jo kan justeres i offline fasen); den anden parameter, opdateringsintervallet; og den tredje parameter, antallet af retninger der skal måles i. Konstanten UPDATE_INTERVAL er sat til 500 millisekunder. Effekten af, at kalde metoden med de angivne parametre er, at der foretages en online måling hvert halve sekund. Et halvt sekunds interval mellem positionsopdateringer er passende, for at systemet kan følge med brugeren. Ved det allerførste positionsestimat indgår alle knuder i grafen (linje 3). Ved meget store bygninger eller hvis systemet skal dække flere bygninger kan dette være en delmængde af positioner relevant for en given bygning der er hentet over fra serversiden. Da dette første positionsestimat gennemsøger alle knuder i grafen for at fastslå det bedste estimat-udgangspunkt kan der måske indtræffe en (kortere eller længere) venteperiode for brugeren. Dette kan håndteres med en Vent venligst, mens din position estimeres besked el. lignende når brugeren aktiverer positionering. Testen i applikationen kører indtil den bliver afbrudt af brugeren - i en slutbruger applikation kan termineringskriteriet være f.eks at brugeren har nået sin destination. Brugerens position estimeres ved at sammenligne online målingen med målingerne for knuderne i det aktuelle søgefelt (linje 8). I applikationen anvendes k-nearest Neighbour algoritmen til sammenligning da k-nearest Neighbour ikke forudsætter et stort træningssæt for at være effektivt. Herved kan systemets positioneringsnøjagtighed aftestes på et tidligt tidspunkt, og inden det komplette træningssæt er opbygget. Efter et estimat er opnået opdateres søgefeltet til at være realistiske knuder baseret på dette estimat (knuder = feasiblepositions(estimat) i linje 10). Realistiske knuder vil ved et kort opdateringsinterval være lig med selve estimat-knuden samt dennes naboer - jeg vil lidt senere diskutere hvordan længere opdateringsintervaller kan håndteres. Søgefeltet justeres på denne måde fortløbende til at være omkringliggende lokationer til et givet estimat. Metoden Compare(..) der kombinerer k-nearest Neigbour algoritmen med grafmetoden kan ses i Listing 5.2. p r i v a t e Knude Compare ( R e s u l t H o l d e r currss, L i s t <Knude> knuder ) 2 Knude e s t i m a t = n u l l ; double d i f f ; 4 double c l o s e s t M a t c h = double. MaxValue ; 6 foreach ( Knude k in knuder ) / / sammenlign med hver knude

74 62 Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet foreach ( F i n g e r P r i n t k_fp in k. F i n g e r P r i n t s ) / / sammenlign med h v e r t f i n g e r p r i n t 8 d i f f = 0 ; 10 foreach ( S t r i n g mac in currss. getmacs ( ) ) / / a l l e APer i sample i f ( k_fp. containsmac ( mac ) ) 12 d i f f += Math. Pow ( ( c urrss. getavgdbm ( mac ) k_fp. getavgdbm ( mac ) ), 2 ) ; e l s e 14 d i f f += MISSING_MAC_PENALTY ; 16 d i f f = Math. S q r t ( d i f f ) ; i f ( d i f f < c l o s e s t M a t c h ) 18 c l o s e s t M a t c h = d i f f ; 20 e s t i m a t = k ; 22 return e s t i m a t ; 24 Listing 5.2: Estimat ved k-nearest Neighbour og graf Online-målingen, currss (linje 1), sammenlignes med hver knude i den aktuelle delmængde af knuder (linje 6). For hver knude sammenlignes i dette projekt med alle målinger der er foretaget ved knudens lokation (linje 8). Alternativt kan der sammenlignes med målinger for den samme ugedag eller tidspunkt på en dag - dette gøres ved at inspicere, og sammenligne, målingernes timestamp. F.eks, hvis online målingen foretages om formiddagen kan man nøjes med at sammenligne med offline målinger der ligeledes er foretaget om formiddagen. Denne tilgang er nyttig i situationer hvor signalstyrken fluktuerer betragteligt som følge af måletidspunktet, f.eks en travl formiddag med et stort antal personer i bygningen. Sammenligningen foregår ved at udregne den euklidiske distance (i signalrummet) mellem online målingen og de forskellige offline målinger (linje 10-16). Forholdet mellem Access Points der kan høres i i henholdsvis online- og offline målinger kan være asymmetrisk eftersom Access Points indimellem kan risikere at falde ud i kortere eller længere perioder. Der tages udgangspunkt i de Access Points der kan høres på online tidspunktet og manglende værdier, dvs. offline målinger hvor signalstyrke fra et givet Access Point i online-målingen ikke er registreret, håndteres ved at tildele en straf-værdi til dette manglende Access Points (linje 14). Denne værdi kan konfigureres afhængig af måleskalaen for det anvendte netværkskort, men bør være mindre end den mindste målelige signalstyrke for derved at straffe manglende Access Points. Positionsestimatet vælges til at være den lokation der har den mindste distance i signalrummet til online målingen (linje 17-20). Endelig returneres den knude der resulterede i det bedste estimat. Benyttelse af straf-værdier er almindelig praksis i data mining til håndtering af manglende værdier i et datasæt [27] og også nødvendigt for manglende Access Points. Hvis manglende Access Points blev ignoreret, effektivt ved at sige diff += 0, ville man i værste tilfælde kunne risikere at et offline målepunkt hvor der

75 5.2 Graf-metoden i aktion 63 slet ikke blev opfanget signal fra nogen Access Points - et dead spot - producerede det bedste estimat, da distancen i signalrummet ville være 0, og dermed et tilsyneladende perfekt estimat. Ved at benytte en applikation til indsamling af signalstyrke hvor signalstyrken interaktivt kan observeres mens en offline måling foretages, som det er tilfældet i dette projekt, ville brugeren selvfølgelig højst sandsynlig opdage sådan et tilfælde. Men ved ikke at straffe manglende Access Points ville positionering generelt tilgodese målinger med et lavere antal Access Points hvilket er kontraintuitivt, da et højere antal Access Points kan medvirke til en forbedret triangulering af brugerens position. p r i v a t e L i s t <Knude> f e a s i b l e P o s i t i o n s ( Knude c urpos ) 2 L i s t <Knude> f e a s i b l e P o s = c urpos. AdjKnuder ; 4 f e a s i b l e P o s. Add ( c u r P o s ) ; return f e a s i b l e P o s ; 6 Listing 5.3: Realistiske knuder Metoden feasiblepositions(..) (Listing 5.3) opdaterer, som beskrevet, mængden af knuder der indgår i næste positionsopdatering til at være knuden der resulterede i det bedste positionsestimat ved den sidste opdatering samt dennes n- aboknuder. Med et opdateringsinterval på et halvt sekund og en afstand mellem målepunkter på eksempelvis 2 meter er det naturligt kun at inkludere umiddelbart tilstødende lokationer. En hastighed på 4 meter per sekund antages at være en rimelig øvre grænse for hvor hurtigt en bruger kan bevæge sig ved almindelig gang. Ved længere opdateringsintervaller kan det imidlertid være nødvendigt at betragte flere knuder end det aktuelle estimats umiddelbare naboer. Hvis positionering ønskes udført på server-siden kan det være nødvendigt at lave et tradeoff med længere opdateringsintervaller for at reducere load på netværket ved mange brugere. Ved længere opdateringsintervaller end hvert halve sekund vil det derfor være nødvendigt at betragte knuder inden for en større radius end 2 meter. For at håndtere sådanne tilfælde kan der, istedet for kun at betragte de umiddelbare naboer, foretages en Breadth-First-Search (BFS) hvor alle knuder inden for en given radius inkluderes. Metoden er således at fastlægge en passende radius relativt til opdateringsintervallet og hastigheden af brugerne, og så benytte kanternes vægt til at udregne alle knuder inden for en specificeret radius. Ved eksempelvis et opdateringsinterval hvert 10 sekund og en maksimal hastighed for brugeren på 4 meter per sekund består søgefeltet nu af mængden af knuder der har en akkumuleret vægt, og dermed distance, fra det sidst opnåede positionsestimat på op til 40 meter. Dvs. klienten kommunikerer med serveren hvert 10. sekund og serveren gennemsøger søgefeltet i en radius af 40 meter fra brugerens sidst estimerede position.

76 64 Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet Dette projekt indeholder ikke en BFS søgning, men en sådan ville forholdsvis simpelt kunne inkluderes (Breadth-First-Search er en velbeskrevet metode i graf-teori, se bla. [19]). På et mobilt apparat er der imidlertid ingen grund til at forlænge opdateringsintervallet, da dette blot forøger søgefeltet, ligesom systemets evne til at korrekt kunne reflektere brugerens aktuelle position skades. En graf-repræsentation vil have en fordel i alle typer miljøer - semi-åbne, åbne, og lukkede. I semi-åbne miljøer med mange tæt-placerede obstruktioner, som f.eks. et biblioteksmiljø med mange bogreoler, adskilles fysisk tæt placerede lokationer hvor der ikke er en fysisk forbindelse. Derudover vil en graf-repræsentation også hjælpe i et åbent miljø. Givet et korrekt positionsestimat betragtes kun lokationer hvor brugeren har en reel mulighed for at nå at kunne bevæge sig til, hvilket effektivt frasorterer lejlighedsvise outliers. Også i lukkede miljøer vil en grafrepræsentation hjælpe til en forbedret præcision. [5] observerede at i langt størstedelen af tilfældende blev en bruger korrekt estimeret til det rette rum, men der forekom lejlighedsvist situationer hvor brugeren pludselig blev estimeret til at befinde sig i et tilstødende lokale. For at dette skulle kunne finde sted med et opdateringsinterval på ét sekund ville brugeren skulle være i stand til at bevæge sig gennem vægge. Endvidere vil en graf-repræsentation desuden kunne hjælpe til at forbedre tracking markant, hvor signalfluktuationen er større. Situationer hvor en bruger estimeres til at være 12 meter væk fra den faktiske position med et opdateringsinterval på ét sekund, som det var tilfældet i [5], vil således ikke kunne forekomme. 5.3 Radius-knuder En graf-repræsentation har dog også en indbygget risiko, nemlig at et forkert udgangspunkt (start-estimat) vil kunne forplante sig til fremtidige estimater. Det værste tilfælde vil være hvor positioneringssystemet ukorrekt estimerer en bruger til at befinde sig på en position hvorfra der ikke findes nogen fysisk forbindelse til brugerens faktiske position. Hvis brugeren således estimeres til at være på den forkerte side af en væg, og der ikke findes døre eller lignende, mellem lokationer på hver side af væggen vil systemet være forhindret i at foretage korrekte estimater nogensinde fremover. Dette problem kan håndteres ved sekundært at holde en reference til alle knuder inden for en given radius, og sammenligne nøjagtigheden der opnås ved disse med nøjagtigheden fra den primære metode (hvor nabo-knuderne indgår). Hvis en historie af målinger indikerer at brugerens position snarere skal findes ved en ikke-forbundet knude sættes estimatet til at være denne, og denne knude benyttes nu til den primære positioneringsmetode. I det følgende vil jeg vise hvordan dette er implementeret. Først og fremmest skal en knude udover dens naboknuder desuden have kendskab til alle andre knuder inden for en given radius.

77 5.3 Radius-knuder 65 Koden for dette kan ses i Listing 5.4. p u b l i c void i n s e r t R a d i u s ( Knude k, i n t r a d i u s ) 2 foreach ( Knude tmp in knuder. Values ) 4 i f ( tmp == k ) c o n t i n u e ; 6 double d i s t = 0 ; d i s t = Math. Pow ( ( k. Punkt.X tmp. Punkt.X), 2) + 8 Math. Pow ( ( k. Punkt.Y tmp. Punkt.Y), 2 ) ; d i s t = Math. S q r t ( d i s t ) ; 10 i f ( d i s t <= r a d i u s ) 12 k. addradiusknude ( tmp ) ; 14 Listing 5.4: Alle Knuder indenfor given radius Metoden insertradius(..) er medlem af Graf klassen og gør at et Knude objekt kan opnå viden om andre knuder indenfor en given radius. Dette foregår ved at gennemløbe grafen, og for hver knude at udregne den fysiske distance til den specificerede knude k. Hvis distancen er mindre end den angivne radius inkluderes den nuværende knude i k s mængde af radius-knuder. En knude k kan således holde referencer til knuder inden for en specificeret radius. Mængden af radiusknuder holdes adskilt fra en knudes øvrige naboer - et faktum jeg vil demonstrere senere, hvordan anvendes til at korrigere for et tilsyneladende forkert estimat. Tilgangen med at holde referencer til radius-knuder er valgt, så at radius-knuder kan hentes i konstant tid på online tidspunktet istedet for at hele grafen skal traverseres. Dette sker på bekostning af et større hukommelses-overhead. Ved en radius på 6 meter, som tidligere forsøg indikerer bør være tilstrækkeligt til at tage højde for signalfluktuationer (der henvises til opsummeringen af resultater i Figur 3.3, afsnit 3.2), og en måleafstand på 2 meter, vil en knude således holde referencer til 9 andre knude-objekter. Dette overhead kommer i form af referencer på stakken og medfører ikke nogen allokering på heapen, da knuden refererer eksisterende objekter. Radius-knuderne benyttes nu til at foretage en korrigering hvis en historie af estimater indikerer at der er taget udgangspunkt i en forkert knude. Dette kan ses i en udvidelse af online testen (Listing 5.5). p r i v a t e void O n l i n e T e s t ( ) 2 Knude e s t i m a t ; Knude r a d i u s E s t i m a t ; 4 L i s t <Knude> knuder = g r a f. Knuder ; L i s t <Knude> r a d i u s K n u d e r = n u l l ; 6 double d i s t 1, d i s t 2 ; E s t i m a t e H i s t o r y h i s t o r i e = new E s t i m a t e H i s t o r y ( 1 0 ) ; 8 while (ONLINE_RUNNING) 10 S s I n d s a m l i n g (UPDATE_INTERVAL, UPDATE_INTERVAL, 1 ) ;

78 66 Graf-modellering til forbedring af positionering og reduktion af beregningskompleksitet 12 e s t i m a t = Compare ( globalmeas, knuder, out d i s t 1 ) ; r a d i u s K n u d e r = e s t i m a t. RadiusKnuder ; 14 r a d i u s E s t i m a t = Compare ( globalmeas, radiusknuder, out d i s t 2 ) ; h i s t o r i e. add ( d i s t 1 < d i s t 2 ) ; 16 i f ( h i s t o r i e. NumWrongGuesses > 5) knuder = f e a s i b l e P o s i t i o n s ( r a d i u s E s t i m a t ) ; 18 e l s e knuder = f e a s i b l e P o s i t i o n s ( e s t i m a t ) ; 20 Listing 5.5: Udvidet online test der inkluderer radius-knuder Udover tilføjelsen af radius-knuder (linje 6) er der også tilføjet to variable dist1 og dist2 der repræsenterer distancen i signalrummet fra en online måling til henholdsvis den primære metode og sekundære metode. For at holde en historie af de sidste estimater er der tilføjet en klasse EstimateHistory der implementerer en kø-datastruktur (linje 8). I eksemplet anvendes en historielængde på 10, hvilket vil sige at resultatet af de sidste 10 estimater gemmes. Som før foretages en online måling der sammenlignes med signalstyrken fra den nuværende delmængde af knuder (linje 12-13). For knuden der gav det bedste estimat sammenlignes herefter med denne knudes radius-knuder. Resultatet fra den bedste primære knude sammenlignes med resultatet for den bedste sekundære knude, og udfaldet af denne sammenligning gemmes i historien (linje 16). Hvis det viser sig at en sekundær knude i over halvdelen af tilfældende har givet det bedste resultat (linje 17) vælges denne til at være ny primær knude (linje 18). Effekten er at positionsestimat flyttes til en lokation hvor der ikke er en fysisk forbindelse, og at estimater nu tager udgangspunkt i denne. For at reducere det øgede hukommelses-overhead ved indførelsen af radius-knuder, vil det være en fordel at begrænse anvendelsen af radius-knuder til strategisk udvalgte lokationer. Eksempelvis kan man nøjes med at lade knuder i højrisiko områder holde radius-knuder. Høj-risiko områder er områder hvor følgen af et fejlestimat vil være fatalt for systemets evne til at estimere fremtidige lokationer korrekt. I eksempelvis åbent rum vil det således være spild af plads at holde radius knuder da enhver lokation kan udledes af knudernes forbundethed. 5.4 Afrunding af graf-metoden Det er klart at en graf-repræsentation ikke direkte influerer på den nøjagtighed det er muligt at opnå, da grafen ingen indflydelse har på signalstyrken. Den mindste nøjagtigheds-granularitet det er muligt at måle før positioner overlapper afhænger istedet udelukkende af design-parametre, såsom hvor godt netværkskort der benyttes (hvor stor en måleskala og granularitet kortet måler med, samt kortets måling-

79 5.4 Afrunding af graf-metoden 67 spræcision); antallet og placeringen af Access Points; hvor stor fluktuation bygningen påfører signaludbredelsen; samt effekten fra personer i bygningen. En grafrepræsentation kan derimod bruges til at forbedre præcisionen (altså de procentvis korrekte estimater) ved at frasortere urealistiske positioner som følge af bygningens topologi. Derved øger grafen indirekte nøjagtigheden, givet nøjagtighed/præcision forholdet. Eller sagt på en anden måde: En graf-repræsentation hjælper til at opnå et korrekt estimat oftere. En graf-repræsentation har desuden følgende positive egenskaber: Grafer er velegnede til navigeringsapplikationer - en rute fra et udgangspunkt til en destination kan udregnes via eksempelvis en shortest-path algoritme. Grafer kan nemt tilpasses ændringer i miljøet - hvis obstruktioner tilføjes eller fjernes, kan forbindelser mellem knuderne nemt justeres til at imødekomme dette. Derudover kan en graf-repræsentation kombineret med kontekst-information og en effektiv databasehåndtering bruges til at facilitere effektiv I/O med en server. Antag at en bruger har anmodet om en ruteudregning: Herved kan man nøjes med at overføre kun de lokationer til klienten der ligger langs ruten, istedet for at overføre lokationer indenfor en bestemt radius hvilket ville være spild givet brugerens ønske om at nå frem til destination X.

80

81 Kapitel 6 Case: Randers Bibliotek Indholdsfortegnelse 6.1 Indførelse af et navigeringssystem Dette projekt er udført i samarbejde med Randers Bibliotek. Motiveret af det potentielle problem, inklusiv forfatterens eget, med at finde relevant materiale på biblioteker blev der taget henvendelse til Randers Bibliotek for at undersøge behovet for at indføre navigering på biblioteket, hvilket ville kunne hjælpe brugere til på egen hånd, hurtigt at lokalisere materiale. I forbindelse med tidligere arbejde forfatteren har deltaget i, blev der foretaget en spørgeskema-undersøgelse rettet mod de studerende og ansatte ved Aalborg Universitet (AAU) vedrørende, bla., graden af problemer med at lokalisere relevant materiale på AAU s bibliotek [5]. Blandt de adspurgte svarede 25% at dette ofte præsenterede et problem, mens 36% svarede en gang imellem [5]. Det skal bemærkes at AAU s bibliotek der er tilknyttet afdelingen for Computer Science hvor de adspurgte personer kom fra, er et forholdsvis lille bibliotek, hvorfor det er naturligt at forestille sig at dette problem var endnu mere udtalt i et offentligt bibliotek med væsentlig flere emner, og en større diversitet i emnerne. Randers bibliotek havde på daværende tidspunkt allerede overvejet muligheden for at inkorporere en grafisk visning af materialers placering i deres online søgebibliotek, inspireret af det Svenske Norrköbing Stadsbibliotek [1]. Dette biblioteks online søgebibliotek indeholder en funktionalitet der gør, at når en bruger foretager en søgning i online biblioteket, så kan brugeren vælge at få vist et kort over biblioteket med en markering af hvor det pågældende materiale befinder sig. Figur 6.1 viser resultatet af en søgning i Norrköbing Stadsbibliotek online søgebibliotek. Det røde rektangel i venstre side af Figur 6.1, ved hylde 117, viser placeringen af titlen Heissester Sommer skrevet af Zsuzsa Bánk. En bruger kan herefter printe over-

82 70 Case: Randers Bibliotek sigten ud, og medbringe den til biblioteket for derved hurtigere at kunne lokalisere materialet. Figur 6.1: Placering af Heissester Sommer af Zsuzsa Bánk, på Norrköbing S- tadsbibliotek Der er imidlertid meget at vinde ved at gøre denne funktionalitet dynamisk, således at en bruger på stedet, via eksempelvis en PDA, kan foretage en søgning og få vist materialets placering. Herved skal en bruger ikke hjemmefra planlægge hvilke eksakte titler der har interesse, men dynamikken gør at brugeren i langt højere grad bliver i stand til at udforske biblioteket, og således kan finde frem til eksempelvis andre titler af en bestemt forfatter, andre titler inden for et emne, andre forfattere indenfor et emne, osv. Denne evne er stærkt begrænset ved en statisk løsning der ville kræve at brugeren udskrev adskillige kort for hver potentiel interesseemne. Ydermere gør brugerens fysiske tilstedeværelse ved en dynamisk løsning at brugeren kan skimme indholdet eller bagsiden for derved at give brugeren information som ikke er mulig med en statisk løsning. Derudover kan en et navigeringssystem hjælpe en bruger på vej til materialet. Man kan forestille sig at en bruger læser en bygningstegning forkert, eller estimere sin egen eller materialets position til at være en anden end den faktisk er. Dette overkommes ved dynamisk navigering, hvor brugerens position opdateres løbende og brugeren således kan se om vedkommende går i den rigtige eller en forkert retning. Det kan argumenteres at en lignende effekt kan opnås med den statiske løsning (hvor kortet printes ud) når den tilgås fra en PC på selve biblioteket. Brugeren er dog stadig hæmmet af at skulle udprinte kortet, hente det fra printeren (hvilket desuden kan repræsentere et muligt navigeringsproblem i sig selv), og først herefter anvende kortet til at finde materialet. Hvis brugeren herefter havde lyst til at finde andre materialer, skulle brugeren tilbage til PC en hvorefter denne proces blev gentaget. Dette brugbarhed-

83 71 sproblem vil formentlig gøre at brugere ikke i samme grad vil anvende systemet som et middel til at udforske biblioteket. Randers Bibliotek har i forvejen, som nævnt, et online søgebibliotek, og ønsket var at en navigeringsapplikation til eksempelvis en PDA skulle integreres med dette. Online biblioteket i dets nuværende form understøtter ikke nem visning på mobile apparater, så det ville være hensigtsmæssigt at lave et specialiseret interface til mobile klienter der indeholdt netop kun den relevant funktionalitet, nærmere bestemt en søgefunktionalitet. Integration med online søgebiblioteket kan implementeres ved at lave en web service der fungerer som middleware lag mellem en mobil klient og online søgebiblioteket. Et simpelt eksempel der illusterer anvendelsen, via integration med online søgebiblioteket vises i Figur 6.2 og 6.3. Dette er et simpelt design for hvordan det kunne se ud, og denne funktionalitet er ikke implementeret på nuværende tidspunkt. I Figur 6.2 foretager brugeren en søgning efter et materiale ud fra emne-område, forfatter eller titel. Der vises en liste med resultater og brugeren kan vælge vis hvorved kortet bliver vist med ruten fra brugeren til materialets placering. Dette er et rudimentært eksempel der ikke gør nogen antagelser om kortvisnings-strategi. I en praktisk anvendelse kunne der f.eks være mulighed for et oversigtskort, zoomfunktionalitet, ligesom kortet som det tidligere blev diskuteret kunne være centreret omkring brugerens aktuelle position. Figur 6.2: Søgning efter materiale

84 72 Case: Randers Bibliotek Figur 6.3: Visning af materiale Selve søgningen efter materiale kan håndteres ved at knytte materiale til en lokation via dets opstillingsnummer. Et opstillingsnummer angiver at materiale tilhører et hierakisk opbygget emnehieraki, f.eks Nationaldragter->Danske Folkedragter. Materiale er opstillet ift. dets opstillingsnummer således at materiale inden for et bestemt emne findes på en bestemt reol. Lad os f.eks antage at emnet Matematik har opstillingsnummer 51. Al materiale vedrørende emnet matematik har således et opstillingsnummer 51.**. Denne information kan udnyttes til at knytte et materiale til en bestemt hylde eller en relativ placering på en bestemt hylde, f.eks materiale med opstillingsnummer findes i den højre ende at matematik reolen. Der er således ikke behov for at knytte hver enkelt materiale til en lokation, men materialers opstillingsnummer kan istedet benyttes til at gruppere al materiale med det pågældende opstillingsnummer. Herved bliver processen med at gøre materiale lokations-bevidst en overkommelig opgave. Det hænder ifølge Hans Nielsen, at bogreoler somme tider relokaliseres. Dette kan dog nemt kunne håndteres via graf-metoden. Diverse information, inkl. informationer om bogreoler, kan knyttes til en knude (lokation). Ved at flytte en reol refereres objektet der holder information for den pågældende reol nu blot af en anden knude med de relevante koordinater.

Lokationsbestemmelse. Mikkel Baun Kjærgaard ISIS Software Katrinebjerg Department of Computer Science University of Aarhus

Lokationsbestemmelse. Mikkel Baun Kjærgaard ISIS Software Katrinebjerg Department of Computer Science University of Aarhus Lokationsbestemmelse Mikkel Baun Kjærgaard ISIS Software Katrinebjerg Department of Computer Science University of Aarhus Projekt Fokus på fremtiden arkitektur, applikationer og grænseflader til trådløs

Læs mere

Bilag 7. SFA-modellen

Bilag 7. SFA-modellen Bilag 7 SFA-modellen November 2016 Bilag 7 Konkurrence- og Forbrugerstyrelsen Forsyningssekretariatet Carl Jacobsens Vej 35 2500 Valby Tlf.: +45 41 71 50 00 E-mail: kfst@kfst.dk Online ISBN 978-87-7029-650-2

Læs mere

Wifi Positionering. Potentiale og Praksis. Vejleder. René Hansen. Dat7 Rapport. Du er her! Destination. Gruppe d702a

Wifi Positionering. Potentiale og Praksis. Vejleder. René Hansen. Dat7 Rapport. Du er her! Destination. Gruppe d702a Wifi Positionering Potentiale og Praksis Dat7 Rapport Du er her! Destination Gruppe d702a Kim Algreen René Hansen Vejleder Bent Thomsen Det naturvidenskabelige fakultet Aalborg Universitet Institut for

Læs mere

Intro til Client Management

Intro til Client Management Intro til Client Management Den digitale arbejdsplads Neisa Denmark A/S info@neisa.dk Baldersbuen 40 2640 Hedehusene www.neisa.dk Tlf.: +45 4657 0333 CVR nr.: 78731311 1 Digitalisering og Disruption...

Læs mere

Hvad er fremtiden for internettet?

Hvad er fremtiden for internettet? Hvad er fremtiden for internettet? pcfly.info Den Internettet er blot et par årtier gamle, men i dette korte tidsrum har oplevet væsentlige ændringer. Den voksede ud af et sammensurium af uafhængige netværk

Læs mere

Netbaserede kontekstafhængige services LaCoMoCo November 11, 2004

Netbaserede kontekstafhængige services LaCoMoCo November 11, 2004 Netbaserede kontekstafhængige services LaCoMoCo November 11, 2004 Lars Birkedal [birkedal@itu.dk] The IT University of Copenhagen LaCoMoCo Forskningsnet nu og i fremtiden p.1/18 LaCoMoCo Laboratory for

Læs mere

ALGORITMER OG DATA SOM BAGGRUND FOR FORUDSIGELSER 8. KLASSE. Udfordring

ALGORITMER OG DATA SOM BAGGRUND FOR FORUDSIGELSER 8. KLASSE. Udfordring ALGORITMER OG DATA SOM BAGGRUND FOR FORUDSIGELSER 8. KLASSE Udfordring INDHOLDSFORTEGNELSE 1. Forløbsbeskrivelse... 3 1.1 Overordnet beskrivelse tre sammenhængende forløb... 3 1.2 Resume... 5 1.3 Rammer

Læs mere

LEVERANCE 1.3. Model for kvalitetssikring

LEVERANCE 1.3. Model for kvalitetssikring LEVERANCE 1.3 Model for kvalitetssikring Udarbejdelse af kvalitetssikringsmodel, krav til open source kode og dokumentation og godkendelsesprocedurer m.v. Samt fokus på understøttelse af CE-mærkning. 1

Læs mere

Efficient Position Updating

Efficient Position Updating Efficient Position Updating Pervasive Positioning, Q3 2010 Lasse H. Rasmussen, 20097778 Christian Jensen, 20097781 12-03-2010 1 Introduktion Denne rapport har til formål at beskrive implementeringen og

Læs mere

Rejsekort A/S idekonkurence Glemt check ud

Rejsekort A/S idekonkurence Glemt check ud Rejsekort A/S idekonkurence Glemt check ud 9. marts 2015 1 Indhold 1 Introduktion 4 1.1 Problembeskrivelse........................ 4 1.2 Rapportens opbygning...................... 4 2 Ordliste 5 3 Løsning

Læs mere

Bilag 7 Analyse af alternative statistiske modeller til DEA Dette bilag er en kort beskrivelse af Forsyningssekretariatets valg af DEAmodellen.

Bilag 7 Analyse af alternative statistiske modeller til DEA Dette bilag er en kort beskrivelse af Forsyningssekretariatets valg af DEAmodellen. Bilag 7 Analyse af alternative statistiske modeller til DEA Dette bilag er en kort beskrivelse af Forsyningssekretariatets valg af DEAmodellen. FORSYNINGSSEKRETARIATET OKTOBER 2011 INDLEDNING... 3 SDEA...

Læs mere

Kursusindhold: Produkt og marked - matematiske og statistiske metoder. Monte Carlo

Kursusindhold: Produkt og marked - matematiske og statistiske metoder. Monte Carlo Kursusindhold: Produkt og marked - matematiske og statistiske metoder Rasmus Waagepetersen Institut for Matematiske Fag Aalborg Universitet Sandsynlighedsregning og lagerstyring Normalfordelingen og Monte

Læs mere

OMKnet trådløs. Overblik. Gode ting ved trådløs. Dårlige ting ved trådløs 3/12/2012

OMKnet trådløs. Overblik. Gode ting ved trådløs. Dårlige ting ved trådløs 3/12/2012 OMKnet trådløs Dette dokument er udarbejdet ud fra egen viden, informationssøgning og testning på kollegiet. En længere og større testning og undersøgelse vil være nødvendig før en præcis pris og endelig

Læs mere

Kursusindhold: Produkt og marked - matematiske og statistiske metoder. Monte Carlo

Kursusindhold: Produkt og marked - matematiske og statistiske metoder. Monte Carlo Kursusindhold: Produkt og marked - matematiske og statistiske metoder Rasmus Waagepetersen Institut for Matematiske Fag Aalborg Universitet Sandsynlighedsregning og lagerstyring Normalfordelingen og Monte

Læs mere

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål

Læs mere

2 Risikoaversion og nytteteori

2 Risikoaversion og nytteteori 2 Risikoaversion og nytteteori 2.1 Typer af risikoholdninger: Normalt foretages alle investeringskalkuler under forudsætningen om fuld sikkerhed om de fremtidige betalingsstrømme. I virkelighedens verden

Læs mere

Produkt og marked - matematiske og statistiske metoder

Produkt og marked - matematiske og statistiske metoder Produkt og marked - matematiske og statistiske metoder Rasmus Waagepetersen Institut for Matematiske Fag Aalborg Universitet February 19, 2016 1/26 Kursusindhold: Sandsynlighedsregning og lagerstyring

Læs mere

Efterspørgselsforecasting og Leveringsoptimering

Efterspørgselsforecasting og Leveringsoptimering Efterspørgselsforecasting og Leveringsoptimering 26.05.2011 Bjørn Nedergaard Jensen Berlingske Media 2 En af Danmarks største medieudgivere og leverandør af både trykte og digitale udgivelser. Koncernen

Læs mere

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt.

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer

Læs mere

1. Intoduktion. Undervisningsnoter til Øvelse i Paneldata

1. Intoduktion. Undervisningsnoter til Øvelse i Paneldata 1 Intoduktion Før man springer ud i en øvelse om paneldata og panelmodeller, kan det selvfølgelig være rart at have en fornemmelse af, hvorfor de er så vigtige i moderne mikro-økonometri, og hvorfor de

Læs mere

DE BEAR TECHNOLOGY. o Processer, metoder & værktøjer. e-mail: info@dbtechnology.dk WWW.DBTECHNOLOGY.DK

DE BEAR TECHNOLOGY. o Processer, metoder & værktøjer. e-mail: info@dbtechnology.dk WWW.DBTECHNOLOGY.DK Mission Critical o Projekt Information management o Processer, metoder & værktøjer. Side 1 of 11 Projekt information Projekt information management inkluderer alle de processer, som er nødvendige for at

Læs mere

PS102: Den menneskelige faktor og patientsikkerhed

PS102: Den menneskelige faktor og patientsikkerhed IHI Open School www.ihi.org/patientsikkerhed PS102: Den menneskelige faktor og patientsikkerhed (1 time) Dette modul er en introduktion til emnet "menneskelige faktorer": Hvordan indarbejdes viden om menneskelig

Læs mere

Matlab script - placering af kran

Matlab script - placering af kran Matlab script - placering af kran 1 Til at beregne den ideelle placering af kranen hos MSK, er der gjort brug af et matlab script. Igennem dette kapitel vil opbygningen af dette script blive gennemgået.

Læs mere

OpenTele Server Performance Test Rapport

OpenTele Server Performance Test Rapport OpenTele Server Performance Test Rapport 17. marts 2015 Side 1 af 22 1Indholdsfortegnelse Indholdsfortegnelse Indledning Test forudsætning Beskrivelse af testscenarier Test af OpenTele kliniker web interface

Læs mere

Positionering. Click to edit Master title style. Når alting ved hvor det er

Positionering. Click to edit Master title style. Når alting ved hvor det er Click to edit Master title style Positionering Når alting ved hvor det er Jakob Fredslund, Alexandra Instituttets indsatsområde for Positionering-i-alting Click to edit Master title style Muligheder Inspiration

Læs mere

Infrastruktur i hjemmet og begreber

Infrastruktur i hjemmet og begreber Infrastruktur i hjemmet og begreber Indholdsfortegnelse Ordliste... 2 Accesspoint... 2 DHCP... 2 DSL... 2 Ethernet... 2 Firewall... 2 Flatrate... 2 Hub... 3 IP... 3 IP-adresse... 3 IP-filtrering... 3 IP-forwarding...

Læs mere

Projektopgave Observationer af stjerneskælv

Projektopgave Observationer af stjerneskælv Projektopgave Observationer af stjerneskælv Af: Mathias Brønd Christensen (20073504), Kristian Jerslev (20072494), Kristian Mads Egeris Nielsen (20072868) Indhold Formål...3 Teori...3 Hvorfor opstår der

Læs mere

GRIBSKOV KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2019 DAGTILBUD, SKOLE, FO OG KLUB

GRIBSKOV KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2019 DAGTILBUD, SKOLE, FO OG KLUB GRIBSKOV KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2019 DAGTILBUD, SKOLE, FO OG KLUB INDHOLD Afsnit 1 Introduktion Side 02 Afsnit 2 Sammenfatninger Side 04 Afsnit 3 Resultater dagtilbud Side 08 Afsnit 4

Læs mere

Arbejdet på kuglens massemidtpunkt, langs x-aksen, er lig med den resulterende kraft gange strækningen:

Arbejdet på kuglens massemidtpunkt, langs x-aksen, er lig med den resulterende kraft gange strækningen: Forsøgsopstilling: En kugle ligger mellem to skinner, og ruller ned af den. Vi måler ved hjælp af sensorer kuglens hastighed og tid ved forskellige afstand på rampen. Vi måler kuglens radius (R), radius

Læs mere

QUICK GUIDE. Skab operationel effektivisering med Microsoft CRM Online

QUICK GUIDE. Skab operationel effektivisering med Microsoft CRM Online QUICK GUIDE Skab operationel effektivisering med Microsoft CRM Online Som erhvervsdrivende ved vi, hvor vigtigt det er at differentiere sig. For at overleve har vi i de seneste årtier set eksempler på,

Læs mere

Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP()

Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP() Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP() John Andersen, Læreruddannelsen i Aarhus, VIA Et kast med 10 terninger gav følgende udfald Fig. 1 Result of rolling 10 dices

Læs mere

Cykel Score når chips sætter gang i cyklisterne

Cykel Score når chips sætter gang i cyklisterne Artikel til Vejforum 2011 Cykel Score når chips sætter gang i cyklisterne Civilingeniør Troels Andersen, Fredericia Kommune, troels.andersen@fredericia.dk CykelScore er et helt nyt kampagnekoncept til

Læs mere

RFID: Mere end identifikation - RFID fra et forskningsperspektiv

RFID: Mere end identifikation - RFID fra et forskningsperspektiv RFID: Mere end identifikation - RFID fra et forskningsperspektiv Rasmus Krigslund, Petar Popovski and Gert F. Pedersen Department of Antennas, Propagation and Radio Networking Aalborg Universitet 16. marts,

Læs mere

MOBILTELEFONI OG DIT HELBRED Af Trine Jørgensen

MOBILTELEFONI OG DIT HELBRED Af Trine Jørgensen MOBILTELEFONI OG DIT HELBRED Af Trine Jørgensen Tips til at begrænse strålingen i hverdagen. Flere og flere bliver konstateret allergiske overfor radiobølger og elektrosmog. I dag er vi bogstavelig talt

Læs mere

Hvordan reagerer short sellere i danske aktier på ny information?

Hvordan reagerer short sellere i danske aktier på ny information? Finanstilsynet 6. december 18 Hvordan reagerer short sellere i danske aktier på ny information? Markedsværdien af væsentlige korte nettopositioner i danske børsnoterede aktier var i midten af 18 ca. 3

Læs mere

- Langsommere end 5 GHz, ofte. 2,4 GHz. - Længere rækkevidde en. - Kan have problemer med. - Kan bedre komme igennem/uden

- Langsommere end 5 GHz, ofte. 2,4 GHz. - Længere rækkevidde en. - Kan have problemer med. - Kan bedre komme igennem/uden WiFi i DTU Bibliotek, Lyngby en guide Hvad er 2,4 og 5GHz? 2,4 og 5 GHz er begge trådløse netværk, men tallene hentyder til hvilken frekvens, der bliver transmitteret ved. Netværket på DTU udsender både

Læs mere

It-sikkerhedstekst ST2

It-sikkerhedstekst ST2 It-sikkerhedstekst ST2 Overvejelser om sikring mod, at personoplysninger kommer til uvedkommendes kendskab i forbindelse med Denne tekst må kopieres i sin helhed med kildeangivelse. Dokumentnavn: ST2 Version

Læs mere

Sporing er principielt registrering af id, sted og tid. Stregkoder og GPS er velkendte Trådløse netværk kan også sladre om position RFID fungerer

Sporing er principielt registrering af id, sted og tid. Stregkoder og GPS er velkendte Trådløse netværk kan også sladre om position RFID fungerer Sporing er principielt registrering af id, sted og tid. Stregkoder og GPS er velkendte Trådløse netværk kan også sladre om position RFID fungerer principielt som stregkoder - Det er bare radiobølger der

Læs mere

Det Rene Videnregnskab

Det Rene Videnregnskab Det Rene Videnregnskab Visualize your knowledge Det rene videnregnskab er et værktøj der gør det muligt at redegøre for virksomheders viden. Modellen gør det muligt at illustrere hvordan viden bliver skabt,

Læs mere

REGISTRERING AF TRÆNGSEL

REGISTRERING AF TRÆNGSEL REGISTRERING AF TRÆNGSEL MED BLUETOOTH Finn Normann Pedersen Jens Peder Kristensen Management Konsulent, KeyResearch Direktør, KeyResearch fnp@keyresearch.dk jpk@keyresearch.dk +45 29 89 31 16 +45 22 23

Læs mere

SILKEBORG KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2018 SKOLE OG SFO

SILKEBORG KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2018 SKOLE OG SFO SILKEBORG KOMMUNE FORÆLDRETILFREDSHEDSUNDERSØGELSE 2018 SKOLE OG SFO 1 INDHOLD Afsnit 01 Introduktion Side 03 Afsnit 02 Sammenfatning Side 05 Afsnit 03 Skoleresultater Side 07 Afsnit 04 SFO-resultater

Læs mere

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen Matematik og Computer Science Danmarks Tekniske Universitet 2800 Kgs. Lyngby Danmark Email: bfni@dtu.dk Dagens emner afsnit 6.1 og 6.2 Betingede diskrete

Læs mere

Referencelaboratoriet for måling af emissioner til luften

Referencelaboratoriet for måling af emissioner til luften Referencelaboratoriet for måling af emissioner til luften Rapport nr.: 77 Titel Hvordan skal forekomsten af outliers på lugtmålinger vurderes? Undertitel - Forfatter(e) Arne Oxbøl Arbejdet udført, år 2015

Læs mere

Mikro-kursus i statistik 1. del. 24-11-2002 Mikrokursus i biostatistik 1

Mikro-kursus i statistik 1. del. 24-11-2002 Mikrokursus i biostatistik 1 Mikro-kursus i statistik 1. del 24-11-2002 Mikrokursus i biostatistik 1 Hvad er statistik? Det systematiske studium af tilfældighedernes spil!dyrkes af biostatistikere Anvendes som redskab til vurdering

Læs mere

Bredbånd. Vejledning til opsætning af bredbåndsmodem Pace V5500

Bredbånd. Vejledning til opsætning af bredbåndsmodem Pace V5500 Bredbånd Vejledning til opsætning af bredbåndsmodem Pace V5500 120911 Indhold Kapitel 1 Kom godt i gang Introduktion Klargør udstyr til installation Find en passende placering Kapitel 2 Installer dit bredbåndsmodem

Læs mere

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen Matematik og Computer Science Danmarks Tekniske Universitet 2800 Kgs. Lyngby Danmark Email: bfni@dtu.dk Dagens emner afsnit 6.1 og 6.2 Betingede diskrete

Læs mere

HVAD ER NÆSTE SKRIDT OG HVAD FINDES DER AF LØSNINGER?

HVAD ER NÆSTE SKRIDT OG HVAD FINDES DER AF LØSNINGER? HVAD ER NÆSTE SKRIDT OG HVAD FINDES DER AF LØSNINGER? ANDERS KRØJMAND HUMLE SMART BRUG AF DATA KAN VI OPTIMERE PÅ AFFALDSHÅNDTERINGEN? DAKOFA, 28. FEBRUAR 2018 1 Agenda Kort gennemgang af hovedkonklusioner

Læs mere

Projektevaluering. Caretech Innovation. Projekt Mobiladgang for læger og andet sundhedspersonale (C-47)

Projektevaluering. Caretech Innovation. Projekt Mobiladgang for læger og andet sundhedspersonale (C-47) 1 Projektevaluering Caretech Innovation Projekt Mobiladgang for læger og andet sundhedspersonale (C-47) Deltagere/partnere: Systematic A/S Regionshospitalet Randers og Grenå Caretech Innovation Dato: 8.

Læs mere

2 Markedsundersøgelse

2 Markedsundersøgelse 2 Markedsundersøgelse Når man overvejer at lancere et nyt produkt, er det nødvendigt at foretage en undersøgelse af markedet, så man kan danne sig et overblik over de muligheder markedet byder på, og de

Læs mere

ADFÆRDS - OG BEVÆGELSESMØNSTRE MIDDELALDERFESTIVAL D AUGUST. Nøgletal på personbevægelser målt under Middelalderfestivallen.

ADFÆRDS - OG BEVÆGELSESMØNSTRE MIDDELALDERFESTIVAL D AUGUST. Nøgletal på personbevægelser målt under Middelalderfestivallen. ADFÆRDS - OG BEVÆGELSESMØNSTRE MIDDELALDERFESTIVAL D. 24. 25. AUGUST Nøgletal på personbevægelser målt under Middelalderfestivallen. ADFÆRDS - OG BEVÆGELSESMØNSTRE MIDDELALDERFESTIVAL 2018 INDHOLD FORMÅL

Læs mere

Manual til administration af online booking

Manual til administration af online booking 2016 Manual til administration af online booking ShopBook Online Med forklaring og eksempler på hvordan man konfigurerer og overvåger online booking. www.obels.dk 1 Introduktion... 4 1.1 Formål... 4 1.2

Læs mere

Læring af test. Rapport for. Aarhus Analyse Skoleåret

Læring af test. Rapport for. Aarhus Analyse  Skoleåret Læring af test Rapport for Skoleåret 2016 2017 Aarhus Analyse www.aarhus-analyse.dk Introduktion Skoleledere har adgang til masser af data på deres elever. Udfordringen er derfor ikke at skaffe adgang

Læs mere

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen Sandsynlighedsregning 0. forelæsning Bo Friis Nielsen Matematik og Computer Science Danmarks Tekniske Universitet 800 Kgs. Lyngby Danmark Email: bfni@dtu.dk Dagens emner afsnit 6. og 6. Betingede diskrete

Læs mere

Hvad skal du vide for at bygge din egen computer?

Hvad skal du vide for at bygge din egen computer? Hvad skal du vide for at bygge din egen computer? Kender du alle de her dele og hvad de gør godt for? Er du mellem 11 og 16 år, og tænker på at sammensætte din egen computer? Så er denne her guide lige

Læs mere

10 gode grunde. - derfor skal du vælge Office365

10 gode grunde. - derfor skal du vælge Office365 10 gode grunde - derfor skal du vælge Office365 1. Bedre samarbejde på tværs af lokationer En stor del af arbejdsstyrken tilbringer i dag langt mere tid væk fra deres kontor end hidtil. Dine ansatte kan

Læs mere

Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium

Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium Deskriptiv (beskrivende) statistik er den disciplin, der trækker de væsentligste oplysninger ud af et ofte uoverskueligt materiale. Det sker f.eks. ved at konstruere forskellige deskriptorer, d.v.s. regnestørrelser,

Læs mere

Fase to af Borgerstilfredshedsundersøgelsen på Jobcenter Rebild

Fase to af Borgerstilfredshedsundersøgelsen på Jobcenter Rebild Fase to af Borgerstilfredshedsundersøgelsen på Jobcenter Rebild 2015 Indholdsfortegnelse 1. Indledning...3 2. Undersøgelsens resultater. 4 3. Vurdering af den telefoniske kommunikation..5 4. Vurdering

Læs mere

FORÆLDRETILFREDSHED 2016 DAGTILBUD GLADSAXE KOMMUNE

FORÆLDRETILFREDSHED 2016 DAGTILBUD GLADSAXE KOMMUNE FORÆLDRETILFREDSHED 2016 DAGTILBUD GLADSAXE KOMMUNE 1 INDHOLD 01 Introduktion 02 Læsevejledning 03 Samlede resultater 04 Resultater på tværs 05 Prioriteringskort 06 Metode 2 01. INTRODUKTION Forældretilfredsheden

Læs mere

Kommunikation og teknologi

Kommunikation og teknologi Kommunikation og teknologi Niveau: 8. klasse Varighed: 6 lektioner Præsentation: Forløbet Kommunikation er placeret i fysik-kemifokus.dk 8. klasse, men det er muligt at arbejde med forløbet både i 7.,

Læs mere

Positionering og tracking

Positionering og tracking Click to edit Master title style Positionering og tracking Teknologier og anvendelser Jakob Fredslund, Alexandra Instituttets Pervasive Positioning Lab Click to edit Master title style Dagens Teknologi

Læs mere

Bilag 6: Bootstrapping

Bilag 6: Bootstrapping Bilag 6: Bootstrapping Bilaget indeholder en gennemgang af bootstrapping og anvendelsen af bootstrapping til at bestemme den konkurrencepressede front. FORSYNINGSSEKRETARIATET FEBRUAR 2013 INDLEDNING...

Læs mere

Af Susanne Høiberg, HØIBERG A/S

Af Susanne Høiberg, HØIBERG A/S Af Susanne Høiberg, HØIBERG A/S Det er en almindelig misforståelse, at blot man har patentbeskyttet sin produktion, så kan den også lovligt komme på markedet. Mange virksomheder med forskning og udvikling

Læs mere

En statistikstuderendes bekendelser Søren Wengel Mogensen

En statistikstuderendes bekendelser Søren Wengel Mogensen Oplysning 23 En statistikstuderendes bekendelser Søren Wengel Mogensen Om at skrive BSc-opgave i anvendt statistik. Der findes matematikere (i hvert fald matematikstuderende), der mener, at den rene matematik

Læs mere

Seriediagrammer - Guide til konstruktion i LibreOffice Calc

Seriediagrammer - Guide til konstruktion i LibreOffice Calc Seriediagrammer - Guide til konstruktion i LibreOffice Calc På forbedringsvejlederuddannelsen anvender vi seriediagrammer til at skelne mellem tilfældig og ikketilfældig variation. Med et seriediagram

Læs mere

Til vurderingen af en tjenestes indvirkning på markedet vil det være relevant at tage udgangspunkt i de følgende fem forhold:

Til vurderingen af en tjenestes indvirkning på markedet vil det være relevant at tage udgangspunkt i de følgende fem forhold: Værditest: Generelle retningslinier for vurdering af nye tjenesters indvirkning på markedet Denne vejledning indeholder retningslinier for den vurdering af en planlagt ny tjenestes indvirkning på markedet,

Læs mere

Accelerace og Green Tech Center kommer nu med et unikt tilbud om udvikling af din virksomhed Green Scale Up

Accelerace og Green Tech Center kommer nu med et unikt tilbud om udvikling af din virksomhed Green Scale Up Accelerace og Green Tech Center kommer nu med et unikt tilbud om udvikling af din virksomhed Green Scale Up Accelerace har gennem de seneste 7 år arbejdet tæt sammen med mere end 250 af de mest lovende

Læs mere

Resonans 'modes' på en streng

Resonans 'modes' på en streng Resonans 'modes' på en streng Indhold Elektrodynamik Lab 2 Rapport Fysik 6, EL Bo Frederiksen (bo@fys.ku.dk) Stanislav V. Landa (stas@fys.ku.dk) John Niclasen (niclasen@fys.ku.dk) 1. Formål 2. Teori 3.

Læs mere

TUNGE SKILLEVÆGGE PÅ FLERE LAG TRYKFAST ISOLERING. Input Betondæk Her angives tykkelsen på dækket samt den aktuelle karakteristiske trykstyrke.

TUNGE SKILLEVÆGGE PÅ FLERE LAG TRYKFAST ISOLERING. Input Betondæk Her angives tykkelsen på dækket samt den aktuelle karakteristiske trykstyrke. pdc/jnk/sol TUNGE SKILLEVÆGGE PÅ FLERE LAG TRYKFAST ISOLERING Indledning Teknologisk Institut, byggeri har for Plastindustrien i Danmark udført dette projekt vedrørende bestemmelse af bæreevne for tunge

Læs mere

Oplæg til første-behandling af kandidat-uddannelsen i Sundhedsteknologi i S-studienævnet:

Oplæg til første-behandling af kandidat-uddannelsen i Sundhedsteknologi i S-studienævnet: Oplæg til første-behandling af kandidat-uddannelsen i Sundhedsteknologi i S-studienævnet: Kandidatuddannelsens overordnede struktur foreslået af arbejdsgruppen: Sem Modul ECTS 1. Tema: Eksperimentel forskning

Læs mere

look at Calibration

look at Calibration Take a look at Calibration Kalibrering er en samling af handlinger som, under specifikke betingelser, etablerer forholdet mellem værdier fra et måleinstrument eller målesystem, eller værdier fra et referencemateriale

Læs mere

Interferens. Afstand (d interferer ) til det interfererende System. Afstand (d) mellem sender og modtager

Interferens. Afstand (d interferer ) til det interfererende System. Afstand (d) mellem sender og modtager Interferens Interferens er et alvorligt problem for short range enheder, men der er muligheder for at teste resistensen over for interferensen. I denne artikel beskrives nogle af de konsekvenser og scenarier,

Læs mere

Projektarbejde med scrum- metoden

Projektarbejde med scrum- metoden Projektarbejde med scrum- metoden Indhold Indhold... 1 1 Indledning... 2 2 Roller og terminologi i scrum... 3 Opgavestilleren... 3 Scrum Masteren... 3 Projektgruppen... 3 Sprint... 3 3 Møder... 3 Planlægningsmødet...

Læs mere

KURSER INDENFOR SOA, WEB SERVICES OG SEMANTIC WEB

KURSER INDENFOR SOA, WEB SERVICES OG SEMANTIC WEB KURSER INDENFOR SOA, WEB SERVICES OG SEMANTIC WEB Det er Web Services, der rejser sig fra støvet efter Dot Com boblens brag. INTRODUKTION Dette dokument beskriver forslag til fire moduler, hvis formål

Læs mere

Notat om underleverandører af software til medicinsk udstyr Specielt med fokus på fortolkere, hvor nyt udstyr let kan genereres

Notat om underleverandører af software til medicinsk udstyr Specielt med fokus på fortolkere, hvor nyt udstyr let kan genereres December 2018 Notat om underleverandører af software til medicinsk udstyr Specielt med fokus på fortolkere, hvor nyt udstyr let kan genereres Af Carsten Jørgensen FORCE Technology Venlighedsvej 4 2970

Læs mere

Eksempel Multipel regressions model Den generelle model Estimation Multipel R-i-anden F-test for effekt af prædiktorer Test for vekselvirkning

Eksempel Multipel regressions model Den generelle model Estimation Multipel R-i-anden F-test for effekt af prædiktorer Test for vekselvirkning 1 Multipel regressions model Eksempel Multipel regressions model Den generelle model Estimation Multipel R-i-anden F-test for effekt af prædiktorer Test for vekselvirkning PSE (I17) ASTA - 11. lektion

Læs mere

Brugeradfærd i idræts- og kulturhuse - Målinger med RFID teknologi Suenson, Valinka

Brugeradfærd i idræts- og kulturhuse - Målinger med RFID teknologi Suenson, Valinka Aalborg Universitet Brugeradfærd i idræts- og kulturhuse - Målinger med RFID teknologi Suenson, Valinka Publication date: 2011 Document Version Accepteret manuscript, peer-review version Link to publication

Læs mere

Bilag 4. Planlægningsmodeller til IBSE

Bilag 4. Planlægningsmodeller til IBSE Bilag 4 Planlægningsmodeller til IBSE I dette bilag præsenteres to modeller til planlægning af undersøgelsesbaserede undervisningsaktiviteter(se figur 1 og 2. Den indeholder de samme overordnede fire trin

Læs mere

look at Calibration

look at Calibration Take a look at Calibration Kalibrering er en samling af handlinger som, under specifikke betingelser, etablerer forholdet mellem værdier fra et måleinstrument eller målesystem, eller værdier fra et referencemateriale

Læs mere

Den menneskelige cochlea

Den menneskelige cochlea Den menneskelige cochlea Af Leise Borg Leise Borg er netop blevet cand.scient. Artiklen bygger på hendes speciale i biofysik Introduktion Hørelsen er en vigtig sans for mennesket, både for at sikre overlevelse,

Læs mere

Professional Series bevægelsesdetektorer Ved, hvornår alarmen skal lyde. Ved, hvornår den ikke skal.

Professional Series bevægelsesdetektorer Ved, hvornår alarmen skal lyde. Ved, hvornår den ikke skal. Professional Series bevægelsesdetektorer Ved, hvornår alarmen skal lyde. Ved, hvornår den ikke skal. Nu med Antimask teknologi, flere zoner og spraydetektering Uovertrufne Bosch teknologier forbedrer detekteringsevnen

Læs mere

INSTALLATIONS GUIDE. Waoo Smart WiFi FIBERBREDBÅND TV TELEFONI

INSTALLATIONS GUIDE. Waoo Smart WiFi FIBERBREDBÅND TV TELEFONI INSTALLATIONS GUIDE Waoo Smart WiFi FIBERBREDBÅND TV TELEFONI PAKKENS INDHOLD Tjek, at det hele er der, før du går i gang med installationen. 2 x trådløse enheder 2 x strømforsyninger 2 x netværkskabler

Læs mere

BESLUTNINGSBARRIEREN ER HØJERE

BESLUTNINGSBARRIEREN ER HØJERE At lave innovation og tænke nye forretningsområder kræver et velfunderet grundlag, der sikre kendskab til målgruppens behov og forretningens strategiske mål. Det er vigtigt at være sin position bevidst

Læs mere

ADBLOCK 2018 I DANMARK. Udarbejdet af AW Media

ADBLOCK 2018 I DANMARK. Udarbejdet af AW Media ADBLOCK 2018 I DANMARK Udarbejdet af AW Media INTRODUKTION Hvordan ser danskernes adblock tendenser ud i år 2018? Det har AW Media sat sig for at undersøge. I rapporten præsenteres et kombineret billede

Læs mere

ScanOBS nyhedsbrev. Dato: 4. maj 2018

ScanOBS nyhedsbrev. Dato: 4. maj 2018 NYHEDSBREV 1-2018 www..dk ScanOBS nyhedsbrev Dato: 4. maj 2018 Jeg fremsender hermed nyhedsbrev for ScanOBS, der omhandler de seneste ændringer i ScanOBSprogrammerne, og jeg vil samtidigt benytte lejligheden

Læs mere

Notat om værdisætning ved opsummeringer

Notat om værdisætning ved opsummeringer Bilag 9 Notat om værdisætning ved opsummeringer ved Ekspertgruppens sekretariat September 2008 Bilag til Ekspertgruppens anbefalinger til videreudvikling af Sundhedskvalitet www.sundhedskvalitet.dk N O

Læs mere

Pointen med Funktioner

Pointen med Funktioner Pointen med Funktioner Frank Nasser 0. april 0 c 0080. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er en

Læs mere

Studieretningsprojekter i machine learning

Studieretningsprojekter i machine learning i machine learning 1 Introduktion Machine learning (ml) er et område indenfor kunstig intelligens, der beskæftiger sig med at konstruere programmer, der kan kan lære fra data. Tanken er at give en computer

Læs mere

INSTALLATIONS GUIDE. Waoo Smart WiFi Air 4920 FIBERBREDBÅND TV TELEFONI

INSTALLATIONS GUIDE. Waoo Smart WiFi Air 4920 FIBERBREDBÅND TV TELEFONI INSTALLATIONS GUIDE Waoo Smart WiFi Air 4920 FIBERBREDBÅND TV TELEFONI KÆRE KUNDE Med dette sæt trådløse access points får du et af markedets bedste produkter til at sikre optimal WiFi-dækning i dit hjem.

Læs mere

Baggrundsnotat: Søskendes uddannelsesvalg og indkomst

Baggrundsnotat: Søskendes uddannelsesvalg og indkomst 17. december 2013 Baggrundsnotat: Søskendes uddannelsesvalg og indkomst Dette notat redegør for den økonometriske analyse af indkomstforskelle mellem personer med forskellige lange videregående uddannelser

Læs mere

TOTALVÆRDI INDEKLIMA DOKUMENTATION

TOTALVÆRDI INDEKLIMA DOKUMENTATION & TOTALVÆRDI INDEKLIMA DOKUMENTATION Til understøtning af beregningsværktøjet INDHOLDSFORTEGNELSE Introduktion 01 Beregningsværktøj - temperatur 02 Effect of Temperature on Task Performance in Office

Læs mere

Netværksalgoritmer 1

Netværksalgoritmer 1 Netværksalgoritmer 1 Netværksalgoritmer Netværksalgoritmer er algoritmer, der udføres på et netværk af computere Deres udførelse er distribueret Omfatter algoritmer for, hvorledes routere sender pakker

Læs mere

Deep Learning. Muligheder og faldgruber. Glenn Gunner Brink Nielsen, Teknologisk Institut

Deep Learning. Muligheder og faldgruber. Glenn Gunner Brink Nielsen, Teknologisk Institut Deep Learning Muligheder og faldgruber Glenn Gunner Brink Nielsen, Teknologisk Institut Deep Learning en klar succes! Siden de første convolutional netværk blev indført i 2012 har de domineret denne opgave.

Læs mere

Landmålingens fejlteori - Lektion 2. Sandsynlighedsintervaller Estimation af µ Konfidensinterval for µ. Definition: Normalfordelingen

Landmålingens fejlteori - Lektion 2. Sandsynlighedsintervaller Estimation af µ Konfidensinterval for µ. Definition: Normalfordelingen Landmålingens fejlteori Lektion Sandsynlighedsintervaller Estimation af µ Konfidensinterval for µ - rw@math.aau.dk Institut for Matematiske Fag Aalborg Universitet En stokastisk variabel er en variabel,

Læs mere

Brugervejledning. TDC Scale Assistent til iphone. Copyright NOMADICCIRCLE 2010-2012 All rights reserved

Brugervejledning. TDC Scale Assistent til iphone. Copyright NOMADICCIRCLE 2010-2012 All rights reserved TDC Scale Assistent til iphone Copyright NOMADICCIRCLE 2010-2012 All rights reserved Revision Date 1 kw 20101128 Initial version 2 kw 20101201 Stavefejl og layout rettelser 3 kw 20101202 FAQ udvidet 4

Læs mere

1 Regressionsproblemet 2

1 Regressionsproblemet 2 Indhold 1 Regressionsproblemet 2 2 Simpel lineær regression 3 2.1 Mindste kvadraters tilpasning.............................. 3 2.2 Prædiktion og residualer................................. 5 2.3 Estimation

Læs mere

Bedre bredbånd i Herslev og Kattinge.

Bedre bredbånd i Herslev og Kattinge. Bedre bredbånd i Herslev og Kattinge. Baggrund De eksisterende bredbåndsmuligheder, som enten er eller fastnet via TDC s telefonkabler (PSTN-net) med lave båndbredder (fra under 1 Mbit og op til maks.

Læs mere

Stokastiske processer og køteori

Stokastiske processer og køteori Stokastiske processer og køteori 9. kursusgang Anders Gorst-Rasmussen Institut for Matematiske Fag Aalborg Universitet 1 OPSAMLING EKSAKTE MODELLER Fordele: Praktiske til initierende analyser/dimensionering

Læs mere

BONUSINFORMATIONER i forbindelse med emnet Billeder og grafik

BONUSINFORMATIONER i forbindelse med emnet Billeder og grafik BONUSINFORMATIONER i forbindelse med emnet Billeder og grafik Dette dokument indeholder yderligere informationer, tips og råd angående: Tabelfunktionen SmartArtfunktionen Billedfunktionen Samt en ekstra

Læs mere

Mindste kvadraters tilpasning Prædiktion og residualer Estimation af betinget standardafvigelse Test for uafhængighed Konfidensinterval for hældning

Mindste kvadraters tilpasning Prædiktion og residualer Estimation af betinget standardafvigelse Test for uafhængighed Konfidensinterval for hældning 1 Regressionsproblemet 2 Simpel lineær regression Mindste kvadraters tilpasning Prædiktion og residualer Estimation af betinget standardafvigelse Test for uafhængighed Konfidensinterval for hældning 3

Læs mere