• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (Dept. of Computer Engineering, Seokyeong University, Korea)
  2. (Dept. of Electronics Engineering, Seokyeong University, Korea)



Humanoid robot, Rolling terrains, Central pattern generator, Adaptive walking, Genetic algorithm

1. 서론

휴머노이드 보행 연구의 대부분이 평지 및 단순 경사에 대해서 수행되고 있다(1). 그러나 실제 외부 지형은 다양한 굴곡을 가지고 있으므로, 이에 대처할 수 있는 시도가 필요하다. 그럼에도 불구하고, 현실적으로 다양한 비평탄 지형에 대한 실험을 하는 것이 용이하지 않다. 단순 경사 지형은 제작이 가능하나, 굴곡지형은 제작의 어려움이 따른다. 특히, 반복적인 최적화 실험을 수행해야 하는 경우에는 다양한 지형을 포함하기가 어렵다.

시뮬레이션 기술이 발달함에 따라, 실제 환경의 실험 전에 시뮬레이션을 통해, 다양한 지형에 대한 보행 실험을 수행하는 것이 효율적이다. 본 연구자는 시뮬레이션을 통해 경사의 각도가 달라지는 가변 경사 환경을 도입하여 휴머노이드 보행 실험을 수행한 바 있다(2). 본 논문에서는 연속 굴곡지형으로 이를 확장한다.

다양한 지형에 대한 적응성을 확보하기 위해서는 비전 센서 기반의 정교한 제어가 일반적인 접근법이지만, 환경 정보의 충분한 획득이 쉽지 않은 경우 적용이 쉽지 않다.

외부 환경에 대한 센서 정보의 제공이 최소한이거나 제한적일 경우에, 보행의 적응성을 높이기 위해, 동물의 생체신경시스템을 모방한 CPG(Central Pattern generator)(3) 모델의 적용이 도입되고 있다.

CPG 원리를 수학적으로 모델링하여 휴머노이드 보행 제어에 적용하는 연구들이 관심을 끌고 있지만, 현재까지는 CPG에 의해 생성된 파형을 변환하여 CoM 이나 발끝의 궤적의 생성에 적용하는 접근이 대부분이다(1,4). 이 방식은 CPG 자체의 파형을 직접 이용하지 않고 변환을 통해 간접적인 결과를 이용하므로, 생체 CPG 의 적응적 특성과는 일부 거리가 있다. 또한, CoM이나 발끝 궤적의 변형이 일정하여 지형 변화에 대한 충분한 적응성을 발휘하기에는 미흡하다. 위와 같은 CPG 기반 발끝궤적 생성기법에 몸의 기울기 정보를 처리할 수 있는 피드백 CPG 네크워크를 추가하여 결합한 기법이 제안되었고(2), 10도 이내의 가변적 경사 지형에 적응적인 보행 결과를 보였다.

위의 연구를 발전시켜, CPG 기반 발끝 궤적 방식에 더 험한 지형의 변화에 적응할 수 있는 GP(Genetic Programming) 기반의 진화적 관절각 보정 방식을 결합한다. 이 방법은 GP를 사용한 비선형 보정식의 생성을 통해 더 급한 경사 지형 변화에 좀 더 안정된 보행을 할 수 있었다(5). 그러나, GP의 경우 급한 경사 변화에는 최적화되어 좋은 성능을 보였으나, 굴곡진 연속된 지형에서는 과적합 문제로 인한 보행의 안정성이 저하됨을 확인하였다.

이를 개선하기 위해서, GA(Genetic Algorithm)(6) 기반의 관절 보정을 통한 적응적인 기법을 구현하고, 다양한 굴곡지형에 대해서 휴머노이드 Nao를 대상으로 시뮬레이션을 수행한다.

2. 굴곡 지형에서의 보행

휴머노이드가 실제 응용에 적용되기 위해서는 보행 지형을 다양하게 변화시켜 적응성을 실험할 필요가 있다. 지금까지는 대부분 평지와 경사의 단순 조합–즉, 평지-경사-평지나 평지-오르막-평지-내리막-평지로 구성된 지형에 대해서 실험되어 왔다. 그러나 실제 지형은 경사와 같은 예각으로 구성되기 보다는, 지형의 변화가 원만한 곡선의 연속으로 이루어져 있다. 평지처럼 보이는 것도 사실은 울퉁불퉁한 지형일 수 있으며, 더욱이 비포장 지역은 굴곡의 정도가 더 심하므로 이러한 환경을 반영한 유사 실험이 필요하다. 그림. 1에 작은 구간의 기울기를 다르게 변화시켜 구성한 굴곡진 지형의 예가 나와 있다.

그림. 1. 굴곡진 지형 예

Fig. 1. Example of rolling terrain

../../Resources/kiee/KIEE.2018.67.5.663/fig1.png

또한, 긴 구간의 보행을 실험해 봐야 보행 기법의 강인성을 알 수 있다. 즉, 첫 구간에서의 누적된 불균형이 이후에 나타날 수 있으므로 일부 구간만으로는 보행 기법의 성능을 측정할 수 없는 경우가 있다. 경사 지형은 제작 가능하나, 굴곡지형은 제작이 어렵기 때문에 잘 시도되지 않고 있다. 실제 외부 지형은 평지처럼 보이는 것도 사실은 울퉁불통한 지형이다. 더욱이 비포장 지역은 굴곡의 정도가 더 심하므로, 실제 환경의 실험전에 시뮬레이션이 매우 필요한 경우이다. 이를 위한 굴곡진 지형에 대한 시뮬레이션 실험은 반복이 용이하므로 진화연산 기법의 적용이 매우 적합하다.

3. CPG를 적용한 휴머노이드 보행

3.1 CPG(Central Pattern Generator)

CPG 모델은 생물체의 신경망들이 서로 신호를 주고받으며, 비 선형적인 주기 신호를 발생시키는 원리를 모델링한 것이다. 본 논문에서는 Matsuoka(2)의 CPG 모델을 사용하며 식(1)로 구성된다.

(1)
τ i u i ˙ = - u i - w f e y i + j w i j y j - β v i + s 0 + f i τ i v i ˙ = - v i + y i ,     y i = m a x ( u i , 0 )

여기서, ui는 i번째 뉴런의 내부 상태, vi는 i번째 뉴런의 자기억제, yi는 i번째 뉴런의 출력을 나타낸다. 내부파라미터로 β는 u,v의 적응에 대한 변수, s0는 정상 입력 신호, fi는 외부 피드백 신호, wij는 외부 가중치, wfe는 내부 가중치를 나타낸다.

3.2 CPG 궤적 기반 보행 기법

CPG 발끝 궤적 기반 보행에 몸의 기울기 정보를 반영한CPG 네크워크를 추가하여, 경사 지형에서 기울기에 따른 발끝 궤적의 변형적인 생성을 수행한 연구가(6) 시도되었으며, 시뮬레이션 실험을 통해 10도 이하의 경사에서는 안정된 보행 성능을 보였다, 이때 사용된 CPG 네트워크 기반 발끝 궤적식은 다음 식(2), 식(3)과 같다.

(2)
T r a j e c t o r y x = ( ( r 1 + t k 2 ) k 1 + f b o d y - x ) * ( S + f s t e p ) i f     t < 0 . 5 ( 1 + f b o d y - x ) * ( S + f s t e p ) i f     0 . 5 < t < 0 . 6 0 o t h e r w i s e

(3)
T r a j e c t o r y z = r 2 k 3 * H i f     t < 0 . 5 0 o t h e r w i s e

여기서 t는 시간, r1, r2는 x축과 z축에 관한 궤적 CPG 네트워크의 출력 파형, S는 발의 보폭, H는 발의 높이를 의미한다. 그리고 ki는 이득 값, 그리고, fbodt_x, fstep는 피드백 CPG 네트워크의 출력값이다. x축에 대한 궤적에 몸체 중심의 피드백 출력값을 더함으로 몸체 중심의 위치가 변화하고, 발의 보폭에 대한 피드백 출력값을 더함으로 발의 보폭을 변화시킬 수 있다. 여기서 나온 각각의 출력 파형을 변환하여 x축과 z축에 대한 발끝 궤적 및 피드백 값을 생성하여 각 출력 파형을 결합하여 환경에 적응적인 보행 궤적을 생성한다.

