인공주능조

cdc wiki
인공주능 (토론 | 기여)님의 2019년 6월 22일 (토) 23:26 판 (관련사업비 내역서)
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : AI를 이용한 지능형 해군 전술 시스템 개발

영문 : Development of Navy Tactical System based on AI

과제 팀명

인공주능

지도교수

김성환 교수님

개발기간

2019년 3월 ~ 2019년 6월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터과학부·과 2014920001 강지연(팀장)

서울시립대학교 컴퓨터과학부·과 2015920026 손진아

서울시립대학교 컴퓨터과학부·과 2015920050 조수연

서울시립대학교 컴퓨터과학부·과 2015920053 채승연

서론

개발 과제의 개요

개발 과제 요약

하드웨어를 중점으로 했던 기존의 무기체계 체계에서 벗어나 AI 기술을 도입한 미래 국방 분야 신기술 및 핵심기술 개발을 목표로 한다. 기존 무기체계에 기계학습, 데이터마이닝, 빅데이터 등의 AI를 중점적으로 결합한 Lethal autonomous weapons (LAWs)에서 목표 대상 인식, 움직임 예상, 최적의 이동 경로 탐색, 공격 최적성 계산 알고리즘을 도입하여 해군 전술 시스템을 개발한다.

개발 과제의 배경

인공지능은 AlphaGo의 출현으로 최소 10년의 기술발전을 했다. 이를 통해 인공지능은 인류의 새로운 지시 영역을 개척하고 진리를 발견할 수 있게 도울 것이며 의료, 무인자율주행차, 스마트폰 등 사회의 여러 방면에서 개발 도입 될 것으로 예상한다.

방위사업청과 국방기술품질원은 2017년 말 4차 산업혁명에 대응하고 첨단 국방을 주도하기 위한 미래 국방기술과 신개념 무기체계를 발표했다. 인공지능, 무인로봇, 사이버보안, 신소재 등의 기술 분야 기반으로, 특히 미래의 전쟁은 인공지능과 딥러닝에 의해 과거와는 다른 양상으로 전개될 것이라고 예상했다. 현재도 간단한 AI 기술을 이용한 유도 무기나 미사일 방어체계가 사용되고 있다. 앞으로 AI를 사용한 무기체계의 발달로 인간보다 정확한 정찰, 공격 및 방어 임무가 수행될 전망이다.

자율능력을 갖춘 인공지능은 인간에게 불가능한 지속적인 감시와 초 단위의 의사결정에서 높은 가치를 지닌다. 이런 국방 영역에서 자율능력 무기체계의 도입은 과거 무기체계 패러다임을 깬 혁신적인 임무 수행 능력의 향상을 가져올 것이다. 우리는 자율능력을 갖춘 무기체계도입의 중요성과 인공지능에 대한 이해를 바탕으로 4차 산업혁명을 이끌어갈 개발자로서 현재 기술의 문제점을 개선한 무기체계를 개발하고자 한다.

개발 과제의 목표 및 내용

◇ 목표
AI 기술을 중점으로 기계학습, 데이터마이닝, 빅데이터를 이용해 기존 무기체계에 대상 인식, 움직임 예상, 최적의 이동 경로 탐색, 공격 최적성 계산 알고리즘을 도입하여 해군 전술 시스템을 개발

◇ 내용
- 학습 성능 모니터링
- 데이터 전처리 및 인덱싱
- 표적 정보처리(방향, 위치)
- 상황 판단 및 조치 알고리즘

그림1.개발과제의 내용


관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

*전 세계적인 기술현황

◇ 세계 동향

미국, 중국, 캐다 등 많은 국가가 AI 원천기술 관련 정책을 발표하며 연구센터 유치 경쟁과 정부의 주도로 기술개발을 시도하고 있다. 간단한 AI 기술은 이미 유도 무기나, 미사일 방어체계 등에 사용되고 있으며, 앞으로도 무인기나 무인잠수정 등이 인간보다 더 정확하게 정찰, 공격 임무 등을 수행하게 될 전망이다. 보스톤 컨설팅은 군사용 로봇 시장이 2015년 69억 달러에서 2025년 150억 달러로 연평균 8% 성장할 것으로 전망하고 있고, 군사용 드론 시장도 2016년 대비 2020년 70억 달러가량 시장이 확대될 것으로 전망된다.

