How qaisermuhammad/fedsemgnn works
FedSemGNN is a research framework for semantic-aware, federated reinforcement-learning orchestration of 6G edge service placement. The main workflow starts at the CLI, runs a placement algorithm against a simulated workload, encodes topology and service semantics, chooses placements and evaluates them, then synchronizes federated models. Documented capabilities also include mobility, privacy, fault tolerance, extreme-scale operation, and 6G power modeling. The README documents these capabilities, but sampled excerpts do not show all their runtime call sites; uncertain wiring is therefore omitted.
Main entry points: FedSemGNN.py FedSemGNN · main.py CLI entry · experiments Experiment runs · metrics_logger.py Metrics logging
Components 20
Entry and Simulation
- CLI entry
main.py - EdgeSimPy
- Service workload
workloads
Placement Algorithms
- FedSemGNN
src/algorithms/FedSemGNN.py - Baseline algorithms
src/algorithms
Learning and Federation
- PPO agent
src/algorithms/PPO.py - Topology GCN
src/utils/gcn_encoder.py - Graph utilities
src/utils/graph_utils.py - Semantic learning
src/core/online_semantic_learning.py - Semantic helpers
src/utils/semantic_utils.py - Framework configuration
src/core/config.py - Extreme-scale federation
src/core/extreme_scale_federated.py
Network Operations
- Mobility tracking
src/mobility/mobility_tracker.py - Fault tolerance
src/core/multi_cluster_fault_tolerance.py - 6G power model
src/power_model/edge_6g_power.py - Hardware energy model
src/core/hardware_energy_modeling.py
Experiments and Metrics
- Experiment runs
experiments - Metrics logging
experiments/metrics_logger.py - Result visualizations
visualizations/analysis_plots
Other components
- Experiment operator
Connections 20
- Experiment operator → CLI entry: starts run
- CLI entry → FedSemGNN: dispatches algorithm
- CLI entry → Baseline algorithms: dispatches baseline
- EdgeSimPy → FedSemGNN: provides simulation
- Service workload → EdgeSimPy: defines workload
- FedSemGNN → PPO agent: selects actions
- FedSemGNN → Topology GCN: encodes topology
- Graph utilities → Topology GCN: provides graph
- FedSemGNN → Semantic learning: updates semantics
- FedSemGNN → Semantic helpers: uses embeddings
- Framework configuration → FedSemGNN: configures
- FedSemGNN → Extreme-scale federation: scales federation
- EdgeSimPy → Mobility tracking: tracks movement
- FedSemGNN → Fault tolerance: uses resilience logic
- FedSemGNN → 6G power model: estimates power
- FedSemGNN → Hardware energy model: models energy
- Experiment operator → Experiment runs: runs studies
- Experiment runs → CLI entry: launches runs
- Experiment runs → Metrics logging: records results
- Metrics logging → Result visualizations: supplies results