눈과 계획을 하나의 그래프로 묶으면 무슨 일이 생길까
지각을 단단한 기호로 굳히지 않고 부드러운 상태로 들고 가면서, 논리 규칙 위에서 경사하강법으로 계획을 푸는 신경 소프트 기호 프레임워크를 해설합니다.
원문 논문 보기
오늘 다룰 논문은 A Fully Differentiable Neuro-Soft-Symbolic Framework for Perceptual Task Planning으로, arXiv에 공개된 지각 기반 작업 계획 연구이며 식별자는 arXiv:2609.21221입니다. 이 연구가 내세우는 주장은 시각 지각과 작업 계획을 하나의 계산 그래프로 연결해서, 논리 규칙을 따르는 계획 과정 전체를 미분 가능하게 만들었다는 것입니다. 원문 논문 링크는 이 글 제목 아래에 걸려 있습니다.
제가 이 논문에서 가장 흥미롭게 본 부분은 발상의 방향이었습니다. 보통은 눈을 더 좋게 만드는 쪽으로 문제를 풉니다. 해상도를 올리거나, 탐지기를 바꾸거나, 데이터를 더 모으는 식이죠. 그런데 저자들은 눈 자체보다 눈과 머리 사이의 이음새를 의심했습니다. 지각이 그럴듯한데도 계획이 자꾸 어긋난다면, 어쩌면 지각 모듈의 성능이 아니라 두 모듈을 나누는 방식이 잘못된 것 아닐까요. 저는 이 질문이 마음에 들었습니다. 실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 눈을 고치는 데 예산을 쓸 것인가, 아니면 눈과 계획을 잇는 방식을 고치는 데 쓸 것인가요.
안녕하세요, 패트릭입니다. 아침에 책상 위에 쌓인 책들을 보면서 이런 생각을 한 적이 있습니다. 파란 책 위에 빨간 책이 있고, 그 옆에 노트가 비스듬히 걸쳐 있는데, 저는 그 장면을 기호로 바꾸지 않고도 바로 손을 움직입니다. 저 파란 책을 빼면 무너질까, 노트를 먼저 치워야 할까 같은 판단이 한 장면 안에서 동시에 일어나죠. 그렇다면 로봇에게도 같은 일을 시키면 어떻게 될까요. 카메라는 장면을 보고, 계획기는 순서를 정합니다. 그런데 그 사이에서 무언가 자꾸 새는 느낌이 듭니다. 오늘은 그 새는 지점을 정면으로 다룬 연구를 함께 읽어보겠습니다.
눈은 봤는데 머리는 딴생각을 할 때
사람이 블록 쌓기를 한다고 상상해 보겠습니다. 탁자 위에 빨강, 파랑, 노랑 블록이 어지럽게 놓여 있고, 목표는 빨강 위에 파랑을 올리는 것입니다. 눈이 살짝 침침해서 파랑 블록 경계가 흐릿하게 보여도, 손은 대충 감을 잡고 움직이다가 중간에 고칩니다. 보다 보니 계획이 바뀌고, 움직이다 보니 보는 방식도 바뀌죠. 지각과 계획이 서로를 계속 고쳐주는 셈입니다.
로봇 시스템은 전통적으로 이 과정을 둘로 쪼개 왔습니다. 먼저 카메라 이미지에서 블록이 어디에 있고 어떤 관계인지를 기호로 뽑아냅니다. on(red, table) 같은 명제들이죠. 그다음에는 그 기호들을 입력으로 받아서 고전 계획기가 행동 순서를 찾습니다. 보기에는 깔끔합니다. 보는 팀과 생각하는 팀이 따로 있으니까요. 그런데 여기서 재미있는 질문이 생깁니다. 처음에 눈이 조금 헷갈렸는데, 그 헷갈림을 기호로 바꾸는 순간 확신으로 굳혀버리면 어떻게 될까요.
논문이 진단하는 지점이 바로 여기입니다. 기존 방식은 지각을 이산적인 기호 사실로 바꾸고 나서 계획을 세우는데, 이 변환 과정에서 지각의 불확실성이 버려지고, 과제 수준의 피드백이 지각으로 돌아갈 통로도 끊긴다고 지적합니다. 다시 말해 눈이 한 번 판정을 내리면 계획은 그 판정을 의심할 방법이 없고, 계획이 틀렸다는 것을 뒤늦게 알아도 눈에게 다시 보라고 말할 수가 없습니다. 저는 이 진단을 읽으면서 고개가 끄덕여졌습니다. 저희가 새로운 AI 아키텍처를 볼 때도 benchmark 숫자만 보지는 않습니다. 실제로 무엇이 바뀌었고, 그 변화가 시스템에서 어떤 비용 구조를 만드는지를 함께 봅니다. 이 논문은 비용 구조 이전에 정보 구조를 건드립니다. 불확실하다는 정보를 어디까지 살려둘 것인가 하는 문제니까요.

