KR101138781B1 - Method and Apparatus for Path Planning Based on Density of Obstacle - Google Patents

Method and Apparatus for Path Planning Based on Density of Obstacle Download PDF

Info

Publication number
KR101138781B1
KR101138781B1 KR1020080126068A KR20080126068A KR101138781B1 KR 101138781 B1 KR101138781 B1 KR 101138781B1 KR 1020080126068 A KR1020080126068 A KR 1020080126068A KR 20080126068 A KR20080126068 A KR 20080126068A KR 101138781 B1 KR101138781 B1 KR 101138781B1
Authority
KR
South Korea
Prior art keywords
cell
obstacle
density
operator
obstacle density
Prior art date
Application number
KR1020080126068A
Other languages
Korean (ko)
Other versions
KR20100067485A (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 KR1020080126068A priority Critical patent/KR101138781B1/en
Publication of KR20100067485A publication Critical patent/KR20100067485A/en
Application granted granted Critical
Publication of KR101138781B1 publication Critical patent/KR101138781B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/0969Systems involving transmission of navigation instructions to the vehicle having a display in the form of a map

Landscapes

  • Engineering & Computer Science (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

본 발명은 장애물 밀집도 기반 경로 계획 방법 및 장치에 관한 것이다.The present invention relates to an obstacle density based path planning method and apparatus.

본 발명은 이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하고, 각 셀을 하나 이상의 군집으로 군집화하며, 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치를 제공한다.The present invention calculates obstacle density for each cell by dividing the image into cell units, clusters each cell into one or more clusters, and performs a genetic algorithm using information on the obstacle density and one or more clusters for each cell. As a result, an obstacle density-based route planning apparatus may be output.

본 발명에 의하면, 동적 장애물과 정적 장애물의 지식 정보를 기반으로 경로 계획을 수행할 수 있기 때문에, 지능형 경로 계획을 수행할 수 있다.According to the present invention, since the route planning can be performed based on the knowledge information of the dynamic obstacle and the static obstacle, the intelligent route planning can be performed.

Description

장애물 밀집도 기반 경로 계획 방법 및 장치{Method and Apparatus for Path Planning Based on Density of Obstacle}Method and Apparatus for Path Planning Based on Density of Obstacle}

본 발명은 장애물 밀집도 기반 경로 계획 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상의 작업 영역에서 인식되는 장애물에 대한 정보와 유전자 알고리즘을 이용하여 이동 수단의 자율 주행을 위한 경로 계획을 수립하는 방법 및 장치에 관한 것이다.The present invention relates to an obstacle density based path planning method and apparatus. More specifically, the present invention relates to a method and apparatus for establishing a route plan for autonomous driving of a vehicle by using information about obstacles recognized in a work area of an image and genetic algorithm.

경로 계획은 이동 수단이 출발점에서 목표점으로 이동할 때 최적의 이동 경로를 찾는 기술이다. 경로 계획을 수립할 때에는 정적 장애물과 동적 장애물의 정보를 인식하여 이동 경로를 찾아야 한다. 경로 계획을 수립하기 위해서는 실생활 환경의 데이터 표현 방법(C-Space)이 중요한 요소이다.Route planning is a technique for finding the optimal movement path when the vehicle moves from the starting point to the target point. In planning your route, you need to know the information about static and dynamic obstacles to find your route. In order to plan the route, the data representation method (C-Space) of the real life environment is an important factor.

이를 해결하기 위해, 유전자 알고리즘을 이용하여 최적의 해를 찾아 경로 계획을 수립하는 기법이 개발되어 왔다. 하지만, 이러한 통상적인 기법들은 최단 경로를 찾는 데에만 촛점이 맞추어져 있으며, 작업공간이 커짐에 따라 경로 계획 수립을 위한 처리 속도가 증가하는 문제점이 있다.In order to solve this problem, techniques have been developed to find the optimal solution using genetic algorithm and to plan the route. However, these conventional techniques are focused only on finding the shortest path, and as the workspace increases, the processing speed for path planning increases.

즉, 기존의 경로 계획 수립 기법들은 이동 수단의 작업 공간의 크기를 고려 하지 못하고 단순히 알고리즘 측면에서 접근하기 때문에, 실제로 이동 수단에 해당 기법을 적용하면 계산량이 증가하는 문제점이 있다. 그리고 동적 장애물에 대한 지식 정보를 고려하지 않기 때문에, 최단 경로라 할지라도 이동 중에 충돌 등의 문제를 야기시킬 수 있는 문제점이 있다.That is, the existing path planning techniques do not consider the size of the working space of the vehicle, but simply approach the algorithm. Therefore, when the corresponding technique is actually applied to the vehicle, the amount of calculation increases. In addition, since the knowledge information about the dynamic obstacle is not considered, there is a problem that may cause a problem such as a collision during movement even in the shortest path.

전술한 문제점을 해결하기 위해 본 발명은, 작업 영역에서의 정적 장애물과 동적 장애물의 밀집도에 따라 장애물을 군집화하고 이들의 정보를 이용한 유전자 알고리즘 기법을 수행하여 경로 계획을 수행하는 데 주된 목적이 있다.In order to solve the above problems, the present invention has a main object in performing path planning by clustering obstacles according to the density of static obstacles and dynamic obstacles in a work area and performing a genetic algorithm technique using these information.

전술한 목적을 달성하기 위해 본 발명은, 이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하는 장애물 밀집도 계산기; 각 셀을 하나 이상의 군집으로 군집화하는 군집화기; 및 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력하는 경로 계획 출력기를 포함하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치를 제공한다.In order to achieve the above object, the present invention provides an obstacle density calculator for calculating an obstacle density for each cell by dividing an image into cells; A clusterer for clustering each cell into one or more clusters; And a path planning output unit configured to output a path plan by performing a genetic algorithm using the obstacle density for each cell and information on one or more clusters.

여기서, 장애물 밀집도 계산기는 각 셀에 대해 화소 단위로 고정 장애물/빈공간은 흑백의 점유율로, 동적 장애물은 화소의 밝기 정보를 계산함으로써 장애물 밀집도를 계산할 수 있다. 또한, 군집화기는 계층적 군집화 기법 및 비계층적 군집화 기법 중 하나 이상을 이용하여 군집화할 수 있으며, k-평균 군집화 기법을 이용 하여 각 셀들에 대해 k 개의 군집들로 할당할 수 있다. 또한, 경로 계획 출력기는 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 개체를 생성하는 유전자 개체 생성기; 유전자 개체에 대해 선택 연산자, 교차 연산자, 돌연변이 연산자 및 추가/삭제 연산자를 포함하는 연산자를 수행하는 연산 수행기; 및 유전자 개체의 적합도를 계산하여 계산된 적합도에 따라 유전자 개체의 염색체들에 해당하는 셀을 경로 계획으로서 출력하는 적합도 계산기를 포함할 수 있다. 또한, 유전자 개체 생성기는 유전자 개체 내의 경유점에 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 셀을 선택하여 할당할 수 있다. 또한, 적합도 계산기는 계산된 적합도가 최소값이 되고, 최소값이 연산 수행기에 의해 연산자를 수행하는 회수가 기 설정된 회수이상이 될 때까지 유지되면 연산자가 수행된 후의 유전자 개체의 염색체들에 해당하는 셀을 경로 계획으로서 출력할 수 있다.Here, the obstacle density calculator may calculate the obstacle density by calculating the occupancy ratio of the fixed obstacle / empty space in black and white for each cell and the dynamic obstacle for the brightness information of the pixel. In addition, clusterers may be clustered using at least one of hierarchical clustering and non-hierarchical clustering, and may be allocated to k clusters for each cell using a k-average clustering. The route planning output may also include a gene entity generator for generating a gene entity using information on obstacle density and at least one cluster for each cell; An operation performer that performs an operator on the genetic entity including a selection operator, a crossover operator, a mutation operator, and an add / delete operator; And a fitness calculator for calculating a fitness of the genetic individual and outputting a cell corresponding to the chromosomes of the genetic individual as a route plan according to the calculated fitness. In addition, the gene entity generator may select and assign a cell to a waypoint within the gene entity using information on the obstacle density for each cell and one or more clusters. In addition, the fitness calculator calculates a cell corresponding to the chromosomes of the gene entity after the operator is performed if the calculated goodness of fit is the minimum value and the minimum value is maintained until the number of times the operator performs the operation is more than the preset number. You can output it as a route plan.

또한, 본 발명의 다른 목적에 의하면, 이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하는 장애물 밀집도 계산 단계; 각 셀을 하나 이상의 군집으로 군집화하는 군집화 단계; 및 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력하는 경로 계획 출력 단계를 포함하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 방법을 제공한다.In addition, according to another object of the present invention, the obstacle density calculation step of calculating the obstacle density for each cell by dividing the image in units of cells; Clustering each cell into one or more clusters; And a path planning output step of outputting a path plan by performing a genetic algorithm using the obstacle density for each cell and information on one or more clusters.

여기서, 경로 계획 출력 단계는 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 개체를 생성하는 유전자 개체 생성 단계; 유 전자 개체의 적합도를 계산하는 적합도 계산 단계; 계산된 적합도가 최소값인지 여부를 판단하는 최소값 판단 단계; 계산된 적합도가 최소값인 경우, 최소값이 기 설정된 연산자의 수행 회수만큼 유지되는지 여부를 판단하는 유지 여부 판단 단계; 최소값이 기 설정된 연산자의 수행 회수만큼 유지되는 경우, 적합도가 최소값을 가지는 유전자 개체 내의 염색체들에 해당하는 셀들을 경로 계획으로서 출력하는 경로 계획 출력 단계; 및 계산된 적합도가 최소값이 아니거나 최소값이 기 설정된 연산 회수만큼 유지되지 않는 경우, 선택 연산자, 교차 연산자, 돌연변이 연산자 및 추가/삭제 연산자를 수행하고 적합도 계산 단계로 진행하는 연산자 수행 단계를 포함할 수 있다.Here, the path planning output step may include a gene entity generation step of generating a gene entity using obstacle density for each cell and information on one or more clusters; A goodness of fit calculation step of calculating the goodness of fit of the gene entity; A minimum value determining step of determining whether the calculated goodness of fit is the minimum value; A maintenance step determining step of determining whether the minimum value is maintained for a predetermined number of times of the operator when the calculated goodness of fit is the minimum value; A path plan output step of outputting cells corresponding to chromosomes in the genetic entity having a minimum value as a path plan, when the minimum value is maintained for the number of times of the preset operator; And performing an operator that performs a selection operator, a crossover operator, a mutation operator, and an add / delete operator, and proceeds to the goodness-of-fit calculation step when the calculated goodness of fit is not the minimum value or the minimum value is not maintained for a predetermined number of operations. have.

이상에서 설명한 바와 같이 본 발명에 의하면, 동적 장애물과 정적 장애물의 지식 정보를 기반으로 경로 계획을 수행할 수 있기 때문에, 지능형 경로 계획을 수행할 수 있다.As described above, according to the present invention, since the route planning can be performed based on the knowledge information of the dynamic obstacle and the static obstacle, the intelligent route planning can be performed.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail through exemplary drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible even though they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected or connected to that other component, but between components It will be understood that may be "connected", "coupled" or "connected".

도 1은 본 발명의 일 실시예에 따른 장애물 밀집도 기반 경로 계획 장치를 간략하게 나타낸 블록 구성도이다.1 is a block diagram schematically showing an obstacle density based path planning apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 장애물 밀집도 기반 경로 계획 장치(100)는 장애물 밀집도 계산기(110), 군집화기(120) 및 경로 계획 출력기(130)를 포함하여 구성될 수 있다. 이러한 밀집도 기반 경로 계획 장치(100)는 컴퓨터 비전 시스템(Computer Vision System)이나 컴퓨터 비전 시스템 내의 영상 처리 장치로 구현되어, 이동 로봇, 차량, 비행기, 선박 등 다양한 이동 수단에 탑재될 수 있다. 컴퓨터 비전 시스템 또는 영상 처리 장치는 데이터 또는 명령어를 입력받는 키보드, 마우스 등과 같은 입력 장치, 데이터를 출력하는 모니터, 프린터, 액정 화면과 같은 출력 장치, 영상을 처리하기 위한 데이터 또는 프로그램을 저장하는 메모리, 입력되는 데이터 또는 명령어나 메모리에 저장된 데이터를 이용하여 메모리에 저장된 프로그램의 알고리즘에 따라 영상을 처리하는 마이크로프로세서 등을 구비할 수 있다.Obstacle density-based route planning apparatus 100 according to an embodiment of the present invention may be configured to include an obstacle density calculator 110, clustering unit 120 and the route planning output 130. The density-based route planning apparatus 100 is implemented as a computer vision system or an image processing apparatus in a computer vision system, and may be mounted on various moving means such as a mobile robot, a vehicle, an airplane, and a ship. A computer vision system or image processing apparatus includes an input device such as a keyboard or a mouse for receiving data or commands, a monitor for outputting data, a printer, an output device such as a liquid crystal display, a memory for storing data or a program for processing an image, A microprocessor may be used to process an image according to an algorithm of a program stored in a memory by using input data or instructions or data stored in a memory.

장애물 밀집도 계산기(110)는 이미지를 셀(Cell) 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산한다. 즉, 장애물 밀집도 계산기(110)는 작업 공간으로 인식될 수 있는 이미지의 일부 또는 전부를 소정의 크기를 갖는 셀(Cell) 단위로 구분하고, 구분된 각 셀에 대해 장애물 밀집도를 계산한다.The obstacle density calculator 110 calculates the obstacle density for each cell by dividing the image into cell units. That is, the obstacle density calculator 110 divides a part or all of the image that can be recognized as a working space into cell units having a predetermined size, and calculates the obstacle density for each divided cell.

C-Space를 위한 기본 데이터 구조를 나타낸 도 2를 참조하면, 이미지는 복수 개의 셀로 구분될 수 있으며, 각 셀에 대해 장애물 밀집도를 계산하여 각 셀을 Cd i로 나타낼 수 있다. Cd i에서 i는 셀을 나타내는 인덱스이고 d는 해당 셀에 대한 장애물 밀집도를 나타낸다.Referring to FIG. 2, which illustrates a basic data structure for a C-Space, an image may be divided into a plurality of cells, and each cell may be represented as C d i by calculating an obstacle density for each cell. In C d i , i is an index representing a cell and d represents an obstacle density for the cell.

수학식 1은 입력 이미지의 작업 공간에서 구분된 셀들의 집합을 표현한 것이다.Equation 1 represents a set of cells separated in the workspace of the input image.

Figure 112008085444715-pat00001
Figure 112008085444715-pat00001

장애물 밀집도 d는 하나의 셀에서 화소(Pixel) 단위로 검정색은 장애물로 흰색은 빈 공간으로 가정하여 계산된다. 따라서, 장애물 밀집도 계산기(110)는 각 셀에 대해 화소 단위로 고정 장애물/빈공간은 흑백의 점유율로, 동적 장애물은 화소의 밝기 정보를 계산함으로써 장애물 밀집도를 계산할 수 있다. 예를 들어, 하나의 셀 내의 전체 화소 수가 100 개이고, 그 중 검정색(흑) 화소가 60 개, 흰색(백) 화소가 40 개라고 가정하면, 해당 셀의 고정 장애물의 밀집도는 총 화소 수 중에서 검정색 화소가 차지하는 비율인 60% 또는 0.6으로 계산될 수 있다.The obstacle density d is calculated by assuming that black is an obstacle and white is an empty space in units of pixels in one cell. Accordingly, the obstacle density calculator 110 may calculate the obstacle density by calculating the occupancy ratio of the fixed obstacle / empty space in black and white and the dynamic obstacle for the brightness information of the pixel for each cell. For example, suppose that the total number of pixels in one cell is 100, among which there are 60 black (black) pixels and 40 white (white) pixels, the density of the fixed obstacles of the cell is black among the total number of pixels. It may be calculated as 60% or 0.6, which is a ratio of pixels.

군집화기(120)는 각 셀을 하나 이상의 군집으로 군집화(Clustering)한다. 즉, 군집화기(120)는 장애물 밀집도 계산기(110)에 의해 구분된 각 셀들을 모아 여러 개의 군집으로 할당한다. 여기서, 군집화기(120)는 계층적 군집화 기법 및 비계층적 군집화 기법 중 하나 이상을 이용하여 군집화할 수 있다. 특히, 군집화기(120)는 k-평균 군집화(k-Means Clustering) 기법을 이용하여 각 셀들을 여러 개(k 개)의 군집으로 할당할 수 있다.The clusterer 120 clusters each cell into one or more clusters. That is, the clustering unit 120 collects each cell divided by the obstacle density calculator 110 and assigns the plurality of clusters. Here, the clusterer 120 may cluster using at least one of a hierarchical clustering technique and a non-hierarchical clustering technique. In particular, the clusterer 120 may allocate each cell to a plurality of (k) clusters by using a k-Means Clustering technique.

k-평균 군집화를 기반으로 하는 C-Space를 구성하기 위한 의사-코드(Pseudo-Code)를 예시적으로 나타내면 도 3을 참조하면, 초기 중심셀(Centroid Cell)을 선택하고 나머지 셀들에 대해 수학식 2를 이용하여 초기 중심셀에 포함시킨다. 이후 다시 중심값을 재계산하고 전체 각 셀들이 군집 이동이 일어나지 않을 때까지 반복함으로써, 각 셀들을 여러 개의 군집으로 할당할 수 있다.Referring to FIG. 3, a pseudo-code for constructing a C-Space based on k-means clustering is illustrated. Referring to FIG. 3, an initial centroid cell is selected and equations for the remaining cells are expressed. 2 is included in the initial center cell. Then, by recalculating the center value again and repeating until all of the cells do not have a cluster movement, each cell can be allocated to multiple clusters.

Figure 112008085444715-pat00002
Figure 112008085444715-pat00002

경로 계획 출력기(130)는 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘(Genetic Algorithms)을 수행함으로써 경로 계획을 출력한다. 즉, 경로 계획 출력기(130)는 장애물 밀집도 계산기(110)에 의해 계산된 각 셀에 대한 장애물 밀집도와 군집화기(120)에 의해 생성된 여러 개의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행하기 위한 유전자 개 체(Population)를 생성하고 유전자 개체에 대해 선택 연산자(Selection Operator), 교차 연산자(Crossover Operator), 돌연변이 연산자(Mutation Operator), 추가/삭제 연산자(Insert/Delete Operator) 등의 수행을 반복하면서 유전자 개체 내의 염색체(Chromosome)들이 경로 계획을 위한 최적의 해인지 여부를 판단하여 최적의 해인 염색체들을 경로 계획으로서 출력한다. 여기서, 군집에 대한 정보는 해당 군집의 k-평균-밀집도에 대한 정보일 수 있는데, k-평균-밀집도란 해당 군집에 할당된 셀들의 장애물 밀집도의 평균일 수 있다.The route plan outputter 130 outputs the route plan by performing genetic algorithms using obstacle density and information on one or more clusters for each cell. That is, the path planning outputter 130 uses the obstacle density for each cell calculated by the obstacle density calculator 110 and information about the plurality of clusters generated by the clusterer 120 to perform a genetic algorithm. Generating a Population and repeating the Selection Operator, Crossover Operator, Mutation Operator, and Insert / Delete Operator It is determined whether the chromosomes in the genetic individual are the optimal solution for the path planning, and the optimal solutions are output as the path planning. Here, the information on the cluster may be information on k-means-density of the cluster, where k-mean-density may be an average of obstacle density of cells allocated to the cluster.

이러한 경로 계획 출력기(130)는 유전자 개체 생성기(132), 적합도 계산기(134), 선택 연산기(136), 교차 연산기(138), 돌연변이 연산기(140) 및 추가/삭제 연산기(142)를 포함하여 구성될 수 있다.The path planning output 130 includes a gene entity generator 132, a fitness calculator 134, a selection calculator 136, a cross operator 138, a mutation operator 140, and an add / delete operator 142. Can be.

유전자 개체 생성기(132)는 각 셀에 대한 장애물 밀집도 및 하나 이상의 군집에 대한 정보를 이용하여 유전자 개체를 생성한다. 즉, 유전자 개체 생성기(132)는 유전자 알고리즘을 수행하기 위한 유전자 개체(Population)를 생성하는데, 장애물 밀집도 계산기(110)에 의해 계산된 각 셀에 대한 장애물 밀집도와 군집화기(120)에 의해 군집화된 정보들을 이용한다.The gene entity generator 132 generates a gene entity using information on obstacle density and one or more clusters for each cell. That is, the gene entity generator 132 generates a gene population for performing a genetic algorithm, which is clustered by the obstacle density and the clusterer 120 for each cell calculated by the obstacle density calculator 110. Use information.

유전자 개체의 염색체 정보를 예시적으로 나타낸 도 4를 참조하면, 유전자 개체는 시작점(Start Point), 경유점(via Point)과 종료점(End Point)를 포함할 수 있는데, 경유점은 각 셀에 대한 장애물 밀집도와 하나 이상의 군집에 대한 정보를 기반으로 임의의 셀이 할당될 수 있다. 이러한 여러 개의 염색체를 임의로 생성하여 경유점에 할당함으로써 하나의 유전자 개체가 생성될 수 있는데, 이러한 유전자 개체는 복수 개 이상으로 생성될 수 있다. 유전자 개체의 개수가 많을 수록 경로 계획을 수립하기 위한 최적의 해를 찾기 쉽다. 염색체들은 도시한 바와 같이, Cd 1, …, Cd 10, …, Cd n으로 표현될 수 있는데, 각 염색체들은 k-평균-밀집도(k-Means-Density)에 대한 정보를 포함한다.Referring to FIG. 4 exemplarily illustrating chromosomal information of a genetic individual, the genetic individual may include a start point, a via point, and an end point, which are for each cell. Any cell may be allocated based on obstacle density and information on one or more clusters. One gene entity may be generated by arbitrarily generating these chromosomes and assigning them to waypoints, and a plurality of such gene entities may be generated. The larger the number of genetic individuals, the easier it is to find the optimal solution for planning the route. The chromosomes are shown as C d 1 ,... , C d 10 ,.. , C d n , where each chromosome contains information on k-Means-Density.

적합도 계산기(134)는 유전자 개체의 적합도를 계산하고 계산된 적합도에 따라 유전자 개체 내의 염색체에 해당하는 셀을 경로 계획으로서 출력한다. 즉, 적합도 계산기(134)는 유전자 개체 생성기(132)에 의해 생성된 유전자 개체의 적합도를 계산하고 적합도가 소정의 조건을 만족하는지 여부를 판단함으로써 유전자 개체 내의 염색체(Chromosome)들이 경로 계획을 위한 최적의 해인지 여부를 판단하여 최적의 해인 염색체들을 포함하는 유전자 객체 내의 염색체에 해당하는 셀을 경로 계획으로서 출력한다. 여기서, 유전자 객체의 적합도는 유전자 객체의 염색체들이 경로 계획을 위한 최적의 해인지 여부를 판별하기 위한 기준이다.The fitness calculator 134 calculates the fitness of the genetic individual and outputs the cell corresponding to the chromosome in the genetic individual as a route planner according to the calculated fitness. In other words, the fitness calculator 134 calculates the fitness of the gene population generated by the gene population generator 132 and determines whether the fitness meets a predetermined condition so that the chromosomes in the genetic population are optimized for the path planning. It is determined whether the solution is a solution, and outputs the cell corresponding to the chromosome in the gene object including the optimal solution chromosomes as the route plan. Here, the goodness of fit of the genetic object is a criterion for determining whether the chromosomes of the genetic object are an optimal solution for path planning.

여기서, 적합도 계산기(134)는 유전자 개체의 적합도를 계산하여 계산된 적합도가 최소값이 되고, 최소값이 연산 수행기(136)에 의해 연산자를 수행하는 회수가 기 설정된 회수이상이 될 때까지 유지되면, 소정의 조건이 만족한 것으로 판단하여 연산자가 수행된 후의 유전자 개체의 염색체들에 해당하는 셀을 경로 계획으로서 출력할 수 있다. 예를 들어, 적합도 계산기(134)는 후술할 연산 수행기(136)에서 유전자 알고리즘에 따라 유전자 객체에 대해 선택 연산자, 교차 연산자, 돌연 변이 연산자, 추가/삭제 연산자에 대한 연산을 1 회 수행할 때마다, 연산을 수행한 후의 유전자 객체의 염색체를 이용하여 수학식 3에 따라 계산되는 값이 최소값이 되고 그 최소값이 연산 수행기(136)에서 연산을 수행한 회수가 기 설정된 회수(예를 들면, 100 회) 이상이 될 때까지 유지되는 경우, 유전자 객체의 적합도가 소정의 조건을 만족하는 것으로 판단할 수 있다.In this case, the fitness calculator 134 calculates the fitness of the genetic individual and the calculated fitness is the minimum value. After determining that the condition is satisfied, the cell corresponding to the chromosomes of the gene individual after the operator is performed can be output as the route plan. For example, the goodness-of-fit calculator 134 performs one operation on a selection operator, a cross operator, a mutation operator, and an add / delete operator on a genetic object according to a genetic algorithm in the operation operator 136 to be described later. , The value calculated according to Equation 3 using the chromosome of the genetic object after performing the calculation becomes the minimum value and the minimum value is the preset number of times the calculation is performed in the calculation executor 136 (for example, 100 times). In the case where it is maintained until) or more, it may be determined that the fitness of the genetic object satisfies a predetermined condition.

