<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Graphes | Dr. Goulu</title><link>https://drgoulu.com/tags/graphes/</link><atom:link href="https://drgoulu.com/tags/graphes/index.xml" rel="self" type="application/rss+xml"/><description>Graphes</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>fr-FR</language><lastBuildDate>Wed, 09 Apr 2014 00:00:00 +0000</lastBuildDate><image><url>https://drgoulu.com/media/icon_hu_eee4a95885829ab2.png</url><title>Graphes</title><link>https://drgoulu.com/tags/graphes/</link></image><item><title>Bits en vrac</title><link>https://drgoulu.com/2014/04/09/bits-en-vrac/</link><pubDate>Wed, 09 Apr 2014 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2014/04/09/bits-en-vrac/</guid><description>&lt;p&gt;Quelques découvertes informatiques en vrac&lt;/p&gt;
&lt;h3 id="les-formulaires-google-drive"&gt;Les formulaires Google Drive&lt;/h3&gt;
&lt;p&gt;Le 
 m&amp;rsquo;a permis d&amp;rsquo;expérimenter la puissance et la facilité d&amp;rsquo;utilisation des
 . C&amp;rsquo;est simplement génial :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;dans
, on crée un document de type formulaire&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;on se retrouve dans un éditeur permettant de composer le formulaire. On peut définir le type de chaque champ : texte, choix multiple, cases à cocher, échelle d&amp;rsquo;évaluation, tout y est. On peut ajouter des règles de validation et des actions à effectuer en fonction des réponses&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 480px; width: 100%;"&gt;&lt;a href="https://drgoulu.com/wp-content/uploads/2014/04/form-editor1.png" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2014/images/form-editor1_hu_a9cf01977cab59c3.webp" srcset="https://drgoulu.com/posts/2014/images/form-editor1_hu_a9cf01977cab59c3.webp 320w, https://drgoulu.com/posts/2014/images/form-editor1_hu_2c5aa1c6d7189fc8.webp 480w, https://drgoulu.com/posts/2014/images/form-editor1_hu_f1e314e3652ae458.webp 662w" sizes="(max-width: 640px) 100vw, 480px" alt="Editeur de Formulaire Google Drive" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;Editeur de Formulaire Google Drive&lt;/figcaption&gt;&lt;/figure&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;En cliquant le bouton &amp;ldquo;afficher le formulaire en ligne&amp;rdquo; on peut voir à quoi ça ressemble pour les utilisateurs et même tester le système, car la collecte des réponses est immédiate : rien à faire de particulier !&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lorsque le formulaire  est prêt, il suffit d&amp;rsquo;envoyer le lien disponible par &amp;ldquo;Envoyer le formulaire&amp;rdquo; à des personnes choisies, ou d&amp;rsquo;intégrer la page sur un site web dans un &lt;iframe&gt;. Plusieurs blogs du C@fé des sciences l&amp;rsquo;ont même fait simultanément sans aucun problème car le formulaire n&amp;rsquo;existe en réalité (virtuelle&amp;hellip;) que chez Google.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Les réponses sont automatiquement collectées dans un document &amp;ldquo;tableur&amp;rdquo; sur Google Drive : une ligne est créée pour chaque formulaire rempli, chaque colonne correspondant à un champ. Notez la colonne &amp;ldquo;horodateur&amp;rdquo; remplie automatiquement, bien utile.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 480px; width: 100%;"&gt;&lt;img src="https://drgoulu.com/posts/2014/images/googleform1_hu_a6abe314f2fb0325.webp" srcset="https://drgoulu.com/posts/2014/images/googleform1_hu_a6abe314f2fb0325.webp 320w, https://drgoulu.com/posts/2014/images/googleform1_hu_8d5bf332d6b672ce.webp 480w, https://drgoulu.com/posts/2014/images/googleform1_hu_f13ef0042a2a4867.webp 600w" sizes="(max-width: 640px) 100vw, 480px" alt="Table des résultats" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;figcaption&gt;Table des résultats&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Ce que j&amp;rsquo;ai trouvé assez impressionnant est que l&amp;rsquo;on peut modifier le tableau sans perturber les votes suivants. Apparemment chaque champ du formulaire est attaché à une colonne par un lien invisible, mais solide : même si on ajoute ou déplace des colonnes, les réponses suivantes restent cohérentes avec les réponses précédentes. Pour le quiz, j&amp;rsquo;ai ajouté la ligne 2 avec les bonnes réponses ainsi que la colonne D Score. Notez au passage la  géniale formule qui compte le nombre de réponses correctes avec 
 et sumproduct. Elle n&amp;rsquo;est pas de moi, et il parait qu&amp;rsquo;elle est possible aussi en Excel&amp;hellip;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;figure class="alignright" style="max-width: 300px; width: 100%;"&gt;&lt;img src="https://drgoulu.com/posts/2014/images/stats_hu_81fae1c181f07c07.webp" srcset="https://drgoulu.com/posts/2014/images/stats_hu_81fae1c181f07c07.webp 320w, https://drgoulu.com/posts/2014/images/stats_hu_64ee39dadb93f1b2.webp 480w, https://drgoulu.com/posts/2014/images/stats_hu_4f036da3e04e65df.webp 600w" sizes="(max-width: 640px) 100vw, 300px" alt="stats" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;figcaption&gt;résumé des réponses&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Une petite dernière pour la route : dans le menu &amp;ldquo;Formulaire&amp;rdquo; on peut &amp;ldquo;afficher le résumé des réponses&amp;rdquo; qui présente les résultats sous une forme graphique qui peut être bien utile.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Les formulaires Google Drive permettent de réaliser facilement des sondages, quiz et concours divers avec toute la puissance et la sécurité (&amp;hellip;) de l&amp;rsquo;infrastructure Google. Ca fait déjà des
dans le C@fé &amp;hellip;&lt;/p&gt;
&lt;h3 id="curation-v30"&gt;Curation V.3.0‎&lt;/h3&gt;
&lt;p&gt;Rien à faire, il n&amp;rsquo;y a toujours pas mieux pour suivre les sites intéressants que les
. J&amp;rsquo;ai longtemps utilisé
avec lequel j&amp;rsquo;ai commencé à faire de la
. En effet, en cochant simplement les articles que je trouvais intéressants, Google Reader les agrégeait dans un flux RSS &amp;ldquo;de sortie&amp;rdquo; que je pouvais publier sur
.&lt;/p&gt;
&lt;p&gt;Puis Google a annoncé la fermeture de Reader (toujours incompréhensible pour moi) et j&amp;rsquo;ai utilisé
. C&amp;rsquo;était une bonne idée : Scoop.it permet d&amp;rsquo;agréger non seulement des flux RSS, mais aussi des tweets, le contenu de pages Facebook et de recherches Google. On peut créer ainsi plusieurs &amp;ldquo;topics&amp;rdquo; thématiques, et de jolis widgets comme celui ci-contre à droite. Mais le point fort de Scoop.it, c&amp;rsquo;est ses possibilités de partage : chaque contenu &amp;ldquo;scoopé&amp;rdquo; peut être partagé automatiquement sur Twitter, Facebook, Gogle+ et Tumblr, entre autres.&lt;/p&gt;
&lt;p&gt;Scoop.it, c&amp;rsquo;est vraiment bien, mais &amp;hellip; il y a un problème rédhibitoire : les liens du contenu partagé sont modifiés pour conduire les visiteurs sur la page Scoop.it du topic, et pas directement vers l&amp;rsquo;article original. Ceci a trois conséquences que je trouve gênantes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;La première n&amp;rsquo;est pas trop grave : les lecteurs doivent cliquer deux fois pour arriver à l&amp;rsquo;article qui les intéresse, une fois sur la page où ils voient le contenu partagé, puis une seconde fois sur la page Scoop.it.&lt;/li&gt;
&lt;li&gt;La seconde fausse les analyses de trafic, qui semble provenir de Scoop.it plutôt que du site de partage. Ainsi par exemple mon site a accueilli plus de 2000 visiteurs passés par Scoop.it en un an sans qu&amp;rsquo;il me soit possible de déterminer où ces 2000 personnes ont initialement découvert l&amp;rsquo;article qui les intéressait.&lt;/li&gt;
&lt;li&gt;La troisième touche le droit d&amp;rsquo;auteur : les outils de partage qui changent les liens diffusent le contenu d&amp;rsquo;autrui en coupant le lien vers la source, qui est parfois le seul élément identifiant l&amp;rsquo;auteur. Je me suis soudain aperçu que
 &amp;ldquo;rebloguait&amp;rdquo; automatiquement les articles que je trouvais intéressants, parfois en me les attribuant implicitement puisqu&amp;rsquo;il n&amp;rsquo;y avait plus de mention du site original.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Je me suis donc mis en chasse de nouveaux outils de curation, et après quelques essais j&amp;rsquo;ai choisi le &amp;ldquo;trio de la curation V.3&amp;rdquo; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
 comme agrégateur de flux. Il offre grosso-modo les fonctionnalités de Google Reader,  une
, plus une
 (en fait un plugin d&amp;rsquo;un agrégateur plus général). Chaque jours je parcours une centaine d&amp;rsquo;articles en sautant d&amp;rsquo;un à l&amp;rsquo;autre en pressant la touche
\[j\], et si je le trouve intéressant je le lis et je presse
\[s\]comme &amp;ldquo;star&amp;rdquo;. Ca le marque comme favori et l&amp;rsquo;ajoute à mon
.&lt;/li&gt;
&lt;li&gt;
Je pourrais utiliser directement CommaFeed pour partager le contenu sur Facebook, Twitter, Google+ et autres (mais pas Tumblr). Mais surtout, il me faudrait le faire manuellement : 6 ou 8 clicks de plus, c&amp;rsquo;est trop. Alors j&amp;rsquo;ai utilisé
, un service qui permet d&amp;rsquo;automatiser des tâches internet en créant des &amp;ldquo;recettes&amp;rdquo; de la forme If This Then That . J&amp;rsquo;ai ainsi créé des &amp;ldquo;recettes&amp;rdquo; qui partagent automatiquement le contenu de mon flux de sortie vers mes pages Facebook, Google+, App.net et Tumblr. Automatiquement. Rien d&amp;rsquo;autre à faire :-)  (Pour Twitter j&amp;rsquo;hésite encore&amp;hellip;)&lt;/li&gt;
&lt;li&gt;Et j&amp;rsquo;utilise toujours Scoop.it pour atteindre les utilisateurs de cette plateforme et profiter des beaux widgets, mais je n&amp;rsquo;utilise plus les outils de partage. En attendant qu&amp;rsquo;IFTTT permette de &amp;ldquo;scooper&amp;rdquo; automatiquement, j&amp;rsquo;utilise le flux de sortie comme unique source dans Scoop.it et je &amp;ldquo;scoope&amp;rdquo; à la main tout ce que j&amp;rsquo;ai préalablement sélectionné dans CommaFeed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Tout ça ne me demande en définitive pas plus d&amp;rsquo;efforts que de tourner les pages d&amp;rsquo;un journal en papier, et je peux me concentrer sur la lecture tout en gardant une trace dont vous pouvez profiter où vous le souhaitez.&lt;/p&gt;
&lt;h3 id="networkx"&gt;NetworkX&lt;/h3&gt;
&lt;p&gt;
 est une librairie Python permettant de représenter et traiter des problèmes de graphes. Je l&amp;rsquo;utilise professionnellement assez intensivement ces temps-ci pour un
, mais l&amp;rsquo;autre jour il m&amp;rsquo;a permis de résoudre le
 du
 en quelques lignes seulement. En fait la plupart servent à lire le fichier des données, puis la partie intéressante tient en une seule ligne :&lt;/p&gt;
\[source lang="Python"\]&lt;p&gt;print G.size(weight=&amp;lsquo;weight&amp;rsquo;) - minimum_spanning_tree(G, weight=&amp;lsquo;weight&amp;rsquo;).size(weight=&amp;lsquo;weight&amp;rsquo;)&lt;/p&gt;
\[/source\]&lt;p&gt;Fort non ? Hélas il me semble que peu de problèmes du Project Euler concernent les graphes, donc je ne vais pas pouvoir améliorer mon score rapidement &amp;hellip;&lt;/p&gt;
&lt;h3 id="2048"&gt;2048&lt;/h3&gt;
&lt;p&gt;
Cet article serait paru il y a trois jours si je n&amp;rsquo;étais pas tombé sur
, le jeu addictif du moment. C&amp;rsquo;est un jeu tellement simple qu&amp;rsquo;il aurait du être inventé avant Pac-Man. Et on voit tout de suite comment faire : placer les puissances de 2 les unes à côté des autres pour former une chaîne croissante et propager ainsi les sommes pour arriver à former enfin, après 1024 coups au minimum, la tant convoitée pièce 2048. Il m&amp;rsquo;a fallu 3 jours. Enfin 3 soirs. 3 nuits&amp;hellip;&lt;/p&gt;
&lt;p&gt;A un certain moment j&amp;rsquo;en ai eu marre et voulu utiliser la bonne vieille méthode pour résoudre les problèmes compliqués : programmer. Mais Matt Overlan a été plus rapide et efficace :
 et est très instructif. Je crois que c&amp;rsquo;est la première fois de ma vie qu&amp;rsquo;un ordinateur m&amp;rsquo;apprend à résoudre un casse-tête plutôt que l&amp;rsquo;inverse. Peu après avoir observé le solveur parvenir au 2048, j&amp;rsquo;ai appris à dominer ma tentation d&amp;rsquo;additionner coûte que coûte les nombres les plus élevés et à conserver des lignes ou des colonnes de 4 cases &amp;ldquo;bloquées&amp;rdquo;, et j&amp;rsquo;ai gagné.&lt;/p&gt;
&lt;p&gt;Après certains passent au 
 voire au 
, mais je crois que je vais plutôt attaquer la version &amp;ldquo;
&amp;rdquo; de Valentine. Un peu déroutant de prime abord, mais j&amp;rsquo;aime beaucoup l&amp;rsquo;idée un peu holiste qu&amp;rsquo;il y a là derrière&amp;hellip; Bravo !&lt;/p&gt;</description></item><item><title>Le postier chinois de Königsberg</title><link>https://drgoulu.com/2013/11/22/le-postier-chinois-de-konigsberg/</link><pubDate>Fri, 22 Nov 2013 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2013/11/22/le-postier-chinois-de-konigsberg/</guid><description>&lt;h3 id="les-ponts-de-königsberg"&gt;Les ponts de Königsberg&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;(Ce paragraphe d&amp;rsquo;introduction est une traduction de l&amp;rsquo;article &amp;ldquo;
&amp;rdquo; paru sur Plus Maths)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Au 18ème siècle, la ville que nous connaissons sous le nom de Kaliningrad s&amp;rsquo;appelait Königsberg et se trouvait en Prusse. Comme beaucoup d&amp;rsquo;autres grandes villes, Königsberg se trouve sur une rivière, la Pregel. Elle comportait deux îles et il y avait sept ponts reliant les différentes terres. Un fameux casse-tête de l&amp;rsquo;époque était de trouver un chemin à travers la ville qui passait une seule fois par chaque pont. Plusieurs personnes disaient avoir trouver un tel chemin, mais lorsqu&amp;rsquo;on leur demandait de le reproduire, personne n&amp;rsquo;y arrivait. En 1735 le mathématicien suisse 
 expliqua pourquoi : il démontra qu&amp;rsquo;un tel chemin n&amp;rsquo;existait pas.&lt;/p&gt;
&lt;p&gt;La solution d&amp;rsquo;Euler est étonnamment simple, une fois que vous considérez le problème sous le bon angle. Le truc est d&amp;rsquo;éliminer toute information inutile. Le chemin parcouru sur terre n&amp;rsquo;a pas d&amp;rsquo;importance. La forme de ces terres n&amp;rsquo;a pas d’importance, ni le trajet de la rivière ou la forme des ponts. Donc vous pouvez simplement représenter chaque terre par un point et chaque pont par une ligne liant deux points. Vous n&amp;rsquo;avez pas du tout besoin de respecter la géographie : aussi longtemps que vous ne modifiez pas la connectivité des points, lequel est connecté auxquels, vous pouvez déformer votre dessin autant que vous voulez sans changer le problème.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 677px; width: 100%;"&gt;&lt;a href="https://fr.wikipedia.org/wiki/Probl%C3%A8me_des_sept_ponts_de_K%C3%B6nigsberg" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2013/images/ed585263c3bf0d48232cff6a3fd994f1_hu_fdec267c6b269e63.webp" srcset="https://drgoulu.com/posts/2013/images/ed585263c3bf0d48232cff6a3fd994f1_hu_fdec267c6b269e63.webp 320w, https://drgoulu.com/posts/2013/images/ed585263c3bf0d48232cff6a3fd994f1_hu_90ba7eb01d921104.webp 480w, https://drgoulu.com/posts/2013/images/ed585263c3bf0d48232cff6a3fd994f1_hu_3f5596c9107fb13c.webp 677w" sizes="(max-width: 640px) 100vw, 677px" alt="Transformation du problème (source : Wikipédia)" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;Transformation du problème (source : Wikipédia)&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Une fois que vous avez représenté le problème de cette façon, ses caractéristiques sont bien plus simples à voir. Après avoir un peu joué avec, vous constaterez ceci : en arrivant sur un point, et à moins que ce soit la dernière étape de votre chemin, vous devrez repartir par une ligne différente de celle d&amp;rsquo;arrivée puisque c&amp;rsquo;est la règle du jeu. Ca signifie que chaque point à l&amp;rsquo;exception du départ et de l&amp;rsquo;arrivée de votre chemin doit avoir un nombre pair de lignes le connectant aux autres : pour chaque lien entrant il doit y en avoir un pour en repartir.&lt;/p&gt;
&lt;p&gt;Donc pour qu&amp;rsquo;un chemin qui passe une et une seule fois par chaque ligne existe, il ne doit pas y avoir plus de deux points avec un nombre impair de lignes connectées. En fait il ne peut y avoir que deux points impairs ou pas du tout. Dans le premier cas les deux points impairs sont forcément les points de départ et d&amp;rsquo;arrivée, alors que dans le second, le chemin est un circuit fermé. Or dans le problème de Königsberg, tous les points ont un nombre impair de connexions, donc un chemin ne passant qu&amp;rsquo;une seule fois par chaque pont est impossible.&lt;/p&gt;
&lt;p&gt;Ce résultat d&amp;rsquo;Euler marque le début de la 
, l&amp;rsquo;étude de réseaux de points connectés par des liens. Euler a d&amp;rsquo;ailleurs aussi démontré que si la condition mentionnée plus haut est respectée, à savoir que le nombre de points avec un nombre impairs de liens est soit deux soit zéro, alors il existe toujours un chemin qui passe par chaque lien exactement une fois.&lt;/p&gt;
&lt;h3 id="voyageur-de-commerce-et-postier-chinois"&gt;Voyageur de commerce et postier chinois&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;(à partir de là c&amp;rsquo;est du pur Dr. Goulu)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A part dans les casse-tête, on trouve très souvent en pratique des problèmes pouvant être résolus grâce à la théorie des graphes. Par exemple, 
 avec le 
 (TSP), j&amp;rsquo;avais eu l&amp;rsquo;occasion de le rencontrer dans l&amp;rsquo;optimisation des mouvements d&amp;rsquo;une machine à percer les circuits électroniques.&lt;/p&gt;
