Percentage afwijkingen groter dan vijf decibel

Vergelijkbare documenten
Decimaliseren. 1.1 Vereenvoudigen Verhoudingen omzetten Afronden Oefeningen 4

Eindexamen wiskunde A 1-2 vwo I

De bepaling van de positie van een. onderwatervoertuig (inleiding)

Examen VWO. tijdvak 1 dinsdag 25 mei uur. Bij dit examen hoort een uitwerkbijlage.

11. Deelopdracht 8: Invloed stress op gezondheid

De bisectie methode uitgelegd met een makkelijk voorbeeld

INF1 // MAX // TENTAMEN 1 // v1

Modelleren C Appels. Christian Vleugels Sander Verkerk Richard Both. 2 april Inleiding 2. 3 Data 3. 4 Aanpak 3

PRAKTICUMOPGAVE 1. De eerste prakticumopgave is het maken van een applet om een "Mandelbrotfiguur" te tekenen, zoals hieronder omschreven.

Informatica: C# WPO 7

De wijde wereld in wandelen

In het internationale eenhedenstelsel, ook wel SI, staan er negen basisgrootheden met bijbehorende grondeenheden. Dit is BINAS tabel 3A.

Opleiding ELEKTROMECHANICA optie Automatisatie LAB Labo Regeltechniek KLAS: 2AUa Academiejaar

Simulink. Deel1. Figuur 1 Model van het zonnepaneel in Simulink.

Verschillenanalyse effect nieuwe BKR. Samenvatting. Inleiding. datum Directie Kinderopvang, Ministerie SZW. aan

Netwerk Interfacing Data Logging.

Exponentiële Functie: Toepassingen

Data analyse Inleiding statistiek

Kerstvakantiecursus. wiskunde A. Rekenregels voor vereenvoudigen. Voorbereidende opgaven HAVO kan niet korter

wiskunde A havo 2016-II

EXACT- Periode 1. Hoofdstuk Grootheden. 1.2 Eenheden.

PROJECT 1: Kinematics of a four-bar mechanism

Samenvatting Natuurkunde Hoofdstuk 1

1 Rekenen met gehele getallen

FEET4FEET. Ontstaan van voetklachten tijdens de. Nijmeegse Vierdaagse

Ijkingstoets industrieel ingenieur UGent/VUB, september 2015

Datum versie: 1 Mei Technische aspecten

Vermogen snelheid van de NXT

Hoe schrijf je de logaritmische waarden welke bij db s horen?

Eindexamen havo wiskunde B pilot II

Statistiek voor Natuurkunde Opgavenserie 4: Lineaire regressie

Examen HAVO. wiskunde B. tijdvak 2 woensdag 20 juni uur. Bij dit examen hoort een uitwerkbijlage.

Examen HAVO. wiskunde A. tijdvak 2 woensdag 23 juni uur