◇ Advanced Targeting and Lethality Automated System (ATLAS)
지상 전투차량이 데이터를 습득, 인식하고 인간보다 3배 빠르게 목표물에 다가가는 것을 목표로 하는 무기체계이다. 미군에서는 컴퓨터 비전과 인공지능/딥러닝을 발전시켜 향상된 센서와 처리 그리고 화재 제어 능력을 이 무기체계에 통합할 계획이다.


◇ AlphaGo

인공지능 바둑 프로그램으로 데이터 학습이 필요 없을 뿐만 아니라, 점점 강해지는 자신과의 게임을 반복하면서 스스로 빅데이터를 구축한다. 심층신경망(DNN, Deep Neural Network)이 몬테카를로 트리 탐색(MCTS, Monte Carlo Tree Search)을 통해 선택지 중 가장 유리한 선택을 하도록 설계되었다. 여러 프로기사와의 대국을 통해 인공지능의 새 장을 열었다는 평가를 받았으며, 기존의 통념을 깨뜨리는 창의적인 수와 대세관으로 패러다임이 바뀔 것으로 전망했다.

◇ M-SAM

레이더를 통해 요격하는 중거리 미사일이다. 발사 명령을 내리면 미사일이 튀어나와 적기의 좌표를 업데이트 받아 지속적으로 자세를 바꾼다. 적기와 충분히 가까워지면 자체레이더를 켜고 능동레이더 유도방식으로 유도된다.

*특허조사 및 특허 전략 분석

◇ 잠수함의 지능형 무인 수중 자동항해 시스템과 잠수함의 무인 수중 자동항해를 제어하는 방법(KR101188630B1)

수중 자동항해 소형 잠수함이 자동 능동형으로써 잠수 및 부상이 자유롭고 주변 환경에 따라 자율적 항해하고 상업적이거나 군사적인 임무를 수행하도록 하여 자동 복귀하는 잠수함의 지능형 무인 수중 자동항해 시스템이다.


◇ 이동물체의 거리와 이동 방향을 제공하는 인공지능형 영상경비 시스템(KR100492148B1)

이동물체의 거리와 이동 방향을 제공하는 인공지능형 영상경비 시스템으로 조건설정에 의하여 자동으로 이동물체를 감지하고 이동물체를 추적하면서 이동물체에 대한 정보를 제공한다.

◇ 멀티 에이전트 기술 기반의 지능형 의사결정 실험 시스템(CN101615265B)
컴퓨터의 교차 영역에 속하는 다중 에이전트 기술을 기반을 둔 의사결정 시뮬레이션 시스템으로 인공지능과 경험적 방법론 개발을 사용한 의사결정을 지원한다.

◇ Mastering the game of Go with deep neural networks and tree search

프로 바둑 기사를 이긴 최초의 컴퓨터 바둑 프로그램, 알파고에 사용된 특허이다. 바둑에 인공지능을 적용하여 자가학습을 할 수 있도록 만든 알고리즘이다.


◇ 전술 개념을 이용한 알고리즘 아이디어 기술

인공지능은 구체적인 기술구현이 없어도 아이디어만으로도 특허 출원이 가능하다. 그러므로 운용 중인 이지스 전투체계를 포함한 국내 개발 전투체계는 일부 기능(무장통제 및 할당 중심의 기술적 영역)에 우선하여 구현된 장비 운용 중심의 접근방식으로, 전술 개념을 추가하여 구체화한다.


◇ 종래 기술대비 진보한 부분 특정

기술 개발 시에 Open source를 활용했다면 수정, 편집, 추가되는 부분을 특정하여 특허로 출원할 수 있으며 응용 방법을 특정하는 방법도 있다.


