Skip to main content
QUICK REVIEW

[논문 리뷰] Comparison between Behavior Trees and Finite State Machines

Matteo Iovino, Julian Förster|arXiv (Cornell University)|2024. 05. 25.
Evolutionary Algorithms and Applications인용 수 4
한 줄 요약

이 논문은 공통된 저수준 스킬을 사용하여 이동형 조작 작업에서 로봇 제어를 위한 행동 트리(BTs)와 유한 상태 기계(FSMs)를 비교한다. 두 방법 모두 동일한 행동 결과를 도출하지만, 특히 작업 복잡도가 증가할수록 BTs가 훨씬 더 높은 모듈성, 반응성, 가독성 덕분에 프로그래밍 노력과 유지보수성을 크게 향상시킨다.

ABSTRACT

Behavior Trees (BTs) were first conceived in the computer games industry as a tool to model agent behavior, but they received interest also in the robotics community as an alternative policy design to Finite State Machines (FSMs). The advantages of BTs over FSMs had been highlighted in many works, but there is no thorough practical comparison of the two designs. Such a comparison is particularly relevant in the robotic industry, where FSMs have been the state-of-the-art policy representation for robot control for many years. In this work we shed light on this matter by comparing how BTs and FSMs behave when controlling a robot in a mobile manipulation task. The comparison is made in terms of reactivity, modularity, readability, and design. We propose metrics for each of these properties, being aware that while some are tangible and objective, others are more subjective and implementation dependent. The practical comparison is performed in a simulation environment with validation on a real robot. We find that although the robot's behavior during task solving is independent on the policy representation, maintaining a BT rather than an FSM becomes easier as the task increases in complexity.

연구 동기 및 목표

  • 이동형 조작 작업을 위한 로봇 정책 설계에서 행동 트리(BTs)와 유한 상태 기계(FSMs) 간의 실용적이고 공정한 비교를 제공하기 위해.
  • 구체적인 로봇 사례를 바탕으로 BTs와 FSMs 간의 반응성, 모듈성, 가독성, 설계 노력의 차이를 평가하고 정량화하기 위해.
  • 특히 복잡한 계층적 작업에서 BTs가 FSMs보다 프로그래밍 노력과 유지보수성을 향상시킨다는 것을 검증하기 위해.
  • 이전 연구를 확장하기 위해 계층적 FSMs, 실제 로봇 검증, 알고리즘 복잡도 및 그래프 구조에 대한 새로운 지표를 포함하기 위해.
  • 심지어 FSMs가 BT의 행동을 모방하도록 재설계된 경우에도 BTs가 고장 내성과 계층적 작업 구조화에서 본질적인 이점이 있음을 보여주기 위해.

제안 방법

  • 저자들은 BT 및 FSM 컨트롤러 모두에 동일한 저수준 로봇 스킬(예: 주행, 물체 집기, 도킹)을 구현하여 공정한 비교를 확보하였다.
  • BTs의 틱(tick)은 깊이 우선 전위 순회 방식을 사용하였으며, 제어 노드(Sequence, Fallback, Parallel)와 실행 노드(Action, Condition)가 행동을 정의하였다.
  • FSMs의 경우, 반응성을 높이기 위해 모든 상태가 중심 '선택기' 상태에 연결된 Fault-Tolerant 버전을 설계하여 BT의 행동을 모방하였다.
  • 모듈성(공유된 입력/출력 구조를 통한 정량화), 반응성(전이 복잡도 및 장故 복구 노력), 가독성(그래프 거리 및 구조적 복잡도)을 측정하기 위한 지표를 도입하였다.
  • 시뮬레이션 환경에서 RoboCup@Home 벤치마크 작업을 사용하여 평가하였으며, WASP 연구 아레나에서 실제 이동형 조작 로봇을 대상으로 검증하였다.
  • 알고리즘 복잡도 한계와 그래프 거리 측정법을 사용하여 BT와 FSM 표현 간의 구조적 차이를 객관적으로 비교하였다.

실험 결과

연구 질문

  • RQ1저전압 또는 작업 실패와 같은 예기치 않은 사건을 처리할 때 BTs와 FSMs는 어떤 차이를 보이며 반응성에 어떻게 영향을 미치는가?
  • RQ2모듈성은 BTs와 FSMs 간에 얼마나 다를 수 있으며, 이는 복잡한 작업에서 유지보수성과 재사용성에 어떤 영향을 미치는가?
  • RQ3작업 복잡도가 증가함에 따라 BTs와 FSMs의 정책 표현의 가독성은 어떻게 변화하는가?
  • RQ4실제 이동형 조작 작업에서 BTs를 사용할 경우와 FSMs를 사용할 경우 정책을 구현하고 수정하는 데 소요되는 상대적 프로그래밍 노력은 얼마나 되는가?
  • RQ5다시 설계된 FSM이 BT와 유사한 반응성을 달성할 수 있는가? 만약 가능하다면, 이는 구조적 복잡도와 구현 노력 측면에서 어떤 비용을 수반하는가?

주요 결과

  • 로봇의 작업 실행 중 행동은 BT로 제어하든 FSM으로 제어하든 기능적으로 동일했으며, 이는 행동 결과가 정책 표현 방식과 무관하다는 것을 확인한다.
  • BTs는 뛰어난 모듈성을 보였는데, 전체 하위 트리를 독립적으로 재사용, 테스트, 검증할 수 있었고, 반면 FSM 상태는 관련된 모든 전이를 수정해야 했다.
  • 반응성은 BTs에서 '실행 중'(Running) 상태와 계층적 제어 노드 덕분에 본질적으로 지원되었지만, FSMs는 유사한 고장 내성을 달성하기 위해 명시적인 재설계(예: 중심 선택기 상태로의 전역 전이)가 필요했다.
  • FSMs의 가독성은 복잡도 증가에 따라 전이 밀도가 높아져 떨어지지만, BTs는 복잡한 작업에서도 계층적 트리 구조 덕분에 명확성을 유지한다.
  • FSMs의 경우 작업 복잡도 증가에 따라 프로그래밍 노력이 크게 증가했으며, 특히 우선순위 기반 작업 전환과 장故 복구를 다룰 때 두드러졌다. 반면 BTs의 경우 더 우아하게 스케일링되었다.
  • 그래프 거리와 알고리즘 복잡도 지표를 사용한 결과, 특히 계층적 작업에서 BTs가 FSMs보다 더 컴act하고 구조적인 표현을 가짐을 확인하였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.