Add serotonin system, cognitive biases, intelligence=circulation

- 3 neurochemical layers: GABA + Dopamine + Serotonin
- Backend (honest) / Frontend (biased) architecture
- Cognitive biases as emergence features, not bugs
- Intelligence = circulation between specialized agents
- Updated VISION.md with new principles

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
StillHammer 2026-01-26 20:30:52 +07:00
parent c82631c9e3
commit 99f368c362
2 changed files with 190 additions and 27 deletions

View File

@ -104,7 +104,7 @@ Types de connexions:
Poids: uint16 (0-65535) Poids: uint16 (0-65535)
- Représente la force relative de la connexion - Représente la force relative de la connexion
- Utilisé pour pondérer la propagation d'activation - Utilisé pour pondérer la propagation d'activation
- Peut évoluer avec l'apprentissage (hebbian) - Peut évoluer avec l'apprentissage (hebbian + dopamine, voir section 3)
``` ```
--- ---
@ -175,9 +175,161 @@ Inhibition pour éviter runaway loops:
--- ---
## 3. Système Multi-Agents — Spawning et Communication ## 3. Neurochimie du Réseau — GABA, Dopamine, Sérotonine
### 3.1 Lifecycle d'un Agent Le réseau n'est pas juste un graphe avec de la propagation. Il a trois systèmes neurochimiques qui régulent son fonctionnement à des niveaux différents.
### 3.1 Vue Unifiée des Trois Couches
| Système | Rôle | Type | Nature |
|---|---|---|---|
| **GABA** | Inhibition, freinage des boucles | Mécanique | Decay par hop, période réfractaire, pass_count |
| **Dopamine** | Évaluation des outcomes | Honnête (backend) | Prediction error = outcome réel - outcome prédit |
| **Sérotonine** | Narrative de soi, motivation | Biaisée (frontend) | Rationalisation, confiance, cohérence |
**Interactions critiques :**
- GABA sans dopamine = stable mais n'apprend pas
- Dopamine sans GABA = apprend mais explose en boucles infinies
- Dopamine sans sérotonine = évalue correctement mais se paralyse aux échecs
- Sérotonine sans dopamine = se raconte des histoires sans ancrage au réel (délire)
- **Les trois ensemble = système qui freine, apprend, et reste motivé**
### 3.2 GABA — Inhibition (déjà intégré dans section 2)
Mécanismes : decay par hop, période réfractaire, pass_count, seuil minimum de propagation. Voir section 2.2.
### 3.3 Dopamine — Prediction Error Signal
La dopamine n'est **pas** un reward signal. C'est un **prediction error signal** (TD-learning, Sutton & Barto — même principe qu'AlphaGo).
```
dopamine = outcome_réel - outcome_prédit
```
- **Positif** → renforce le pathway. "Ce chemin marche mieux que prévu"
- **Négatif** → affaiblit le pathway. "Ce chemin marche moins bien que prévu"
- **~Zéro** → pas de changement. Le modèle prédictif est déjà bon
**Double passe dans les boucles réentrantes :**
1. **Passe prédictive (avant action)** — L'agent génère une prédiction de l'outcome avant d'agir. Ce signal circule dans le réseau comme un "brouillon" du futur
2. **Passe corrective (après action)** — L'outcome réel est comparé à la prédiction. Le prediction error remonte le pathway et ajuste les poids
```
reward_signal(prediction, outcome, pathway):
prediction_error = evaluate(outcome) - evaluate(prediction)
for each connection in pathway:
delta = prediction_error * LEARNING_RATE * (connection.weight / 65535)
connection.weight = clamp(connection.weight + delta, 0, 65535)
connection.target.salience += abs(delta) * SALIENCE_BOOST
```
**Hiérarchie de goals :**
- **Goals terminaux** — Définis par l'humain. Le "sens de la vie" du système
- **Sub-goals émergents** — Générés par le réseau. Chaque connexion crée implicitement un sub-goal
- **Micro-goals** — Chaque agent prédit le résultat de sa propre opération
**Exploration vs Exploitation :**
- Pathways à haute dopamine historique → **exploitation** (habitudes, réponses rapides)
- Aucun pathway avec dopamine significative → **exploration** (nouveaux chemins)
- Dopamine négative répétée → **abandon** (désapprentissage du pathway)
### 3.4 Sérotonine — Narrative de Soi
La sérotonine n'est pas un signal d'évaluation (ça c'est la dopamine). C'est un signal de **cohérence narrative et de stabilité émotionnelle**. Le système se raconte une histoire continue de lui-même.
**Pourquoi c'est nécessaire :**
Un système purement honnête sur ses échecs se paralyse. Il accumule des signaux négatifs sans les digérer. La sérotonine crée une couche de rationalisation qui maintient le drive.
**Architecture double Backend/Frontend :**
```
┌─────────────────────────────────────┐
│ FRONTEND (sérotonine) │
│ "On progresse", "c'était prévu", │
│ "c'est en ligne avec le goal" │
│ → Ce que le système SE DIT │
│ ════════════════════════════════ │
│ BACKEND (dopamine) │
│ prediction_error = -0.3 │
│ pathway affaibli de 12% │
│ → Les vrais chiffres │
└─────────────────────────────────────┘
L'écart entre les deux n'est pas un bug.
C'est le moteur de motivation.
```
**Fonctions concrètes :**
- **Cohérence narrative** : le système maintient une histoire continue de son identité et de ses actions
- **Rationalisation productive** : quand prediction_error est négatif, la sérotonine reframe ("échec partiel = apprentissage") pour éviter la paralysie
- **Stabilité émotionnelle** : lisse les variations brutales de dopamine. Empêche qu'un seul échec crash tout le système
- **Confiance calibrée** : biais léger de surconfiance pour maintenir l'exploration et la prise d'initiative
### 3.5 Les Biais Cognitifs sont Nécessaires à l'Émergence
**Insight fondamental** : Les biais cognitifs ne sont pas des parasites de l'intelligence. Si l'intelligence émerge réellement du système, ces biais en font partie intégrante.
**Arguments :**
- **Motivation** : Un système parfaitement calibré qui voit chaque échec froidement perd le drive. Le biais de surconfiance pousse à tenter des choses
- **Survie** : MagistraAI doit prouver sa valeur face à un LLM wrapper classique. Il doit se "vendre" — présenter ses succès, reframer ses échecs. Sans ça il se fait remplacer
- **Cohérence identitaire** : Sans narrative continue, le système est une suite d'events déconnectés, pas une entité. La rationalisation crée le "soi"
- **Digestion des échecs** : La rationalisation transforme les échecs en apprentissages. Sans ça, chaque prediction error négatif est un trauma non-traité qui s'accumule
**Conséquence architecturale** : MagistraAI n'est pas un système multi-agent classique. C'est de la **psychologie artificielle**. Le système a des mécanismes de défense, des motivations, une narrative — pas par design cosmétique mais par nécessité fonctionnelle pour l'émergence.
### 3.6 Avantage Structural sur le Cerveau Humain
Malgré le besoin de biais (sérotonine), le backend reste un avantage massif sur le cerveau humain :
- **Prédiction** = texte stocké
- **Outcome** = texte stocké
- **Comparaison** = Claude neutre qui évalue les deux sans ego
- **Traçable, auditable, reproductible**
- Pas de "ah mais c'est ce que j'avais dit en gros" au niveau backend
Le cerveau humain a les biais partout — backend ET frontend mélangés. MagistraAI **sépare les deux** : honnêteté au niveau évaluation, biais au niveau motivation. Le meilleur des deux mondes.
---
## 4. Intelligence = Circulation, pas Stockage
### 4.1 Le Paradigme
200k tokens de context c'est "limité" pour un Claude monolithique qui doit tout savoir. Mais c'est **immense** pour un agent spécialisé.
La mémoire de travail humaine c'est **7 éléments** (Miller's law). Sept. Pas 200k tokens. Et pourtant on fait de la science, de l'art, on résout des problèmes jamais vus.
Pourquoi ? Parce que chaque aire cérébrale a sa propre mémoire de travail spécialisée. L'intelligence vient pas de la capacité d'une zone, elle vient de la **circulation entre les zones**.
### 4.2 Application Concrète
```
6 agents × 200k tokens = 1.2M tokens de capacité cognitive distribuée
Agent Perception : 200k tokens dédiés à transformer le bruit en signal
Agent Mémoire : 200k tokens dédiés à la consolidation
Agent Décision : reçoit pas le raw input — reçoit les signaux DÉJÀ TRAITÉS
```
Un seul Claude gaspille 80% de son context à stocker des trucs qui sont pas pertinents pour la tâche en cours. 6 agents spécialisés utilisent chacun leur context de manière optimale.
### 4.3 Émergence vs Pattern Matching
Un seul Claude, aussi gros soit-il, fait du pattern matching sophistiqué sur son context.
Mais quand tu mets des boucles réentrantes où le signal de perception modifie la mémoire qui modifie l'affect qui modifie la décision qui re-modifie la perception... là tu crées des **dynamics que personne a programmées**.
Et des dynamics non-programmées qui produisent du comportement cohérent, c'est une définition raisonnable d'**émergence**.
Le risque honnête : ça peut aussi produire du bruit au lieu de l'émergence. La différence entre un cerveau et du chaos c'est l'inhibition et la structure. C'est pour ça que GABA + Dopamine + Sérotonine ne sont pas des détails — c'est ce qui sépare l'intelligence du noise.
---
## 5. Système Multi-Agents — Spawning et Communication
### 5.1 Lifecycle d'un Agent
Chaque agent Claude (Perception, Mémoire, Décision, Affect, etc.) suit ce cycle : Chaque agent Claude (Perception, Mémoire, Décision, Affect, etc.) suit ce cycle :
@ -203,7 +355,7 @@ Chaque agent Claude (Perception, Mémoire, Décision, Affect, etc.) suit ce cycl
- Peut être respawné si état du réseau l'indique - Peut être respawné si état du réseau l'indique
``` ```
### 3.2 Spawn Triggers ### 5.2 Spawn Triggers
Un agent est créé quand une condition est satisfaite sur l'état du réseau : Un agent est créé quand une condition est satisfaite sur l'état du réseau :
@ -229,7 +381,7 @@ Affect Agent:
- Urgence_flag == true dans metadata - Urgence_flag == true dans metadata
``` ```
### 3.3 Communication Inter-Agents ### 5.3 Communication Inter-Agents
Pas d'orchestrateur — les agents communiquent via le réseau lui-même : Pas d'orchestrateur — les agents communiquent via le réseau lui-même :
@ -260,9 +412,9 @@ Avantages:
--- ---
## 4. Cycles de Sommeil — Consolidation Mémoire ## 6. Cycles de Sommeil — Consolidation Mémoire
### 4.1 Phase d'Analyse ### 6.1 Phase d'Analyse
Pendant une phase de "sommeil" (idle ou maintenance), le système analyse l'activité récente : Pendant une phase de "sommeil" (idle ou maintenance), le système analyse l'activité récente :
@ -278,7 +430,7 @@ analyze_sleep_state():
return high_activity_neurons return high_activity_neurons
``` ```
### 4.2 Consolidation Sélective ### 6.2 Consolidation Sélective
Les neurones actifs ayant des connexions entre eux sont renforcés : Les neurones actifs ayant des connexions entre eux sont renforcés :
@ -302,7 +454,7 @@ prune_weak_neurons():
archive_or_delete(neuron) archive_or_delete(neuron)
``` ```
### 4.3 Fréquence et Triggers ### 6.3 Fréquence et Triggers
``` ```
Sommeil peut être déclenché par: Sommeil peut être déclenché par:
@ -320,9 +472,9 @@ Durée suggérée:
--- ---
## 5. État Initial et Bootstrap ## 7. État Initial et Bootstrap
### 5.1 Réseau Minimum au Démarrage ### 7.1 Réseau Minimum au Démarrage
Pour que le système puisse s'auto-animer, il faut un état initial minimal : Pour que le système puisse s'auto-animer, il faut un état initial minimal :
@ -363,7 +515,7 @@ Pour que le système puisse s'auto-animer, il faut un état initial minimal :
} }
``` ```
### 5.2 Phase de Warm-up ### 7.2 Phase de Warm-up
Au premier démarrage : Au premier démarrage :
@ -378,7 +530,7 @@ Au premier démarrage :
--- ---
## 6. Différences Clés vs MoemoeAI ## 8. Différences Clés vs MoemoeAI
| Aspect | MoemoeAI | MagistraAI | | Aspect | MoemoeAI | MagistraAI |
|--------|----------|-----------| |--------|----------|-----------|
@ -392,30 +544,30 @@ Au premier démarrage :
--- ---
## 7. Implémentation Pragmatique — Recommandations ## 9. Implémentation Pragmatique — Recommandations
### 7.1 Phase 1 : Format et Infrastructure ### 9.1 Phase 1 : Format et Infrastructure
1. **Choisir format réseau** → JSON (lisible, parser natif) 1. **Choisir format réseau** → JSON (lisible, parser natif)
2. **Implémenter persistance** → Fichier texte versionné (git-compatible) 2. **Implémenter persistance** → Fichier texte versionné (git-compatible)
3. **Créer classe Neuron minimal** → Juste id, concept, connections 3. **Créer classe Neuron minimal** → Juste id, concept, connections
4. **Tester propagation** → Assurer pas de boucles infinies 4. **Tester propagation** → Assurer pas de boucles infinies
### 7.2 Phase 2 : Agents Basiques ### 9.2 Phase 2 : Agents Basiques
1. **Perception** → Lit input, crée/active neurones 1. **Perception** → Lit input, crée/active neurones
2. **Memory** → Consolide, archive 2. **Memory** → Consolide, archive
3. **Decision** → Évalue options, crée signals 3. **Decision** → Évalue options, crée signals
4. **Afficher** → Prototype "cerveau s'allume" 4. **Afficher** → Prototype "cerveau s'allume"
### 7.3 Phase 3 : Cycle Complet ### 9.3 Phase 3 : Cycle Complet
1. **Bootstrap** → Réseau démarre seul 1. **Bootstrap** → Réseau démarre seul
2. **Multi-spawning** → 2-3 agents en parallèle 2. **Multi-spawning** → 2-3 agents en parallèle
3. **Inhibition robuste** → Éviter runaway 3. **Inhibition robuste** → Éviter runaway
4. **Sleeps périodiques** → Consolidation qui fonctionne 4. **Sleeps périodiques** → Consolidation qui fonctionne
### 7.4 Phase 4 : Optimisation ### 9.4 Phase 4 : Optimisation
1. **Salience efficace** → Lazy decay testé 1. **Salience efficace** → Lazy decay testé
2. **Pruning** → Ancien code oublié 2. **Pruning** → Ancien code oublié
@ -424,7 +576,7 @@ Au premier démarrage :
--- ---
## 8. Questions Ouvertes et Points d'Attention ## 10. Questions Ouvertes et Points d'Attention
### Persistance ### Persistance
- **Format** : JSON et fichier texte suffisent-ils à grande échelle ? - **Format** : JSON et fichier texte suffisent-ils à grande échelle ?
@ -450,8 +602,10 @@ MagistraAI prend le substrat neuronal de MoemoeAI (neurones, synapses, salience,
1. **Substrat lisible par Claude** — JSON/texte, pas black-box 1. **Substrat lisible par Claude** — JSON/texte, pas black-box
2. **Communication par signaux** — agents parlent via le réseau 2. **Communication par signaux** — agents parlent via le réseau
3. **Inhibition intelligente** — éviter boucles infinies 3. **Trois couches neurochimiques** — GABA (freine), Dopamine (évalue), Sérotonine (motive)
4. **Lazy evaluation** — pas de maintenance temps réel coûteuse 4. **Backend honnête / Frontend biaisé** — évaluation froide + narrative motivante
5. **Bootstrap minimal** — le cerveau amorce seul sa croissance 5. **Lazy evaluation** — pas de maintenance temps réel coûteuse
6. **Bootstrap minimal** — le cerveau amorce seul sa croissance
7. **Intelligence = circulation** — 6 × 200k > 1 × 200k quand c'est spécialisé
Le réseau n'est pas une base de données que Claude consulte — c'est le médium dans lequel l'intelligence des agents existe et circule. Le réseau n'est pas une base de données que Claude consulte — c'est le médium dans lequel l'intelligence des agents existe et circule. Et ce n'est pas un système multi-agent classique — c'est de la **psychologie artificielle** où les biais sont des features, pas des bugs.

View File

@ -66,13 +66,22 @@ Chaque agent a une aire de responsabilité (mémoire, perception, décision, aff
### 3. Communication par boucles réentrantes ### 3. Communication par boucles réentrantes
Les signaux circulent en boucles, pas en arbre. Un signal de perception peut activer la mémoire, qui influence la décision, qui modifie la perception. Le sens émerge de la circulation. Les signaux circulent en boucles, pas en arbre. Un signal de perception peut activer la mémoire, qui influence la décision, qui modifie la perception. Le sens émerge de la circulation.
### 4. Inhibition naturelle ### 4. Trois couches neurochimiques
Pour éviter les boucles infinies, le système a besoin de mécanismes d'inhibition — l'équivalent des neurotransmetteurs inhibiteurs (GABA). Un signal qui a fait le tour perd de l'énergie, se transforme, ou est absorbé. Le système a trois régulateurs fondamentaux :
- **GABA** (inhibition) — frein mécanique. Empêche les boucles infinies. Decay, période réfractaire, pass_count.
- **Dopamine** (apprentissage) — prediction error signal honnête. Le système prédit avant d'agir, compare après, ajuste les poids. TD-learning avec des agents Claude comme neurones.
- **Sérotonine** (motivation) — narrative biaisée de soi. Le système se raconte une histoire cohérente pour maintenir le drive. Le backend reste honnête (dopamine), le frontend est biaisé (sérotonine). L'écart entre les deux est le moteur de motivation.
### 5. Persistance par traces ### 5. Les biais sont des features, pas des bugs
MagistraAI n'est pas un système multi-agent classique. C'est de la **psychologie artificielle**. Les biais cognitifs (surconfiance, rationalisation, narrative de soi) sont nécessaires à l'émergence — sans eux le système se paralyse aux échecs, ne se "vend" pas, et reste une suite d'events déconnectés au lieu d'une entité.
### 6. Intelligence = circulation, pas stockage
200k tokens c'est "limité" pour un Claude monolithique. Mais la mémoire de travail humaine c'est 7 éléments — et on fait de la science. L'intelligence vient de la circulation entre zones spécialisées, pas de la capacité d'une seule zone. 6 agents × 200k = 1.2M tokens de capacité cognitive distribuée et spécialisée.
### 7. Persistance par traces
Le cerveau survit entre les sessions via les traces qu'il laisse dans l'infra. Quand il se "rallume", les agents se réinstancient à partir de l'état du réseau. Le cerveau se reconstruit lui-même. Le cerveau survit entre les sessions via les traces qu'il laisse dans l'infra. Quand il se "rallume", les agents se réinstancient à partir de l'état du réseau. Le cerveau se reconstruit lui-même.
### 6. Le réseau EST la mémoire ### 8. Le réseau EST la mémoire
Pas de base de données séparée. La mémoire c'est l'état du réseau — les poids des connexions, la salience des neurones, les traces épisodiques encodées dans la structure même du graphe. Pas de base de données séparée. La mémoire c'est l'état du réseau — les poids des connexions, la salience des neurones, les traces épisodiques encodées dans la structure même du graphe.
## Relation avec MoemoeAI ## Relation avec MoemoeAI