굳히는 순간 끊어지는 것들
이산 기호가 왜 문제인지 조금 더 들여다보겠습니다. 카메라가 파랑 블록이 빨강 위에 있는지 62퍼센트 정도로 애매하게 느낀다고 해보죠. 사람 같으면 일단 그 애매함을 들고 다음 판단을 이어갑니다. 손을 뻗으면서 한 번 더 보고, 그래도 헷갈리면 옆에서 잡는 식이죠. 그런데 기호 파이프라인에서는 62퍼센트를 0 아니면 1로 굳혀야 다음 단계로 넘어갈 수 있습니다. 올라가 있다, 혹은 아니다, 둘 중 하나로 말이죠. 이렇게 굳히는 순간 62라는 숫자가 담고 있던 망설임은 사라집니다. 계획기는 그저 주어진 사실이 참이라고 믿고 앞으로 나아갑니다.
문제는 그다음입니다. 굳힌 사실 하나가 틀리면 계획 전체가 틀어집니다. 블록이 실제로는 테이블 위에 있는데 위에 있다고 굳혔다면, 계획기는 존재하지 않는 탑을 쌓으려 듭니다. 더 아픈 대목은 피드백 방향입니다. 계획이 막혔을 때 계획기는 지각에게 이렇게 물을 수 없습니다. 혹시 아까 그 판정이 62퍼센트짜리 망설임이었니. 기호는 그렇게 묻도록 설계되지 않았기 때문입니다. 판정이 한 번 내려지면 근거의 농도는 지워지고 결론만 남습니다.
생각해보면 사람도 비슷하게 배웁니다. 시험에서 답을 찍을 때조차도 확신도를 마음속에 남겨둡니다. 나중에 답지를 맞춰보면서 그 확신도를 조정하죠. 그런데 기계 파이프라인은 찍은 답만 넘기고 확신도는 버립니다. 나중에 틀린 것을 알아도 어디서 얼마나 망설였는지 복기할 수 없습니다. 이 차이는 생각보다 중요합니다. 불확실성을 버리는 설계에서는 눈이 좋아지는 것과 계획이 좋아지는 것이 서로에게 도움이 되지 않습니다. 각자 자기 점수만 올릴 뿐이죠.
부드럽게 들고 간다는 말의 의미
이 논문이 제안하는 대안은 지각 결과를 굳히지 않고 부드러운 상태로 들고 가는 것입니다. 논문 표현을 빌리면 연속적인 soft symbolic state인데, 우리말로 풀면 확신도를 계속 안고 다니는 상태라고 할 수 있습니다. 파랑이 빨강 위에 있다는 명제를 참 혹은 거짓으로 자르지 않고, 그럴듯함의 정도로 들고 다니는 것이죠. 블록들의 위치와 관계가 하나의 벡터처럼 이어지면서, 다음 단계의 계산에 그대로 흘러들어갑니다.
여기서 저는 조금 멈칫했습니다. 부드럽다는 말이 자칫 정확도를 포기한다는 뜻으로 들릴 수 있기 때문입니다. 하지만 실제로는 반대입니다. 애매한 것을 애매한 채로 두는 편이 나중에는 더 정확해질 수 있습니다. 왜냐하면 뒤쪽 단계에서 새로운 증거가 들어왔을 때, 굳힌 판정은 뒤집기 어렵지만 부드러운 판정은 조금씩 밀 수 있기 때문입니다. 마치 진흙이 마르기 전에는 모양을 고칠 수 있는 것과 같습니다. 말랑할 때 고치는 편이 굳은 뒤에 깨뜨리는 것보다 싸죠.
이 발상이 마음에 드는 또 다른 이유는 연산 관점에서 자연스럽기 때문입니다. 신경망은 원래 연속적인 숫자를 다루는 데 익숙합니다. 그런데 중간에 기호라는 단단한 계단을 하나 놓으면, 그 계단에서 미분이 끊깁니다. 계단은 평평한 곳에서는 기울기가 0이고, 꺾이는 곳에서는 기울기가 정의되지 않으니까요. 부드러운 상태는 이 계단을 경사로 바꾸는 일입니다. 경사가 있으면 오차가 뒤로 흐를 수 있고, 뒤로 흐른 오차는 앞단을 고칠 수 있습니다. 이 논문 전체는 사실 이 한 문장으로 요약됩니다. 계단을 경사로 바꾸자.
논리 규칙을 미분 가능하게 펼치면
그렇다면 논리 규칙은 어떻게 될까요. 블록 세계에는 분명한 규칙이 있습니다. 손에 든 블록이 없는데 내려놓을 수는 없고, 위에 다른 블록이 있는 블록은 집을 수 없습니다. 이런 규칙은 원래 기호들의 참과 거짓 위에서 작동합니다. 그런데 상태가 부드러워졌으니 규칙도 부드러워져야 합니다. 저자들은 도메인의 논리 규칙을 미분 가능한 soft-T_P 전이 연산자로 끌어올렸다고 설명합니다. 이름이 조금 어렵게 들리지만 하는 일은 단순합니다. 지금 상태가 주어졌을 때, 어떤 행동을 하면 다음 상태가 어떻게 될지를 앞으로 밀어주는 함수입니다.
저는 이 대목을 읽으면서 예전 Prolog 수업을 떠올렸습니다. 규칙을 쓰면 엔진이 앞으로 추론을 밀어주던 그 느낌인데, 여기서는 그 추론 한 걸음이 행렬 연산처럼 미분 가능하게 펼쳐집니다. 행동을 고르면 다음 soft state가 나오고, 그 상태에서 다시 행동을 고르면 그다음 상태가 나오는 식이죠. 계획 구간(horizon)만큼 이 과정을 펼치면, 처음 본 장면에서 시작해 여러 걸음 뒤의 장면까지 이어지는 계산 그래프가 됩니다. 중간에 굳히는 단계가 없으니 그래프가 끊어지지 않습니다.
여기서 놓치기 쉬운 공학적 선택이 하나 있습니다. 규칙을 신경망으로 대체한 것이 아니라는 점입니다. 규칙 자체는 그대로 두고, 그 규칙이 연속 상태 위에서도 부드럽게 작동하도록 들어올린(lift) 것입니다. 일종의 오답 노트처럼요. 외우는 내용을 바꾼 것이 아니라 외운 것을 꺼내 쓰는 방식을 바꾼 셈이죠. 그래서 논리적으로 말이 안 되는 전이가 마음대로 생기지 않습니다. 규칙이 뼈대로 남아 있고, 그 뼈대 위를 부드러운 숫자들이 흐릅니다. 저는 이 절제가 좋았습니다. 모든 것을 신경망으로 녹이면 유연해지지만 규칙 준수를 보장하기 어려워지는데, 저자들은 그 유혹을 참았습니다.

