기계의 운동성이라는 것은 무엇일까요?
지금부터 기계 운동성의 개념과
이를 다룬 연구에 대해
'쿼드콥터', 혹은 짧게 '쿼드'라고 불리는 이 비행 기구를 통해
보여 드리겠습니다.
쿼드가 만들어진 지는 꽤 됐습니다.
그런데 요새 쿼드가 이렇게 인기를 끄는 이유는
기계적으로 단순하기 때문입니다.
이런 4개의 프로펠러의 속도를 조절함으로써
돌기, 던지기, 한쪽으로 기울이기를 할 수 있고
여럿이 같은 방향으로 동시에 날 수 있습니다.
여기에는 배터리, 컴퓨터,
여러 가지 센서와 무선 통신 장치가 장착되어 있습니다.
쿼드는 굉장히 민첩합니다. 하지만 이렇게 만드는 데 댓가가 따르죠.
민첩한 대신 본질적으로 불안정하며 날아다니기 위해서는
일종의 자동 피드백 제어가 필요합니다.
방금 이건 어떻게 한 걸까요?
천장에 달린 카메라와 랩톱 컴퓨터가
전반적인 실내 위치 제어 시스템으로 작동합니다.
그 시스템은 설치된 공간에서
이런 반사체로 표시된 물체의 위치를 파악하는 데에 사용됩니다
파악된 위치는 다른 랩톱 컴퓨터로 보내지고,
그 컴퓨터는 추정값과 제어 알고리즘을 계산해서
쿼드에 차례로 명령을 보냅니다.
쿼드 또한 추정값과 제어 알고리즘을 계산하고 있죠
저희 연구의 대부분은 알고리즘입니다.
알고리즘은 이 기계들에게 생명을 불어넣는 마법이죠.
그렇다면 이렇게 기계가 운동성을 갖게 만드는
알고리즘은 어떻게 만들까요?
저희는 흔히 모델 기반 설계라고 불리는 것을 사용했습니다.
우선 기계가 물리적으로 어떻게 움직이는지
수학 모델을 이용해 나타냈습니다.
그 다음 제어 이론이라 불리는 수학의 한 분야를 통해
그 수학 모델을 분석하고
기계를 제어할 알고리즘을 구현했습니다.
예를 들어, 쿼드를 공중에 떠있게 하는 것도 마찬가지입니다
먼저 일련의 미분 방적식을 통해
역학 관계를 나타내고
제어 이론의 도움을 받아 그 미분 방정식을 조작하여
쿼드를 안정적으로 떠있게 하는 알고리즘을 만든 겁니다.
이제 이 접근법의 강점이 뭔지 보여 드리죠.
이 쿼드가 공중에 떠있는 것 뿐만 아니라
이 막대가 넘어지지 않게 균형을 잡게 하고 싶다고 칩시다.
사람은 누구나 조금만 연습하면
이렇게 균형 잡는 법을 쉽게 알 수 있습니다.
물론 우리에겐 땅을 짚을 수 있는
두 발이 있고
무슨 일이든 할 수 있는 손이 있긴 하지만요.
그런데 손을 쓰지 않고
한 발만 짚는다면
꽤 어려워집니다.
이 막대의 윗부분은 반사체로 표시돼 있어서
컴퓨터가 그 위치를 파악할 수 있습니다.
(박수)
쿼드가 미세한 조정을 통해 막대가 넘어지지 않게
균형을 잡는 것이 보일 것입니다.
이 알고리즘을 어떻게 설계했을까요?
막대에 대한 수학 모델을
쿼드에 입력한 겁니다.
쿼드와 막대가 결합된 모델이 만들어지면
제어 이론을 통해 그것을 제어할 알고리즘을 만들 수 있죠.
지금 안정된 상태가 보이실 겁니다.
그리고 이렇게 조금 밀어도
바로 균형이 잘 잡힌 위치로 되돌아갑니다
모델을 확장시켜
우리가 원하는 곳으로 쿼드를 이동시킬 수도 있습니다.
반사체로 표시된 이 포인터를 이용해서
원하는 방향을 가리키면 저와의 거리를 바꾸며
쿼드가 움직이게 할 수 있습니다.
이렇게 곡예에 가까운 동작의 핵심은
수학 모형과 제어 이론의 도움으로 설계된
알고리즘입니다.
쿼드가 여기로 돌아와서 막대를 떨어트리도록
조작해 보죠.
다음에는 물리적 모형을 이해하는 것이
왜 중요한지와
물리적인 작동 원리를 보여드리겠습니다.
제가 물컵을 내려놓자
쿼드가 약간 내려가는 것을 보셨을 겁니다.
막대와는 달리 이 잔에 대한 수학 모델은
시스템에 입력하지 않았습니다.
사실 시스템은 물컵이 거기 있는지도 인식하지 못합니다.
아까와 마찬가지로 포인터를 이용해
쿼드를 이동시켜 보겠습니다.
(박수)
여러분은 궁금하실 겁니다,
"어떻게 컵에서 물이 떨어지지 않는 거지?"라고요.
두 가지 법칙이 작용하는데, 첫째는 어떤 물체든지
중력의 영향을 똑같이 받는다는 것이고,
둘째는 프로펠러 네 개가 놓여있는 방향이
물컵과 똑같이 위로 향하고 있다는 것입니다.
이 두 가지 사실을 종합해 보면
물컵 양쪽에 가해지는 힘은 작은 반면
많은 공기 역학의 영향이 컵의 측면에 작용하는 힘을 압도하여
측면에 가해지는 힘이 무시될 수 있다는 겁니다.
그래서 물컵에 대한 모델은 필요하지 않은 거지요.
쿼드가 어떻게 움직이든 물을 흘리지 않습니다.
(박수)
여기서 알 수 있는 것은 고도로 정밀한 조작 중에는
구현이 쉬운 것과 어려운 것이 있고
어떤 게 쉽고 어려운지 판별하려면
물리학을 이해해야 한다는 것입니다.
방금 보신 물컵 옮기기는 쉬운 편입니다.
막대 균형을 잡는 건 어렵고요.
운동 선수들이 부상당한 뒤에도
뛰어난 활약을 보이는 경우를 들어보셨을 겁니다.
그러면 기계 또한 상당한 물리적 손상을 입었을 때
제대로 작동할 수 있을까요?
상식적으로 생각해보면
날기 위해서는 적어도 4개의 고정된 프로펠러가 필요합니다.
제어에는 4단계의 자유도가 있기 때문이죠:
돌기, 솟아오르기, 기울기와 가속화의 4 단계 말입니다.
프로펠러가 각각 6개인 헥사콥터와 8개인 옥토콥터는
프로펠러가 필요 이상으로 많습니다.
쿼드콥터가 인기있는 이유는
4개라는 최소한의 고정된 구동 프로펠러로
구동시킬 수 있기 때문입니다.
사실일까요?
쿼드의 수학 모델을 두 개의 프로펠러만 멀쩡할 경우로
분석하면
기구를 비행시키는 예상밖의 방법이 있음을 발견하게 됩니다.
기울기 제어는 포기하게 되지만
뒤집기, 솟아오르기, 가속화는 여전히
이러한 새로운 설정을 찾아내는 알고리즘을 이용해 제어할 수 있습니다.
수학 모델을 이해하면 언제, 그리고 어떻게
이런 것이 가능한지를 정확히 알 수 있습니다.
이러한 지식이 저희로 하여금
참신한 기계 설계나
인간 운동 선수들처럼 부상을 당해도 부드럽게 움직일 수 있게 해주는
알고리즘을 설계하도록 해 줍니다.
불필요한 프로펠러를 더 달지 않아도 말이죠.
우리는 다이빙 선수가 물에 뛰어들며 공중제비를 넘을 때나
장대 높이뛰기 선수가 공중에서 몸을 비틀며
밑으로 빠르게 떨어지는 것을 볼 때마다
숨을 죽일 수 밖에 없습니다.
"다이빙 선수가 립 입수를 해낼 수 있을까?"
"장대 높이뛰기 선수가 동작을 깔끔하게 마무리할 수 있을까?" 하고 말이죠.
예를 들어 이 쿼드가
세 번 연속으로 뒤집기를 한 다음
처음의 위치로 정확하게 되돌아가게 하고 싶다고 해보죠.
이 조작은 아주 빨라서
위치에 대한 피드백으로 동작을 시정할 수 없습니다.
그럴 시간이 없거든요.
그 대신, 쿼드는 아무 것도 모른 채로 동작을 수행하고
자신이 그 동작을 어떻게 끝내는지 측정하여
얻은 정보를 가지고 스스로 자기 행동을 수정합니다.
그렇게 하면 다음 뒤집기는 향상될 테니까요.
다이빙이나 장대 높이뛰기 선수와 비슷합니다.
수도 없이 연습을 해야
동작이 학습되고 최고의 수준까지
끌어올릴 수 있거든요.
(박수)
많은 스포츠 종목에서는 움직이는 공을 치는 기술이 필수적입니다.
어떻게 하면 기계가 운동 선수들처럼
겉보기에는 쉽게 하는 일을 할 수 있도록 할까요?
(박수)
이 쿼드는 윗부분에 라켓을 장착했는데,
그 위에는 사과 정도 크기로 너무 크지는 않게 공을 치기 적합한 위치가 표시되어 있습니다.
이것에 필요한 계산은 매 20밀리초마다 이루어지는데
1초에는 50번 하는 셈입니다.
우선 공이 어디로 가는지 알아내야 하고
그 다음에는 쿼드가 어떻게 공을 칠 지 계산해서
공이 날아가는 곳으로 날아가게 되는 거죠.
셋째로, 쿼드가 현 상태에서 공을 치기까지
이끌도록 하는 궤도가 만들어집니다.
넷째로 이런 전략의 실행은 20밀리초까지만 실행되는데
20밀리초 후에는 쿼드가 공을 다시 칠 때까지
전 과정이 되풀이되는 것이죠.
(박수)
기계들은 이러한 동작을 혼자뿐만 아니라
여럿이 동시에도 할 수 있습니다.
이 세 쿼드들은 함께 그물 하나를 들고 있습니다.
(박수)
아주 동적이고 집단적인
동작을 해 내죠.
공을 저에게로 다시 던질 때
잘 보세요, 그물을 펼쳤을 때 쿼드들은 수직으로 서게 됩니다.
(박수)
사실 그물이 완전히 펼쳐졌을 때는
번지 점프의 마지막에 느끼는 당기는 힘의
약 다섯 배 정도입니다.
이런 것을 하기 위한 알고리즘은
쿼드 하나로 공을 칠 때와 아주 비슷합니다.
수학 모델이 사용되어 1초에 50번씩
끊임없이 협력 전략을 계산하죠.
지금까지 보신 것들은
기계와 기계가 할 수 있는 것들이었습니다.
이런 기계의 운동성과 인간의 운동성을
결합하면 어떻게 될까요?
제 앞에 있는 것은 주로 게임에 사용되는
시판용 몸짓 센서입니다.
제 몸의 여러 부분이 어떻게 움직이는지
실시간으로 인식하죠.
아까 제가 썼던 포인터와 비슷하게
이것을 이용해 시스템에 명령을 입력할 수 있습니다.
이렇게 하면 제 몸짓을 통해 기계의 다듬어지지 않은 운동성과
자연스럽게 상호작용 할 수 있게 됩니다.
(박수)
가상이 아니라 직접적으로 상호작용 할 수도 있습니다.
이 쿼드를 예로 보여 드리면
한 공간에 고정되어 머무르려고 하고 있습니다.
억지로 옮기려고 하면, 저항하며
있어야 할 곳으로 되돌아갑니다.
하지만 이런 행동을 수정할 수도 있습니다.
수학 모델을 이용해서
제가 쿼드에 가하는 힘을 측정하게 해서
어느 정도의 힘인지 알아내기만 하면 물리 법칙까지 바꿀 수 있습니다.
물론 쿼드에 한해서 말이지만요.
이 쿼드는 마치 점액질 속에 있는 것처럼
움직이고 있습니다.
이제 기계와 상호작용하는
친밀한 방법이 생긴 셈이죠.
이 새로운 능력을 사용하여
이 카메라 달린 쿼드가 적절한 위치에 있게 만들어
이 강의의 나머지를 촬영해 보겠습니다.
이 쿼드들과 직접적으로 상호작용 함으로써
물리 법칙을 바꿀 수도 있습니다.
한번 재밌는 걸 해 볼까요?
이제는 세 개의 쿼드들이
명왕성에 있는 것처럼 움직일 겁니다.
시간이 지남에 따라 중력이 증가해서
지구와 똑같이 되겠지만
거기까지 가지는 않도록 하겠습니다.
한번 해 볼까요?
(웃음)
(박수)
휴!
이제 생각하시겠죠.
너무 재밌기만 한 건 아니냐고요.
그리고 또. 의문이 있으실 겁니다.
"대체 왜 이런 운동성 기계를 만드는 것일까?"
동물 세계에서의 "놀이"에 대해 어떤 분들은
기술을 연마하고 능력을 계발하는 데 이용된다고 추측하고
다른 분들은 집단을 하나로 묶기 위한
사회적 기능을 한다고 추측합니다.
그것과 비슷하게 저희는 운동 경기와 스포츠 정신에 이것을 비유함으로써
기계들의 성능을 한계까지 끌어올리기 위한
알고리즘을 개발합니다.
그렇다면 이들 기계의 속도가 우리 생활에는 어떤 영향을 미칠까요?
과거의 발명품이나 혁신과 마찬가지로
이 기계들은 인간의 생활 환경을 개선할 수도,
아니면 오용되거나 남용될 수도 있습니다.
우리가 직면한 것은 기술적 문제가 아니라
사회적 문제인 거죠.
옳은 결정을 내렸으면 좋겠습니다.
기계를 사용해서 최고의 미래를 이끌어낼 수 있는 결정 말입니다.
운동 경기에서의 스포츠 정신이
우리를 최선으로 이끌듯이 말입니다.
그럼 이제 이런 신기한 것들을 가능하게 한 마법사들을 소개하겠습니다.
"플라잉 머신 아레나"의 연구팀입니다.
(박수)
페데리코 우굴리아로, 다리오 브레샤니니, 마커스 헨,
세르게이 루퍼쉰, 마크 물러, 그리고 로빈 리츠입니다.
이 친구들을 잘 지켜보시길 바랍니다: 앞으로 대단한 일들을 해낼 겁니다.
감사합니다.
(박수)