The Tower of Epiphany | Think Like A Coder, Ep 7

428,635 views ・ 2020-02-27

TED-Ed


Veuillez double-cliquer sur les sous-titres anglais ci-dessous pour lire la vidéo.

Traducteur: Claire Ghyselen Relecteur: eric vautier
00:31
Ethic and Hedge are on the ground floor of a massive tower.
0
31587
5701
Éthique et Hedge sont au pied d'une tour massive.
00:37
Barriers of energy separate them from their quest’s second goal:
1
37288
4657
Une barrière d'énergie les sépare de leur deuxième objectif :
00:41
the Node of Creation.
2
41945
2000
le Nœud de Création.
00:52
To reach it, Ethic must use three energy streams to climb the tower.
3
52667
4742
Pour l'atteindre, Éthique doit utiliser trois flux d'énergie et escalader la tour.
00:57
As soon as she steps forward a timer will begin counting down from 60 seconds.
4
57409
5950
Dès qu'elle avancera d'un pas, une minuterie décomptera 60 secondes.
01:07
At the back of the room there’s a basin made of invisible towers
5
67359
4300
Au fond de la salle, il y a un bassin de tours invisibles
01:11
that can hold energy between them.
6
71659
3076
qui peuvent conserver l'énergie ensemble.
01:14
After one minute, a torrent of energy will pour down from above,
7
74735
4130
Au bout d'une minute, un flot d'énergie va s'écouler comme un torrent,
01:18
filling one unit at a time,
8
78865
2150
remplissant une unité à la fois,
01:21
with a force field preventing it from spilling out the front or back.
9
81015
4480
avec un champ de force qui l'empêche de déborder par l'avant ou l'arrière.
01:25
During the 60 calm seconds,
10
85495
2130
Pendant ces 60 secondes de répit,
01:27
Ethic and Hedge must decide exactly how many units of energy will fall.
11
87625
5098
Éthique et Hedge doivent décider combien d'unités d'énergie précisément vont périr.
01:32
For each of the three challenges,
12
92723
1700
Pour ces trois défis,
01:34
they must choose the amount that will fill the basin exactly.
13
94423
3665
ils doivent choisir le volume précis qui remplira chaque réservoir.
01:38
If they do so, the energy will propel them further upwards.
14
98088
3850
Une bonne réponse les propulsera en avant.
01:41
But if they get the amount at all wrong, the energy lift will fail,
15
101938
4620
Mais s'ils se trompent, l'ascenseur énergétique va s'arrêter
01:46
dropping them.
16
106558
1490
et les laissera tomber.
01:48
Diagrams on the walls illustrate some examples.
17
108048
3300
Au mur, des diagrammes illustrent des exemples.
01:51
This configuration will capture exactly 2 units of energy.
18
111348
4270
Cette configuration captera deux unités d'énergie précisément.
01:55
This configuration will capture 4— 3 here, and 1 here.
19
115618
5117
Celle-ci captera 4 unités, celle-ci, trois et ici, une.
02:00
And this one will also capture 4,
20
120735
2540
Celle-ci aussi captera quatre unités
02:03
because any energy on the right would spill out.
21
123275
3413
car l'énergie disponible à droite sera perdue.
02:06
The energy will rain down in such a way
22
126688
2220
L'énergie percera de façon
02:08
that it’ll only overflow if there’s no space that could hold it.
23
128908
4630
à ce qu'elle déborde uniquement si aucun espace ne peut la contenir.
02:13
Hedge can make one tower of blocks visible at a time and count how tall it is,
24
133538
5327
Hedge peut rendre visible une tour de blocs à la fois et calculer sa hauteur.
02:18
but he can’t look at the whole structure all at once.
25
138865
3860
Mais il ne peut pas voir la structure entière d'un seul regard.
02:22
How does Ethic program Hedge to figure out
26
142725
2805
Comment Éthique devra-t-elle programmer Hedge pour estimer
02:25
exactly how much energy each basin can hold?
27
145530
3810
exactement combien d'énergie chaque réservoir peut contenir ?
02:29
Pause now to figure it out for yourself.
28
149340
9465
Faites une pause maintenant pour trouver la solution.
02:38
Here’s one way of thinking about what’s happening:
29
158805
2830
Voici une manière de penser à ce qu'il se passe :
02:41
each unoccupied cell will hold energy
30
161635
2915
Chaque cellule vide contiendra de l'énergie
02:44
if and only if there is a wall eventually to its left,
31
164550
4240
si et seulement s'il y a une paroi peut-être à sa gauche
02:48
and a wall eventually to its right.
32
168790
2727
et une paroi peut-être à sa droite.
02:51
But it would take a long time for Hedge to check this for each individual cell.
33
171517
4805
Mais vérifier chaque cellule nécessite trop de temps.
02:56
So what if he were to consider a whole column of blocks at a time?
34
176322
4863
Et si nous envisagions une colonne entière à la fois ?
03:01
How many units of energy can this hold, for instance?
35
181185
3840
Combien d'unités d'énergie ce motif pourrait-il contenir, par exemple ?
03:05
Pause now to figure it out for yourself.
36
185025
5364
Faites une pause maintenant pour trouver la solution.
03:10
Let’s analyze the problem by looking at our example.
37
190389
3370
Analysons le problème en étudiant cet exemple.
03:13
There are 5 columns of blocks here.
38
193759
2155
Il y a cinq colonnes de blocs ici.
03:15
The leftmost one can’t hold any energy, because there’s nothing higher than it.
39
195914
4570
Celle de gauche ne peut pas contenir d'énergie car il n'y a rien au-dessus.
03:20
The 2nd stack can have 3 units above it,
40
200484
2634
La deuxième peut contenir trois unités
03:23
as they would be trapped between these two 4 block stacks.
41
203118
4126
car elles seront entourées par ces rangées de quatre piles.
03:27
We get 3 units by taking the height where the energy would level off— 4,
42
207244
4942
On a donc 3 unités en prenant la hauteur où l'énergie va se stabiliser - 4,
03:32
and subtracting the height of the stack— so that’s 4 minus 1.
43
212186
4160
et on soustrait la hauteur des piles - cela fait 4 moins 1.
03:36
The 3rd stack is similar— 4 to the left, 4 to the right, and it’s 3 high,
44
216346
5462
La troisième pile est similaire : 4 à gauche, 4 à droite et 3 en hauteur.
03:41
so it’ll hold 4 minus 3 equals 1 unit.
45
221808
4729
Elle contient donc 4 moins 3 égale 1 unité.
03:46
The 4th stack and 5th stacks have nothing higher than them to the right,
46
226537
4420
Les quatrième et cinquième piles n'ont rien de plus haut qu'elle à droite.
03:50
so they can’t hold any energy.
47
230957
2470
Elles ne peuvent donc pas contenir d'énergie.
03:53
We can adapt this idea into an algorithm.
48
233427
3818
On peut adapter cela dans un algorithme.
03:57
Considering one column at a time as the point of reference,
49
237245
3780
En envisageant une colonne à la fois comme point de référence,
04:01
Hedge can look to the left stack by stack to find the height of the tallest one,
50
241025
4411
Hedge peut regarder à gauche de chaque pile
pour déterminer la hauteur de la plus haute
04:05
look to the right to find the height of the tallest one,
51
245436
2720
et faire de même sur la droite.
04:08
and take the smaller of the two as the height the energy can fill up to.
52
248156
4677
Il peut alors prendre la plus basse des deux
comme hauteur d'énergie qui peut être contenue.
04:12
If the result is higher than the column in question,
53
252833
3130
Si le résultat est plus haut que la colonne concernée,
04:15
subtract the height of the original column,
54
255963
2574
il soustrait la hauteur de la colonne originale
04:18
and the result will be the number of units that column can hold.
55
258537
5097
et le résultat sera le nombre d'unités que la colonne peut contenir.
04:23
If it's equal to or below the level of the column in question,
56
263634
3560
Si c'est égal ou sous le niveau de la colonne concernée,
04:27
the energy would spill off.
57
267194
2203
l'énergie se répandra.
04:29
Hedge can apply that to an entire basin with a loop
58
269397
3520
Hedge peut appliquer ça au réservoir entier avec une boucle
04:32
that starts on the left-most column and moves right, one column at a time.
59
272917
5745
qui commence à la colonne de gauche et se dirige vers la droite,
une colonne après l'autre.
04:38
For each column, he’ll run the same steps— look all the way left for the tallest,
60
278662
5009
Pour chaque colonne, il vérifie quelle est la colonne la plus élevée à gauche,
04:43
do the same to the right, take the lower height of the two,
61
283671
3560
il fait pareil sur la droite, choisit la plus basse des deux,
04:47
subtract the original column height,
62
287231
2087
soustrait la hauteur de la colonne de départ
04:49
and increase the grand total if that number is positive.
63
289318
3860
et ajoute le résultat au grand total.
04:53
His loop will repeat as many times as there are columns.
64
293178
3670
Il répète ces étapes en boucle autant de fois qu'il y a de colonnes.
04:56
That will work, but it’ll take a long time for a large basin.
65
296848
3950
Cela fonctionnera mais cela prendra du temps si le réservoir est grand.
05:00
At every step Hedge repeats the action of looking left and looking right.
66
300798
4530
À chaque étape, Hedge répète cette action de regarder à gauche et à droite.
05:05
If there are N stacks, he’ll look at all N stacks N times.
67
305328
4952
S'il y a N piles, il regardera N fois toutes les piles.
05:10
Is there a faster way?
68
310280
1980
Y a-t-il un moyen d'aller plus vite ?
05:12
Here’s one time saver: before doing anything else,
69
312260
3348
Un gain de temps unique existe : avant de faire autre chose,
05:15
Hedge can start on the left,
70
315608
1860
Hedge peut commencer à gauche
05:17
and keep a running tally of what the highest stack is.
71
317468
3870
et vérifier quel est la plus grande pile.
05:21
Here that would be 2, 2 again, since the first was higher,
72
321338
3760
Ici, ce serait 2, 2 encore, comme la première est plus haute,
05:25
then 4, 4, 4.
73
325098
2750
ensuite 4, 4, 4.
05:27
He can then find the highest right-most stacks
74
327848
2780
Il peut ensuite trouver les piles les plus hautes à droite
05:30
by doing the same going right-to-left: 1, 3, 4, 4, 4.
75
330628
6254
en appliquant la mienne action de droite à gauche : 1, 3, 4, 4, 4.
05:36
In the end he’ll have a table like this in his memory.
76
336882
3840
Il aura ce tableau-ci en mémoire.
05:40
Now, Hedge can take one more pass to calculate how much energy there will be
77
340722
5239
Hedge peut prendre un autre raccourci pour calculer l'énergie qu'il y aura
05:45
above every stack with the same equation from before:
78
345961
4040
au-dessus de chaque pile avec la même équation qu'avant :
05:50
take the smaller of the stored left and right values,
79
350001
3637
prendre la plus petite valeur contenue à gauche et à droite,
05:53
and subtract the height of the current tower.
80
353638
3070
et soustraire la hauteur de la tour actuelle.
05:56
Instead of looking at N stacks N times, he’ll look at N stacks just 3 times—
81
356708
5585
Au lieu de regarder N fois N piles, il évaluera N piles trois fois seulement.
06:02
which is what’s called linear time.
82
362293
2280
C'est ce qu'on appelle un temps linéaire.
06:04
There are ways to optimize the solution even further,
83
364573
3241
On pourrait encore optimiser la solution
06:07
but this is good enough for our heroes.
84
367814
2750
mais cela suffit à nos héros.
06:10
Ethic and Hedge work as one.
85
370564
1770
Éthique et Hedge travaillent de concert.
06:14
The first cascade is a breeze, and they rise up the tower.
86
374992
3844
La première cascade est aisée et ils montent dans la tour.
06:21
The second is a little tougher.
87
381573
2010
La deuxième est un peu plus rude.
06:33
The third is huge, with dozens of stacks of blocks.
88
393051
3860
La troisième est immense avec des dizaines de piles de blocs.
06:36
The timer ticks down towards zero, but Ethic’s program is fast.
89
396911
4433
La minuterie se rapproche de zéro mais le programme d'Éthique est rapide.
06:41
She gets the wheel in position just in time,
90
401344
2964
Elle atteint la barre juste à temps
06:49
and the energy lifts them to the Node of Creation.
91
409015
2920
et l'énergie les soulève vers le Nœud de la Création.
06:55
Like the first, it reveals a vision: memories of years gone by.
92
415640
5427
Comme la première, il révèle une vision : la mémoire des années passées.
07:01
The world machine changed everything,
93
421067
2120
La machine du monde a tout changé.
07:03
and Ethic, in her position as chief robotics engineer,
94
423187
3669
Et Éthique, en tant que cheffe ingénieur en robotique,
07:06
grew troubled by what she saw.
95
426856
2050
est de plus en plus troublée par ce qu'elle voit.
07:08
When the Bradbarrier went up to keep the people in,
96
428906
3040
Quand la barrière Brad s'est levée pour enfermer les gens,
07:11
she knew something was seriously wrong.
97
431946
2640
elle a compris que quelque chose avait tourné très mal.
07:14
So she created three artifacts
98
434586
2090
Alors, elle a créé trois artéfacts
07:16
with the ability to restore people’s power, creativity, and memory,
99
436676
4545
capables de restaurer la puissance, la créativité et la mémoire des gens
07:21
and smuggled them to three communities.
100
441221
2910
et elle les a apportés en cachette à trois communautés.
07:24
Before she could tell people how to use them,
101
444131
2318
Avant de pouvoir expliquer comment les utiliser,
07:26
the government discovered her efforts and sent bots to arrest her
102
446449
3510
les gouvernements l'ont découverte et ont envoyé des bots pour l'arrêter
07:29
and the other programmers.
103
449959
1930
avec les autres programmeurs.
07:31
The last thing Ethic used the world machine to create
104
451889
3320
La dernière chose qu'Éthique a fait créer par la machine du monde
07:35
was a robot that would protect the ancient device
105
455209
2790
est un robot pour protéger l'ancien système
07:37
from the forces of ignorance by enclosing it in a giant maze.
106
457999
4330
des forces de l'ignorance en l'enfermant dans un labyrinthe géant.
07:42
She named her creation Hedge.
107
462329
2414
Elle a nommé sa création Hedge.
07:51
Without warning, the energy lift flickers, then fizzles out.
108
471801
3830
Sans prévenir, l'ascenseur énergétique faiblit et s'éteint définitivement.
À propos de ce site Web

Ce site vous présentera des vidéos YouTube utiles pour apprendre l'anglais. Vous verrez des leçons d'anglais dispensées par des professeurs de premier ordre du monde entier. Double-cliquez sur les sous-titres anglais affichés sur chaque page de vidéo pour lire la vidéo à partir de là. Les sous-titres défilent en synchronisation avec la lecture de la vidéo. Si vous avez des commentaires ou des demandes, veuillez nous contacter en utilisant ce formulaire de contact.

https://forms.gle/WvT1wiN1qDtmnspy7