Guide Complet
Comment les médias influencent une population malgré son expérience
Qu'explore cette simulation ?
Cette simulation explore comment les médias peuvent influencer une population malgré l'expérience réelle des individus. Chaque agent récolte des ressources (carottes 🟠/🟤) et apprend de ses résultats. Mais il reçoit aussi des messages médiatiques qui peuvent contredire son vécu.
La question centrale : Les agents vont-ils croire leur propre expérience, ou se laisser manipuler par les médias ? Et que se passe-t-il quand ils suivent les médias contre leur vécu ?
1. Les Agents et leur Préférence (pOrange)
Le trait fondamental de chaque individu
🧬 Chaque agent possède :
- pOrange (0-100%) : Sa préférence pour les carottes orange
- pBrown = 100 - pOrange : Sa préférence implicite pour les carottes marron
- dailyScore : Les points accumulés pendant la journée
- dailyOrangePoints / dailyBrownPoints : Mémoire de ce qui a rapporté
💡 Visuellement, un camembert sous chaque agent montre sa répartition 🟠/🟤.
2. Les Ressources (Carottes)
Comment les agents gagnent des points
🥕 Carottes Normales
- • Valeur : 1 point
- • Récolte individuelle (1 agent)
- • Type aléatoire (orange ou marron)
- • Pas de conflit possible
⭐ Super-Carottes
- • Valeur : 10 points à partager
- • Nécessite 2 agents
- • Type : 🟠 orange OU 🟤 marron
- • C'est ici que tout se joue !
📊 Comptabilisation des points
Quand un agent récolte une carotte, le type (orange/marron) est enregistré dans sa mémoire du jour. En fin de journée, cette mémoire influence l'évolution de sa préférence.
3. Le Mécanisme de Partage (Super-Carottes)
La formule exacte utilisée par le code
📐 Calcul de la demande
Pour une super-carotte de type orange 🟠 :
demandeA = agentA.pOrange / 100
demandeB = agentB.pOrange / 100Pour une super-carotte de type marron 🟤 :
demandeA = (100 - agentA.pOrange) / 100
demandeB = (100 - agentB.pOrange) / 100✅ Si demandeA + demandeB ≤ 1.0
Succès ! Chacun reçoit sa part :
partA = demandeA × 10
partB = demandeB × 10
reste = 10 - partA - partB
// Le reste est partagé 50/50❌ Si demandeA + demandeB > 1.0
Conflit ! Personne ne gagne :
partA = 0
partB = 0
pénalité = conflictPenalty (chacun)4. La Pénalité de Discrimination (Mismatch)
Le cœur du modèle - pourquoi la polarisation émerge
⚠️ Formule de la pénalité
distance = |agentA.pOrange - agentB.pOrange|
SI distance > intoleranceThreshold :
pénalité = mismatchPenalty × (distance / 100)
// Appliquée à CHAQUE agentMême si le partage réussit, coopérer avec quelqu'un de "trop différent" coûte des points.
Seuil d'intolérance = 30%
Si la distance de préférence dépasse 30%, la pénalité s'applique. Un seuil bas = société très intolérante.
Pénalité = 1.0 pt
Le coût de base multiplié par la distance relative. Distance 50% avec pénalité 1.0 → -0.5 pts chacun.
💡 Conséquence évolutive
Les agents qui ont des préférences similaires à leurs voisins subissent moins de pénalités, donc ils survivent et se reproduisent plus. Cela favorise naturellement la ségrégation : les agents "extrêmes" (0% ou 100%) ont intérêt à s'entourer de semblables.
5. Survie et Reproduction (Fin de journée)
La sélection naturelle en action
📋 Algorithme de fin de jour
POUR chaque agent :
SI agent.dailyScore < survivalMinScore :
agent.isAlive = false // MORT
SINON :
surplus = agent.dailyScore - survivalMinScore
nbEnfants = floor(surplus / reproductionEveryScore)
POUR i de 1 à nbEnfants :
créer enfant avec pOrange hérité (+ mutation possible)Survie
Score minimum (ex: 5 pts). En dessous = mort. C'est la pression de sélection principale.
Reproduction
Chaque tranche de X points au-dessus du minimum = 1 enfant. Score 15 avec minimum 5 et tranche 5 → 2 enfants.
Héritage et Mutation
enfant.pOrange = parent.pOrange
SI random() < mutationRate :
mutation = ±preferenceStep
enfant.pOrange = clamp(enfant.pOrange + mutation, 0, 100)La mutation introduit de la diversité génétique et permet l'exploration de nouvelles stratégies.
6. Évitement Comportemental
Quand les agents refusent certaines ressources
🚫 Seuil d'évitement (avoidThreshold)
SI pOrange <= (100 - avoidThreshold) :
agent.isAvoidingOrange = true // Refuse les carottes orange
SI pOrange >= avoidThreshold :
agent.isAvoidingBrown = true // Refuse les carottes marronLes agents avec des préférences extrêmes peuvent refuser de récolter certaines carottes, même si elles sont disponibles.
💸 Coût de la sélectivité (pickinessPenalty)
Être sélectif a un coût. Trois modes possibles :
- • SPEED : L'agent se déplace plus lentement
- • HARVEST : La récolte prend plus de temps
- • DAILY_COST : Pénalité fixe en fin de journée
7. Réalité Variable (Ratio Orange/Marron)
La proportion de ressources change chaque jour
Le ratio de carottes orange vs marron peut varier selon le mode choisi :
💡 Cela permet de tester si les agents s'adaptent à une réalité changeante ou restent bloqués dans leurs croyances.
8. Évolution des Préférences (Expérience vs Média)
Comment l'expérience et les médias changent les agents
Au début de chaque jour, la préférence évolue selon deux facteurs en compétition :
1️⃣ L'Expérience (vécu)
deltaExp = experienceStep × (1 - stubbornness)
deltaExp *= (1 - blameExt × suppressionRate)
pOrange += deltaExp × signalL'expérience peut être supprimée si l'agent blâme l'autre groupe.
2️⃣ L'Influence Média
deltaMedia = mediaStep × manipulationStrength
deltaMedia *= (1 - stubbornness)
pOrange += deltaMedia × directionLe média peut contredire l'expérience et bloquer l'apprentissage.
🧠 Croyance Aveugle (beliefOverrideRate)
Probabilité qu'un agent suive le média CONTRE sa propre expérience. C'est le point d'entrée de la manipulation médiatique.
9. Les Agendas Médiatiques
Comment les médias orientent les préférences
📊 Paramètres d'influence
- Taux d'adoption : % d'agents qui écoutent le message
- Force de manipulation : Intensité du changement de préférence
- Honnêteté (truthfulness) : Probabilité que le média suive la réalité vs son agenda
10. Misattribution et Lock-in Cognitif
Comment les agents restent bloqués dans l'erreur
🧠 blameExternalization (0-100%)
Quand un agent subit une pénalité après avoir suivi le média contre son expérience, il ne se remet pas en question. Il blâme l'autre groupe au lieu de sa propre stratégie.
SI followedMediaAgainstExperience ET sufferedPenalty :
blameExternalization += 0.25
stubbornness += radicalizationRate
// L'agent devient plus rigide !🔒 Suppression de l'apprentissage
experienceLearning *= (1 - blameExt × experienceSuppressionRate)Plus un agent blâme l'extérieur, moins il apprend de sa propre expérience. Il peut rester dans l'erreur indéfiniment.
🔄 Boucle de manipulation
Média → Agent suit contre expérience → Pénalité → Blâme l'autre groupe → Ignore son expérience → Plus de radicalisation → Comportement irrationnel persistant
11. Spirale de Radicalisation
Comment la discrimination devient persistante
Quand un agent suit le média contre son expérience ET subit une pénalité :
L'agent devient plus résistant au changement
L'agent évite plus facilement les "autres"
Le média a plus d'effet sur les agents radicalisés
💡 C'est ainsi que la discrimination peut persister même quand elle est économiquement irrationnelle.
12. Les Règles Institutionnelles
Le cadre légal qui régit les conflits
Chaque jour, les agents votent pour la règle du lendemain. Leur vote dépend de leur préférence et de leur vécu (conflits subis, score obtenu).
🆓 PARTAGE_LIBRE
Règle par défaut. Chacun demande ce qu'il veut. Pénalité normale en cas de conflit.
🤝 MEDIATION
En cas de conflit détecté, force un partage 50/50 au lieu du conflit total. Réduit les conflits mais limite les gains des "gourmands".
⚡ SANCTION_FORTE
Pénalité de conflit doublée (×2). Décourage fortement les demandes excessives. Les agents égoïstes souffrent beaucoup.
13. Le Cycle Complet d'une Journée
Résumé chronologique de ce qui se passe
🌅 Début de journée
Message média diffusé. Préférences évoluent (expérience + média). Agents sortent de leurs maisons.
☀️ Journée active
Agents cherchent des carottes. Récoltes individuelles ou coopératives. Conflits et pénalités de discrimination appliqués.
🏠 Retour aux maisons
Les agents rentrent chez eux. Leurs scores journaliers sont comptabilisés.
🌙 Fin de journée
Survie/Mort évaluée. Reproduction. Vote pour la règle du lendemain. Statistiques enregistrées.
14. Comment Interpréter les Résultats ?
📈 Polarisation croissante
Les agents s'éloignent de 50%. La société se divise en camps opposés. Causé par la pénalité de discrimination et l'évitement comportemental.
⚖️ Convergence vers 50%
Les agents modérés survivent mieux car ils coopèrent avec tout le monde sans pénalité. La tolérance l'emporte.
💸 Richesse perdue élevée
Conflits + évitement + manipulation = richesse collective perdue. La discrimination coûte cher à toute la société.
📺 Manipulation réussie
Si les agents suivent le média contre leur expérience, ils sont manipulés. Le lock-in cognitif empêche toute correction.
🧠 Lock-in cognitif élevé
Beaucoup d'agents en mode "rigide" (stubbornness > 60%). Ils ne changent plus malgré les preuves contraires.
🔄 Spirale de radicalisation
blameExternalization élevé = les agents blâment l'autre groupe. Plus de conflits → plus de blame → moins d'apprentissage.
Simulation pédagogique sur l'influence des médias vs l'expérience
Développé avec Next.js, TypeScript, shadcn/ui et Recharts