Skip to main content
Summary

길을 찾는 것과 일을 끝내는 것은 다르다

앞 장에서 우리는 로봇이 지도 위에서 목표 지점까지 가는 길을 어떻게 찾는지 살펴보았다. 장애물을 피하고, 빈 공간을 찾고, 현재 위치에서 목표 위치까지 이어지는 경로를 계산했다. 이것은 로봇에게 매우 중요한 능력이다. 하지만 실제 로봇이 해야 하는 일은 대부분 '이동' 하나로 끝나지 않는다.

로봇 청소기를 떠올려 보자. 로봇 청소기의 목표는 단순히 거실 한가운데까지 가는 것이 아니다. 거실을 청소하고, 식탁 다리 주변을 돌고, 방으로 이동하고, 배터리가 부족하면 충전기로 돌아가야 한다. 때로는 사람이 지나가면 잠시 멈춰야 하고, 문턱을 넘지 못하면 다른 길을 찾아야 한다. 여기서 로봇은 계속 질문을 던진다.

지금 청소를 계속해야 할까? 먼저 충전해야 할까? 장애물을 피한 뒤 원래 하던 일을 다시 해야 할까? 거실 다음에는 어느 방으로 가야 할까?

이처럼 로봇이 해야 할 여러 행동을 고르고, 순서를 정하고, 상황에 따라 바꾸는 과정을 행동 계획이라고 한다. 경로 계획이 '어디를 지나갈까'를 정하는 문제라면, 행동 계획은 '무엇을 어떤 순서로 할까'를 정하는 문제다.

행동 계획

경로 계획과 행동 계획의 차이

경로 계획과 행동 계획은 자주 함께 쓰이지만 같은 말은 아니다. 경로 계획은 공간 안에서의 이동 문제에 가깝다. 현재 위치와 목표 위치가 주어졌을 때, 로봇은 장애물을 피하면서 이동 가능한 길을 찾는다. 이때 관심사는 주로 좌표, 지도, 장애물, 거리, 회전 반경, 안전 여유 공간이다.

반면 행동 계획은 작업의 흐름을 다룬다. 로봇이 어떤 상태에서 어떤 행동을 실행해야 하는지, 행동이 성공했을 때 다음에 무엇을 해야 하는지, 실패했을 때 어떻게 회복해야 하는지를 정한다. 행동 계획의 관심사는 위치보다 넓다. 이동뿐 아니라 관찰, 대기, 집기, 내려놓기, 충전, 사람에게 도움 요청하기, 오류 처리까지 포함한다.

예를 들어 카페 서비스 로봇에게 '3번 테이블에 음료를 가져다줘'라는 명령이 들어왔다고 해 보자. 이 작업은 단순히 3번 테이블까지의 경로를 찾는 문제로 끝나지 않는다. 로봇은 먼저 음료가 준비된 픽업 위치로 이동해야 한다. 음료를 실었는지 확인해야 한다. 그다음 3번 테이블까지 가야 한다. 사람이 길을 막고 있으면 기다리거나 우회해야 한다. 테이블에 도착하면 음료를 전달했다는 상태로 넘어가야 한다. 마지막으로 대기 위치나 다음 작업 위치로 돌아갈 수 있다.

이 전체 흐름 안에는 여러 개의 경로 계획이 들어갈 수 있다. 픽업대로 가는 경로, 테이블로 가는 경로, 복귀하는 경로가 따로 필요하다. 그러나 그 경로들을 언제 계산하고 어떤 순서로 실행할지는 행동 계획이 결정한다.

그래서 행동 계획은 로봇의 '일머리'에 가깝다. 몸을 어떻게 움직일지보다, 일을 어떤 순서로 처리할지에 더 관심이 있다.

행동은 상태에서 시작된다

로봇은 아무 때나 아무 행동이나 하면 안 된다. 청소 중인데 갑자기 충전기로 돌아가면 청소가 중단된다. 물체를 잡기도 전에 옮기려고 하면 실패한다. 문이 닫혀 있는데 방 안으로 들어가려고 하면 벽에 부딪힐 수 있다.

그래서 행동 계획에서는 로봇이 지금 어떤 상태인지가 중요하다. 상태란 로봇이 현재 처한 상황을 간단히 표현한 것이다. 실제 세계는 복잡하지만, 로봇은 작업에 필요한 만큼만 상태를 나누어 생각한다.

청소 로봇이라면 대기 중, 청소 중, 장애물 회피 중, 충전 중, 오류 상태 같은 상태가 있을 수 있다. 배송 로봇이라면 주문 대기, 물건 픽업, 목적지 이동, 전달 대기, 복귀 같은 상태가 있을 수 있다. 로봇팔이라면 물체 탐색, 접근, 집기, 들어 올리기, 이동, 내려놓기 같은 상태가 있을 수 있다.

행동 계획의 핵심은 이 상태들 사이를 어떻게 이동할지 정하는 것이다. 여기서 등장하는 대표적인 방법이 상태 기계다.

상태 기계: 명확한 규칙으로 움직이는 로봇

상태 기계는 로봇의 행동을 여러 상태와 전환 규칙으로 표현하는 방식이다. 영어로는 finite state machine, 줄여서 FSM이라고 부른다. '유한 상태 기계'라는 이름이 조금 딱딱하게 들리지만, 생각보다 직관적이다. 로봇이 가질 수 있는 상태를 미리 정해 두고, 특정 조건이 만족되면 다음 상태로 넘어가게 만드는 구조다.

가장 단순한 예로 자동문을 생각해 보자. 자동문은 닫힘 상태, 열림 상태, 열리는 중, 닫히는 중 같은 상태를 가진다. 사람이 감지되면 닫힘 상태에서 열리는 중으로 넘어간다. 완전히 열리면 열림 상태가 된다. 일정 시간이 지나고 사람이 없으면 닫히는 중으로 바뀐다. 다시 완전히 닫히면 닫힘 상태가 된다.

로봇도 비슷하게 행동할 수 있다. 로봇 청소기를 상태 기계로 표현하면 다음과 같은 흐름이 가능하다.

  • 대기 상태에서는 청소 시작 명령을 기다린다.

  • 청소 상태에서는 방을 돌아다니며 먼지를 흡입한다.

  • 장애물 감지 상태에서는 앞을 막는 물체를 피한다.

  • 배터리 부족 상태에서는 청소를 멈추고 충전기로 향한다.

  • 오류 상태에서는 바퀴 끼임이나 낙하 위험처럼 스스로 해결하기 어려운 상황을 알린다.

이 구조의 장점은 분명하다. 로봇이 지금 무엇을 하고 있는지 이해하기 쉽다. 문제가 생겼을 때 어느 상태에서 멈췄는지 확인하기도 쉽다. 처음 로봇 소프트웨어를 만들 때 상태 기계가 자주 쓰이는 이유도 여기에 있다. 복잡한 지능처럼 보이는 행동도 상태를 잘게 나누면 훨씬 다루기 쉬워진다.

예를 들어 청소 중 장애물을 만나면 로봇은 청소 상태에서 회피 상태로 넘어간다. 회피가 끝나면 다시 청소 상태로 돌아온다. 배터리가 부족하면 청소 상태에서 충전 상태로 넘어간다. 충전이 끝나면 대기 상태로 돌아가거나, 저장해 둔 청소 지점으로 돌아가 작업을 이어갈 수 있다.

이때 중요한 것은 '전환 조건'이다. 상태 기계는 상태만 나열한다고 완성되지 않는다. 어떤 센서 값이 들어왔을 때, 어떤 시간이 지났을 때, 어떤 행동이 성공하거나 실패했을 때 다음 상태로 넘어갈지를 정해야 한다. 로봇은 이 전환 조건을 기준으로 행동의 흐름을 바꾼다.

