책 커버 표지
니케이로보틱스_2019/10_선박의 자율주행 실현
  • 저자 : 日経テクノロジーオンライン
  • 발행일 : 20190910
  • 페이지수/크기 : 39page/28cm

요약

Nikkei Robotics_2019.10 Sexy Technology (p3-11)

선박의 자율주행 실현
후루노 전기, 강화학습으로 실용화 추진


시행착오를 통해 교사 없이 학습할 수 있는 기계학습 기술의 일종인 ‘강화학습(RL: Reinforcement Learning)’. 지금까지 실용화 사례가 적었던 이 강화학습 기술을 자율주행용으로 실용화하려는 기업이 일본에서 나왔다.

그러나 지상을 달리는 자동차의 자율주행이 아니다. 크루저 등 바다 위를 항행하는 선박이 대상이다.

어군탐지기, 선박용 레이더 등 선박용 전자기기를 개발하는 후루노전기(古野電氣)가 바다낚시용 배나 크루저 등 유람선(Pleasure Boat)용 자율주행 기술로서 개발했다. 로봇 제어용 기계학습 기술 등을 전문으로 하는 나라첨단과학기술대학대학원(NAIST)의 마쓰바라(松原) 교수 연구실과 공동으로 선박의 자율주행에 적합한 강화학습 기술을 신규로 개발해 실현했다. 바다 위의 목표 위치로 자동으로 이동하거나 지정한 지점에 계속 머무는 것도 가능하다.

-- 많은 시행이 필요한 DRL --
현재 강화학습 영역에서는 심층학습을 조합한 ‘심층강화학습(DRL: Deep Reinforcement Learning)이라는 기술의 개발이 활발하다. 강화학습에서 로봇을 제어하는 제어기인 ‘방책(Policy)’이나 좋은 행동 예측을 평가하는 ‘가치함수’ 등에 심층신경망(DNN)을 할당하는 것이다. 로봇 팔을 이용한 파지(grasping) 연구 등에서는 이들 심층강화학습이 활발하게 시도되고 있다.

그러나 현재로서는 심층강화학습에서 DNN이 ‘좋은 제어기’가 되기 위해서는 다수의 시행착오가 필요하다. 때문에 심층강화학습에서는 모든 학습을 로봇 등의 실기로 시행하는 것이 아니라 컴퓨터 상의 물리 시뮬레이터도 병용하는 것이 전망되고 있다. 실세계보다도 고속으로 시간을 추진할 수 있는 시뮬레이터 상에서 다수의 시행착오를 실시해 좋은 제어기가 생기면 그것을 실기로 옮겨 사용하는 ‘Sim-to-Real(Sim2Real)’이라는 어프로치다. 예를 들면 미국 OpenAI재단이 실시한 5지(指) 핸드의 파지 연구에서는 시뮬레이터 상의 시간으로 약 100년분에 상당하는 시행착오를 실시하고 있다. 심층강화학습의 실용화를 목표하는 AI벤처 등도 이러한 Sim2Real을 많이 사용한다.

-- 심층학습은 사용하지 않고 --
그러나 후루노전기는 이번에 유람선용 자율주행 사업의 특성 등을 고려해 심층학습 베이스의 강화학습은 채용하지 않았다. 대신에 심층강화학습보다 적은 시행착오(수십 회 정도)로 학습이 끝나는 새로운 강화학습방법 ‘SPMPC(Sample-efficient Probabilistic Model Predictive Control)’를 NAIST와 공동으로 개발했다.

후루노전기가 심층학습 베이스 강화학습을 채용하지 않고, 새롭게 시행 회수가 적은 강화학습 방법까지 개발한 데는 명확한 이유가 있다. 자율주행 장치를 투입하는데 있어서 배를 제조한 업체나 기종을 불문하고 어떠한 유람선에서도 이용할 수 있는 형태로 제품화하고 싶었기 때문이다. 후루노전기는 유람선 자체를 제조하는 것이 아니라 어디까지 선박용 전자기기 개발 업체다. 따라서 자율주행 장치를 제품화한다면 특정 선박으로 한정하는 것이 아니라 광범위한 타입의 선박에서 이용할 수 있도록 하는 편이 시장성이 높다고 판단했다.