탐색 대신 경사로 계획을 푼다는 발상
이제 계획이 어떻게 이루어지는지 보겠습니다. 고전적인 계획은 경우의 수를 따지는 탐색에 가깝습니다. 이 행동을 하면 어떻게 되고, 저 행동을 하면 어떻게 되는지를 트리처럼 펼쳐보면서 목표에 닿는 길을 찾는 것이죠. 반면 이 논문은 짧은 계획 구간 위에서 행동 logit을 경사하강법으로 직접 최적화합니다. 각 시점마다 어떤 행동이 좋을지를 점수로 들고 있다가, 목표에서 오는 오차를 보고 그 점수들을 조금씩 고치는 방식입니다.
처음 들으면 낯설 수 있습니다. 계획이 무슨 미분 문제냐고 물을 수도 있죠. 그런데 계산 그래프가 끝까지 이어져 있다는 것을 떠올리면 자연스럽습니다. 마지막 상태가 목표에서 얼마나 먼지를 재는 손실이 있고, 그 손실이 각 시점의 행동 점수까지 거꾸로 흐를 수 있다면, 행동 점수를 조금씩 움직여 손실을 줄이는 것은 그냥 경사하강법입니다. 바둑에서 다음 수를 하나하나 시뮬레이션하는 대신, 손가락 끝의 감각을 조금씩 조정하면서 목표 자세에 다가가는 느낌에 가깝습니다.
물론 이 방식에도 조건이 있습니다. 계획 구간이 짧아야 하고, 행동 공간이 다루기 쉬운 크기여야 합니다. 블록 쌓기처럼 행동 종류가 손에 꼽히는 도메인에서는 잘 맞습니다. 반면 행동이 수백 가지이고 구간이 수십 걸음이면 경사가 희미해지거나 지역 최적점에 갇힐 수 있습니다. 논문도 이 점을 숨기지 않고 블록 세계라는 구체적인 무대에서 검증합니다. 저는 이런 정직함이 좋습니다. 범용 계획 엔진을 주장하는 대신, 통하는 조건을 먼저 보여주고 그 안에서 끝까지 밀어붙이니까요. 실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 우리 도메인의 행동 공간은 이 정도로 얌전한가, 구간은 얼마나 짧게 잡을 수 있는가 하는 것이죠.