상태 기계의 장점과 한계

상태 기계는 단순하고 강력하다. 특히 로봇의 행동이 비교적 명확하고, 예외 상황이 많지 않을 때 잘 맞는다. 엘리베이터, 자동문, 간단한 배송 로봇, 작은 교육용 로봇처럼 상태를 분명하게 나눌 수 있는 시스템에서는 상태 기계만으로도 충분히 안정적인 동작을 만들 수 있다.

하지만 로봇이 해야 할 일이 많아지면 상태 기계는 점점 복잡해진다. 상태가 5개일 때는 괜찮다. 그런데 상태가 20개, 50개로 늘어나고, 각 상태가 서로 여러 조건으로 연결되기 시작하면 전체 구조를 이해하기 어려워진다. 어느 상태에서 어느 상태로 넘어갈 수 있는지, 실패했을 때 어디로 되돌아가야 하는지, 공통 행동을 어떻게 재사용할지 고민이 커진다.

예를 들어 서비스 로봇이 다음과 같은 일을 모두 해야 한다고 해 보자. 손님 안내, 테이블 배송, 장애물 회피, 엘리베이터 탑승, 음성 안내, 충전, 긴급 정지, 관리자 호출. 이 모든 행동을 하나의 거대한 상태 기계로 만들면 선이 엉킨 회로도처럼 복잡해질 수 있다. 처음에는 깔끔했던 설계가 기능 추가와 예외 처리로 점점 거대해지는 것이다.

그래서 더 복잡하고 유연한 행동을 만들기 위해 많이 사용하는 구조가 행동 트리다.

행동 트리: 행동을 조립하는 방식

행동 트리는 로봇이나 게임 인공지능에서 자주 쓰이는 행동 계획 구조다. 이름 그대로 행동을 나무 모양으로 배열한다. 가장 위에는 전체 목표가 있고, 아래로 내려갈수록 더 작은 행동들이 연결된다. 로봇은 이 나무를 위에서 아래로 따라가며 지금 실행할 행동을 고른다.

행동 트리는 상태 기계처럼 '지금은 이 상태, 다음은 저 상태'라고만 생각하지 않는다. 대신 목표를 이루기 위해 어떤 조건을 확인하고, 어떤 행동을 시도하고, 실패하면 무엇을 대신할지 구조적으로 표현한다.

예를 들어 로봇 청소기의 전체 목표가 '집 청소하기'라고 해 보자. 이 목표는 몇 가지 하위 행동으로 나눌 수 있다. 배터리가 충분한지 확인하기, 청소할 방 선택하기, 선택한 방으로 이동하기, 청소하기, 다음 방으로 넘어가기, 필요하면 충전하기 같은 행동이다. 행동 트리는 이런 행동을 조합해 하나의 큰 작업 흐름을 만든다.

행동 트리에서 자주 등장하는 기본 노드는 크게 세 가지로 이해하면 쉽다.

  • 조건 노드는 '문이 열려 있는가', '물체를 잡았는가', '배터리가 충분한가'처럼 현재 상황을 확인한다.

  • 행동 노드는 '앞으로 이동하기', '물체 집기', '충전기로 가기'처럼 실제 행동을 실행한다.

  • 제어 노드는 여러 조건과 행동을 어떤 순서로 시도할지, 하나가 실패하면 다음을 시도할지 결정한다.

제어 노드 중 대표적인 것은 순서 노드와 선택 노드다. 순서 노드는 여러 행동을 차례대로 실행한다. 하나라도 실패하면 전체가 실패한 것으로 본다. 예를 들어 '컵 옮기기'라는 작업은 컵 찾기, 컵에 접근하기, 컵 집기, 목적지로 이동하기, 컵 내려놓기 순서로 이루어질 수 있다. 중간에 컵 집기가 실패하면 그 뒤의 이동과 내려놓기는 의미가 없다.

선택 노드는 가능한 방법을 하나씩 시도한다. 첫 번째 방법이 성공하면 그것을 사용하고, 실패하면 다음 방법을 시도한다. 예를 들어 문을 통과해야 하는 로봇은 먼저 문이 열려 있는지 확인한다. 열려 있으면 그대로 지나간다. 닫혀 있으면 문 열기를 시도한다. 문을 열 수 없으면 사람에게 도움을 요청한다. 행동 트리는 이런 대체 전략을 자연스럽게 표현할 수 있다.

왜 행동 트리가 유연한가

행동 트리가 널리 쓰이는 이유는 복잡한 행동을 작은 조각으로 나누고 다시 조립하기 좋기 때문이다. 상태 기계에서는 상태가 늘어날수록 상태 사이의 연결이 복잡해진다. 행동 트리에서는 행동을 기능 단위로 나누어 재사용할 수 있다.

예를 들어 '목표 지점으로 이동하기'라는 행동은 청소 로봇, 배송 로봇, 안내 로봇 모두에게 필요하다. 행동 트리에서는 이 행동을 하나의 노드로 만들어 여러 작업에서 사용할 수 있다. '배터리 확인하기'도 마찬가지다. 청소 전에도, 배송 전에도, 긴 작업을 시작하기 전에도 같은 조건 확인 노드를 재사용할 수 있다.

또 하나의 장점은 실패 처리다. 실제 로봇은 자주 실패한다. 길이 막히고, 물체가 미끄러지고, 센서가 잘못 보고, 사람이 예상치 못한 곳에 서 있을 수 있다. 행동 트리는 실패했을 때 다른 방법을 시도하는 구조를 비교적 깔끔하게 표현한다. 그래서 게임 캐릭터의 인공지능에도 많이 쓰이고, 서비스 로봇처럼 환경 변화가 많은 시스템에도 잘 어울린다.

게임 속 캐릭터를 생각해 보면 이해가 쉽다. 적을 발견하면 공격하고, 체력이 낮으면 도망가고, 길이 막히면 다른 길을 찾고, 목표를 잃으면 순찰로 돌아간다. 이 행동들은 상황에 따라 빠르게 바뀌어야 한다. 서비스 로봇도 비슷하다. 손님을 안내하다가 앞에 사람이 서면 멈추고, 길이 열리면 다시 이동하고, 배터리가 부족하면 현재 작업보다 충전을 우선해야 한다.

행동 트리는 이런 우선순위와 대체 행동을 표현하기 좋다. 로봇은 단순히 정해진 순서를 따라가는 것이 아니라, 매 순간 조건을 확인하면서 적절한 행동을 선택할 수 있다.

작업 순서 계획: 큰 일을 작은 일로 나누기

상태 기계와 행동 트리는 로봇 행동을 구성하는 대표적인 구조다. 그런데 행동 계획에는 한 가지 관점이 더 있다. 바로 작업을 더 작은 단계로 나누고, 그 순서를 정하는 것이다. 이를 작업 순서 계획 또는 태스크 플래닝이라고 부른다.

사람은 큰 일을 자연스럽게 작은 일로 쪼갠다. '책상을 정리해'라는 말을 들으면 먼저 책상 위 물건을 보고, 쓰레기를 버리고, 책을 꽂고, 컵을 치우고, 노트북을 한쪽에 놓는 식으로 생각한다. 로봇에게는 이것이 쉽지 않다. '책상을 정리해'라는 문장은 너무 넓고 모호하다. 로봇은 이 문장을 실행 가능한 행동들로 바꾸어야 한다.