즉, 적합도 계산기(134)는 유전자 개체 생성기(132)에서 생성된 유전자 객체들 중 각 유전자 객체의 염색체를 이용하여 수학식 3의 값을 계산하고 다시, 연산 수행기(136)에 의해 연산이 수행될 때마다 연산이 수행된 후의 유전자 객체의 염색체를 이용하여 수학식 3의 값을 계산하며 수학식 3의 값이 최소값이 되는지 여부를 확인한 후, 수학식 3의 값이 최소값이 된 후에도 반복적으로 연산이 수행된 후의 유전자 객체의 염색체를 이용하여 수학식 3의 값을 계산하여 최소값이 기 설정된 회수 이상 유지되는 유전자 객체가 찾아지면, 해당 유전자 객체 내의 염색체들이 경로 계획을 위한 최적의 해라고 판단하여 해당 유전자 객체 내의 염색체들에 해당하는 셀들을 경로 계획으로서 출력할 수 있다.That is, the fitness calculator 134 calculates the value of Equation 3 using the chromosomes of each gene object among the gene objects generated by the gene object generator 132, and again, the operation is performed by the operation executor 136. Each time, the value of Equation 3 is calculated using the chromosome of the genetic object after the operation is performed, and after checking whether the value of Equation 3 is the minimum value, the operation is repeatedly performed even after the value of Equation 3 becomes the minimum value. When a gene object is found in which the minimum value is maintained more than a predetermined number by using the chromosome of the genetic object after the execution, the chromosome in the gene object is determined to be the optimal solution for path planning. The cells corresponding to the chromosomes in the object can be output as the path plan.