계획이 눈을 고쳐주는 순간
제가 이 논문에서 가장 오래 머문 장면은 여기입니다. 계획 목표에서 온 기울기가 지각 파라미터까지 업데이트할 수 있다는 대목인데, 말로 풀면 계획이 눈을 고쳐준다는 뜻입니다. 보통은 눈이 좋아야 계획이 좋아진다고 생각합니다. 방향이 한쪽이죠. 그런데 여기서는 계획이 막히는 모양을 보고 눈이 자기가 본 방식을 고칩니다. 과제와 관련된 지각 표현이 계획 도중에 다듬어지는 셈입니다.
구체적인 장면을 그려보겠습니다. 카메라가 두 블록의 경계를 흐릿하게 봐서, 집을 수 있는지 없는지가 애매한 상태라고 해보죠. 굳히는 파이프라인이라면 여기서 0 아니면 1로 잘라야 합니다. 그런데 이 프레임워크에서는 일단 애매한 채로 계획을 밀어봅니다. 목표에 닿으려면 그 블록을 집어야 하는데, 집을 수 있다는 가능도가 너무 낮아서 손실이 큽니다. 그러면 그 손실이 뒤로 흘러서 지각 쪽 가중치를 살짝 움직입니다. 다음번에 같은 장면을 볼 때는 그 경계를 조금 더 또렷하게 읽는 쪽으로 말이죠. 한 번 보고 끝내는 것이 아니라, 해보면서 다시 보는 것입니다.
같은 모델에 같은 질문을 던져도 결과가 크게 달라질 수 있다는 것을 경험으로 알고 있죠. 지각도 마찬가지입니다. 무엇을 해야 하는지를 알기 전과 후의 보기는 다릅니다. 목표가 주어지면 눈에 우선순위가 생깁니다. 이 블록의 경계가 지금 과제에서는 중요하고, 저 그림자의 농도는 중요하지 않다는 식으로 말이죠. 경사라는 형태로 그 우선순위를 수치로 전달한다는 것이 이 논문의 손맛입니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 피드백 통로가 있다는 사실 자체가 눈과 머리의 관계를 바꾸니까요.

