• No results found

4 Utvärdering

4.5 Summering av manuella tester

Test ID Krav Namn Heatmap Polygon Circles

A1.1 A1 Ett obesökt område skiljer sig ifrån ett besökt

Godkänt Godkänt Godkänt

A2.1 A2 En ny koordinat

visualiseras i rött

Icke Godkänd

Godkänt Godkänt

A2.2 A2 En gammal koordinat visualiseras i blått

Icke Godkänd

Godkänt Godkänt

T2.1 T2 En koordinat visas med omkrets

Godkänt Icke Godkänd

Godkänt

T2.2 T2 Synhållsradien är konstant Icke Godkänd

Godkänt Godkänt

Tabell 4.5: ​Tabellen visar det sammanställda resultatet för tester körda på samtliga visualiseringsverktyg.

5 Diskussion

Under detta examensarbetets gång har målen (avsnitt 1.5) använts för att guida arbetet fram till ett slutresultat. De mål som sattes upp visas i figur 5.1.

M1 Undersök visualiseringstekniker

M2 Bestäm hur koordinatdata ska samlas in M3 Samla in koordinatdata

M4 Implementera visualiseringsmiljö

M5 Implementera den valda visualiseringstekniken M6 Testa den valda tekniken i visualiseringsmiljön M7 Testa tekniken mot kraven

M8 Analysera resultatet. Om det behövs, ta fram en ny visualiseringsteknik och iterera tillbaka till mål M5.

Tabell 5.1:​ ​Tabellen visar målen för detta examensarbete.

Arbetet började med att undersöka vilka visualiseringstekniker för kartverktyg som kunde vara till nytta. Där fanns heatmap som den starkaste kandidaten. Efter att ha skapat en överblick över vilka möjligheter som fanns för att visualisera besök, togs en plan fram för hur koordinatdata skulle samlas in och det val som gjordes var att klicka fram koordinater på kartan med muspekaren. Det fungerade bra och det gick fort att skapa nya dataset, eftersom ingen behövde förflytta sig mella de olika platserna, utan all data kunde samlas in framför datorn.

Implementationen av miljön innebar att en applikation skapades som kunde offentliggöra data från Google Maps API. Implementationen innehöll det som behövdes för att utforska verktygen i Google Maps API. Därför skapades inget användargränssnitt med tillhörande funktioner.

För att uppfylla kraven (Avsnitt 2.1) som ställts till frågeställningen i detta examensarbete behövde tre iterationer exekveras. Varje iteration innehöll målen för att implementera den valda visualiseringstekniken, testa tekniken, se över hur tekniken klarade målen och sedan avgöra om en ny teknik behövde undersökas eller om arbetets resultat var lyckat. Efter tre iterationer lyckades alla tester (Bilaga A) som skrivits till kraven. Varje iteration diskuteras i detta avsnitt.

5.1 Iteration 1, Heatmaps

I iteration 1 implementerades ett heatmap-lager i på kartan som var framtagen genom Google Maps API och renderades i den utvecklade miljön. Med de designval och verktyg som användes för att genomföra första iterationen i detta examensarbete, gick det inte att uppfylla frågeställningen.

Frågeställningen syftar till att hitta en lösning till hur det går att visualisera på en karta huruvida ett område är avsökt eller inte, vilket fallerade på flera punkter i testerna.

Google Maps heatmap har ställbara värden för att styra storleken på omkretsen runt en koordinat, vilket var tänkt att användas till att styra synhållsradien. Omkretsen på Google Maps heatmaps styrs efter pixelstorlek och inte efter metriska eller andra mätvärden som kan appliceras på fysiska ytor. Att pixlar på skärmen är referenspunkten för heatmaps gör att markerade ytor inte blir skalenliga med platsen som kartan visar. Därför kunde inte heatmaps användas för att styra storlekar på ett användbart vis till det faktiska syftet. Det gör det väldigt svårt att ställa in den faktiska synhållsradien i användbara mått. Om kartan byter skala genom zoom kommer synhållsradien byta storlek.

Färgläggningen av Google Maps heatmap är inte heller anpassad för att färga specifika koordinater efter syftet att visualisera tid. Färgläggningen ändras efter ett viktvärde. Viktvärdet avtar i takt med antalet pixlar från mittpunkten. Viktvärdets uppförande är orsaken till att varken den koordinat med den senaste tidsstämpeln eller den med den äldsta tidsstämpeln visas på önskat vis. Nya koordinater kommer att byta färg mot utkanten och efterlikna färgen på en koordinat med en gammal tidsstämpel, medans de koordinater med den absolut äldsta tidsstämpeln kommer att helt tappa färgläggning när vikten blir för låg. Det är möjligt viktvärderna går att ställa för att visa en

starkare blå färg på de äldsta koordinaterna, men det ser ut att vara ofrånkomligt att de senaste koordinaterna avtar till en annan färg i utkanten.

I det tidigare nämnda arbetet i 1.2.2 där sannolikhet för vart en försvunnen person kan befinna sig i Yosemite National Park i USA undersöks [9], skulle detta examensarbete kunna användas som hjälp om färgerna och synhållsradiens skala hade fungerat efter kraven. Det kommer dock inte gå att på ett pålitligt sätt kunna applicera tekniken heatmaps från denna iteration på deras uträkningar i ett skarpt läge, eftersom visualiseringen hade visat missvisande tid när ytterkanten, oavsett tidpunkt, alltid kommer ha samma färg som de områden som söktes av för en lång tid sedan. Sedermera hade utgångspunkten med den äldsta genomsökta platsen, börjat försvinna och visualiseringen hade visat antydan på att platsen aldrig blivit besökt.

I den kvalitativa studien som undersöker användares uppfattning av heatmaps och färgläggning av heatmaps [11], som nämns i 1.2.3, visar de på ett positivt resultat av att använda flerfärgade heatmaps. Denna studie visualiserar dock antalet personer som befinner sig på en plats, snarare än tidpunkten den besöktes. Det är med stor sannolikhet den avgörande faktorn till att den studien upplever högre användbarhet av Google Maps heatmaps.

Färgen kan nämligen avta i utkanterna av vart personer befinner sig, utan att verka missvisande.

5.2 Iteration 2, Polygons

I iteration 2 implementerades istället ett polygon lager, i förhoppning att ge ett bättre resultat än heatmaps. Polygon lagret visade sig vara bättre i att uppfylla testernas kriterier men ett krav kunde inte uppfyllas. Det test som misslyckades var test T2.1 (Bilaga B.2) som manuellt testar om det finns en omkrets runt omkring den utplacerade koordinaten som visualiserar en

synhållsradie.

Polygonernas ytterkant lyckades inte förstoras så att de tog hänsyn till den omkrets runt koordinaten som skulle visualisera synhållsradien. Försöket att hitta information om hur en polygon kan förstoras, misslyckades och den yttre kanten kunde därför inte anpassas efter synhållsradien. Att ta hänsyn till synhållsradien mellan koordinater och gruppera efter avstånd gick mycket bättre.

Att ta hänsyn till synhållsradien mellan koordinater i polygonen lyckades tack vare två utomstående verktyg. Modulen ​concaveman [25] gjorde det möjligt att hitta de positioner som var ytterst av i en grupp koordinater och spara dem. Det var de yttre koordinaterna som användes för att skapa en polygon (Avsnitt 3.6.2.2). Avståndet mellan koordinater kunde räknas ut i meter tack vare en algoritm från forumet Stack Overflow [26]. Denna algoritmen var den som användes för att med hjälp av en egen algoritm gruppera de koordinater som låg nära varandra (Avsnitt 3.6.2.1).

Eftersom polygoner är grupper med flera koordinater behövdes också koordinaterna i datasetet grupperas efter tid. I detta examensarbete grupperades koordinaterna efter vilken timme de hade i sin tidsstämpel. Det gjorde det möjligt att färglägga polygonerna, vilket i sin tur gjorde det möjligt att visualisera den kronologiska ordningen som platser varit besökta.

I arbetet som omskrivs i avsnitt 1.2.2 där sannolikhet för vart en försvunnen person kan befinna sig i Yosemite National Park i USA undersöks [9], skulle eventuellt denna implementation kunna användas om det inte är ett krav för en yttre synhållsradie. Arbetet räknar ut sannolikheten för vart personer befinner sig beroende på tiden efter försvinnandet. Det är inte säkert att den yttre synhållsradien spelar jättestor roll vid sökning på ett så stort område som Yosemite National Park. Eftersom avståndet mellan koordinater räknas ut och grupperas, hade områden fortfarande kunnat

markeras som genomsökta. Polygonerna hade i ett verkligt läge, visat vilka områden koordinater finns med inom ett önskat avstånd till varandra.

5.3 Iteration 3, Circles

Eftersom testet T2.1 inte lyckades i iteration två, skapades iteration 3 (Avsnitt 3.5.3), där Google Maps Circles (Avsnitt 1.1.8) användes. Circles-tekniken i iteration 3 kunde uppfylla alla tester.

Circles-tekniken i Google Maps API tar varje koordinat i datasetet och markerar ut den med en cirkel runt om. Cirklarna färglades från blått till rött i ordningen för koordinaternas tidsstämplar (Avsnitt 3.6.3.2). Färgläggningen av cirklarna gjorde det möjligt visualisera både synhållsradien och den kronologiska som koordinaterna markerats ut. Däremot grupperas inte markeringar samman och områden blir därför inte markerade utan koordinaten blir markerad.

