feat: federated learning demo on the actor framework

Add a FedAvg fraud-detection application in two topologies: provider
mode (coordinator/trainer star) and P2P mode (full mesh with CRDT-gated
rounds), backed by an MLP trained on PaySim data with a synthetic
fallback, plus demo scripts for both modes.

Also harden the actor runtime:
- supervisor: ignore stale death messages (OneForAll restart storm),
  drop normally-exited children instead of respawning, add a
  restart-rate limit
- register actors before their thread starts so UUID dispatch and
  getSelf cannot race the spawn
- killActor now kills the thread so links see Killed
- fulfill connection promises with the pool winner on simultaneous
  connects
- clamp the PaySim test split on small datasets and split shared
  transaction types across trainers in non-IID partitioning

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-06-21 12:00:00 +02:00
parent 9a52fc5089
commit 6822d6c520
25 changed files with 2127 additions and 115 deletions
+2
View File
@@ -5,6 +5,8 @@ module Control.Actor
, module Control.Actor.Core
, module Control.Actor.Supervision
, module Control.Actor.Network
-- Initialization
, initRuntime
-- Demo
, pingActor
, forwardActorWithCell