일반적으로 심층학습 베이스의 강화학습을 로봇이나 자동차 등의 하드웨어 제품에 실장해 실용화하려고 할 경우, 미리 업체가 개발 단계에서 방대한 시행착오를 통한 학습을 실시, 충분한 학습을 마치고 ‘스마트해진 상태’의 제어기를 제품에 내장해 출하하는 형태를 생각할 수 있다. 가령 로봇이나 자동차 등 제어대상(플랜트)이 되는 물체의 다이내믹스가 기종 별로 다르다면, 그러한 기종별 학습도 업체 내에서 마쳐야 한다. 다수의 시행착오가 필요한 심층학습 베이스의 강화학습 기술의 특성을 고려하면, 제품 출하 후, 유저에게 “현장에서 스스로 학습을 실시해 주세요”라고 맡기는 것은 현실적이지 않기 때문이다.

그러나 강화학습 기술을 제품에 적용한다고 해도, 시행착오의 횟수가 적어도 된다면 반드시 업체 측에서 출하 전에 학습을 완전하게 끝내 둘 필연성은 없다. 제품을 도입한 현장에서 유저가 직접 약간의 시행착오 학습을 실시해 유저의 환경에 맞춰서 미세 조정하는 방법도 가능하다. 후루노전기는 선박용 전자기기 업체라는 자사의 사업을 고려, 이 형태를 상정하고 시행 횟수가 적은 강화학습 기술을 새롭게 개발했다. 또한 심층학습 기술을 사용할 경우라도 특정 환경에 대한 미세 조정(Domain Adaptation, 도메인 적합)을 여러 번의 시행으로 할 수 있는 ‘one-shot learning’나 ‘few-shot learning’ 등의 기술을 사용할 수 있다면, 유저 현장에서 학습시키는 것도 가능하다.

-- 조타의 자율주행은 이미 보급 --
유람선 영역에서는 선박의 진로 방향을 결정하는 키(스티어링) 조작 기능에 대해 이미 자율주행 기능이 실용화되어 보급되었다. 조타용 오토파일럿 기능이다. 후루노전기 자신도 조타 기능만의 오토파일럿은 이미 5년 이상 전부터 제품화되었다.

이러한 조타 기능만의 오토파일럿 제품에서는 후루노전기는 조작 대상인 선박의 제조원이나 기종을 특별히 한정하지 않고, 기본적으로 어떠한 업체의 배나 기종에서도 사용할 수 있도록 하고 있다. 따라서 이번처럼 조타뿐 아니라 엔진 스로틀(엑셀)의 조작까지 포함한 풀 자율주행 장치를 개발하는데 있어서도 이 기본 방침을 이어받아 업체나 선박 종류를 불문하고 사용할 수 있도록 하고 싶었기 때문에 강화학습 기술을 신규로 개발했다.

선박 업체나 종류를 불문할 경우, 자율주행 장치의 개발 단계에서 세상의 모든 배에 대응시키는 것은 어렵다. 때문에 제품 출하 후에 유저가 강화학습을 통해 시행 착오를 실시, 유저가 보유하고 있는 선박의 특성에 맞춘 양질에 안전한 제어기를 완성해야 한다.

이러한 제품 형태를 상정하면, 고효율의 학습 샘플과 적은 시행 횟수로 학습을 끝낼 수 있는 강화학습 기술이 필수였다. 때문에 후루노전기와 NAIST는 ‘Gaussian process(가우스 과정)’이라고 불리는 기계학습 기술을 제어공학 분야에서 실적이 있는 ‘MPC(Model Predictive Control)’ 방법과 조합해 SPMPC라는 강화학습 기술을 개발했다.

-- 조류 흐름 등 외부 요인이 강한 해상 --
후루노전기가 SPMPC라는 새로운 강화학습 기술을 필요로 한 것은 선박 특유의 사정도 있다. 유람선처럼 비교적 소형의 선박 자율주행은 실은 지상을 주행하는 자동차 등의 탈것과는 근본적으로 다른 기술적 어려움이 있다. 그것이 해수의 흐름(조류), 바람 등에 의한 외부 영향을 강하게 받는 점이다. 이러한 외부 요인에 대처하기 위해 외부 요인에 강한 강화학습 방법이 필요했다.

특히 조류의 영향은 현저하다. 바람에 의한 외부 요인 자체는 자동차에서도 발생하지만 조류에 의한 외부 요인은 물이라는 유체 위에 떠서 주행하는 선박 특유의 사정이다. 자동차에서는 타이어가 접지하고 있는 도로 자체가 크게 움직이는 일은 없다. 그러나 배에서는 자중(自重)을 지탱하고 있는 해수 자체가 조류에 의해서 항상 난잡하게 움직이고 있다. 때문에 어느 지점에 배가 계속 머물러 있을 수 있도록 조종하는 것조차 “선박 조종에 숙련된 일부 사람이 아니면 어렵다”(후루노전기 기술연구소 마에노(前野) 실장).

