The Furnace Bots | Think Like A Coder, Ep 3

593,092 views ・ 2019-11-18

TED-Ed


Por favor, clique duas vezes nas legendas em inglês abaixo para reproduzir o vídeo.

Tradutor: Simone Gumier Revisor: Maricene Crus
00:35
Ethic and her robot Hedge agree to help the resistance leader, Adila,
0
35753
5043
Ethic e o robô Hedge concordam em ajudar a líder da resistência, Adila,
00:40
sabotage the art-incinerating furnace-bots.
1
40796
3770
a sabotar os robôs-fornalha, incineradores de arte.
00:44
In exchange,
2
44566
996
Em troca, Adila promete levá-los ao primeiro objeto da busca de Ethic,
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
um artefato chamado "Node do Poder".
00:54
Years ago, there was just one furnace-bot.
5
54677
3051
Anos atrás, havia apenas um robô-fornalha.
00:57
It had a 0 inside its furnace and an unknown,
6
57728
3489
Havia um zero dentro da fornalha dele
e um número de série desconhecido gerado aleatoriamente.
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
Com o passar do tempo,
o original se autorreplicou e gerou mais robôs-fornalha idênticos.
01:10
Each child inherited the original’s unknown serial number within its furnace,
9
70774
5268
Cada "filho" herdava o número de série desconhecido do robô original
01:16
and had a random, unique serial number of its own inscribed on its shell.
10
76042
5467
e tinha um número de série único e aleatório inscrito no corpo.
01:21
The second generation of furnace- bots also self-replicated in the same way,
11
81509
4931
A segunda geração de robôs-fornalha também se autorreplicou do mesmo modo,
01:26
always passing their own serial numbers to their offspring’s furnaces.
12
86440
5003
sempre transmitindo os números de série para os seus descendentes.
01:31
This continued on for many generations.
13
91443
3710
Isso continuou por muitas gerações.
01:35
Today, each furnace-bot receives its orders from its parent.
14
95153
4479
Hoje, cada robô-fornalha recebe ordens de seu "pai".
01:39
So if Ethic can find the original 0 bot and somehow change its instructions,
15
99632
6115
Então, se Ethic conseguisse encontrar o robô número zero
e, de algum modo, alterar as instruções dele,
01:45
she could take over the entire army, all at once.
16
105747
4429
ela poderia controlar o exército inteiro de uma só vez.
01:50
Adila has the perfect solution:
17
110176
2695
Adila tem a solução perfeita:
01:52
a data crystal that she’s been carrying for years,
18
112871
3554
um cristal de dados que ela tem guardado há anos,
01:56
waiting for the right moment to activate it.
19
116425
2941
à espera do momento certo para ativá-lo.
01:59
It contains a program designed to gain control of a bot
20
119366
4094
O cristal contém um programa desenvolvido para controlar um robô
02:03
and give it new instructions.
21
123460
2355
e dar a ele novas instruções.
02:05
But if it’s uploaded to any furnace- bot other than the original,
22
125815
4056
Mas, se o programa for instalado em qualquer robô além do original,
02:09
the 0 bot will override the instructions
23
129871
2870
o robô número zero anulará as instruções
02:12
and destroy the data crystal in the process.
24
132741
3624
e destruirá o cristal de dados durante o processo.
02:16
The feeding is just a few minutes away,
25
136365
2395
Faltam poucos minutos para que os robôs se alimentem,
02:18
and there’s only one chance to get this right.
26
138760
3559
e há apenas uma chance de fazer com que o plano funcione.
02:22
Fortunately, Hedge’s ability to store data can help.
27
142319
4249
Felizmente, a habilidade de Hedge de armazenar dados pode ajudar.
02:26
In programming,
28
146568
1205
Em programação,
02:27
a piece of information gets stored in something called a variable.
29
147773
4344
uma informação fica armazenada em algo chamado "variável".
02:32
Variables are basically containers that hold onto numbers, words, or other values.
30
152117
6490
Basicamente, as variáveis são como recipientes
que armazenam números, palavras ou outros valores.
02:38
How does Ethic program Hedge to find the original 0 bot as quickly as possible?
31
158607
6695
Como será que Ethic pode programar Hedge
para que ele encontre o robô original o mais rápido possível?
02:45
Pause now to figure it out for yourself.
32
165302
2790
Uma pausa agora para que você descubra sozinho.
02:49
Here’s a hint.
33
169956
1353
Eis uma dica:
02:51
Programs can be written to have as many variables as you need,
34
171309
4220
os programas podem conter quantas variáveis necessárias,
02:55
but you can solve this problem with just one.
35
175529
3341
mas você pode resolver esse problema com apenas uma.
02:58
Hedge can use it to store a serial number
36
178870
2794
Hedge pode usá-la para armazenar um número de série
03:01
and replace it with a new one as often as he needs.
37
181664
3606
e substituí-lo por um novo quantas vezes forem necessárias.
03:05
Pause now to figure it out for yourself.
38
185270
2444
[Uma pausa agora para que você descubra sozinho]
03:10
A key insight here is that Hedge doesn’t need to map out the entire
39
190129
4439
Um elemento-chave presente é que Hedge não precisa mapear
03:14
set of relationships to find the original furnace-bot.
40
194568
3923
todo o conjunto de relações para encontrar o primeiro robô-fornalha.
03:18
If, for example, he gets lucky and picks the original one right away,
41
198491
4449
Se, por exemplo, ele tiver sorte e escolher o robô original imediatamente,
03:22
he’ll be done.
42
202940
1080
o trabalho terminará.
03:24
But if he starts with any other bot,
43
204020
2418
Mas se começar com qualquer outro robô,
03:26
he can still find a path that leads straight back to the 0-bot
44
206438
4273
ele poderá ainda encontrar um caminho que leve diretamente ao robô original,
03:30
by following a simple set of instructions.
45
210711
3720
seguindo um simples conjunto de instruções.
03:34
To help craft them, let’s first simplify the problem.
46
214431
3620
Para ajudá-lo a executá-las, vamos simplificar o problema primeiro.
03:38
Let’s say there were only three furnace-bots;
47
218051
2772
Digamos que existam somente três robôs-fornalha:
03:40
a parent and two children, but you don’t know which is which.
48
220823
3809
um pai e dois filhos, mas não se sabe quem é quem.
03:44
You could have Hedge pick one at random and look inside its furnace.
49
224632
4777
Você poderia pedir a Hedge que escolhesse um aleatoriamente
e olhasse dentro da fornalha dele.
03:49
Now, you know the family tree looks like this.
50
229409
3840
Agora, você sabe que a árvore genealógica se parece com esta.
03:53
If the number inside the furnace is a 0, you’ve found the parent.
51
233249
3954
Se o número dentro da fornalha for zero, você encontrou o pai;
03:57
If not, then no matter which child you chose,
52
237203
3345
senão, independentemente de qual filho escolher,
04:00
it must have the parent’s serial number in its furnace.
53
240548
3810
ele deve ter o número de série do pai dentro da fornalha.
04:04
So in this scenario, you’re guaranteed to find the parent in one or two moves.
54
244358
6315
Então, neste cenário, é certo que você encontrará o pai em um ou dois movimentos.
04:10
In actuality, there are many furnace-bots,
55
250673
2890
Na realidade, há muitos robôs-fornalha,
04:13
and you don’t know how many generations there are
56
253563
2683
e você não sabe quantas gerações existem,
04:16
nor what the family tree looks like.
57
256246
2605
nem como é a árvore genealógica.
04:18
But you don’t need to,
58
258851
1589
Mas não há necessidade disso,
04:20
because Hedge can just keep repeating the same sequence of actions
59
260440
3921
porque Hedge pode apenas continuar repetindo a mesma sequência de ações
04:24
until he gets to the original.
60
264361
2242
até chegar ao robô original.
04:26
How? With a loop.
61
266603
2409
Como? Com um loop.
04:29
Hedge can pick any bot at random, look inside its furnace,
62
269012
3880
Hedge pode escolher qualquer robô aleatoriamente,
olhar dentro da fornalha dele
04:32
and store that serial number as a variable.
63
272892
3318
e armazenar o número de série como uma variável.
04:36
Then he’ll begin the following loop that will repeat
64
276210
3405
Então, ele executará o seguinte loop que se repetirá
04:39
until the stored variable equals 0,
65
279615
2706
até que a variável armazenada se iguale a zero,
04:42
the furnace number of the original bot:
66
282321
3270
o número da fornalha do robô original.
04:45
1. Find the bot whose shell serial number matches the stored number.
67
285591
5428
Primeiro: encontre o robô cujo número de série corresponda ao número armazenado.
Segundo: olhe dentro da fornalha dele.
04:51
2. Look inside its furnace.
68
291019
2960
04:53
3. Store that new number, overwriting the old one.
69
293979
5120
Terceiro: armazene o novo número, substituindo o antigo.
04:59
Once the loop ends, we’ll know that Hedge has found the 0 bot,
70
299099
4340
Quando o loop terminar, saberemos que Hedge encontrou o robô original;
05:03
so he should upload the control program.
71
303439
2685
então, ele poderá fazer o upload do programa de controle.
05:06
So here’s what happens:
72
306124
1628
Então, eis o que acontece:
05:07
Hedge only takes 5 repetitions to find the original:
73
307752
3729
Hedge apenas executa cinco repetições para encontrar o robô original;
05:11
robot 733 has the 0 in its furnace.
74
311481
4100
o robô 733 tem o zero em sua fornalha.
05:15
In a blink of a mechanical eye,
75
315581
2094
Num piscar de olhos mecânicos,
05:17
the program spreads through the entire army, and Adila takes control.
76
317675
5136
o programa se espalha pelo exército inteiro,
e Adila assume o controle.
05:22
She has the furnace-bots give off theatrical bouts of flame
77
322811
3449
Ela faz com que os robôs-fornalha simulem chamas para esconder o fato
05:26
to hide the fact that they’re now secretly safe-guarding
78
326260
3343
de que agora eles estão protegendo secretamente todo o patrimônio artístico.
05:29
all of that artistic output.
79
329603
3040
05:32
Now that Ethic’s delivered the furnace-bots,
80
332643
2397
Agora que Ethic entregou os robôs-fornalha,
05:35
Adila honors her end of the deal.
81
335040
3460
Adila cumpre a parte dela do acordo.
05:38
She leads Ethic and Hedge to the location of the first artifact,
82
338500
3901
Ela leva Ethic até o local onde está o primeiro artefato,
05:42
the Node of Power.
83
342401
2579
o Node do Poder.
05:44
There, one thing is immediately clear:
84
344980
3016
Chegando lá, uma coisa se torna imediatamente óbvia:
05:50
they’ll have to steal it.
85
350086
1720
eles terão que roubá-lo.
Sobre este site

Este site apresentará a você vídeos do YouTube que são úteis para o aprendizado do inglês. Você verá aulas de inglês ministradas por professores de primeira linha de todo o mundo. Clique duas vezes nas legendas em inglês exibidas em cada página de vídeo para reproduzir o vídeo a partir daí. As legendas rolarão em sincronia com a reprodução do vídeo. Se você tiver algum comentário ou solicitação, por favor, entre em contato conosco usando este formulário de contato.

https://forms.gle/WvT1wiN1qDtmnspy7