Foothold Planning
- 다른 이름: footstep planning, foothold selection
- 카테고리: Control › Locomotion control
- 태그: legged-locomotion, motion-planning, terrain, contact-planning, quadrupeds
지형 데이터와 로봇의 동역학을 사용해 보행 로봇의 각 발이 어디에 닿을지 골라, 모든 걸음이 안정적이고 도달 가능하며 안전하도록 하는 것.
정의
발 디딤 위치 계획(foothold planning)은 보행 로봇의 발이 닿을 접촉 위치를 고르는 문제이다. 좋은 발 디딤 위치는 단단하고 적당히 평평하며 마찰이 충분한 지면에 있고, 모서리와 구멍에서 떨어져 있으며, 몸체의 계획된 위치에서 다리가 닿을 수 있고, 걸음 내내 로봇의 균형을 유지하는 것과 양립해야 한다. 이족 로봇에서는 이 문제를 흔히 발걸음 계획(footstep planning)이라고 하며 각 발의 방향까지 포함한다. 사족 로봇에서는 보통 걸음새 시퀀스 안에서 각 발의 위치에 관한 문제이다.
고전적인 시스템은 보행을 여러 계층으로 나눈다. 인식이 고도 지도를 만들고, 지형 분석이 경사, 거칠기, 모서리까지의 거리로 각 셀에 점수를 매기며, 발 디딤 계획기가 셀을 고르고, 하위 제어기가 그 셀에 도달하는 몸체 운동과 유각 궤적을 계획한다. 흔한 계획 방법으로는 Raibert 규칙 같은 휴리스틱이 주는 공칭 발 디딤 위치를 근처에서 점수가 가장 좋은 셀로 조정하는 방법, 이산 발걸음 시퀀스에 대한 그래프 탐색, 그리고 각 발걸음을 여러 볼록 안전 영역 중 하나에 할당하는 혼합 정수 프로그램 같은 최적화가 있다. 일부 계획기는 발 디딤 위치와 몸체 운동을 함께 최적화하여 도달 가능성과 동적 균형을 함께 다룬다.
학습은 이 판도를 바꾸었다. 시뮬레이션에서 학습한 정책은 높이 샘플이나 원시 깊이 이미지를 받아 관절 명령을 직접 출력하며 발 디딤 위치를 암시적으로 고르는데, 이는 분리된 지도 작성, 계획, 제어 모듈에 걸쳐 쌓이는 오차를 피한다. 명시적 발 디딤 위치 계획은 디딤돌 위에서처럼 보장, 해석 가능성, 정밀한 배치가 중요한 곳에서 여전히 유용하며, 하이브리드 시스템은 학습된 모델로 모델 기반 제어기를 위한 발 디딤 위치에 점수를 매기거나 이를 제안한다.
중요한 이유
거친 지형에서는 발이 어디에 닿느냐가 로봇이 균형을 유지하는지를 결정한다. 발 디딤 위치 계획은 지형 인식을 구체적인 접촉 결정으로 바꾸며, 이를 명시적으로 하느냐 학습된 정책 안에서 하느냐가 보행 로봇이 계단, 잔해, 틈을 얼마나 안정적으로 다루는지를 좌우한다.
주요 응용
- 사족 로봇의 계단 오르기와 거친 지형 보행
- 복잡한 공간을 지나는 휴머노이드 발걸음 계획
- 틈과 디딤돌 건너기
- 비정형 지면 위의 행성 탐사 및 점검 로봇
- 학습된 보행 정책을 비교하기 위한 모델 기반 기준선
실제 사례
디딤돌 지대를 건너는 사족 보행 로봇이 깊이 카메라로 만든 고도 지도를 사용한다. 지형 필터는 경사가 가파르거나, 거칠기가 크거나, 근처에 모서리가 있는 셀을 무효로 표시한다. 다가오는 각 걸음마다 계획기는 걸음새와 원하는 속도가 주는 공칭 발 디딤 위치에서 시작해, 작은 근방에서 비용이 가장 낮은 유효 셀을 찾고, 계획된 몸체 자세에서 다리가 그 셀에 닿을 수 있는지 확인한다. 선택된 발 디딤 위치는 몸체 운동과 접촉력을 계획하는 모델 예측 제어기로 전달되고, 유각 제어기는 각 발을 돌 모서리를 넘을 만큼 충분히 높이 든다. 지도가 불확실한 곳에서는 비용 함수가 각 돌의 중심에 더 가까운 발 디딤 위치를 선호한다.
흔한 오해
- 발 디딤 위치 계획은 느리고 정적으로 안정한 걷기에만 쓰인다 — 현대 계획기는 짧은 호라이즌에 걸쳐 발 디딤 위치와 몸체 운동을 함께 계획하여 동적 걸음새도 다룬다
- 학습된 보행 정책은 발 디딤 위치를 고르지 않는다 — 학습된 정책도 발이 어디에 닿을지 결정하지만, 별도의 계획기가 아니라 인식으로부터 암시적으로 결정한다
- 가장 평평한 셀이 항상 최선의 발 디딤 위치이다 — 도달 가능성, 모서리로부터의 거리, 이어지는 걸음, 몸체의 운동량이 모두 발 디딤 위치가 좋은지에 영향을 준다
알아야 할 사람
- 보행 엔지니어
- 보행 로봇을 위한 지형 지도를 만드는 인식 엔지니어
- 모션 계획 연구자
- 휴머노이드 로보틱스 개발자
관련 기술
- 고도 지도 작성(Elevation Mapping)
- Raibert 휴리스틱(Raibert Heuristic)
- 혼합 정수 볼록 최적화(Mixed-Integer Convex Optimization)
- A 탐색(A Search)
- 모델 예측 제어(Model Predictive Control)
관련 용어
관련 프로젝트
- DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
- OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
- MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
- PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
- mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
- Ruckig: Real-time jerk-constrained time-optimal trajectory generation for robots and machines