Giter Club home page Giter Club logo

driver-assistance-system's Introduction

License: GPL v3

Driver Assistance System

A Driver Assistance System (DAS) to both help truck drivers and traffic managers. Some of functionality include:

  • Explaining driver activities in accordance with the Hours Of Service regulation.
  • Identifying infringements and their cause.
  • Suggesting new legal transport activities to fulfill deliveries based on driver preferences.
  • Clustering and summarization of driving sequences for an easy monitoring of driver behavior.

๐Ÿ”“ Requirements

Setting the HTN planner

We use the SIADEX HTN planner based on HPDL. To install it, get it here, create a directory called planner under the root directory and compile it in there (a planner executable file should be generated)

Setting everything else

We recommend using Anaconda and setting conda environment environment.yml via the command:

conda env create -f environment.yml

Nevertheless, if you don't want to use Anaconda the main Python packages are:

  • Python 3
  • Numpy
  • Gensim (4.1.2 or superior)
  • Pandas
  • Scikit-learn
  • Matplotlib
  • Streamlit (only for the apps)

๐Ÿ’ป Usage

Each module can be called separately but we recommend using the GUI provided in the local web apps.

Please refer to the wiki for an explanation on how to call each module from the command line.

Input data

Input data requires specific formatting, please see our tachograph log example.

Note: We can only provide this small example dataset, but it's enough to test the functionality of this repo. If you want to further experiment with different data, please include each driver log separately as a driver<number>.csv into the data folder.

Driver App

Driver app

This app simulates the streaming data from a tachograph and displays useful metrics for the driver, as:

  • Actual driving sequence and its compliance with the HOS regulation.
  • Detected infringements and its cause.
  • Next activities recommended for the day based on driver preferences.
  • Remaining time before committing an infringement.

It can be launched via the command:

streamlit run ./src/apps/driver-app.py

Traffic Manager App

Manager app

This app can be used to analyze historic tachograph data from a driver. It shows different information to understand the driver behavior and find undesirable patterns while driving.

It can be launched via the command:

streamlit run ./src/apps/manager-app.py

โฒ๏ธ HOS Regulation

Detailed information about the regulation on which the project is based and the notation used in the output tags can be found here.

๐Ÿค Contributing

We will gladly hear any feedback you may have, so don't be shy and open an issue whenever you want. If you also want to contribute to this project please consider opening a PR. All contributions are welcome!

driver-assistance-system's People

Contributors

ignaciovellido avatar

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.