그러나, 이들 접근법들은 CPG 파형을 변환하여 관절 궤적을 생성하기 때문에, 지형의 변화에 따른 직접적인 관절각의 제어 기능이 부족하다. CPG 기반 발끝 궤적 방식에 굴곡지형에 적응할 수 있는 GA를 사용한 진화적 관절각 보정 방식을 결합한다.

3.3 CPG 궤적 기반 보행과 관절값 보정기법의 결합

그림. 2는 서로 다른 보행 자세에서 몸체 중심위치와 두 발의 중심위치와의 관계를 나타낸다. a)의 경우는 내리막 경사에서 몸체가 뒤로 기울어져, 몸체 중심 위치가 두 발의 중심위치 보다 뒤에 위치한 것을 볼 수 있고, b)의 경우, 평지 보행에서 몸체의 중심위치와 두 발의 중심위치가 x축에 대해 거의 일치한다. c)의 경우, 오르막 경사에서 몸체가 앞으로 기울어져 몸체 중심의 위치가 두 발의 중심 위치 보다 앞에 있다.

그림. 2. 휴머노이드의 두 발 중심과 몸 중심의 위치에 따른 지표값 변화

Fig. 2. Center position of body and two feet

../../Resources/kiee/KIEE.2018.67.5.663/fig2.png

이를 토대로 몸의 기울기 각도 Θ를 식(4), 식(5)를 통해 정의한다. 여기서, feedback은 두 발 중심과 몸 중심의 X축 상의 거리차이를 의미하며, CPG 네트워크에 추가되는 피드백 신호 값이다. 두 발 중심이 몸 중심보다 뒤에 위치하면 양의 값을 가지고, 앞에 위치하면 음의 값을 가진다. Height는 몸 중심과 두 발 중심의 높이 차이를 의미한다.

(4)
α = H e i g h t 2 + f e e d b a c k 2

(5)
θ = - a c o s ( H e i g h t α ) , i f     f e e d b a c k > 0 a c o s ( H e i g h t α ) , i f     f e e d b a c k < 0

CPG 발끝 궤적에 몸 기울기 정보를 이용한 보정식을 결합하는 방법을 제안하며, 진화 최적화 기법인 GA를 통해 보정식을 구한다.

여기서, 각 보정식은 식(6)과 같이 구성된다.

(6)
f H i p P i t c h = z H i p P i t c h t × θ t + z H i p P i t c h t - 1 × θ t - 1 + z H i p P i t c h t - 2 × θ t - 2 f K n e e P i t c h = - ( z K n e e P i t c h t × θ t + z K n e e P i t c h t - 1 × θ t - 1 + z K n e e P i t c h t - 2 × θ t - 2 ) f A n k l e P i t c h = z A n k l e P i t c h t × θ t + z A n k l e P i t c h t - 1 × θ t - 1 + z A n k l e P i t c h t - 2 × θ t - 2

fHipPitch, fKneePitch, fAnklePitch는 각각 엉덩이(hip)의 피치 관절, 무릎(knee)의 피치 관절, 발목(ankle)의 피치 관절값을 의미한다. zHipPitch, zKneePitch, zAnklePitch는 구해야하는 각 관절에 대한 보정 계수이며, 각각에 대한 아래첨자 t, t-1, t-2는 샘플링 시간을 나타낸다. θt, θt-1, θt-2는 시간 t, t-1, t-2 때의 몸의 기울기 각도를 나타낸다. 현재의 기울기 값 외에 그 전 샘플링 시간대의 기울기를 반영함으로써, 연속적으로 굴곡진 지형 변화에 적합한 로봇의 관절값 제어를 수행할 수 있다. 그림. 3에 CPG 궤적 및 GA 관절 보정의 결합 기법의 구성도가 나와 있다.

