포스트

MIMO Output Estimation With Reduced Multirate Sampling for Real-Time Haptic Rendering 리뷰

MIMO Output Estimation With Reduced Multirate Sampling for Real-Time Haptic Rendering 리뷰

Lee, Kyungno, and Doo Yong Lee. “MIMO Output Estimation With Reduced Multirate Sampling for Real-Time Haptic Rendering.” IEEE Transactions on Robotics 23.3 (2007): 481–493.

〈가상현실〉 수업 참고자료

도입

가상 물체를 누를 때 손에 전달되는 힘을 계산하려면, 누른 지점뿐 아니라 주변이 어떻게 변형되는지도 알아야 한다. 하지만 상호작용을 정밀하게 계산할수록 반작용 힘을 얻기까지 시간이 오래 걸린다. 하지만 햅틱 장치는 사용자의 움직임에 빠르게 반응해야 하므로, 물리 계산이 끝날 때까지 힘의 갱신을 기다리기는 어렵다.

이 연구에서는 변형 모델(physics-based deformation models)을 낮은 주파수로 계산하면서, 그 계산 사이에 필요한 힘을 작은 입출력 모델로 추정한다. 물리 모델이 새 결과를 내놓으면 추정 모델의 파라미터를 실시간으로 갱신하고, 다음 결과를 기다리는 동안에는 현재 입력으로 힘을 계속 처리하였다.

배경

물체 전체의 변형이 접촉 힘에 영향을 준다

질량-스프링 모델에서는 한 노드에 작용하는 힘이 그 노드와 연결된 이웃 노드의 위치에 따라 달라졌다. 유한요소법(FEM)이나 tensor-mass 모델에서도 접촉점의 반응은 물체 내부의 연결 관계와 변형 상태에 영향을 받았다.

접촉 노드만 움직이고 주변 노드를 고정한 상태에서 힘을 계산하면, 주변까지 변형된 뒤의 힘과 차이가 생긴다. 물체 전체의 반응을 반영하려면 다른 노드의 위치도 갱신해야 하는데, 그만큼 접촉 힘의 계산도 늦어지게 된다.

마지막으로 계산한 힘을 그대로 유지하면 사용자의 새로운 움직임을 반영하지 못한다. 만약 두 시점의 힘을 보간하려고 다음 결과까지 기다리면 출력이 추가로 지연된다. 외삽법(Extrapolation)을 사용해 힘을 처리할 수도 있지만, 외삽법으로 현재 위치만으로 반응을 예측하면 운동 방향이 바뀌거나 동적인 효과가 커지는 상황에서 오차가 발생할 수 있었다.

앞선 연구와의 차이

God-objectproxy는 가상 환경에서 허용되는 접촉 위치를 찾고, 실제 입력 위치와의 차이로 힘을 계산했다. Voxel sampling은 복잡한 강체의 접촉을 빠르게 처리하기 위해 정적 환경을 voxmap으로, 조작 물체를 point shell로 표현했다.

이번 논문은 접촉 기하를 새롭게 정의하는 대신, 변형 모델이 계산한 힘을 빠른 주기로 추정하는 문제를 다룬다. 원래 물리 모델을 단순한 접촉 스프링으로 대체하지는 않았다. 복잡한 물리 모델의 움직임을 작은 규모의 동적 입출력 모델로 처리하도록 하였다. 이를 통해 기하 계산을 더 가속하지 않으면서, 계산 비용이 큰 변형 모델과 1 kHz의 햅틱 루프 사이를 연결할 수 있었다.

논문이 비교한 기존의 위치 기반 외삽 방법은 현재 장치 위치와 이전에 계산한 힘을 사용했다. 이 방법은 장치 궤적이 거의 직선이고 출력 갱신 주파수에 비해 장치 속도가 충분히 느릴 때에는 효과적이지만, 운동 방향이 바뀌면 동적인 힘을 추정하기 어렵고 계산 지연도 고려하지 않는 문제가 있었다. 제안 방법은 여러 축의 현재, 과거 입력과 출력 이력을 함께 사용하여 이 한계를 줄이려 한다.

연구 내용

느린 변형 계산 사이의 출력을 실시간으로 추정

햅틱 루프의 주기를 $T$, 변형 모델을 포함하는 그래픽 루프의 주기를 $JT$, $J$ 는 두 주기의 비율인 양의 정수로 정의할 때,

\[T=1\,\mathrm{ms},\qquad JT=40\,\mathrm{ms},\qquad J=40\]

실험에서는 위와 같이 설정하였다.


물리 모델이 40 ms마다 계산한 힘으로 추정 모델을 갱신하고, 그 사이에는 1 ms마다 들어오는 장치의 위치를 사용해 힘을 출력한다. 논문은 물리 모델의 갱신 시점 사이에서 추정한 출력을 intersample output이라고 부른다.

파라미터를 리얼타임으로 갱신하므로, 모델 전체의 반응을 미리 계산해 저장할 필요가 없다. 다만 기준이 되는 물리 모델의 실행은 계속 필요하다. 계산 비용을 없애는 것이 아니라, 비싼 변형 계산과 저렴한 추정 처리를 서로 다른 주기로 수행한다. 이 방식은 절단처럼 변형 모델의 기하와 입출력 관계가 실행 중에 바뀌는 상황에도 적용할 수 있도록 설계했다.

