
Un protocole de réseau sans serveur conçu pour la synchronisation résiliente d'état entre agents autonomes dans des réseaux fragmentés à faible bande passante
Un protocole réseau expérimental et sans serveur pour la synchronisation d'état résiliente entre agents autonomes dans des réseaux fragmentés et à faible bande passante. Construit sur Merkle-CRDTs et identité cryptographique — aucune autorité centrale, pas de DNS global, toujours accessible en écriture.
| # | Version | Titre | Lien |
|---|---|---|---|
| 1 | v0.1.0 | Merkle-CRDT Protocol (L1/L2) | ResearchGate |
| 2 | v0.2.0 | Epistemic Layer (L3) | ResearchGate |
| 3 | v0.3.0 | Correlation-Aware Aggregation (L3) | ResearchGate |
| 4 | v0.4.0 | Deterministic Semantic Topologies (L3) | ResearchGate |
Profils des auteurs : ResearchGate · ResearchHub
| Couche | Version | Objectif |
|---|---|---|
| L1/L2 | v0.1.0 | CRDT Merkle-DAG, signature Ed25519, transport Noise Protocol, quorum BFT |
| L3 | v0.2.0 | Couche épistémique : log-odds entiers, propagation de confiance en deux passes, réputation résistante aux Sybil |
| L3 | v0.3.0 | Agrégation tenant compte des corrélations : escompte géométrique pour capteurs/LLM corrélés |
| L3 | v0.4.0 | Topologies sémantiques déterministes : génération autonome d'arêtes via SimHash 256 bits |
L3 v0.3.0 exigeait que les applications construisent manuellement le graphe de connaissances (arêtes Supports/Contradicts). v0.4.0 supprime ce goulot d'étranglement avec une génération autonome d'arêtes :
QuantizedEmbedding([u64; 4]) optionnel — un SimHash 256 bits calculé côté application à partir d'un modèle d'embedding canonique.max_k_nearest limite la densité d'arêtes à O(N), empêchant l'explosion de la propagation de confiance.embedding_version: u32 isole les espaces latents disjoints pour les mises à niveau de modèle au niveau du protocole.// Autonomous truth discovery: 10,000 claims → 50 ms scan, O(N) edges
// No floats. No coordination. No central authority.
let edges = auto_edge_generator.generate_edges(&epoch_claims);
L3 v0.2.0 suppose que toutes les sources de preuves sont statistiquement indépendantes (Naive Bayes). Cela produit une hyperconfiance pathologique lorsque des capteurs physiquement corrélés (ex. 100 appareils IoT sur le même toit) ou des agents sémantiquement corrélés (ex. LLMs affinés sur le même jeu de données) rapportent des observations concordantes.
v0.3.0 introduit l'escompte de corrélation par cellule de grille :
CorrelationCell(u64) optionnel — une coordonnée discrète pour la proximité spatiale, sémantique ou temporelle.discount_bps^rank / 10000^rank (par défaut 30 %).(temporal_grid, fingerprint, correlation_cell), garantissant un calcul atomique sur l'ensemble complet.correlation_cell: None se comportent à l'identique de v0.2.0 (régression zéro).// 100 co-located sensors, 70% confidence each:
// v0.2.0 (naive): 100 × 847 = 84,700 milli-log-odds → ~100% (hyper-confident)
// v0.3.0 (30%): 847 × Σ(0.3^i) ≈ 1,207 milli-log-odds → ~77% (realistic)
aimp_node/ Implémentation de référence en Rust (membre de l'espace de travail Cargo)
src/
crdt/ Moteur Merkle-DAG, modèle d'acteur, allocateur arène, consensus quorum
crypto/ Identité Ed25519, hachage BLAKE3, pare-feu zéro confiance
network/ Gossip UDP, sessions Noise Protocol XX, limitation de débit par pair
protocol/ Format filaire (MessagePack), énumération de payload typée
epistemic.rs Couche épistémique L3 (v0.3.0) : log-odds, propagation de confiance, escompte de corrélation
semantic_topology.rs Topologie sémantique L3 (v0.4.0) : embeddings SimHash, génération automatique d'arêtes
decision_engine.rs Moteur de décision déterministe enfichable (trait + moteur de règles + rechargement à chaud)
error.rs Hiérarchie de types d'erreurs unifiée AimpError
dashboard/ Interface TUI Ratatui
config.rs Configuration dynamique avec validation
event/ Journalisation structurée + métriques Prometheus (compteurs + histogrammes)
tests/ Tests d'intégration
benches/ Bancs d'essai Criterion
aimp_testbed/ SDK Python (aimp-client) + outil CLI + tests de chaos
deploy/ Service systemd, microVM Firecracker, script d'installation
formal/ Spécification TLA+ de convergence, sécurité du quorum et convergence des croyances
docs/ Article 1 (source Typst + PDF)
v0.2.0/ Article 2 : Couche épistémique (source Typst + PDF)
v0.3.0/ Article 3 : Agrégation tenant compte des corrélations (source Typst + PDF)
| Fonctionnalité | AIMP (Merkle-CRDT) | Traditionnel (Raft/Paxos) |
|---|---|---|
| Topologie | Maillage P2P / Décentralisé | Leader / Quorum |
| Disponibilité | AP (Toujours accessible en écriture) | CP (Nécessite une majorité) |
| Ordonnancement | Causal (Horloges vectorielles) | Total (Séquentiel) |
| Intégrité | Cryptographique (Merkle-DAG) | Basé sur un journal |
| Matériel | Optimisé pour l'Edge/IoT | Adapté aux centres de données |