Case 1 en Simulink. 1. Diodefactor bepalen. I = I sc - I s (e!

Uitwerkingen Rekenen met cijfers en letters

Grafieken van veeltermfuncties

Tweede Kamer der Staten-Generaal

Samenvatting. Exploratieve bewegingen in haptische waarneming. Deel I: de precisie van haptische waarneming

Harmonischen: een virus op het net? FOCUS

Wetenschappelijk Rekenen

= (antwoord )

Natuurkunde havo Evenwicht Naam: Maximumscore 47. Inleiding

9. Lineaire Regressie en Correlatie

INF1 // MAX // TENTAMEN 1 // v1

Samenvatting Natuurkunde Hoofdstuk 1

DEC SDR DSP project 2017 (2)

HANDREIKING REKENEN 2F MBO

Vuistregels voor energie-efficiënte robotprogrammatie

Veranderingen Antwoorden

Elke gelijkenis met bestaande gebeurtenissen en/of personen berust op louter toeval.

wiskunde C pilot vwo 2017-I

Functie beschrijving: Het automatisch aanmaken van een raai-volgende contour

Kenniscentrum energie. Verslag: meetcampagne LT netten in glastuinbouw

FreeFlow Print Server

In de handel is het gebruikelijk om korting te geven als een klant veel exemplaren van een bepaald product bestelt.

Examen HAVO. wiskunde B (pilot) tijdvak 2 woensdag 20 juni uur. Bij dit examen hoort een uitwerkbijlage.

ONDERWIJS & ONDERZOEK

GPS. Global Positioning System, werking en toepassingen. Maarten Mennes Mei 2006.

BRUSSEL I 10 OKTOBER 2016 NIEUWSBRIEF 4. Kwaliteitskader ventilatie

Continue Modellen 4.2 Uitwerkingen

OPTIMALISATIE MET HUMMINGBIRD

Meten en experimenteren

Project Atlas - Validering van de gegevens met betrekking tot de dekking verstrekt door de mobiele operatoren

wiskunde A havo 2019-I

Informatica: C# WPO 9

Project Atlas - Validering van de gegevens met betrekking tot de dekking verstrekt door de mobiele operatoren

Onderzoek naar Opbrengst panelen met Nano coating en reiniging

TOTAALSTATION BEGIN VAN EEN METING OPSTELLEN VAN EEN TOESTEL. a b c METEN IN EEN GEKEND ASSENSTELSEL VRIJE OPSTELLING

Het gewicht van een paard

Adobe After Effects CS3 gevorderd: stabilizatie & time warp

De basisverlegging van het prijsindexcijfer van de bouwkosten van nieuwe woningen (pinw)

Eindexamen wiskunde B 1 havo I

Normering en schaallengte

Het gebruik van het blancheerrendement als indicator voor het verwerkingsrendement.

4 Optimale weegschema s

D A G 1 : T W E E D O M E I N E N

De statespace van Small World Networks

Aanvullende tekst bij hoofdstuk 1

RAPPORT PERFORMANCETEST QUESTIONMARK

ANALYSE VAN WINDSNELHEIDGEGEVENS METEOPAAL ZEEBRUGGE 1. INLEIDING

Een computerprogramma is opgebouwd uit een aantal instructies die op elkaar volgen en die normaal na elkaar uitgevoerd worden.

PROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd

Nauwkeurige dieptemetingen

ACT Algemene Intelligentie

Examen VWO. wiskunde A1 Compex. Vragen 14 tot en met 19. In dit deel van het examen staan de vragen waarbij de computer wel wordt gebruikt.

Check Je Kamer Rapportage 2014

Wetenschappelijk Instituut Volksgezondheid. Verwerking van gecensureerde waarden

OEFENINGEN PYTHON REEKS 6

wiskunde C vwo 2019-I

Onderzoek naar het hulpwerkwoord OP

Kunstrijden op de schaats

Statistiek: Spreiding en dispersie 6/12/2013. dr. Brenda Casteleyn

Feedback proefexamen Statistiek I

1. Reductie van error variantie en dus verhogen van power op F-test

TECHNISCHE UNIVERSITEIT EINDHOVEN. Tentamen OGO Fysisch Experimenteren voor minor AP (3MN10)

Eindexamen wiskunde A1 compex vwo 2007-I

Examen HAVO. Wiskunde B1

Toelichting letters (ABC s)

Meting zonnepaneel. Voorbeeld berekening diodefactor: ( ) Als voorbeeld wordt deze formule uitgewerkt bij een spanning van 7 V en 0,76 A:

Zoemzinnen. Algemene info. Functies met een variabel aantal argumenten

Transcriptie:

Om beter op zoek te kunnen gaan waar er verbeteringen kunnen toegevoegd worden aan de algoritmes heb ik een hulpfunctie gemaakt die in plaats van het interpoleren tussen fingerprints slechts de positie van de best matchende fingerprint teruggeeft. Dit zal later ook een hulpmiddel kunnen vormen bij het interpoleren. De eerste interpolatietests gaven posities die door alle fingerprints beïnvloed werden. Veraf gelegen fingerprints (in de tests in een andere ruimte) kregen een klein gewicht toegekend. Maar doordat ze veraf lagen was een klein gewicht al genoeg om de te zoeken positie ongunstig te beïnvloeden. Een voor de hand liggende oplossing voor dit probleem was om enkel rekening te houden met een vastliggend aantal fingerprints (bijvoorbeeld de best matchende vier of vijf fingerprints). Toch is deze oplossing niet altijd ideaal. Dit wordt duidelijk gemaakt in onderstaande figuur (figuur 1). Daarin zien we een opstelling met zes fingerprints. Wanneer men in het midden staat (dit is uitgedrukt in de zwarte stip) en wanneer men gaat interpoleren tussen de vier best matchende fingerprints, dan kan daar evengoed de rode als de groene positie uit gevonden worden al naargelang of de twee linkse of de twee rechtse fingerprints meer plausibel gevonden worden door het systeem. Figuur 1: De blauwe fingerprints kunnen op de zwarte positie evenzeer naar de rode als naar de groene afwijken wanneer vier fingerprints beschouwd worden. Het is intuïtief duidelijk dat we wanneer we met een relatief grote zekerheid de dichtsbijgelegen fingerprint kunnen bepalen, we dit probleem kunnen oplossen. Wanneer we de positie bekomen na het bepalen van de dichtsbijgelegen fingerprint gevonden hebben, kunnen we andere fingerprints wel of niet gaan beschouwen op basis van hun afstand tot die eerste positie. Zo zullen ook nu de veraf gelegen fingerprints het resultaat niet meer gaan beïnvloeden terwijl het systeem toch niet gebonden is aan het matchen van een vast aantal best matchende fingerprints. De eerste zorg gaat nu dus uit naar een systeem dat steeds de positie teruggeeft van de meest nabije fingerprint. Het hierboven beschreven systeem staat of valt natuurlijk met de zekerheid dat die gevonden positie correct is. Om dit na te gaan zijn er ook een aantal tests uitgevoerd om de nauwkeurigheid van het systeem te bepalen. Eerst volgt een beschrijving van het systeem om fingerprints te bepalen en hoe ze later gaan vergeleken worden. De fingerprints worden bepaald door het nemen van een aantal samples. Ten allen tijden kunnen er samples aan een fingerprint toegevoegd worden om de nauwkeurigheid te verhogen. Wat per fingerprint bijgehouden wordt is uiteraard ten eerste een positie in units (het systeem werkt in elke gewenste maat zolang er maar consequent dezelfde maat aangehouden wordt). Verder gaan van de meegegeven samples gegevens bijgehouden worden per access point. De access points worden

bepaald door hun mac-adres. Per access point wordt bijgehouden in hoeveel samples van de fingerprint een signaal van het access point binnengekregen is. Bovendien worden ook de minimale en maximale opgemeten signaalsterkte en de gemiddelde signaalsterkte van het access point bijgehouden. De eerste optimalisatie die toegevoegd is is in de opgemeten signaalsterktes. Er wordt in een History-klasse bijgehouden welke de vorige X signaalsterktes waren voor een bepaalde access point. In eerste instantie heb ik gewerkt met de laatste vijf signaalsterktes. Wanneer er nu op een bepaald moment een meting gebeurt kan deze meting (die bestaat uit een lijst van Signal-objecten, een mac-adres gekoppeld aan een gemeten signaalsterkte) aan het History-object meegegeven worden om een verbeterde meting terug te geven. Dit gebeurt in de history-klasse op twee manieren. Ten eerste wordt wanneer er een signaalsterkte te veel afwijkt van het vorige gemeten signaal (dus niet het vorige verbeterde signaal) te veel is in dit geval meer dan een vooraf bepaalde drempelwaarde dan zal in de geschiedenislijst de vorige waarde gebruikt worden in plaats van de gemeten waarde. In de tweede plaats wordt de signaalsterkte ook aangepast door het gemiddelde te nemen van de laatste X (ook dit is weer een vooraf vast te leggen waarde) sterktes in de geschiedenislijst. Een kleine aanpassing van dit systeem is om de laatste waarde een groter gewicht te geven dan de oudste nog te beschouwen waarde. Bijvoorbeeld wanneer de laatste drie signaalsterktes beschouwd moeten worden kan de waarde x i in plaats van vervangen te worden door (1/3) * (x i + x i-1 + x i-2 ) vervangen worden door (1/2) * x i + (1/3) * x i-1 + (1/6) * x i-2. Wanneer een meting nu vergeleken moet worden met een fingerprint gaat het systeem eerst elk gemeten Signal-object vergelijken met de bijgehouden informatie van het mac-adres van het Signalobject. Dit gebeurt als volgt. Wanneer een sterkte slechts een paar decibel afwijkt van het gemiddelde zal de kleinste waarde (het grootst mogelijke gewicht) toegekend worden aan het signaal. Dit is de waarde nul. Wanneer de sterkte meer afwijkt maar zich toch nog binnen het gemeten interval van het mac-adres bevindt zal een waarde tussen nul en één teruggegeven worden, hoe groter de afwijking van het gemiddelde hoe groter het getal, maar steeds kleiner dan één. Wanneer het signaal zich niet meer binnen het interval bevindt zal een getal groter dan één teruggegeven worden. Wanneer dit procédé herhaald is voor elk Signal van de meting wordt hierop een machtsverheffing uitgevoerd om de Signal's die het minst afwijken van de fingerprint belangrijker te maken. Door het getal te verkleinen, stijgt het gewicht en aangezien de minst afwijkende signalen tussen nul en één liggen zullen ze gaan verkleinen na een machtsverheffing met een exponent groter dan één, de getallen groter dan één zullen nog gaan vergroten en dus nog minder belangrijk worden in de vergelijking. Ook de exponent van deze machtsverheffing kan weer vooraf ingegeven worden. Het ingeven van deze waardes gebeurt door middel van een config-bestand. Uiteindelijk zullen al deze waardes opgeteld gaan worden en gedeeld door het aantal signalen. Aan dit algoritme zijn ondertussen twee optimalisaties toegevoegd. De eerste kwam er na de observatie dat signalen dichtbij een access point vaak nauwkeuriger zijn dan signalen veraf. Daarom is een lineaire gewichtsfunctie toegevoegd die de vergelijking van een signaal met een hoge signaalsterkte een groter gewicht geeft dan diegene met een kleine sterkte. De andere optimalisatie is het minder belangrijk maken van signalen die in de fingerprint minder gemeten samples hebben (zoals eerder gezegd wordt dit per access point bijgehouden). Het is logisch dat op een plek waar niet altijd een signaal gemeten kan worden van een bepaalde access point, de signalen hiervan minder nauwkeurig zullen zijn dan die waarvan steeds een signaal binnengekregen wordt. Nu volgt een korte bespreking van een aantal uitgevoerde tests met dit systeem. Allereerst zijn de tests die eerder reeds uitgevoerd waren herhaald met optimalisaties. De eerste tests waren het over een bepaalde tijdspanne opmeten van de sterktes steeds op een vaste afstand van het access point.

Dit keer zijn deze tests opnieuw uitgevoerd met de toen voorgestelde optimalisaties om te checken of ze hun doel bereikt hebben. In de onderstaande grafiek krijgen we een overzicht van het aantal gevallen dat een opgemeten waarde afweek van het gemiddelde. Deze test is uitgevoerd op afstanden van één tot tien meter van het access point. Voor elke afstand zijn honderd metingen beschouwd. Steeds worden de niet geoptimaliseerde waarden vergeleken met de geoptimaliseerde waarden. Percentage afwijkingen 60 55 50 45 40 35 30 25 20 15 10 5 0 Percentage afwijkingen groter dan vijf decibel 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m Afstand Normaal Geoptimaliseerd We zien dat bij de geoptimaliseerde waardes slechts één keer de grens van de tien percent afwijkingen overschreden wordt, terwijl dit bij de normale resultaten vijf keer gebeurt. Bij de geoptimaliseerde waardes wordt ook slechts op twee afstanden de gewenste grens van vijf percent overschreden. Gemiddeld werden bij deze metingen in 14,5 % van de gevallen afwijkingen groter dan vijf decibel gemeten terwijl na het optimaliseren er slechts in 2,5 % een grotere afwijking was. Dit is dus bijna zes keer beter dan de opgemeten gegevens. Er zijn ook een aantal tests uitgevoerd op het hele algoritme. In de eerste test is een beginsituatie gecreëerd van zes fingerprints op ongeveer vier à vijf meter afstand van mekaar. De fingerprints zijn weergegeven op onderstaande figuur 2: Figuur 2:Zes fingerprints van de eerste test uitgezet op een grondplan De eerste test is uitgevoerd door van de locatie van de eerste fingerprint op wandeltempo naar de locatie van de zesde fingerprint te gaan en weer terug. Door een mark in te geven in de logfile van het programma op het moment dat een nieuwe fingerprintlocatie bereikt werd kon bepaald worden wat de echte locatie was. Een locatie is in deze context één van de zes fingerprintlocaties. Deze kon dan vergeleken worden met de geschatte fingerprintlocatie. Aangezien de échte locatie steeds ergens tussen twee fingerprints in ligt is een uitkomst die één fingerprintlocatie afwijkt van de 'juiste' locatie nog als goed te beschouwen. De schattingen die meer afwijken worden als slecht

beschouwd. Op de onderstaande grafiek (figuur 3) worden in functie van de tijd de geschatte fingerprintlocaties vergeleken met de 'juiste' fingerprintlocaties. De slechte resultaten zijn aangegeven in rode kadertjes. Figuur 3: Gevonden posities vergeleken met de echte posities in functie van de tijd De tests leverden een redelijk resultaat op. Alhoewel slechts in 17,58 % van de gevallen een exacte positie verkregen werd, zijn er toch in 69,23 % van de gevallen goede resultaten bekomen. Een tweede uitgevoerde test bestond in het lopen over hetzelfde parcours maar met een halt bij elk van de fingerprintposities. Aangezien steeds de gemiddeldes genomen worden van de laatste drie metingen duurt het meestal een tweetal seconden (één meting per seconde) eer het systeem echt bij is. Dit was duidelijk te merken in de test. Wanneer bij het halthouden gecheckt werd welke fingerprint het systeem aangaf, duurde het soms een seconde of twee, maar in bijna 85 % procent van de gevallen werd dan wel degelijk de correcte fingerprint gevonden. Het is duidelijk dat in deze omstandigheden het systeem een nog beter resultaat geeft. Een laatste test gaf dan weer teleurstellendere resultaten. Het ging over een gelijkaardige test als de vorige maar met fingerprints die slechts twee tot drie meter van mekaar lagen. In deze test konden niet eens in de helft van de gevallen de juiste fingerprint aangeduid worden. En in een aantal gevallen werd zelfs een totaal verkeerd resultaat gegeven. Om dit fenomeen te counteren zou best een functie ingebouwd worden in het systeem die kan afschatten of een fingerprint voldoende afwijkt van een andere fingerprint. Dit om dergelijke resultaten te vermijden. Uiteraard zijn er dan minder nauwkeurige resultaten mogelijk. Maar ook dit kan opgelost worden. Er zal een systeem uitgewerkt worden dat hoofd- en nevenfingerprints zal nodig hebben. Deze hoofdfingerprints kunnen dan op voldoende afstand van mekaar geplaatst worden en deze kunnen dan gebruikt worden om de dichtstbij gelegen nevenfingerprints te gaan bepalen. Aangezien dan al een behoorlijk correct gebied is afgebakend, mogen de nevenfingerprints dichter bij mekaar liggen omdat uitschieters in dit afgebakend gebied niet zo'n slechte invloed zullen hebben op het resultaat. Een andere optimalisatie die voor de hand ligt is er een gebaseerd op de gemiddelde snelheid van de gebruiker. Er kan een klasse gemaakt worden die een aantal gevonden posities kan bijhouden. Als er dan een vermoedelijke gemiddelde snelheid aan meegegeven wordt kan deze klasse dan gaan bepalen of een resultaat realistisch is in vergelijking met het vorige resultaat. Bovendien kan er dan

eventueel rekening gehouden worden met een beginpositie. Indien mogelijk kan bij het opstarten van het systeem dan de huidige positie ingegeven worden.