Figure 112008085444715-pat00003
Figure 112008085444715-pat00003

수학식 3에서, 여기서 ch_s는 염색체 크기(즉, 유전자 개체 내의 염색체의 개수)를 나타내고, k-means-d는 k-평균-밀집도를 나타내며, α는 하나의 염색체에서 실행불가능한 경로(Infeasible Path)에 대한 확장 스케일링 변수이며, FC i 는 실 행불가능한 경로에 대한 카운터(즉, 개수)이며, β는 거리에 대한 축소 스케일링 변수이다. 또한, E(Ci, Ci+1)은 각 셀 간에 동적 장애물 밀집도의 값을 나타낸다. 본 발명에서는 밝기 정보 0.1에서 0.7 사이의 값을 동적 장애물로서 인식한다. 밝기 정보는 픽셀 값인 RGB를 각각 더하여(Red + Green + Blue) 255로 나눈 값을 나타낸다. 즉 흰색은 0.0이고 검은색은 1.0의 값을 가진다.In Equation 3, where ch_s represents the chromosome size (ie, the number of chromosomes in the genetic individual), k-means-d represents the k-means- density, and α is the infeasible path on one chromosome. Is an extended scaling variable for, FC i is a counter (i.e., number) for an unpracticable path, and β is a reduced scaling variable for distance. In addition, E (Ci, Ci + 1) represents the value of dynamic obstacle density between cells. In the present invention, a value between 0.1 and 0.7 brightness information is recognized as a dynamic obstacle. The brightness information represents a value divided by 255 by adding RGB values (Red + Green + Blue), respectively. That is, white is 0.0 and black is 1.0.

