Open Source Robotics

고품질 오픈소스 로봇 프로젝트, 도구 및 소프트웨어의 엄선된 컬렉션.

Configuration Space Distance Fields for Manipulation Planning

저자: Yiming Li, Xuemin Chi, Amirreza Razmjoo, Sylvain Calinon · RSS 2024

라이선스

  • 오픈 액세스
  • 논문: CC BY 4.0

아래 내용은 모두 논문의 라이선스(CC BY 4.0)에 따라 논문 전문을 바탕으로 하며, 그림에는 저자를 표기했습니다.

요약

관절 각도 위에 직접 거리장을 정의하여 전신 IK를 한 단계 기울기 투영으로 바꾸고, 7-DoF Franka에서 SDF가 일으키는 지역 최솟값을 플래너가 피하도록 한다.

중요한 이유

이미 거리 함수를 입력으로 받는 플래너와 제어기(QP, iLQR, geometric fabrics)는 SDF 대신 CDF를 사용하여 관절 공간에서 직접 작동할 수 있다. 평면 로봇과 Franka에서 같은 플래너가 SDF보다 CDF를 사용할 때 성공률이 높고 추종 오차가 낮았다.

문제

부호 거리장은 보통 3D 작업 공간에서 정의되므로, 조작 제어는 먼저 그곳에서 거리를 측정한 다음 역기구학을 반복적으로 풀어 관절 운동을 구한다. 순기구학이 비선형이기 때문에 관절 공간에서 보면 거리장은 단위 기울기 성질을 잃으며, 기울기 기반 솔버는 기울기가 사라지는 곳이나 특이점에서 멈출 수 있다.

제안 방법

구성 공간 거리장(CDF)은 로봇의 어느 부분이든 한 점과 접촉하게 만드는 가장 작은 관절 운동을 라디안 단위로 제공한다. 이는 아이코날 방정식을 만족하므로, 기울기를 따라 투영하면 가장 가까운 접촉 구성에 도달한다. 접촉 구성은 로봇 SDF 모델에 대한 배치 L-BFGS로 작업 공간 격자점마다 오프라인에서 구하고, 점별 거리장은 온라인에서 최솟값 연산으로 융합하며, 5층 MLP(신경 CDF)가 간결하고 격자가 필요 없으며 미분 가능한 버전을 제공한다.

핵심 통찰

  • 관절 각도 위에 정의된 거리장은 단위 노름 기울기를 유지하므로, 접촉 목표에 대한 전신 IK가 Gauss-Newton 반복 없이 단 한 번의 투영 q′ = q − f_c ∇f_c로 줄어든다.
  • 거리장 값은 접촉하는 링크 이전의 관절에만 의존한다. 접촉 구성 샘플이 적을 때는 링크별 최솟값을 취하면 정확도가 높아진다.
  • 점별 거리장은 미리 계산해 두었다가 온라인에서 최솟값(구성 공간에서의 합집합)으로 결합할 수 있으므로, 표현이 특정 장면에 의존하지 않는다.
  • 거리장의 기울기는 관절 공간에서 장애물을 돌아가는 휘어진 경로를 따르며, 이는 반응형 플래너가 작업 공간 SDF에서 나타나는 지역 최솟값을 피하는 데 도움이 된다.

주요 결과

  • Franka에서 무작위 초기 구성 10,000개로부터의 전신 IK(표 II): 2단계 투영을 사용한 CDF는 10.6 ms에 유효 해 8,773개를 찾았고, SDF + L-BFGS는 971 ms에 3,652개, Neural-JSDF + L-BFGS는 272 ms에 264개를 찾았다. 본문은 이를 초당 700,000개 이상의 유효 해, 즉 SDF 접근법의 180배로 서술한다.
  • 신경 CDF 정확도: 투영 반복 3회 후 MAE 1.39 ± 0.51 cm, 투영 성공률 91.1 ± 8.12%(임계값 3 cm). RTX 3090에서 GPU 추론은 배치 크기 1에서 0.49 ms, 10^5에서 4.61 ms가 걸렸다.
  • 100회 실행에 걸친 Franka 동작 계획: IPOPT, QRQP, OSQP, qpOASES, geometric fabrics에서 CDF 성공률 88–93%, SDF는 38–74%. iLQR은 48% 대 38%. 2-DoF 평면 로봇에서는 CDF 76–95%, SDF 40–68%였다.
  • 시뮬레이션의 골키퍼 과제(100회 투척): 팔이 공을 막아 낸 비율은 CDF 82%, SDF 35%였다.
  • 양팔 대형 상자 접촉 계획: CDF + 필터링은 계획 시간 7.65 s, 평균 관절 거리 1.37 rad, SDF + Gauss-Newton 최적화는 54.80 s, 2.85 rad.
  • 신경 CDF를 사용하는 QP 제어기는 200 Hz 이상으로 동작한다. 신경 CDF 학습에는 RTX 3090 한 대에서 약 2시간이 걸렸다.

한계

  • 거리장은 부호가 없으며, 접촉 구성 샘플이 적으면 접촉에 가까운 구성에서 부정확하다. 저자들은 부호 정보를 추가할 것을 제안한다.
  • 하나의 로봇 형상과 기구학으로 구축되므로 로봇 모델마다 다시 계산해야 한다. 완전한 휴머노이드 같은 긴 기구학 체인으로의 확장은 미해결로 남아 있다.
  • 오프라인 계산이 느리고(접촉 구성을 찾는 데 1–10 s), 격자 버전은 메모리 효율이 낮으며, 신경 버전은 정확도를 희생한다. 저자들은 네트워크 학습이 완전히 최적화되지 않았다고 언급한다.
  • 거리는 각도(유클리드 관절) 거리로 측정된다. 구성 공간 다양체 위의 측지 거리는 향후 과제로 남는다.
  • 실제 로봇 계획 실험은 성공률 없이 정성적으로만 제시되며(그림 8), 골키퍼 과제는 시뮬레이션에서만 수행되었다.

분야에 미친 영향

RSS 2024 Outstanding Paper Award 최종 후보였으며, 인용 수는 48회이다. 공식 프로젝트 페이지는 github.com/yimingli1998/cdf 에 있는 코드를 링크한다.

초록

부호 거리장(signed distance field)은 로보틱스에서 널리 쓰이는 암시적 형상 표현으로, 물체와 장애물에 대한 기하 정보를 제어, 최적화, 학습 기법과 쉽게 결합할 수 있는 형태로 제공한다. 대부분의 경우 SDF는 작업 공간에서의 거리를 표현하는 데 쓰이며, 이는 우리가 3D 세계에서 인지하는 익숙한 거리 개념에 해당한다. 그러나 SDF는 수학적으로 로봇 구성 공간을 포함한 다른 공간에서도 사용할 수 있다. 로봇 매니퓰레이터의 경우 이 구성 공간은 일반적으로 로봇의 각 관절의 관절 각도에 해당한다. 로봇 계획에서는 구성 공간의 어느 부분이 장애물과의 충돌로부터 자유로운지를 표현하는 것이 관례이지만, 이 정보를 구성 공간의 거리장으로 생각하는 것은 덜 일반적이다. 본 논문에서 우리는 최적화를 위해 로봇 구성 공간에서 SDF를 고려하는 것의 잠재력을 보이며, 이를 구성 공간 거리장(configuration space distance field)이라 부른다. 작업 공간에서 SDF를 사용하는 것과 마찬가지로, CDF는 효율적인 관절 각도 거리 질의와 도함수에 대한 직접 접근을 제공한다. 대부분의 접근법은 전체 계산을 작업 공간의 한 부분과 그 뒤를 잇는 구성 공간의 한 부분으로 나눈다. 반면 CDF는 제어, 최적화, 학습 문제가 이 암시적 구조를 통합된 방식으로 활용할 수 있게 한다. 특히 우리는 임의의 장면으로 일반화할 수 있는, CDF를 계산하고 융합하는 효율적인 알고리즘을 제안한다. 또한 계산 효율을 높이면서 간결하고 연속적인 표현을 얻기 위해 다층 퍼셉트론을 사용한 신경 CDF 표현도 제시한다. 우리는 평면 장애물 회피 예제와 7축 Franka 로봇의 역기구학 및 조작 계획 과제를 통해 CDF의 효과를 입증한다.

링크

  • arXiv 2406.01137: https://arxiv.org/abs/2406.01137
  • DOI 10.48550/arXiv.2406.01137: https://doi.org/10.48550/arXiv.2406.01137
  • PDF: https://arxiv.org/pdf/2406.01137v1
  • 코드: https://github.com/yimingli1998/cdf
  • 프로젝트 페이지: https://sites.google.com/view/cdfmp/home

이 웹사이트는 JavaScript가 필요합니다. 오픈소스 로봇 프로젝트를 탐색하려면 JavaScript를 활성화하세요.