&lt;p&gt;Dans le TSP, le but est de trouver le circuit (fermé) dit &amp;ldquo;
&amp;rdquo; passant par tous les points d&amp;rsquo;un graphe, et dont le coût soit minimum, en pratique celui dans lequel la distance totale à parcourir (ou mieux encore le temps nécessaire) est minimum. A Königsberg, un voyageur de commerce aurait l&amp;rsquo;embarras du choix d&amp;rsquo;un circuit lui permettant de visiter ses clients sur les 4 terres, mais s&amp;rsquo;il devait s&amp;rsquo;acquitter de péages différents selon les ponts, un petit calcul lui serait nécessaire. Pour des problèmes de taille réelle, trouver le minimum absolu est horriblement difficile voire impossible, mais il existe des méthodes itératives qui convergent assez rapidement vers des solutions raisonnablement proches de l&amp;rsquo;optimum.&lt;/p&gt;
&lt;p&gt;&lt;figure class="aligncenter" style="max-width: 640px; width: 100%;"&gt;&lt;a href="http://www.sciencedirect.com/science/article/pii/S0924013604006727" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2013/images/d7f65bac716c02c91473d8bc005d8224_hu_aa4022c7ff6d0ead.webp" srcset="https://drgoulu.com/posts/2013/images/d7f65bac716c02c91473d8bc005d8224_hu_aa4022c7ff6d0ead.webp 320w, https://drgoulu.com/posts/2013/images/d7f65bac716c02c91473d8bc005d8224_hu_ed143e875e988ae4.webp 480w, https://drgoulu.com/posts/2013/images/d7f65bac716c02c91473d8bc005d8224_hu_78dd70128190f388.webp 640w" sizes="(max-width: 640px) 100vw, 640px" alt="Etapes de l&amp;#39;optimisation TSP du trajets d&amp;#39;une perceuse de circuits imprimés [[1]](#ref-1)" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;Etapes de l&amp;rsquo;optimisation TSP du trajets d&amp;rsquo;une perceuse de circuits imprimés&lt;/figcaption&gt;&lt;/figure&gt;
Plus récemment j&amp;rsquo;ai rencontré le 
, ainsi nommé parce qu&amp;rsquo;il s&amp;rsquo;agit d&amp;rsquo;un problème que connaissent tous les postiers, mais qui a été étudié mathématiquement par un chinois, Mei-Ko Kwan en 1962. Il s&amp;rsquo;agit de trouver le plus court circuit qui permette à un postier de parcourir toutes les rues de sa zone au moins une fois. Il est clair que s&amp;rsquo;il existe un
 permettant de ne passer qu&amp;rsquo;une et une seule fois par chaque ligne, ce circuit serait en même temps la solution du postier chinois. Mais quand ce n&amp;rsquo;est pas le cas, il faut forcément parcourir plusieurs fois certaines rues.&lt;/p&gt;
&lt;p&gt;Si le postier doit desservir des échoppes situées sur chacun des ponts de Königsberg, combien de traversées de ponts au total sont nécessaires à sa tournée? Arrive-t-on à réduire ce nombre en employant deux postiers? Et si on construisait un nouveau pont? (Pas deux, ce serait trop facile.)&lt;/p&gt;
&lt;p&gt;En gros j&amp;rsquo;ai ce problème avec environ 200 rues dispersées dans plusieurs villages, plusieurs postiers, et pour couronner le tout il y a du vent : il est plus facile de parcourir les rues dans un sens que dans l&amp;rsquo;autre. Mais avec Python,
 et un peu de lecture
