Giter VIP home page Giter VIP logo

recursive-trajectory-clustering's Introduction

Clustering aircraft trajectories with recursive DBSCAN

The clustering algorithm trdbscan is based on the recursive DBSCAN method introduced in the following scientific paper:

C. E. Verdonk Gallego, V. F. Fernando Gómez, F.J. Saez Nieto, and M.G. Martinez, "Discussion On Density-Based Clustering Methods Applied for Automated Identification of Airspace Flows," in 2018 IEEE/AIAA 37th Digital Avionics Systems Conference (DASC). IEEE, 2018. p. 1-10.

As this method proves useful in the context of the identification of traffic flows (clusters of aircraft trajectories), the trdbscan algorithm is used with the Swiss traffic example provided by the traffic library. Results are plotted with the sectflow library and can be compared with the DBSCAN method provided as an example in the traffic documentation, or the TrajClust method (also based on a recursive DBSCAN) supplied by the sectflow library and described in the following scientific paper:

L. Basora, V. Courchelle, J. Bedouet and T. Dubot, "Occupancy Peak Estimation from Sector Geometry and Traffic Flow," in Proceedings of the SESAR Innovation Days, 2018

The main advantages of the trdbscan method are:

  • no need to specify the epsilon parameter of the DBSCAN algorithm, automatically computed at each iteration by the KNN elbow method
  • anomalies are stored (anomalies_) and classified: largest anomalies met at iteration 1 with a large epsilon are the first elements of the anomalies_ list

Example: main traffic flows from flight trajectories over Switzerland on August 1st 2018

Swiss traffic flows

Running the tests

If you want to run the demo_trdbscan notebook, you need to:

Built With

On top of classical Python libraries (matplotlib, collections, numpy, logging, pandas), the following libraries are used:

Authors

  • Thomas Dubot

License

This project is licensed under the MIT License - see the LICENSE.md file for details

recursive-trajectory-clustering's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.