Permalink
Browse files

blog post

  • Loading branch information...
sdpython committed Oct 22, 2016
1 parent 99a7b3b commit b018f7cb7a26a8487727f7403f5dc01e0ddc5954
@@ -0,0 +1,28 @@
.. blogpost::
:title: Est-ce plus facile quand on est plus grand ?
:keywords: mathématiques, coding goûter
:date: 2016-10-22
:categories: question
Dans le cadre de la `CodeWeek <http://www.codeweekfrance.org/>`_,
j'ai animé un atelier (:ref:`l-session_2016_10_18`).
Après un exercice, j'explique aux enfants que j'anime presque le même
atelier avec mes étudiants de 20 ans à l'ENSAE. Une fille me répond
et me dit avec peu d'assurance que ce doit être plus facile pour eux.
Est-ce vraiment plus facile de comprendre les algorithmes
quand on est à l'université ?
Je n'en suis pas persuadé et c'est ce que je réponds.
A l'université, les étudiants savent plus de choses,
savent s'appuyer sur la solution d'un exercice similaire mais
comprendre n'est pas forcément plus facile quand on est plus grand.
Ma réponse a laissé mon interlocutrice quelque peu circonspecte.
Deux jours plus tard, je raconte cette histoire à un de mes étudiants
de 20 ans. Il prend le temps de réfléchir et finit par acquiescer.
*Non, ce n'est pas forcément plus facile.*
Les enfants de 20 ans ont sans doute plus l'habitude
de réfléchir pendant une longue période qu'un enfant de 10 ans.
C'est peut-être là la difficulté.
@@ -8,17 +8,40 @@
Les chaises chaotiques (solution)
=================================
Le problème n'est pas évident à résoudre et il n'existe pas
d'algorithme rapide qui retourne la solution parfaite.
**Q1 :** Il n'y a pas de solution unique. Dans une salle de classe rectangulaire,
il suffit de retourner la disposition, le premier rang devient le dernier, le
second rang devient l'avant-dernier. C'est la même disposition mais symétrique.
C'est comme regarder la classe dans un miroir. Alors si on trouve une bonne solution,
il en existe une autre tout aussi bonne par symétrie.
Pour aller plus loin
++++++++++++++++++++
**Q2 :** Le problème consiste à faire en sorte que deux amis soient voisins,
deux la distance entre deux amis soit la plus petite possible. Comme on veut que cela le
cas pour toutes les pairs d'amis, on veut que toutes les distances soient les plus
petites possibles. Comme on ne peut pas toujours contenter tout le monde,
on va chercher à obtenir la plus petite somme des distances possibles.
L'idée derrière cet exercice est de partir d'une idée simple puis de la décrire
étape par étape. L'idée consiste à considérer la paire d'amis les plus éloignés
l'un de l'autre et de voir si cela améliore la situation.
#. On choisit la paire d'amis les plus éloignés.
#. On échange les positions.
#. On calcule la somme des distances de chaque paire.
#. Si la nouvelle somme est plus petite que la précédente,
on garde la nouvelle disposition et on retourne
à l'étape 1. Dans le cas contraire, on passe à une autre
paire d'amis et on retourne à l'étape 2.
Il y a plein de façon d'améliorer ce premier jet mais ce n'est
pas tant la solution que la façon de la construire qu'il faut retenir.
Le module :mod:`classroom <code_beatrix.algorithm.classroom>`
contient les fonctions qui ont permis de produire la suite d'images
qui suit.
L'algorithme proposé est assez simple et peut être amélioré.
Les `cartes de Kohonen <https://fr.wikipedia.org/wiki/Carte_auto_adaptative>`_
sont une autre solution également possible. Cette version s'inspire
de la version développée pour les
`plus court chemin passant par tous les noeuds d'un graphe <http://www.xavierdupre.fr/app/ensae_teaching_cs/helpsphinx3/specials/tsp_kohonen.html?highlight=kohonen>`_.
Illustration de la solution
@@ -83,3 +106,13 @@ Illustration de la solution
.. image:: images/classroom_0019.png
:width: 400px
Pour aller plus loin
++++++++++++++++++++
L'algorithme proposé est assez simple et peut être amélioré.
Les `cartes de Kohonen <https://fr.wikipedia.org/wiki/Carte_auto_adaptative>`_
sont une autre solution également possible. Cette version s'inspire
de la version développée pour les
`plus court chemin passant par tous les noeuds d'un graphe <http://www.xavierdupre.fr/app/ensae_teaching_cs/helpsphinx3/specials/tsp_kohonen.html?highlight=kohonen>`_.

0 comments on commit b018f7c

Please sign in to comment.