선박이 한 곳에 계속 머무르는 것이 어려운 이유는 자유도가 적다는 점도 영향을 미친다. 기본적으로 통상의 유람선은 키 1축, 엔진 스로틀 1축의 총 2축의 자유도밖에 없다. 스티어링과 스로틀의 2축밖에 없는 점은 통상의 자동차도 마찬가지지만 자동차의 경우는 도로가 바로 옆 방향으로 아무런 전조도 없이 움직이지는 않는다. 그러나 소형 선박에서는 조류나 바람에 의해 바로 옆으로 움직이는 일은 간혹 있다. 제어를 통해 외부 요인을 액티브하게 제거하려고 해도 스티어링과 스로틀의 2축으로는 선박의 바로 옆 방향으로 직접, 힘을 작용시킬 수 있는 자유도가 없다. 때문에 한번 엔진 스로틀을 동작시켜 앞으로 진행했다가 커브를 그리며 도는 동작을 하지 않는 한 원래 위치에는 머물 수 없다.

-- 바다 낚시 등에서 정점(定点) 제어에 대한 수요 --
“넓은 바다에서 왜 그렇게까지 해서 한 곳에 계속 머물러야 할까?”라고 생각할 수도 있다. 예를 들면 유람선에서 바다낚시 등을 할 때는 한 곳에 계속 정지하는 것이 매우 중요하다고 한다. 물고기가 있다고 생각되는 해역에 계속 정지해 있는 것이다. 후루노전기의 창업 사업인 어군탐지기 등을 사용하면 바다 속에서 물고기가 많은 장소는 특정할 수 있기 때문에 그러한 정보를 바탕으로 목적한 해역에서 낚시를 한다. 유람선에서 바다낚시 등을 할 때 반드시 조종만 담당하는 사람이 있다고는 할 수 없고, 선박 소유자가 직접 조종해서 소수의 사람이 나가는 일도 많다. 그렇게 되면 낚시를 하고 있는 동안은 선박을 직접 조작할 수 없기 때문에 자동화에 대한 수요가 나오는 것이다. 또한 낚시가 아니라 통상의 크루징의 경우도 조류에 크게 휩쓸리지 않을 정도로 자동으로 한 장소에 정지해 있기를 바라는 수요도 있다.

현재의 조타 기능만의 오토파일럿 제품은, 한 곳에 정지하기 위한 제어를 할 경우 엔진 스로틀을 수동으로 ‘온’으로 하고 원호를 그리며 계속 빙빙 돌아야 하기 때문에 연료를 낭비하게 된다.

또한 일부 대형 유람선에서는 외부 요인을 제거할 수 있는 전용 액추에이터(추진기, Thruster)를 옵션으로 장착하고 있는 경우가 있다. 스크루가 달린 보조용 사이드 Thruster를 장착하거나 360도 회전할 수 있도록 하는(azimuth thruster) 등 스티어링과 메인 엔진의 2축만으로는 완전히 제거할 수 없는 외부 요인을 직접 흡수하는 시스템이다. 옆 방향으로 이동할 수 있기 때문에 항구 내에서의 접안과 이안 등에도 도움이 된다.

그러나 그러한 추가 Thruster를 전제로 한다면 자율주행 장치의 비용이 커진다. 추가 Thruster 없이 통상의 2축만으로 한 곳에 정지하는 등의 자율주행을 실현할 수 있다면 비용도 싸진다. 또한 거의 모든 선박에 대응할 수 있기 때문에 후루노전기는 이 방식을 선택했다. 그러나 추가 Thruster 없이 키와 스로틀의 2축만으로 선박의 자율주행을 실현하는 것은 기술적인 장벽도 높기 때문에 현재로서는 2축만으로 오토 파일럿을 실현하는 제품은 시판되지 않고 있다.

-- 센서 정보에서 2축을 조작 --
-- 환경의 다이내믹스를 획득 --
-- 모델에 가우스 과정을 이용 --
-- GP 훈련 후에 강화학습을 실시 --
-- 후반은 MPC와 등가 조작 --
-- 지적인 조종 동작이 출현 --


 -- 끝 --

목차