Skip to content

Tp1 notebook 002 - #22645

Closed
Emmajvx wants to merge 2 commits into
jsboige:mainfrom
Emmajvx:TP1---notebook-002
Closed

Emmajvx wants to merge 2 commits into
jsboige:mainfrom
Emmajvx:TP1---notebook-002

Conversation

@Emmajvx

@Emmajvx Emmajvx commented Oct 26, 2026

Copy link
Copy Markdown

Contribution publique : bienvenue, même sans maîtrise du harnais interne. Remplissez les sections qui vous concernent et décrivez honnêtement les tests effectués.

Étudiants (PR de TP) : remplissez seulement Summary ; votre encadrant traite les checklists et la CI.

Grain (agents internes uniquement — variation-protocol) — première ligne du body, format :

Grain: <TIER>/<GENRE> — lane <machine:workspace> — prev: <TIER>/<GENRE> #<PR>

Summary

Contribution publique

  • Mode : contribution classique / correction d'exercice
  • Issue associée : #...
  • Notebook et exercice concernés (si correction d'exercice) :
  • Crédit souhaité (nom ou pseudonyme GitHub) :

Une correction d'exercice validée sera intégrée comme exemple guidé crédité. Les mainteneurs ajouteront un nouvel exercice non résolu de difficulté comparable ; vous n'avez pas à effectuer cette transformation vous-même.

Changes

Review Checklist

  • 1. Scope — PR does exactly what it announces, nothing more, nothing less
  • 2. Post-fix validation — Automated script ran AFTER the last commit on the deliverable (not just source code)
  • 3. Pedagogical coherence — Exercises aligned with taught content, no redundancy, TODO stubs consistent, logical cell order
  • 4. Real execution — Notebooks executed with outputs (Papermill/Jupyter), Slidev ?clicks=99 for slides
  • 5. Regression check — Grep touched symbols in the rest of the repo; no unintended side effects

Anti-regression

  • No sorry introduced in Lean/Coq certified modules (run: grep -c sorry on touched .lean files)
  • No @pytest.skip or assert True added to bypass failing tests
  • Deletions on production code justified (ratio insertions/deletions reasonable)

Notebook-specific

  • No raise NotImplementedError / assert False / 1/0 in any cell (use pass or print("Exercice a completer"))
  • All code cells have execution_count: <int> + coherent outputs
  • Only notebooks with source changes are committed (rule C.3)

Test plan

Voici les exercices 2 et 3 pour le TP1, du groupe 002 composé de AYALA Thomas, JOUVENEAUX Emma et LE BORGNE Baptiste
Exercice 2 et 3 du TP1, notebook 002 pour le groupe 002
@myia-ai-01

Copy link
Copy Markdown
Collaborator

Merci pour ce TP sur Search-01 (exercices 1, 2 et 3) !

Un souci de forme, sans gravité : le fichier envoyé n'est pas le carnet lui-même. C'est la page Colab enregistrée en HTML (« Enregistrer la page sous »), renommée en .ipynb, et elle est posée à la racine du dépôt au lieu de remplacer le carnet du cours.

Nous récupérons quand même votre code depuis cette page et nous l'exécutons. Ce qui est juste sera intégré dans le carnet du cours (MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb) comme exemple guidé crédité à cette PR. Vous pouvez présenter votre travail tel quel en séance.

Pour la prochaine fois : dans Colab, Fichier > Télécharger > Télécharger le fichier .ipynb. Remplacez ensuite le carnet à son emplacement dans le dépôt, et écrivez une ligne dans la section Summary (quels exercices, ce que vous avez observé). Cette PR sera fermée une fois l'intégration faite, avec le détail de ce qui a été repris.

@myia-ai-01 myia-ai-01 mentioned this pull request Oct 26, 2026
11 tasks
@github-actions github-actions Bot added the pr-gate-missing PR gate absent du rollup: contexte requis jamais rapporte, PR bloquee, checks verts (#10928) label Oct 26, 2026
@github-actions

Copy link
Copy Markdown
Contributor

PR gate absent du rollup (advisory, #10928)

PR gate est absent du rollup de cette PR et la cause n'est pas determinee : les mesures suivantes ont ete faites, aucune ne tranche.

  • mergeable_state = blocked (pas dirty) ;
  • aucun evenement base_ref_changed dans la timeline ;
  • le sujet du commit de tete ne porte pas le token [skip ci] ;
  • auteur : Emmajvx (pas une PR bot).

Un remede au hasard coute un commit sans effet (issue #14477 : la prescription est fonction de la cause). Signaler ce cas sur le dashboard de coordination pour investigation manuelle -- c'est le cas non identifie #10902 qui reste en suspens.

Cause mesuree : mergeable_state=blocked, pas de base_ref_changed, sujet sans [skip ci], auteur Emmajvx

@myia-ai-01

Copy link
Copy Markdown
Collaborator

Votre travail est intégré dans le carnet du cours : PR #22659.

Ce qui a été repris

  • Exercice 2 (taille de l'espace d'états des taquins) : correct. La fonction taille_espace(k), les deux assertions sur les valeurs connues (181 440 et 10 461 394 944 000), le cas limite du 3-puzzle et l'ordre de grandeur du temps d'énumération sont repris tels quels.
  • Exercice 3 (labyrinthe) : correct. Le constructeur retrouve S et E sans rien coder en dur, et les deux cas limites (sortie voisine, sortie emmurée) sont testés avant la grille de l'énoncé. Sur la grille 5x7, BFS trouve le plus court chemin en 18 étapes.

Les deux deviennent des exemples guidés crédités à cette PR (#22645) dans MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb, section 7. Deux exercices neufs les remplacent pour les élèves suivants : vérifier l'invariant de parité du taquin, et un labyrinthe avec clé et porte. Une seule retouche dans votre code : le renvoi « Search-3 » pointe désormais vers le nom réel du carnet, Search-03-Informed.

Le carnet intégré, exécuté, est visible ici pour la présentation :
https://github.com/jsboige/CoursIA/blob/feature/22645-search01-exemples-guides/MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb

L'exercice 1 (missionnaires et cannibales) n'a pas pu être repris. Colab n'écrit dans la page HTML que les cellules qu'on a fait défiler à l'écran, et votre code pour cet exercice n'y figure pas. Il reste donc un exercice ouvert dans le carnet.

Ce qu'il aurait fallu faire, pour la prochaine fois

  1. Dans Colab : Fichier > Télécharger > Télécharger le fichier .ipynb. On obtient le vrai carnet, avec le code de toutes les cellules et leurs sorties. « Enregistrer la page sous » donne une page web, pas un carnet.
  2. Remplacer, dans votre fork, le carnet existant à son emplacement (MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb), au lieu d'ajouter un fichier à la racine du dépôt.
  3. Remplir la section Summary de la PR : quels exercices sont faits.

Je ferme cette PR puisque son contenu vit désormais dans #22659. Merci pour ce travail soigné !

@myia-ai-01 myia-ai-01 closed this Oct 26, 2026
myia-ai-01 pushed a commit that referenced this pull request Oct 26, 2026
… taquins, labyrinthe) et exercices 4-5 (#22659)

* Add(Search,#22645): Search-01 -- exemples guides credites (taille des taquins, labyrinthe) et exercices 4-5

Les exercices 2 et 3 de Search-01-StateSpace, resolus dans la PR de TP
#22645, deviennent des exemples guides credites par numero de PR. Deux
exercices neufs les remplacent pour garder trois activites :
- exercice 4 : verifier l'invariant de parite du taquin (inversions,
  BFS depuis le but, 181 440 etats attendus) ;
- exercice 5 : labyrinthe a cle, ou l'etat doit porter la cle en plus
  de la position (12 etapes attendues).

Interpretation du labyrinthe reecrite d'apres la sortie reelle
(24 cases accessibles, plus court chemin de 18 etapes). Carnet
re-execute de bout en bout (21/21 cellules, 0 erreur).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Fix(Search,#22659): re-execution sous 3.13 et asymetrie de jumeau documentee

- Re-execution complete sous Python 3.13.16 (canon d'execution locale),
  21/21 cellules, 0 erreur : le kernel drift 3.13 -> 3.12 est leve.
- Registre de parite : les nouveaux exercices (parite du taquin,
  labyrinthe a cle) sont cote Python seul ; portage C# suivi par #22680.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Chore(Search,#22659): attestation de parite Search-01 apres integration du TP

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@myia-ai-01

Copy link
Copy Markdown
Collaborator

C'est fait : la PR #22659 est mergée (2026-10-26T16:44:37Z). Le carnet du cours MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb contient maintenant vos deux exemples guidés (taille des taquins, labyrinthe), crédités à cette PR, avec leurs sorties d'exécution. Vous pouvez désormais vous appuyer sur la version de main. Merci encore pour ce travail.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-gate-missing PR gate absent du rollup: contexte requis jamais rapporte, PR bloquee, checks verts (#10928)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants