KR102062900B1 - 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치 - Google Patents

다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치 Download PDF

Info

Publication number
KR102062900B1
KR102062900B1 KR1020190075782A KR20190075782A KR102062900B1 KR 102062900 B1 KR102062900 B1 KR 102062900B1 KR 1020190075782 A KR1020190075782 A KR 1020190075782A KR 20190075782 A KR20190075782 A KR 20190075782A KR 102062900 B1 KR102062900 B1 KR 102062900B1
Authority
KR
South Korea
Prior art keywords
point
mission
path
route
arrival
Prior art date
Application number
KR1020190075782A
Other languages
English (en)
Inventor
장환철
이호형
변진구
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020190075782A priority Critical patent/KR102062900B1/ko
Application granted granted Critical
Publication of KR102062900B1 publication Critical patent/KR102062900B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/003Flight plan management
    • G08G5/0034Assembly of a flight plan
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/0047Navigation or guidance aids for a single aircraft
    • G08G5/0069Navigation or guidance aids for a single aircraft specially adapted for an unmanned aircraft

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일실시예는, 임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산하고 구간 경로 비용을 기초로 제1 경로 계획을 생성하는 단계와, 도착점을 변경한 후, 도착점의 변경 전의 제1 경로 계획을 재사용하여 제2 경로 계획을 생성하는 단계와, 도착점을 이전에 선택하지 않은 도착점들로 변경하면서 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 제1 경로 계획과 제2 경로 계획들을 기초로 초기 경로 계획을 생성하는 단계와, 우선순위 대기열을 재정렬하며 제1 경로 계획을 재생성하는 단계와, 도착점을 변경하면서, 생성된 제1 경로 계획들을 기초로 초기 경로 계획을 재계획하는 단계를 포함한다.

Description