◇ Open source로 등록

개발한 AI 기술을 Open source로 공개하여 시장 영향력을 확대하고 라이선스 사용을 명시하고 규정을 강화한다.


*기술 로드맵

그림2.기술로드맵

시장상황에 대한 분석

  • 경쟁제품 조사 비교

경쟁상품조사비교.JPG

  • 마케팅 전략 제시

◇ 국내 무기 체제 기술 확보
SIPRI Arms Transfer Database에 따르면 한국은 세계 무기체계 주요 수입국으로 5위를 차지하며 국외 업체에 의존도가 높게 나타났다. 무기체계에 소프트웨어 국산화를 통해 무기체계의 가동률 증가, 운영 유지비 절감, 국제 경쟁력 강화 등 많은 이점을 가질 수 있다. 나아가 무기체계 산업의 기술 연구개발 확대는 국내업계의 글로벌 사업기회 창출 등 방산수출에 긍정적 역할을 수행하고 방위 산업을 수출형 구조로 전환함으로써 국제 경쟁력 강화의 효과를 기대한다.


◇ 높은 확장성

기존 소프트웨어와 통합/융합 용이성을 높여 해당 소프트웨어의 높은 확장성을 가지도록 한다.


◇ SWOT 분석

Strengths
- AI 기술이 급속도로 발전하고 있음
- AI의 적용 분야가 광범위함

Weaknesses
- 보다 많은 국방 예산 필요
- 국방비 지출 비용이 다른 나라에 비해 현저히 낮음
- 국외 무기 업체 수입 의존도가 높음

Opportunities
- 국내 무기체계 산업의 시장 규모는 나날이 증가할 것으로 보임
- 국내 무기를 수입하는 주요 국가의 국방 예산 지출이 증가축에 있음
-AI 등을 적용한 첨단 무기 개발 시장 확대 전망

Threats
- 적용 분야가 전투 분야이기 때문에 연구 경계가 불분명할 시 대내외적 질타를 받을 가능성 존재

개발과제의 기대효과

기술적 기대효과

◇ 군 무기의 정밀 타격 능력 향상

날씨나 지역적 요인의 제한사항을 극복하여 목표물 확보가 가능하고, 인간보다 빠르게 인지하고 분석할 수 있는 알고리즘으로 정확성을 향상할 수 있다. 실제로 인간이 항공 이미지의 20~30%의 정확성을 보이지만, Shark Spotter라는 AI 드론은 90% 이상의 정확성을 보였다.

◇ 다양한 시나리오 분석 환경 구축

함정 무장 등 사용이 제한 여부, 대응 세력의 종류, 신규 무기체계/미식별 접촉물에 대한 전술 등의 각종 상황에 대한 전술적 대비를 할 수 있어 전투발전에 기여할 수 있다. 특히 정형화된 작전 수행 기념이 아닌 학습 때문에 누적된 경험과 현재 상황을 고려한 다양한 전술 구사가 가능해진다. 인공신경망을 이용하여 방어 지속능력 및 전투결과를 예측한 결과 88.2%의 예측정확도를 보였기에 이를 적용하면 증가할 것으로 보인다.

◇ 각종 무기체계의 Infra 구축

전투함정만이 아니라 전투기, 탱크, 무인기 등에도 적용 가능하므로 합동작전 수행능력의 향상이 예상된다.


경제적, 사회적 기대 및 파급효과

◇ 경제적 파급효과
- 군전력승수 증가 : 적은 전투원을 이용해 각각의 전투력을 올리면서 임무를 수행할 수 있다. 또한 위험한 임무에서 사상자를 줄이고, 사람이 가지 못하는 지역에서도 수행이 가능하다.
- 장기적 비용 절감 : 아프가니스탄에서 각 군인당 $850,000을 연간 지불했으나 TALON(원격 조종 차량 군사 로봇)을 사용했을 때, $230,000으로 예산을 감소시켰다.