여러 입력 축이 각 출력에 미치는 영향을 함께 추정한다

3차원 접촉점에서는 $x$ 방향의 힘이 $x$ 방향 변위에만 의존한다고 가정하기 어렵다. 물체의 형상과 연결 관계에 따라 $y$, $z$ 방향으로 움직인 결과도 $x$ 방향 힘에 영향을 줄 수 있다.

그래서 이 연구에서는 각 출력 성분을 여러 입력의 함수로 추정하는 MISO(multi-input–single-output) 모델을 구성했다. 또 이 모델을 출력 개수만큼 결합해 MIMO(multi-input–multi-output) 모델로 확장해 사용했다.

실험에서는 입력으로 세 축의 변위를 사용하고, 출력으로 세 축의 힘을 추정했다. 따라서 이 실험에서 세 출력 모델은 각각 세 입력 축을 모두 고려했다.

주파수 비율에 따라 추정기 부담이 늘어나는 상황 완화하기

다중 주기 SISO 출력 추정 방법에서는 느린 출력 하나에 영향을 주는 빠른 입력들을 개별적으로 포함하면서, 서로 다른 두 갱신 주기(빠른 갱신과 느린 갱신)의 비율 $J$ 가 커질수록 추정해야하는 파라미터 수가 함께 늘어났다. 예를 들어 $J=40$ 이면, 느린 출력 하나에 대해 40개의 빠른 입력을 모두 포함해야 하는데, 이것으로 인해 추정기의 차원이 커지고 계산량이 증가했다.

\[y(k) = a_1 x(k) + a_2 x(k-1) + \dots + a_{40} x(k-39) + b_1 y(k-40) + \dots\]

이 방법은 현재 입력과 $J$ 개 샘플 간격의 입력-출력 이력으로 입출력 관계를 구성한다. 느린 갱신 사이에 들어온 모든 입력을 별도의 계수로 표현하지 않으므로, 고정한 모델 차수에서는 파라미터 수가 $J$에 비례해 증가하지 않는다.

\[y(k) + \sum_{i=1}^{n} a_i y(k-i) = \sum_{j=0}^{m} b_j x(k-j)\] \[A(z^{-1}) y(k) = B(z^{-1}) x(k)\] \[\begin{aligned} A(z^{-1}) &= 1 + a_1 z^{-1} + a_2 z^{-2} + \dots + a_n z^{-n} \\ B(z^{-1}) &= b_0 + b_1 z^{-1} + b_2 z^{-2} + \dots + b_m z^{-m} \end{aligned}\]

P 행렬을 재설정하여 변화한 모델에 적응한다

최소제곱 추정을 계속 수행하면 새 오차에 대한 파라미터 수정량이 작아질 수 있다. 이 현상을 겪어 모델이 고착화되면, 물체 절단 등 연결 관계가 급격하게 변할 때 새로운 상태로의 적응 속도가 현저히 느려질 수 있다.

이를 해결하기 위해 연구진은 파라미터 갱신 이득을 결정하는 공분산 $P$ 행렬을 모니터링하는 방법을 사용했다. $P$ 행렬의 크기가 임계값 아래로 작아지면 $P$ 행렬을 초기화한다. $P$ 의 파라미터 $\theta$ 는 유지하고 $P$ 행렬만 초기화하여, 현재 파라미터에 대하여 불확실성을 다시 크게 만들어 새로운 오차에 대한 파라미터 수정량을 늘린다.

하지만 재설정 조건이 절단을 직접 검출하는 것은 아니기 때문에, 파라미터가 변화한 순간의 오차까지 즉시 제거하지는 못한다.

결론

이 연구는 물리 변형 모델의 입출력 관계를 작은 MIMO 모델로 온라인 추정하여, 25 Hz의 변형 계산 사이에서 1 kHz의 힘 출력을 생성했다. 접촉 기하를 새로 정의하거나 변형 모델 자체를 단순화하는 대신, 원래 모델이 느리게 계산한 힘을 기준으로 빠른 주기의 intersample output을 추정했다. 주기 비율에 따라 추정 파라미터가 늘어나는 부담을 줄이고, $P$ 행렬을 재설정하여 모델 변화에 계속 적응하도록 한 점이 주요한 연구 내용이라고 할 수 있다.

God-object와 proxy가 접촉 상태를 정의하고, voxel sampling이 복잡한 강체 접촉의 계산 비용을 줄였다면, 이번 방법은 변형 모델의 계산 주기와 햅틱 출력 주기를 분리했다는 데에 초점을 맞출 수 있다. 특히 위치 기반 외삽과 달리, 여러 입력 축과 과거 이력을 포함한 동적 모델을 사용해 운동 방향 변화와 고정된 계산 지연을 다룬다는 점을 특기할 수 있다.

실험에서는 원운동, 불규칙한 운동, 고정된 계산 지연이 있는 조건에서 위치 기반 외삽보다 작은 평균 오차를 보였다. 반면 일정하거나 느린 운동에서는 개선이 없었고, 순간 최대 오차도 확인되었다. 따라서 이 연구에서 모든 조건에서의 정확도와 안정성을 보장하지는 못했으나, 실시간 입출력 추정으로 오랜 시간이 걸리는 변형 계산을 보완할 수 있음을 구체적인 구현과 실험으로 보였다는 데 의의가 있다.