Ett helt genomsökt område kommer många cirklar istället för exempelvis en stor markering. Cirklarna kommer visa vilka platser som är genomsökta, men i ett verkligt läge skulle en vy med exempelvis polygoner kunna skapa en starkare överblick eftersom de färglagda områdena blir färre, vilket skulle kunna göra det lättare att se en tydligt vilka områden som är helt genomsökt och vilka som inte är helt genomsökta. Polygoner fyller också i större områden och det skulle därför kunna vara enklare att se vilka områden som är helt genomsökta och vart yttre kanten av det genomsökta området är.

Circles-tekniken skapar trots de många cirklarna en god översikt över besökta platsen. Att använda circles-tekniken skulle mycket väl kunna komma till användning vid en sökoperation.

6 Sammanfattning

Detta examensarbete har skapat en klarare bild av vad som krävs för att visualisera områden och hur de är genomsökta. Med det valda tillvägagångssättet och valen av tekniker som testas i iterationerna går det att uppfylla de satta kraven för frågeställningen.

Heatmap-verktyget som implementerades i iteration 1, lyckades inte uppfylla någon av de två problemställningarna (Avsnitt 1.3).

Heatmaps-verkyget lyckades inte visualisera historisk positionsdata för att skapa en tydlig översikt över ett genomsökt område. I denna iteration lyckades inte heller att visualisera, med Google Maps API, vilka platser som är genomsökta och i vilken ordning. Heatmaps-verktyget hade problem med att hålla en konstant synhållsradie när kartan skalades om vid in- eller ut-zoomning. Det hade varit intressant att testa hur det hade varit möjligt att låsa storleken på kartan så att området får en konstant relation till pixlarna.

Det hade eventuellt kunnat gå att räkna ut det fysiska avståndet per pixel och sen styra en mer relevant synhållsradie efter det. Risken är dock stor att det hade lett till komplikationer och eventuellt skapat andra osäkerheter. Det hade också kunnat ta en för stor del av tiden i arbetet och tagit fokus från de andra iterationerna som utfördes för att testa andra tekniker. Det hade inte heller löst problemen med färgläggning i heatmaps-lagret.

Det är möjligt att om ett annat val än Google Maps som kartteknik kan uppfylla det önskade resultatet med heatmaps om tekniken har mer ställbara mätvärden som går att applicera på geografiska platser. Med en teknik med fler verktyg för färgläggningen av heatmaps, där det går att styra färg per koordinat, skulle kunna resultera i att det går att avgöra ordningen på när koordinaten besöktes. Med en teknik där storleken på omkretsen av den besökta platsen går att ställa efter värden som är applicerbara på den fysiska

platsen hade det kunnat gå att visualisera en sökradie som är relevant.

Circles-verktyget klarade alla tester som skapats för att uppnå kraven i avsnitt 2.1. Med denna teknik kunde problemställningen besvaras positivt (Avsnitt 1.3). Historisk positionsdata kunde visualiseras för att skapa en tydlig översikt över ett genomsökt område. Det gick också med circles-tekniken att visualisera vilka platser som är genomsökta och i vilken ordning, med Google Maps API. Tekniken kunde visualisera koordinater med en omkrets runt om och cirklarna kan ha olika färger. De olika färgerna används i detta examensarbete för att visualisera tid. Circles-verktyget skapar en god bild över vilka platser som är besökta. På grund av att det är många cirklar, skulle det kunna vara något svårare att enkelt se precis hur området är avsökt. I jämförelse men polygonerna, där det är få och stora objekt kan circles framstå som något rörigare. Dock klarar circles-verktyget att visualisera synhållsradien, vilket polygonverktyget inte klarade.

Polygonernas yttre kant skulle med stor sannolikhet kunna förstoras med rätt algoritm. Ingen relevant algoritm för ändamålet hittades under detta examensarbetes gång. Om en sådan algoritm hade kunnat implementeras hade även iteration 2, där polygonerna implementerades, kunnat svara på problemställningen om hur historisk positionsdata kan bli visualiserad för att skapa en tydlig översikt över ett genomsökt område (Avsnitt 1.3). Det är möjligt att personer med goda matematiska kunskaper kan lösa problemet.

Frågeställningen har väldigt lite liknande forskning och i detta examensarbete har tekniker testats som visats kunna användas att använda till att besvara frågeställningen. Informationen som är framtagen i detta examensarbete kommer kunna vägleda liknande forskning och skapa en klarare väg till att vidareutveckla frågeställningen eller lösa liknande problem. Eftersom lite liknande forskning fanns, användes Google Maps kartverktyg som visade på att ha hög användning. Det kan därför finnas

kartverktyg som är bättre lämpade till användning för de ändamål som detta examensarbete har. Implementationen i examensarbete kommer att kunna användas för att utveckla en produkt som visualiserar hur områden är genomsökta med GPS-koordinater. Detta examensarbete kommer också att kunna vara till hjälp när liknande forskning ska utföras och nya tekniker och verktyg ska utforskas.

Related documents