◇ 사회적 파급효과
- 감정적 범죄 탈피 : 전투원들의 정신적 부담을 줄여주어 본인의 생명을 지키기 위한 무차별 발사와 같은 추가적인 범죄에서 벗어날 수 있다.
- 민간 피해 최소화 : 민간인 시설이나 민간인을 구분할 수 있기 때문에 궁극적으로 민간인의 피해를 줄일 수 있으며 지리적인 경계, 시간을 선택할수 있어 민간인과 비전투원의 생명을 안전하게 할 가능성이 높다.

기술개발 일정 및 추진체계

개발 일정

내용

구성원 및 추진체계

내용

설계

설계사양

제품의 요구사항

◇ 목적 계통도

AI 무기체계인 LAWs를 개발하기 위해선 정확성, 신속성, 실용성, 현실성을 고려해야 한다. 정확성은 아군과 적군의 이동 방향 예측, 미사일 요격 부분으로 나눌 수 있고, 신속성은 아군의 이동과 방어, 상황 판단으로 구분할 수 있다. 실용성은 이 프로그램을 군사 훈련으로 이용할 수 있어야 한다는 것이고, 현실성은 상황가정, 시뮬레이션 결과, 지형이나 날씨와 같은 환경 프로그램에 적용을 생각할 수 있다.

목적계통도

설계 사양

내용

개념설계안

내용

이론적 계산 및 시뮬레이션

프로그램 시작 시 선택한 초기값을 배경으로 전투함의 위치 이동속도와 방향이 랜덤으로 주어진다. 현재 위치로부터 Kalman filter와 AlphaGo-Zero를 통해 결정된 최적의 미사일 사격 지점으로 가는 최단 경로를 계산한다. 적의 움직임을 Kalman filter로 분석하고 적의 향후 움직임 예측은 Alpha-Zero 알고리즘과 Softmax를 사용한다. 전반적인 시스템은 아군이 승리할 때까지 실시간 자가학습을 통해 반복된다.


가. A* 알고리즘

◇ 정의

다익스트라 알고리즘을 차용한 것으로 지정된 시작 노드에서 목적 노드까지 가는 최단 경로를 찾아내는 그래프/트리 탐색 알고리즘이다. 주로 게임 프로그램에서 많이 사용되는 최단 거리 길찾기 알고리즘으로 최소가 되는 지점을 우선 탐색 후 휴리스틱 추정값을 사용하여 경로 결정 후 Open List/ Closed List를 이용하여 노드를 관리한다.


◇ 휴리스틱 추정값 : f(x)=h(x)+g(x)

- h(x) : 출발 노드 n으로부터 도착 노드 N까지의 경로 가중치
- g(x) : 노드 n으로부터 목표 노드까지의 추정 경로 가중치 (도착 노드까지의 예상 이동 비용)


◇ Open List / Closed List

- Open List : 검색 가능성이 있는 노드의 집합
- Closed List : 이미 검색이 끝난 지점들의 집합


◇ 탐색 우선 순위

- Open List 내의 f(x) 가중치 값이 가장 노드부터 탐색

나. AlphaGo 알고리즘

◇ Supervised learning

서버에 여러 전투전략을 등록시켜 회선신경망(CNN, Convolutional Neural Networks)으로 학습하고 목표물의 위치 정보와 패턴을 파악해 목표물의 다음 위치를 예상하며 최적의 위치를 계산한다.


◇ Policy networks and Value networks

AlphaGo는 전문 바둑 기보를 학습하며 AlphaGo LEE는 자가학습을 하여 규칙상 착수 가능한 모든 수에 대해 착수 선호도를 산출한다. 이 값을 MCTS를 이용하여 확장하고, 트리의 폭을 줄여 적의 움직임을 예측한다. 그 후, Tensorflow로 최적화한 Neural Network를 함께 이용하여 예측 정확성을 높인다. 예상할 수 있는 각 단계를 승리를 예상하면 1로, 패를 예상하면 -1로 분류하여 승률을 계산한다.


◇ 몬테카를로 트리 탐색 (MCTS, Monte Carlo Tree Search)