연산 수행기(Operator, 136)는 유전자 개체에 대해 선택 연산자, 교차 연산자, 돌연변이 연산자 및 추가/삭제 연산자를 포함하는 연산자를 수행한다. 이를 위해, 연산 수행기(136)는 선택 연산기(Selectio Operator, 140), 교차 연산기(Crossover Operator, 142), 돌연변이 연산기(Mutation Operator, 144) 및 추가/삭제 연산기(Insert/Delete Operator, 146)를 포함할 수 있다.The operator 136 performs an operator on the genetic entity including a selection operator, a cross operator, a mutation operator, and an add / delete operator. To this end, the operation operator 136 includes a selection operator 140, a crossover operator 142, a mutation operator 144, and an add / delete operator 146. can do.

선택 연산기(140)는 통상적인 토너먼트 기법을 이용하여 복수 개의 유전자 개체를 선택한다.The selection operator 140 selects a plurality of genetic entities using conventional tournament techniques.

교차 연산기(142)는 선택된 복수 개의 유전자 개체 내의 임의로 선택되는 염색체를 교체하여 배열함으로써 자식 유전자 개체를 생성한다. 여기서, 교차 연산기(142)는 이점 교차 연산자(Two-Point Crossover Operator)와 이점 대각선 교차 연산자(Two-Point Diagonal Crossover Operator)를 수행할 수 있다.The crossover operator 142 creates a child genetic entity by replacing and arranging a randomly selected chromosome in the selected plurality of genetic entities. Here, the cross operator 142 may perform a two-point crossover operator and a two-point diagonal crossover operator.

