In my early days as a graduate student, I went on a snorkeling trip off the coast of the Bahamas. I'd actually never swum in the ocean before, so it was a bit terrifying. What I remember the most is, as I put my head in the water and I was trying really hard to breathe through the snorkel, this huge group of striped yellow and black fish came straight at me ... and I just froze. And then, as if it had suddenly changed its mind, came towards me and then swerved to the right and went right around me. It was absolutely mesmerizing. Maybe many of you have had this experience. Of course, there's the color and the beauty of it, but there was also just the sheer oneness of it, as if it wasn't hundreds of fish but a single entity with a single collective mind that was making decisions. When I look back, I think that experience really ended up determining what I've worked on for most of my career.
제가 대학원생이었을 때 바하마의 한 해변으로 스노클링을 하러 갔습니다. 한번도 바다에서 수영을 해본 적이 없었기 때문에 약간 겁이 났죠. 가장 기억에 남는 것은 제가 물속에 머리를 담그고 스노클링 장비로 숨쉬려고 애쓰고 있을 때 노란색과 검은색 줄무늬의 엄청난 물고기 떼가 제게 다가오는 것이었습니다. 저는 꼼짝도 할 수 없었죠. 그런데 갑자기, 물고기 떼가 마음을 바꾸기라도 한 듯이 저를 향해 다가오다가 오른쪽으로 방향을 바꿔 저를 비켜 갔습니다. 정말 황홀한 광경이었죠. 아마 많은 분들이 비슷한 경험을 하셨을 겁니다. 물고기들의 색, 그 자체가 가진 아름다움도 물론 황홀했지만 그들이 보여 준 완벽한 조화에 저는 더욱 매료되었습니다. 수백 마리의 물고기가 아니라 마치 하나의 집단 정신으로 뭉쳐져 있는 단독 개체처럼 의사결정을 하고 있었지요. 돌이켜 보면, 그 경험 덕분에 제 경력 대부분을 차지하는 연구과제를 결정하게 되었다는 생각이 듭니다.
I'm a computer scientist, and the field that I work in is artificial intelligence. And a key theme in AI is being able to understand intelligence by creating our own computational systems that display intelligence the way we see it in nature. Now, most popular views of AI, of course, come from science fiction and the movies, and I'm personally a big Star Wars fan. But that tends to be a very human-centric view of intelligence. When you think of a fish school, or when I think of a flock of starlings, that feels like a really different kind of intelligence. For starters, any one fish is just so tiny compared to the sheer size of the collective, so it seems that any one individual would have a really limited and myopic view of what's going on, and intelligence isn't really about the individual but somehow a property of the group itself.
저는 컴퓨터 과학자입니다. 인공지능 분야를 연구하고 있죠. 인공지능의 핵심 주제는 지능을 다루는 능력인데요. 우리가 고안한 컴퓨터시스템은 자연에서 본 그대로를 재현하는 방식으로 자신의 지능을 발휘합니다. 현재 우리는 공상과학 소설과 영화에서 인공지능을 흔하게 접하고 있죠. 저 역시 개인적으로 스타워즈의 광팬입니다. 하지만 영화는 매우 인간 중심적인 관점으로 지능을 묘사하고 있습니다. 가령 한 무리의 물고기나 한 무리의 찌르레기를 떠올려 볼 때 그 둘은 완전히 다른 종류의 지능을 가졌다고 볼 수 있죠. 우선, 물고기 한 마리는 매우 작습니다. 그 무리의 크기에 비하면 아주 작죠. 따라서 하나의 개체는 아주 한정되고 근시안적 시각을 가지고 외부 상황을 파악할 것입니다. 그런데 사실, 지능은 개체로서가 아니라 오히려 그 집단 자체가 보유한 능력을 말합니다.
Secondly, and the thing that I still find most remarkable, is that we know that there are no leaders supervising this fish school. Instead, this incredible collective mind behavior is emerging purely from the interactions of one fish and another. Somehow, there are these interactions or rules of engagement between neighboring fish that make it all work out.
또 하나 제가 지금까지도 정말 대단하다고 여기는 것은 아시다시피 이 물고기 떼를 지휘하는 지도자가 없다는 사실입니다. 이 대단한 집단 정신이 이루어낸 행위는 오히려 순전히 물고기들 간의 상호작용에서 일어나고 있습니다. 이들은 어떤 식이든 상호 작용이나 교전 규칙을 주변 물고기들과 공유하면서 이 모든 것들을 해내는 것입니다.
So the question for AI then becomes, what are those rules of engagement that lead to this kind of intelligence, and of course, can we create our own?
따라서 인공지능에서 해결해야 할 과제는 집단 지능을 이끌어내는 상호작용 규칙을 알아내고 우리만의 형태로 만드는 것입니다.
And that's the primary thing that I work on with my team in my lab. We work on it through theory, looking at abstract rule systems and thinking about the mathematics behind it. We also do it through biology, working closely with experimentalists. But mostly, we do it through robotics, where we try to create our own collective systems that can do the kinds of things that we see in nature, or at least try to.
이것이 바로 저희 팀이 연구실에서 몰두하고 있는 핵심 과제입니다. 우리는 이론적으로 연구하고 추상적인 규칙 체계를 살펴보고 바탕이 되는 수학에 대해서도 연구합니다. 더불어 생물학을 통해서도 연구하고 실험 과학자들과도 긴밀히 협력하지만 대부분은 로봇공학에 의존하고 있습니다. 이를 통해 우리만의 집단 시스템을 개발하고 있죠. 자연에서 본 그대로를 수행할 능력이 있거나 최소한 시도라도 가능한 시스템이요.
One of our first robotic quests along this line was to create our very own colony of a thousand robots. So very simple robots, but they could be programmed to exhibit collective intelligence, and that's what we were able to do. So this is what a single robot looks like. It's quite small, about the size of a quarter, and you can program how it moves, but it can also wirelessly communicate with other robots, and it can measure distances from them. And so now we can start to program exactly an interaction, a rule of engagement between neighbors. And once we have this system, we can start to program many different kinds of rules of engagement that you would see in nature.
이런 계획에 따라 로봇 연구의 첫 번째 과제는 수천 개에 달하는 로봇 집단을 만드는 것이었습니다. 매우 간단한 로봇이지만 집단 지능을 발휘하도록 프로그래밍할 수 있죠. 그것이 우리가 실현해 낸 것입니다. 하나의 로봇은 이렇게 생겼습니다. 동전 크기 정도로 상당히 작은데요. 어떤 방식으로 움직일지 프로그래밍할 수 있습니다. 다른 로봇들과 무선 교신도 가능하고 서로 간의 거리도 측정할 수도 있습니다. 이제 우리는 본격적으로 상호 작용 프로그램을 시작할 수 있습니다. 이웃한 개체들간의 관계 규칙을 정하는 것이죠. 일단 이런 시스템이 갖춰지면 우리는 다양한 관계 규칙에 대한 프로그램을 만들 수 있게 됩니다. 자연에서 볼 수 있는 것처럼 말이죠.
So for example, spontaneous synchronization, how audiences are clapping and suddenly start all clapping together, the fireflies flashing together. We can program rules for pattern formation, how cells in a tissue determine what role they're going to take on and set the patterns of our bodies. We can program rules for migration, and in this way, we're really learning from nature's rules.
예를 들자면, 자발적인 동조화 현상이 있습니다. 몇몇 청중들이 박수를 치다가 갑자기 다 같이 박수를 치게 되거나 반딧불이들이 동시에 반짝이는 경우죠. 패턴형성 규칙을 입력할 수도 있습니다. 우리 몸 속 조직의 세포들이 각자 어떤 역할을 담당할지 정하고 우리 몸의 패턴을 설정하는 것이죠. 이동 규칙을 입력할 수도 있습니다. 이런 식으로 우리는 자연의 법칙을 배우고 있습니다.
But we can also take it a step further. We can actually take these rules that we've learned from nature and combine them and create entirely new collective behaviors of our very own.
한 단계 더 나아갈 수도 있는데요. 우리가 자연을 통해 파악한 법칙들을 적절히 혼합해서 우리만의 완전히 새로운 집단행동을 구현하는 것입니다.
So for example, imagine that you had two different kinds of rules. So your first rule is a motion rule where a moving robot can move around other stationary robots. And your second rule is a pattern rule where a robot takes on a color based on its two nearest neighbors. So if I start with a blob of robots in a little pattern seed, it turns out that these two rules are sufficient for the group to be able to self-assemble a simple line pattern. And if I have more complicated pattern rules, and I design error correction rules, we can actually create really, really complicated self assemblies, and here's what that looks like.
그래서 예를 들어 두 가지 다른 종류의 규칙이 있다고 생각해 보세요. 첫 번째는 운동 규칙입니다. 움직이는 로봇이 정지된 로봇 사이를 이동하도록 규정하는 것입니다. 두 번째는 패턴에 대한 규칙으로서 로봇은 가장 근접한 두 로봇을 기반으로 자신의 색을 결정하게 되지요. 간단한 패턴 조건을 부여한 소수의 로봇 군단으로 작동을 시작하면 이 두 규칙만으로도 충분히 집단 스스로가 단순한 선형 패턴을 구성한다는 것을 알 수 있습니다. 그런데 좀 더 복잡한 규칙을 적용하고 오류 수정 규칙을 만든다면 우리는 실제로 대단히 복잡한 자기 결합체를 만들 수 있습니다. 바로 이렇게요.
So here, you're going to see a thousand robots that are working together to self-assemble the letter K. The K is on its side. And the important thing is that no one is in charge. So any single robot is only talking to a small number of robots nearby it, and it's using its motion rule to move around the half-built structure just looking for a place to fit in based on its pattern rules. And even though no robot is doing anything perfectly, the rules are such that we can get the collective to do its goal robustly together. And the illusion becomes almost so perfect, you know -- you just start to not even notice that they're individual robots at all, and it becomes a single entity, kind of like the school of fish.
1000개의 로봇들을 보고 계신데요. 같이 움직이며 문자 K를 만들어 내고 있습니다. 옆으로 누운 K 자에요. 여기서 중요한 사실은 리더가 없다는 것입니다. 하나의 로봇은 주변의 소수의 로봇들 하고만 의사소통을 하며 자신의 운동규칙을 이용해 반쯤 지어진 구조물 주변을 돌아다닙니다. 자신의 패턴 규칙에 따라 적합한 장소를 찾는 것입니다. 로봇 하나가 임무를 완벽히 수행하지 못해도 그 집단은 주어진 목표를 규칙에 따라 달성할 수 있습니다. 함께 끝까지 해내죠. 이렇게 모호했던 것이 완벽한 형태로 만들어집니다. 어느 순간, 각각 개별적인 로봇이라는 사실조차 완전히 잊어버리고 하나의 개체처럼 보이게 되죠. 물고기 떼처럼 말입니다.
So these are robots and rules in two dimensions, but we can also think about robots and rules in three dimensions. So what if we could create robots that could build together? And here, we can take inspiration from social insects. So if you think about mound-building termites or you think about army ants, they create incredible, complex nest structures out of mud and even out of their own bodies. And like the system I showed you before, these insects actually also have pattern rules that help them determine what to build, but the pattern can be made out of other insects, or it could be made out of mud. And we can use that same idea to create rules for robots.
이 로봇들은 2차원 평면에 대한 규칙을 적용했지만 3차원 공간에 대한 규칙을 적용한 로봇도 생각할 수 있습니다. 힘을 합해 뭔가를 건설할 수 있는 로봇을 만든다면 어떨까요? 우리는 사회적 곤충으로부터 영감을 얻을 수 있습니다. 자, 이제 흰개미나 군대 개미를 생각해 볼까요? 그들은 진흙으로 놀랍도록 복잡한 형태의 집을 짓는데 심지어 자신의 몸을 활용하기도 합니다. 조금 전에 보여드렸던 구조처럼 실제로 이 곤충들은 패턴 규칙을 갖고 있어서 무엇을 지어야 하는지 알고 있습니다. 패턴은 다른 곤충들을 이용하거나 진흙을 이용해서도 형성될 수 있습니다. 우리는 이같은 아이디어를 적용해서 로봇에게 규칙을 부여할 수 있습니다.
So here, you're going to see some simulated robots. So the simulated robot has a motion rule, which is how it traverses through the structure, looking for a place to fit in, and it has pattern rules where it looks at groups of blocks to decide whether to place a block. And with the right motion rules and the right pattern rules, we can actually get the robots to build whatever we want. And of course, everybody wants their own tower.
이제 여러분은 그것을 모사하는 로봇을 보시게 될 텐데요. 이 시뮬레이션 로봇에 부여한 운동 규칙으로 구조물 사이를 이동하며 물건을 내려놓을 장소를 찾습니다. 그리고 로봇이 가진 패턴규칙으로 이미 놓여있는 블록들을 파악하고 블럭을 어디에 배치할지 결정합니다. 적절한 운동 규칙과 패턴 규칙을 로봇에 적용한다면 우리가 원하는 형태는 무엇이든 건설해주는 로봇도 가능합니다. 물론, 누구나 고층 빌딩을 원하겠죠.
(Laughter)
(웃음)
So once we have these rules, we can start to create the robot bodies that go with these rules. So here, you see a robot that can climb over blocks, but it can also lift and move these blocks and it can start to edit the very structure that it's on. But with these rules, this is really only one kind of robot body that you could imagine. You could imagine many different kinds of robot bodies. So if you think about robots that maybe could move sandbags and could help build levees, or we could think of robots that built out of soft materials and worked together to shore up a collapsed building -- so just the same kind of rules in different kinds of bodies. Or if, like my group, you are completely obsessed with army ants, then maybe one day we can make robots that can climb over literally anything including other members of their tribe, and self-assemble things out of their own bodies. Once you understand the rules, just many different kinds of robot visions become possible.
그런 규칙을 알아내고 나면 그 규칙을 부여한 로봇 군단을 만들 수 있습니다. 여기, 블럭을 넘어가는 로봇이 보이시지요? 그런데 이 로봇은 블럭을 들어서 옮길 수도 있고 자기 위치의 구조물을 수정할 수도 있습니다. 이런 규칙들이 있지만 이것은 여러분이 상상할 수 있는 로봇 중 단지 한 종류에 불과합니다. 우리는 다양한 로봇 본체들을 상상할 수 있습니다. 로봇들이 모래주머니를 옮기면서 제방 쌓는 것을 도울 수도 있고요. 혹은 부드러운 소재로 만들어진 로봇들이 무너진 건물을 지탱하기 위해 협동하는 것도 생각해 볼 수 있습니다. 같은 종류의 규칙이 다른 형태의 로봇 본체에 적용된 것이죠. 우리 연구진처럼 군대개미에 매료된 분이라면 무엇이든 기어오를 수 있는 로봇을 언젠가는 만들지도 모르죠. 자기가 속한 무리의 다른 로봇까지 포함해서 말이죠. 자기 몸에서 빠져나와 스스로 조립되는 로봇도 가능합니다. 일단 규칙을 파악하게 되면 다양한 로봇에 대한 기대가 현실로 이루어집니다.
And coming back to the snorkeling trip, we actually understand a great deal about the rules that fish schools use. So if we can invent the bodies to go with that, then maybe there is a future where I and my group will get to snorkel with a fish school of our own creation.
다시 스노클링 여행으로 돌아가서요. 우리는 실제로 물고기 떼가 사용하는 규칙들을 알아냈습니다. 그래서 그 규칙을 적용하기에 적합한 로봇을 만들 수만 있다면 아마도 미래에는 우리가 직접 만든 물고기 떼와 스노클링을 할 수 있을지도 모르죠.
Each of these systems that I showed you brings us closer to having the mathematical and the conceptual tools to create our own versions of collective power, and this can enable many different kinds of future applications, whether you think about robots that build flood barriers or you think about robotic bee colonies that could pollinate crops or underwater schools of robots that monitor coral reefs, or if we reach for the stars and we thinking about programming constellations of satellites. In each of these systems, being able to understand how to design the rules of engagement and being able to create good collective behavior becomes a key to realizing these visions.
보여드린 각각의 시스템을 통해 우리는 수학적이고 개념적인 도구를 얻게 되었고 우리만의 집단 동력을 개발할 수 있었습니다. 이것은 미래에 다양하게 활용될 수 있습니다. 상상해 보자면, 홍수 방벽을 쌓는 로봇이나 작물의 수분을 돕는 로봇 벌 군단이나 산호초를 관리하는 로봇 물고기 군단이나 혹시 우리가 별까지 닿을 수 있다면 위성 별자리의 프로그래밍도 가능하죠. 이런 각각의 시스템에서 어떻게 상호관계의 규칙을 설계할지 이해하고 적절한 집단행동을 개발할 수 있는지가 이러한 목표를 실현할 열쇠가 됩니다.
So, so far I've talked about rules for insects and for fish and for robots, but what about the rules that apply to our own human collective? And the last thought that I'd like to leave you with is that science is of course itself an incredible manifestation of collective intelligence, but unlike the beautiful fish schools that I study, I feel we still have a much longer evolutionary path to walk. So in addition to working on improving the science of robot collectives, I also work on creating robots and thinking about rules that will improve our own scientific collective. There's this saying that I love: who does science determines what science gets done. Imagine a society where we had rules of engagement where every child grew up believing that they could stand here and be a technologist of the future, or where every adult believed that they had the ability not just to understand but to change how science and technology impacts their everyday lives. What would that society look like? I believe that we can do that. I believe that we can choose our rules, and we engineer not just robots but we can engineer our own human collective, and if we do and when we do, it will be beautiful.
지금까지 물고기, 곤충, 로봇을 위한 규칙들에 대해 말씀드렸는데요. 그런데 우리 인간 집단에 맞는 규칙들은 무엇일까요? 끝으로 드리고 싶은 말씀이 있는데요. 과학은 그 자체로서 당연히 집단 지성의 놀라운 결과물입니다. 하지만 제가 연구하고 있는 아름다운 물고기 떼와는 달리 우리는 아직 더 먼 진화의 길을 걸어야 한다는 느낌이 듭니다. 저는 로봇 집단에 적용되는 과학수준을 높이는 데 그치지 않고 로봇을 만드는 일은 물론이고 어떤 규칙이 우리 과학 공동체 발전에 도움을 줄지에 대해 연구합니다. 제가 좋아하는 격언이 하나 있습니다. "누가 과학을 하는지에 따라 과학이 무엇을 이룰 것인지 결정된다." 이런 사회의 모습은 어떨까요? 모든 아이들이 관계 맺음의 규칙을 존중하고 이런 자리에 선 자신의 모습과 미래의 과학자를 꿈꾸며 성장하는 곳. 혹은 모든 어른들이 과학과 기술이 일상에 영향을 미치는 방식을 이해하는 데에 그치지 않고 우리 스스로 그 방식을 개선할 수 있다고 믿는 곳. 그런 사회는 어떤 모습일까요? 우리가 해낼 수 있다고 믿습니다. 우리 스스로가 규칙을 선별할 수 있다고 믿어요. 로봇뿐만 아니라 우리 ‘인간 집단’도 프로그래밍할 수 있을 것입니다. 그렇게만 된다면 정말 굉장하지 않을까요?
Thank you.
감사합니다.
(Applause)
(박수)