Skip to content

Hcabr027/TrajectoryDifferentialPrivacy

Repository files navigation

Trajectory Privacy Preservation with Differential Privacy

This repository contains Python scripts that implement trajectory privacy preservation techniques using differential privacy. The goal is to protect sensitive trajectory data while enabling useful analysis at a broader level. This code is part of the accompanying source code for the publication titled "Privacy-Preserving Multi-Agent Marine Data Collection via Differential Privacy" published to the Oceans 2023 Gulfcoast conference proceedings.

Prerequisites

  • Python 3.x installed on your system
  • Required Python packages (Install with pip install -r requirements.txt): matplotlib,scikit-learn,similaritymeasures,shapely,numpy,pandas,fastdtw,cartopy,GDAL

Note for Windows users:

Installing GDAL and Cartopy packages on Windows is complicated, for higher chances of success please do the following:

  1. Download and install Visual C++ Build Tools: https://visualstudio.microsoft.com/visual-cpp-build-tools/

  2. Download precompiled GDAL Wheel:

  3. Install GDAL wheel with PIP: pip install package-name.whl

  4. Install Cartopy from github with PIP: pip install git+https://github.com/SciTools/cartopy

Getting Started

  1. Clone this repository to your local machine.

  2. Install the required Python packages by running pip install -r requirements.txt.

  3. Run 'cluster_and_plot_air_boat_trajectories.py' to analyze in-situ data collected by our low-cost airboat USVs.

  4. Run 'cluster_and_plot_ushant_ais_trajectories.pu' to analyze trajectories downloaded from the public Ushant AIS dataset.

Usage

Both scripts do the following:

  • Reads datasets in the 'in' directory

  • Adds Laplacian noise to the GPS coordinates of trajectories.

  • DBSCAN clustering based on the noisy GPS coordinates.

  • Uses the DTW algorithm to select representative trajectories for each cluster.

  • Adjust the privacy parameter (epsilon) in the scripts to control the level of privacy protection.

  • Outputs Charts to the 'out' directory

Related Links

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •  

Languages