The Gauntlet | Think Like A Coder, Ep 8

404,588 views ・ 2020-04-16

TED-Ed


Please double-click on the English subtitles below to play the video.

00:21
Their fall from the tower sends Ethic and Hedge
0
21734
3050
00:24
spinning into the rapids of a river of pure energy.
1
24784
4240
00:30
This torrent flows from the Bradbarrier all the way to Huxenborg.
2
30944
5937
00:36
There an entire city’s worth of factories
3
36881
3100
00:39
build the robots and house the Node of Memory,
4
39981
3080
00:43
the last of the three powerful artifacts Ethic needs to collect.
5
43061
4372
00:47
After a long day and a longer night
6
47433
2510
00:49
they find themselves in a canyon of brick and steel.
7
49943
3720
00:58
Just when they’re about to reach the end of the line,
8
58918
2655
01:01
a rope catches them.
9
61573
1750
01:07
Their savior, Lemma, has been waiting for them.
10
67023
4114
01:11
When Ethic claimed the Node of Creation from the forest tower,
11
71137
3952
01:15
radios all across the land came back to life.
12
75089
3900
01:18
Adila, the resistance leader, immediately started contacting her allies,
13
78989
4776
01:23
none more important than Lemma,
14
83765
2610
01:26
a brilliant scientist working from within Huxenborg to bring down the machines.
15
86375
5893
01:32
Unfortunately, the radios also tipped off the robots.
16
92268
4000
01:36
So they’ve taken defensive measures
17
96268
2260
01:38
to protect the final artifact in its home in the very heart of the city.
18
98528
4828
01:43
There’s only one way to get there: the gauntlet of forking paths.
19
103356
5155
01:48
It’s a deadly series of luminous conveyors that wind underneath Huxenborg.
20
108511
6386
01:54
Starting from the current position,
21
114897
1820
01:56
each section runs for a distance, then splits in two.
22
116717
4395
02:01
Every branch does the same thing, again and again.
23
121112
3430
02:04
There are thousands of branches.
24
124542
2400
02:06
Only one path leads to the artifact; all the others to destruction.
25
126942
5942
02:12
Fortunately, the Node of Creation has granted Hedge a strange power:
26
132884
4619
02:17
he can produce slightly smaller versions of himself.
27
137503
3720
02:21
Each version can do only two things: radio information back to its parent,
28
141223
5210
02:26
and produce slightly smaller versions of itself…
29
146433
3740
02:30
which can do the same two things, as can their children,
30
150173
3690
02:33
for as many generations as needed.
31
153863
2940
02:36
A patrol is closing in on their position, so Ethic’s time is limited.
32
156803
5051
02:41
What instructions should she give Hedge to find the one safe path?
33
161854
5203
02:47
Pause the video to figure it out yourself.
34
167057
6778
02:53
Hint in 3
35
173835
990
02:54
Hint in 2
36
174825
1200
02:56
Hint in 1
37
176025
960
02:57
Programmers have an elegant tool in their arsenal called recursion.
38
177825
5162
03:02
Recursion is when you have a set of instructions that refers back to itself.
39
182987
5341
03:08
It’s like using a word in its own definition,
40
188328
2960
03:11
except where that’s frowned upon, this is incredibly effective.
41
191288
4560
03:15
Recursion involves repetition, but in a different way than loops.
42
195848
4512
03:20
Where a loop takes one action and repeats it again and again,
43
200360
4000
03:24
recursion will start an action, and before it’s finished, use it again,
44
204360
4302
03:28
and before that’s finished, use it again, and so on.
45
208662
4000
03:32
It keeps doing this until some end state is reached.
46
212662
4000
03:36
It then passes the information back up, layer after layer,
47
216662
4162
03:40
until it reaches the top and ends the cycle.
48
220824
3620
03:44
Recursion is ideal for problems that involve self-similarity,
49
224444
4662
03:49
where each part resembles the larger whole.
50
229106
2860
03:51
Like, for example, a deadly defense system designed to end any person or thing
51
231966
6004
03:57
who dares tread upon it.
52
237970
1890
03:59
Pause the video to figure it out yourself.
53
239860
2060
04:01
Solution in 3
54
241920
793
04:02
Solution in 2
55
242713
920
04:03
Solution in 1
56
243633
1080
04:04
Ethic’s conundrum seems sprawling on the surface,
57
244993
3041
04:08
but there’s a remarkably simple solution to it using recursion.
58
248034
4366
04:12
In order to find it, let’s first look at the simplest version of this puzzle:
59
252400
4750
04:17
what if the entire maze were just two paths?
60
257150
3270
04:20
If Hedge copies himself, the copy that goes the wrong way will be destroyed.
61
260420
4618
04:25
So the other one, which will reach the artifact,
62
265038
2719
04:27
can radio back the path it took, and then no matter which way is correct,
63
267757
4700
04:32
that’s the answer Hedge will receive.
64
272457
2401
04:34
This is called the "base case" of the recursion.
65
274858
3580
04:38
Now, suppose the maze branches twice from the starting point,
66
278438
3340
04:41
and at every intersection, Hedge’s copies—
67
281778
2982
04:44
let’s call them Twig 1 and Twig 2—
68
284760
2860
04:47
make more copies— let’s call them Leaves 1 through 4.
69
287620
5007
04:52
Three Leaves will be destroyed.
70
292627
3120
04:55
The one that reaches the artifact will radio back the right answer,
71
295747
4116
04:59
but only to its parent.
72
299863
1980
05:01
So if Twig 1 or 2 is waiting at an intersection
73
301843
3880
05:05
and hears something over the radio,
74
305723
1990
05:07
that’s the right way to go to the artifact from where it is.
75
307713
3560
05:11
To tell Hedge the right answer from his perspective,
76
311273
3290
05:14
the Twig should say which way it went,
77
314563
2440
05:17
and then the route it just heard over the radio.
78
317003
3600
05:20
This same process will work no matter how many times the maze branches.
79
320603
4790
05:25
Any answer a copy hears on the radio
80
325393
2960
05:28
must be the way to the control room from its location,
81
328353
3300
05:31
and if it then adds the branch it took,
82
331653
2350
05:34
it can tell its parent how to get there as well.
83
334003
3220
05:37
We can sum up the instructions in an action called Pathfinder
84
337223
4000
05:41
that every version of Hedge will follow:
85
341223
3130
05:44
1. If you’ve reached the artifact,
86
344353
2290
05:46
radio to your parent whether you got there by going left or right.
87
346643
4094
05:50
2. When you reach an intersection, move off the conveyor
88
350737
3830
05:54
and send new copies down the left and right paths.
89
354567
3980
05:58
Have them each run Pathfinder.
90
358547
2280
06:00
This is where recursion comes in,
91
360827
2040
06:02
and this may happen many times before the last instruction triggers, which is:
92
362867
5094
06:07
3. If you hear anything over the radio, you should radio to your parent
93
367961
4987
06:12
whether you got to your spot by going left or right,
94
372948
3629
06:16
then repeat everything you just heard.
95
376577
2850
06:19
Pathfinder is an example of what programmers call functions,
96
379427
3996
06:23
subroutines, or procedures.
97
383423
2690
06:26
No matter the terminology, the idea is the same—
98
386113
3390
06:29
it’s a set of instructions given a label so that it can be easily reused—
99
389503
4794
06:34
perhaps even by itself.
100
394297
2310
06:36
And in our case that’ll work perfectly—
101
396607
2976
06:39
an entire network of paths mapped using just three instructions.
102
399583
5230
06:46
So here's what happens.
103
406257
1630
07:09
By the time the patrol rounds the corner, Ethic and Lemma have improvised disguises.
104
429760
5777
07:15
They try to confuse the bots long enough to buy Hedge time.
105
435537
4120
07:31
Finally, Hedge’s radio crackles to life with a series of directions.
106
451473
4778
07:36
The three dive onto the conveyor and flee for their lives,
107
456251
3850
07:40
with a squadron of enforcer bots in hot pursuit.
108
460101
3720
About this website

This site will introduce you to YouTube videos that are useful for learning English. You will see English lessons taught by top-notch teachers from around the world. Double-click on the English subtitles displayed on each video page to play the video from there. The subtitles scroll in sync with the video playback. If you have any comments or requests, please contact us using this contact form.

https://forms.gle/WvT1wiN1qDtmnspy7