숫자는 구조를 따라옵니다
이제 숫자를 보겠습니다. 숫자는 차갑지만, 여기서는 구조가 먼저이고 숫자는 그 뒤를 따릅니다. 블록 세계 벤치마크에서 이 방법은 LatPlan-40 과제 40개 중 40개를 풀었습니다. 비교 대상인 LatPlan이 33개를 푼 것과 나란히 두면 차이가 도드라집니다. 33개에서 40개로, 일곱 문제의 간격인데, 블록 쌓기처럼 하나만 틀어져도 전체가 무너지는 과제에서는 일곱 문제의 간격이 작지 않습니다. 또 다른 대규모 묶음인 PlanBench-600에서는 600개 중 596개를 풀어, 추론 모델 기준선인 587개를 앞섰습니다. 아홉 문제 차이인데, 이미 기준선이 580 후반에서 놀고 있는 높은 구간이라서 아홉 문제의 무게가 가볍지 않습니다.
여기서는 조금 조심해서 읽을 필요가 있습니다. 596과 587이라는 숫자만 보면 겨우 아홉 문제 차이인가 싶을 수 있습니다. 하지만 높은 정확도 구간에서의 몇 문제 차이는 낮은 구간에서의 같은 차이와 무게가 다릅니다. 남은 실패들은 대개 가장 헷갈리는 장면들인데, 바로 그 헷갈리는 장면에서 부드러운 상태가 빛을 발하기 때문입니다. 굳히는 방식에서는 애매한 장면이 그대로 오답이 되지만, 들고 가는 방식에서는 애매함을 뒤집을 기회가 남습니다. 숫자의 차이는 결국 설계의 차이로 돌아옵니다.
개인적으로 인상 깊었던 점은, 저자들이 숫자를 자랑하는 데서 멈추지 않고 조건을 함께 보여준다는 것입니다. 뒤에 나올 어블레이션과 모션 시뮬레이션까지 합치면, 숫자는 점수가 아니라 증거가 됩니다. 이 구조에서는 이런 숫자가 나와야 한다는 이야기로 읽히죠. 저는 논문을 볼 때 이 순서를 좋아합니다. 숫자가 먼저 나오고 구조 설명이 뒤따르는 글이 아니라, 구조가 먼저 납득되고 숫자가 확인 도장을 찍는 글이 더 오래 남습니다.

눈을 얼리면 벌어지는 일
어블레이션 이야기로 넘어가겠습니다. 어블레이션은 부품을 하나씩 빼보면서 무엇이 실제로 일했는지를 확인하는 과정인데, 저는 이 과정을 좋아합니다. 주장과 증거 사이의 거리를 재는 가장 정직한 방법이기 때문입니다. 이 논문의 지각 불확실성 어블레이션에서는 지각을 고정한 채 계획만 돌렸을 때 성공률이 59퍼센트에 머물렀습니다. 그런데 계획 과정에서 오는 기울기로 지각을 함께 업데이트하도록 풀어주자 성공률이 83퍼센트까지 올라갔습니다. 24퍼센트포인트의 간격인데, 상대 비율로 따지면 네 번 중 두 번 남짓 성공하던 것이 다섯 번 중 네 번 꼴로 바뀐 셈입니다.
이 차이는 생각보다 중요합니다. 같은 눈, 같은 계획기인데 통로 하나를 열었을 뿐인데 결과가 이렇게 달라졌습니다. 눈을 바꾸지 않고 눈과 계획 사이의 관계만 바꿨는데 59가 83이 된 것이죠. 만약 눈 자체가 문제였다면 통로를 열어서는 이렇게 오르지 않았을 겁니다. 통로가 문제였다는 가장 직접적인 증거입니다. 반면이라는 접속사를 붙여서 말하면, 반면 눈을 얼린 실험은 굳히는 파이프라인의 운명을 보여줍니다. 처음 본 것이 전부이고, 나중에 고칠 기회가 없습니다.
좋은데, 이걸 어디에 올릴까요. 저는 여기서 실무적인 상상을 했습니다. 새벽 물류 창고에서 박스 더미를 정리하는 로봇을 떠올려보죠. 조명이 어둡고 비닐이 반사돼서 박스 경계가 흐릿합니다. 눈을 얼린 로봇은 처음 판정에 묶여서 같은 실수를 반복할 겁니다. 그런데 계획과 연결된 눈은 두세 번 시도하면서 경계를 스스로 또렷하게 만듭니다. 현장에서는 이런 차이가 가동률로 직결됩니다. 사람이 매번 끼어들어 다시 보여주지 않아도 되니까요. 물론 이 상상은 논문의 실험을 벗어난 해석입니다. 하지만 59에서 83이라는 숫자는 그런 상상을 허락할 만큼 큽니다.
종이 위 계획이 팔을 움직일 때
계획이 논리적으로 맞다는 것과 로봇이 실제로 할 수 있다는 것은 다른 문제입니다. 종이 위에서는 블록을 든다는 한 줄이지만, 현실에서는 접근 각도, 파지, 충돌 회피가 줄줄이 딸려 옵니다. 그래서 저자들이 블록 세계 장면에 대한 과제 및 모션 시뮬레이션으로 내려놓은 검증이 반갑습니다. 디코딩된 과제 계획이 하위 로봇 모션 실행과 양립할 수 있는지를 확인한 것인데, 다시 말해 머릿속 순서가 팔의 움직임으로 번역되는지를 본 것이죠.
이 대목이 중요한 이유는 신경 기호 연구가 종종 기호 세계에만 머물기 때문입니다. 시뮬레이터 속 추상 블록으로는 잘 되는데 막상 로봇 팔을 붙이면 어긋나는 경우가 적지 않습니다. 그런데 여기서는 계획의 출력이 모션 단계로 이어지는 고리를 실제로 돌려봤습니다. 계획이 뽑아낸 행동 순서대로 아래 단계를 실행했을 때 물리적으로 말이 되는지를 확인한 셈이죠. 규모가 큰 실증은 아니지만, 방향을 보여주는 데는 충분합니다. 위쪽의 부드러운 추론이 아래쪽의 딱딱한 물리와 만나는 지점을 열어둔 것입니다.
실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 모션 실패가 올라왔을 때 그 오차도 같은 그래프를 타고 올라올 수 있는가 하는 것입니다. 지금 논문이 보여준 것은 아래 방향의 양립성, 즉 계획이 모션으로 내려간다는 것입니다. 그렇다면 반대 방향, 즉 모션이 안 된다는 정보가 위쪽 계획을 고치는 통로까지 열 수 있을까요. 예를 들어 잡을 수 있다고 생각했는데 손가락이 미끄러졌다면, 그 미끄러짐이 소프트 상태에 반영돼서 다음 계획을 바꿀 수 있을까요. 논문이 여기까지 답하지는 않지만, 구조상으로는 같은 길을 따라갈 수 있어 보입니다. 제가 앞으로 보고 싶은 것은 바로 그 윗길과 아랫길이 모두 열리는 장면입니다.