, je devrais m&amp;rsquo;en sortir&amp;hellip;&lt;/p&gt;
&lt;h3 id="références"&gt;Références&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;E. Aoyama, T. Hirogaki, T. Katayama, and N. Hashimoto, &amp;ldquo;Optimizing drilling conditions in printed circuit board by considering hole quality&amp;rdquo; J. Mater. Process. Technol., vol. 155, pp. 1544–1550, 2004.&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-2"&gt;&lt;/span&gt;E. Benavent, A. Corberan, I. Plana, and J. M. Sanchis, &amp;ldquo;Min-Max k-vehicles windy rural postman problem&amp;rdquo; Networks, vol. 54, no. 4, pp. 216–226, Dec. 2009
\[[pdf](http://www.uv.es/sestio/TechRep/tr09-07.pdf)\]&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-3"&gt;&lt;/span&gt;Grötschel, M., &amp;amp; Yuan, Y.&amp;ldquo;Euler, Mei-Ko Kwan, Königsberg, and a Chinese Postman&amp;rdquo;, 2012 
\[[pdf](http://www.math.uiuc.edu/documenta/vol-ismp/16_groetschel-martin-yuan-ya-xiang.pdf)\]&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-4"&gt;&lt;/span&gt;Grötschel, M. (Ed.) &amp;ldquo;Optimization Stories (Extra Volume)&amp;rdquo;, 2012, 21st International Symposium on Mathematical Programmng (p. 460). Berlin: Documenta Mathematica: Journal der Deutschen Mathematiker-Vereinigung.  ISBN 3936609586 / 978-3936609585 (Excellent recueil d&amp;rsquo;articles sur l&amp;rsquo;histoire de la théorie des graphes) 
\[[pdf](https://www.zib.de/groetschel/publications/OptimizationStories.pdf)\]&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Icosien, le nouveau jeu de Neamar</title><link>https://drgoulu.com/2010/06/24/icosien-le-nouveau-jeu-de-neamar/</link><pubDate>Thu, 24 Jun 2010 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2010/06/24/icosien-le-nouveau-jeu-de-neamar/</guid><description>&lt;p&gt;Il l&amp;rsquo;avait annoncé, il l&amp;rsquo;a fait : Neamar a ajouté un nouveau jeu à sa
:
. Et c&amp;rsquo;est un excellent jeu. En réalité il y a même deux jeux pour le prix d&amp;rsquo;un seul:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Dans les 10 premiers tableaux, il s&amp;rsquo;agit de reproduire le motif gris d&amp;rsquo;un seul mouvement de souris, sans repasser deux fois sur le même trait (mais les croisements de fil sont autorisés). En termes techniques, il s&amp;rsquo;agit de vérifier que ces tableaux sont des
. Pas trop difficile une fois qu&amp;rsquo;on a trouvé le truc.&lt;/li&gt;
&lt;li&gt;Dans les 10 tableaux suivants, il faut passer une et une seule fois par chaque noeud, en utilisant uniquement les traits disponibles  (mais on n&amp;rsquo;est pas obligé de passer sur tous les traits). Pour les matheux, il s&amp;rsquo;agit de trouver des
. Là, la difficulté passe de &amp;ldquo;petit casse-tête sympa&amp;rdquo; à &amp;ldquo;horrible arrache neurones énervant&amp;rdquo;&amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="aligncenter" style="max-width: 512px; width: 100%;"&gt;&lt;a href="http://neamar.fr/Res/Icosien/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2010/images/f860cf98facccf60ba0d8705f857b25d_hu_9bbb1725535fd412.webp" srcset="https://drgoulu.com/posts/2010/images/f860cf98facccf60ba0d8705f857b25d_hu_9bbb1725535fd412.webp 320w, https://drgoulu.com/posts/2010/images/f860cf98facccf60ba0d8705f857b25d_hu_63f5f4308df1f44d.webp 480w, https://drgoulu.com/posts/2010/images/f860cf98facccf60ba0d8705f857b25d_hu_72c666326f4480bd.webp 640w" sizes="(max-width: 640px) 100vw, 512px" alt="tableau19" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;J&amp;rsquo;en suis là. C&amp;rsquo;est dur. Regarder la soluce de Neamar serait déshonorant. A l&amp;rsquo;aide Python !&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;De plus, je décerne à Icosien le titre envié de &amp;ldquo;plus beau jeu de graphes du web&amp;rdquo; pour deux raisons:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Le design de Licoti (
) est vraiment réussi. Bravo !&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;L&amp;rsquo;interface utilisateur est tout simplement géniale. Quand Neamar avait pondu un
, je n&amp;rsquo;avais pas compris à quel point son système est simple et efficace.  Je réalise maintenant que sans ça, ce beau jeu aurait été injouable.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Enfin, mentionnons qu&amp;rsquo;Icosien peut être instructif. &amp;ldquo;Peut&amp;rdquo; car on n&amp;rsquo;est pas obligé de connaitre la théorie des graphes pour y jouer, mais qu&amp;rsquo;y jouer peut inciter à la lecture des nombreuses informations figurant sur la page du jeu, et  suivre les liens conduit vers pleins d&amp;rsquo;infos intéressantes.&lt;/p&gt;
&lt;h3 id="a-voir-aussi"&gt;A voir aussi:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;le &amp;ldquo;
&amp;rdquo; (spoiler alert ! cetta page contient la solution de certains tableaux, dont le 19, argh! )&lt;/li&gt;
&lt;li&gt;le
en Action Script 3&lt;/li&gt;
&lt;li&gt;la version 1857 de l&amp;rsquo; &amp;ldquo;
&amp;rdquo; par Hamilton himself, en vrai bois d&amp;rsquo;arbre&lt;/li&gt;
&lt;li&gt;&amp;ldquo;
&amp;rdquo; sur MathWorld&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Optimisation de la Joconde</title><link>https://drgoulu.com/2010/06/14/optimisation-de-la-joconde/</link><pubDate>Mon, 14 Jun 2010 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2010/06/14/optimisation-de-la-joconde/</guid><description>&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2010/images/10c3a606506bb2299f7b51b61b0ea16f_hu_8bcd780715f0223d.webp 320w, https://drgoulu.com/posts/2010/images/10c3a606506bb2299f7b51b61b0ea16f_hu_315b0c3a1d12812b.webp 400w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2010/images/10c3a606506bb2299f7b51b61b0ea16f_hu_8bcd780715f0223d.webp"
width="400"
height="400"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
Voici enfin l&amp;rsquo;occasion de consacrer un article marrant au célèbre mais barbant &amp;ldquo;
&amp;rdquo;. J&amp;rsquo;ai réalisé une applet en processing qui dessine Mona Lisa avec une seule ligne brisée zig-zaguant entre 100'000 points sans jamais s&amp;rsquo;entrecouper. De plus la ligne n&amp;rsquo;a ni début ni fin, elle forme un cycle. Autrement dit, on peut dessiner la Joconde comme un cercle déformé, sans lever le crayon&amp;hellip; Voici ce que ça donne ( c&amp;rsquo;est publié aussi 
:&lt;/p&gt;
\[processing\]&lt;p&gt;TSPart.pde&lt;/p&gt;
\[/processing\]&lt;p&gt;Le dessin a initialement été produit par 
, un prof de maths allemand qui étudie l&amp;rsquo; &amp;ldquo;Opt Art&amp;rdquo;, l&amp;rsquo;utilisation de techniques d&amp;rsquo;optimisation dans l&amp;rsquo;art. La
est assez simple:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;on prend une image en &amp;ldquo;niveaux de gris&amp;rdquo;&lt;/li&gt;
&lt;li&gt;on dispose un grand nombre N de points sur l&amp;rsquo;image, resserrés dans les zones sombres, plus espacés dans les zones claires. 
a eu l&amp;rsquo;idée d&amp;rsquo;utiliser l&amp;rsquo;algorithme &amp;ldquo;
&amp;rdquo;
qui fait ça de manière remarquable.&lt;/li&gt;
&lt;li&gt;Ensuite, il suffit de résoudre le problème du voyageur de commerce à N villes pour obtenir le circuit le plus court entre les N points, donc sans intersection.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Quand vous lisez &amp;ldquo;il suffit de..&amp;rdquo;  , il faut vous méfier. C&amp;rsquo;est souvent sous cette formule lapidaire qu&amp;rsquo;on cache l&amp;rsquo;os. En réalité, le problème du voyageur de commerce (&amp;ldquo;Travelling Salesman Problem&amp;rdquo; en anglais, TSP dans la suite) est un problème &amp;ldquo;NP-complet&amp;rdquo;, un de ceux qui nécessite un nombre &amp;ldquo;non polynomial&amp;rdquo; d&amp;rsquo;opérations pour sa résolution, &amp;ldquo;non polynomial&amp;rdquo; étant un euphémisme. En l&amp;rsquo;occurence, il faut en principe mesurer la longueur des N! (N
&amp;hellip;)
possibles passant par les N points pour déterminer lequel est le plus court. Au delà de N=20, on oublie.&lt;/p&gt;
&lt;p&gt;Mais le TSP a un intérêt certain pour beaucoup d&amp;rsquo;applications pratiques dans lesquelles N est bien plus grand, ce qui justifie la recherche d&amp;rsquo;algorithmes efficaces mêmes s&amp;rsquo;ils ne fournissent pas la solution absolument optimale. Le site
est une mine d&amp;rsquo;exemples et d&amp;rsquo;infos sur les progrès de la résolution du TSP. On y trouve également
, un solveur de TSP open source très performant basé sur la
. Il détient le record du plus gros TSP résolu, pour N=85'500 calculé en  135 années de CPU, mais résout des problèmes raisonnables en un temps qui l&amp;rsquo;est aussi. J&amp;rsquo;ai eu l&amp;rsquo;occasion de m&amp;rsquo;en servir pour optimiser le parcours d&amp;rsquo;une perceuse de circuits imprimés où N valait autour de 1000: quelques minutes de calcul permettent d&amp;rsquo;économiser des secondes de travail par circuit. Il existe d&amp;rsquo;ailleurs un
pour résoudre vos (pas trop gros) problèmes de TSP.&lt;/p&gt;
&lt;p&gt;Pour revenir à la Joconde, elle fait l&amp;rsquo;objet d&amp;rsquo;un petit
car il n&amp;rsquo;est pas sur que le chemin affiché dans l&amp;rsquo;image soit le plus court possible entre les 100'000 points définis par R. Bosch. Ce chemin, calculé par Yuichi Nagata avec Concorde a une longueur de 5'757'191 unités, alors qu&amp;rsquo;on a pu déterminer que le chemin ne peut pas être plus court que 5'757'044 unités. Il est donc possible qu&amp;rsquo;il existe un chemin encore plus court de 0.0026% ! Tout ce qu&amp;rsquo;il vous faut pour le trouver, c&amp;rsquo;est le fichier 
, et touiller un peu le code de Concorde ou de son concurrent 
. Ah, et un superordinateur peut être utile aussi.  Si vous trouvez le chemin le plus court, vous gagnerez la somme mirobolante de $100 !&lt;/p&gt;
&lt;p&gt;&lt;em&gt;edit du 20/9/13&lt;/em&gt; : l&amp;rsquo;applet utilise maintenant Processing.js, mais le chargement des données est très lent&amp;hellip;&lt;/p&gt;
&lt;h3 id="références"&gt;Références:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;Robert Bosch, &amp;ldquo;
&amp;quot;, Math Horizons, February 2006, pages 6&amp;ndash;9.&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-2"&gt;&lt;/span&gt;Adrian Secord, &amp;ldquo;
&amp;rdquo;, 2002, Proceedings of 2nd
, Annecy, p 37-43&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Jeu-concours électrique</title><link>https://drgoulu.com/2010/05/17/jeu-concours-electrique/</link><pubDate>Mon, 17 May 2010 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2010/05/17/jeu-concours-electrique/</guid><description>&lt;p&gt;Amateurs de casse-têtes, de maths et d&amp;rsquo;algorithmes, oyez, oyez !&lt;/p&gt;
&lt;p&gt;La
et la
avec l&amp;rsquo;appui de Réseau de Transport d&amp;rsquo;Electricité organisent un concours doté de 2000 Euros de prix et ouvert jusqu&amp;rsquo;au 30 juin 2010.&lt;/p&gt;
&lt;p&gt;Il s&amp;rsquo;agit de concevoir le réseau de lignes électriques nécessaires pour alimenter les villes d&amp;rsquo;un pays à partir de centrales :&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 528px; width: 100%;"&gt;&lt;a href="images/76fa5e4df5077431227511a63a9e6c9c.png" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2010/images/76fa5e4df5077431227511a63a9e6c9c_hu_7cf5609103ab52f3.webp" srcset="https://drgoulu.com/posts/2010/images/76fa5e4df5077431227511a63a9e6c9c_hu_7cf5609103ab52f3.webp 320w, https://drgoulu.com/posts/2010/images/76fa5e4df5077431227511a63a9e6c9c_hu_5957e9e63837a88a.webp 480w, https://drgoulu.com/posts/2010/images/76fa5e4df5077431227511a63a9e6c9c_hu_1d8a66b2d3e5854a.webp 528w" sizes="(max-width: 640px) 100vw, 528px" alt="Concours" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;le pays du concours, carré malgré les apparences&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Pour ne rien arranger, les centrales sont de puissances différentes et fournissent de la THT, et les villes consomment également des puissances différentes (listées dans la
), mais doivent être alimentées en HT via des transformateurs à placer à volonté, mais à au moins 1km des villes et pas dans les zones protégées marquées en pointillés.&lt;/p&gt;
&lt;p&gt;Pour relier tout ceci, on peut construire des lignes THT de 1GW à 1M€/km (c&amp;rsquo;est même &amp;ldquo;obligatoire de mettre une ligne THT lorsque c&amp;rsquo;est possible&amp;rdquo;, mais cette contrainte me parait peu claire). On doit utiliser des lignes HT de 1 GW à 300K€/km pour alimenter les villes, et dans les zones protégées, on n&amp;rsquo;a droit qu&amp;rsquo;à des lignes HT enterrées de 0.3 GW à 1 M€/km.&lt;/p&gt;
&lt;p&gt;De plus le tout doit être résistant à une panne : si une centrale, une ligne ou un transfo flanche, les villes doivent toujours être alimentées.&lt;/p&gt;
&lt;p&gt;Le vainqueur sera celui qui proposera le réseau satisfaisant à toutes ces contraintes et coutant le moins cher avant le 30 juin, mais mon petit doigt me dit qu&amp;rsquo;il ne faut pas attaquer le problème le 29&amp;hellip;&lt;/p&gt;
&lt;p&gt;Et avant de vous lancer dans de p&amp;rsquo;tits dessins ou de gros calculs, notez encore que tout ce qui précède peut être potentiellement faux et/ou incomplet (je décline toute responsabilité etc etc). Seul le
fait foi.&lt;/p&gt;
&lt;p&gt;Pour la petite histoire, j&amp;rsquo;ai trouvé ce concours sur &amp;ldquo;
&amp;rdquo;, un blog intéressant découvert au moment de la rédaction de
&lt;/p&gt;</description></item><item><title>La saga des graphes</title><link>https://drgoulu.com/2010/03/06/la-saga-des-graphes/</link><pubDate>Sat, 06 Mar 2010 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2010/03/06/la-saga-des-graphes/</guid><description>&lt;p&gt;Découvert grâce à Patric quelques
de plus : la
. 3 jeux en Flash attendent impatiemment vos neurones :&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 300px; width: 100%;"&gt;&lt;a href="http://neamar.fr/Res/AGraphe/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2010/images/19aab911f31dc5631223df29f0afbdab_hu_5e4a326199ac8fca.webp" srcset="https://drgoulu.com/posts/2010/images/19aab911f31dc5631223df29f0afbdab_hu_5e4a326199ac8fca.webp 320w, https://drgoulu.com/posts/2010/images/19aab911f31dc5631223df29f0afbdab_hu_67ac3df8d6760700.webp 480w, https://drgoulu.com/posts/2010/images/19aab911f31dc5631223df29f0afbdab_hu_2264d5eeefa0bca5.webp 643w" sizes="(max-width: 640px) 100vw, 300px" alt="AGraphe" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;AGraphe&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;
est le plus facile en apparence : il s&amp;rsquo;agit d&amp;rsquo;allumer le noeud supérieur du graphe, qui ne peut l&amp;rsquo;être que si tous ses noeuds enfants sont allumés. L&amp;rsquo;astuce est qu&amp;rsquo;on ne peut avoir plus de N noeuds allumés simultanément, donc qu&amp;rsquo;il faut aussi éteindre judicieusement les noeuds. Mais il reste facile.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 300px; width: 100%;"&gt;&lt;a href="http://neamar.fr/Res/BGraphe/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2010/images/e046b6ff88906a9d4cf6e5fc404da844_hu_a3de410257c17f5f.webp" srcset="https://drgoulu.com/posts/2010/images/e046b6ff88906a9d4cf6e5fc404da844_hu_a3de410257c17f5f.webp 320w, https://drgoulu.com/posts/2010/images/e046b6ff88906a9d4cf6e5fc404da844_hu_aa706e139a4a5760.webp 480w, https://drgoulu.com/posts/2010/images/e046b6ff88906a9d4cf6e5fc404da844_hu_92e45422defa9e8d.webp 642w" sizes="(max-width: 640px) 100vw, 300px" alt="BGraphe" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;BGraphe&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Dans
, il faut déplacer les noeuds de façon à ce que les arêtes ne se coupent pas. Une fois qu&amp;rsquo;on a compris le truc on passe quelques tableaux assez facilement, puis ça devient vraiment trop difficile.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 300px; width: 100%;"&gt;&lt;a href="http://neamar.fr/Res/CGraphe/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2010/images/8ac3dd74a4432546fc1330bcb2b94b97_hu_99e3b40c5155b71a.webp" srcset="https://drgoulu.com/posts/2010/images/8ac3dd74a4432546fc1330bcb2b94b97_hu_99e3b40c5155b71a.webp 320w, https://drgoulu.com/posts/2010/images/8ac3dd74a4432546fc1330bcb2b94b97_hu_73c86827bbbb51ea.webp 480w, https://drgoulu.com/posts/2010/images/8ac3dd74a4432546fc1330bcb2b94b97_hu_8d80cd2ea117898.webp 645w" sizes="(max-width: 640px) 100vw, 300px" alt="CGraphe" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;CGraphe&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;
est une implantation du &amp;ldquo;
&amp;rdquo; qui se joue à 2:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;le &amp;ldquo;Paintre&amp;rdquo; doit relier les deux noeuds marqués en rouge en allumant une arête à chaque tour&lt;/li&gt;
&lt;li&gt;le &amp;ldquo;Couhpeur&amp;rdquo; doit l&amp;rsquo;en empêcher en supprimant carrément une arête à chaque tour.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;On joue alternativement chaque rôle, et l&amp;rsquo;ordinateur l&amp;rsquo;autre. Les premiers tableaux permettent de mettre au point la stratégie de chaque rôle, et les tableaux suivants sont là pour l&amp;rsquo;éprouver&amp;hellip;&lt;/p&gt;
&lt;p&gt;Sur chaque page, n&amp;rsquo;omettez pas de lire le texte en dessous de chaque jeu. On y apprend des choses intéressantes sur les graphes et sur le processus de développement de ces jeux très bien réalisés. On en trouve même le code source. Et Neamar y explique aussi comment fabriquer nos propres tableaux pour ses jeux en attendant le  DGraphe qu&amp;rsquo;il nous nous prépare.&lt;/p&gt;
&lt;p&gt;En fouillant un peu, on trouve que ce Neamar fait plein d&amp;rsquo;
, dont un
. Hop, un flux RSS de plus.&lt;/p&gt;</description></item><item><title>reMap</title><link>https://drgoulu.com/2009/07/27/remap/</link><pubDate>Mon, 27 Jul 2009 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2009/07/27/remap/</guid><description>&lt;p&gt;Le
s&amp;rsquo;accompagne de travaux intensifs sur la visualisation d&amp;rsquo;énorme quantités de données, un domaine qui combine maths (graphes, algorithmique &amp;hellip;) et art. Le site
répertorie des centaines de visualisation extrêmement variées réalisées pour des applications aussi diverses que la biologie, la
, la politique, internet et les réseaux sociaux etc.&lt;/p&gt;
&lt;p&gt;Avec toutes ces visualisations, il devenait utile de disposer d&amp;rsquo;un visualisateur de visualisations&amp;hellip; C&amp;rsquo;est ce qu&amp;rsquo;ont réalisé les infographistes de
dont j&amp;rsquo;avais déjà parlé
avec une nouvelle réalisation épatante :
.&lt;/p&gt;
&lt;p&gt;
ReMap permet de naviguer de façon interactive et animée dans
en mettant en évidence les relations entre les visualisations.&lt;/p&gt;
&lt;p&gt;Heures de navigation instructive et multicolore droit devant!&lt;/p&gt;
&lt;p&gt;source :
&lt;/p&gt;</description></item><item><title>Soluces de Noël</title><link>https://drgoulu.com/2009/02/22/soluces-de-noel/</link><pubDate>Sun, 22 Feb 2009 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2009/02/22/soluces-de-noel/</guid><description>&lt;p&gt;Voici enfin quelques solutions aux
&lt;/p&gt;
&lt;h3 id="le-jeu-des-nénuphars"&gt;le jeu des nénuphars&lt;/h3&gt;
&lt;p&gt;Pour gagner à
, j&amp;rsquo;ai commencé par &amp;ldquo;tricher&amp;rdquo; en examinant le petit programme JavaScript qui s&amp;rsquo;occupe de tout. On y trouve ceci :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-gdscript3" data-lang="gdscript3"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;positions&lt;/span&gt; &lt;span class="n"&gt;gagnantes&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;var&lt;/span&gt; &lt;span class="n"&gt;gagnant&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="ne"&gt;Array&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;777&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;667&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;557&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;447&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;337&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;227&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;456&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;236&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;135&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;En codantla position de chaque grenouille par un chiffre de 0 à 7, la position de départ est notée 024 et la position gagnante finale 777. (On remarque au passage que les positions obtenues en permutant les lignes de nénuphars sont stratégiquement équivalentes, donc on peut représenter toutes ces permutations par un seul code dont les 3 chiffres sont triés dans l&amp;rsquo;ordre croassant )&lt;/p&gt;
&lt;p&gt;Pour y arriver, si on a une grenouille sur 7, il faut s&amp;rsquo;assurer que les deux autres restent au même niveau : les positions 227,337,447,557 et 667 sont gagnantes parce que l&amp;rsquo;adversaire n&amp;rsquo;arrive jamais à faire 777 en un coup alors qu&amp;rsquo;on peut dans tous les cas se remettre en position gagnante.&lt;/p&gt;
&lt;p&gt;Le début de la partie est plus compliqué, et c&amp;rsquo;est là que tout se joue. Pour comprendre pourquoi 135, 236 et 456 sont des positions gagnantes, j&amp;rsquo;ai fait ce graphe.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 471px; width: 100%;"&gt;&lt;a href="https://drgoulu.com/wp-content/uploads/HLIC/a4a08144f1c5337e35f952ea5b03384f.png" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2009/images/a4a08144f1c5337e35f952ea5b03384f_hu_cbe2b1a989f09299.webp" srcset="https://drgoulu.com/posts/2009/images/a4a08144f1c5337e35f952ea5b03384f_hu_cbe2b1a989f09299.webp 320w, https://drgoulu.com/posts/2009/images/a4a08144f1c5337e35f952ea5b03384f_hu_5db5e68449aa2a0.webp 480w, https://drgoulu.com/posts/2009/images/a4a08144f1c5337e35f952ea5b03384f_hu_716a4b504a5edbcc.webp 620w" sizes="(max-width: 640px) 100vw, 471px" alt="nenuphars2" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;(cliquer pour agrandir)&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;On y voit:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;que comme les positions xx7 , les positions 135, 236 ou 456 sont bien gagnantes car  tout mouvement depuis ces positions permet ensuite à un adversaire jouant bien de  revenir à une position gagnante.&lt;/li&gt;
&lt;li&gt;il y a encore 3 autres positions gagnantes : 025, 034 et 124, et celles-ci sont accessibles à partir de la position de départ 024. Ca signifie qu&amp;rsquo;en suivant le graphe**, celui qui commence le jeu est sur de gagner !**&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Merci et Bravo à
, qui m&amp;rsquo;a soumis par mail son analyse de ce problème sans &amp;ldquo;tricher&amp;rdquo; en lorgnant le code. Cet article est le résultat de la combinaison de nos idées.&lt;/p&gt;
&lt;h3 id="les-boulets-de-canon"&gt;Les boulets de canon&lt;/h3&gt;
&lt;p&gt;les
aux problèmes des quarts de finales de la FFJM sont disponibles. J&amp;rsquo;ai surtout ramé au problème No 16 pour lequel je n&amp;rsquo;ai pas trouvé de méthode, et au dernier, celui des boulets de canon, qui est très beau.&lt;/p&gt;
&lt;p&gt;Une pile de boulets formée sur une base rectangulaire se termine par une couche ne contenant qu&amp;rsquo;une ligne de m boulets. La couche juste inférieure contient 2 lignes de m+1 boulets, la suivante 3 lignes de m+2 boulets et ainsi de suite. La i-ème couche contient donc i.(m+i-1) boulets et le nombre de boulets d&amp;rsquo;une pile contenant c couches est de&lt;/p&gt;
&lt;p&gt;$n= sum_{i=1}^{c} i.(m+i-1) = m.sum_{i=1}^{c} i + m.sum_{i=1}^{c} i^2 -c$&lt;/p&gt;
&lt;p&gt;En utilisant la formule de la somme des premiers entiers et celle de la
, on obtient n=c.(c+1).(3m+2c-2)/6, résultat que l&amp;rsquo;on retrouve déjà dans un &amp;ldquo;
&amp;rdquo; de 1813!&lt;/p&gt;
&lt;p&gt;Dans le problème posé, la largeur de la pile de base étant égale à m, on a c=m et donc n=m.(m+1).(5m-2)/6 . Reste à trouver la valeur de m donnant un n qui soit un carré parfait. C&amp;rsquo;est vite fait à la main : m=6 donne 14^2=196 boulets. Mais il existe une autre solution: m=49 donne 99'225 boulets, le carré de 49. Sans Python, j&amp;rsquo;ai raté celle là &amp;hellip;&lt;/p&gt;</description></item><item><title>Bestiario</title><link>https://drgoulu.com/2008/10/10/bestiario/</link><pubDate>Fri, 10 Oct 2008 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2008/10/10/bestiario/</guid><description>&lt;p&gt;
est une petite, jeune et très dynamique entreprise créant des &amp;ldquo;espaces digitaux pour la création collective de connaissance&amp;rdquo;. Autour du slogan &amp;ldquo;rendre le complexe compréhensible&amp;rdquo;, ils combinent art et science pour créer des sites interactifs en Flash utilisant la théorie des graphes, la topologie, la simulation physique et la visualisation géométrique et géographique.&lt;/p&gt;
&lt;p&gt;Voici quelques unes de leurs réalisations (cliquez sur les images pour lancer le site interactif correspondant) :&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 468px; width: 100%;"&gt;&lt;a href="http://www.bestiario.org/research/spisi/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2008/images/1caa3c983183fa5af65b28988ce443b5_hu_a57b5e192ce47715.webp" srcset="https://drgoulu.com/posts/2008/images/1caa3c983183fa5af65b28988ce443b5_hu_a57b5e192ce47715.webp 320w, https://drgoulu.com/posts/2008/images/1caa3c983183fa5af65b28988ce443b5_hu_ce781244f1f678ef.webp 480w, https://drgoulu.com/posts/2008/images/1caa3c983183fa5af65b28988ce443b5_hu_706c60b1acc62990.webp 500w" sizes="(max-width: 640px) 100vw, 468px" alt="spisi" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;SPISI : visualisation de données en spirale&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;SPISI permet de rechercher des périodicités dans des données. En bougeant un curseur, on agit sur le nombre de données par tour de spirale. Les données à explorer sont :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;le nombre de diviseurs des nombre entiers. En approchant le curseur de 24 (ou 12&amp;hellip;), on voit apparaitre la &amp;ldquo;
&amp;rdquo;&lt;/li&gt;
&lt;li&gt;les variations de la température de notre belle planète, mesurée sur 422766 ans grâce à une carotte de glace antarctique. avec le curseur sur 100'000, on voit apparaitre 3 cycles assez clairement.&lt;/li&gt;
&lt;li&gt;l&amp;rsquo;index Dow Jones. Là on a beau chercher des cycles &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="aligncenter" style="max-width: 468px; width: 100%;"&gt;&lt;a href="http://www.bestiario.org/research/videosphere/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2008/images/63298c878d296f6177edcaf0a8ff45d0_hu_d93f9ee572c7ce1c.webp" srcset="https://drgoulu.com/posts/2008/images/63298c878d296f6177edcaf0a8ff45d0_hu_d93f9ee572c7ce1c.webp 320w, https://drgoulu.com/posts/2008/images/63298c878d296f6177edcaf0a8ff45d0_hu_95830e51012c30dc.webp 480w, https://drgoulu.com/posts/2008/images/63298c878d296f6177edcaf0a8ff45d0_hu_e97bf4b6c37795c2.webp 500w" sizes="(max-width: 640px) 100vw, 468px" alt="videosphere" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;videosphère : toutes les vidéos du TED reliées&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Videosphère permet de découvrir les fantastiques
, (si vous ne connaissez pas, voyez au moins
). On peut évidemment trouver les conférences sur des thèmes donnés, mais aussi naviguer vers des conférences sur des sujets similaires en explorant un graphe liaant les vidéos représentées sur une sphère. simple, efficace, et beau.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 468px; width: 100%;"&gt;&lt;a href="http://moebio.com/research/drinkmeproject/sketch/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2008/images/704ee05c8a03035ecae78a819448bec1_hu_6a31de3f4e893705.webp" srcset="https://drgoulu.com/posts/2008/images/704ee05c8a03035ecae78a819448bec1_hu_6a31de3f4e893705.webp 320w, https://drgoulu.com/posts/2008/images/704ee05c8a03035ecae78a819448bec1_hu_f5f42326ac577d59.webp 480w, https://drgoulu.com/posts/2008/images/704ee05c8a03035ecae78a819448bec1_hu_315c23568d32b824.webp 500w" sizes="(max-width: 640px) 100vw, 468px" alt="drinkme" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;drinkMe : un zoom de 10^36 dans un graphe&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Si vous n&amp;rsquo;êtes pas impressionné par DrinkMe (drôle de nom) , c&amp;rsquo;est que vous n&amp;rsquo;êtes pas informaticien. Cette démonstration au graphisme primitif permet de zoomer dans des données un peu comme le film &amp;ldquo;
&amp;rdquo; à travers l&amp;rsquo;Univers. Pour passer de façon continue d&amp;rsquo;une visualisation macroscopique à un microscope avec un grossissement de 1'000'000'000'000'000'000'000'000'000'000'000'000 x , il faut une certaine maitrise de la programmation&amp;hellip;&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;aurais souhaité décrire ici toutes les autres réalisations de
, mais ce serait trop long. Sachez qu&amp;rsquo;elles valent toutes la peine d&amp;rsquo;être vues ou expérimentées : ces gars là font du très beau travail. à suivre.&lt;/p&gt;
&lt;p&gt;source:
, un blog à suivre si vous vous intéressez à la représentation des données et la communication visuelle.&lt;/p&gt;</description></item><item><title>Le GPS pour les nuls : Cartes et Routage</title><link>https://drgoulu.com/2008/09/27/le-gps-pour-les-nuls-cartes-et-routage/</link><pubDate>Sat, 27 Sep 2008 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2008/09/27/le-gps-pour-les-nuls-cartes-et-routage/</guid><description>&lt;p&gt;Dans l&amp;rsquo;
, j&amp;rsquo;explique comment votre GPS peut déterminer la latitude et la longitude où vous vous trouvez à partir de satellites. C&amp;rsquo;est génial, mais c&amp;rsquo;est peu utile si vous n&amp;rsquo;êtes pas un marin.&lt;/p&gt;
&lt;p&gt;Ce qui fait l&amp;rsquo;intérêt du GPS de nos jours c&amp;rsquo;est qu&amp;rsquo;il vous dit que vous êtes sur la Route du Mandement en direction de Satigny, et qu&amp;rsquo;il faut tourner à droite 300m après le giratoire pour aller en direction de Bourdigny. Comment est-ce possible ?&lt;/p&gt;
&lt;p&gt;En plus du récepteur sophistiqué décrit dans
, un GPS contient une grosse mémoire pour stocker une carte géographique et un microprocesseur relativement puissant pour calculer votre itinéraire par une méthode qui fait l&amp;rsquo;objet de cet article.&lt;/p&gt;
&lt;p&gt;La carte routière stockée dans votre GPS est bien plus qu&amp;rsquo;une digitalisation d&amp;rsquo;une carte routière en papier : elle contient le &amp;ldquo;
&amp;rdquo; formé par le réseau routier, à savoir tous les carrefours (ou points, ou noeuds) reliés par un réseau de chemins (ou arcs, ou arêtes).&lt;/p&gt;
&lt;p&gt;Pour aller d&amp;rsquo;un point à un autre, le microprocesseur de votre GPS va déterminer le trajet le plus court entre deux lieux en parcourant ce graphe. Si vous utilisez un logiciel de cartographie comme
, vous vous êtes peut-être dit que Google a assez de gros ordinateurs pour le faire rapidement, et garde peut-être même en mémoire les requêtes les plus fréquentes (Paris - le Grau du Roi&amp;hellip;) pour les resservir plus vite. Mais si vous avez un petit GPS dans votre voiture ou dans la main, vous avez certainement remarqué qu&amp;rsquo;il lui fait plusieurs secondes avant de pouvoir commencer à vous indiquer la direction à prendre. En réalité, c&amp;rsquo;est plutôt le fait qu&amp;rsquo;il n&amp;rsquo;ait pas besoin de minutes, voire d&amp;rsquo;heures de calcul qui tient de l&amp;rsquo;exploit, tant il existe de routes possibles.&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/dfffb52924ac4c0757d998edc886763a_hu_8a55d20120d5399b.webp 320w, https://drgoulu.com/posts/2008/images/dfffb52924ac4c0757d998edc886763a_hu_c9cda292743eddb5.webp 350w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/dfffb52924ac4c0757d998edc886763a_hu_8a55d20120d5399b.webp"
width="350"
height="296"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
Tout d&amp;rsquo;abord, remarquons que la position géographique des noeuds n&amp;rsquo;est pas indispensable pour résoudre le problème; seules les informations sur la &amp;ldquo;longueur&amp;rdquo; des routes importe réellement si on cherche à minimiser le trajet. Ceci permet d&amp;rsquo;ailleurs de choisir ce que l&amp;rsquo;on veut minimiser :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;la distance parcourue. Dans ce cas seule la longueur de chaque route est utile&lt;/li&gt;
&lt;li&gt;le temps nécessaire. Si chaque route est caractérisée par une vitesse moyenne ou un temps de parcours habituel, le chemin optimal favorisera une autoroute de contournement qu&amp;rsquo;une traversée urbaine&lt;/li&gt;
&lt;li&gt;la consommation, le cout financier &amp;hellip; En fait, on peut attribuer à chaque route un &amp;ldquo;cout&amp;rdquo; selon un critère quelconque, voir même deux couts correspondant aux deux sens de parcours, ce qui permet de tenir compte des sens interdits par exemple.&lt;/li&gt;
&lt;li&gt;si une route n&amp;rsquo;existe pas, on peut même en inventer une de coût élevé pour faire de
.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Ensuite, les trajets en voiture satisfont une hypothèse importante appellée &amp;ldquo;principe d&amp;rsquo;optimalité de Bellman&amp;rdquo; qui simplifie beaucoup la résolution du problème : si le trajet optimal de A à C passe par B, alors les trajets AB et BC sont aussi optimaux, et le cout pour aller de A à C est égal à la somme des couts AB+BC.&lt;/p&gt;
&lt;p&gt;Cette hypothèse appelée semble évidente, mais elle peut être invalide avec d&amp;rsquo;autres moyens de transport:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Marc, un ami (ingénieur) qui prit un vol Copenhague-Reykjavik pour visiter l&amp;rsquo;Islande eut la surprise de s&amp;rsquo;apercevoir qu&amp;rsquo;il payait son billet plus cher que les nombreux autres passagers de l&amp;rsquo;avion qui volaient de Copenhague à New-York. Ce viol du principe d&amp;rsquo;optimalité rend plus compliqué la recherche du vol le moins cher.&lt;/li&gt;
&lt;li&gt;Les transports publics partant à des heures déterminées par un horaire violent également le principe d&amp;rsquo;optimalité : il vaut parfois mieux choisir des trains avec de bonnes correspondances plutôt qu&amp;rsquo;un TGV qui nous obligera à perdre 1h dans une gare en attendant le train suivant.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dans ces cas là, il faut tenter de modifier le problème pour le faire obéir au principe d&amp;rsquo;optimalité, soit se résigner à de très, très, très longs calculs.&lt;/p&gt;
&lt;p&gt;Mais si le &amp;ldquo;principe d&amp;rsquo;optimalité de Bellman&amp;rdquo; est satisfait, et c&amp;rsquo;est le cas en voiture, alors on peut utiliser des algorithmes très efficaces :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Le célèbre
publié en 1959 permet de trouver le chemin joignant deux noeuds d&amp;rsquo;un graphe en minimisant la somme des &amp;ldquo;couts&amp;rdquo; et donc de trouver le &amp;ldquo;
&amp;rdquo;. Son temps de calcul est proportionnel à (m+n).log(n), où n est le nombre de nœuds et m le nombre de routes, ce qui rend possible son application sur des graphes comportant des millions de noeuds et routes.&lt;/li&gt;
&lt;li&gt;En prenant en compte la position des villes, on peut utiliser des algorithmes heuristiques comme
qui fournissent plus rapidement un chemin très proche de l&amp;rsquo;optimum dans le cas d&amp;rsquo;une carte &amp;ldquo;normale&amp;rdquo;, mais peuvent être plus lents que Dijkstra dans des cas vicieux.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Une fois le trajet optimal déterminé, il suffit à votre GPS de vérifier que vous le suivez scrupuleusement à partir des mesures satellite, de vous diriger à gauche ou à droite, et si vous vous plantez ou si vous rencontrez un bouchon, de recalculer en vitesse un nouveau trajet optimal.&lt;/p&gt;
&lt;p&gt;L&amp;rsquo;étape suivante sera de remettre à jour les cartes embarquées dans les GPS par des signaux radio, genre Wifi ou téléphone 3G. En cas de bouchon ou de travaux, il suffit de modifier automatiquement le cout du trajet correspondant et hop, les voitures équipées conseilleront un nouveau trajet optimal à leur conducteur. Ca s&amp;rsquo;appelle le progrès et c&amp;rsquo;est pour bientôt.&lt;/p&gt;
&lt;h3 id="références"&gt;Références:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;Moshe Sniedovich , &amp;ldquo;
&amp;rdquo;, Department of Mathematics and Statistics, The University of Melbourne, Parkville, VIC 3052, Australia&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Mesurer la Science et la trouver belle</title><link>https://drgoulu.com/2008/07/01/mesurer-la-science-et-la-trouver-belle/</link><pubDate>Tue, 01 Jul 2008 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2008/07/01/mesurer-la-science-et-la-trouver-belle/</guid><description>&lt;p&gt;La
est de plus en plus utilisée pour évaluer les scientifiques et attribuer des crédits à leurs laboratoires, alors qu&amp;rsquo;il existe de nombreuses raisons montrant que ce n&amp;rsquo;est pas un bon système. Enro a publié
à ce sujet.&lt;/p&gt;
&lt;p&gt;Fort heureusement, les imposantes données collectées pour la scientométrie permettent d&amp;rsquo;en faire un autre usage plus noble et beau : des graphes.&lt;/p&gt;
&lt;p&gt;Je vous avais déjà présenté une
, mais le site
utilisant 6'434'916 citations des 6128 journaux répertoriés par Thomson Scientific pour le fameux calcul du &amp;ldquo;
&amp;rdquo; des journaux :&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/0a61213cb09dc338be15be307e68c4b6_hu_ff57c54abfa900e.webp 320w, https://drgoulu.com/posts/2008/images/0a61213cb09dc338be15be307e68c4b6_hu_dd605b3be5c5487c.webp 480w, https://drgoulu.com/posts/2008/images/0a61213cb09dc338be15be307e68c4b6_hu_91d6a86ddee588db.webp 638w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/0a61213cb09dc338be15be307e68c4b6_hu_ff57c54abfa900e.webp"
width="638"
height="572"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;eigenfactor.org offre aussi un
permettant de visualiser les domaines connexes à un domaine donné, et surtout la liste des journaux traitant de ce sujet (très utile) avec leurs statistiques (moins). Voici par exemple un graphe qui m&amp;rsquo;a fait très plaisir :&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Il y a toujours des gens qui savent que l&amp;rsquo;informatique est une science alors que l&amp;rsquo; &amp;ldquo;IT&amp;rdquo; est une technologie &amp;hellip;&lt;/li&gt;
&lt;li&gt;elle est toujours bien centrale à mes sujets d&amp;rsquo;intérêt : ils sont tous là, bien en cercle, il y a même la
!&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
est un autre outil remarquable. C&amp;rsquo;est une
qui permet d&amp;rsquo;analyser vos propres bibliographies pour visualiser le référencement entre chercheurs&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/f98e30d27c37c33b23770687fae90cb5_hu_19facdf46f0b7014.webp 320w, https://drgoulu.com/posts/2008/images/f98e30d27c37c33b23770687fae90cb5_hu_137b81aeabe9f5ba.webp 400w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/f98e30d27c37c33b23770687fae90cb5_hu_19facdf46f0b7014.webp"
width="400"
height="200"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;ou les connexions entre domaines d&amp;rsquo;étude :&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/f05b4e1fefd56d2a399d56f84a0941bc_hu_97d5af2b8480d790.webp 320w, https://drgoulu.com/posts/2008/images/f05b4e1fefd56d2a399d56f84a0941bc_hu_90baf119038b02a6.webp 480w, https://drgoulu.com/posts/2008/images/f05b4e1fefd56d2a399d56f84a0941bc_hu_53aeab1bb515ec.webp 760w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/f05b4e1fefd56d2a399d56f84a0941bc_hu_97d5af2b8480d790.webp"
width="760"
height="530"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Les couleurs ne sont pas seulement &amp;ldquo;hippies&amp;rdquo; : comme elles correspondent aux années, elles permettent de saisir l&amp;rsquo;évolution temporelle du graphe. La convention utilisée est la suivante :&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/d4ceee024491fa8e989016346d9e2acc_hu_9c030c395de788b5.webp 320w, https://drgoulu.com/posts/2008/images/d4ceee024491fa8e989016346d9e2acc_hu_7712d34d285aa735.webp 480w, https://drgoulu.com/posts/2008/images/d4ceee024491fa8e989016346d9e2acc_hu_cdcf8aab8f7527f2.webp 760w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/d4ceee024491fa8e989016346d9e2acc_hu_9c030c395de788b5.webp"
width="760"
height="472"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 id="références"&gt;Références:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;Chen, C. (2006)
&amp;rdquo;. Journal of the American Society for Information Science and Technology, 57(3), 359-377.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Le blog à suivre si la visualisation des données vous intéresse, c&amp;rsquo;est
, c&amp;rsquo;est
et
que j&amp;rsquo;ai trouvé ce qui précède et aussi des représentations à vocation essentiellement esthétiques&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;
&amp;rdquo;, une timeline de presque 400 ans de publications à la Royal Society&lt;/li&gt;
&lt;li&gt;&amp;ldquo;
&amp;rdquo;, une belle carte des sciences illisible&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Dr. Goulu rejoint le C@fé des Sciences</title><link>https://drgoulu.com/2008/06/10/dr-goulu-rejoint-le-cfe-des-sciences/</link><pubDate>Tue, 10 Jun 2008 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2008/06/10/dr-goulu-rejoint-le-cfe-des-sciences/</guid><description>&lt;p&gt;
a établi un lien indiscutable entre le café et la Science : &lt;em&gt;Un mathématicien est une machine à transformer le café en théorèmes.&lt;/em&gt; . D&amp;rsquo;autres auteurs ont reconnu les vertus du précieux nectar dans des domaines intellectuels variés, notamment : &amp;ldquo;&lt;em&gt;Le café, c&amp;rsquo;est amer et ça donne envie de faire pipi, mais ça empêche de dormir alors on peut programmer plus longtemps&lt;/em&gt;&amp;rdquo; (moi).&lt;/p&gt;
&lt;p&gt;Je suis donc très honoré que ce blog ait été accepté comme membre du
, la communauté des blogs scientifiques en français. Le C@fé est accessible depuis Dr. Goulu grâce à une icône sous &amp;ldquo;Sites liés&amp;rdquo; dans la colonne de gauche, et les titres des derniers articles des membres de la communauté sont repris dans un flux RSS juste en dessous.&lt;/p&gt;
&lt;p&gt;Revenons à Paul Erdös pour relever le niveau de ce billet. Ce mathématicien hongrois s&amp;rsquo;intéressait notamment aux graphes et a publié plus de 1500 articles en près de 60 ans de carrière. Il a très donc logiquement proposé de représenter la collaboration entre auteurs scientifiques (en mathématique essentiellement) sous forme d&amp;rsquo;un graphe qui permet de définir le &amp;ldquo;
&amp;rdquo; de chaque chercheur :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Erdös lui même a un nombre d&amp;rsquo;Erdös = 0&lt;/li&gt;
&lt;li&gt;les plus de 504 qui ont co-publié au moins 1 article avec Erdös ont un nombre = 1&lt;/li&gt;
&lt;li&gt;les 6593 cosignataires d&amp;rsquo;articles écrits avec ces 504 auteurs reçoivent un nombre d&amp;rsquo;Erdös = 2&lt;/li&gt;
&lt;li&gt;et ainsi de suite. Le &amp;ldquo;
&amp;rdquo; possède actuellement un graphe de 1.9 millions d&amp;rsquo;articles publiés par 420'000 auteurs, ce qui permet d&amp;rsquo;en tirer toutes sortes de statistiques intéressantes sur la publication des mathématiciens.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Des études de ce type permettent de synthétiser et visualiser la collaboration comme dans la magnifique
, mais aussi pour étudier les réseaux sociaux sur le Web 2.0, ou le mécanisme de publication sur les blogs excellement étudié dans &amp;ldquo;
&amp;rdquo; par TomRoud.com.&lt;/p&gt;
&lt;p&gt;C&amp;rsquo;est un membre du C@fé, la boucle est bouclée.&lt;/p&gt;</description></item><item><title>Plan du Web</title><link>https://drgoulu.com/2007/08/21/plan-du-web/</link><pubDate>Tue, 21 Aug 2007 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2007/08/21/plan-du-web/</guid><description>&lt;p&gt;Trouvé cette &amp;ldquo;carte du Web pensée différemment“ représentant les sites les plus importants connectés par des lignes de métro représentant leurs fonctions:&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;Des images de différents formats et même un screensaver pour Mac peuvent être obtenus sur
, qui comporte beaucoup d&amp;rsquo;informations (en anglais) sur cette carte très bien faite.&lt;/p&gt;</description></item><item><title>Carte des Sciences</title><link>https://drgoulu.com/2007/06/07/carte-des-sciences/</link><pubDate>Thu, 07 Jun 2007 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2007/06/07/carte-des-sciences/</guid><description>&lt;p&gt;Le magazine
publie dans l&amp;rsquo;article
une &amp;ldquo;carte des Sciences&amp;rdquo; due à
, Kevin Boyack et Dick Klavans de l&amp;rsquo;Université de Columbia. Ils ont représenté les références entre 80'000 articles scientifiques répartis en 776 domaines dans ce superbe graphe &lt;em&gt;(cliquer dessus pour l&amp;rsquo;agrandir)&lt;/em&gt; :&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 601px; width: 100%;"&gt;&lt;a href="images/8b3bb20fb8f3eb1ec921bc421cfdecd0.jpg" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2007/images/8b3bb20fb8f3eb1ec921bc421cfdecd0_hu_544fe5026f3d590d.webp" srcset="https://drgoulu.com/posts/2007/images/8b3bb20fb8f3eb1ec921bc421cfdecd0_hu_544fe5026f3d590d.webp 320w, https://drgoulu.com/posts/2007/images/8b3bb20fb8f3eb1ec921bc421cfdecd0_hu_d48bd1c20a3bfa92.webp 480w, https://drgoulu.com/posts/2007/images/8b3bb20fb8f3eb1ec921bc421cfdecd0_hu_f6d171aab278d483.webp 760w" sizes="(max-width: 640px) 100vw, 601px" alt="cliquer pour agrandir (beaucoup)" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;cliquer pour agrandir (beaucoup)&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Les 776 domaines de recherche y représentés par les cercles de couleur de taille proportionnelle au nombre d&amp;rsquo;articles correspondants. 2 domaines sont d&amp;rsquo;autant plus proche qu&amp;rsquo;il y a beaucoup de références d&amp;rsquo;un domaine vers l&amp;rsquo;autre. Ils définissent ainsi des zones colorées selon les principaux domaines scientifiques (sciences sociales, médecine, biologie, chimie, physique, informatique.&lt;/p&gt;
&lt;p&gt;On y voit entre autres (points numérotés):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;que les &amp;ldquo;sciences sociales&amp;rdquo; (en jaune) sont très connectées à la médecine (en rouge) et à l&amp;rsquo;informatique (en violet), mais pas à la chime (en bleu, près du point 4)&lt;/li&gt;
&lt;li&gt;les &amp;ldquo;plumes&amp;rdquo; grises qui entourent tout le graphe sont en fait les noms des 776 domaines de recherche. Ils ne sont malheureusement pas lisibles, même sur l&amp;rsquo;image agrandie&lt;/li&gt;
&lt;li&gt;les domaines où la recherche est la plus active (du moins par les publications&amp;hellip;) couvrent une plus grande surface, comme la médecine (en rouge). Les maths, près du point 3, sont beaucoup moins actifs.&lt;/li&gt;
&lt;li&gt;aucune science n&amp;rsquo;est une île, sauf peut-être la chimie organique (à l&amp;rsquo;extrémité droite du continent bleu) qui ne se réfère à aucune autre science &amp;ldquo;majeure&amp;rdquo;, mais uniquement à d&amp;rsquo;autres disciplines de la chimie.&lt;/li&gt;
&lt;li&gt;l&amp;rsquo;informatique est plus liée aux sciences sociales qu&amp;rsquo;à la physique appliquée qui réalise les puces.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Les graphes permettent de visualiser la structure émergeant de très grosses quantités de données. Plus à ce sujet très bientôt.&lt;/p&gt;</description></item><item><title>BOINC et Graphes</title><link>https://drgoulu.com/2007/02/18/boinc-et-graphes/</link><pubDate>Sun, 18 Feb 2007 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2007/02/18/boinc-et-graphes/</guid><description>&lt;p&gt;
fait le lien entre plusieurs choses passionnantes dont je vous ai déjà parlé sur ce blog:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;C&amp;rsquo;est décidé : j&amp;rsquo;ajoute le projet &amp;ldquo;
&amp;rdquo; à mes projets BOINC, juste parce que c&amp;rsquo;est beau.&lt;/p&gt;</description></item><item><title>GraphViz</title><link>https://drgoulu.com/2006/07/14/graphviz/</link><pubDate>Fri, 14 Jul 2006 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2006/07/14/graphviz/</guid><description>&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;GraphViz est un programme permettant de créer des graphes à partir d’un fichier texte décrivant les noeuds et les arcs du graphe.&lt;/p&gt;
&lt;p&gt;Par rapport à un programme de tracé de graphes type Visio, GraphViz est génial parce que c’est lui qui place les noeuds du graphe de façon à minimiser les croisements des arcs et donc à faire de &amp;ldquo;jolis&amp;rdquo; graphes.&lt;/p&gt;
&lt;p&gt;Les graphes peuvent être générés dans de nombreux formats d’images différents, et en particulier en SVG, mon format vectoriel favori.&lt;/p&gt;
&lt;p&gt;Je l’utilise pour des petites bricoles, mais aussi pour de grands projets comme cadDOC, qui génère une documentation à partir de fichiers CAO exportés au format cadML.&lt;/p&gt;
&lt;p&gt;GraphViz est un logiciel développé par ATT et diffusé gratuitement en Open Source.&lt;/p&gt;
&lt;h4 id="exemple"&gt;Exemple :&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
(en anglais)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Les 3 maisons</title><link>https://drgoulu.com/2005/08/21/les-3-maisons/</link><pubDate>Sun, 21 Aug 2005 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2005/08/21/les-3-maisons/</guid><description>&lt;p&gt;Comment amener l’eau, le gaz et l’électricité depuis les 3 usines correspondantes vers 3 maisons sans que les tuyaux et câbles correspondants ne se croisent sur un plan ?&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2005/images/867ce3748efea645e2ab17c446524388_hu_96eaf1499dba7e4d.webp 320w, https://drgoulu.com/posts/2005/images/867ce3748efea645e2ab17c446524388_hu_ad9528d0323f13d6.webp 480w, https://drgoulu.com/posts/2005/images/867ce3748efea645e2ab17c446524388_hu_f796f9b419e74c21.webp 539w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2005/images/867ce3748efea645e2ab17c446524388_hu_96eaf1499dba7e4d.webp"
width="539"
height="332"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;C’est le genre de casse-tête qui m’énerve, surtout si on me dit qu’il existe une solution.&lt;/p&gt;
&lt;p&gt;En fait, il n’y a pas de solution à ce problème. Mon collègue
, et montre qu’un planète torique offrirait des avantages &amp;hellip;&lt;/p&gt;</description></item></channel></rss>