이점 교차와 이점 대각선 교차를 예시적으로 나타낸 도 5를 참조하면, 선택된 두 개의 유전자 개체(P1, P2)에서 각각 두 개의 염색체를 임의로 선택하여 두 개의 유전자 개체 간에 대응하는 위치의 염색체를 교차하여 배치함으로써, 이점 교차가 수행될 수 있다. 또한, 선택된 두 개의 유전자 개체(P1, P2)에서 각각 두 개 의 염색체를 임의로 선택하여 두 개의 유전자 개체 간에 대응하는 위치의 염색체를 대각선으로 교차하여 배치함으로써, 이점 대각선 교차가 수행될 수 있다.Referring to FIG. 5, which exemplarily shows a benefit crossing and a diagonal diagonal crossing, two chromosomes are randomly selected from two selected gene entities (P1 and P2), and the chromosomes of corresponding positions are alternately arranged between the two genetic entities. By doing so, a benefit intersection can be performed. In addition, by selectively selecting two chromosomes from each of the two selected gene entities (P1, P2) and arranging the chromosomes at the corresponding positions between the two genetic entities diagonally, the advantage diagonal intersection can be performed.

돌연변이 연산기(144)는 교차 연산기(142)에 의해 교차되어 생성된 자식 유전자 개체의 임의의 염색체에 해당하는 셀에 대해 중복되지 않는 임의의 셀로 교체한다. 돌연변이 연산을 수행하는 과정을 예시적으로 나타낸 도 6을 참조하면, 셀단위로 구분된 C-Space에서 빈 공간에 해당하는 세 개(단, 반드시 세 개이지 않고 하나 이상일 수 있음)의 임의의 셀을 교차 연산기(142)에 의해 교차되어 생성된 자식 유전자 개체의 모든 염색체 중에서 실행가능한(Feasible) 염색체의 셀과 교체함으로써 돌연변이를 일으킨다.Mutation operator 144 replaces any cell that does not overlap for a cell corresponding to any chromosome of the child gene entity created by crossing operator 142. Referring to FIG. 6 exemplarily illustrating a process of performing a mutation operation, three arbitrary cells (but not necessarily three but one or more cells) corresponding to empty spaces in a cell space divided into C-Spaces may be used. Is replaced by replacing cells with cells of the feasible chromosome among all the chromosomes of the child gene entity created by crossing the cross-operator 142.

