KR101898190B1 - 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법 - Google Patents

이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법 Download PDF

Info

Publication number
KR101898190B1
KR101898190B1 KR1020160183972A KR20160183972A KR101898190B1 KR 101898190 B1 KR101898190 B1 KR 101898190B1 KR 1020160183972 A KR1020160183972 A KR 1020160183972A KR 20160183972 A KR20160183972 A KR 20160183972A KR 101898190 B1 KR101898190 B1 KR 101898190B1
Authority
KR
South Korea
Prior art keywords
node
path
mobile robot
candidate
new sample
Prior art date
Application number
KR1020160183972A
Other languages
English (en)
Other versions
KR20180078808A (ko
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 KR1020160183972A priority Critical patent/KR101898190B1/ko
Publication of KR20180078808A publication Critical patent/KR20180078808A/ko
Application granted granted Critical
Publication of KR101898190B1 publication Critical patent/KR101898190B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/008Manipulators for service tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 이동 로봇의 경로 생성 방법에 관한 것으로, 임의의 신규 샘플 노드를 추가하고, 신규 샘플 노드와 가장 가까운 거리에 있는 제1 노드를 찾아 상기 제1 노드에서 상기 신규 샘플 노드까지 생성된 경로를 따라 주행할 때 일정한 시간 동안 주행하여 도착한 자세를 후보 노드로 생성하고, 이동 속도의 제약과 관련된 확률값에 따라 상기 후보 노드를 노드 집합에 추가한다. 본 발명에 의하면 이동 로봇의 이동 속도 제약을 경로 계획에 반영시키면서 이동 비용을 최소화할 수 있다.

Description

이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법 {MOBILE ROBOT AND METHOD FOR PLANING PATH OF MOBILE ROBOT CONSIDERING DRIVING ENVIRONMENT}
본 발명은 이동 로봇 및 그 경로 생성 방법에 관한 것으로, 좀 더 상세하게는 주행 환경을 고려한 이동 로봇의 경로 생성 방법 및 이를 이용한 이동 로봇에 관한 것이다.
최근 사람을 대상으로 서비스를 제공하는 이동 로봇에 대한 연구가 활발히 진행되고 있다. 이러한 서비스를 제공하기 위해서는 이동 로봇이 인간과 같은 공간에서 활동을 해야 하는데, 이러한 환경에서 경로 계획 시 가장 중요하게 고려되어야 하는 부분이 안전성이다. 사람이 많은 공간은 굉장히 동적일 뿐만 아니라 그 움직임을 예측하기도 쉽지 않다. 따라서 가능한 한 사람들과 거리를 두고 이동하는 것이 가장 안전할 수 있으나, 사람을 대상으로 서비스하는 로봇의 경우 때때로 사람들 사이로 지나가는 경로도 필요하다. 로봇이 사람들 사이로 지나가는 경우에는, 충돌 회피 알고리즘이 존재하더라도 기본적으로 안전성을 위해 로봇의 최대 이동 속도를 낮출 필요가 있다. 그리고 경로 계획 시에 장애물 회피와 함께 이러한 제약 조건도 함께 고려되어야 한다.
기존에 널리 사용되는 경로 계획 방법들은 주로 지도 위에 장애물을 표시한 후, 해당 지도 위에서 충돌 회피 경로를 찾는 것을 목표로 둔다. 하지만 이러한 방식으로는 사람의 활동 공간을 효과적으로 반영하지 못한다. 최근에는 지도 위에 장애물뿐만 아니라 비용도 표시한 후, 최소 비용 경로를 찾는 경로 계획법도 개발되었다. 이러한 방법을 이용하면 사람의 활동 공간을 효과적으로 반영할 수는 있으나, 안전성을 위한 로봇의 이동 속도 제약을 경로 계획에 반영시킬 수는 없다.
한국공개특허 제10-2009-0126414호
따라서 본 발명이 해결하고자 하는 과제는 이동 로봇의 이동 속도 제약을 경로 계획에 반영시키면서 이동 비용을 최소화할 수 있는 이동 로봇의 경로 생성 방법 및 이를 이용한 이동 로봇을 제공하는 것이다.
본 발명의 한 실시예에 따른 이동 비용에 따라 이동 속도의 제약을 가지는 이동 로봇의 경로 생성 방법은, 임의의 신규 샘플 노드를 추가하는 단계, 노드 집합에서 상기 신규 샘플 노드와 가장 가까운 거리에 있는 제1 노드를 찾는 단계, 상기 제1 노드에서 상기 신규 샘플 노드까지 생성된 경로를 따라 주행할 때 일정한 시간 동안 주행하여 도착한 자세를 후보 노드로 생성하는 단계, 그리고 상기 이동 속도의 제약과 관련된 확률값에 따라 상기 후보 노드를 상기 노드 집합에 추가하는 단계를 포함한다.
상기 추가 단계는 상기 제1 노드에서 상기 후보 노드까지의 후보 경로 위에서의 이동 속도 평균값을 이용하여 리젝션 샘플링을 수행함으로써 상기 후보 노드를 상기 노드 집합에 추가하는 단계를 포함할 수 있다.
상기 이동 속도 평균값(wa)과 최대 이동 속도(wmax)의 비(wa/wmax)가 [0, 1] 구간에서 균일 분포를 이용하여 생성된 임의의 수(u)보다 크면 상기 후보 노드를 상기 노드 집합에 추가할 수 있다.
상기 이동 속도의 제약이 커지면 상기 후보 노드가 추가될 확률이 낮아지고 상기 이동 속도의 제약이 작아지면 상기 후보 노드가 추가될 확률이 높아질 수 있다.
상기 후보 노드 생성 단계는 상기 생성된 경로를 따라 주행하는 총주행 시간이 상기 일정한 시간보다 크면 상기 생성된 경로에서 주행 시간이 상기 일정한 시간 이상인 구간을 제거하여 후보 경로를 생성하는 단계를 포함할 수 있다.
상기 신규 샘플 노드와 상기 제1 노드 사이의 거리 척도는 상기 이동 로봇이 회전-직진-회전하는 형태로 상기 신규 샘플 노드와 상기 제1 노드 사이를 이동하는 데 걸리는 시간으로 정의될 수 있다.
상기 이동 로봇의 자세 공간에서 균일 분포를 이용하여 임의의 자세를 생성하고, [0, 1] 구간에서 균일 분포를 이용하여 임의의 수를 생성한 후, 상기 임의의 수가 상기 임의의 자세에서의 비용값보다 크면 상기 임의의 자세를 상기 신규 샘플 노드로 추가할 수 있다.
본 발명의 다른 실시예에 따른 이동 비용에 따라 이동 속도의 제약을 가지는 이동 로봇은, 임의의 신규 샘플 노드를 추가하고, 노드 집합에서 상기 신규 샘플 노드와 가장 가까운 거리에 있는 제1 노드를 찾으며, 상기 제1 노드에서 상기 신규 샘플 노드까지 생성된 경로를 따라 주행할 때 일정한 시간 동안 주행하여 도착한 자세를 후보 노드로 생성하고, 상기 이동 속도의 제약과 관련된 확률값에 따라 상기 후보 노드를 상기 노드 집합에 추가하는 경로 생성부를 포함한다.
상기 경로 생성부는 상기 제1 노드에서 상기 후보 노드까지의 후보 경로 위에서의 이동 속도 평균값을 이용하여 리젝션 샘플링을 수행함으로써 상기 후보 노드를 상기 노드 집합에 추가할 수 있다.
상기 경로 생성부는 상기 생성된 경로를 따라 주행하는 총주행 시간이 상기 일정한 시간보다 크면 상기 생성된 경로에서 주행 시간이 상기 일정한 시간 이상인 구간을 제거하여 후보 경로를 생성할 수 있다.
상기 경로 생성부는 상기 이동 로봇의 자세 공간에서 균일 분포를 이용하여 임의의 자세를 생성하고, [0, 1] 구간에서 균일 분포를 이용하여 임의의 수를 생성한 후, 상기 임의의 수가 상기 임의의 자세에서의 비용값보다 크면 상기 임의의 자세를 상기 신규 샘플 노드로 추가할 수 있다.
본 발명에 따른 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법에 의하면 이동 로봇의 이동 속도 제약과 관련된 확률값에 따라 트리의 노드를 추가함으로써 이동 로봇의 이동 속도 제약을 경로 계획에 반영시키면서 이동 비용을 최소화할 수 있다.
도 1은 본 발명의 실시예에 따른 이동 로봇의 블록도이다.
도 2는 본 발명의 실시예에 따른 이동 로봇의 경로 생성 방법을 설명하기 위한 주행 환경 지도의 예시도이다.
도 3은 본 발명의 실시예에 따른 이동 로봇의 경로 생성 방법을 설명하기 위한 흐름도이다.
도 4는 도 3에 도시한 흐름도의 Sample 함수를 설명하기 위한 흐름도이다.
도 5는 도 3에 도시한 흐름도의 FN 함수를 설명하기 위한 흐름도이다.
도 6은 도 3에 도시한 흐름도의 St 함수를 설명하기 위한 흐름도이다.
도 7은 도 3에 도시한 흐름도의 Acceptable 함수를 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 경로 생성 방법과 기존 충돌 회피 경로계획 알고리즘을 비교하기 위한 도면이다.
도 9는 본 발명의 실시예에 따른 경로 생성 방법과 기존 충돌 회피 경로계획 알고리즘을 비교하기 위한 도면이다.
도 10은 본 발명의 실시예에 따른 경로 생성 방법에 의한 이동 비용 감소율을 나타낸 그래프이다.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 안 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원 시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 이동 로봇의 블록도이고, 도 2는 본 발명의 실시예에 따른 이동 로봇의 경로 생성 방법을 설명하기 위한 주행 환경 지도의 개략도이다.
도 1을 참고하면, 본 발명의 실시예에 따른 이동 로봇(100)은 센서(10), 경로 생성부(20), 그리고 구동부(30)를 포함하며, 차동 가능하게 주행할 수 있다.
일반적으로 이동 로봇을 위한 지도는 주행 가능한 자유 공간과 주행이 불가능한 장애물 공간으로만 이루어진 것으로 표현이 된다. 그러나 현실에서는 실외인 경우는 물웅덩이, 모래구덩이, 경사진 곳, 실내인 경우는 카펫 등과 같이 이동은 가능하지만 선호되지 않는, 즉 이동 비용이 높은 공간이 존재한다. 또한 사람을 대상으로 서비스하는 이동 로봇(100)의 경우 사람이 밀집되어 있는 곳은 그렇지 않은 곳에 비하여 안전성을 위하여 이동 로봇(100)의 이동 속도를 낮출 필요가 있다.
도 2에 예시한 것과 같이, 주행 환경 지도는 이러한 것들을 고려할 수 있도록, 각 지점을 지나가는 데에 필요한 비용을 연속 값으로 표현하여 나타낸 것으로서, 단순히 지형지물에 따른 이동 비용만이 아니라 사람들 사이의 밀집도와 같이 주변 환경 요인에 따른 이동 비용도 고려한 비용 지도이다. 따라서 주행 환경 지도는 기존의 자유 공간과 장애물 공간뿐만 아니라 그 중간의 형태도 유연하게 표현할 수 있는 보다 일반화된 주행 지도이다.
이동 로봇(100)이 활동하는 공간에서 이동 속도에 제약을 주는 요인을 종합하여 이동 속도 제약의 크기를 나타내는 비용 함수 C:R2 → [0,1]를 정의한다. 예를 들면, 이동 비용을 이동에 걸리는 시간으로 정의할 수 있다. 함수 C 값이 0인 곳은 자유 공간이 되고, 1인 곳은 장애물이 된다. 이 때, 공간상의 (x, y)에서의 각 바퀴의 최대 각속도의 크기를 다음과 같이 나타낼 수 있다.
[수학식 1]
Figure 112016129712610-pat00001
여기서 wmax는 최대 출력 시의 바퀴 최대 각속도이다.
센서(10)는 이동 로봇(100) 주변의 환경 정보를 수집한다. 센서(10)는 예를 들면, 외부의 영상 정보를 수집하는 카메라, 이동 로봇(100)의 위치 정보를 수집하는 GPS 센서, 대상물과의 거리를 측정하여 장애물을 판단하기 위한 라이다(LIDAR) 센서, 또는 이동 로봇(100) 주위 환경 정보를 수집하는 적외선 센서 등을 포함할 수 있다.
경로 생성부(20)는 주어진 주행 환경 지도에서 출발점에서 도착점까지 최단시간 경로를 찾는다. 경로 생성 시에 장애물 회피는 물론 이동 로봇(100)의 속도 등의 변화를 유발하는 환경에 의한 제약 조건이 고려된다. 이동 로봇(100)은 비용 값이 로봇의 동적 제약조건으로 사용되므로 항상 일정한 속도를 낼 수 있는 것이 아니라 이동 비용에 따라 낼 수 있는 최대 속도가 달라질 수 있다. 즉, 비용이 낮은 곳에서는 속도를 높게 하고 비용이 높은 곳에서는 속도를 낮게 한다.
이동 비용을 감소시키는 경로 생성을 위해서는 비용이 높은 구간은 장애물 공간처럼 피해서 지나가고, 비용이 낮은 구간은 완전히 자유 공간처럼 여기는 방법으로는 이동 비용을 효과적으로 감소시킬 수 없다. 단적인 예로, 비용이 높은 구역이 얇고 길게 늘어져 있는 경우, 굳이 돌아가기보다 그냥 건너가는 것이 효율적일 수 있기 때문이다. 따라서 비용이 낮은 공간을 최대한 활용하되, 비용이 높은 공간도 지속적으로 통과를 시도해 보는 방식으로 경로를 생성한다. 또한 경로 생성부(20)는 두 노드를 잇는 경로를 추가할 때 경로의 비용이 낮다고 무조건 추가하는 것이 아니라 확률적으로 추가하되, 경로의 비용이 낮을수록 추가할 확률이 높아지는 방식으로 경로를 추가한다.
출발점부터 도착점까지 경로가 하나씩 추가되어 경로가 완성되면 구동부(30)는 완성된 경로를 따라 이동 로봇(100)이 주행할 수 있도록 한다.
그러면 도 3 내지 도 7을 참고하여 본 발명의 실시예에 따른 이동 로봇의 경로 생성 방법에 대하여 좀 더 상세하게 설명한다.
도 3은 본 발명의 실시예에 따른 이동 로봇의 경로 생성 방법을 설명하기 위한 흐름도이고, 도 4 내지 도 7은 각각 도 3에 도시한 흐름도의 Sample, FN, St 및 Acceptable 함수를 설명하기 위한 흐름도이다.
주행 환경을 고려한 경로 계획 알고리즘은 현재 가장 널리 사용되는 알고리즘 중 하나인 RRT(rapidly-exploring random tree)를 기반으로 구현할 수 있다. 다만, 주행 환경 지도 위에서는 충돌 여부보다 고비용 여부가 트리(tree)의 확장에 있어서 기준으로써 사용된다. 이동 로봇의 경로 생성을 위한 주행 환경 지도는 사전에 주어진 것으로 하여 설명한다. 본 발명의 실시예에 따른 주행 환경을 고려한 이동 로봇의 경로 생성 방법은 경로 생성부(20)가 수행할 수 있으나, 이에 한정되지 않으며 외부 장치에서 수행되어 생성된 경로가 이동 로봇(100)에 전달될 수도 있다.
도 3을 참고하면, 먼저 출발점(Ps), 도착점(Pg), 반복 횟수(N)가 입력되면(S10), 경로 트리를 구성하는 노드 집합(V)에 출발점(Ps)을 넣고(S15), 트리의 선 집합(E)을 초기화한다(S20). 여기서 노드 집합(V)의 원소는 위치와 방향을 포함하는 자세가 된다. 이후로 설명의 편의를 위하여 노드와 자세를 혼용해서 쓰기로 한다.
그리고 단계(S30) 내지 단계(S75)를 반복 횟수(N)만큼 반복한다(S25, S85).
반복 루프 내에서는 우선, Sample 함수를 실행한다(S30). Sample 함수는 가능한 한 이동 속도의 제약이 적은 지역 위주로 트리의 확장이 이루어지도록 리젝션 샘플링(rejection sampling) 기법을 사용한다, 즉, 도 4를 참고하면, 로봇의 자세 공간에서 균일 분포를 이용하여 임의의 자세(Pr)를 생성하고(S32), [0, 1] 구간에서 균일 분포를 이용하여 임의의 수(u)를 생성한(S34) 다음, u > C(Prx, Pry)이면(S36) 생성된 자세(Pr)를 그대로 사용하고(S36-예), 그렇지 않으면 임의의 자세(Pr)를 다시 고르는 방식(S36-아니오)으로 진행한다. 여기서 (Prx, Pry)는 임의의 자세(Pr)의 (x, y) 위치이고 C는 (x, y)에서의 비용이다. 최종적으로 단계(S36)에서 u > C(Prx, Pry) 조건이 성립하면 생성된 임의의 자세(Pr)를 출력하고 Sample 함수를 리턴한다(S38).
다음으로, Sample 함수에서 리턴된 자세(Pr)와 노드 집합(V)을 이용하여 노드 집합(V) 중에서 자세(Pr)와 가장 가까운 노드를 찾는 FN 함수를 실행한다(S40). 도 5를 참고하면, 노드 집합(V)과 자세(Pr)가 입력되면(S41), 최소 거리(Dm)를 무한대로 하여 초기화한다(S42). 노드 집합(V)에 포함되어 있는 임의의 원소 Pv를 선택하고 이를 노드 집합(V)에서 제거한다(S43). 자세(Pr)와 자세(Pv)의 거리(D)와 최소 거리(Dm)를 비교하여(S44) 두 자세(Pr, Pv)의 거리(D)가 최소 거리(Dm)보다 크면 단계(S46)로 점프하고, 작으면 해당 거리(D)를 최소 거리(Dm)로 두고, 자세(Pv)를 자세(Pt)로 둔다(S45). 이때 두 자세의 거리 척도는 모든 공간에서 로봇의 각 바퀴가 최대 각속도를 낼 수 있다는 가정 하에 회전-직진-회전하는 형태로 두 지점 사이를 이동하는 데 걸리는 시간을 사용할 수 있고, 다음 [수학식 2]와 같이 나타낼 수 있다.
[수학식 2]
Figure 112016129712610-pat00002
여기서, (P1,x, P1,y) 및 (P2,x, P2,y)은 각각 자세(P1)와 자세(P2)의 위치이고, P1,θ와 P2,θ는 각각 자세(P1)와 자세(P2)의 방향이며, r은 로봇의 바퀴 반지름, b는 로봇의 차축 길이이다.
그러고 나서 노드 집합(V)이 공집합인지 판단하여(S46) 공집합이 아니면 다시 단계(S43) 내지 단계(S46)를 반복하고, 공집합이면 최종 산출된 자세(Pt)를 출력하고 FN 함수를 리턴한다(S47). 이 자세(Pt)가 노드 집합(V) 중에서 자세(Pr)와 가장 가까운 노드에 대응한다.
다음으로, St 함수를 실행한다(S50). St 함수는 자세(Pt)로부터 자세(Pr)까지 일정한 시간(T) 동안 주행하는 경로(σ)를 생성하는 함수이다. 일정한 시간(T) 동안 주행한 경로를 생성하는 과정에서 [수학식 1]에서 정의한 속도 제약을 반영한다.
도 6을 참고하여 좀 더 상세하게 설명하면, 자세(Pr, Pt) 및 시간(T)이 입력되면(S51) 로컬 플래너(local planner)를 이용하여 경로(σ)를 생성한다. 로컬 플래너는 기존의 알려진 알고리즘을 사용할 수 있다. 생성된 경로(σ)를 따라 이동 로봇(100)이 주행한다고 할 때 [수학식 1]에서와 같이 주행 환경 지도에서 정의된 속도 제약을 반영하여 주행하는 것으로 한다. 경로(σ)를 따른 총주행 시간이 일정한 시간(T)보다 크면(S53-예), 경로(σ)에서 주행 시간이 일정한 시간(T) 이상인 구간을 제거하여 새로운 경로(σ)로 두고(S54), 주행 시간이 일정한 시간(T)이 되는 때의 자세(Pn)를 생성한다(S55). 한편 경로(σ)를 따른 총주행 시간이 일정한 시간(T)보다 작으면(S53-아니오), 주행이 완료된 때의 자세(Pn)를 생성한다(S56). 단계(S52) 또는 단계(S54)에서 생성된 경로(σ)와 단계(S55)에서 생성된 자세(Pn)를 출력하고 St 함수를 리턴한다(S56). 여기서, 생성된 자세(Pn)는 경로(σ)의 최종 시점의 자세가 된다.
다음으로, St 함수에서 생성된 경로(σ)가 허용될 만한지 판단하는 Acceptable 함수를 실행하고 그 결과에 따라 노드 추가 여부를 결정한다(S60). 기존의 무충돌 경로 계획을 위해서는 생성된 경로(σ)에서 충돌이 없는지 여부만 체크하면 된다. 그러나 본 발명의 실시예에서는 환경적 요인에 따라 구역별로 서로 다른 이동 속도의 제약이 발생하기 때문에, 이동 시간을 단축하기 위해서는 경로(σ)가 가능한 한 이동 속도의 제약이 적은 구역을 지나가는 것이 유리하다. 이러한 경향성을 부여하기 위해, 무충돌을 체크함과 동시에 경로(σ) 위의 이동 속도 평균값을 이용하여 리젝션 샘플링을 수행한다.
도 7을 참고하여 좀 더 상세하게 설명하면, St 함수에서 생성된 경로(σ)가 입력되면(S62), 경로(σ) 위에서의 [수학식 1]의 이동 속도 w(x, y)의 평균값(wa)을 다음 [수학식 3]과 같이 계산한다(S64).
[수학식 3]
Figure 112016129712610-pat00003
그러고 나서 [0, 1] 구간에서 균일 분포를 이용하여 임의의 수(u)를 생성한(S66) 다음, u < wa/wmax 인지 판단하여(S67) 그러하면 True를 출력하고(S68), 그렇지 않으면 False를 출력한(S69) 후 Acceptable 함수를 리턴한다. 이동 속도의 제약이 작을수록 True를 출력할 확률이 높아지고, 이동 속도의 제약이 클수록 False를 출력할 확률이 높아진다.
다시 도 3을 참고하면, Acceptable 함수값이 True이면(S60-예), St 함수에서 생성된 자세(Pn)를 노드 집합(V)에 포함시키고(S70), 노드 연결선(Pt, Pn)을 선 집합(E)에 포함시킨다(S75). Acceptable 함수값이 False이면(S60-아니오), 이러한 단계(S70) 및 단계(S75)를 생략하고 다시 루프의 시작으로 돌아간다. 이와 같이 생성된 후보 노드(Pn)를 트리에 무조건 추가하는 것이 아니라 Acceptable 함수를 이용하여 이동 속도의 제약과 관련된 확률값에 따라 추가함으로써 트리를 확장하는 것이다.
위와 같은 동작을 N회 반복한 후 노드 집합(V), 선 집합(E) 및 도착점(Pg)을 이용하여 전체 경로를 추출한다(S80). 선 집합(E)에 포함되어 있는 연결선을 이용하여 출발점(Ps)부터 도착점(Pg)까지 연결할 때 최소 비용으로 연결되는 선들을 선택함으로써 전체 경로를 추출할 수 있다.
도 3의 흐름도와 같은 경로 생성 방법은 다음과 같은 경로 계획 알고리즘으로 나타낼 수 있다.
Figure 112016129712610-pat00004
그러면 도 8 내지 도 10을 참고하여 본 발명의 실시예에 따른 경로 생성 방법에 따라 테스트한 결과를 기존 충돌 회피 경로계획 알고리즘과 비교하여 설명한다.
도 8 및 도 9는 본 발명의 실시예에 따른 경로 생성 방법과 기존 충돌 회피 경로계획 알고리즘을 비교하기 위한 도면이고, 도 10은 본 발명의 실시예에 따른 경로 생성 방법에 의한 이동 비용 감소율을 나타낸 그래프이다.
테스트는 차동 바퀴 로봇으로 5종의 지도에 대해 각각 출발점과 도착점을 다르게 10회씩 진행하여 총 50회 수행하였다. 각 지도의 특징은 아래 [표 1]과 같다.
지도번호 설명
1 - 12 x 12의 격자 모양의 구조
- 10% 자유공간 (비용 0)
- 90% 비자유공간 (비용이 0 ~ 0.9 사이에서 random)
2 - 12 x 12의 격자 모양의 구조
- 50% 자유공간 (비용 0)
- 50% 비자유공간 (비용이 0 ~ 0.9 사이에서 random)
3 - 최댓값이 0.9이고 평균, 분산이 random인 정규분포 10개 생성
4 - 최댓값이 0.9이고 평균, 분산이 random인 정규분포 30개 생성
5 - 직접 그린 일반적인 형태의 지도
모든 지도는 테두리를 제외하고는 주행이 불가능한 공간이 없다. 따라서 비교 대상인 기존 충돌 회피 경로계획 알고리즘은 출발점으로부터 도착점까지 직선으로 경로계획을 하게 된다. 각 지도 종류에 대한 충돌 회피 경로계획 알고리즘과 본 발명의 실시예에 따른 주행 환경을 고려한 경로 생성 방법에 의한 경로 계획 결과는 도 8과 같다. 각 지도별로 좌측 도면은 기존 충돌 회피 경로 계획 알고리즘에 의한 경로 계획 결과이고, 우측 도면은 본 발명의 실시예에 따른 주행 환경을 고려한 경로 생성 방법에 의한 경로 계획 결과이다.
정량적 결과로 총 50번의 실험에 대한 이동 비용은 도 9와 같다. 도 9를 참고하면 기존 방법에 비하여 본 발명의 실시예에 따른 경로 생성 방법에 의하면 전반적으로 비용이 크게 줄어듦을 확인할 수 있다.
각 지도 종류에 대하여 기존 충돌회피 알고리즘 대비 본 발명의 실시예에 따른 경로 생성 방법의 이동 비용 감소율은 도 10과 같다. 비용 감소율은 전체적으로 20%를 상회하였고, 백색 잡음과 같은 형태의 랜덤(random) 격자 지도(지도 1)에서 상대적으로 낮았지만, 보다 현실적인 비용 지도의 형태에서는 비용감소율이 40% 내외로 매우 높게 나타났다. 평균 비용 감소율은 38.55%로 나타났고, 비용 감소율이 20% 이상인 경우를 성공으로 간주했을 때 성공률은 94%로 나타났다.
이와 같이 본 발명의 실시예에 따른 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법에 의하면 이동 로봇의 이동 속도 제약과 관련된 확률값에 따라 트리의 노드를 추가함으로써 이동 로봇의 이동 속도 제약을 경로 계획에 반영시키면서 이동 비용을 최소화할 수 있다.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내고 설명하는 것에 불과하며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉, 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위 내에서 변경 또는 수정이 가능하다. 전술한 실시예들은 본 발명을 실시하는데 있어 최선의 상태를 설명하기 위한 것이며, 본 발명과 같은 다른 발명을 이용하는데 당업계에 알려진 다른 상태로의 실시, 그리고 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.
10: 센서, 20: 경로 생성부,
30: 구동부, 100: 이동 로봇

Claims (14)

  1. 이동 비용에 따라 이동 속도의 제약을 가지는 이동 로봇의 경로 생성 방법으로서,
    임의의 신규 샘플 노드를 추가하는 단계,
    노드 집합에서 상기 신규 샘플 노드와 가장 가까운 거리에 있는 제1 노드를 찾는 단계,
    상기 제1 노드에서 상기 신규 샘플 노드까지 생성된 경로를 따라 주행할 때 일정한 시간 동안 주행하여 도착한 자세를 후보 노드로 생성하는 단계, 그리고
    상기 이동 속도의 제약과 관련된 확률값에 따라 상기 후보 노드를 상기 노드 집합에 추가하는 단계
    를 포함하는 이동 로봇의 경로 생성 방법.
  2. 제1항에서,
    상기 후보 노드를 상기 노드 집합에 추가하는 단계는 상기 제1 노드에서 상기 후보 노드까지의 후보 경로 위에서의 이동 속도 평균값을 이용하여 리젝션 샘플링을 수행함으로써 상기 후보 노드를 상기 노드 집합에 추가하는 단계를 포함하는 이동 로봇의 경로 생성 방법.
  3. 제2항에서,
    상기 이동 속도 평균값(wa)과 최대 이동 속도(wmax)의 비(wa/wmax)가 [0, 1] 구간에서 균일 분포를 이용하여 생성된 임의의 수(u)보다 크면 상기 후보 노드를 상기 노드 집합에 추가하는 이동 로봇의 경로 생성 방법.
  4. 제1항에서,
    상기 이동 속도의 제약이 커지면 상기 후보 노드가 추가될 확률이 낮아지고 상기 이동 속도의 제약이 작아지면 상기 후보 노드가 추가될 확률이 높아지는 이동 로봇의 경로 생성 방법.
  5. 제1항에서,
    상기 후보 노드 생성 단계는 상기 생성된 경로를 따라 주행하는 총주행 시간이 상기 일정한 시간보다 크면 상기 생성된 경로에서 주행 시간이 상기 일정한 시간 이상인 구간을 제거하여 후보 경로를 생성하는 단계를 포함하는 이동 로봇의 경로 생성 방법.
  6. 제1항에서,
    상기 신규 샘플 노드와 상기 제1 노드 사이의 거리 척도는 상기 이동 로봇이 회전-직진-회전하는 형태로 상기 신규 샘플 노드와 상기 제1 노드 사이를 이동하는 데 걸리는 시간으로 정의되는 이동 로봇의 경로 생성 방법.
  7. 제1항에서,
    상기 이동 로봇의 자세 공간에서 균일 분포를 이용하여 임의의 자세를 생성하고, [0, 1] 구간에서 균일 분포를 이용하여 임의의 수를 생성한 후, 상기 임의의 수가 상기 임의의 자세에서의 비용값보다 크면 상기 임의의 자세를 상기 신규 샘플 노드로 추가하는 이동 로봇의 경로 생성 방법.
  8. 이동 비용에 따라 이동 속도의 제약을 가지는 이동 로봇으로서,
    임의의 신규 샘플 노드를 추가하고, 노드 집합에서 상기 신규 샘플 노드와 가장 가까운 거리에 있는 제1 노드를 찾으며, 상기 제1 노드에서 상기 신규 샘플 노드까지 생성된 경로를 따라 주행할 때 일정한 시간 동안 주행하여 도착한 자세를 후보 노드로 생성하고, 상기 이동 속도의 제약과 관련된 확률값에 따라 상기 후보 노드를 상기 노드 집합에 추가하는 경로 생성부
    를 포함하는 이동 로봇.
  9. 제8항에서,
    상기 경로 생성부는 상기 제1 노드에서 상기 후보 노드까지의 후보 경로 위에서의 이동 속도 평균값을 이용하여 리젝션 샘플링을 수행함으로써 상기 후보 노드를 상기 노드 집합에 추가하는 이동 로봇.
  10. 제9항에서,
    상기 이동 속도 평균값(wa)과 최대 이동 속도(wmax)의 비(wa/wmax)가 [0, 1] 구간에서 균일 분포를 이용하여 생성된 임의의 수(u)보다 크면 상기 후보 노드를 상기 노드 집합에 추가하는 이동 로봇.
  11. 제8항에서,
    상기 이동 속도의 제약이 커지면 상기 후보 노드가 추가될 확률이 낮아지고 상기 이동 속도의 제약이 작아지면 상기 후보 노드가 추가될 확률이 높아지는 이동 로봇.
  12. 제8항에서,
    상기 경로 생성부는 상기 생성된 경로를 따라 주행하는 총주행 시간이 상기 일정한 시간보다 크면 상기 생성된 경로에서 주행 시간이 상기 일정한 시간 이상인 구간을 제거하여 후보 경로를 생성하는 이동 로봇.
  13. 제8항에서,
    상기 신규 샘플 노드와 상기 제1 노드 사이의 거리 척도는 상기 이동 로봇이 회전-직진-회전하는 형태로 상기 신규 샘플 노드와 상기 제1 노드 사이를 이동하는 데 걸리는 시간으로 정의되는 이동 로봇.
  14. 제8항에서,
    상기 경로 생성부는 상기 이동 로봇의 자세 공간에서 균일 분포를 이용하여 임의의 자세를 생성하고, [0, 1] 구간에서 균일 분포를 이용하여 임의의 수를 생성한 후, 상기 임의의 수가 상기 임의의 자세에서의 비용값보다 크면 상기 임의의 자세를 상기 신규 샘플 노드로 추가하는 이동 로봇.
KR1020160183972A 2016-12-30 2016-12-30 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법 KR101898190B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160183972A KR101898190B1 (ko) 2016-12-30 2016-12-30 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160183972A KR101898190B1 (ko) 2016-12-30 2016-12-30 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법

Publications (2)

Publication Number Publication Date
KR20180078808A KR20180078808A (ko) 2018-07-10
KR101898190B1 true KR101898190B1 (ko) 2018-09-12

Family

ID=62915732

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160183972A KR101898190B1 (ko) 2016-12-30 2016-12-30 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법

Country Status (1)

Country Link
KR (1) KR101898190B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109917789B (zh) * 2019-03-13 2021-07-20 珠海格力电器股份有限公司 一种家电的自动运输方法、装置及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101339480B1 (ko) 2012-12-14 2013-12-10 고려대학교 산학협력단 Rrt 기반의 듀얼 트리 구조를 이용한 이동 로봇의 궤적 계획 방법
JP2016049616A (ja) 2014-09-02 2016-04-11 トヨタ自動車株式会社 走行ロボット、その動作計画方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090126414A (ko) 2008-06-04 2009-12-09 삼성전자주식회사 로봇 및 그 경로생성방법
KR101554515B1 (ko) * 2009-01-07 2015-09-21 삼성전자 주식회사 로봇의 경로계획장치 및 그 방법
KR101667030B1 (ko) * 2009-08-10 2016-10-17 삼성전자 주식회사 로봇의 경로 계획 장치 및 그 방법
KR101667031B1 (ko) * 2009-11-02 2016-10-17 삼성전자 주식회사 로봇의 경로 계획 장치 및 그 방법
KR101382982B1 (ko) * 2012-03-06 2014-04-09 고려대학교 산학협력단 로봇의 주행 경로 계획 장치 및 방법
KR102165437B1 (ko) * 2014-05-02 2020-10-14 한화디펜스 주식회사 이동 로봇의 경로 계획 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101339480B1 (ko) 2012-12-14 2013-12-10 고려대학교 산학협력단 Rrt 기반의 듀얼 트리 구조를 이용한 이동 로봇의 궤적 계획 방법
JP2016049616A (ja) 2014-09-02 2016-04-11 トヨタ自動車株式会社 走行ロボット、その動作計画方法及びプログラム

Also Published As

Publication number Publication date
KR20180078808A (ko) 2018-07-10

Similar Documents

Publication Publication Date Title
KR102296507B1 (ko) 트래킹 네트워크를 포함한 cnn을 사용하여 객체를 트래킹하는 방법 및 이를 이용한 장치
Johannsson et al. Temporally scalable visual SLAM using a reduced pose graph
Henry et al. Learning to navigate through crowded environments
US11767035B2 (en) Autonomous parking with hybrid exploration of parking space
JP6304771B2 (ja) 経路生成プログラム、経路生成方法及び経路生成装置
CN106774347A (zh) 室内动态环境下的机器人路径规划方法、装置和机器人
CN110989352B (zh) 一种基于蒙特卡洛树搜索算法的群体机器人协同搜索方法
CN111123198B (zh) 一种楼宇内的用户定位导航方法及系统
CN105652876A (zh) 基于数组地图的移动机器人室内路径规划方法
KR101286135B1 (ko) 상향식 단일 카메라를 이용한 중대형 공간에서의 자율적 위상지도 생성 방법
JP7092383B2 (ja) 各領域において最適化された自律走行を遂行できるように位置基盤アルゴリズムの選択によってシームレスパラメータ変更を遂行する方法及び装置
Lin et al. Intelligent generation of indoor topology (i-GIT) for human indoor pathfinding based on IFC models and 3D GIS technology
CN106714110A (zh) 一种Wi‑Fi位置指纹地图自动构建方法及系统
CN110442125A (zh) 一种移动机器人的动态路径规划方法
CN110044359A (zh) 一种导览机器人路径规划方法、装置、机器人和存储介质
US20230071794A1 (en) Method and system for building lane-level map by using 3D point cloud map
CN112783169A (zh) 一种路径规划方法、设备及计算机可读存储介质
CN110135644A (zh) 一种用于目标搜索的机器人路径规划方法
KR20170134165A (ko) 이동 로봇 제어 방법
JP2020123348A (ja) V2x情報融合技術によって取得された、各物体に対する深さ予測情報及び各物体に対するクラス情報を利用して3d空間を再構築することによりhdマップをアップデートする学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
Best et al. Resilient multi-sensor exploration of multifarious environments with a team of aerial robots
CN111507161B (zh) 利用合并网络进行异质传感器融合的方法和装置
CN114115271A (zh) 一种改进rrt的机器人路径规划方法和系统
KR101898190B1 (ko) 이동 로봇 및 주행 환경을 고려한 이동 로봇의 경로 생성 방법
KR102309712B1 (ko) 객체의 조건에 따라 모드를 전환할 수 있는 CNN 기반으로 군사 목적, 스마트폰 또는 가상 주행에 사용되는 수도(Pseudo)-3D 바운딩 박스를 검출하는 방법 및 이를 이용한 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant