하드코딩 기반 행동 제어의 정의 (Definition of Hardcoded Behavior Control)

하드코딩 기반 행동 제어의 정의 (Definition of Hardcoded Behavior Control)

1. 개요

하드코딩 기반 행동 제어는 로봇의 모든 의사 결정 규칙을 개발자가 사전에 명시적으로 설계하고, 소스 코드 또는 설정 파일에 고정적으로 기록하는 행동 제어 방식이다. 로봇은 실행 시 이 규칙을 그대로 따르며, 규칙에 정의되지 않은 상황에는 대응하지 못한다.

2. 정의

하드코딩 기반 행동 제어는 다음과 같이 형식적으로 정의할 수 있다.

\pi_{\text{hard}} : S \rightarrow A

여기서 S는 상태 집합, A는 행동 집합이며, \pi_{\text{hard}}는 사전에 정의된 고정 정책(fixed policy)이다. 이 정책은 개발 시점에 완전히 결정되며, 실행 시 변경되지 않는다.

하드코딩의 형태

조건-행동 규칙 (If-Then Rules)

if (obstacle_detected && distance < 0.5)
    avoid_obstacle();
else if (goal_reached)
    stop();
else
    navigate_to_goal();

유한 상태 머신 (FSM)

상태와 전이 규칙을 사전에 정의하여, 현재 상태와 이벤트에 따라 다음 행동을 결정한다.

행동 트리 (BT)

조건 노드, 액션 노드, 제어 노드의 계층적 구조를 사전에 설계하여, tick 메커니즘에 따라 행동을 선택한다.

스크립트 기반 임무 정의

YAML, JSON, XML 등의 설정 파일로 임무 시퀀스를 정의한다.

mission:
  - navigate_to: [1.0, 2.0]
  - pick_object: box_1
  - navigate_to: [3.0, 4.0]
  - place_object: box_1

하드코딩의 핵심 특성

특성설명
결정론적동일 상태에서 항상 동일 행동
개발 시점 확정모든 규칙이 개발 시 결정됨
정적 구조실행 중 구조 변경 불가
명시적 표현모든 규칙이 코드로 명시됨
도메인 특화특정 임무에 최적화됨

자율 계획과의 본질적 차이

측면하드코딩자율 계획
행동 결정 시점개발 시실행 시
행동 결정 주체개발자계획 알고리즘
상태 공간 탐색없음탐색 수행
새로운 목표 대응코드 수정 필요도메인 내 자동 대응
계산 비용O(1)O(\text{exp})

참고 문헌

  • Ghallab, M., Nau, D., & Traverso, P. (2016). Automated Planning and Acting. Cambridge University Press.
  • Colledanchise, M., & Ogren, P. (2018). Behavior Trees in Robotics and AI: An Introduction. CRC Press.

버전날짜변경 사항
v0.12026-04-05초안 작성