추가/삭제 연산기(146)는 돌연변이 연산기(144)에 의해 돌연변이가 일으켜진 유전자 개체의 염색체 크기(즉, 염색체의 개수)를 증가시키거나 감소시킨다. 즉, 추가/삭제 연산기(146)는 유전자 개체의 염색체가 유전자 알고리즘의 단계를 반복적으로 수행되는 과정에서 가변성을 높여 다양한 형태의 염색체가 생성되게 한다. 추가 연산은 염색체의 크기(염색체의 개수)를 증가시키는 역할을 수행하는데, 이를 통해 경로 계획이 불가능한 경우 염색체의 개수를 증가시켜 경로 계획이 가능해지도록 할 수 있다. 또한, 삭제 연산은 염색체의 크기(염색체의 개수)를 감소시키는 역할을 수행하는데, 이를 통해 경로 계획을 구성하는 셀들 간에 원형(Circle)의 경로가 생성되거나 지그재그 경로가 생성되는 것을 방지할 수 있다.The add / delete operator 146 increases or decreases the chromosome size (ie, the number of chromosomes) of the genetic entity that has been mutated by the mutation operator 144. That is, the add / delete operator 146 increases variability in the process in which the chromosome of the genetic individual repeatedly performs the steps of the genetic algorithm so that various forms of chromosomes are generated. The additional operation increases the size of the chromosome (the number of chromosomes). If the path planning is not possible, the path calculation can be made by increasing the number of chromosomes. In addition, the deletion operation reduces the size of the chromosome (the number of chromosomes), thereby preventing the generation of a circular path or a zigzag path between the cells constituting the path plan.

도 7은 본 발명의 일 실시예에 따른 장애물 밀집도 기반 경로 계획 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating a method for planning obstacle based density paths according to an embodiment of the present invention.

장애물 밀집도 기반 경로 계획 장치(100)는 이미지가 입력되면 입력된 이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하고(S710), 각 셀에 대한 장애물 밀집도에 따라 셀들을 군집화하며(S720), 각 셀에 대한 장애물 밀집도와 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력한다(S730).The obstacle density-based path planning apparatus 100 calculates obstacle density for each cell by dividing the input image into cell units when the image is input (S710), and clusters the cells according to the obstacle density for each cell (S720). ), The path plan is output by performing the genetic algorithm using the information on the obstacle density and the cluster for each cell (S730).

여기서, 단계 S730은 도 8을 통해 후술하는 바와 같이 구체화될 수 있다.Here, step S730 may be embodied as described below with reference to FIG. 8.

도 8은 본 발명의 일 실시예에 따라 유전자 알고리즘을 수행하여 경로 계획을 출력하는 방법을 설명하기 위한 순서도이다.8 is a flowchart illustrating a method of outputting a route plan by performing a genetic algorithm according to an embodiment of the present invention.

장애물 밀집도 기반 경로 계획 장치(100)는 각 셀에 대한 장애물 밀집도와 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행하기 위한 유전자 객체를 생성한다(S810). 이때, 유전자 객체는 복수 개로 생성될 수 있으며 유전자 객체의 개수가 많을 수록 최적의 해를 찾기가 용이해 질 수 있다.The obstacle density-based path planning apparatus 100 generates a genetic object for performing a genetic algorithm using information on obstacle density and clustering for each cell (S810). In this case, a plurality of gene objects may be generated, and as the number of gene objects increases, it may be easier to find an optimal solution.

장애물 밀집도 기반 경로 계획 장치(100)는 유전자 객체의 적합도를 계산하고(S820), 계산된 적합도가 최소값인지 여부를 판단하며(S830), 계산된 적합도가 최소값인 경우에는 최소값이 기 설정된 회수만큼 유지되는지 여부를 판단한다(S840). 즉, 하나 이상의 유전자 객체 각각에 대해 해당 유전자 객체 내의 염색체들에 대한 정보를 수학식 3에 대입하여 해당 유전자 객체의 적합도를 계산하고, 계산된 적합도가 최소값인지 여부를 확인하며, 계산된 적합도가 최소값인 경우에는 유전자 알고리즘에 따라 연산자를 수행할 때마다 해당 유전자 개체에 대해 계산된 적합도가 최소값으로 유지되었고 연산자를 수행한 회수가 기 설정된 회수(예를 들 면 100 회)만큼 유지되었는지 여부를 판단한다.The obstacle density-based path planning apparatus 100 calculates the fitness of the genetic object (S820), determines whether the calculated fitness is the minimum value (S830), and when the calculated fitness is the minimum value, the minimum value is maintained for a predetermined number of times. It is determined whether or not (S840). That is, for each of the one or more genetic objects, information about the chromosomes in the genetic object is substituted into Equation 3 to calculate the fitness of the genetic object, check whether the calculated fitness is the minimum value, and the calculated fitness is the minimum value. In the case of, each time the operator is performed according to the genetic algorithm, it is determined whether the calculated goodness-of-fit for the genetic individual is kept to the minimum value and whether the number of times the operator is performed is maintained for a preset number of times (for example, 100 times). .

장애물 밀집도 기반 경로 계획 장치(100)는 단계 S840의 확인 결과, 계산된 적합도가 최소값이며 그 최소값이 기 설정된 회수만큼 유지된 경우에는 해당 유전자 개체 내의 염색체들이 최적의 해라고 판단하여 해당 유전자 개체 내의 염색체들에 해당하는 셀들을 경로 계획으로서 출력한다(S842).The obstacle density-based path planning apparatus 100 determines that the chromosomes in the genetic object are the optimal solution when the calculated fitness is the minimum value and the minimum value is maintained for a predetermined number of times as a result of checking in step S840. The cells corresponding to the fields are output as the path plan (S842).

또한, 장애물 밀집도 기반 경로 계획 장치(100)는 단계 S830의 확인 결과, 적합도가 최소값이 아닌 경우 또는 적합도가 최소값이지만 단계 S840의 확인 결과 최소값이 기 설정된 회수만큼 유지되지 않는 경우에는, 해당 유전자 개체에 대해 선택 연산자를 수행하고(S850), 선택 연산자가 수행된 유전자 개체에 대해 교차 연산자를 수행하며(S860), 교차 연산자가 수행된 유전자 개체에 대해 돌연변이 연산자를 수행하며(S870), 돌연변이 연산자가 수행된 유전자 개체에 대해 추가/삭제 연산자를 수행한다(S880).In addition, the obstacle density-based route planning apparatus 100 may determine that the genetic object is not determined to be the minimum value or the fitness value is the minimum value, but the minimum value is not maintained for the predetermined number of times. Perform a selection operator (S850), perform a crossover operator on the genetic entity on which the selection operator is performed (S860), perform a mutation operator on the genetic entity on which the crossover operator is performed (S870), and perform a mutation operator The add / delete operator is performed on the genetic object (S880).