그림. 3. CPG 궤적 및 GA 관절 보정의 결합 기법

Fig. 3. Combining CPG based foot trajectory and GA based joint compensation

../../Resources/kiee/KIEE.2018.67.5.663/fig3.png

GA 기반의 보정식은 다양한 굴곡지형을 대상으로 높은 적합도를 갖는 해를 구함으로서 얻어진다. CPG 기법의 내재된 비선형적 특성에 일정 범위에서 동작하는 보정식을 결합함으로써, 굴곡지형에 대한 적응성을 향상시킬 수 있다.

GA 진화연산을 위한 적합도 함수는 식(7)과 같이 일정한 시간 동안 로봇의 x축(전진 방향)으로의 보행 거리를 중심으로 몇 가지 다른 요소에 의한 벌칙으로 구성된다.

(7)
f = 1 N i = 1 N [ x ( i ) - | 10 × y ( i ) | - c f a l l ( i ) v f a l l ( i ) ] - c n a n v n a n

x는 전진 방향의 이동 변위를 의미하고, △y는 측면 방향의 이동 변위를 의미한다. vfall, vnan은 각각 로봇이 넘어졌을 때와 불가능한 관절 값일 때의 플래그를 의미하고, cfall, cnan은 그에 대한 벌칙 상수를 표시한다.

4. 실험 환경 및 결과

4.1 실험 환경 구성

본 연구에서는 휴머노이드 Nao(7) 로봇을 대상으로 하며, 실험은 Cyberbotics사의 Webots 시뮬레이터에 GA 프로그램을 결합하여 구현하였다. CPG 기반 GA 관절 보정 보행 기법의 실험을 위해 설정한 GA 파라미터는 표 1과 같다.

표 1. GA 파라미터

Table 1. GA parameters

Parameter

Value

Variables

9

Crossover rate

0.8

Mutation rate

0.2

Upper bound

1.0

Lower bound

-1.0

Population size

200

Generations

100

시뮬레이션 환경 1은 그림. 4와 같이 1개의 일반 굴곡 지형으로 구성한다. 다른 시뮬레이션 환경도 단일 굴곡 지형을 사용한 지형들로 구성한다. 시뮬레이션 환경 2는 그림. 5와 같이 굴곡 지형 2개를 붙인 연속 굴곡 지형 3가지로 구성한다. 추가적으로 시뮬레이션 환경 3은 그림. 6과 같이 굴곡 지형 3개를 붙인 지형 3가지로 구성한다.

그림. 4. 단일 굴곡지형

Fig. 4. Single rolling terrain

../../Resources/kiee/KIEE.2018.67.5.663/fig4.png

그림. 5. 이단 연속 굴곡 지형

Fig. 5. Two cascade rolling terrains

../../Resources/kiee/KIEE.2018.67.5.663/fig5.png

그림. 6. 삼단 연속 굴곡 지형

Fig. 6. Three cascade rolling terrains

../../Resources/kiee/KIEE.2018.67.5.663/fig6.png

4.2 단일 굴곡 지형 실험

단일 굴곡 지형에 대해서 CPG 기반 관절 보행 기법과 GA 보정기법을 비교한 실험 결과가 그림. 7에 나와 있다. 두 기법 모두 굴곡 지형에 대한 적응성을 보였다. 그러나 CPG만의 보행은 1단 굴곡 지형에 대해서 (a)에서 보듯이 올라갈 때 상체가 뒤로 젖혀지는 현상과 내려갈 때 몸이 앞으로 약간 쏠리는 현상이 나타난다. CPG+GA 결합 보행은 이와 달리 안정정인 자세로 보행을 수행한다.

그림. 7. 단일 굴곡 지형 (a) CPG 궤적 기반 (b) GA 보정

Fig. 7. Single rolling terrain (a) CPG foot trajectory, (b) GA compensation

../../Resources/kiee/KIEE.2018.67.5.663/fig7.png

4.3 이단 연속 굴곡 지형 실험

이단 연속 굴곡 지형에 대한 실험 결과가 그림. 8에 나와 있다. 마찬가지로, 역시 두 기법 모두 연속 굴곡 지형에 대한 적응성을 보였으나, 단일 굴곡 지형과 마찬가지로 CPG만의 보행은 자세가 약간 기울어지는 현상을 보였다. 시뮬레이션 환경 2의 두 번째인 서로 다른 높이의 연속 굴곡 지형에 대한 보행 결과가 그림. 9에 나와 있다. 이 지형은 앞과 뒤의 굴곡 높이를 다르게 함으로써 난이도를 높인 것이다. CPG 발끝 궤적 기반 보행 기법이 굴곡을 내려가는 과정에서 넘어져서, CPG 파형 변화만으로는 한계를 나타내었고, 이에 비해 CPG와 결합한 GA 보정기법은 이 지형에 대해서도 안정적인 보행 성능을 나타내었다.

그림. 8. 이단 연속 굴곡 지형 (a) CPG 궤적 기반, (b) GA 보정

Fig. 8. Two cascade rolling terrains (a) CPG foot trajectory, (b) GA compensation

../../Resources/kiee/KIEE.2018.67.5.663/fig8.png

그림. 9. 높이가 다른 이단 연속 굴곡 지형 1 (a) CPG 궤적 기반, (b) GA 보정

Fig. 9. Two cascade rolling terrains 1 - different height 1 (a) CPG foot trajectory, (b) GA compensation

../../Resources/kiee/KIEE.2018.67.5.663/fig9.png

다음으로 시뮬레이션 환경 2의 세 번째인 서로 다른 높이에 앞부분의 굴곡이 더 높은 지형에 대한 보행 실험을 수행하였으며 결과가 그림. 10에 나와 있다. 이 지형은 높은 굴곡을 통과하면서 누적된 자세의 불균형의 여파가 그 다음 굴곡에서 영향을 미치는지를 보기 위한 것이다.

그림. 10. 높이가 다른 이단 연속 굴곡 지형 2 대한 CPG+GA 보정

Fig. 10. CPG+GA based compensation for two cascade rolling terrains 2.

../../Resources/kiee/KIEE.2018.67.5.663/fig10.png

그림. 11은 3단 굴곡 지형에 대한 CPG+GA 보정의 보행 결과이며, 이때의 지형은 총 3개의 단일 굴곡 지형을 연속적으로 이어 붙인 것이다. 2단 굴곡지형에 비해 3단 지형은 난이도를 더 높인 것으로, 3단 지형의 실험시 2단에서 성공했던 여러 해들도 3단에서는 보행에 실패한 경우가 많았다. 특히, 2단의 굴곡지형을 보행하면서 누적된 자세의 불안정이 3단부터는 이를 극복하지 못하고 넘어지는 사례가 상당수 존재하였다.

그림. 11. 3단 연속 굴곡 지형에 대한 CPG+GA 보정 보행

Fig. 11. CPG+GA based compensation for three cascade rolling terrains.

../../Resources/kiee/KIEE.2018.67.5.663/fig11.png

앞의 3단 굴곡 지형에 변화를 주어 2단째에 높은 굴곡을 가진 3단 연속 굴곡 지형을 구성하고, 보행실험을 추가하였다. 그림. 12는 CPG+GA 보정의 보행 결과이며, 난이도가 높아진 3단 지형에 대해서도 안정된 보행을 유지함을 확인할 수 있었다. 적합도 함수에서 측면으로의 이탈한 경우에 벌칙을 주어 적합도 함수에 반영한 이유는, 일반적으로 평지에서 직선거리 이동에 적용이 되고 있으나, 이번 굴곡 실험에서는 로봇이 지형의 중심축으로부터 크게 벗어나면서 시뮬레이션 지형의 폭을 벗어나 3번째 언덕을 오르지 못하는 경우가 발생하였기 때문에 수정하였다. CPG+GA 보정에 의한 보행은 10번 시도 중 3~4번 이상을 성공하였으며, CPG만의 실험에서는 10회 모두 실패하였다.

그림. 12. 높은 중심 굴곡을 가진 3단 연속 굴곡 지형에 대한 GA 보정 보행