그래서 다음에 물을 질문은 무엇일까
이제 한 걸음 물러서서 보겠습니다. 이 연구가 남긴 것은 높은 점수보다 설계 원칙에 가깝습니다. 굳히지 말고 들고 가라, 규칙은 버리지 말고 들어올려라, 계획은 탐색만 하지 말고 미분도 하라, 그리고 무엇보다 피드백 통로를 열어두라. 각각은 낯설지 않은 말이지만, 하나로 묶어서 끝까지 미분 가능하게 만들었다는 데 이 논문의 몫이 있습니다. 블록 세계라는 작고 단단한 무대에서 그 묶음이 실제로 돌아간다는 것을 보였으니까요.
그렇다면 이 흐름은 어디까지 이어질 수 있을까요. 저는 세 가지가 궁금합니다. 첫째, 행동이 훨씬 많은 현실 과제에서도 짧은 구간 최적화가 통할지입니다. 블록은 행동이 몇 가지지만, 주방 정리나 창고 피킹은 행동과 물체가 훨씬 많습니다. 구간이 길어지면 경사가 희미해질 수 있는데, 그때는 계층적인 구간 나누기가 필요할지도 모릅니다. 둘째, 시각을 넘어 촉각이나 언어 지시가 들어오면 소프트 상태는 어떻게 생겨야 할지입니다. 지금은 시각 지각이 중심이지만, 손끝 감각이나 사람의 말도 같은 상태에 녹일 수 있다면 훨씬 쓸모가 커집니다. 셋째, 규칙이 불완전할 때입니다. 이 논문은 도메인 규칙이 주어진다는 것을 전제로 합니다. 그런데 현실 규칙은 예외투성이입니다. 규칙 자체를 데이터에서 함께 고치는 길까지 열 수 있을까요.
이 논문이 흥미로운 이유는 단순히 점수가 올랐기 때문이 아닙니다. 멀티 에이전트 협업이든 로봇 계획이든, 한 모듈의 확신이 다음 모듈의 입력이 되는 순간 정보가 새는 구조적 문제가 있다는 것을 보여주기 때문입니다. 그리고 그 통로를 막는 방법이 더 큰 모델이 아니라 더 매끈한 연결일 수 있다는 것을 보여줍니다. 앞으로 로봇이 더 오래 일하고 더 헷갈리는 장면을 만나게 될수록, 개별 모듈 하나가 똑똑한지만 보는 것을 넘어 모듈 사이에서 무엇이 버려지고 어떻게 되돌아오는지까지 함께 살펴봐야 할 것 같습니다. 오늘 이야기는 여기서 마무리하겠습니다. 다음에 또 재미있는 구조를 들고 오겠습니다.