이와 같이, 단계 S850 내지 단계 S880의 선택 연산자, 교차 연산자, 돌연변이 연산자, 추가/삭제 연산자가 수행되면, 장애물 밀집도 기반 경로 계획 장치(100)는 연산자가 수행된 유전자 개체에 대해 다시 단계 S850 내지 단계 S880 과정을 반복함으로써, 최적의 해를 가지는 유전자 개체를 찾는다.As such, when the selection operator, the cross operator, the mutation operator, and the add / delete operator of steps S850 to S880 are performed, the obstacle density-based path planning apparatus 100 again performs steps S850 to S880 for the gene entity on which the operator is performed. By repeating the process, the genetic individual with the optimal solution is found.

이와 같이, 본 발명에 따르면, 장애물 밀집도를 기반으로 유전자 알고리즘을 수행하여 경로 계획을 수행하므로, 동적 장애물과 정적 장애물의 지식 정보를 기반으로 경로 계획을 수행함으로써 지능형 경로 계획을 수행할 수 있다. 이러한 본 발명은 지능형 네비게이션, 지능형 모바일 로봇 등 다양한 이동 수단 등에 적용될 수 있을 것이다.As described above, according to the present invention, since the path planning is performed by performing the genetic algorithm based on the obstacle density, the intelligent path planning can be performed by performing the path planning based on the knowledge information of the dynamic obstacle and the static obstacle. The present invention may be applied to various mobile means such as intelligent navigation and intelligent mobile robot.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented in one independent hardware, each or all of the components may be selectively combined to perform some or all functions combined in one or a plurality of hardware. It may be implemented as a computer program having a. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어 와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be inherent unless specifically stated otherwise, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms generally used, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be interpreted in an ideal or excessively formal sense unless clearly defined in the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

도 1은 본 발명의 일 실시예에 따른 밀집도 기반 경로 계획 장치를 간략하게 나타낸 블록 구성도,1 is a block diagram schematically illustrating a compaction based route planning apparatus according to an embodiment of the present invention;

도 2는 C-Space를 위한 기본 데이터 구조를 나타낸 예시도,2 is an exemplary diagram showing a basic data structure for a C-Space;

도 3은 k-평균 군집화를 기반으로 하는 C-Space를 구성하기 위한 의사-코드를 나타낸 예시도,3 is an exemplary diagram showing a pseudo-code for constructing a C-Space based on k-means clustering;

도 4는 유전자 개체의 염색체 정보를 나타낸 예시도,4 is an exemplary diagram showing chromosome information of an individual gene;

도 5는 이점 교차와 이점 대각선 교차를 나타낸 예시도,5 is an exemplary view showing a benefit intersection and a benefit diagonal intersection;

도 6은 돌연변이 연산을 수행하는 과정을 나타낸 예시도,6 is an exemplary view showing a process of performing a mutation operation,

도 7은 본 발명의 일 실시예에 따른 장애물 밀집도 기반 경로 계획 방법을 설명하기 위한 순서도,7 is a flowchart illustrating a method for planning obstacle density-based paths according to an embodiment of the present invention;

도 8은 본 발명의 일 실시예에 따라 유전자 알고리즘을 수행하여 경로 계획을 출력하는 방법을 설명하기 위한 순서도이다.8 is a flowchart illustrating a method of outputting a route plan by performing a genetic algorithm according to an embodiment of the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

110: 장애물 밀집도 계산기 120: 군집화기110: obstacle density calculator 120: clustering

130: 경로 계획 출력기 132: 유전자 개체 생성기130: path planning writer 132: gene object generator

134: 적합도 계산기 136: 연산 수행기134: goodness-of-fit calculator 136: arithmetic performer

Claims (9)

