Network Architectures and Services, Georg Carle Faculty of Informatics Technische Universität München, Germany Bachelor Thesis Visual analysis of anonymized location and movement data Supervisor: Prof. Dr.-Ing. Georg Carle Advisor: Dipl.-Inf. Johann Schlamp Timo Lamprecht 6 th Semester SS13 Bachelor Computer Science
Agenda ➢ Goals & Benefits ➢ Basics MEASRDROID, related work, 2-d-tree, k-anonymity ➢ Design ➢ Implementation ➢ Evaluation 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 2
Goals & Benefits Display of places of locations and movement tendencies Benefits: Goals: ➢ Study behaviour of people ➢ Visualization (Street map, dynamcis e.g. zoom-function, time bar) (soccer matches, demonstrations, concerts) ➢ Traffic infrastructure ➢ Further use (analysing frequently used routes) (Adaptable or expandable, generic objects) ➢ Public transportation ➢ Data management (analysing different time intervals) (Increasing amount of data, acceptable performance) ➢ Traffic planning ➢ Anonymization (adjust traffic lights) (Sensitive location data) ➢ Personal navigation (avoid rush-hour traffic) 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 3
Basics - MEASRDROID Measured and send every 15 minutes (by default) Android devices Database Server with MEASRDOID application installed Network information ● Reachable WLAN hotspots Sensor information ● Telephony information ● Gravity ● IPv4 and IPv6 routes Location information ● Gyroscope ● Position ● Humidity ● Satellite information ● Light General information ● Kernel build ● Magnetic field ● Timestamp ● Client ID 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 4
Basics - Related work Community Seismic Network ➢ Display of all participating seismic devices ➢ Visualization with rectangles ➢ Intuitive ➢ Limited number of objects ➢ Anonymization maintained? 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 5
Basics - k-anonymity Motivation: Non-anonymized data can cause massive legal problems → take anonymity seriously ➢ Consists of Identifiers, Quasi-Identifiers, Sensitive Data ➢ Each combination of Quasi-Identifiers must be merged to at least k times the same value 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 6
Basics - 2-d-tree ➢ Each node splits a plane into 2 half-planes ➢ Splitting-coordinate alternates ➢ Each leaf is a 2-dimensional point ➢ Has not to be balanced ➢ Well searchable data structure: O(log(n)) 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 7
Design 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 8
Design – Data security No sensitive data outside the database server → Prevent data leak even if web server gets compromised No access rights to database server → Database server initiates data transfer 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 9
Design – Data protection Interpretation of k-anonymity Problem : ➢ Handling of sensitive location data ➢ Avoid showing precise positions of single users (Problem: Telephone book + Single house) Solution : ➢ Show areas instead of single positions ➢ Aggregate with help k-anonymity ➢ There have to be at least k clients in an area 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 10
Design - Visualization ➢ Location analysis Rectangles to mark areas Available if there are at least k persons in the area Opacity should depend on available information for the area ➢ Movement analysis Arrows to mark directions Available if at least k persons went in the same direction Minimal length of movement (dependent on zoom level) necessary for counting Stroke weight depends on the number of clients moved 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 11
Design - 2-d-tree adaption ➢ First split at 0° west ➢ Equal sized half-planes ➢ Increasingly precise grid evolves ➢ Relation between tree level and zoom-level of street map 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 12
Implementation 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 13
Implementation - Form ➢ Data packages available on web server ➢ Dynamic data requests to minimize network traffic ➢ Data package depends on selected time settings 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 14
Implementation - 2-d-tree buildup ➢ Information aggregation in each node ➢ Calculation of all necessary information for the drawable object ➢ Recursive method ➢ Check on anonymization while build up 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 15
Implementation – File transfer Frequent Dynamic data synchronization of request via JS completely processed AJAX data files Creation of Sending data file requested data Database server Web server Client file 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 16
Evaluation 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 17
Evaluation – GPS data ➢ Overall distance travelled: 65,000 kilometres ➢ 15,000 GPS measurements available ➢ Number of satellites used per measurement: - Usually 4 satellites necessary (4 dimensions of room and time) - Average between 5 and 6 satellites - Probably measurement errors with just 2 satellites used - Measurement of 3 from 4 dimensions possible with 3 satellites - Precise position with a lot of satellites ➢ American NAVSTAR GPS consists of only 32 satellites but ~60 different and unique GPS signals measured → Ground based augmentation system used (e.g. Munich airport) 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 18
Evaluation – Location analysis High measurement density around Munich Almost no measurements in north east of Germany Run of Autobahn visible (Munich → Nuremberg → Kassel, Munich → Augsburg → Stuttgart) Global overview Precise rectangles Overview over distribution between Munich and of MEASRDROID Garching application High density along this Mostly all measurements axis were done in Europe 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 19
Evaluation – Movement analysis ➢ A lot of movement between Munich and Garching ➢ Bigger arrows in north-south direction than in east-west direction → more people moved in north-south direction ➢ Almost no movement out of the axis Munich – Garching - Neufahrn 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 20
Network Architectures and Services, Georg Carle Faculty of Informatics Technische Universität München, Germany Thank you Timo Lamprecht – Visual analysis of anonymized location and movement data
Backup 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 22
Basics - GPS ➢ Position determination with satellites ➢ NAVSTAR-II as most used system ➢ 2010: GLONASS, 2020: GALILEO, Beidou ➢ At least 24 active satellites necessary for global coverage ➢ Precision up to 10 meters Functionality: ➢ Broadcast of position and time ➢ Measurement of time difference to determine radius ➢ Lack of high precision clocks in GPS receivers ➢ 4 th satellite to measure 4 th dimension (time) 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 23
Design - Achievements Database server Achievement server Achievements: ➢ Overall number of GPS measurements ➢ Overall distance travelled ➢ Number of GPS measurements within 1° x 1° ➢ Number of GPS measurements within 100 seconds 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 24
Overview Database server Web server Client Transfer Build up of Make data Integrate data Presentation data structure anonymous into a street map on a website JSON, existing JavaScript, HTML, CSS SQL alchemy, Python server scripts 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 25
Implementation – Generic objects ➢ JavaScript prototype framework to simulate classes ➢ Set of functions Constructor: function * *.prototype.createGoogleObject = function *.prototype.setVisible = function *.prototype.getInformationString = function *.prototype.recalculateAttributes = function ( * = class name ) ➢ Necessary for each supported object type (rectangle, circle, arrow, …) to ensure expandability 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 26
Implementation – SQL alchemy ➢ SQL alchemy ➢ Object oriented writing ➢ Selection of all necessary information ➢ Filter on time interval 09/10/2013 Timo Lamprecht – Visual analysis of anonymized location and movement data 27
Recommend
More recommend