로봇팔에게 '블록을 상자에 넣어'라고 지시했다고 해 보자. 로봇팔은 다음과 같은 순서를 생각해야 한다.

  • 카메라로 블록과 상자의 위치를 찾는다.

  • 블록을 잡을 수 있는 자세로 팔을 움직인다.

  • 그리퍼를 닫아 블록을 잡는다.

  • 블록을 들어 올려 상자 위로 이동한다.

  • 그리퍼를 열어 블록을 내려놓는다.

  • 블록이 제대로 들어갔는지 확인한다.

여기서 각 단계는 다시 더 작은 제어 문제와 경로 계획 문제를 포함한다. '팔을 움직인다'는 말 안에는 관절 각도 계산, 충돌 회피, 속도 제어가 들어 있다. '블록을 잡는다'는 말 안에는 힘 조절과 미끄러짐 감지가 들어 있다. 행동 계획은 이런 작은 기능들을 적절한 순서로 묶어 하나의 작업으로 만든다.

이 관점에서 보면 로봇 소프트웨어는 오케스트라와 비슷하다. 센서는 세상을 관찰하고, 위치 추정은 로봇의 위치를 알려 주고, 경로 계획은 이동 경로를 만들고, 제어기는 모터를 움직인다. 행동 계획은 이 악기들이 언제 연주해야 하는지 지휘하는 역할을 한다.

로봇 청소기의 행동 계획

이제 구체적인 예를 살펴보자. 로봇 청소기는 일상에서 쉽게 볼 수 있지만, 그 안에는 꽤 흥미로운 행동 계획이 들어 있다.

로봇 청소기의 가장 큰 목표는 '청소를 완료하는 것'이다. 하지만 청소 완료라는 목표는 여러 하위 목표로 나뉜다. 먼저 지도를 확인해야 한다. 청소할 구역을 정해야 한다. 각 구역으로 이동해야 한다. 벽 가장자리와 방 중앙을 청소해야 한다. 이미 청소한 곳과 아직 청소하지 않은 곳을 구분해야 한다. 배터리가 부족하면 충전기로 돌아가야 한다.

이때 경로 계획은 특정 지점으로 가는 길을 찾는다. 예를 들어 거실에서 안방으로 이동하는 경로를 계산한다. 하지만 행동 계획은 거실을 먼저 청소할지, 안방을 먼저 청소할지, 부엌은 나중에 할지 결정한다. 또한 청소 중 장애물을 만났을 때 그 장애물을 우회한 뒤 원래 구역으로 돌아올지도 정한다.

간단한 행동 흐름은 다음과 같이 생각할 수 있다.

  • 청소 시작 명령을 받으면 현재 지도와 배터리 상태를 확인한다.

  • 청소할 구역을 선택하고 그 구역으로 이동한다.

  • 선택한 구역을 일정한 패턴으로 청소한다.

  • 장애물을 만나면 회피하거나 임시 장애물로 표시한다.

  • 구역 청소가 끝나면 다음 구역을 선택한다.

  • 배터리가 부족하면 충전기로 돌아간 뒤 필요하면 중단 지점부터 다시 시작한다.

재미있는 부분은 '완벽한 계획'보다 '계속 고치는 계획'이 더 중요하다는 점이다. 집 안 환경은 매번 바뀐다. 어제 없던 의자가 오늘은 방 한가운데 있을 수 있다. 사람이 지나가기도 하고, 반려동물이 길을 막기도 한다. 그래서 로봇 청소기는 처음 세운 계획을 끝까지 고집하지 않는다. 센서로 상황을 계속 확인하면서 행동 계획을 수정한다.

이것이 실제 로봇의 중요한 특징이다. 로봇은 계획을 세우지만, 계획대로만 세상이 움직이지 않는다는 것을 전제로 행동해야 한다.

로봇팔의 집기 작업

이번에는 로봇팔을 보자. 로봇팔의 대표적인 작업은 물체를 집어 다른 곳에 놓는 것이다. 겉으로 보기에는 단순해 보인다. 하지만 로봇 입장에서는 여러 단계가 정교하게 연결된 행동 계획이다.