알파고의 주된 알고리즘은 몬테카를로 트리 탐색이다. 몬테카를로 트리 탐색은 최소-최대 (Minimax) 알고리즘의 성능을 개선한 것으로 모든 경로를 탐색하기가 불가능한 상황에 효율적이다. 몬테카를로 트리 탐색의 절차는 선택(Selection), 확장(Expansion), 시뮬레이션 (Simulation), 역전파(Backpropagation)라는 과정을 거친다.


[그림 2] 몬테카를로 트리 탐색(MCTS, Monte Carlo Tree Search)


다. Alpha Zero 알고리즘 : 최적의 공격 지점 분석을 위해 사용

기존의 AlphaGo Lee와 Alpha zero와의 차이점은 supervised learning 단계의 유무라고 볼 수 있다. 수정된 Alpha zero 알고리즘은 self play만으로도 빠르게 학습하고 효과적이기 때문에 기존의 바둑이 아닌 다른 게임 알고리즘에도 수정 없이 그대로 적응 가능하다는 장점이 존재한다. supervised learning의 생략으로 학습 속도가 현저히 느릴 것으로 생각할 수 있으나 alpha zero는 그 예상과는 다른 Elo Rating 상승 추이를 보여준다.


[그림 3] AlphaGo Zero의 Elo Rating 상승추이

◇ Reinforcement learning

Random play의 자가학습을 통해 Reinforcement learning을 활용하여 학습한다.


◇ Feature map 사용

기존 AlphaGo는 흑돌, 백돌을 포함 한 눈, 활로, 꼬부림 등 48가지 특징을 활용했지만, Alpha Zero는 흑돌과 백돌 두 가지만을 활용하여 더 단순한 접근방법을 취했다.


◇ 인공신경망 형태와 구조 변경

Policy networks와 Value networks를 하나로 합친 형태를 활용했다. 인공신경망 구조는 gradient vanishing 현상을 개선한 Residual Network를 활용하는 것으로 변경했다.

◇ Decision Tree 탐색 기법 개선

기존 AlphaGo의 MCTS는 랜덤 시뮬레이션 단계에서 롤 아웃(rollout) 정책을 활용했다. 롤아웃은 policy network와 유사하지만 빠른 속도로 시뮬레이션하기 위해 고안된 간단한 정책이다. 하지만 바둑을 지나치게 단순화한 경향이 있어 AlphaGo Zero에서는 롤 아웃을 활용하지 않았다. 대신, 랜덤 시뮬레이션의 정책으로 앞서 residual network를 적용했다. 인공신경망 기술 기반의 정책은 롤 아웃보다 훨씬 많은 계산을 요구하지만, 정확도가 향상되는 장점이 있다.

라. Softmax function : 분석한 확률을 일반화하여 향후 이동 지점을 결정할 때 사용

◇ 정의

다중 class 문제에서 각 score를 0과 1 사이의 값으로 노말라이즈하는 함수이다. 이 결과로 확률 범위로 나오며 모든 확률을 더하면 1이 된다. 확률이 가장 큰 class가 target class가 된다.


[그림 7] Softmax의 예시


마. Extended Kalman Filter : 적군 및 아군 함선 움직임 예측

◇ 정의

전투함정의 움직임은 비선형적이기 때문에 자연계의 선형적인 모델에만 적용가능한 Kalman filter에 비선형적인 요소를 확장한 Extended Kalman filter(EKF)를 통해 구현한다. EKF 사용 시, 자연계의 움직임은 어느 정도 예측이 가능하며 일반적 움직임 물성을 가지는 것은 당연하게 예측할 수 있다. EKF는 재귀적으로 동작한다. 누적된 데이터와 현재 얻을 수 있는 최선의 데이터로 현 상태를 추정한다. 각 추정 계산은 예측(Prediction) 단계, 보정(Update) 단계로 이루어진다.

◇ 활용

