작업계획 (Task Planning)

로봇공학
한 줄 정의: 로봇이 수행해야 할 고수준 목표를 달성하기 위해 필요한 일련의 작업(행동) 순서를 논리적으로 계획하는 기법.

쉽게 풀면

'커피를 가져와'와 같은 목표를 이루기 위해 '컵을 잡는다 → 커피를 따른다 → 가져다준다'처럼 세부 작업 순서를 짜는 것입니다.

왜 중요한가

고수준 목표를 실행 가능한 행동 순서로 분해해야 로봇이 복잡한 임무를 자율적으로 수행할 수 있어, 서비스로봇이나 다단계 조립 작업의 자율화에 핵심적으로 활용됩니다. 사람이 매번 "컵을 잡아라", "물을 따라라" 하나하나 지시하지 않아도 로봇이 "커피를 가져와"라는 한마디 목표만으로 필요한 하위 작업 순서를 스스로 찾아내야 진정한 자율 서비스로봇이라 할 수 있는데, 이 하위 순서를 자동으로 찾아내는 것이 바로 작업계획의 역할입니다.

논문에서는 이렇게 쓰입니다

작업 계획은 초기 상태, 목표 상태, 행동 집합을 STRIPS 등의 형식 언어로 표현하고, 상태 공간 탐색을 통해 목표를 달성하는 행동열을 도출하는 인공지능 계획 문제이다.

각 행동이 어떤 조건에서 가능하고 어떤 결과를 낳는지를 규칙으로 정의해 두면, 이 규칙들을 조합해 목표까지 이르는 순서를 자동으로 찾아낼 수 있다는 의미입니다.

"계층적 작업망(HTN) 기반 작업계획기를 적용한 결과, 평평한 STRIPS 방식보다 탐색 공간이 크게 줄어들어 복잡한 조립 임무에서도 실시간에 가까운 계획 생성이 가능하였다."

작업계획 자체도 하나의 방식이 아니라, 문제를 더 작은 하위 작업으로 미리 나누어 계획하는 계층적 방법처럼 계산 효율을 높이는 다양한 기법으로 발전해왔다는 점을 보여주는 문장이다.

조금 더 깊게 보면

작업계획은 논리적으로 실행 가능한 행동 순서를 찾는 것이지, 그 행동들을 물리적으로 정밀하게 실행하는 궤적계획과는 다른 층위의 문제라는 점을 구분해야 합니다. "컵을 잡는다"는 행동 하나가 논리적으로는 성립해도 실제로 로봇 팔이 그 순간 손을 뻗을 공간이 없다면 실행할 수 없기 때문에, 최근에는 논리적 작업계획과 물리적 실행 가능성(모션계획)을 함께 고려하는 작업 및 동작 계획(TAMP) 통합 접근이 활발히 연구되고 있습니다. 행동과 상태의 가짓수가 늘어날수록 가능한 조합이 기하급수적으로 늘어나는 계산 복잡도 문제도 이 분야의 오랜 핵심 과제입니다.

주의할 점

행동의 개수와 상태 공간이 커질수록 계획 탐색의 계산 복잡도가 급격히 증가하는 문제가 있습니다.

관련 용어