Skip to content

About

Website of NetChallenge Season10 Project

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

Repository files navigation

Federated Learning Orchestration on Distributed Edge Computing

🥈 Silver Award — NetChallenge Season 10 (Korea)
Team FedMec · Soongsil University DCN Lab · 6-month project

Python Kubernetes JavaScript


📌 Project Summary

Developed an orchestration system for Federated Learning (FL) services in a distributed edge computing environment — addressing the core straggler and bias problems that limit real-world FL deployments.

Delivered as part of NetChallenge Season 10, a national competition where teams demonstrate novel network and AI applications. Our team placed 2nd (Silver Award) out of participating teams.


🔍 Problem

Standard Federated Learning faces two critical issues at scale:

Problem Description
Straggler effect Devices with slow networks or weak hardware delay the entire training round — the central server must wait for the slowest participant
Parameter bias If a deadline cuts off stragglers, their data is excluded — introducing bias into the global model

These issues compound in heterogeneous edge environments where device specs and network conditions vary widely.


💡 Our Solution

1. Priority-based Edge Selection Strategy

Rather than random or fixed participant selection, we designed a two-tier priority system:

Round 1: Random selection → train → collect params → score each edge
Round N: Priority-based selection
    ├── Participant tier  → selected for training
    └── Straggler tier    → temporarily penalized (skipped for K rounds)
                            (penalty expires → priority restored → prevents resource waste)

Edges are scored on:

  • Training latency (did they finish within the deadline?)
  • Model update quality (gradient norm, loss delta)

2. Semi-Synchronous Aggregation

Parameters that missed the current round's deadline are held and included in the next round's aggregation — rather than discarded.

This eliminates hard data loss while bounding the maximum staleness of any update.

Round N aggregation:
  ├── On-time params from Round N  (fresh)
  └── Late params from Round N-1   (stale but not lost)

3. Inference Pipeline (Edge-triggered)

Deployed a skin lesion classification model (melanoma detection) as an end-to-end inference service:

User uploads image (web UI)
        │
        ▼
Edge cluster storage (folder watch trigger)
        │
        ▼
Inference workflow executes (updated global model)
        │
        ▼
Result returned to user via web UI

The model is updated each FL round and automatically propagated to edge clusters — users always receive inference from the latest globally trained model.


🏗️ System Architecture

Core Cloud
  ├── FL Coordinator         ← manages rounds, aggregation, edge scoring
  ├── Global Model Storage   ← versioned model artifacts
  └── Web Service            ← user-facing upload + result display

Edge Cluster (×N)
  ├── Local Training         ← trains on local data, never shares raw data
  ├── Parameter Upload       ← sends gradients/weights to coordinator
  └── Inference Engine       ← serves predictions from latest global model

Privacy guarantee: Raw data never leaves the edge. Only model parameters are transmitted — satisfying the core FL privacy requirement.


🛠️ Tech Stack

Component Technology
FL coordination logic Python
Edge inference pipeline Python (event-driven)
Web service (this repo) JavaScript
Orchestration target Kubernetes (edge clusters)

This repository contains the web service component — the user-facing interface for image upload and result display.


📊 Results

  • Award: Silver (2nd place), NetChallenge Season 10
  • Duration: 6 months, 2-person team (Soongsil Univ. DCN Lab)
  • Domain: Federated Learning + Distributed Edge Computing

🔭 Future Work

  • Full orchestration layer on Kubernetes (CRD-based FL job management)
  • Replace folder-watch trigger with event-driven pipeline (Kafka / Knative)
  • Differential privacy integration for stronger parameter-level protection
  • Benchmarking straggler strategy against FedAvg, FedProx baselines

👥 Team

FedMec — DCN Lab, Soongsil University
NetChallenge Season 10 participants

About

Website of NetChallenge Season10 Project

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages