So, where are the robots? We've been told for 40 years already that they're coming soon. Very soon they'll be doing everything for us. They'll be cooking, cleaning, buying things, shopping, building. But they aren't here. Meanwhile, we have illegal immigrants doing all the work, but we don't have any robots. So what can we do about that? What can we say? So I want to give a little bit of a different perspective of how we can perhaps look at these things in a little bit of a different way. And this is an x-ray picture of a real beetle, and a Swiss watch, back from '88. You look at that -- what was true then is certainly true today. We can still make the pieces. We can make the right pieces. We can make the circuitry of the right computational power, but we can't actually put them together to make something that will actually work and be as adaptive as these systems.
嗯? 所以呢? 那些機器人咧? 40年來一直有人告訴我們, 機器人很快就會出現在這個世界上了。 很快地, 他們會替我們做每一件事, 他們會煮飯, 打掃, 買東西, 購物血拼, 蓋房子, 但是, 他們並沒有出現。 現在這當兒, 我們雇用非法移民來替我們完成所有的工作, 但是, 我們還是沒有機器人呀! 所以, 對於這件事我們可以做些什麼? 或者說些什麼呢? 所以, 我想跟你們分享一些不同的觀點, 看看我們能怎樣從不同的角度看待這些事。 這是一張大甲蟲和瑞士名錶的X光圖, 是在1988年拍攝的, 你們看看這裡---- 當年確實存在的, 現在還是存在。 我們還是能做出零件, 而且是對的零件, 我們可以畫出具有運算功能的電路圖, 但是我們卻沒有辦法把他們組合在一起然後創造出一個東西, 而那個東西又要能夠跟這些系統一樣運作良好又具備適應能力。
So let's try to look at it from a different perspective. Let's summon the best designer, the mother of all designers. Let's see what evolution can do for us. So we threw in -- we created a primordial soup with lots of pieces of robots -- with bars, with motors, with neurons. Put them all together, and put all this under kind of natural selection, under mutation, and rewarded things for how well they can move forward. A very simple task, and it's interesting to see what kind of things came out of that.
那麼讓我來試著從不一樣的角度看看, 我們來召喚一個設計師--他是所有設計師的老師: 我們來看看演化為我們做了些什麼。 我們創造一種最原始的湯汁, 我們丟入很多機器人的碎片, 裡面包含了拉桿, 引擎和神經, 把他們全部放在一起, 然後讓他們面對物競天擇、 突變,並依據他們發展的情況給予獎賞。 這是很簡單的工作,而且觀察這個演化過程也十分有趣。
So if you look, you can see a lot of different machines come out of this. They all move around. They all crawl in different ways, and you can see on the right, that we actually made a couple of these things, and they work in reality. These are not very fantastic robots, but they evolved to do exactly what we reward them for:
仔細一瞧,你就會發現很多不一樣的機器被創造出來了 他們到處走來走去, 他們都往不同的方向爬,你們可以在右邊 看到我們做出來的成果, 他們都可以在現實生活中執行任務, 你看到的這些都不是多高檔的機器人, 但是他們卻完全依照我們所給的獎賞而演化。
for moving forward. So that was all done in simulation, but we can also do that on a real machine. Here's a physical robot that we actually have a population of brains, competing, or evolving on the machine. It's like a rodeo show. They all get a ride on the machine, and they get rewarded for how fast or how far they can make the machine move forward. And you can see these robots are not ready to take over the world yet, but they gradually learn how to move forward, and they do this autonomously.
這些雖然都是在電腦上模擬出來的, 但我們也可以讓真的機器做出相同的事。 這就是一個我們實際上可以看到的機器人, 他有好幾個大腦, 這幾個大腦在這機器上彼此競爭並且演化, 就像賽馬一樣: 他們會騎到機器上, 他們之中讓機器跑得越快越遠的, 就可以得到越多獎賞。 現在你可以看到這些機器人 還沒準備好取代人類統治這個世界, 不過他們慢慢學會要怎麼往前走了, 而且他們是完全自主地前進著。
So in these two examples, we had basically machines that learned how to walk in simulation, and also machines that learned how to walk in reality. But I want to show you a different approach, and this is this robot over here, which has four legs. It has eight motors, four on the knees and four on the hip. It has also two tilt sensors that tell the machine which way it's tilting.
在剛剛提到的兩個例子裡, 我們基本上擁有兩種機器, 第一種是以電腦模擬的方式學習走路, 第二種則是在現實生活中學習前進。 但是我要讓你們看的是另一種更不一樣的方式, 請看, 這隻機器人有四隻腳, 八個引擎, 四個在膝蓋的地方, 另外四個在臀部。 他還有兩個傾斜感應器, 用來感應自己向哪裡傾斜了。
But this machine doesn't know what it looks like. You look at it and you see it has four legs, the machine doesn't know if it's a snake, if it's a tree, it doesn't have any idea what it looks like, but it's going to try to find that out. Initially, it does some random motion, and then it tries to figure out what it might look like. And you're seeing a lot of things passing through its minds, a lot of self-models that try to explain the relationship between actuation and sensing. It then tries to do a second action that creates the most disagreement among predictions of these alternative models, like a scientist in a lab. Then it does that and tries to explain that, and prune out its self-models.
但是這機器並不知道他自己長什麼樣子, 你看得到他, 所以知道他有四隻腳。 但是這機器卻沒辦法知道他自己是一條蛇還是一顆樹, 他完全不清楚自己長什麼樣子, 但是他會想辦法知道。 一開始, 他會隨機做一些動作, 接著他試圖看出自己大概長什麼樣子-- 你會看到他腦海中浮現非常多東西, 有很多他自己創造的動作模式, 他試圖去釐清 動作和感知之間的關係─然後他再試著做第二個動作, 那個動作不在既有的動作模式內, 完全出乎我們的意料, 就像在實驗室裡的科學家一樣。接著, 他重複那個動作, 並且試著解釋那個動作, 然後創造出自己的動作模式。
This is the last cycle, and you can see it's pretty much figured out what its self looks like. And once it has a self-model, it can use that to derive a pattern of locomotion. So what you're seeing here are a couple of machines -- a pattern of locomotion. We were hoping that it wass going to have a kind of evil, spidery walk, but instead it created this pretty lame way of moving forward.
這是他最後一次重覆這整個循環, 你可以看到他 已經弄清楚自己的樣子了, 一旦他整理出自己的動作模式, 就可以從中發展出一種運動模式。 你現在看到的是幾個機器─ 一種運動模式。 我們期待他做出一種如惡魔或者蜘蛛般的行走模式, 但是他卻創造出這種看似殘障的前進方法。
But when you look at that, you have to remember that this machine did not do any physical trials on how to move forward, nor did it have a model of itself. It kind of figured out what it looks like, and how to move forward, and then actually tried that out. (Applause)
但是當你看著他前進的時候, 你必須記得, 這機器並沒有做過任何往前行進的物理試驗, 他也沒有任何屬於自己的模式, 他等於是自己發現了自己的樣子, 然後找出前進的方法, 並實際驗證成功。 (掌聲響起)
So, we'll move forward to a different idea. So that was what happened when we had a couple of -- that's what happened when you had a couple of -- OK, OK, OK -- (Laughter) -- they don't like each other. So there's a different robot. That's what happened when the robots actually are rewarded for doing something. What happens if you don't reward them for anything, you just throw them in?
那麼現在, 我們再來看看另一種想法, 那是我們將幾個─ 把幾個放在一塊兒就會......好啦好啦好啦!!! (笑聲) ─他們不太喜歡對方, 所以 這是另一個機器人。 剛剛的事情都是因為機器人做對動作, 並且得到獎勵才發生的。 那如果們不給他們獎勵, 直接把他們丟在一塊會怎麼樣呢?
So we have these cubes, like the diagram showed here. The cube can swivel, or flip on its side, and we just throw 1,000 of these cubes into a soup -- this is in simulation --and don't reward them for anything, we just let them flip. We pump energy into this and see what happens in a couple of mutations. So, initially nothing happens, they're just flipping around there. But after a very short while, you can see these blue things on the right there begin to take over.
所以我們拿來了這些立方體, 就像你在圖上看到的, 他們會旋轉或者翻轉。 我們把一千個這樣的立方體放入"原始湯汁"裡─ 這是電腦模擬效果─我們沒有給他們任何獎勵, 就讓他們翻轉而已。我們給他們一些能量, 看看經過幾次突變以後會怎樣。 剛開始什麼都沒發生, 他們就只是跳來跳去, 但又過了一下, 你就會看到右邊那些 藍色的東西開始掌控全局。
They begin to self-replicate. So in absence of any reward, the intrinsic reward is self-replication. And we've actually built a couple of these, and this is part of a larger robot made out of these cubes. It's an accelerated view, where you can see the robot actually carrying out some of its replication process. So you're feeding it with more material -- cubes in this case -- and more energy, and it can make another robot. So of course, this is a very crude machine, but we're working on a micro-scale version of these, and hopefully the cubes will be like a powder that you pour in.
他們開始自我複製, 由此可見就算沒有獎勵, 他們也會用自我複製的方式獎勵自己。 實際上我們已經製造了好幾個像這樣的玩意兒, 這是用這樣的立方體做出來的機器人其中的一部分, 我們用快轉的方式,讓你看看這機器人 進行自我複製的過程。 如果你多餵給這個機器人一些原料─那些立方體─ 還有很多能量, 他可以製造出另一個機器人。 當然, 這是一個很粗糙的機器, 但是我們正努力做出這種機器人的縮小版, 希望這些立方體可以小到跟粉末一樣。
OK, so what can we learn? These robots are of course not very useful in themselves, but they might teach us something about how we can build better robots, and perhaps how humans, animals, create self-models and learn. And one of the things that I think is important is that we have to get away from this idea of designing the machines manually, but actually let them evolve and learn, like children, and perhaps that's the way we'll get there. Thank you. (Applause)
好吧!那麼我們學到了些什麼呢?這些機器人 本身不一定多有用, 但他們卻可以教會我們一些事情, 關於我們如何做出更好的機器人, 甚至是人類或動物創造自我模式跟學習的機制原理。 還有一樣我覺得最重要的, 就是我們要放棄 以人工設計機器的想法, 放手讓機器自己演化與學習, 像孩子一樣, 這或許才是讓我們成功的辦法, 謝謝! (掌聲)