Fig. 12. GA based compensation for three cascade rolling terrains.

../../Resources/kiee/KIEE.2018.67.5.663/fig12.png

5. 결 론

평지 및 단순 경사보다 실제 외부 지형에 가까운 다양한 굴곡 지형에 대한 보행 실험을 수행하였다. 그동안 일반 경사 지형에서 성능이 검증된 CPG(Central Pattern Generator) 기반 발끝 궤적 방식을 개선하여 굴곡 지형의 변화에 적응할 수 있는 진화적 관절각 보정 방식을 제안하였다. 특히, GA(Genetic Algorithm)기반의 보정식의 생성을 통해 지형 변화에 좀 더 안정된 적응을 할 수 있었다.

휴머노이드 로봇 Nao를 대상으로 단반 굴곡 지형, 2단연속 굴곡 지형, 3단 연속 굴곡 지형에 대해서 시뮬레이션 실험이 수행되었고, CPG 기반 발끝 궤적 생성 기법과 이에 GA 보정을 결합한 기법을 비교 하였다. CPG를 이용한 발끝 궤적 생성 기법으로는 보행에 실패한 높은 2단 굴곡 지형과 3단 굴곡 지형에 대해서 본 논문에서 제안한 CPG 궤적과 GA 보정을 결합한 기법이 안정적인 보행 결과를 보였다. 향후, 더 다양한 지형, 특히 경사가 더 가파른 굴곡 지형에 대한 확장이 필요하다.

감사의 글

본 연구는 한국연구재단 연구비 지원을 받아 수행되었음 NRF-2016R1D1A1A09919650

References

1 
Liu C., Wang D., Chen Q., 2013, Central Pattern Generator Inspired Control for Adaptive Walking of Biped Robots, Systems, Man, and Cybernetics: Systems, IEEE Transactions on, No. 99, pp. 1-10DOI
2 
Lee J., Seo K., 2014, CPG Based Adaptive Walking for Humanoid Robots Combining Feedbacks, The Transactions of the Korean Institute of Electrical Engineers, Vol. 63, No. 5, pp. 683-689DOI
3 
Matsuoka K., 1987, Mechanisms of frequency and pattern control in the neural rhythm generators, Biological Cybernetics, Vol. 56, No. 5, pp. 345-353DOI
4 
Lee J., Seo K., 2013, Generation of Walking Trajectory of Humanoid Robot using CPG, Journal of Korean Institute of Intelligent Systems, Vol. 23, No. 4, pp. 360-365DOI
5 
Cho Y., Kim H., Seo K., 2016, A Combined CPG Foot Trajectory and GP Joint Compensation Method for Adaptive Humanoid Walking, The Transactions of the Korean Institute of Electrical Engineers, Vol. 65, No. 9, pp. 1551-1556Google Search
6 
Goldberg D. E., 1989, Genetic Algorithms in Search, Optimization and Machine Learning, Addison-WesleyGoogle Search
7 
Graf C., Härtl A., Röfer T., Laue T., 2009, A Robust Closed- Loop Gait for the Standard Platform League Humanoid, Proceedings of the Fourth Workshop on Humanoid Soccer Robots in conjunction with the 2009 IEEE-RAS International Conference on Humanoid Robots, pp. 30-37Google Search

저자소개

경 덕 환 (Deokhwan Kyeong)
../../Resources/kiee/KIEE.2018.67.5.663/au1.png

2017년 서경대학교 전자공학과 졸업(학사)

2017년~현재 서경대학교 대학원 전자컴퓨터공학과 석사과정

관심분야는 딥러닝, 머신비전, 기상예측

서 기 성 (Kisung Seo)
../../Resources/kiee/KIEE.2018.67.5.663/au2.png

1993년 연세대학교 대학원 전기공학과 졸업(박사)

1999~2003년 Michigan State University, Genetic Algorithms Research and Applications Group, Research Associate

2002~ 2003년 Michigan State University, Electrical & Computer Engineering, Visiting Assistant Professor

2011~2012년 Michigan State University, BEACON(Bio/ computational Evolution in Action CONsortium) Center