이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하는 장애물 밀집도 계산기;An obstacle density calculator that calculates obstacle density for each cell by dividing the image into cell units; 상기 각 셀을 하나 이상의 군집으로 군집화하는 군집화기; 및A clustering group for clustering each cell into one or more clusters; And 상기 각 셀에 대한 장애물 밀집도 및 상기 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력하는 경로 계획 출력기A route plan outputter for outputting a route plan by performing a genetic algorithm using the obstacle density for each cell and the information on the one or more clusters 를 포함하되, , &Lt; / RTI & 상기 장애물 밀집도 계산기는,The obstacle density calculator, 각 셀에 대해 화소 단위로 고정 장애물/빈공간은 흑백의 점유율로, 동적 장애물은 화소의 밝기 정보를 계산함으로써 상기 장애물 밀집도를 계산하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.The fixed obstacle / empty space in black and white for each cell is occupied in black and white, and the dynamic obstacle is calculated by calculating the obstacle density by calculating the brightness information of the obstacle obstacle density based path planning device. 삭제delete 제 1 항에 있어서, 상기 군집화기는,The method of claim 1, wherein the clustering device, 계층적 군집화 기법 및 비계층적 군집화 기법 중 하나 이상을 이용하여 군집화하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.Obstacle density-based route planning device, characterized in that the clustering using at least one of hierarchical clustering and non-hierarchical clustering. 제 1 항에 있어서, 상기 군집화기는,The method of claim 1, wherein the clustering device, k-평균 군집화 기법을 이용하여 상기 각 셀들에 대해 k 개의 군집들로 할당 하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.Obstacle density-based route planning apparatus, characterized in that the k clusters are allocated to each of the cells using a k-means clustering technique. 제1항에 있어서, The method of claim 1, 상기 경로 계획 출력기는,The route plan writer, 상기 각 셀에 대한 장애물 밀집도 및 상기 하나 이상의 군집에 대한 정보를 이용하여 유전자 개체를 생성하는 유전자 개체 생성기;A gene entity generator for generating a gene entity using obstacle density for each cell and information on the one or more clusters; 상기 유전자 개체에 대해 선택 연산자, 교차 연산자, 돌연변이 연산자 및 추가/삭제 연산자를 포함하는 연산자를 수행하는 연산 수행기; 및An operation performer for performing an operator including a selection operator, a crossover operator, a mutation operator, and an add / delete operator to the genetic individual; And 상기 유전자 개체의 적합도를 계산하여 상기 계산된 적합도에 따라 상기 유전자 개체의 염색체들에 해당하는 셀을 상기 경로 계획으로서 출력하는 적합도 계산기를 포함하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.And a fitness calculator for calculating a fitness of the genetic individual and outputting a cell corresponding to the chromosomes of the genetic individual as the pathway plan according to the calculated fitness. 제 5 항에 있어서, 상기 유전자 개체 생성기는,The method of claim 5, wherein the genetic individual generator, 상기 유전자 개체 내의 경유점에 상기 각 셀에 대한 장애물 밀집도 및 상기 하나 이상의 군집에 대한 정보를 이용하여 셀을 선택하여 할당하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.Obstacle density-based route planning apparatus, characterized in that the cell selected by using the obstacle density for each cell and the information on the one or more clusters to the waypoint in the genetic individual. 제 5 항에 있어서, 상기 적합도 계산기는,The method of claim 5, wherein the goodness of fit calculator, 상기 계산된 적합도가 최소값이 되고, 상기 최소값이 상기 연산 수행기에 의해 상기 연산자를 수행하는 회수가 기 설정된 회수이상이 될 때까지 유지되면 상기 연산자가 수행된 후의 유전자 개체의 염색체들에 해당하는 셀을 상기 경로 계획으로서 출력하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 장치.If the calculated goodness of fit is the minimum value and the minimum value is maintained until the number of times the operator performs the operator is greater than or equal to a preset number, the cells corresponding to the chromosomes of the gene entity after the operator is performed. Obstacle density-based route planning device, characterized in that output as the route planning. 삭제delete 이미지를 셀 단위로 구분하여 각 셀에 대한 장애물 밀집도를 계산하는 장애물 밀집도 계산 단계;An obstacle density calculation step of calculating an obstacle density for each cell by dividing the image into cell units; 상기 각 셀을 하나 이상의 군집으로 군집화하는 군집화 단계; 및Clustering the cells into one or more clusters; And 상기 각 셀에 대한 장애물 밀집도 및 상기 하나 이상의 군집에 대한 정보를 이용하여 유전자 알고리즘을 수행함으로써 경로 계획을 출력하는 경로 계획 출력 단계A route plan output step of outputting a route plan by performing a genetic algorithm using the obstacle density for each cell and the information on the at least one cluster; 를 포함하되, , &Lt; / RTI & 상기 장애물 밀집도 계산 단계는, The obstacle density calculation step, 각 셀에 대해 화소 단위로 고정 장애물/빈공간은 흑백의 점유율로, 동적 장애물은 화소의 밝기 정보를 계산함으로써 상기 장애물 밀집도를 계산하는 것을 특징으로 하는 장애물 밀집도 기반 경로 계획 방법. The obstacle-density-based path planning method of claim 1 , wherein the fixed obstacles / empty spaces are black and white occupancy for each cell, and the dynamic obstacles are calculated by calculating brightness information of pixels .
KR1020080126068A 2008-12-11 2008-12-11 Method and Apparatus for Path Planning Based on Density of Obstacle KR101138781B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080126068A KR101138781B1 (en) 2008-12-11 2008-12-11 Method and Apparatus for Path Planning Based on Density of Obstacle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080126068A KR101138781B1 (en) 2008-12-11 2008-12-11 Method and Apparatus for Path Planning Based on Density of Obstacle

Publications (2)

Publication Number Publication Date
KR20100067485A KR20100067485A (en) 2010-06-21
KR101138781B1 true KR101138781B1 (en) 2012-04-24

Family

ID=42366144

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080126068A KR101138781B1 (en) 2008-12-11 2008-12-11 Method and Apparatus for Path Planning Based on Density of Obstacle

Country Status (1)

Country Link
KR (1) KR101138781B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106647757B (en) * 2016-12-23 2019-06-18 江西理工大学 Based on the robot path planning method for combining individual differential evolution
CN108507585B (en) * 2017-02-28 2021-06-25 深圳市耀航信息技术有限公司 Method for finding road by avoiding obstacles
CN117848350B (en) * 2024-03-05 2024-05-07 湖北华中电力科技开发有限责任公司 Unmanned aerial vehicle route planning method for power transmission line construction engineering

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
논문 : 2006년 발표 *
논문1 : 2005발표 *

Also Published As

Publication number Publication date
KR20100067485A (en) 2010-06-21

Similar Documents

Publication Publication Date Title
Oyola et al. The stochastic vehicle routing problem, a literature review, part II: solution methods
US5794224A (en) Probabilistic resource allocation system with self-adaptive capability
Filipiak et al. Extracting maritime traffic networks from AIS data using evolutionary algorithm
US20080071716A1 (en) Apparatus and method of planning through generation of multiple efficient plans
US6718261B2 (en) Architecture for real-time maintenance of distributed mission plans
JP2009042243A (en) Use of two or more cost levels for discovery and calculation of route
Gharib et al. Developing an integrated model for planning the delivery of construction materials to post-disaster reconstruction projects
Muñoz-Carpintero et al. A methodology based on evolutionary algorithms to solve a dynamic pickup and delivery problem under a hybrid predictive control approach
US11393337B2 (en) System and interaction method to enable immersive navigation for enforcement routing
KR101138781B1 (en) Method and Apparatus for Path Planning Based on Density of Obstacle
Huang et al. A probabilistic niching evolutionary computation framework based on binary space partitioning
EP1098253A2 (en) Interactive heuristic search and visualization for solving combinatorial optimization problems
US10423904B2 (en) Workforce optimization by improved provision of job performance plan
Sacramento et al. Constraint programming and local search heuristic: A matheuristic approach for routing and scheduling feeder vessels in multi-terminal ports
Tan et al. A multiobjective evolutionary algorithm for solving vehicle routing problem with time windows
US20220036234A1 (en) Method of and system for determining physical transfer interchange nodes
US11194873B1 (en) Grid-based ranking of location data
CN113048973A (en) Path planning method, path planning device, management system and storage medium
Luo et al. Trip planning for visitors in a service system with capacity constraints
CN114925941A (en) Crowd sensing task allocation method, device, equipment and storage medium
Yang et al. Multi-objective memetic algorithm based on request prediction for dynamic pickup-and-delivery problems
KR20210106445A (en) Communication server device, method, and communication system for managing requests for transportation related services
Torabi et al. Multi-objective interior search algorithm for optimization: A new multi-objective meta-heuristic algorithm
Hlyal et al. DESIGNING A DISTRIBUTION NETWORK USING A TWO LEVEL CAPACITY LOCATION ALLOCATION PROBLEM: FORMULATION AND EFFICIENT GENETIC ALGORITHM RESOLUTION WITH AN APPLICATION TO A MOROCCAN RETAIL COMPANY.
JP2004093533A (en) System for tracking multiple targets

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
FPAY Annual fee payment

Payment date: 20160401

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170328

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190325

Year of fee payment: 8