The Furnace Bots | Think Like A Coder, Ep 3

593,092 views ・ 2019-11-18

TED-Ed


Пожалуйста, дважды щелкните на английские субтитры ниже, чтобы воспроизвести видео.

Переводчик: Elena McDonnell Редактор: Yulia Kallistratova
00:35
Ethic and her robot Hedge agree to help the resistance leader, Adila,
0
35753
5043
Этика и её робот Хедж соглашаются помочь Адиле, лидеру движения сопротивления,
00:40
sabotage the art-incinerating furnace-bots.
1
40796
3770
вывести из строя робо-топки, сжигающие литературу и произведения искусства.
00:44
In exchange,
2
44566
996
В обмен на это
00:45
Adila promises to lead them to the first object of Ethic’s quest,
3
45562
4784
Адила обещает показать им, где находится первый нужный Этике артефакт —
00:50
an artifact called the Node of Power.
4
50346
4331
Модуль силы.
00:54
Years ago, there was just one furnace-bot.
5
54677
3051
Когда-то давно существовала всего одна робо-топка.
00:57
It had a 0 inside its furnace and an unknown,
6
57728
3489
Внутри неё был 0 и созданный методом случайного подбора серийный номер.
01:01
randomly generated serial number.
7
61217
3000
01:04
Over time, the original self-replicated to produce more identical furnace-bots.
8
64217
6557
Но она начала самовоспроизводиться, создавая идентичные робо-топки.
01:10
Each child inherited the original’s unknown serial number within its furnace,
9
70774
5268
Каждый такой «ребёнок» унаследовал серийный номер оригинала в топке
01:16
and had a random, unique serial number of its own inscribed on its shell.
10
76042
5467
и получил другой случайный уникальный номер, выгравированный на корпусе.
01:21
The second generation of furnace- bots also self-replicated in the same way,
11
81509
4931
Второе поколение робо-топок самовоспроизвелось таким же образом,
01:26
always passing their own serial numbers to their offspring’s furnaces.
12
86440
5003
всегда передавая свои серийные номера в топки своего потомства.
01:31
This continued on for many generations.
13
91443
3710
Так было создано много поколений.
01:35
Today, each furnace-bot receives its orders from its parent.
14
95153
4479
Сегодня каждая робо-топка получает указания от своего «родителя».
01:39
So if Ethic can find the original 0 bot and somehow change its instructions,
15
99632
6115
То есть если Этике удастся найти исходного нулевого робота и изменить его указания,
01:45
she could take over the entire army, all at once.
16
105747
4429
она сможет управлять всей армией.
01:50
Adila has the perfect solution:
17
110176
2695
У Адилы есть отличное решение:
01:52
a data crystal that she’s been carrying for years,
18
112871
3554
кристалл данных, который она носит с собой много лет,
01:56
waiting for the right moment to activate it.
19
116425
2941
ожидая подходящего случая для его активации.
01:59
It contains a program designed to gain control of a bot
20
119366
4094
Он содержит программу, разработанную для получения контроля над роботами
02:03
and give it new instructions.
21
123460
2355
и предписания им новых указаний.
02:05
But if it’s uploaded to any furnace- bot other than the original,
22
125815
4056
Но если её загрузить в робо-топку, не являющуюся исходной,
02:09
the 0 bot will override the instructions
23
129871
2870
нулевой робот отвергнет эти указания
02:12
and destroy the data crystal in the process.
24
132741
3624
и уничтожит кристалл данных.
02:16
The feeding is just a few minutes away,
25
136365
2395
Принесение даров начнётся через несколько минут,
02:18
and there’s only one chance to get this right.
26
138760
3559
и у вас есть всего один шанс — ошибки недопустимы.
02:22
Fortunately, Hedge’s ability to store data can help.
27
142319
4249
К счастью, вам может помочь способность Хеджа хранить данные.
02:26
In programming,
28
146568
1205
В программировании
02:27
a piece of information gets stored in something called a variable.
29
147773
4344
элементы информации хранятся в переменных.
02:32
Variables are basically containers that hold onto numbers, words, or other values.
30
152117
6490
Переменные — это сосуды, которые могут содержать числа, слова и другие значения.
02:38
How does Ethic program Hedge to find the original 0 bot as quickly as possible?
31
158607
6695
Как Этике следует запрограммировать Хеджа,
чтобы найти исходную нулевую робо-топку как можно быстрее?
02:45
Pause now to figure it out for yourself.
32
165302
2790
Приостановите видео, чтобы найти ответ самостоятельно.
02:49
Here’s a hint.
33
169956
1353
Вот подсказка.
02:51
Programs can be written to have as many variables as you need,
34
171309
4220
Программы могут содержать любое нужное вам количество переменных,
02:55
but you can solve this problem with just one.
35
175529
3341
но данную задачу можно решить всего с одной.
02:58
Hedge can use it to store a serial number
36
178870
2794
Хедж может использовать её, чтобы сохранить серийный номер
03:01
and replace it with a new one as often as he needs.
37
181664
3606
и заменять его на новый, когда это необходимо.
03:05
Pause now to figure it out for yourself.
38
185270
2444
Приостановите видео, чтобы найти ответ самостоятельно.
03:10
A key insight here is that Hedge doesn’t need to map out the entire
39
190129
4439
Ключевая идея здесь — то, что Хеджу не нужно знать
всю схему родственных связей, чтобы найти исходную робо-топку.
03:14
set of relationships to find the original furnace-bot.
40
194568
3923
03:18
If, for example, he gets lucky and picks the original one right away,
41
198491
4449
Например, если ему повезёт и он сразу же выберет исходного робота,
03:22
he’ll be done.
42
202940
1080
поиск будет завершён.
03:24
But if he starts with any other bot,
43
204020
2418
Но если он начнёт с любого другого робота,
03:26
he can still find a path that leads straight back to the 0-bot
44
206438
4273
он всё равно сможет найти путь, ведущий к исходному нулевому роботу,
03:30
by following a simple set of instructions.
45
210711
3720
выполняя простой набор указаний.
03:34
To help craft them, let’s first simplify the problem.
46
214431
3620
Чтобы создать их, давайте сначала упростим задачу.
03:38
Let’s say there were only three furnace-bots;
47
218051
2772
Представим, что у нас всего три робо-топки:
03:40
a parent and two children, but you don’t know which is which.
48
220823
3809
«родитель» и двое «детей», но вы не знаете, кто из них кто.
03:44
You could have Hedge pick one at random and look inside its furnace.
49
224632
4777
Вы можете сказать Хеджу выбрать одного из них и заглянуть в его топку.
03:49
Now, you know the family tree looks like this.
50
229409
3840
Мы знаем, что родословное дерево выглядит вот так.
03:53
If the number inside the furnace is a 0, you’ve found the parent.
51
233249
3954
Если номер в топке — ноль, то вы нашли исходного робота.
03:57
If not, then no matter which child you chose,
52
237203
3345
А если нет, то какого бы «ребёнка» вы ни выбрали,
04:00
it must have the parent’s serial number in its furnace.
53
240548
3810
в его топке будет серийный номер «родителя».
04:04
So in this scenario, you’re guaranteed to find the parent in one or two moves.
54
244358
6315
Поэтому в этой ситуации вы гарантированно найдёте «родителя» в один или два захода.
04:10
In actuality, there are many furnace-bots,
55
250673
2890
Но на самом деле у нас много робо-топок,
04:13
and you don’t know how many generations there are
56
253563
2683
и вы не знаете, сколько у них поколений
04:16
nor what the family tree looks like.
57
256246
2605
и как выгладит их родословное дерево.
04:18
But you don’t need to,
58
258851
1589
Но это и не обязательно,
04:20
because Hedge can just keep repeating the same sequence of actions
59
260440
3921
потому что Хедж может выполнять одну и ту же последовательность действий
04:24
until he gets to the original.
60
264361
2242
до тех пор, пока не найдёт исходного робота.
04:26
How? With a loop.
61
266603
2409
Как? С помощью цикла.
04:29
Hedge can pick any bot at random, look inside its furnace,
62
269012
3880
Хедж может выбрать любого робота, заглянуть в топку
04:32
and store that serial number as a variable.
63
272892
3318
и сохранить его серийный номер как переменную.
04:36
Then he’ll begin the following loop that will repeat
64
276210
3405
Затем он начнёт выполнять следующий цикл до тех пор,
04:39
until the stored variable equals 0,
65
279615
2706
пока сохранённая переменная не будет равной нулю,
04:42
the furnace number of the original bot:
66
282321
3270
то есть номеру топки исходного робота:
04:45
1. Find the bot whose shell serial number matches the stored number.
67
285591
5428
1. Найди робота, номер на корпусе которого совпадает с сохранённым номером.
04:51
2. Look inside its furnace.
68
291019
2960
2. Загляни в топку.
04:53
3. Store that new number, overwriting the old one.
69
293979
5120
3. Сохрани новый номер, удалив старый.
04:59
Once the loop ends, we’ll know that Hedge has found the 0 bot,
70
299099
4340
Когда этот цикл будет завершён, Хедж найдёт нулевого робота
05:03
so he should upload the control program.
71
303439
2685
и сможет загрузить программу управления.
05:06
So here’s what happens:
72
306124
1628
Итак, происходит следующее:
05:07
Hedge only takes 5 repetitions to find the original:
73
307752
3729
всего пять повторений, и Хедж находит исходного робота:
05:11
robot 733 has the 0 in its furnace.
74
311481
4100
в топке робота 733 стоит ноль.
05:15
In a blink of a mechanical eye,
75
315581
2094
В мгновение всевидящего ока программа распространяется по всей армии роботов,
05:17
the program spreads through the entire army, and Adila takes control.
76
317675
5136
и Адила берёт контроль в свои руки.
05:22
She has the furnace-bots give off theatrical bouts of flame
77
322811
3449
Робо-топки теперь только изображают огонь,
05:26
to hide the fact that they’re now secretly safe-guarding
78
326260
3343
а на самом деле бережно хранят литературу и произведения искусства.
05:29
all of that artistic output.
79
329603
3040
05:32
Now that Ethic’s delivered the furnace-bots,
80
332643
2397
Поскольку Этика доставила ей робо-топки,
05:35
Adila honors her end of the deal.
81
335040
3460
Адила выполняет своё обещание.
05:38
She leads Ethic and Hedge to the location of the first artifact,
82
338500
3901
Она приводит их к месту, где хранится первый артефакт —
05:42
the Node of Power.
83
342401
2579
Модуль силы.
05:44
There, one thing is immediately clear:
84
344980
3016
Здесь им сразу становится ясно одно:
05:50
they’ll have to steal it.
85
350086
1720
им придётся его выкрасть.
Об этом сайте

Этот сайт познакомит вас с видеороликами YouTube, полезными для изучения английского языка. Вы увидите уроки английского языка, преподаваемые высококлассными учителями со всего мира. Дважды щелкните по английским субтитрам, отображаемым на каждой странице видео, чтобы воспроизвести видео оттуда. Субтитры прокручиваются синхронно с воспроизведением видео. Если у вас есть какие-либо комментарии или пожелания, пожалуйста, свяжитесь с нами, используя эту контактную форму.

https://forms.gle/WvT1wiN1qDtmnspy7