Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2109,8 +2109,7 @@
"metadata": {
"tags": []
},
"source": [
"## 9. Resolution via GeneticSharp (moteur metaheuristique .NET)\n",
"source": [ "## 9. Resolution via GeneticSharp (moteur metaheuristique .NET)\n\n> Provenance : livraison historique #10382 (parite lib-vs-lib).\n",
"\n",
"### Parallele lib-vs-lib avec la jumelle Python\n",
"\n",
Expand Down
4 changes: 2 additions & 2 deletions MyIA.AI.Notebooks/Sudoku/Sudoku-05-PSO-CSharp.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2015,7 +2015,7 @@
"tags": []
},
"source": [
"## Resolution via GeneticSharp (moteur metaheuristique .NET)\n",
"## Résolution via GeneticSharp (moteur metaheuristique .NET)\n",
"\n",
"Les sections 2 a 6 implementent l'essaim **from scratch** (workers/explorers,\n",
"fusion bloc-par-bloc, redemarrages -- BCL .NET, 0 NuGet). C'est le moteur pedagogique :\n",
Expand Down Expand Up @@ -3369,7 +3369,7 @@
"tags": []
},
"source": [
"## Pont PythonNet vers mealpy — le même moteur que le jumeau Python\n",
"## Pont PythonNet vers mealpy — parité avec le jumeau Python\n",
"\n",
"La section précédente branche **GeneticSharp**, un moteur .NET de la famille voisine (GA). Ce pont\n",
"complète la parité lib-vs-lib sur le moteur **exact** du jumeau Python : **mealpy** (PyPI, MIT,\n",
Expand Down
7 changes: 3 additions & 4 deletions MyIA.AI.Notebooks/Sudoku/Sudoku-05-PSO-Python.ipynb
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"cells": [
{
Expand Down Expand Up @@ -2134,8 +2134,8 @@
],
"source": [
"# === mealpy OriginalPSO sur le meme puzzle facile (easy_puzzles[0]) ===\n",
"# Instance partagee avec le jumeau C# (section MetaGeneticSharp) : la chaine 81 ci-dessous est imprimee par\n",
"# les DEUX jumeaux -- l'egalite des chaines dans les outputs conserves fait la preuve\n",
"# Instance partagee avec le jumeau C# (Tranche 3) : la chaine 81 ci-dessous est imprimee par\n",
"# les DEUX jumeaux -- l'egalite des chaines dans les outputs committees fait la preuve\n",
"# cross-twin que le meme probleme est attaque par le meme moteur des deux cotes.\n",
"import mealpy\n",
"\n",
Expand Down Expand Up @@ -2204,8 +2204,7 @@
},
"tags": []
},
"source": [
"## mealpy — le moteur métaheuristique de production\n",
"source": [ "## mealpy : le moteur metaheuristique de production\n\n> Provenance : livraison historique #10382 (parite lib-vs-lib avec le jumeau C#).\n",
"\n",
"Le corps de ce notebook implement PSO **manuellement** (numpy) : c'est le moteur pédagogique.\n",
"Le principe de **parité lib-vs-lib** — chaque jumeau atteint un moteur de production de son écosystème — demande ici un moteur dédié. Pour cette paire, le moteur est **mealpy** (PyPI, MIT, 233+ métaheuristiques) —\n",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2176,8 +2176,7 @@
"cell_type": "markdown",
"id": "95f6f1fd",
"metadata": {},
"source": [
"## Graphe Sudoku via QuikGraph (moteur .NET natif)\n",
"source": [ "## Graphe Sudoku via QuikGraph (moteur .NET natif)\n\n> Provenance : livraison historique 'Tranche 2' sans numero d'issue; le sujet pedagogique est la reduction coloriage-du-graphe sur QuikGraph.\n",
"\n",
"La section précédente construit le graphe de contraintes Sudoku **à la main** (`class SudokuGraph`, liste d'adjacence `List<int>[]`). Le jumeau Python, lui, délègue cette construction à **`networkx`** via `nx.sudoku_graph()` — un générateur qui produit directement le graphe 81 sommets / 810 arêtes avec les contraintes ligne / colonne / bloc.\n",
"\n",
Expand Down
4 changes: 2 additions & 2 deletions MyIA.AI.Notebooks/Sudoku/Sudoku-15-Infer-CSharp.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2851,7 +2851,7 @@
"id": "test-11778-md",
"metadata": {},
"source": [
"#### Test : resilience du loader apres elargissement du `catch`\n",
"#### Test de resilience du loader apres elargissement du `catch`\n",
"\n",
"A l'origine, le `catch (IOException exc)` du loader Infer.NET ne rattrapait que les erreurs de type fichier verrouille. Toute autre erreur de chargement (DLL obsolete / framework mismatch / reflection failure) remontait et faisait planter la cellule. Ce test verifie que le catch elargi attrape bien une DLL corrompue simulee et declenche la cascade de fallback (level 2 ou level 3).\n",
"\n",
Expand Down Expand Up @@ -3670,4 +3670,4 @@
},
"nbformat": 4,
"nbformat_minor": 5
}
}
2 changes: 1 addition & 1 deletion MyIA.AI.Notebooks/Sudoku/Sudoku-15-Infer-Python.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -1894,7 +1894,7 @@
"\n",
"**Parallèle structurant** (fil rouge de la série) : la v2 est montée d'un cran sur le **modèle** (paramètre recompilé par instance → prior Dirichlet observé) ; la v4 monte d'un cran sur le **graphe** (relaxation par paires → facteur structurel d'arité 9). Les deux gestes restent dans le paradigme probabiliste : aucun apport déterministe externe, pas de propagation de contraintes, pas de repli/backtracking. Les redémarrages randomisés (bruit d'initialisation des messages, tirage selon la croyance sur les plateaux) sont de l'inférence probabiliste randomisée — l'équivalent exact des restarts de MCMC.\n",
"\n",
"> Trois gestes candidats existaient pour franchir ce mur : arité 9 natif, encodage one-hot + exactly-one, régions Kikuchi/GBP — la v4 implémente le premier.\n"
"> Trois gestes candidats ont été considérés pour franchir le cap Medium : (a) arité 9 natif, (b) encodage one-hot + exactement-un, (c) régions Kikuchi / generalized belief propagation. La v4 retient (a) — les messages exacts par permanente, sur 9 arités, rendent l'ensemble de Hall directement visible au graphe, sans couche déterministe supplémentaire. (Référence de la discussion initiale : #11801.)\n"
]
},
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: b4340188b2bad3f9c05b78a5f658838116fee768
csharp_sha: 220c073d77fe16d33f89f16191762fd0fd8c99a4
content_python_sha: 9a4d60c485a287b4b90d79240438bdfce044d567c3f085290d861e7b7f63c1a4
content_csharp_sha: f61f18b3e483b85fb66297d436223a00b07edd2f9f1c62d79441b586580db17a
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 152af2e25712bef55805e00628a7c437648b21fe
csharp_sha: 957ecad6e3dfea69b137ae4a1206f47dfc319b8a
content_python_sha: 5352dca14f33cf4929a5f45520a8b9417d9c12b36cace3ce77cbcdb94ee03379
content_csharp_sha: b21378f4fabf2c5900fce09e11b798a723d49867cbf046d0bb526bf9a7223157
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 2f864839d52002078dedd535db030630feb886f0
csharp_sha: bd49f34e54f98b8d08d996787837e5ad8f4850be
content_python_sha: a823b4a4af771f1b3d3c549233e59a7c2552eb89697ae6bc4fc9cd0376954dca
content_csharp_sha: fe193d0258714ebe345b1caa37fa3c8b4c3485c88f5760bf05704f3a39341d88
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: c1c0ab1a48c40bc0b50d0b24d7553e2ecfd020b3
csharp_sha: c4e9157d2b318356c7c446779b0681517bef47a9
content_python_sha: d82affe7d9fcdd7ddac09d7a7b0e818fb492447aa705ae260f765294b7f4cd9d
content_csharp_sha: 90b1ed14401fb3ca5fb7e27daf11465cf2a6782f5a56254b447e972a249d202a
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: a7b1fc6408be364075dfa01064f1acc481ea400d
csharp_sha: 41244574ca62f3249d4f448c75e93c8059e1cd0d
content_python_sha: cea12c81a9f61527147c4846c47158c80d01edc14d7ba19bdbcff955937965bc
content_csharp_sha: 3bd660f505adda253ce501a04dedec5856a09c22e4e51143305eb3ea41ed4d1d
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 794968d219a110f709f7d8c2b80598805a5103a8
csharp_sha: 8ea8bf4ebe2196b0d09e9c0735ed9cb04b6750f0
content_python_sha: f471c4265d078af03f5354bf1e94a5235535963ccdae9ef5850dae09755dcf31
content_csharp_sha: 4e29734e57cc8da8250ab2e71920f069ba4b2784bf0febca0b5dff7a2b11a453
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 7b0c2845416e25c8293c18b4dfa1af693e838ad9
csharp_sha: 44ff2d3e2844cc17ea7076258e4b60c92b947cbd
content_python_sha: cecf27fe2c778b9b91b2315276952c16c478939eda6d29f3fb179655d9e569ca
content_csharp_sha: a0701c70254c1434ae6ec5925e92cb441462ae81473949882b47984f977b2fed
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 4969ad438dacf83dc13fcc154818932827ea8ee0
csharp_sha: e5537a12da13d4113cbe3b20426ab04f3bb07319
content_python_sha: e16fc148c825707e6702c73800603e589a66d0ec7afb037bce264050ab4b3c1c
content_csharp_sha: 944eb74b776eca035020edf4a9912840f20ca8905d53b729b87de72d8a555aa2
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 88c6f5ae56c75b604ebefa0be61d6060f961ecef
csharp_sha: dc20c2a8a8968e280d0169f2505100a9f40b2294
content_python_sha: 76a7a64fade11ace3b667bf109a939f27aea9b12ad24e4e5f8b3a60418fc2e4b
content_csharp_sha: 2be20938aa8e9adedff9d1c50b847f775dbc6bf1699b63c71f71dd305ffb89a7
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
date: '2026-10-07'
by: myia-po-2026:CoursIA-2
python_sha: 0e4817d94e7feed46ea1afdf0f15685647be3863
csharp_sha: 2a824141a79d55ff55b1670ddb58432d1921e11c
content_python_sha: b0652b39a031dd16329a776b7ae5a3017959b1a7fcf6a8073f52b78aea0e0be6
content_csharp_sha: b3f53f1bbb92ef5f94fa3a1eceb484217a940dee65c61179f56014e2a7989143
Loading