Code Monkey home page Code Monkey logo

eco4ai's Introduction

ECO4AI

This is the official repository for the ECO4AI project and the resulting paper "DroneBandit: Multi-armed contextual bandits for collaborative edge-to-cloud inference in resource-constrained nanodrones".

Authors: Guillaume Chacun, Mehdi Akeddar, Thomas Rieder, Bruno Da Rocha Carvalho and Marina Zapater
REDS. School of Engineering and Management Vaud, HES-SO University of Applied sciences and Arts Western Switzerland
Email: {guillaume.chacun, mehdi.akeddar, thomas.rieder, bruno.darochacarvalho, marina.zapater}@heig-vd.ch

Introduction

In recent years, Artificial Intelligence (AI) has seen a remarkable expansion. Traditionally, applications primarily relied on edge computing, closer to data sources. However, today edge computing approaches are outstripped by modern AI demands. In this paper, we introduce a novel framework together with an online decision algorithm based on multi-armed contextual bandits (DroneBandit), for the dynamic allocation of inference tasks between edge and cloud, to increase inference performance. Our test environment consists of a resource-constrained nanodrone equipped with a custom DNN for obstacle detection, able to achieve 80% accuracy and 71% F2-score. DroneBandit runs on the drone and chooses the optimal cutting point for each iteration on the fly. The decision is based on predicted back-end delays (i.e. data transfer and inference time on the cloud) and observed front-end delays (i.e. inference time on the edge). DroneBandit achieves 83% accuracy and 89% Top3 accuracy in predicting the ideal cutting point on simulations. Our framework demonstrates enhanced task allocation adaptability, enabling efficient computation offloading and edge computing reliance in varying network conditions. Our experiments, conducted on a nanodrone with an ARM CPU and GAP8 RISC-V accelerator, incorporate quantization and optimization, showcasing efficient obstacle detection in dynamic scenarios.

Content of this repository

  • DroneBandit/ai-deck/ : DroneBandit implementation for a GAP8 processor
  • DroneBandit/simulation_and_figs/ : Python implementation of DroneBandit, and code to reproduce our experiments
  • classification/ : obstacle detection use case for DroneBandit

Acknowledgements

This work has been funded by the ECO4AI project granted by HES-SO, under the call for young researchers 2021.

eco4ai's People

Contributors

chacungu avatar trr-reds avatar

Stargazers

 avatar Mehdi Akeddar avatar

Watchers

REDS institute avatar  avatar  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.