French subtitles

← La Tour d'Épiphanie | Pensez comme un programmeur, Ep 7

Get Embed Code
20 Languages

Showing Revision 13 created 03/30/2020 by eric vautier.

  1. Éthique et Hedge sont au pied
    d'une tour massive.
  2. Une barrière d'énergie les sépare
    de leur deuxième objectif :
  3. le Nœud de Création.
  4. Pour l'atteindre, Éthique doit utiliser
    trois flux d'énergie et escalader la tour.
  5. Dès qu'elle avancera d'un pas,
    une minuterie décomptera 60 secondes.
  6. Au fond de la salle,
    il y a un bassin de tours invisibles
  7. qui peuvent conserver l'énergie ensemble.
  8. Au bout d'une minute, un flot d'énergie
    va s'écouler comme un torrent,
  9. remplissant une unité à la fois,
  10. avec un champ de force qui l'empêche
    de déborder par l'avant ou l'arrière.
  11. Pendant ces 60 secondes de répit,
  12. Éthique et Hedge doivent décider combien
    d'unités d'énergie précisément vont périr.
  13. Pour ces trois défis,
  14. ils doivent choisir le volume précis
    qui remplira chaque réservoir.
  15. Une bonne réponse les propulsera en avant.
  16. Mais s'ils se trompent,
    l'ascenseur énergétique va s'arrêter
  17. et les laissera tomber.
  18. Au mur, des diagrammes illustrent
    des exemples.
  19. Cette configuration captera
    deux unités d'énergie précisément.
  20. Celle-ci captera 4 unités,
    celle-ci, trois et ici, une.
  21. Celle-ci aussi captera quatre unités
  22. car l'énergie disponible à droite
    sera perdue.
  23. L'énergie percera de façon
  24. à ce qu'elle déborde uniquement
    si aucun espace ne peut la contenir.
  25. Hedge peut rendre visible une tour
    de blocs à la fois et calculer sa hauteur.
  26. Mais il ne peut pas voir la structure
    entière d'un seul regard.
  27. Comment Éthique devra-t-elle
    programmer Hedge pour estimer
  28. exactement combien d'énergie
    chaque réservoir peut contenir ?
  29. Faites une pause maintenant
    pour trouver la solution.
  30. Voici une manière de penser
    à ce qu'il se passe :
  31. Chaque cellule vide contiendra
    de l'énergie
  32. si et seulement s'il y a une paroi
    peut-être à sa gauche
  33. et une paroi peut-être à sa droite.
  34. Mais vérifier chaque cellule
    nécessite trop de temps.
  35. Et si nous envisagions
    une colonne entière à la fois ?
  36. Combien d'unités d'énergie ce motif
    pourrait-il contenir, par exemple ?
  37. Faites une pause maintenant
    pour trouver la solution.
  38. Analysons le problème
    en étudiant cet exemple.
  39. Il y a cinq colonnes de blocs ici.
  40. Celle de gauche ne peut pas contenir
    d'énergie car il n'y a rien au-dessus.
  41. La deuxième peut contenir trois unités
  42. car elles seront entourées
    par ces rangées de quatre piles.
  43. On a donc 3 unités en prenant la hauteur
    où l'énergie va se stabiliser - 4,
  44. et on soustrait la hauteur des piles -
    cela fait 4 moins 1.
  45. La troisième pile est similaire :
    4 à gauche, 4 à droite et 3 en hauteur.
  46. Elle contient donc
    4 moins 3 égale 1 unité.
  47. Les quatrième et cinquième piles
    n'ont rien de plus haut qu'elle à droite.
  48. Elles ne peuvent donc pas
    contenir d'énergie.
  49. On peut adapter cela dans un algorithme.
  50. En envisageant une colonne à la fois
    comme point de référence,
  51. Hedge peut regarder
    à gauche de chaque pile
  52. pour déterminer la hauteur
    de la plus haute
  53. et faire de même sur la droite.
  54. Il peut alors prendre
    la plus basse des deux
  55. comme hauteur d'énergie
    qui peut être contenue.
  56. Si le résultat est plus haut
    que la colonne concernée,
  57. il soustrait la hauteur
    de la colonne originale
  58. et le résultat sera le nombre d'unités
    que la colonne peut contenir.
  59. Si c'est égal ou sous le niveau
    de la colonne concernée,
  60. l'énergie se répandra.
  61. Hedge peut appliquer ça
    au réservoir entier avec une boucle
  62. qui commence à la colonne de gauche
    et se dirige vers la droite,
  63. une colonne après l'autre.
  64. Pour chaque colonne, il vérifie quelle est
    la colonne la plus élevée à gauche,
  65. il fait pareil sur la droite,
    choisit la plus basse des deux,
  66. soustrait la hauteur
    de la colonne de départ
  67. et ajoute le résultat au grand total.
  68. Il répète ces étapes en boucle
    autant de fois qu'il y a de colonnes.
  69. Cela fonctionnera mais cela prendra
    du temps si le réservoir est grand.
  70. À chaque étape, Hedge répète cette action
    de regarder à gauche et à droite.
  71. S'il y a N piles, il regardera N fois
    toutes les piles.
  72. Y a-t-il un moyen d'aller plus vite ?
  73. Un gain de temps unique existe :
    avant de faire autre chose,
  74. Hedge peut commencer à gauche
  75. et vérifier quel est la plus grande pile.
  76. Ici, ce serait 2, 2 encore,
    comme la première est plus haute,
  77. ensuite 4, 4, 4.
  78. Il peut ensuite trouver les piles
    les plus hautes à droite
  79. en appliquant la mienne action
    de droite à gauche : 1, 3, 4, 4, 4.
  80. Il aura ce tableau-ci en mémoire.
  81. Hedge peut prendre un autre raccourci
    pour calculer l'énergie qu'il y aura
  82. au-dessus de chaque pile
    avec la même équation qu'avant :
  83. prendre la plus petite valeur contenue
    à gauche et à droite,
  84. et soustraire la hauteur
    de la tour actuelle.
  85. Au lieu de regarder N fois N piles,
    il évaluera N piles trois fois seulement.
  86. C'est ce qu'on appelle un temps linéaire.
  87. On pourrait encore optimiser la solution
  88. mais cela suffit à nos héros.
  89. Éthique et Hedge travaillent de concert.
  90. La première cascade est aisée
    et ils montent dans la tour.
  91. La deuxième est un peu plus rude.
  92. La troisième est immense
    avec des dizaines de piles de blocs.
  93. La minuterie se rapproche de zéro
    mais le programme d'Éthique est rapide.
  94. Elle atteint la barre juste à temps
  95. et l'énergie les soulève
    vers le Nœud de la Création.
  96. Comme la première, il révèle une vision :
    la mémoire des années passées.
  97. La machine du monde a tout changé.
  98. Et Éthique, en tant que
    cheffe ingénieur en robotique,
  99. est de plus en plus troublée
    par ce qu'elle voit.
  100. Quand la barrière Brad s'est levée
    pour enfermer les gens,
  101. elle a compris que quelque chose
    avait tourné très mal.
  102. Alors, elle a créé trois artéfacts
  103. capables de restaurer la puissance,
    la créativité et la mémoire des gens
  104. et elle les a apportés en cachette
    à trois communautés.
  105. Avant de pouvoir expliquer
    comment les utiliser,
  106. les gouvernements l'ont découverte
    et ont envoyé des bots pour l'arrêter
  107. avec les autres programmeurs.
  108. La dernière chose qu'Éthique a fait créer
    par la machine du monde
  109. est un robot pour protéger
    l'ancien système
  110. des forces de l'ignorance en l'enfermant
    dans un labyrinthe géant.
  111. Elle a nommé sa création Hedge.
  112. Sans prévenir, l'ascenseur énergétique
    faiblit et s'éteint définitivement.