예를 들어 테이블 위의 컵을 집어 쟁반 위에 올려놓는 작업을 생각해 보자. 로봇팔은 먼저 컵이 어디 있는지 알아야 한다. 카메라나 깊이 센서로 컵의 위치와 자세를 추정한다. 컵이 손에 닿을 수 있는 범위에 있는지도 확인한다. 컵 주변에 다른 물체가 있어 충돌 위험이 있는지도 봐야 한다.

그다음 로봇팔은 컵을 어떻게 잡을지 정한다. 컵의 옆면을 잡을지, 손잡이를 잡을지, 위에서 집을지 선택해야 한다. 이 결정은 물체의 모양, 그리퍼의 형태, 주변 공간에 따라 달라진다. 잡는 방식이 정해지면 팔은 컵 근처로 이동한다. 이때도 경로 계획이 필요하다. 팔이 테이블이나 다른 물체에 부딪히지 않도록 관절 움직임을 계산해야 한다.

컵 근처에 도착하면 그리퍼를 닫는다. 하지만 여기서도 끝이 아니다. 컵을 제대로 잡았는지 확인해야 한다. 힘 센서나 손가락 위치, 카메라 정보를 이용해 컵이 미끄러지지 않는지 판단할 수 있다. 성공했다면 컵을 들어 올리고, 쟁반 위로 이동한 뒤, 천천히 내려놓는다. 내려놓은 뒤에는 그리퍼를 열고, 컵이 쓰러지지 않았는지 확인한다.

이 작업을 행동 계획 관점에서 보면 다음과 같은 흐름이다.

  • 물체를 찾는다.

  • 잡을 수 있는지 판단한다.

  • 잡기 자세를 선택한다.

  • 팔을 접근 위치로 이동한다.

  • 물체를 잡고 성공 여부를 확인한다.

  • 목표 위치로 옮긴다.

  • 물체를 내려놓고 결과를 확인한다.

중간에 실패할 가능성도 많다. 컵을 찾지 못할 수 있다. 잡으려는 순간 컵이 움직일 수 있다. 그리퍼가 컵을 너무 약하게 잡아 미끄러질 수 있다. 목표 위치에 다른 물체가 놓여 있을 수도 있다. 좋은 행동 계획은 이런 실패를 예상하고 대안을 준비한다. 다시 인식하기, 다른 잡기 자세 시도하기, 사람에게 도움 요청하기, 목표 위치를 다시 선택하기 같은 회복 행동이 필요하다.

로봇팔의 행동 계획은 이동 로봇보다 더 섬세해 보일 수 있다. 하지만 핵심은 같다. 큰 작업을 작은 행동으로 나누고, 각 행동의 성공과 실패를 확인하면서 다음 행동을 선택하는 것이다.

행동 계획은 실행 중에도 계속 바뀐다

초보자는 계획이라는 말을 들으면 시작 전에 완성된 일정표를 떠올리기 쉽다. 아침 9시에 이것을 하고, 10시에 저것을 하고, 11시에 다음 일을 하는 식이다. 하지만 로봇의 행동 계획은 고정된 일정표라기보다 상황을 보며 계속 수정되는 실행 전략에 가깝다.

현실의 로봇은 불확실한 세계에서 움직인다. 센서는 완벽하지 않고, 사람은 예측하기 어렵고, 물체는 생각보다 잘 미끄러진다. 그래서 로봇은 행동을 실행한 뒤 반드시 결과를 확인해야 한다. 이것을 모니터링이라고 한다. 모니터링은 '내가 하려던 일이 실제로 되었는가'를 확인하는 과정이다.

만약 로봇이 문 앞으로 이동했는데 문이 닫혀 있다면, 기존 계획은 바뀌어야 한다. 문 열기 행동을 추가할 수도 있고, 다른 경로를 찾을 수도 있고, 사람에게 요청할 수도 있다. 로봇팔이 물체를 잡는 데 실패했다면, 같은 동작을 반복할지, 잡기 위치를 바꿀지, 물체 인식을 다시 할지 결정해야 한다.