다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치{SEQUENTIAL PATH PLANNING METHOD FOR VISITING MULTIPLE MISSION POINTS AND APPARATUS THEREFOR}
본 발명은 무인 이동체의 다중 임무점 방문을 위한 경로를 계획하는 방법 및 장치에 관한 것으로서, 보다 상세하게는 다중 임무점 방문 계획을 보다 신속하게 할 수 있는 다중 임무점 방문을 위한 경로 계획 방법 및 그 장치에 관한 것이다.
무인 이동체(이하, "무인기" 라고 함)의 비행시간이 늘어나면서 무인기를 활용한 다중 임무 수행에 대한 관심이 커지고 있다. 동적 변화 임무환경에서 무인기가 자율적으로 다중 임무를 수행하기 위해서는 다중 임무점들의 방문경로를 효율적으로 계획하는 경로 계획 알고리즘이 필요하다.
경로 계획 알고리즘의 성능은 경로의 최적성(예를 들어, 경로 비용)과 계산량(예를 들어, 탐색 시간)으로 결정된다. 다익스트라 알고리즘(Dijkstra A*, D*)과 같은 그리드(Grid) 기반 경로 계획 알고리즘은 경로의 최적성은 보장되지만, 확률론적 로드맵(Probabilistic Roadmap: PRM), 고속 탐색 랜덤 트리(Rapidly exploring Random Trees: RRT)에 비해 탐색 시간이 오래 걸려 실시간성이 떨어진다는 단점이 있다.
애니타임(anytime) 경로 계획 알고리즘은 기존 격자(grid) 기반 경로 계획 알고리즘의 단점을 개선하여 짧은 시간 안에 비최적성의 상한(suboptimality bound)이 보장된 경로를 도출할 수 있다. 애니타임(anytime) 경로 계획 알고리즘은 비최적성의 상한을 줄여가면서 경로 비용이 더 작은 탐색 결과를 반복적으로 도출한다. 이에 따라, 사용자는 실시간으로 현재까지 도출된 탐색 결과들 중 가장 비최적성이 작은 경로를 사용할 수 있다. 특히, 애니타임(anytime) 경로 계획 알고리즘 중 애니타임 디 스타(anytime D*) 알고리즘은 동적 변화 환경에서 효율적인 경로 탐색이 가능하다는 장점이 있다.
그러나, 종래 애니타임 디 스타(anytime D*) 알고리즘은 임무 시작점 및 도착점이 각각 한 개인 단일 경로 계획 알고리즘에 불과하여 다수의 임무점을 방문해야 하는 상황에 적용함에 있어 비효율적이라는 단점이 있다.
KR 10-0915527 B1 KR 10-1917860 B1
본 발명은 다수의 임무점을 방문해야 하는 상황에서 경로의 비최적성의 상한을 보장하면서도 보다 신속하게 경로 계획을 연산할 수 있는 다중 임무점 방문을 위한 경로 계획 방법 및 장치를 제공하는 데에 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법은 다중 임무점 방문을 위한 경로 계획 장치에 의해 수행되는 다중 임무점 방문을 위한 경로 계획 방법으로서, 임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산하고 상기 구간 경로 비용을 기초로 제1 경로 계획을 생성하는 단계 및 상기 도착점을 변경한 후, 상기 도착점의 변경 전의 상기 제1 경로 계획을 재사용하여 제2 경로 계획을 생성하는 단계 및 상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 상기 제1 경로 계획과 상기 제2 경로 계획들을 기초로 초기 경로 계획을 생성하는 단계를 포함한다.
상기 제1 경로 계획을 생성하는 단계는 상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 하나를 도착점으로 설정하고, 상기 도착점 리스트 중 상기 도착점으로 설정하지 않은 임무점들과 상기 임무 시작점을 포함하는 출발점 리스트 중 하나를 출발점으로 설정하여 최초의 구간 경로 계획을 생성하는 단계와, 이전 구간의 도착점은 유지한 상태에서, 상기 출발점을 상기 출발점 리스트 중 상기 이전 구간의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점으로 변경한 다음 구간에 대하여 상기 이전 구간의 구간 경로 계획 정보를 재사용하여 다음 구간에 대한 구간 경로 계획을 상기 출발점 리스트의 잔여 출발점에 대하여 각각 수행하는 단계를 포함한다.
상기 제2 경로 계획을 생성하는 단계는, 상기 도착점을 제1 도착점에서 제2 도착점으로 변경하는 단계와, 상기 도착점의 변경 전의 상기 제1 도착점에서 상기 제2 도착점까지의 경로 비용을 보정값으로하여, 상기 도착점의 변경 후의 상기 제1 도착점 및 상기 제2 도착점 사이의 경로 비용을 보정하는 단계와, 상기 보정값에 의한 상기 제1 도착점의 구간 경로 비용의 증가 또는 감소 비용을 기초로 상기 제1 도착점과 상기 제1 도착점에 대응하는 각각의 상기 출발점들 사이의 구간 경로 비용을 보정하는 단계를 포함한다.
상기 구간 경로 계획 정보는, 상기 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 상기 도착점부터 상기 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보 및 상기 도착점으로부터 하나씩 확장될 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 하나의 정보를 포함한다.
상기 우선순위 대기열에 대한 정보는, 도착점으로부터 상기 임의 셀까지의 최적 경로 비용, 출발점으로부터 임의 셀까지의 어림값에 가중치를 부여한 값 중 적어도 하나를 기초로 연산된다.
본 발명의 다중 임무점 방문을 위한 경로 계획 방법은, 상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 어느 하나의 도착점에 대하여, 상기 가중치를 단계적으로 감소하고, 상기 가중치의 단계적 감소에 대응하여, 상기 우선순위 대기열을 재정렬하며, 재정렬된 상기 우선순위 대기열을 기초로 상기 제1 경로 계획을 재생성하는 단계 및 상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제1 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 생성된 제1 경로 계획들을 기초로 상기 초기 경로 계획을 재계획하는 단계를 더 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 다중 임무점 방문을 위한 경로 계획 장치는 다중 임무점 방문을 위한 무인 이동체의 경로를 계획하는 장치로서, 임무 시작점, 복수의 임무점 및 임무 종료점을 포함하는 임무점에 대한 정보를 입력 받는 입력부와, 상기 다중 임무점을 방문하기 위한 경로 계획을 출력하는 출력부와, 상기 임무점에 대한 정보에 기초하여 상기 경로 계획을 연산한 후, 상기 출력부를 제어하여, 상기 경로 계획을 출력하는 제어부를 포함하고, 상기 제어부는 임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산하고 상기 구간 경로 비용을 기초로 제1 경로 계획을 생성하고, 상기 도착점을 변경한 후, 상기 도착점의 변경 전의 상기 제1 경로 계획을 재사용하여 제2 경로 계획을 생성하고, 상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 상기 제1 경로 계획과 상기 제2 경로 계획들을 기초로 초기 경로 계획을 생성한다.
상기 제어부는 상기 제1 경로 계획을 생성하는 경우, 상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 하나를 도착점으로 설정하고, 상기 도착점 리스트 중 상기 도착점으로 설정하지 않은 임무점들과 상기 임무 시작점을 포함하는 출발점 리스트 중 하나를 출발점으로 설정하여 최초의 구간 경로 계획을 생성하고, 이전 구간의 도착점은 유지한 상태에서, 상기 출발점을 상기 출발점 리스트 중 상기 이전 구간의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점으로 변경한 다음 구간에 대하여 상기 이전 구간의 구간 경로 계획 정보를 재사용하여 다음 구간에 대한 구간 경로 계획을 상기 출발점 리스트의 잔여 출발점에 대하여 각각 수행한다.
상기 제어부는 상기 제2 경로 계획을 생성하는 경우, 상기 도착점을 제1 도착점에서 제2 도착점으로 변경하고, 상기 도착점의 변경 전의 상기 제1 도착점에서 상기 제2 도착점까지의 경로 비용을 보정값으로하여, 상기 도착점의 변경 후의 상기 제1 도착점 및 상기 제2 도착점 사이의 경로 비용을 보정하고, 상기 보정값에 의한 상기 제1 도착점의 구간 경로 비용의 증가 또는 감소 비용을 기초로 상기 제1 도착점과 상기 제1 도착점에 대응하는 각각의 상기 출발점들 사이의 구간 경로 비용을 보정한다.
상기 구간 경로 계획 정보는, 상기 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 상기 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보, 도착점으로부터 하나씩 확장될 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 하나의 정보를 포함한다.
상기 제어부는 도착점으로부터 상기 임의 셀까지의 최적 경로 비용, 출발점으로부터 임의 셀까지의 어림값에 가중치를 부여한 값 중 적어도 하나를 기초로 상기 우선순위 대기열에 대한 정보를 연산한다.
상기 제어부는 상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 어느 하나의 도착점에 대하여 상기 가중치를 단계적으로 감소하고, 상기 가중치의 단계적 감소에 대응하여, 상기 우선순위 대기열을 재정렬하며, 재정렬된 상기 우선순위 대기열을 기초로 상기 제1 경로 계획을 재생성하고, 상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제1 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 생성된 제1 경로 계획들을 기초로 상기 초기 경로 계획을 재계획한다.
본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법 및 장치는 다중 임무점 방문 경로 생성시 경로의 비최적성의 상한을 확보하면서도 경로 계획의 저복잡도를 보장한다.
또한, 본 발명의 다중 임무점 방문을 위한 경로 계획 방법 및 장치는 다중 임무점의 경로 계획시 기 연산된 구간 경로 계획을 재사용하여 연산량 및 데이터 저장 용량을 감소시키는 효과가 있다.
도 1은 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 장치의 내부 블록도를 예시하는 도면이다.
도 2는 다중 임무점 방문시 요구되는 구간 경로 및 구간 경로 행렬을 예시하는 도면이다.
도 3은 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법을 도시하는 순서도이다.
도 4는 본 발명의 실시예에 따른 초기 경로 계획 방법 및 경로 재계획 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 초기 경로 계획 방법 및 비최적성(ε')의 감소에 따른 경로 재계획 방법을 도시하는 순서도이다.
도 6은 본 발명의 제1 경로 계획들의 생성 방법을 설명하기 위한 도면이다.
도 7은 도 6의 설명에 참조되는 도면이다.
도 8은 본 발명의 제2 경로 계획의 생성 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 제2 경로 계획의 생성시, 경로 비용의 보정 방법을 설명하기 위한 도면이다.
도 10은 본 발명의 제2 경로 계획의 생성 시, 재사용된 경로의 비최적성(ε')이 비최적성의 상한(ε)을 만족하지 못할 경우, 애니타임(anytime) 경로 계획에 의해 경로가 다시 계획됨을 설명하기 위한 도면이다.
도 11은 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법의 의사코드(pseudo code)를 예시하는 도면이다.
도 12는 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법의 의사코드(pseudo code)를 예시하는 도면이다.
도 13은 종래 애니타임 디 스타(anytime D*) 알고리즘과 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법 및 장치의 연산량과 실행시간을 비교하는 도면이다.
실시예들에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "?부", "?모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 개시에 있어서, 오픈 리스트(OPEN list), 인컨시스턴트 리스트(inconsistent list), 클로즈 리스트(CLOSE list)는 설명의 편의를 위해 각각 제1 리스트, 제2 리스트 및 제3 리스트라고 명명할 수 있다.
본 개시에 있어서, 현재의 출발점(sstart)은 현재 출발점(spresentstart), 과거의 출발점(sstart)은 과거 출발점(spaststart)라고 명명할 수 있다. 마찬가지로, 현재의 도착점(sgoal)은 현재 도착점(spresentgoal), 과거의 도착점(sgoal)은 과거 도착점(spastgoal)이라고 명명할 수 있다.
또한, 설명의 편의를 위해, 과거의 출발점(sstart)을 제1 출발점(sstart), 현재의 출발점을 제2 출발점(sstart)이라고 명명할 수도 있다. 마찬가지로, 과거의 도착점(sgoal)을 제1 도착점(sgoal), 현재의 도착점(sgoal)을 제2 도착점(sgoal)이라고 명명할 수도 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 장치의 내부 블록도를 예시하는 도면이다.
도면을 참조하면, 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 장치(100)는 입력부(110), 출력부(120), 저장부(140) 및 제어부(130)를 포함할 수 있다.
입력부(110)는 무인기 등과 같은 무인 이동체(이하, "무인기"라고 함)의 임무 시작점, 복수의 임무점 및 임무 종료점을 포함하는 임무점에 대한 정보를 입력 받을 수 있다.
출력부(120)는 제어부(130)의 제어에 따라 무인기가 다중 임무점을 방문하기 위한 경로 계획을 출력할 수 있다. 예를 들어, 출력부(120)는 다중 임무점을 방문하기 위한 경로 계획을 사용자가 식별할 수 있도록 디스플레이와 같은 표시 수단을 통해 출력할 수 있다. 또는 출력부(120)는 다중 임무점을 방문하기 위한 경로 계획을 사용자가 청취할 수 있도록 스피커와 같은 음향 출력 수단을 통해 출력할 수 있다.
실시예에 따라, 경로 계획 장치(100)는 외부 기기와 통신하는 통신부(150)를 더 포함할 수 있고, 제어부(130)는 통신부(150)를 통해 경로 계획을 외부 기기로 전송할 수 있다.
저장부(140)는 제어부(130)에 의해 생성된 다중 임무점을 방문하기 위한 경로 계획을 저장할 수 있다. 저장부(140)는 제어부(130)가 연산한 구간 경로 비용, 초기 경로 계획, 최종 경로 계획 등을 저장할 수 있다.
제어부(130)는 입력부(110)로부터 수신한 임무점에 대한 정보에 기초하여 무인기가 다중 임무점을 방문하기 위한 경로 계획을 연산할 수 있다.
제어부(130)는 임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하여야 하는 무인기의 다중 임무점 경로에 대하여 복수의 임무점과 임무 종료점을 포함하는 도착점 리스트 중 하나를 도착점으로 설정할 수 있다. 또한, 제어부(130)는 도착점 리스트 중 도착점으로 설정하지 않은 임무점들과 임무 시작점을 포함하는 출발점 리스트 중 하나를 출발점으로 설정할 수 있다. 제어부(130)는 도착점과 출발점 사이의 경로 비용을 연산하고, 연산된 경로 비용을 기초로, 최초의 구간 경로 계획을 생성할 수 있다.
제어부(130)는 최초의 구간 경로 계획에서 설정한 도착점은 유지한 상태에서 출발점을 출발점 리스트 중 최초의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점으로 변경할 수 있다. 제어부(130)는 최초의 구간 경로 계획에서 연산된 구간 경로 계획 정보를 재사용하여 변경된 출발점에 대응하는 구간 경로 계획을 생성할 수 있다.
제어부(130)는 하나의 도착점에 대응하는 출발점 리스트에 포함된 잔여 출발점에 대하여 구간 경로 계획을 생성할 수 있다.
제어부(130)는 최초의 구간 경로 계획에서 설정한 도착점을 변경할 수 있다. 예를 들어, 제어부(130)는 도착점을 제1 도착점에서 제2 도착점으로 변경할 수 있다. 제어부(130)는 도착점의 변경 전의 제1 도착점에서 제2 도착점까지의 경로 비용을 보정값으로 연산할 수 있다. 제어부(130)는 도착점의 변경 전의 제1 도착점과 제1 도착점에 대응하는 출발점들 사이의 구간 경로 계획 정보를 재사용하여 변경된 도착점에 대응하는 구간 경로 계획을 생성할 수 있다.
제어부(130)는 도착점 리스트에 포함된 잔여 도착점에 대하여 구간 경로 계획을 생성할 수 있다.
제어부(130)는 각각의 구간 경로 계획을 기초로 초기 경로 계획을 생성할 수 있다.
제어부(130)는 애니타임(anytime) 알고리즘의 비최적성(suboptimality)을 단계적으로 감소시키면서, 초기 경로 계획을 재계획할 수 있다. 제어부(130)는 비최적성(suboptimality)이 1이 될 때까지 초기 경로 계획을 재계획할 수 있다.
한편, 초기 경로 계획은 무인기의 이동 중 동적 변화를 반영하지 않으므로, 사전 경로 계획이라고 명명할 수 있다.
제어부(130)는 무인기의 이동 중 무인기의 주위의 동적 변화를 감지한 경우, 사전 경로 계획을 재계획할 수 있다.
제어부(130)는 사전 경로 계획을 재계획하는 경우, 도착점은 같지만 출발점은 다른 모든 구간 경로 및 도착점이 변경된 모든 구간 경로에 대하여 통합된 경로 계획 정보를 사용할 수 있다. 통합된 경로 계획 정보는 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 구간 경로 비용을 사용하여 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보 중 적어도 하나의 정보를 포함할 수 있다.
제어부(130)는 경로 재계획을 수행할 때, 무인기의 이동에 대응하는 이동 보정값(km)을 사용하여, 도착점으로부터 하나씩 확장될 그리드셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열을 갱신할 수 있다.
또한, 제어부(130)는 경로 재계획을 수행할 때, 장애물이 발견되면 현재의 위치를 새로운 구간 출발점으로 설정하고 무인기의 이동에 대응하는 보정값(km)을 갱신하고 구간 도착점에 대응되는 구간 경로 비용에 대한 정보, 최적 경로 비용을 예측하는 값 및 갱신된 보정값에 기초하여 장애물로 인해 변화가 생긴 셀 간의 이동 비용을 갱신한 후 현재 무인기의 위치와 잔여 임무점들 그리고 임무 종료점 간의 경로에 대해 경로 탐색을 반복하며, 장애물을 회피하도록 임무점 방문 순서를 갱신하여 갱신된 임무점 방문 순서에 기초하여 잔여 임무점들을 방문하여 임무 종료점에 도달하는 재계획 경로를 생성할 수 있다.
본 발명에 따르면, 경로 계획에 있어서 보다 신속한 경로 계획을 위하여 애니타임 디 스타(anytime D*) 알고리즘을 이용하면서도, 다수의 임무점을 방문할 수 있는 새로운 알고리즘을 제안한다. 이에 따라, 본 발명의 경로 계획 알고리즘을 Anytime Multiple Mission D*(AMMD*)라고 명명할 수 있다.
먼저, 애니타임 디 스타(anytime D*) 알고리즘에 대해 설명하기로 한다.
애니타임 디 스타(anytime D*) 알고리즘은 경로의 비최적성의 상한(suboptimality bound, ε)이 보장되는 준최적 경로 및 최적 경로를 빠른 시간 안에 도출할 수 있는 경로 계획 알고리즘이다.
애니타임 디 스타(anytime D*) 알고리즘은 도착점으로부터 그리드셀(grid cell)을 하나씩 탐색하고 탐색된 셀(cell)의 경로 비용을 계산하여 출발점이 탐색되기까지 이 작업을 반복하여 경로와 그 경로의 비용을 산출한다. 이때 셀(cell)들 간의 탐색 순서는 셀(cell)의 현재 경로 비용과 함께 남은 경로 비용의 어림값에 비최적성의 상한(ε)을 곱한 값을 사용하여 통합 비용이 작은 순으로 한다. 애니타임 디 스타(anytime D*) 알고리즘은 동적 변화 환경에서 비최적성의 상한(suboptimality bound, ε)이 보장되는 경로 계획 및 경로 재계획을 효율적으로 수행하여 출발점과 도착점 사이의 경로를 생성한다.
이러한 애니타임 디 스타(anytime D*) 알고리즘에서 각 셀 s는 비용값으로 g(s)와 rhs(s)를 갖는다.
g(s)는 도착점 거리(goal distance)라고 부르며 도착점으로부터 s까지의 경로 비용이며, rhs(s)는 s에 인접한 셀(adjacent cell) s’의 g(s’)를 사용하여 s까지의 최적 경로 비용을 예측하는 값이다.
g(s)는 해당 cell의 탐색(cell expansion) 과정에서 결정되며 수학식 1과 같이, 현재 g(s)가 rhs(s)보다 크면 rhs(s)값을 부여하여 더 작은 경로 비용을 부여하여 최적 경로 비용을 부여하게 한다. 그렇지 않다면 g(s)에 ∞를 부여하여 다음 탐색 시에 해당 셀이 최적 경로 비용을 가질 수 있도록 한다.
rhs(s)는 인접한 셀 s’의 탐색 과정에서 결정된다. 수학식 2와 같이, s가 도착점이라면 0이, 그렇지 않다면 인접한 셀 s’들로부터 예측되는 최적 경로 비용(g(s')+c(s',s)) 중 가장 작은 값이 부여된다.
Figure 112019065048265-pat00001
Figure 112019065048265-pat00002
이때, c(s',s)는 셀 s와 인접한 셀 s' 사이의 이동 비용을 의미한다. 예를 들어, 그리드 맵(grid map)에서 대각 위치에 있는 셀과의 이동 비용은 1.4, X, Y축 중 한 축의 위치만 다른 셀과의 이동 비용은 1, 이동할 수 없는 셀(예를 들어, 장애물)과의 이동 비용은 ∞ 로 가정할 수 있다. 한편, s는 임의 셀을 의미하고, sgoal은 도착점을 의미한다.
한편, g(s) 및 rhs(s)가 예측하는 최적 경로 비용은 현재의 비최적성의 상한(ε)에서 탐색된 최적 경로 비용을 의미한다. 예를 들어, 현재의 비최적성의 상한(ε)을 감소하면서 반복적으로 경로 계획을 재계획하는 과정에서 g(s) 및 rhs(s)가 더욱 작은 값을 가질 수 있다.애니타임 디 스타(anytime D*) 알고리즘은 g(s)와 rhs(s)가 같은 셀들은 컨시스턴트 셀(consistent cell)로, 그렇지 않은 셀들은 인컨시스턴트 셀(inconsistent cell)로 구분한다. 컨시스턴트 셀은 경로 비용의 탐색이 완료된 셀이며, 인컨시스턴트 셀은 경로 비용의 탐색이 필요한 셀이다.
애니타임 디 스타(anytime D*) 알고리즘을 사용한 경로 계획은 인컨시스턴트 셀을 탐색하고 그 과정 중에서 인접한 셀들의 rhs(s) 값에 변화를 주어 인컨시스턴트 셀로 변경하는 과정을 반복하면서 도착점(sgoal)으로부터 출발점(sstart) 까지의 경로가 완성되면 종료하게 된다.
또한, 애니타임 디 스타(anytime D*) 알고리즘은 각 셀들을 오픈 리스트(OPEN list), 인컨시스턴트 리스트(inconsistent list, 이하 INCONS 리스트라 함), 클로즈 리스트(CLOSE list)의 세 가지의 리스트로 관리한다. OPEN 리스트와 INCONS 리스트는 둘 다 인컨시스턴트 셀을 보관하는 역할을 수행한다. 두 리스트의 차이점은 비최적성의 상한(ε)을 감소시키면서 경로를 반복적으로 도출하는 과정 중에서 보관하고 있는 인컨시스턴트 셀이 현재의 비최적성의 상한(ε)을 만족하는 경로를 도출하는 계산 과정에서 탐색되는지의 여부이다.
OPEN 리스트는 현재의 비최적성의 상한(ε)을 만족하는 경로를 도출하는 계산 과정에서 탐색될 셀들을 보관한다. 셀의 탐색 순서는 OPEN 리스트에 각 셀이 보관된 순서를 따르는데 셀의 키(key(s)) 값이 작은 셀부터 보관된다.
수학식 3에서 key(s) 값은 k1과 k2 두 개의 값으로 이루어져 있다. k1은 g(s)가 rhs(s)보다 크거나 같다면 rhs(s)와 출발점(sstart)으로부터 해당 셀 s까지의 어림값에 비최적성의 상한(ε)을 곱한 값 ε·h(sstart, s)을 더한 값을 쓰며, g(s)가 rhs(s)보다 작다면 g(s)와 어림값 h(sstart, s)을 더한 값을 사용한다. k2는 g(s)와 rhs(s) 중 작은 값을 사용한다. k2는 k1이 동일한 경우 탐색의 우선순위를 비교하기 위해 사용된다. 어림값 h(sstart, s)으로는 여러 값을 사용할 수 있으나, 수학식 4에서 정의된 Chebyshev distance는 계산이 단순하다는 장점이 있다. 이때, 비최적성의 상한(ε)은 어림값 h(sstart, s)에 곱해지는 변수이므로, 가중치라고 명명할 수 있다. 결국, 제어부(130)는 도착점(sgoal)으로부터 임의 셀까지의 최적 경로 비용, 출발점(sstart)으로부터 임의 셀까지의 어림값에 가중치를 부여한 값 중 적어도 하나를 기초로 우선순위 대기열에 대한 정보를 연산하게 된다.
Figure 112019065048265-pat00003
Figure 112019065048265-pat00004
한편, OPEN 리스트에 보관된 셀이 순서대로 탐색되면서 경로 비용이 정해진 셀은 CLOSE 리스트에 보관된다. INCONS 리스트는 CLOSE 리스트에 보관되어 있는 셀 중 인컨시스턴트 셀을 보관한다.
애니타임 디 스타(anytime D*) 알고리즘이 초기 비최적성의 상한 ε0를 만족하는 초기 경로를 도출하는 과정은 다음과 같다.
먼저 모든 셀의 g(s)와 rhs(s)는 ∞ 로, 도착점(sgoal)의 rhs(s)는 0으로 초기화 된다. 이때, OPEN, INCONS, CLOSE 리스트는 비어 있는 상태이다. 이후, 인컨시스턴트 셀인 도착점(sgoal)을 OPEN 리스트에 key(sgoal)를 계산하여 보관한다. OPEN 리스트에 보관되어 있는 도착점(sgoal)을 탐색하게 되면 도착점(sgoal)의 g(s)와 인접한 셀들의 rhs(s)가 정해지고, 이 중 인컨시스턴트 셀들은 OPEN 리스트에 보관한다. 이러한 과정은 OPEN 리스트의 가장 첫 번째에 있는 셀의 key(s)보다 key(sstart)가 크거나 rhs(sstart)가 g(sstart)보다 클 동안 반복된다. OPEN 리스트의 가장 첫 번째에 있는 cell의 key(s)보다 key(sstart)가 작거나 같다는 것은 현재 탐색된 출발점(sstart)으로부터 도착점(sgoal)으로의 경로 비용이 OPEN 리스트의 멤버들을 거친 다른 모든 경로보다 비용이 작다는 것을 의미한다.
반복되는 탐색 과정 중에서 경로 비용이 정해진 셀은 CLOSE 리스트에 보관된다. 애니타임 디 스타(anytime D*) 알고리즘은 현재의 ε 을 만족하는 경로를 도출하는 계산 과정에서 인컨시스턴트 셀이 된 셀들 중 CLOSE 리스트에 보관되어 있는 셀은 OPEN 리스트가 아닌 INCONS 리스트에 보관한다. 애니타임 디 스타(anytime D*) 알고리즘이 CLOSE 리스트와 INCONS 리스트를 따로 관리하는 이유는 계산 과정 중에서 한 cell의 중복 탐색을 막고 빠르게 ε을 만족하는 경로를 도출하기 위함이다.
ε0를 만족하는 초기 경로를 도출한 뒤, 애니타임 디 스타(anytime D*) 알고리즘은 경로의 실제 비최적성, ε' 이 더 작은 경로를 도출하기 위해 ε을 감소시킨다. 그 후, ε 이 낮은 경로 재계획을 수행한다. 애니타임 디 스타(anytime D*) 알고리즘은 이러한 과정을 ε이 1이 될 때까지 반복한다. 그 과정 중에서 환경의 동적 변화가 일어났다면 동적 변화가 일어난 시점의 ε을 유지한 채로 환경의 동적 변화를 업데이트하고 ε을 감소시킨 뒤, ε이 낮은 경로 재계획을 수행한다. 또한, ε이 1이 될 때까지 ε을 감소시켜 가면서 ε이 낮은 경로 재계획을 반복 수행한다.
ε이 낮은 경로를 도출하기 위해 INCONS 리스트에 보관되어 있는 셀들을 OPEN 리스트로 이동시키고 바뀐 ε에 따라 OPEN 리스트의 cell들을 재정렬한다. 마지막으로 CLOSE 리스트를 비우고 초기 경로 도출과 동일하게 OPEN리스트의 있는 셀들을 보관 순서에 따라 탐색하여 경로를 도출한다.
환경의 동적 변화가 발생한 경우, 변화로 인해 비용의 변화가 발생한 엣지(edge)의 비용을 갱신한다. 그리고 그 엣지(edge)와 연결된 두 셀 중 한 셀의 rhs(s) 값을 갱신한다. 만약 해당 셀이 인컨시스턴트 셀이 되었고 CLOSE 리스트에 포함되지 않았다면 해당 셀을 OPEN 리스트에 보관하고, CLOSE 리스트에 포함되었다면 해당 셀을 INCONS 리스트에 보관한다. 또는 해당 셀이 consistent cell이 되었고 OPEN리스트나 INCONS 리스트에 포함되어 있었다면 OPEN 리스트와 INCONS 리스트에서 해당 셀을 제거한다. 이 과정을 동적 변화로 인해 비용에 변화가 생긴 모든 엣지(edge)들과 연결된 두 셀 중 한 셀에 대하여 동일하게 수행한다.
한편, 본 발명에 따른 다중 임무점 방문을 위한 경로 계획 방법 및 경로 계획 장치(100)는 효율적인 다중 임무점 방문 경로 계획을 위해 다수 임무점간 경로 구간에 대해 단일 경로 계획을 수행할 때에 다른 단일 경로 계획의 경로 정보를 재사용할 수 있다.
도 2는 다중 임무점 방문시 요구되는 구간 경로 및 구간 경로 행렬을 예시하는 도면이다.
도면을 참조하면, 무인기가 임무 시작점(B)으로부터 시작하여 n개의 임무점 (M1, M2, … Mn)들을 방문하고 임무 종료점(E)으로 귀환하는 경로를 계획하기 위해서는 임무 시작점(B), 임무점 (M1, M2, … Mn), 임무 종료점(E) 사이의 경로 비용을 연산하여야 한다. 제어부(130)는 임무 시작점(B), 임무점(M1, M2, … Mn), 임무 종료점(E) 사이의 구간 경로를 순회 세일즈맨 문제(Travelling Salesman Problem: TSP)로 구성하고, TSP의 해를 구함으로써, 임무점(M1, M2, … Mn)의 방문 순서를 결정할 수 있다. 제어부(130)는 이렇게 구해진 임무점 방문 순서와 구간별 생성된 경로를 이용하여 다중 임무점을 방문하는 경로를 생성할 수 있다.
제어부(130)는 임무 시작점(B), 임무점(M1, M2, … Mn)들, 임무 종료점(E)간 구간 경로 비용을 각 구간의 임무점(M1, M2, … Mn)들과 임무 시작점(B)을 출발점으로, 임무점(M1, M2, … Mn)과 임무 종료점(E)을 도착점(Sgoal)으로 두고 각 구간에 대한 단일 경로 계획을 수행함으로써 얻을 수 있다.
한편, 다중 임무점의 경로 계획을 위해 애니타임 디 스타(anytime D*) 알고리즘을 사용하는 경우 n2+n 번의 단일 경로 계획이 필요하다(sgoal=B or sstart=E or (sgoal=E and sstart=B) or sgoal=sstart=Mi, i=1,2 … n인 경우 제외).
예를 들어, 도 2는 n=2일 때 연산이 필요한 구간 경로를 표시하였다. 도 2에서 X표는 연산이 필요하지 않은 구간을 의미한다. 도 2에서와 같이 임무점 (M1, M2, … Mn)이 증가할수록 경로를 생성하기 위한 연산량과 g(s), rhs(s) 행렬과 OPEN, INCONS, CLOSE 리스트를 저장하기 위한 메모리 공간이 임무점 (M1, M2, … Mn)의 개수의 제곱에 비례하여 증가하는 것을 알 수 있다. 따라서 다중 임무점을 방문하는 경로 계획에 애니타임 디 스타(anytime D*) 알고리즘을 직접 적용할 수 없다.
이에 따라, 본 발명은 동적 임무 환경에서 다중 임무점 방문 경로 계획 시 경로 비최적성의 상한(ε)을 만족시키면서도 기존 애니타임 디 스타(anytime D*) 단일 경로 계획 알고리즘을 단순 적용한 경우보다 경로 계획 복잡도를 크게 줄인 Anytime Multiple Mission D*(AMMD*) 알고리즘을 제안한다. AMMD* 알고리즘은 애니타임 디 스타(anytime D*) 알고리즘을 기반으로 하면서도 다중 임무점 간의 경로 계획 시 이미 계산된 경로 계획의 결과를 효율적으로 재사용하여 계산량 및 경로 계획 정보 저장 공간을 줄일 수 있다.
먼저, 본 발명의 다중 임무점 방문을 위한 경로 계획 방법 및 경로 계획 장치(100)에 사용될 데이터의 주요 특성에 대해 살펴보면 다음과 같다.
g(s)는 도착점(sgoal)으로부터 현재 셀 s까지의 경로 비용으로 도착점(sgoal)이 바뀌지 않는다면 변하지 않는다는 특성을 가지고 있다. 다중 임무점을 방문하기 위해 필요한 구간 경로들에서 임무점들과 임무 종료점은 여러 구간 경로에 대해 도착점(sgoal)으로 대응된다. 예를 들어, 도 2에서, M1은 B, M2에 대해 도착점(sgoal)으로 대응된다. 따라서, 제어부(130)는 M1을 도착점(sgoal)으로, B, M2를 출발점(sstart)으로 하는 n개 구간의 단일 경로 계획에서 g(s)를 재사용할 수 있다.
한편, g(s)를 예측하는 rhs(s)도 재사용이 가능하다. 또한, OPEN 리스트도 도착점(sgoal)은 동일하고 출발점(sstart)이 바뀐 상황에서 새롭게 바뀐 출발점(sstart)에 대해 인컨시스턴트 셀들을 다시 정렬함으로써 재사용이 가능하다. 다른 단일 경로 계획의 경로 정보를 재사용하는 것은 g(s) 및 rhs(s)를 중복하여 계산하는 연산량과 경로 계획 정보 저장 공간을 줄여 효율적인 경로 탐색이 가능하도록 한다.
도 3은 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법을 도시하는 순서도이고, 도 4는 본 발명의 실시예에 따른 초기 경로 계획 방법 및 경로 재계획 방법을 설명하기 위한 도면이다.
도면을 참조하면, 먼저 본 발명의 실시예에 따른 경로 계획 장치(100)의 제어부(130)는 초기 경로를 도출할 수 있다(S310).
제어부(130)는 후술하는 제1 경로 계획 생성 알고리즘 및 제2 경로 계획 생성 알고리즘을 이용하여 무인기의 초기 경로를 도출할 수 있다.
도 4에서 610은 무인기의 초기 경로 계획 생성 방법을 도시한다. 도 4에서와 같이, 제어부(130)는 도착점 리스트 중 어느 하나의 도착점을 선택하여 제1 경로 계획을 생성할 수 있다. 또한, 제어부(130)는 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 제2 경로 계획들을 생성할 수 있다. 제어부(130)는 제1 경로 계획 및 제2 경로 계획들을 기초로 전체 구간에 대한 초기 경로를 도출할 수 있다.
제어부(130)는 환경의 동적 변화를 대기할 수 있다(S330).
제어부(130)는 환경의 동적 변화가 없고, 비최적성의 상한(ε)이 1인 경우, 계속하여 환경의 동적 변화를 대기할 수 있다.
제어부(130)는 환경의 동적 변화는 없지만 비최적성의 상한(ε)이 1 보다 큰 경우, 비최적성의 상한(ε)을 감소시키면서(S350) 무인기의 경로를 재계획할 수 있다(S390)
제어부(130)는 환경의 동적 변화가 발생한 경우, 환경의 동적 변화를 업데이트할 수 있다(S350).
제어부(130)는 환경의 동적 변화를 업데이트 한 상태에서, 비최적성의 상한(ε)이 1 보다 큰 경우, 비최적성의 상한(ε)을 감소시키면서(S350) 무인기의 경로를 재계획할 수 있다(S390).
또는 제어부(130)는 환경의 동적 변화를 업데이트 한 상태에서, 비최적성의 상한(ε)이 1인 경우, 무인기의 경로를 재계획할 수 있다(S390).
도 4에서, 630은 경로 재계획 방법을 도시한다. 도 4에서, 제어부(130)는 초기 경로 계획 생성 과정에서 획득한 구간 경로 계획 정보(g(s), rhs(s), OPEN 리스트, CLOSE 리스트, INCONS 리스트)와 제1 경로 계획 알고리즘을 이용하여 무인기의 경로를 재계획할 수 있다.
도 5는 본 발명의 실시예에 다른 초기 경로 계획 방법 및 비최적성(ε')의 감소에 따른 경로 재계획 방법을 도시하는 순서도이고, 도 6은 본 발명의 제1 경로 계획들의 생성 방법을 설명하기 위한 도면이고, 도 7은 도 6의 설명에 참조되는 도면이고, 도 8은 본 발명의 제2 경로 계획의 생성 방법을 설명하기 위한 도면이고, 도 9는 본 발명의 제2 경로 계획의 생성시, 경로 비용의 보정 방법을 설명하기 위한 도면이다.
도면을 참조하면, 먼저, 본 발명의 실시예에 따른 경로 계획 장치(100)의 제어부(130)는 다중 임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산하고 상기 구간 경로 비용을 기초로 제1 경로 계획을 생성할 수 있다(S910).
구체적으로, 제어부(130)는, 복수의 임무점(M1, M2, … Mn)과 임무 종료점(E)을 포함하는 도착점 리스트(M1, M2, … Mn, E) 중 하나를 도착점(sgoal)으로 설정하고, 도착점 리스트(M1, M2, … Mn) 중 도착점(sgoal)으로 설정하지 않은 임무점들과 임무 시작점(B)을 포함하는 출발점 리스트 중 하나를 출발점(sstart)으로 설정하여 최초의 구간 경로 계획을 생성할 수 있다.
제어부(130)는 이전 구간의 도착점은 유지한 상태에서, 출발점(sstart)을 출발점 리스트 중 이전 구간의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점(sstart)으로 변경한 다음 구간에 대하여 이전 구간의 구간 경로 계획 정보를 재사용하여 다음 구간에 대한 구간 경로 계획을 출발점 리스트의 잔여 출발점에 대하여 각각 수행할 수 있다. 이때, 구간 경로 계획 정보는, 수학식 1 내지 4에 의하여, 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보, 도착점 (sgoal)으로부터 하나씩 확장된 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 어느 하나일 수 있다.
제어부(130)는 각각의 단일 경로 계획을 기초로 초기 경로 계획을 생성할 수 있다.
도 6은 본 발명의 제1 경로 계획들의 생성 방법을 설명하기 위한 도면이다. 도 6에서 제어부(130)는 복수의 임무점(M1, M2, … Mn)과 임무 종료점(E)을 포함하는 도착점 리스트(M1, M2, M3, E) 중 M1을 도착점(sgoal)으로 설정할 수 있다. 제어부(130)는 M1에 대응하는 출발점(sstart) B에 대해 경로 계획을 생성할 수 있다.
제어부(130)는 도착점(sgoal)을 M1으로 유지한 상태에서 출발점(sstart)을 M2로 변경할 수 있다. 제어부(130)는 INCONS 리스트에 보관된 인컨스턴트 셀들을 OPEN리스트로 이동시키고, 변경된 출발점(sstart)에 맞게 OPEN 리스트의 인컨스턴트 셀들을 재정렬할 수 있다. 제어부(130)는, M1-B 구간의 구간 경로 계획 정보를 재사용하여 M1-M2 구간의 경로 계획 정보를 생성할 수 있다.
제어부(130)는 잔여 출발점(sstart)인 M3에 대해서도 단일 경로 계획의 경로 정보에 대한 재사용 작업을 반복할 수 있다.
이에 따라, 본 발명의 경로 계획 장치(100)는 경로 비용의 중복 연산을 방지할 수 있다. 예를 들어, 도 7은 하나의 도착점(G)에 대응하는 다수의 출발점(S)에 대한 구간 경로 계획 방법을 예시한다. 도 7에서 최초의 구간 경로 계획에 의해 510의 연산 불필요 영역이 발생하고, 차회의 구간 경로 계획에 의해 530의 연산 불필요 영역이 발생함을 알 수 있다. 이러한, 제1 경로 계획 생성 알고리즘은 intra-reuse 알고리즘이라 명명할 수 있다.
한편, 도착점(sgoal)이 변경된 경우, g(s)와 rhs(s) 등의 경로 계획 정보를 재사용하는 것은 불가능하다. 그러나, 본 발명은 애니타임(anytime) 알고리즘을 이용하므로, 도착점(sgoal)이 변경되기 이전에 생성된 경로가 현재 도착점(sgoal)과 출발점(sstart)으로 이루어진 구간 경로의 비최적성의 상한(ε)을 만족한다면 이전에 생성된 구간 경로 계획을 재사용할 수 있다. 이전에 생성된 경로를 재사용할 수 있다면 경로상 셀들의 g(s)와 rhs(s)를 바뀐 도착점(sgoal)에 맞도록(g(s)와 rhs(s)가 0이 되고, 도착점에서 멀어질수록 값이 커짐) 적용하여 경로 계획 정보 또한 재사용할 수 있다.
따라서, 제어부(130)는 이전 구간에서 생성된 경로가, 변경된 도착점(sgoal)과 출발점(sstart)으로 이루어진 구간 경로의 애니타임(anytime) 알고리즘에 의한 비최적성의 상한(ε)을 만족하는 경우, 도착점의 변경 전의 제1 경로 계획을 재사용하여 제2 경로 계획을 생성할 수 있다(S920).
구체적으로, 제어부(130)는 도착점을 제1 도착점에서 제2 도착점으로 변경하고, 도착점의 변경 전의 제1 도착점에서 제2 도착점까지의 경로 비용을 보정값으로하여, 도착점의 변경 후의 제1 도착점 및 제2 도착점 사이의 경로 비용을 보정할 수 있다.
제어부(130)는 도착점(sgoal)의 변경 전의 제1 도착점과 제1 도착점에 대응하는 출발점들 사이의 구간 경로 계획 정보를 재사용하여 최종 경로 계획을 생성할 수 있다. 이때, 구간 경로 계획 정보는, 수학식 1 내지 4에 의하여, 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보, 도착점 (sgoal)으로부터 하나씩 확장될 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 어느 하나일 수 있다.
제2 경로 계획은 도착점(sgoal)이 변경된 상황에서 도착점(sgoal)이 변경되기 이전에 탐색한 구간 경로 계획 정보를 재사용하기 위한 알고리즘이다.
제어부(130)는 제1 경로 계획의 생성 후, 도착점(sgoal)이 변경된 경우, 현재의 도착점(sgoal)과 가장 가깝고, 대응되는 모든 출발점(sstart)들에 대해 경로 탐색이 완료된 과거의 도착점(spastgoal)을 선정할 수 있다.
제어부(130)는 도착점(sgoal)이 과거의 도착점(spastgoal)일 때 탐색한 모든 경로상의 셀들의 경로 계획 정보를 재사용할 수 있다. 이 때, 현재의 도착점(sgoal)은 과거의 도착점(spastgoal)과 상이하기 때문에 경로상 셀들의 g(s)와 rhs(s)를 현재의 도착점(sgoal)에 맞도록 적용해야 한다. 예를 들어, 도착점(sgoal)이 변경된 경우, 현재의 도착점(sgoal)의 g(s)와 rhs(s)가 0이 되고, 현재의 도착점(sgoal)으로부터 멀어질수록 g(s)와 rhs(s)가 커져야 한다.
제어부(130)는 현재의 도착점(sgoal)과 과거의 도착점(spastgoal) 사이의 경로 계획 정보를 현재의 도착점(sgoal)에 맞도록 보정할 수 있다. 과거의 도착점(spastgoal)으로부터 현재의 도착점(sgoal)까지의 경로 비용은 현재의 도착점(sgoal)의 경로 비용에서 이전 경로 계획 정보인, gtmp(s)를 뺀 값과 동일하므로, 제어부(130)는 도착점(sgoal)의 변경 전의 과거의 도착점(spastgoal)에서 현재의 도착점(sgoal)까지의 경로 비용을 보정값으로 하여, 도착점(sgoal)의 변경 후의 현재의 도착점(sgoal) 및 과거의 도착점(spastgoal) 사이의 경로 비용을 보정할 수 있다.
예를 들어, 도 8에서, 도착점(sgoal)이 M1에서 M2로 변경된 경우, 도착점(sgoal)이 과거의 도착점(spastgoal)이였을 때의 경로 비용, gtmp(s)에서 현재의 도착점(sgoal)의 gtmp(s)가 4.2라면, 제어부(130)는 경로상 셀들의 g(s) 값을 4.2에서 해당 셀의 gtmp(s)들을 뺀 값으로 보정할 수 있다.
제어부(130)는, 과거의 도착점(spastgoal)으로부터 현재의 도착점(sgoal)까지의 경로 계획 정보를 보정한 후, 현재의 도착점(sgoal)으로부터 대응되는 출발점(sstart)들까지의 경로를 재사용할 수 있다.
제어부(130)는, 보정값에 의한 과거의 도착점(spastgoal)의 구간 경로 비용의 증가 또는 감소 비용을 기초로, 과거의 도착점(spastgoal)과 과거의 도착점(spastgoal)에 대응하는 출발점들 사이의 구간 경로 비용을 보정할 수 있다.
도 9와 같이, 과거의 도착점(spastgoal)으로부터 출발점(sstart)까지의 경로 중, 과거의 도착점(spastgoal)으로부터 현재의 도착점(sgoal)까지의 경로의 일부가 중복되는 경우, 제어부(130)는 출발점(sstart)으로부터 경로가 중복되는 셀(sc)까지의 구간 경로 비용을 수학식 5에 의해 연산할 수 있다.
Figure 112019065048265-pat00005
이때, g(s)는 임의 셀의 현재 경로 비용, gtmp(s)는 임의 셀의 과거 경로 비용, gtmp(sc)는 중복되는 셀(sc)의 과거 경로 비용, g(sc)는 중복되는 셀(sc)의 현재 경로 비용이다. g(sc)는 도 8에서 설명한 현재의 도착점(sgoal)과 과거의 도착점(spastgoal) 사이의 경로 계획 정보를 현재의 도착점(sgoal)에 맞도록 보정할 때, 연산될 수 있다.
과거의 도착점(spastgoal)으로부터 출발점(sstart)까지의 경로 중, 과거의 도착점(spastgoal)으로부터 현재의 도착점(sgoal)까지의 경로의 일부가 중복되지 않는 경우, 제어부(130)는, 출발점(sstart)으로부터 과거의 도착점(spastgoal)까지의 구간 경로 비용을 수학식 6에 의해 연산할 수 있다.
Figure 112019065048265-pat00006
이때, g(s)는 임의 셀의 현재 경로 비용, gtmp(s)는 임의 셀의 과거 경로 비용, g(spastgoal)은 과거의 도착점(spastgoal)의 현재 경로 비용이다. g(spastgoal)은 도 8에서 설명한 현재의 도착점(sgoal)과 과거의 도착점(spastgoal) 사이의 경로 계획 정보를 현재의 도착점(sgoal)에 맞도록 보정할 때, 연산될 수 있다.
상술한 제2 경로 계획에 있어서 구간 경로의 재사용 방법은 rhs(s)에 대해서도 동일하게 수행될 수 있다.
한편, 제어부(130)는, 현재의 도착점(sgoal)에 대응되는 모든 출발점(sstart)에 대해 재사용 작업을 수행한 경우, 현재의 도착점(sgoal)의 g(s)를 ∞로, rhs(s)를 0으로 하여 OPEN 리스트에 보관한 뒤, 모든 출발점(sstart)에 대해 경로 탐색을 반복적으로 수행할 수 있다. 이때, 출발점(sstart)이 바뀔 때마다 INCONS 리스트에 보관된 인컨시스턴트 셀(inconsistent cell)들을 OPEN 리스트로 이동시킬 수 있다.
상기와 같은 제2 경로 계획 방법은 재사용되는 경로 중 경로의 비최적성(ε')이 비최적성의 상한(ε)을 만족하는 경로에 대해서는 경로 탐색을 실시하지 않으므로 경로 탐색 시간 및 횟수가 현저하게 감소되는 효과가 있다. 이러한 제2 경로 계획 생성 알고리즘은 inter-reuse 알고리즘이라 명명할 수 있다.
제어부(130)는 도착점(Sstart)을 이전에 선택하지 않은 도착점들로 변경하면서, 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 한 번의 제1 경로 계획과 복수의 제2 경로 계획들을 기초로 초기 경로 계획을 생성할 수 있다(S930)
한편, 제어부(130)는 애니타임(anytime) 경로 계획 알고리즘에 의한 비최적성(suboptimality)을 단계적으로 감소시키면서, 초기 경로 계획 및 최종 계획을 재생성할 수 있다.
구체적으로, 제어부(130)는 셀 탐색 우선 순위 대기열을 가변할 수 있다(S940).
셀 탐색 우선 순위는 수학식 3에 의한 key(s) 값, 특히, 가중치에 의해 정해지므로, 제어부(130)는, 가중치를 단계적으로 감소하고, 가중치의 단계적 감소에 대응하여, 우선순위 대기열을 재정렬하며, 재정렬된 우선순위 대기열을 기초로 상기 제1 경로 계획을 재생성할 수 있다(S950).
제어부(130)는 비최적성의 상한(ε)이 1이 될 때까지 사전 경로 계획을 재생성할 수 있다.
제어부(130)는 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 제1 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 생성된 제1 경로 계획들을 기초로 초기 경로 계획을 재계획할 수 있다(S960).
도 10은 본 발명의 제2 경로 계획의 생성 시, 재사용된 경로의 비최적성(ε')이 비최적성의 상한(ε')을 만족하지 못할 경우, 애니타임(anytime) 경로 계획에 의해 경로가 다시 계획됨을 설명하기 위한 도면이다.
한편, 제어부(130)는, 경로 계획 생성 과정 중, 주위 환경의 동적 변화가 일어났다면 동적 변화가 일어난 시점의 비최적성의 상한(ε)을 유지한 채로 환경의 동적 변화를 업데이트하고 동적 변화가 일어난 시점의 비최적성의 상한(ε)을 감소시킨 뒤, 비최적성의 상한(ε)이 낮은 경로의 재계획을 수행할 수 있다. 이 경우에도 제어부(130)는 비최적성의 상한(ε)이 1이 될 때까지 사정 경로 계획을 재생성할 수 있다.
또한, 제어부(130)는 환경의 동적 변화가 발생한 경우, 변화로 인해 비용의 변화가 발생한 edge의 비용을 갱신할 수 있다. 그리고 그 edge와 연결된 두 셀 중 한 셀의 rhs(s) 값을 갱신할 수 있다. 만약 해당 셀이 인컨시스턴트 셀(inconsistent cell)이 되었고 CLOSE 리스트에 포함되지 않았다면 제어부(130)는 해당 셀을 OPEN 리스트에 보관하고, CLOSE 리스트에 포함되었다면 해당 셀을 INCONS 리스트에 보관할 수 있다. 또는 해당 셀이 컨시스턴트 셀(consistent cell)이 되었고 OPEN리스트나 INCONS 리스트에 포함되어 있었다면 제어부(130)는 OPEN 리스트와 INCONS 리스트에서 해당 셀을 제거할 수 있다. 제어부(130)는 이 과정을 동적 변화로 인해 비용에 변화가 생긴 모든 edge들과 연결된 두 셀 중 한 셀에 대하여 동일하게 수행할 수 있다. 이러한 과정은 도착점리스트의 남은 멤버들에 대해 반복적으로 수행될 수 있다.
상기와 같이, 본 발명의 일 실시예에 따르면 다중 임무점 방문을 위한 경로 계획 시, 구간 경로 정보를 재사용하므로 경로 계획의 복잡도를 현저하게 감소시킬 수 있다. 또한, 경로 계획의 재사용 조건은 비최적성의 상한(ε)의 만족 여부이므로, 경로 계획 재사용에 있어서도 애니타임(anytime) 경로 계획 알고리즘에 의한 비최적성의 상한(ε)은 보장된다.
또한, 임무점의 개수가 n개 일 때, Anytime D* 알고리즘은 각 구간 경로마다 별도의 g(s), rhs(s) matrix가 필요하여 다중 임무점 방문 시, 단일 경로 계획의 n2+n 배 큰 저장 공간이 필요한 반면, 본 발명의 AMMD* 알고리즘은 동일한 도착점(sgoal)을 갖는 모든 구간 경로가 경로 데이터를 공유할 수 있어 단일 경로 계획 대비 n+1 배의 저장 공간만으로 n개의 임무점 방문을 위한 경로 계획 정보를 저장할 수 있다.
도 11 내지 도 12는 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법의 의사코드(pseudo code)를 예시하는 도면이다.
특히, 도 12에서, 경로 재계획을 수행하는 경우, 제어부(130)는 도착점 리스트 중 어느 하나를 도착점(Sgoal)으로 설정할 수 있다.
다음, 제어부(130)는 해당 도착점(Sgoal)에 대응하는 g(s), rhs(s) 행렬과, OPEN 리스트, INCONS 리스트, CLOSE리스트를 로드(load)할 수 있다.
또한, 제어부(130)는 INCONS 리스트에 있는 셀들을 OPEN리스트로 이동시키고, OPEN 리스트를 바뀐 ε에 따라 재정렬할 수 있다.
또한, 제어부(130)는 CLOSE 리스트를 리셋하고, 제1 경로 계획 알고리즘을 이용하여 초기 경로 계획을 재계획할 수 있다.
도 13은 종래 애니타임 디 스타(anytime D*) 알고리즘과 본 발명의 실시예에 따른 다중 임무점 방문을 위한 경로 계획 방법 및 장치의 연산량과 실행시간을 비교하는 도면이다.
도면을 참조하면, MATLAB 시뮬레이션을 통해 다중 임무점을 방문하는 동적 변화 임무환경에서 AMMD* 알고리즘과 Anytime D* 알고리즘의 연산량과 실행 시간을 비교하였다. 이때, 임무 영역은 30X30의 2차원 grid를 사용하였으며, 장애물은 임무영역에서 uniform하게 20% 확률로 무작위로 생성하였다. 시작점은 (1,1), 종료점은 (30,30)에 고정하였으며 임무점의 개수는 1개에서 5개까지 증가시키며 결과를 확인 하였다. 임무점의 위치는 임무영역에서 uniform하게 무작위로 생성하였고, 무인기의 장애물 감지 범위는 인접한 grid cell 8개로 하였다. 경로 비최적성의 상한(ε)은 (3, 1.5, 1)로 경로 계획을 반복할수록 줄어들도록 설정하였고 ε이 3일 때의 경로 계획을 수행하고 난뒤 환경에 동적 변화를 주었다. 시뮬레이션은 각 임무점 개수마다 50회 반복하여 연산량과 실행 시간의 평균값을 도출하였다. 그 결과 본 발명의 따른 AMMD* 알고리즘은 Anytime D* 알고리즘의 복잡도를 크게 줄여주는 것을 확인 할 수 있었다. 구체적으로, n = 5일 때 본 발명의 AMMD* 알고리즘은 Anytime D* 알고리즘의 복잡도를 연산량 측면에서 초기 경로 도출과 줄어드는 비최적성의 상한을 만족시키는 모든 경로 도출 시 각각 90%, 78%를 줄여 줬으며, 실행 시간 측면에서는 각각 50%, 49%를 줄였다. 그리고 복잡도를 줄여주는 효과는 임무점의 수가 증가할수록 커져 본 발명의 AMMD* 알고리즘이 넓은 임무영역을 가지는 환경에 적용될 수 있음을 알 수 있었다.
이상 설명된 본 발명에 따른 실시 예는 컴퓨터상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 경로 계획 장치
110: 입력부
120: 출력부
130: 제어부
140: 저장부
150: 통신부

Claims (12)

  1. 다중 임무점 방문을 위한 경로 계획 장치에 의해 수행되는 다중 임무점 방문을 위한 경로 계획 방법으로서,
    임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산 및 제1 경로 계획을 생성하는 단계; 및
    상기 도착점을 변경한 후, 상기 도착점의 변경 전의 상기 제1 경로 계획을 재사용하여 제2 경로 계획을 생성하는 단계; 및
    상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 상기 제1 경로 계획과 상기 제2 경로 계획들을 기초로 초기 경로 계획을 생성하는 단계;를 포함하고,
    상기 제1 경로 계획을 생성하는 단계는
    상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 하나를 도착점으로 설정하고, 상기 도착점 리스트 중 상기 도착점으로 설정하지 않은 임무점들과 상기 임무 시작점을 포함하는 출발점 리스트 중 하나를 출발점으로 설정하여 최초의 구간 경로 계획을 생성하는 단계와,
    이전 구간의 도착점은 유지한 상태에서, 상기 출발점을 상기 출발점 리스트 중 상기 이전 구간의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점으로 변경한 다음 구간에 대하여 상기 이전 구간의 구간 경로 계획 정보를 재사용하여 다음 구간에 대한 구간 경로 계획을 상기 출발점 리스트의 잔여 출발점에 대하여 각각 수행하는 단계를 포함하는 것인 다중 임무점 방문을 위한 경로 계획 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 제2 경로 계획을 생성하는 단계는,
    상기 도착점을 제1 도착점에서 제2 도착점으로 변경하는 단계와,
    상기 도착점의 변경 전의 상기 제1 도착점에서 상기 제2 도착점까지의 경로 비용을 보정값으로하여, 상기 도착점의 변경 후의 상기 제1 도착점 및 상기 제2 도착점 사이의 경로 비용을 보정하는 단계와,
    상기 보정값에 의한 상기 제1 도착점의 구간 경로 비용의 증가 또는 감소 비용을 기초로 상기 제1 도착점과 상기 제1 도착점에 대응하는 각각의 출발점들 사이의 구간 경로 비용을 보정하는 단계를 포함하는 것인 다중 임무점 방문을 위한 경로 계획 방법.
  4. 제1항에 있어서,
    상기 구간 경로 계획 정보는,
    상기 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 상기 도착점부터 상기 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보 및 상기 도착점으로부터 하나씩 확장될 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 하나의 정보를 포함하는 것인 다중 임무점 방문을 위한 경로 계획 방법.
  5. 제4항에 있어서,
    상기 우선순위 대기열에 대한 정보는,
    상기 도착점으로부터 상기 임의 셀까지의 최적 경로 비용, 출발점으로부터 임의 셀까지의 어림값에 가중치를 부여한 값 중 적어도 하나를 기초로 연산되는 다중 임무점 방문을 위한 경로 계획 방법.
  6. 제5항에 있어서,
    상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 어느 하나의 도착점에 대하여, 상기 가중치를 단계적으로 감소하고, 상기 가중치의 단계적 감소에 대응하여, 상기 우선순위 대기열을 재정렬하며, 재정렬된 상기 우선순위 대기열을 기초로 상기 제1 경로 계획을 재생성하는 단계; 및
    상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제1 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 생성된 제1 경로 계획들을 기초로 상기 초기 경로 계획을 재계획하는 단계;를 더 포함하는 다중 임무점 방문을 위한 경로 계획 방법.
  7. 다중 임무점 방문을 위한 무인 이동체의 경로를 계획하는 장치로서,
    임무 시작점, 복수의 임무점 및 임무 종료점을 포함하는 임무점에 대한 정보를 입력 받는 입력부;
    상기 다중 임무점을 방문하기 위한 경로 계획을 출력하는 출력부;
    상기 임무점에 대한 정보에 기초하여 상기 경로 계획을 연산한 후, 상기 출력부를 제어하여, 상기 경로 계획을 출력하는 제어부;를 포함하고,
    상기 제어부는
    임무 시작점으로부터 시작하여 복수의 임무점을 방문하고 임무 종료점으로 귀환하는 무인 이동체의 다중 임무점 경로에 대하여, 도착점이 동일한 구간 경로의 기 연산된 구간 경로 계획 정보를 재사용하여 각각의 구간 경로 비용을 연산 및 제1 경로 계획을 생성하고,
    상기 도착점을 변경한 후, 상기 도착점의 변경 전의 상기 제1 경로 계획을 재사용하여 제2 경로 계획을 생성하고,
    상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제2 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 상기 제1 경로 계획과 상기 제2 경로 계획들을 기초로 초기 경로 계획을 생성하고,
    상기 제어부는
    상기 제1 경로 계획을 생성하는 경우,
    상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 하나를 도착점으로 설정하고, 상기 도착점 리스트 중 상기 도착점으로 설정하지 않은 임무점들과 상기 임무 시작점을 포함하는 출발점 리스트 중 하나를 출발점으로 설정하여 최초의 구간 경로 계획을 생성하고,
    이전 구간의 도착점은 유지한 상태에서, 상기 출발점을 상기 출발점 리스트 중 상기 이전 구간의 구간 경로 계획 생성 단계에서 선택되지 않은 출발점으로 변경한 다음 구간에 대하여 상기 이전 구간의 구간 경로 계획 정보를 재사용하여 다음 구간에 대한 구간 경로 계획을 상기 출발점 리스트의 잔여 출발점에 대하여 각각 수행하는 것인 다중 임무점 방문을 위한 경로 계획 장치.
  8. 삭제
  9. 제7항에 있어서,
    상기 제어부는
    상기 제2 경로 계획을 생성하는 경우,
    상기 도착점을 제1 도착점에서 제2 도착점으로 변경하고,
    상기 도착점의 변경 전의 상기 제1 도착점에서 상기 제2 도착점까지의 경로 비용을 보정값으로하여, 상기 도착점의 변경 후의 상기 제1 도착점 및 상기 제2 도착점 사이의 경로 비용을 보정하고,
    상기 보정값에 의한 상기 제1 도착점의 구간 경로 비용의 증가 또는 감소 비용을 기초로 상기 제1 도착점과 상기 제1 도착점에 대응하는 각각의 출발점들 사이의 구간 경로 비용을 보정하는 것인 다중 임무점 방문을 위한 경로 계획 장치.
  10. 제7항에 있어서,
    상기 구간 경로 계획 정보는,
    상기 구간 경로 비용에 대한 정보, 임의 셀에 인접한 셀의 상기 구간 경로 비용을 사용하여 상기 임의 셀까지의 최적 경로 비용을 예측하는 값에 대한 정보, 도착점으로부터 하나씩 확장될 그리드 셀(grid cell)들이 셀 탐색 순서대로 저장된 우선순위 대기열에 대한 정보 중 적어도 하나의 정보를 포함하는 것인 다중 임무점 방문을 위한 경로 계획 장치.
  11. 제10항에 있어서,
    상기 제어부는
    상기 도착점으로부터 상기 임의 셀까지의 최적 경로 비용, 출발점으로부터 임의 셀까지의 어림값에 가중치를 부여한 값 중 적어도 하나를 기초로 상기 우선순위 대기열에 대한 정보를 연산하는 다중 임무점 방문을 위한 경로 계획 장치.
  12. 제11항에 있어서,
    상기 제어부는
    상기 복수의 임무점과 상기 임무 종료점을 포함하는 도착점 리스트 중 어느 하나의 도착점에 대하여, 상기 가중치를 단계적으로 감소하고, 상기 가중치의 단계적 감소에 대응하여, 상기 우선순위 대기열을 재정렬하며, 재정렬된 상기 우선순위 대기열을 기초로 상기 제1 경로 계획을 재생성하고,
    상기 도착점을 이전에 선택하지 않은 도착점들로 변경하면서, 상기 제1 경로 계획을 잔여 도착점들에 대하여 각각 생성하고, 생성된 제1 경로 계획들을 기초로 상기 초기 경로 계획을 재계획하는 것인 다중 임무점 방문을 위한 경로 계획 장치.
KR1020190075782A 2019-06-25 2019-06-25 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치 KR102062900B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190075782A KR102062900B1 (ko) 2019-06-25 2019-06-25 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190075782A KR102062900B1 (ko) 2019-06-25 2019-06-25 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102062900B1 true KR102062900B1 (ko) 2020-01-06

Family

ID=69159264

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190075782A KR102062900B1 (ko) 2019-06-25 2019-06-25 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102062900B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113945216A (zh) * 2021-10-15 2022-01-18 上海懒书智能科技有限公司 一种移动机器设备的路径规划和管理系统和方法
KR20220102684A (ko) * 2021-01-13 2022-07-21 건국대학교 산학협력단 무인이동체를 위한 인공지능 기반의 경로 재계획 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017161315A (ja) * 2016-03-08 2017-09-14 国立大学法人京都大学 最適飛行網の生成方法及びシステム
KR101977290B1 (ko) * 2019-01-04 2019-05-10 국방과학연구소 2차원공간상에서 복수의 무인항공기의 출발점과 도착점을 할당하는 방법 및 그 방법을 구현하기 위한 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017161315A (ja) * 2016-03-08 2017-09-14 国立大学法人京都大学 最適飛行網の生成方法及びシステム
KR101977290B1 (ko) * 2019-01-04 2019-05-10 국방과학연구소 2차원공간상에서 복수의 무인항공기의 출발점과 도착점을 할당하는 방법 및 그 방법을 구현하기 위한 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
이호형 외, "다중 임무점이 존재하는 동적 변화 환경에서의 효율적인 Anytime 경로 탐색" 한국항공우주학회 2018 추계학술대회 논문집(2018.11.30)
정성식 외, "다수의 위협과 복수의 목적지가 존재하는 임무에서 복수 무인기의 생존율 극대화를 위한 최적 경로 계획 및 분석", 한국항공우주학회지(2015.06.30)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220102684A (ko) * 2021-01-13 2022-07-21 건국대학교 산학협력단 무인이동체를 위한 인공지능 기반의 경로 재계획 방법 및 장치
KR102434949B1 (ko) * 2021-01-13 2022-08-26 건국대학교 산학협력단 무인이동체를 위한 인공지능 기반의 경로 재계획 방법 및 장치
CN113945216A (zh) * 2021-10-15 2022-01-18 上海懒书智能科技有限公司 一种移动机器设备的路径规划和管理系统和方法

Similar Documents

Publication Publication Date Title
KR102036716B1 (ko) 다중 임무점 방문을 위한 경로 계획 방법 및 장치
Hayat et al. Multi-objective drone path planning for search and rescue with quality-of-service requirements
Huang et al. Modeling and solving the dynamic user equilibrium route and departure time choice problem in network with queues
KR102062900B1 (ko) 다중 임무점 방문을 위한 순차적 경로 계획 방법 및 장치
EP2890954B1 (en) Route planning
US20100211244A1 (en) Apparatus and method for generating and using a grid map path
KR101897407B1 (ko) 무인차량의 자율주행을 위한 적응적 동역학 모델 기반 최적 경로계획 방법 및 그 장치
CN108519737B (zh) 一种考虑能源补给的无人设备路径规划方法
Coltin et al. Ridesharing with passenger transfers
Marier et al. Solving the continuous time multiagent patrol problem
US20230063370A1 (en) Multi-robot route planning
CN110146103B (zh) 考虑目标走向与能源补给的无人设备路径规划方法
KR102532433B1 (ko) 운송 수단과 드론을 사용한 병렬 배송의 최적 해를 탐색하기 위한 rgso 스케줄링 최적화 방법 및 시스템
JP2009002896A (ja) 経路算出装置、経路算出システム、および経路算出方法
Peng et al. Network-wide coordinated control based on space-time trajectories
JP7271718B2 (ja) ドローン搭乗ルートの処理方法、装置、デバイス及び読み取り可能な媒体
Choi et al. Reservation-based intersection crossing scheme for autonomous vehicles traveling in a speed range
KR20220095452A (ko) 모바일 엣지 컴퓨팅 환경에서 효율적인 서비스 마이그레이션을 위한 서비스 소비 계획을 제공하는 컴퓨터 시스템 및 그의 방법
Dai et al. Distributed traffic control for reduced fuel consumption and travel time in transportation networks
Wang et al. Joint path planning of truck and drones for mobile crowdsensing: Model and algorithm
Itani et al. Dynamic traveling repairperson problem for dynamic systems
Alcaraz et al. Online model-based reinforcement learning for decision-making in long distance routes
Menelaou et al. Scheduling vehicles for on-time arrival using route-reservations
Dere et al. Usage of the a* algorithm to find the shortest path in transportation systems
Giannakopoulou et al. Dynamic timetable information in smart cities

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant