艺术家们 | 像程序员一样思考 第五集
-
0:09 - 0:11[ 像程序员一样思考 ]
-
0:13 - 0:18[ 地点:198 树林 ]
-
0:19 - 0:20[ 第五集 艺术家们 ]
-
0:23 - 0:28破晓时分,火车停下,
艾斯克和海吉抵达了树林。 -
0:28 - 0:31这两位冒险者
已找到第一件神器 —— -
0:31 - 0:33能量晶石,
-
0:33 - 0:37现抵达 198 森林,
来找寻第二件神器, -
0:37 - 0:41殖民首领奥克塔维亚
欢迎他们的到来。 -
0:42 - 0:44机器人把人们从工作中解放后,
-
0:44 - 0:47她建立了这个树屋保护区。
-
0:47 - 0:51这本应是人们追随自己激情、
-
0:51 - 0:53从事手工业,获得成就感的港湾,
-
0:53 - 0:55一开始,人们也确实是这么做的,
-
0:55 - 0:58但几年前,大家都忘记了初衷,
-
0:58 - 1:00他们放弃了艺术和手工,
-
1:00 - 1:03只是不停地画自己,
并展示自己的照片, -
1:03 - 1:05日复一日,年复一年。
-
1:05 - 1:08第二件神器的位置众所周知,
-
1:08 - 1:10位于一个万丈深谷的塔里,
-
1:10 - 1:15由机器人看守,
有众多不为人知的陷阱。 -
1:15 - 1:19藏有能量晶石的塔高耸入云,
-
1:19 - 1:23整个地球的人类交流
在该塔建成后从此中断。 -
1:23 - 1:25奥克塔维亚关注它好几年了,
-
1:25 - 1:29但无论她怎么尝试,
都无法突破其防御系统。 -
1:29 - 1:33艾斯克团队为到达塔下,
需要分散守卫的注意力。 -
1:33 - 1:35奥克塔维亚有个主意:
-
1:35 - 1:39通过一些善意的破坏公物行为,
来煽动人们(从而转移守卫视线)。 -
1:39 - 1:43居民画像是大小不一的正方形,
-
1:43 - 1:46每个方向的像素数都是奇数。
-
1:46 - 1:49机器人助手收集画完的肖像,
-
1:49 - 1:53并挂在公共场所供大家欣赏。
-
1:53 - 1:57海吉只有极短的时间窗口
能接触到这些画, -
1:57 - 2:00如果它在每幅画上涂个 X,
-
2:00 - 2:03人们就会责怪机器人助手,
-
2:03 - 2:06从而实现他们
分散机器人注意力的目的, -
2:06 - 2:08要是实现起来
也如此容易就好了, -
2:08 - 2:11海吉不是如此简单就能画上 X,
-
2:11 - 2:15它的绘画处理器
需要非常具体的指令。 -
2:15 - 2:17它把这些画当作正方形网格,
-
2:17 - 2:21一次只能填一个像素,
即只能填一个小正方形。 -
2:21 - 2:25它在画布上可以向前移动,
也能进行 90 度旋转, -
2:25 - 2:28但不能斜着移动。
-
2:28 - 2:32艾斯克如何编程,
才能让海吉在自画像上涂上 X 呢? -
2:32 - 2:34[ 可暂停播放自行解题 ]
-
2:34 - 2:35[ 涂画规则 4 ]
-
2:35 - 2:36[ 涂画规则 3 ]
-
2:36 - 2:37[ 涂画规则 2 ]
-
2:37 - 2:38[ 涂画规则 1 ]
-
2:38 - 2:39[ 思路 5 ]
-
2:39 - 2:40[ 思路 4 ]
-
2:40 - 2:41[ 思路 3 ]
-
2:41 - 2:41[ 思路 2 ]
-
2:41 - 2:42思路如下:
-
2:42 - 2:45先画一个正方形网格,如图,
-
2:45 - 2:48然后模拟海吉的涂画路径。
-
2:48 - 2:51如何指导海吉完成任务呢?
-
2:51 - 2:52[ 按暂停自己解题 ]
-
2:52 - 2:53[ 答案公布 3 ]
-
2:53 - 2:54[ 答案公布 2 ]
-
2:54 - 2:55[ 答案公布 1 ]
-
2:56 - 2:58这里的挑战是如何设计指令组,
-
2:58 - 3:01以适用任何大小的正方形网格。
-
3:01 - 3:05幸运的是,编程的优点之一
就是其灵活性, -
3:05 - 3:07它并非只能解决一个问题,
-
3:07 - 3:10而是一次性解决一类问题。
-
3:10 - 3:15先从一个案例开始着手,
总有助于找到整体方案。 -
3:15 - 3:17我们假设正方形如图所示,
-
3:17 - 3:21海吉可测量其边长,
并保存为变量值。 -
3:21 - 3:27现在,我们需要一个计划,
让海吉把像素逐个画上 X 。 -
3:27 - 3:30实现方法不止一个,
-
3:30 - 3:32我们先来看两个方法。
-
3:32 - 3:35第一种,打字机模式,
让海吉一行一行地画。 -
3:35 - 3:38如果画像是 9 X 9 像素,
-
3:38 - 3:43它先画第一行第一格,
跳过七格,然后画一格, -
3:43 - 3:47第二行,他跳过第一格再画,
跳过五格再画, -
3:47 - 3:49继续画下一行。
-
3:49 - 3:54规则是,每行开始跳过的像素 +1,
-
3:54 - 3:58中间跳过的像素 -2,
-
3:58 - 4:01海吉画到中心点时,
情况变得更加复杂。 -
4:01 - 4:04这一行只画一个像素。
-
4:04 - 4:06然后,画的顺序就全反了 ——
-
4:06 - 4:10左边跳过的像素数每行 -1,
-
4:10 - 4:14每行中间跳过的像素数 +2。
-
4:14 - 4:17海吉执行这组循环指令是可行的,
-
4:17 - 4:19且是完美解决方案。
-
4:19 - 4:23主要缺点是其中涉及的逻辑很多——
-
4:23 - 4:26每行中间做什么、何时反向操作,
-
4:26 - 4:29以及如何精确反向操作。
-
4:29 - 4:31那么,我们如何操作,
-
4:31 - 4:34才能使逻辑始终一致呢?
-
4:34 - 4:40关键是把网格
看作是一系列的同心正方形。 -
4:40 - 4:43每个正方形遵循相同模式——
-
4:43 - 4:47只画四个角的像素,
其余像素不变。 -
4:47 - 4:50因此,如果我们能找到
绘制一个嵌套正方形的方法, -
4:50 - 4:55即可应用到下一个,不断重复,
就能把它们全部绘制出来。 -
4:55 - 4:57最外层正方形最容易绘制。
-
4:57 - 5:00从一角开始,先画该角的像素。
-
5:00 - 5:02假设画的长度为 n 像素,
-
5:02 - 5:05就向前移动 n - 1 格,
-
5:05 - 5:07再画一个像素,然后右转。
-
5:07 - 5:11接着再做一次循环操作 ,
接着再做一次, -
5:11 - 5:16现在向前少移动一格,
右转,再向前移动一格, -
5:16 - 5:19海吉正好位于
下个同心正方形一角, -
5:19 - 5:22即可重复下一个循环过程。
-
5:22 - 5:28每个正方形的长宽
都比上一个少 n - 2 像素, -
5:28 - 5:30继续该螺旋模式,
-
5:30 - 5:37通过变量和循环控制海吉的步伐,
最终一直画到中心点。 -
5:37 - 5:39两种方式哪种更优呢?
-
5:39 - 5:41这取决于你的侧重点。
-
5:41 - 5:44螺旋循环的优点在于,
它简单地找到一个模式, -
5:44 - 5:47并从头到尾循序相同逻辑。
-
5:47 - 5:50打字机方法的优点在于,
-
5:50 - 5:52它是一个更通用的解决方案,
-
5:52 - 5:56即它容易适应任何模式。
-
5:56 - 5:59对艾斯克来说,哪种都能达成目的。
-
5:59 - 6:01所以结果是这样的,
-
6:01 - 6:04海吉很快弄脏了所有的肖像,
-
6:04 - 6:05不一会儿,
-
6:05 - 6:09痛苦的哭声响彻整个森林。
-
6:09 - 6:12守卫塔的守卫们
离开了他们的岗位, -
6:12 - 6:14以安抚骚动的人们,
-
6:14 - 6:17艾斯克、海吉和奥克塔维亚
悄悄穿了过去 —— -
6:17 - 6:20差一点掉进幽幽深谷,
-
6:20 - 6:23那位于他们和塔之间的万丈峡谷。
- Title:
- 艺术家们 | 像程序员一样思考 第五集
- Speaker:
- 亚历克斯 · 罗森塔尔
- Description:
-
查看完整课程:https://ed.ted.com/lessons/the-artists-think-like-a-coder-ep-5
这是我们的动画系列 《像程序员一样思考》的第五集。该故事共十集,讲述了女孩艾斯克和她的机器人伙伴海吉努力拯救世界的故事。 两人从收集三个神器开始,并且必须通过解决一系列编程谜题,才能完成这一使命。
课程讲解:亚历克斯·罗森塔尔(Alex Rosenthal),动画执导:Kozmonot Animation 工作室。
- Video Language:
- English
- Team:
closed TED
- Project:
- TED-Ed
- Duration:
- 06:25
![]() |
Lipeng Chen approved Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Lipeng Chen edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Lipeng Chen edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Lipeng Chen edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Lipeng Chen edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Lipeng Chen edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Jiasi Hao accepted Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 | |
![]() |
Jiasi Hao edited Chinese, Simplified subtitles for The Artists | Think Like A Coder, Ep 5 |