From b1f40fee53121b81c825dfcaeb490a1a08a716b9 Mon Sep 17 00:00:00 2001 From: jsboige Date: Wed, 16 Sep 2026 21:45:42 +0200 Subject: [PATCH] docs(iit,#13410): densite ICT-13 (1029->1243) + ICT-15f (994->1347) -- 8 lectures chiffrees ICT-13 : 5 lectures locales au point de mesure (duel nu AllD/AllC 5,00/0,00 et bits stay/shift ; seuil grim analytique 0,500 vs numerique 0,550 lu comme 1 pas de grille ; hierarchie des 6 chutes sous bruit tft +0,399 ... alld -0,001 ; trajectoire turbulente 6 visitees/104 changements ; tableau R1-R4 du Gate 5c ligne par ligne, delta R3-R4 +0,0000). ICT-15f : 3 lectures (decouplage rho(sw)=+0,000 mais fuite rho(sb)=+0,463, recovery 0,400-1,000 std 0,181 ; deterministe 0,800 vs stochastique 0,333 facteur 2,4 ; controle nul rho(sw)=+1,000, rho(wr)=+0,714, partial +0,000, fronce True). Md-only : 0 cellule code touchee, 0 output edite. Le pre-commit a normalise au basename les chemins papermill absolus herites d'ICT-13 (seule normalisation toleree). Densite floor post-commit : 1243 et 1347 (plancher 1200), rendering guard OK 2/2. See #13410 Co-Authored-By: Claude Sonnet 5 --- ...CT-13-AxelrodStrategicMorphodynamics.ipynb | 39 ++++++++++++++++++- .../ICT-15f-Bridge1bis-DecoupledFamily.ipynb | 21 ++++++++++ 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-13-AxelrodStrategicMorphodynamics.ipynb b/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-13-AxelrodStrategicMorphodynamics.ipynb index a9c709e5c1..af19ac7704 100644 --- a/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-13-AxelrodStrategicMorphodynamics.ipynb +++ b/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-13-AxelrodStrategicMorphodynamics.ipynb @@ -169,6 +169,13 @@ "print(f\"\\nAllD vs AllC (50 coups, sans bruit) : AllD={g_d:.2f} (T chaque), AllC={g_c:.2f} (S chaque)\")\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie.** Les quatre lignes du haut sont la *genetique comportementale* du tournoi a venir : tft ouvre par C (bit 0), grim cooperative tant que l'adversaire n'a pas defocte (bit 0), et pavlov encode l'apprentissage elementaire stay/shift -- il reste sur C apres un gain (bit 0) et bascule apres une perte (bit 1). La derniere ligne est le duel nu qui installe la fausse evidence : sur 50 coups sans bruit, AllD recolte 5,00 par coup (le gain T a chaque rencontre) et AllC tombe a 0,00 (le gain S). Vu de ce duel seul, la defection semble ecrasante. C'est exactement le piege que le round-robin de la section suivante demonte : dans une *population*, AllD ne rencontre pas que des AllC -- il finit par tomber sur les punitifs, et la hierarchie s'inverse. Le duel nu mesure un couple isole ; le tournoi mesure une ecologie.\n" + ] + }, { "cell_type": "markdown", "id": "6038547c", @@ -366,6 +373,13 @@ "print(f\"\\nVerdict : grim resiste a AllD si delta >= {crossing:.2f} (numerique), {thr:.2f} (analytique)\")\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie.** Le seuil analytique $(T-R)/(T-P) = 0{,}500$ dit : grim resiste a l'invasion d'AllD des que le futur pese au moins la moitie du present (avec $T=5$, $R=3$, $P=1$ : $(5-3)/(5-1) = 0{,}5$). Le croisement numerique atterrit a $0{,}550$, et la sortie ellememe qualifie l'ecart : *« accord a 1 pas de grille »*. Autrement dit, l'ecart de $0{,}05$ est exactement la maille d'echantillonnage de $\\delta$ -- le vrai croisement vit quelque part entre $0{,}50$ et $0{,}55$, et la mesure numerique ne peut pas le resoudre plus fin. La lecon de methode : quand l'analytique et le numerique semblent diverger, verifier d'abord la resolution -- ici l'accord est exact a la maille pres, et la theorie de GT-6c est confirmee sans adjustment.\n" + ] + }, { "cell_type": "code", "execution_count": 6, @@ -480,6 +494,13 @@ " print(f\"{n:8s} | {drop:+.3f}\")\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie, chiffre par chiffre.** La colonne mesure la chute de score moyen quand le bruit passe de $b=0$ a $b=0{,}4$ -- une valeur positive est une *perte*. L'ordre exact : tft perd le plus (+0,399), devant gtft (+0,392), pavlov (+0,376), allc (+0,369) et grim (+0,287), tandis qu'alld est statistiquement insensible (-0,001 : defecter n'a pas de memoire a corrompre). Deux lectures s'imposent. D'abord l'ampleur : **toutes** les strategies cooperatrices perdent 0,29 a 0,40 point par coup -- le bruit est le regime qui les taxe. Ensuite la hierarchie inverse de celle du tournoi : le vainqueur sans bruit (tft) est le plus fragilise, et grim -- rigide, donc mediocre en milieu propre -- est le plus resistant. Le mecanisme est lisible dans les bits de la section 1 : tft se coordonne par *echo* (copier le coup adverse), et le bruit corrompt l'echo (une defection accidentelle declenche une vendetta) ; grim, lui, ne se coordonne par rien qui puisse deraper -- il cooperative jusqu'a la premiere defection *reelle ou percue*, puis punit pour toujours, et le bruit lui coute sa rigueur, pas son mecanisme.\n" + ] + }, { "cell_type": "code", "execution_count": 8, @@ -1013,6 +1034,13 @@ "print(\"Turbulent : la frequence de tft n'est plus figee — la population change de strategie.\")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie.** La ligne resume la bascule qualitative : dans le regime turbulent, la frequence de tft *bouge* -- la population n'habite plus une strategie, elle commute. Mis en regard du decompte de la cellule precedente (2 strategies visitees et 1 changement de dominante en instantane ou en mutation uniforme, contre 6 visitees et 104 changements en turbulent), le graphe trace ce que ces nombres veulent dire : une trajectoire qui circule, pas un point fixe. C'est la difference entre une population *arithmetiquement* bruitee (les frequences oscillent autour d'une ESS) et une population *topologiquement* mobile (la dominante elle-meme est remplacee, encore et encore). La mesure b1 de la cellule suivante quantifie precisement cette difference.\n" + ] + }, { "cell_type": "code", "execution_count": 15, @@ -1331,6 +1359,13 @@ "print(f\"R2 max (repli du tirage simple du 6b, seed 7 inclus) : {x2:.4f} (6b : 0.2444)\")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture du tableau, ligne par ligne.** R1 (uniforme, reference) : $0{,}0000$ -- le tirage uniforme ne cree aucun relief, conforme au Gate 5b. R2 (turbulente-A, kick sur vocabulaire fixe) : les cinq runs s'etalent de $0{,}0259$ a $0{,}4106$, moyenne $0{,}2304$ -- et le run a $0{,}2444$ **replique exactement** la valeur du tirage simple du 6b, preuve que la mecanique est la meme. R3 (innovation-B, veritable nouveaute comportementale, vocabulaire 6 -> 16) : $0{,}0000$ sur les cinq seeds. R4 (controle dimension, meme croissance de vocabulaire sans nouveaute de strategie) : $0{,}0000$ egalement. Le delta R3 - R4 = $+0{,}0000$ est le point decisif : la *difference* entre vraie nouveaute et simple croissance de dimension produit exactement aucun relief. Les quatre regimes ensemble ferment la question : le relief observe au 6b n'etait pas porte par la nouveaute (R3 plat), ni par la dimension (R4 plat), mais par le **mecanisme d'injection de masse** du kick (R2 seul vivant) -- d'ou le verdict `ARTEFACT_DE_GENERATEUR` ci-dessous.\n" + ] + }, { "cell_type": "markdown", "id": "0501e695", @@ -1790,8 +1825,8 @@ "end_time": "2026-08-29T05:22:11.795282", "environment_variables": {}, "exception": null, - "input_path": "D:\\Dev\\CoursIA-13009-repair2\\MyIA.AI.Notebooks\\IIT\\ICT-Series\\ICT-13-AxelrodStrategicMorphodynamics.ipynb", - "output_path": "D:\\Dev\\CoursIA-13009-repair2\\MyIA.AI.Notebooks\\IIT\\ICT-Series\\ICT-13-AxelrodStrategicMorphodynamics_output.ipynb", + "input_path": "ICT-13-AxelrodStrategicMorphodynamics.ipynb", + "output_path": "ICT-13-AxelrodStrategicMorphodynamics.ipynb", "parameters": {}, "start_time": "2026-08-29T05:21:40.044893", "version": "2.6.0" diff --git a/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-15f-Bridge1bis-DecoupledFamily.ipynb b/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-15f-Bridge1bis-DecoupledFamily.ipynb index 84b9dd536a..d8649263fa 100644 --- a/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-15f-Bridge1bis-DecoupledFamily.ipynb +++ b/MyIA.AI.Notebooks/IIT/ICT-Series/ICT-15f-Bridge1bis-DecoupledFamily.ipynb @@ -186,6 +186,13 @@ "print(f\"recovery : min={fam['recovery'].min():.3f} max={fam['recovery'].max():.3f} std={fam['recovery'].std():.3f} (variance reelle)\")\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie.** Sur les 30 echantillons de la famille : la correlation $\\rho(\\sigma, w) = +0{,}000$ confirme le decouplage constructif (le critere exige $|\\rho| < 0{,}2$) -- par construction du produit cartesien des grilles, courbure et largeur varient independamment, et la mesure le verifie. Mais la deuxieme ligne revele la fuite : $\\rho(\\sigma, \\text{barrier}) = +0{,}463$. La barrier co-varie avec la courbure *malgre* le decouplage $\\sigma/w$ -- geometriquement inevitable (raideur de puits et hauteur du col sont lies par la forme $ax^4 - bx^2$). Cette fuite est exactement ce qui interdit de conclure sur la correlation brute : sans purge de la barriere, un effet attribue a $\\sigma$ pourrait etre le sien. La troisieme ligne etablit l'enjeu : la recuperation s'etale de $0{,}400$ a $1{,}000$ (ecart-type $0{,}181$) -- il y a de la variance reelle a expliquer, la question de savoir *qui* la porte est ouverte.\n" + ] + }, { "cell_type": "markdown", "id": "ac4231a0", @@ -250,6 +257,13 @@ "print(f' recuperation stochastique = {sto:.3f} (depend de barriere, sigma ET largeur)')\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture de la sortie.** Sur le substrat temoin ($\\sigma = 6{,}0$, $w = 1{,}000$, barrier $= 0{,}750$) : la recuperation **deterministe** vaut $0{,}800$, la recuperation **stochastique** $0{,}333$ -- un facteur $2{,}4$ d'ecart sur le meme substrat. La relaxation a convergence ne voit que la geometrie (le partage du domaine d'attraction), et la barriere ne change rien a ce partage : la mesure serait insensible a l'un des trois facteurs du probleme, donc non falsifiable sur lui. La dynamique bruitee, elle, franchit le col par tirages Arrhenius -- chaque facteur (barrier, $\\sigma$, largeur) pese sur le taux -- et l'ecart mesure combien le bruit *revele* : la moitie de la recuperabilite apparente en deterministe etait un artefact de la convergence. C'est le choix de mesure qui decide si l'experience a un pouvoir discriminant.\n" + ] + }, { "cell_type": "markdown", "id": "ebf552b8", @@ -572,6 +586,13 @@ "print(f\"\\nContraste famille decouplee : rho(sigma,width) = {v_main['rho_sigma_width']:+.3f} (decouple)\")\n" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Lecture du controle nul, chiffre par chiffre.** Dans la sous-famille re-couplee ($a$ fixe, $b$ varie) : $\\rho(\\sigma, w) = +1{,}000$ -- le re-couplage est total (la fronce originelle liait courbure et largeur, on la reconstruit a dessein) ; $\\rho(w, r) = +0{,}714$ -- la largeur seule explique les deux tiers de la variance de recuperation ; et $\\rho(\\sigma \\mid w) = +0{,}000$ : une fois la largeur purgee, la courbure n'apporte *rien*, et le detecteur de motif confirme la reproduction de la fronce (`True`). Mis en regard de la ligne de contraste ci-dessus (famille decouplee : $\\rho(\\sigma, w) = +0{,}000$), le tableau est complet : en regime *couple*, le pouvoir propre de $\\sigma$ est exactement nul ($+0{,}000$) ; en regime *decouple*, la correlation partielle a 2 covariables de la section 4 reste sous le null p95 sur les 4 graines ($0{,}128$ a $0{,}173$ contre $0{,}324$ a $0{,}385$) -- deux regimes de couplage opposes, meme absence de pouvoir propre. La falsification du Pont #1 ne depend pas du couplage : c'est bien un negatif *general*.\n" + ] + }, { "cell_type": "markdown", "id": "8083e737",