Overview

Motivation

Since we have FedFT (see platform) algorithm whose correctness is verified by some experiences, devices, and student resources on our campus, we can make this theory a practical application. Therefore, we decided to develop a FedCampus platform based on FedFT algorithm and may cater to more FA algorithms in the future.

Preview

This project implements an Android App to collect health and exercise data for FL training. It has two main function: data collection and local differential privacy (DP). Besides, this project also needs support iot for FL training, e.g: using smart watch.

Functions (HealthKit Application)

  • Data Collect: data from wearable devices.

    • Store data in a secure and encrypted format, and apply privacy-preserving technologies to the data, such as differential privacy.

  • Data Analytics: Process data to extract insights and patterns.

    • Data cleaning: This involves identifying and correcting errors in the data.

    • Data transformation: This involves converting the data into a format that is easier to analyze.

    • Data analysis: This involves using statistical and mathematical techniques to identify patterns and trends in the data.

    • Data visualization: This involves creating graphs, charts, and other visuals to help communicate the findings of the data analysis.

  • Data Collaboration: Share data with authorized users, recommendation, FL...

Additionally functions:

  • Data Collaboration: Share data with authorized users, recommendation, FL...

Resources

Task

  • Communication

  • Data Storage

  • Algorithm

  • UI

  • HealthKit & FL Platform

Communication

  • Build a Apollo broker

    • Build a server to monitor message communication

    • To verify correctness, use Mqtt.fx / MqttX / EMqtt

  • Fix the bug of MQTT subscribe

    • Publish function is implemented well. But there's a little bug in subscribe function: messageArrived is not called when subscribing message (in MainActivity.java)

    • You can also implement TCP version and forget about all the structure of MQTT if you are good at TCP

Data Storage

  • Local storage: LitePal (finished)

  • Cloud storage: Ali Cloud (supporting MQTT), setup a dashboard by the instruction in resources (to do)

UI (Easy task)

  • Beautify

  • English version for international student

Algorithm

  • Implement local differential privacy algorithm

Health Kit

  • After obtaining the authentication, plug in health kit to let the app automatically collect data

  • Smart watch plug-in: collect data from the watch

Last updated