프로젝트의 중요한 목표 중 하나는 함선이 환경적인 측면에 맞춰 미션을 수행하는 것이다. 또한, 실제 함선의 움직임과 비슷하게 설계하는 것이 중요하다. 따라서, 비선형적인 함선의 움직임을 예측하고 설계하고자 EKF를 다음 두 미션에 활용했다.
- 상대방 이전 위치 기반 움직임 예측
- 아군 함선 장애물 회피 및 경로 설정

◇ EKF Design

General Motion Equations
x(tn)=x(t0) + t0tnv(t)*cos(t)dt(1)
y(tn)=y(t0) + t0tnv(t)*sin(t)dt (2)
(t : time, : direction of the ship, v : velocity)

(1)과 (2) 식은 함선의 속도에 영향을 받는다. 속도인 v(t)는 초기값인 v0와 t0에 영향을 받고 가속도에도 영향을 받는다. 마찬가지로 로봇이 방향인 (t)는 초기 각도인 (t0)와 초기 회전 속도, 회전 가속도에 영향을 받는다. v(t0), (t0), (t0) 와 가속도인 v(t), (t)를 대입하면 다음과 같은 식을 얻을 수 있다.
x(tn)=x(t0) + t0tn(v(t0) + t0tv(t)dt )*cos((t0)+t0t((t0)+t0t(t)dt)dt )dt(3)
위와 마찬가지로 y(tn)에 대한 식을 구한 뒤, 함선의 최대속도, 최대 회전가속도, 현재상태 등을 고려해 목표지점으로 나아간다. 아래는 이를 적용한 모습이다.



Approximate Motion Equations


[그림 6] 다른 전함이나 장애물의 위치를 피해 목표 지점으로 가는 경로

상세설계 내용

가. Class Diagram

◇ 전투 모드 software

<game.py>
GridSet(),GameState(),Game()으로 구성되어 있다.
-grid_update: 각 전함의 미사일 발사 가능 범위를 원으로 표시
-grid_update_2: 전함의 이동경로를 보여줌
-movement_update: 다른 함선들을 장애물로 인식하고 피해가며 설정한 목표 지점까지 움직이게 함
_checkForEndGame: 게임이 끝났는지 확인
-_getValue: 현재 플레이어의 상태를 확인
-takeAction: 이동할 위치를 그리드상에 반영
-_checktokill: 미사일 반경안에 상대방 위치가 들어와 있다면 상대방 공격

<funcs.py>
-playMatchesBetweenVersions, playMatches: 두개의 agent가 서로 경기를 진행

+)run.py에서 self match가 진행되는데 만약 self match가 아니고, 상대방을 직접 입력하고 싶다면 아래와 같이 입력해주면 됨

from game import Game
from funcs import playMatchesBetweenVersions

import loggers as lg
env = Game()
playMatchesBetweenVersions(
env
, 1 # the run version number where the computer player is located
, -1 # the version number of the first player (-1 for human)
, 12 # the version number of the second player (-1 for human)
, 10 # how many games to play
, lg.logger_tourney # where to log the game to
, 0 # which player to go first - 0 for random
)


[그림 8] Class Diagram


◇ Keras를 이용한 residual convolutional network 예시

주된 학습 방법은 R-CNN으로 소프트웨어에는 신경망의 인스턴스를 만드는 방법을 정의하는 Residual_CNN 클래스가 포함되어 있다.


[그림 9] Residual convolutional network



다. UI 설계

◇ 그리드는 90 X 180을 기본으로 한다.
◇ 처음 실행을 하면 아군은 왼쪽에 파란색으로, 적군은 오른쪽에 빨간색으로 위치가 나타난다.
◇ 사격 범위를 원으로 정하며 사격 당한 전함은 그리드 상에서 사라진다.


[그림 9] UI 화면 예시 - 초기 전함의 위치와 사격 범위


[그림 00] UI 화면 예시 - log 파일

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

내용

포스터

인공주능포스터.jpg

관련사업비 내역서

인공주능개발정산비.jpg

완료작품의 평가

내용

향후계획

내용

특허 출원 내용

내용