이처럼 행동 계획은 계획, 실행, 확인, 수정이 이어지는 반복 과정이다. 앞에서 배운 제어가 목표값과 현재값의 차이를 줄이는 작은 피드백이라면, 행동 계획은 작업 수준에서의 큰 피드백이라고 볼 수 있다. 로봇은 모터만 보정하는 것이 아니라 행동의 흐름 자체도 보정한다.

좋은 행동 계획이 갖추어야 할 것

로봇의 행동 계획을 잘 만들려면 단순히 많은 기능을 넣는 것보다 중요한 원칙이 있다. 첫째, 행동은 작고 분명해야 한다. '방을 정리하라'처럼 큰 행동만 있으면 실패 원인을 알기 어렵다. '물체 찾기', '잡기', '옮기기', '내려놓기'처럼 나누어야 한다.

둘째, 각 행동의 성공 조건과 실패 조건이 있어야 한다. 로봇이 어떤 행동을 끝냈다고 말하려면 기준이 필요하다. 목표 위치에 도착했는가, 물체를 실제로 잡았는가, 배터리가 충분한가 같은 판단 기준이 있어야 다음 행동으로 넘어갈 수 있다.

셋째, 실패했을 때의 대안이 있어야 한다. 실제 로봇은 실패를 피할 수 없다. 중요한 것은 실패하지 않는 로봇을 상상하는 것이 아니라, 실패해도 안전하게 멈추거나 다시 시도하거나 도움을 요청할 수 있게 만드는 것이다.

넷째, 우선순위를 정해야 한다. 작업을 계속하는 것보다 안전이 먼저다. 배송을 완료하는 것보다 사람과 충돌하지 않는 것이 먼저다. 청소를 끝내는 것보다 배터리가 완전히 방전되기 전에 충전기로 돌아가는 것이 먼저다. 행동 계획은 이런 우선순위를 구조 안에 담아야 한다.

로봇의 판단은 행동으로 완성된다

지금까지 로봇이 세상을 보고, 자기 위치를 추정하고, 움직이고, 제어하는 방법을 차례로 살펴보았다. 행동 계획은 이 모든 요소를 작업의 흐름으로 묶는다. 센서가 아무리 좋아도 행동으로 이어지지 않으면 로봇은 멈춰 있는 관찰자에 불과하다. 모터가 아무리 강해도 무엇을 해야 할지 모르면 의미 있는 작업을 할 수 없다.

행동 계획은 로봇에게 '다음에 무엇을 할지'를 알려 준다. 경로 계획이 발걸음의 길을 만든다면, 행동 계획은 하루의 일정을 만든다. 상태 기계는 명확한 상태 전환으로 안정적인 행동을 구성하고, 행동 트리는 복잡한 상황에서 조건과 행동을 유연하게 조합한다. 로봇 청소기는 방을 어떤 순서로 청소할지 결정하고, 로봇팔은 물체를 어떻게 집어 어디에 놓을지 결정한다.

이제 로봇은 단순히 움직이는 기계를 넘어선다. 보고, 판단하고, 행동을 고르고, 실패하면 다시 시도하는 시스템이 된다. 다음 단계에서는 이 판단 능력이 인공지능과 만나면서 어떻게 더 넓어지는지 살펴볼 것이다. 컴퓨터 비전, 강화학습, 모방학습, 그리고 최근의 로봇 파운데이션 모델은 로봇이 행동을 선택하는 방식을 크게 바꾸고 있다. 로봇의 '일머리'가 어떻게 학습과 AI로 확장되는지 볼 차례다.

책 목록

처음 만나는 로봇공학: 로봇은 어떻게 보고, 생각하고, 움직이는가

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기