KR101123836B1 - 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치 - Google Patents

어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치 Download PDF

Info

Publication number
KR101123836B1
KR101123836B1 KR1020090091607A KR20090091607A KR101123836B1 KR 101123836 B1 KR101123836 B1 KR 101123836B1 KR 1020090091607 A KR1020090091607 A KR 1020090091607A KR 20090091607 A KR20090091607 A KR 20090091607A KR 101123836 B1 KR101123836 B1 KR 101123836B1
Authority
KR
South Korea
Prior art keywords
space
polygon
concave
convex
subspaces
Prior art date
Application number
KR1020090091607A
Other languages
English (en)
Other versions
KR20110034170A (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 KR1020090091607A priority Critical patent/KR101123836B1/ko
Publication of KR20110034170A publication Critical patent/KR20110034170A/ko
Application granted granted Critical
Publication of KR101123836B1 publication Critical patent/KR101123836B1/ko

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/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • 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/36Input/output arrangements for on-board computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • 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/096833Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route
    • G08G1/096838Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route where the user preferences are taken into account or the user selects one route out of a plurality

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Navigation (AREA)

Abstract

어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색방법, 및 어반 컴퓨팅 장치가 개시된다. 상기 어반 컴퓨팅 방법은 어반 컴퓨팅 장치가 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하는 단계, 판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계를 포함한다.

Description

어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치{Method for Urban computing, method for path-finding at urban computing environment, and apparatus for urban computing}
본 발명은 어반 컴퓨팅(urban computing)에 관한 것으로, 도시 공간에서 흔히 일어날 수 있는 동적 공간 예컨대, 사람들이 모이는 지역, 특정 활동을 수행하는 지역 등을 공간을 시뮬레이션 하는데 반영할 수 있는 어반 컴퓨팅 방법 및 장치에 관한 것이다.
종래의 어반 컴퓨팅 환경에서는 인도어(indoor)를 위한 데이터 모델과 아웃도어(outdoor)를 위한 데이터 모델이 각각 정의되었다. 왜냐하면 인도어의 경우에는 공간은 물리적 엘리먼트(element) 예컨대, 벽이나 파티션 등과 같은 유한한 객체로 둘러싸인 스페이스로 정의될 수 있으므로, 마치 방(room)과 같이 취급될 수 있었다. 따라서, 인도어를 위한 데이터 모델은 주로 스페이스를 둘러싼 유한한 객체들로 정의될 수 있었다.
하지만, 아웃도어에서의 공간은 유한한 객체로 둘러싸인 스페이스가 아니므로 주로 공간의 용도나, 장소, 객체 등 인도어와 다른 속성으로 정의되었다.
따라서, 인도어나 아웃도어를 모두 표현할 수 있는 추상적 공간 모델이 필요하다. 또한, 이러한 추상적 공간 모델을 이용하여 도시 공간에서 동적으로 특정 공간의 성질이나 사용용도가 변경되는 경우 즉, 동적 공간을 시뮬레이션할 수 있는 것이 요구된다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 도시 공간에서 장애물(obstacle)이 존재하거나 동적 공간이 생성됨으로 인해 공간의 속성 또는 공간의 활용(예컨대, 객체의 이동경로 등), 공간의 분석(예컨대, 공간 구문론(space syntax) 등) 결과가 바뀌는 경우 등을 적극적으로 반영하여 시뮬레이션할 수 있는 컴퓨팅 방법을 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 어반 컴퓨팅 방법은 어반 컴퓨팅 장치가 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하는 단계, 판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계를 포함한다.
상기 제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계는, 상기 비가항 지역에 상응하는 폴리곤 또는 상기 공간에 상응하는 폴리곤 중 적어도 하나에 컨케이브(concave) 코너(corner)가 있는지를 검색하는 단계 및 판단결 과 컨케이브 코너가 검색된 경우, 상기 제외공간을 컨케이브 폴리곤으로 판단하는 단계를 포함할 수 있다.
상기 비가항 지역은 상기 공간에 존재하는 장애물 지역, 미리 지정된 스케줄에 의해 임시로 생성되는 서브공간, 또는 상기 공간에 존재하는 객체의 활동에 의해 생성되는 서브공간 중 적어도 하나를 포함할 수 있다.
상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계는, 검색된 상기 컨케이브 코너에서 상기 컨케이브 코너의 내각을 절반으로 나누는 반대벡터를 생성하는 단계, 상기 컨케이브 코너와 연결될 수 있는 프리 코너들을 검색하고, 검색된 프리 코너들 중 프리 코너들 각각과 상기 컨케이브 코너를 연결하였을때 생성되는 선이 상기 반대벡터와 가장 작은 각도를 이루는 프리 코너를 탐색하는 단계, 및 탐색된 상기 프리 코너와 상기 컨케이브 코너를 에지로 연결하여 두 개의 서브 공간으로 구분하는 단계를 포함할 수 있다.
상기 어반 컴퓨팅 방법은 상기 공간에 제2비가항 지역이 생성되는 경우, 상기 어반 컴퓨팅 장치는 상기 공간에서 상기 비가항 지역 및 상기 제2비가항 지역을 제외한 공간인 제2제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계, 및 판단결과 상기 제2제외공간이 컨케이브 폴리곤인 경우, 상기 제2제외공간을 적어도 두 개의 제2컨벡스 서브공간으로 구분하는 단계를 더 포함할 수 있다.
삭제
상기 기술적 과제를 달성하기 위한 어반 컴퓨팅에서의 경로 탐색 방법은 어반 컴퓨팅 장치가 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하는 단계, 판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계, 및 구분된 상기 적어도 두 개의 컨벡스 서브 공간, 상기 적어도 두 개의 컨벡스 서브 공간들 중 인접한 두 개의 컨벡스 서브 공간을 연결하는 적어도 하나의 라우트(route) 노드, 및 상기 공간에 포함되는 포탈(portal) 노드에 기초하여 경로 탐색을 수행하는 단계를 포함한다.
상기 경로 탐색을 수행하는 단계는 상기 적어도 두 개의 컨벡스 서브 공간에 대응되는 서브 공간 노드를 생성하는 단계, 상기 인접한 두 개의 컨벡스 서브 공간이 공유하는 에지들 각각에 적어도 하나의 라우트 노드를 생성하는 단계, 및 미리 결정된 포탈 노드, 상기 서브 공간 노드, 상기 라우트 노드들을 기초로 상기 공간의 위상관계에 대한 정보를 생성하는 단계를 포함할 수 있다.
상기 경로 탐색을 수행하는 단계는 생성된 그래프에 기초하여 경로 탐색 알고리즘을 적용하여 경로를 탐색하는 단계를 더 포함할 수 있다.
상기 경로 탐색을 수행하는 단계는 생성된 그래프에 기초하여 경로 완화 과정(path relaxation process)을 수행하여 경로를 탐색하는 단계를 더 포함할 수 있다.
상기 어반 컴퓨팅에서의 경로 탐색 방법은 상기 어반 컴퓨팅 장치가 상기 공 간에 생성되는 제2비가항 지역을 인식하는 단계, 상기 어반 컴퓨팅 장치가 상기 공간에서 상기 비가항 지역 및 상기 제2비가항 지역을 제외한 공간인 제2제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계, 판단결과 상기 제2제외공간이 컨케이브 폴리곤인 경우, 상기 제2제외공간을 적어도 두 개의 제2컨벡스 서브공간으로 구분하는 단계, 및 구분된 상기 적어도 두 개의 제2컨벡스 서브 공간, 상기 적어도 두 개의 제2컨벡스 서브 공간들 중 인접한 두 개의 제2컨벡스 서브 공간을 연결하는 적어도 하나의 제2라우트(route) 노드, 및 상기 공간에 포함되는 포탈(portal) 노드에 기초하여 경로 탐색을 수행하는 단계를 포함할 수 있다.
삭제
삭제
삭제
상기 기술적 과제를 달성하기 위한 어반 컴퓨팅 장치는 공간에서 비가항 지 역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하고, 판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하며, 상기 비가항 지역은 상기 공간에 존재하는 장애물 지역, 미리 지정된 스케줄에 의해 임시로 생성되는 서브공간, 또는 상기 공간에 존재하는 객체의 활동에 의해 생성되는 서브공간 중 적어도 하나를 포함할 수 있다.
삭제
본 발명의 실시 예에 따른 공간에 장애물이 있는 경우에 상기 공간의 이동경로나 공간의 활용, 분석을 현실에 맞도록 할 수 있는 효과가 있다.
또한, 공간에 포함된 특정 공간의 임시적 용도 변화 또는 객체의 활동에 의해 생성되는 특정 공간이 존재하는 경우, 이러한 동적 공간(dynamic space)을 추상적 공간 모델을 이용하여 전체 공간에 반영시킬 수 있는 효과가 있다. 또한, 이러 한 동적 공간에 따라 공간에서 객체의 이동 경로나, 공간 전체의 활용도 등이 변화할 수 있는데, 이러한 변화를 반영하여 새로운 객체의 이동경로나 공간의 활용을 정의할 수 있는 효과가 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 어반 컴퓨팅 장치의 개략적인 구성을 나타낸다.
도 1을 참조하면, 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)는 공간 정보 모델러(Spatial Information Modeler, 110), 물리적 데이터 모델 DB(120), 추상적 데이터 모델 DB(130), 위상 생성장치(Topology Generator, 140), 경로 탐색장치(150), 공간구문 분석장치(160), 및/또는 위상 DB(170)를 포함할 수 있다. 상기 어반 컴퓨팅 장치(100)의 각각의 구성은 기능적/논리적으로 구분될 수 있음을 나타내는 것이지 반드시 물리적으로 별도의 장치로 구현되거나, 별도의 코드로 구현되는 것을 의미하는 것은 아니다.
상기 공간 정보 모델러(110)는 상기 물리적 데이터 모델 DB(120) 및/또는 상기 추상적 공간 데이터 모델 DB(130)에 기초하여 공간을 모델링 할 수 있는 소프트웨어 및/또는 상기 소프트웨어를 구동하기 위한 하드웨어의 결합으로 구현될 수 있다.
상기 물리적 데이터 모델 DB(120)은 공간을 나타내기 위해 사용되던 종래의 데이터 모델을 포함할 수 있다. 상기 물리적 데이터 모델 DB(120)에는 인도어 데이터 모델 DB(Indoor Data Model, 121) 및/또는 아웃도어 데이터 모델 DB(Outdoor Data Model, 122)이 포함될 수 있다. 이는 전술한 바와 같이 특정 공간이 인도어 공간과 아웃도어 공간을 모두 포함하는 경우, 어느 하나의 데이터 모델로는 인도어 공간과 아웃도어 공간을 모두 표현할 수 없기 때문에 각각에 해당하는 데이터 모델을 별도로 포함할 수 있다. 예컨대, 인도어 데이터 모델 DB(121)는 인도어 공간을 나타내는 BIM(Building Information Model) 및/또는 이에 상응하는 공간정보가 포함될 수 있으며, 상기 아웃도어 데이터 모델 DB(122)에는 GIS(Geographic Information System) 정보 및/또는 이에 상응하는 소정의 공간 정보가 포함될 수 있다.
한편, 본 발명의 기술적 사상에 의하면 인도어 공간인지 아웃도어 공간인지 여부와 관계없이 특정 공간을 정의할 수 있는 추상적 공간 데이터 모델이 정의될 수 있다. 이러한 추상적 공간 데이터 모델은 상기 추상적 공간 데이터 모델 DB(130)에 포함될 수 있다. 추상적 공간이라 함은, 소정의 펑션(function)을 갖는 기본적인 공간단위를 표현하는 일반적인 엔티티(entity)를 의미할 수 있다. 이러한 추상적 공간이라는 개념을 이용하면, 현대의 어반 컴퓨팅 환경의 특징으로 요약될 수 있는 공간의 외내부성 여부(exteriority and interiority)와의 무관성(independency), 분명하지 않은 경계(implicit boundary), 또는 동적인 기능성(dynamic functions) 등을 정확히 표현할 수 있는 특징이 있다.
도 2는 본 발명의 실시 예에 따른 추상적 공간을 표현하기 위한 데이터 모델의 일 예를 나타낸다.
도 2에 도시된 바와 같이, 추상적 공간을 정의하기 위해서는 다양한 속성이 필요할 수 있으며 이러한 속성들의 구체적인 예는 구현 예에 따라 다양할 수 있다. 이때 상기 추상적 공간은 도 2에 도시된 바와 같이 공간의 기능성(PrimaryFunction)이 속성으로 정의될 수 있음을 주목할 필요가 있다. 즉, 특정 공간은 그 공간의 기능성에 의해 특징되어 질 수 있음을 의미할 수 있다. 또한, 도 2에 도시된 바와 같이 특정 공간은 임시적으로 생성되었다가 없어질 수 있는 속성을 가질 수도 있다. 이러한 속성은 OpenTime, CloseTime이라는 속성으로 표현될 수 있다. 또한 공간의 사용자를 속성(UserList)으로 정의할 수도 있으며, 이들을 그룹 화한 속성(UserGroup)을 정의할 수도 있다. 또한 공간의 다양한 속성을 추가로 나타내기 위해서는 ExtendedAttributeList 속성을 이용하여 그 공간을 더욱 더 특징지을수도 있다.
또한, 도 2에서 알 수 있듯이 추상적 공간은 그 공간의 바운더리(boundary)만 정의할 뿐, 인도어나 아웃도어의 특성을 가지지 않으므로 인도어나 아웃도어의 공간 모두를 본 발명의 실시 예에 따른 추상적 공간으로 정의할 수도 있다.
다시 도 1을 참조하면, 이러한 추상적 공간 데이터 모델 DB(130)에는 전술한 바와 같은 다양한 추상적 공간에 상응하는 추상적 공간 DB(131)와 함께 동적 공간 DB(132, 133)가 포함될 수 있다.
본 발명의 실시 예에 따른 동적 공간 DB(132, 133)는 다시 TFA(TemporalFunctionalArea) 서브공간(Subspace) DB(132) 및/또는 AFA(AdHocFunctionalArea) 서브공간 DB(133)를 포함할 수 있다.
상기 TFA 서브공간은 정해진 스케줄에 의해 일정한 기간동안 생성될 수 있는 동적 공간을 의미할 수 있다. 상기 TFA 서브공간은 추상적 공간 ID(abstract space ID), 바운더리, 기능(function), 스케줄, 기간(duration), 및/또는 상태(status)와 같은 속성으로 정의될 수 있다. 예컨대, 상기 TFA 서브공간은 상품진열대, 거리 전시회(또는 퍼포먼스), 캠페인이나 데몬스트레이션(demonstration)을 위한 임시 키오스크(kiosk) 등을 위한 공간일 수 있다.
상기 AFA 서브공간은 객체(예컨대, 사람들)들의 액티비티(activity)나 제공되는 서비스 등의 공유와 같이 객체와 타객체간의 액티비티에 의해 기능이 정의될 수 있는 소정의 공간을 의미할 수 있다. 상기 AFA 서브공간은 추상적 공간 ID(abstract space ID), 바운더리, 기능(function), 생성시간(start time), 상태(status), 및/또는 액티브 객체(active users)와 같은 속성으로 정의될 수 있다. 예컨대, 특정 공간에서 자신의 모바일 디바이스로 음악을 공유하는 사람들이 존재한다면, 이러한 사람들이 존재하는 공간을 '음악 공유 지역'이라는 AFA 서브공간으로 정의할 수 있다.
이러한 AFA 서브공간 및 이를 위한 컴퓨팅 방법에 관해서는, 본 출원인이 출원한 한국특허출원(출원번호 10-2008-133641, "URBAN 컴퓨팅 정보를 이용한 공간 모델링 방법 및 다이나믹 공간 정보를 이용한 다이나믹 서비스 제공방법", 이하 '선행출원1')에 개시된 '다이나믹 공간'에 대응될 수 있다. 선행출원1에 개시된 기술적 사상 및 그 기재는 본 명세서의 기재로 취급될 수 있으며, 본 명세서의 레퍼런스에 포함될 수 있다.
본 명세서에서는 전술한 AFA 서브공간 및 TFA 서브공간을 동적 서브공간으로 정의하도록 한다.
도 3은 본 발명의 실시 예에 따른 추상적 공간의 위상(topology) 관계를 설명하기 위한 도면이다.
도 3을 참조하면, 본 발명의 실시 예에 따른 추상적 공간 데이터 모델을 이용하는 경우, 인도어 공간 또는 아웃도어 공간과 관계없이 공간을 표현할 수 있을 뿐만아니라 인도어 공간과 아웃도어 공간의 심리스(seamless)한 인테그레이션(integration)이 가능하게 된다.
이는 인도어와 아웃도어 여부에 관계없이 각각의 추상적 공간을 동일한 위상 모델로 연결하는 링키지(linkage)를 생성함으로써 가능하다. 이렇게 함으로써 모든 연결성(connectivity)이 도 3에 도시된 바와 같이 정의될 수 있다.
예컨대, 추상적 공간(10)은 인도어 공간이고 추상적 공간(20)은 아웃도어 공간일 수 있다. 상기 추상적 공간(10)과 상기 추상적 공간(20)은 'buliding entrance)라는 링크로 연결될 수 있다. 또한 문(door)이나 게이트(gate)와 같은 포탈(portal)은 추상적 공간들(예컨대, 추상적 공간(10)과 추상적 공간(11), 추상적 공간(20)과 추상적 공간(21))을 동일한 레벨로 연결시키는 링크로 정의될 수 있다.
또한 엘리베이터, 계단, 경사(ramp) 등은 추상적 공간들(예컨대, 추상적 공간(10)과 추상적 공간(12), 추상적 공간(20)과 추상적 공간(22))을 수직적으로 다른 레벨로 연결시키는 링크로 정의될 수 있다.
또한, 전술한 바와 같은 동적 서브공간과 같이 배리어(barrier)가 없을 수 있는 추상적 공간(예컨대, 13, 23)과 다른 추상적 공간(예컨대, 10, 20)을 연결시키는 링크로 'opened edge'라는 링크가 정의될 수 있으며, 이들은 동일한 레벨로 두 추상적 공간을 연결시킬 수 있다.
이와 같이 본 발명의 실시 예에 따른 추상적 공간 데이터 모델을 이용하면, 추상적 공간들은 인도어나 아웃도어와 관계없이 심리스하게 연결되는 위상관계를 가질 수 있다.
도 4는 본 발명의 실시 예에 따른 동적 공간을 설명하기 위한 도면이다.
도 4를 참조하면, 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의하면 지 하철 역사에서 사람들이 자신의 PDA를 이용하여 음악을 공유하고 있는 공간(30)은 전술한 AFA 서브공간으로 추상적 공간 데이터 모델 DB(130)에 삽입될 수 있다. 또한, 음악 퍼포먼스를 위한 스테이지(34)와 키오스크(33) 등은 미리 정해진 스케줄에 의해 생성되는 공간이므로 TFA 서브공간으로 정의될 수 있다. 또한 음악 퍼포먼스가 진행되는 동안 사람들의 액티비티에 의해 생성되는 공간 예컨대, 퀴즈 게임 공간(31)과 자선행사 공간(32)은 각각 AFA 서브공간으로 본 발명의 실시 예에 따른 추상적 공간 데이터 모델 DB(130)에 삽입될 수 있다. 한편, 청중들을 위한 공간(35)는 어떠한 객체의 액티비티에 의해 생성되는 공간이 아니므로 AFA 서브공간으로 취급되지 않을 수도 있다. 하지만 상기 청중들을 위한 공간(35)은 일반적은 추상적 공간으로 정의될 수는 있다.
다시 도 1을 참조하면, 본 발명의 실시 예에 따른 추상적 공간 데이터 모델을 활용하면 특정 공간이 인도어나 아웃도어인지 여부와 관계없이 어반 컴퓨팅 환경에 적합하도록 동적 서브공간을 표현 또는 시뮬레이션할 수도 있고, 심리스한 모델링이 가능할 수 있음을 알 수 있다.
또한, 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)는 위상 생성장치(140)를 더 포함할 수 있다. 상기 위상 생성장치(140)는 전술한 바와 같이 전통적인 물리적 데이터 모델에 의해 정의되는 공간의 위상 관계에 대한 정보를 생성할 수도 있으며, 본 발명의 실시 예에 따른 추상적 공간 데이터 모델에 의해 정의되는 추상적 공간의 위상 관계에 대한 정보를 생성할 수도 있다. 이렇게 생성되는 공간의 위상관계에 대한 정보는 위상 DB(170)에 저장될 수 있다.
상기 위상 DB(170)는 서브공간 위상 DB(171) 및/또는 공간 위상 DB(172)를 포함할 수 있다. 상기 서브공간 위상 DB(171)는 전술한 바와 같은 동적 서브공간이나 후술하는 바와 같이 경로탐색 등을 위해 정의되는 새로운 추상적 서브공간들의 위상 관계에 대한 정보를 저장할 수 있다.
또한, 상기 공간 위상 DB(172)는 추상적 공간들 또는 물리적 데이터 모델에 의해 정의되는 공간들 간의 위상 관계에 대한 정보를 저장할 수 있다. 물론, 구현 예에 따라 상기 위상 DB(170)는 하나의 DB로 구현될 수도 있다.
이처럼 생성된 공간 및/또는 서브공간들 간의 위상관계에 대한 정보는 경로탐색(Path Find) 또는 공간구문(Space Syntax)을 분석하는데 사용될 수 있다. 이를 위해 상기 어반 컴퓨팅 장치(100)는 경로 탐색장치(150) 또는 공간구문 분석장치(160)를 각각 더 구비할 수 있다.
본 발명의 실시 예에 따른 경로 탐색장치(150)에 대해서는 후술하도록 한다. 상기 공간구문 분석장치(160)는 공간구문론(Space Syntax)에 의해 정의되는 여러가지 공간의 속성들을 분석하여 공간의 특성이나 활용성을 분석하기 위한 장치를 의미할 수 있다. 상기 공간구문 분석장치(160)의 예로는 본 출원인이 출원한 한국특허출원(출원번호 10-2008-133640, "BIM을 활용한 공간모델링 장치", 이하 '선행출원2')에 상세히 개시된바 있다. 따라서 본 명세서에서 상세한 설명은 생략하도록 한다. 상기 선행출원2에 개시된 기술적 사상 및 그 기재는 본 명세서의 기재로 취급될 수 있으며, 본 명세서의 레퍼런스에 포함될 수 있다.
이상과 같이 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)는 어반 컴퓨 팅 환경에서 일어날 수 있는 다양한 추상적 공간을 데이터 모델로써 정의할 수 있다. 또한, 이러한 추상적 공간이나 동적 서브공간을 모델링하여야만 더욱 현실에 가까운 또는 현실을 반영하는 모델링이나 시뮬레이션이 가능하게 된다.
이러한 추상적 공간이나 동적 서브공간이 정의되면, 공간을 시뮬레이션하거나 그 결과를 이용하여 제공되는 서비스들 또는 상기 서비스들을 위한 알고리즘도 변경되어야 하는 것이 바람직한 경우가 있다. 그 일 예로써 공간에서의 경로탐색 방법 또는 서비스가 있다.
예컨대, 특정 공간에서 장애물이 있는 경우 또는 전술한 바와 같은 동적 서브공간이 생성되거나 소정의 추상적 공간이 생성되는 경우를 생각할 수 있다. 예컨대, 도 4에서 도시한 바와 같은 동적 서브공간(30, 31, 32, 33, 34 등)이 특정 공간에서 생성되는 경우, 상기 동적 서브공간(30, 31, 32, 33, 34 등)은 사람들이 다닐 수 없는 공간으로 취급되는 것이 바람직한 경우가 있다. 예컨대, 도 4의 TFA 서브공간(33)과 같이 키오스크가 설치된 공간은 사람들이 다닐 수 없는 공간이므로, 경로 탐색에 고려되는 것이 바람직할 수 있다. 또한, 장애물이 존재하거나 넓은 공간인 경우에 기존의 경로 탐색 알고리즘이 적절하지 못한 경우가 있을 수 있다.
따라서 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서는 전술한 바와 같은 추상적 공간 데이터 모델을 이용하여 더욱 효과적인 현실적으로 필요한 경로 탐색 방법을 제시한다.
도 5는 본 발명의 실시 예에 따른 어반 컴퓨팅 방법을 활용한 경로 탐색 방법을 설명하기 위한 도면이다.
또한, 도 6은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서 공간을 컨벡스 서브공간으로 분할하는 알고리즘을 나타낸다.
그리고 도 7은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서 공간을 컨벡스 서브공간으로 분할하는 방법을 설명하기 위한 플로우 차트를 나타낸다.
도 5 내지 도 7을 참조하면, 종래의 컴퓨팅 방법에 의한 경로 탐색의 문제점 및 이에 따라 본 발명의 실시 예에 따른 어반 컴퓨팅 방법을 위한 경로 탐색의 과정을 알 수 있다.
먼저 도 5a에서는 종래의 경로 탐색방법에 의해 탐색된 경로를 나타내는데, 공간 A(space A)에서 공간 B(space B)로 가는 경로를 탐색하면 도 5a에서와 같이 소정의 장애물(obstacle)을 통과하는 경로가 탐색될 수 있다. 하지만 실제로 사람 또는 객체는 상기 장애물을 통과할 수 없으므로 탐색된 경로는 비현실적인 경로가 된다. 이는 특정 공간(예컨대, space C와 같은 대형 공간)의 크기나 장애물의 존재여부와 관계없이 모든 각각의 공간을 경로 탐색 알고리즘에서 하나의 노드로만 취급하기 때문에 발생할 수 있다. 또한, 특정 공간에는 이러한 장애물이 다수개 존재할 수도 있으며, 이때에는 종래의 경로 탐색 방법은 더욱 비현실적인 결과를 도출하게 된다.
또한, 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서 상술한 바와 같은 동적 서브공간들 역시 경로 탐색에 있어서는 상기 장애물과 유사하게 취급될 수 있음을 유의할 필요가 있다. 즉, 동적 서브공간은 정의된 기능이나 속성에 따라 사람/객체가 이동할 수 없는 지역 즉, 비가항(non-navigable) 지역일 수 있다. 예컨대, 도 4에서 설명한 바와 같은 키오스크 공간(33)이나 음악 퍼포먼스를 위한 스테이지(34)는 비가항 지역일 수 있다. 음악 공유 지역(30)이나 퀴즈 지역(31)은 구현 예 또는 설정에 따라 비가항 지역 또는 가항 지역으로 취급될 수도 있다. 어떠한 경우든 동적 서브공간 역시 비가항 지역으로 취급될 수 있으며, 이러한 동적 서브공간이 특정 공간(예컨대, space C)에 포함되는 경우에는 경로 탐색에서 상기 동적 서브공간 지역을 통과하지 않도록 하는 방법이 필요하다.
이하에서는 장애물, 전술한 AFA 서브공간, 및/또는 TFA 서브공간을 비가항 지역으로 취급하여 본 발명의 실시 예에 따른 경로 탐색 방법, 이를 위해 특정 공간을 컨벡스 서브 공간으로 분할하는 방법, 및 분할된 서브공간의 위상관계에 대해 설명하도록 한다.
먼저 도 7을 살펴보면, 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)의 경로 탐색장치(150)는 특정 공간(예컨대, 도 5a에 도시된 바와 같은 공간)에 대한 모델링 정보를 수신한다. 상기 모델링 정보는 물리적 데이터 모델 및/또는 추상적 공간 데이터 모델을 포함할 수 있다.
그러면, 상기 어반 컴퓨팅 장치(100)는 특정 공간(50)에서 비가항 지역에 상응하는 폴리곤(polygon, 60)을 제외한 폴리곤 즉, 제외공간이 컨케이브(concave) 폴리곤인지를 판단한다. 만약 상기 공간에 비가항 지역이 없는 경우에는 상기 제외공간은 상기 공간 자체를 의미할 수도 있다. 즉, 상기 제외공간은 특정 공간(50)의 가항(navigable) 지역을 의미하므로, 상기 제외 공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하다. 왜냐하면, 가항 지역이 컨케이브 폴리곤인 경우 도 5a 에서와 같은 비현실적인 경로 탐색이 일어날 수 있기 때문이다. 컨케이브 폴리곤이라 함은, 폴리곤의 코너(또는 꼭지점) 중 적어도 하나가 컨케이브 코너인 폴리곤을 의미할 수 있다. 컨케이브 코너는 상기 코너의 폴리곤 내각이 180도를 넘는 코너를 의미할 수 있다.
이처럼 가항 지역에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하기 위해서는 상기 특정 공간(50)에 상응하는 폴리곤에 컨케이브 코너가 있는지를 판단하고(S10), 상기 비가항 지역(60)에 상응하는 폴리곤에 컨케이브 코너가 있는지를 판단함(S20)으로써 가능할 수 있다.
그 결과 도 5b에서는 특정 공간(50)에 상응하는 폴리곤에 컨케이브 코너(c1, c2)가 검색되었고, 상기 비가항 지역(60)에 상응하는 폴리곤에 컨케이브 코너(c3, c4, c5, c6, c7, c8)이 검색되었음을 알 수 있다.
만약 제외공간이 컨케이브 폴리곤인 경우, 즉 컨케이브 코너를 포함하는 경우(S30), 상기 어반 컴퓨팅 장치(100)는 상기 제외공간을 컨벡스 서브공간으로 분할(partitioning)할 수 있다(S40). 예컨대, 도 5i와 같이 상기 제외공간을 컨벡스 폴리곤의 형태를 갖는 서브공간으로 분할할 수 있다. 그리고, 분할된 서브공간을 포함하는 상기 공간의 위상관계에 대한 정보를 도 5j와 같이 생성할 수 있다(S50). 상기 위상관계에 대한 정보는 도 5j에 도시되 바와 같이 소정의 그래프 형태 또는 상기 그래프를 표현하기 위한 소정의 데이터 구조로 표현될 수 있다.
그리고 인접한 두 개의 컨벡스 서브 공간을 구분하는 에지의 소정의 부분(예컨대, 중앙)에 라우트 노드(예컨대, 도 5k의 r1, r2, r3 등)를 생성하여 삽입함으 로써, 생성된 각각의 컨벡스 서브 공간들에 연결성(connectivity)을 부여할 수 있다.
그리고 모든 포털 노드(예컨대, 문이나 게이트에 상응하는 노드, p1, p2)를 상기 포털 노드와 가장 가까운 서브공간의 노드에 연결할 수 있다(S60). 예컨대, 도 5k에서 포탈 p1에 가장 가까운 서브공간은 도 5i에 표시된 서브공간(sa2)이고, 상기 서브공간(sa2)을 나타내는 노드(도 5j에 표시된 sn2)는 상기 서브공간(sa2)의 특정 부분(예컨대, 중앙)에 설정되는 노드일 수 있다.
이처럼 모든 포털 노드(p1, p2)가 연결하고, 소정의 경로 탐색 알고리즘(예컨대, 다익스트라(Dijkstra's) 알고리즘)을 적용하면, 본 발명의 실시 예에 따른 어반 컴퓨팅에서의 경로 탐색 방법에 따라 탐색된 경로가 도 5k와 같이 도출될 수 있다.
한편, 도 5k와 같이 탐색된 경로는 종래의 경로 탐색 방법에 의해 탐색된 경로(예컨대, 도 5a에 도시된 바와 같은)에 비하면 충분할 정도로 현실적이고 실제 적용될 수 있는 경로를 보여주고 있음을 알 수 있다. 하지만 여전히 도 5k에서 도시된 바와 같은 경로가 최단 경로를 보여주고 있지는 못하다. 이러한 문제점을 해결하기 위해 본 발명의 실시 예에 따른 어반 컴퓨팅에서의 경로 탐색방법에서는 경로 완화 과정(path relaxation process)을 더 수행할 수 있으며, 상기 경로 완화 과정을 수행함으로써 도 5l과 같은 경로를 얻을 수 있다. 상기 경로 완화 과정은 Whiting and colleagues(2007)에 의해 소개된 프로세스로 이미 공지된 알고리즘이므로 상세한 설명은 생략하도록 한다.
그러면, 상기 제외공간을 도 5i에서와 같이 적어도 두 개의 컨벡스 폴리곤으로 분할하는 방법이 필요한데, 이러한 기술적 사상은 도 6에 도시된 바와 같은 알고리즘에 의해 구현될 수 있다.
도 5와 도 6을 참조하면, 특정 공간(50)을 컨벡스 폴리곤으로 분할하기 위해서는 전술한 바와 같이 탐색된 컨케이브 코너를 중심으로 상기 특정 공간(50)을 분할할 수 있다. 도 5b를 참조하면, 탐색된 컨케이브 코너는 c1~c8임을 알 수 있다. 그러면 먼저 컨케이브 코너(c1)를 중심으로 에지를 그림으로써 분할 작업을 수행한다.
이를 위해 상기 어반 컴퓨팅 장치(100)는 도 5c에서와 같이 상기 컨케이브 코너(c1)로부터 출발하는 반대 벡터(v1)을 생성할 수 있다(도 6의 CreateOppositeVector(P0)). 그리고 상기 컨케이브 코너(c1)와 연결될 수 있는 모든 프리 코너를 탐색한다(도 6의 FindFreeCorners(S,ObsList,P0)). 상기 프리 코너는 상기 컨케이브 코너(c1)와 연결되었을때 상기 제외공간에 상응하는 폴리곤의 에지를 가로지르지 않는 코너로 정의될 수 있다. 예컨대, 도 5c에서 컨케이브 코너(p0)와 탐색된 프리 코너(p1, p2, p3, p5)를 제외한 다른 코너가 연결되면 상기 비가항 지역(60)에 상응하는 폴리곤의 에지를 가로지르거나 상기 특정 공간(50)에 상응하는 폴리곤의 에지를 가로지르게 된다.
한편, 탐색된 프리 코너(p1, p2, p3, p5) 중 어떤 코너와 상기 컨케이브 코너(p0)를 연결할지를 정하는 방법은 다음과 같다. 즉, 상기 컨케이브 코너(p0)와 각각의 프리 코너(p1, p2, p3, p5)를 연결하였을 때 생성되는 가상의 선이 상기 반 대벡터(v1)과 이루는 각도가 가장 작게 되는 프리 코너를 선택한다(도 6의 FindLeastDevNode(PF,V)). 예컨대, 상기 컨케이브 코너(p0)가 각각 코너 p1, p2, p3, p5와 연결되어 가상의 선이 생성된다고 하면, 상기 반대벡터(v1)과 가장 작은 각도를 이루는 가상의 선은 p0 와 p3 연결되는 경우이다. 이때에는 반대벡터(v1)이 상기 프리코너(p3)를 지나가므로 상기 반대벡터(v1)와 가상의 선(p0, p3)가 이루는 각도는 0도가 된다(여기서, 선(a,b)는 코너 a와 b를 연결하는 선을 의미함). 따라서 프리 코너(p3)가 선택된다.
그러면 상기 어반 컴퓨팅 장치(100)는 선택된 프리코너(p3)와 상기 컨케이브 코너(p0)를 에지로 연결하고, 그 결과 도 5d와 같은 공간이 생성된다. 이러한 과정을 더 이상 컨케이브 코너가 존재하지 않게 될 때까지 수행하면, 도 5i와 같이 상기 제외공간이 컨벡스 폴리곤으로 분할됨을 알 수 있다.
도 5d는 컨케이브 코너(c2)를 기준으로 반대벡터(v2)를 생성하여 전술한 과정을 수행하는 과정을 도시하고 있다. 그 결과 도 5e와 같은 공간 정보가 생성될 수 있다. 그리고 도 5e는 다시 컨케이브 코너(c3)를 기준으로 반대벡터(v3)를 생성하여 전술한 과정을 수행할 수 있으며, 도 5f는 컨케이브 코너(c4)를 기준으로 에지를 생성한 결과를 나타낸다. 이처럼 순차적으로 컨케이브 코너(c5) 및 컨케이브 코너(c6)를 기준으로 전술한 과정을 수행하여 에지를 생성하면 도 5g와 같은 공간이 생성된다. 마지막으로 도 5h에서와 같이 컨케이브 코너(c7)를 기준으로 에지를 반대벡터(v4)를 생성하고 전술한 과정을 수행하면 도 5i와 같은 결과가 생성되고, 더 이상 컨케이브 코너가 존재하지 않게 되므로 공간의 분할 과정(도 7의 S40)은 종료가 된다.
상술한 바와 같이 특정 공간을 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서와 같이 분할하게 되면 공간의 위상관계도 변화하게 된다. 그리고, 전술한 바와 같이 특정 공간에서는 동적 서브공간과 같은 비가항 지역이 실시간으로 추가가될 수 있다. 따라서, 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)는 실시간으로 변화되는 공간의 환경에 따라 공간의 위상관계 및 그에 따른 경로 탐색을 전술한 바와 같은 과정을 거쳐 다시 수행할 수도 있다.
즉, 공간에 제2비가항 지역이 추가로 생성되는 경우, 상기 어반 컴퓨팅 장치는(100) 상기 공간에서 상기 비가항 지역 및 상기 제2비가항 지역을 제외한 공간인 제2제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하고, 판단결과 상기 제2제외공간이 컨케이브 폴리곤인 경우, 상기 제2제외공간을 적어도 두 개의 제2컨벡스 서브공간으로 분할할 수 있다.
도 8은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의해 비가항 지역이 실시간으로 생성된 경우 공간의 위상 관계가 변화되는 과정을 나타낸다.
먼저 도 8a는 특정 공간이 존재하는 경우의 위상 관계를 나타낸다. 이때 상기 특정 공간에 도 8b와 같이 소정의 장애물이 생기거나 본 발명의 실시 예에 따른 동적 공간이 생성되는 경우, 본 발명의 실시 예에 따른 어반 컴퓨팅 장치(100)는 전술한 바와 같은 방법으로 공간을 컨벡스 서브공간으로 분할할 수 있고, 그 결과에 따른 서브공간들의 위상관계는 도 8b에 도시된 바와 같음을 알 수 있다. 그리고 생성된 서브공간들은 본 발명의 실시 예에 따른 추상적 공간이 됨을 알 수 있다.
도 9는 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의해 시간의 경과에 따라 공간의 위상 관계가 변화되는 과정을 설명하기 위한 도면이다.
도 9를 참조하면, 처음에는 특정 공간(t=0)이 존재할 수 있다. 상기 특정 공간(t=0)은 비가항 지역은 존재하지 않지만, 컨케이브 폴리곤이므로 본 발명의 실시 예에 따른 공간 분할 방법에 따라 컨벡스 서브공간으로 분할될 수 있으며, 그 결과 공간(t=10)이 생성된다. 그 후 일정 시간 경과후 상기 공간(t=0)에 특정 비가항 지역(예컨대, 장애물 또는 동적 서브공간)이 생성되면, 공간(t=10)은 공간(t=20)과 같이 위상관계가 변화하게 된다. 상기 공간(t=20)에 다시 특정 비가항 지역(예컨대, 장애물 또는 동적 서브공간)이 추가되면, 공간(t=20)은 공간(t=30)으로 변하게 되고, 다시 특정 비가항 지역(예컨대, 장애물 또는 동적 서브공간)이 추가되면, 공간(t=30)은 공간(t=50)을 변화된다.
이처럼 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의하면 실시간으로 변화하는 공간의 성격이나 특성에 의해 공간 및 서브공간의 위상 및 기타 속성(예컨대, 공간구문론에서의 속성 등)이 변화할 수 있다. 물론, 경로 탐색 결과도 변화할 수 있다. 따라서, 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서는 실시간으로 공간의 특성을 현실적으로 분석하고, 이를 활용할 수 있는 기술적 사상을 제공하는 효과가 있다. 또한, 이를 구현하기 위한 추상적 공간 데이터 모델에 대한 개념을 제공하는 효과가 있다.
도 10은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 따라 불할된 공간의 공간구문 분석결과를 이용하는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의해 소정의 공간이 서브 공간으로 분할된 결과 및 상기 공간의 공간구문(space syntax) 분석결과를 나타낸다.
상기 공간의 공간구문 분석결과는 도 10에 도시된 바와 같이 분할된 각각의 서브공간의 연결도(connectivity), 통합도(global integration), 깊이(Mean Depth) 등을 포함할 수 있다.
따라서, 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의하면, 사용자가 특정 용도로 상기 공간의 적어도 일부를 사용하고자 하는 경우, 현재의 상황에 가장 적합한 상기 공간의 적어도 일부 즉, 서브 공간을 알아내고 이를 사용자에게 알려줄 수 있다.
예컨대, 도 10에 도시된 상기 공간에서 소정의 사용자가 캠페인을 벌이고자 하는 경우, 상기 어반 컴퓨팅 장치(100)는 상기 공간을 도 10에 도시된 바와 같이 서브공간으로 분할한다. 그리고, 분할된 상기 공간의 공간구문을 분석할 수 있다. 공간구문을 분석할 때는 사용자의 사용 용도에 따라 공간구문의 특정 속성(예컨대, 통합도)만을 분석할 수도 있다.
예컨대, 캠페인이라는 사용 용도를 위해서는 상기 어반 컴퓨팅 장치(100)는 상기 공간의 통합도를 분석할 수 있다. 분석결과 서브공간 U, M, N의 통합도가 가장 높음을 알 수 있다. 따라서, 상기 어반 컴퓨팅 장치(100)는 사용자 또는 관리자에게 상기 공간 중 U, M, N 지역/위치에서 캠페인을 하는 경우 가장 다른 사람들의 이목을 집중시키기 좋아서, 캠페인을 하기에 좋은 위치라는 것을 알려줄 수 있다. 또한, 서브 공간 I, J, Y의 통합도가 낮으므로 상기 I, J, Y에 해당하는 위치에서는 캠페인을 하는데 적합하지 않다고 알려줄 수도 있다. 예컨대, 공간의 사용 용도에 따라 연결도가 가장 좋은 서브공간을 상기 어반 컴퓨팅 장치(100)가 추천할 수 있음은 물론이며, 다양한 구현 예가 가능함을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
한편, 공간구문 분석결과는 상술한 바와 같은 경로 탐색에서도 활용될 수 있다.
예컨대, 도 5j 또는 5k와 같이 상기 어반 컴퓨팅 장치(100)는 공간을 서브공간으로 분할하고, 그에 따라 소정의 그래프(또는 위상관계)에 대한 정보를 생성할 수 있음은 전술한 바와 같다. 그 후 상기 어반 컴퓨팅 장치(100)는 각 서브 공간 별 공간 구문을 도 10에 도시된 바와 같이 분석할 수 있다. 그러면, 상기 어반 컴퓨팅 장치(100)는 분석된 공간구문의 속성을 상기 그래프에 포함되는 에지의 가중치로 설정할 수 있다.
예컨대, 공간구문 분석결과 도 5i에 도시된 서브공간(sa2)의 통합도가 낮은 경우라면, 상기 서브 공간(sa2)는 외진 곳을 의미할 수 있다. 따라서 상기 어반 컴퓨팅 장치(100)는 상기 서브 공간(sa2)는 사람이 많지 않은 지역 또는 덜 복잡한 지역으로 취급할 수 있다. 따라서, 상기 어반 컴퓨팅 장치(100)는 상기 그래프(예컨대, 도 5k에 도시된 그래프)에서 상기 서브공간(sa2)에 포함되는 에지(예컨대, 노드 p1부터 r1 까지의 에지들)의 가중치를 낮게 설정할 수 있다. 만약 통합도가 높은 서브공간에 포함되는 에지에는 높은 가중치를 설정할 수 있다. 따라서, 본 발 명의 실시 예에 따른 경로 탐색에서는 단순히 이동거리만을 고려한 경로 탐색이 아닌 실제 각 공간의 지역 즉, 서브 공간별로 이동에 필요한 상황(예컨대, 복잡한 지역 등과 같은 공간구문의 속성에 대응되는 상황)이 고려되어 경로를 탐색할 수 있다.
가중치가 설정되면, 상기 어반 컴퓨팅 장치(100)는 가중치가 있는 에지를 포함하는 그래프의 경로 탐색 알고리즘을 사용하여 각각의 서브공간의 특성을 반영한 경로 탐색을 수행할 수 있다. 그러한 경로 탐색 알고리즘은 전술한 바와 같은 다익스트라 알고리즘이 적용될 수 있지만 이에 한정되지는 않는다.
본 발명의 실시 예에 따른 어반 컴퓨팅 방법 및 어반 컴퓨팅에서의 경로 탐색 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 어반 컴퓨팅 장치의 개략적인 구성을 나타낸다.
도 2는 본 발명의 실시 예에 따른 추상적 공간을 표현하기 위한 데이터 모델의 일 예를 나타낸다.
도 3은 본 발명의 실시 예에 따른 추상적 공간의 위상(topology) 관계를 설명하기 위한 도면이다.
도 4는 본 발명의 실시 예에 따른 동적 공간을 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 어반 컴퓨팅 방법을 활용한 경로 탐색 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서 공간을 컨벡스 서브공간으로 분할하는 알고리즘을 나타낸다.
도 7은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에서 공간을 컨벡스 서브공간으로 분할하는 방법을 설명하기 위한 플로우 차트를 나타낸다.
도 8은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의해 비가항 지역이 실시간으로 생성된 경우 공간의 위상 관계가 변화되는 과정을 나타낸다.
도 9는 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 의해 시간의 경과에 따라 공간의 위상 관계가 변화되는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 실시 예에 따른 어반 컴퓨팅 방법에 따라 불할된 공간의 공간구문 분석결과를 이용하는 과정을 설명하기 위한 도면이다.

Claims (17)

  1. 어반 컴퓨팅 장치가 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하는 단계;
    판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계를 포함하는 어반 컴퓨팅 방법.
  2. 제 1항에 있어서, 상기 제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계는,
    상기 비가항 지역에 상응하는 폴리곤 또는 상기 공간에 상응하는 폴리곤 중 적어도 하나에 컨케이브(concave) 코너(corner)가 있는지를 검색하는 단계; 및
    판단결과 컨케이브 코너가 검색된 경우, 상기 제외공간을 컨케이브 폴리곤으로 판단하는 단계를 포함하는 어반 컴퓨팅 방법.
  3. 제 1항에 있어서, 상기 비가항 지역은,
    상기 공간에 존재하는 장애물 지역, 미리 지정된 스케줄에 의해 임시로 생성되는 서브공간, 또는 상기 공간에 존재하는 객체의 활동에 의해 생성되는 서브공간 중 적어도 하나를 포함하는 어반 컴퓨팅 방법.
  4. 제 2항에 있어서, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계는,
    검색된 상기 컨케이브 코너에서 상기 컨케이브 코너의 내각을 절반으로 나누는 반대벡터를 생성하는 단계;
    상기 컨케이브 코너와 연결될 수 있는 프리 코너들을 검색하고, 검색된 프리 코너들 중 프리 코너들 각각과 상기 컨케이브 코너를 연결하였을때 생성되는 선이 상기 반대벡터와 가장 작은 각도를 이루는 프리 코너를 탐색하는 단계; 및
    탐색된 상기 프리 코너와 상기 컨케이브 코너를 에지로 연결하여 두 개의 서브 공간으로 구분하는 단계를 포함하는 어반 컴퓨팅 방법.
  5. 제 1항에 있어서, 상기 어반 컴퓨팅 방법은,
    상기 공간에 제2비가항 지역이 생성되는 경우, 상기 어반 컴퓨팅 장치는 상기 공간에서 상기 비가항 지역 및 상기 제2비가항 지역을 제외한 공간인 제2제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계; 및
    판단결과 상기 제2제외공간이 컨케이브 폴리곤인 경우, 상기 제2제외공간을 적어도 두 개의 제2컨벡스 서브공간으로 구분하는 단계를 더 포함하는 어반 컴퓨팅 방법.
  6. 삭제
  7. 어반 컴퓨팅 장치가 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하는 단계;
    판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하는 단계; 및
    구분된 상기 적어도 두 개의 컨벡스 서브 공간, 상기 적어도 두 개의 컨벡스 서브 공간들 중 인접한 두 개의 컨벡스 서브 공간을 연결하는 적어도 하나의 라우트(route) 노드, 및 상기 공간에 포함되는 포탈(portal) 노드에 기초하여 경로 탐색을 수행하는 단계를 포함하는 어반 컴퓨팅에서의 경로 탐색 방법.
  8. 제 7항에 있어서, 상기 경로 탐색을 수행하는 단계는,
    상기 적어도 두 개의 컨벡스 서브 공간에 대응되는 서브 공간 노드를 생성하는 단계;
    상기 인접한 두 개의 컨벡스 서브 공간이 공유하는 에지들 각각에 적어도 하나의 라우트 노드를 생성하는 단계; 및
    미리 결정된 포탈 노드, 상기 서브 공간 노드, 상기 라우트 노드들을 기초로 상기 공간에 대응되는 그래프를 생성하는 단계를 포함하는 어반 컴퓨팅에서의 경로 탐색 방법.
  9. 제 8항에 있어서, 상기 경로 탐색을 수행하는 단계는,
    생성된 그래프에 기초하여 경로 탐색 알고리즘을 적용하여 경로를 탐색하는 단계를 더 포함하는 어반 컴퓨팅에서의 경로 탐색 방법.
  10. 제 8항에 있어서, 상기 경로 탐색을 수행하는 단계는,
    생성된 그래프에 기초하여 경로 완화 과정(path relaxation process)을 수행하여 경로를 탐색하는 단계를 더 포함하는 어반 컴퓨팅에서의 경로 탐색 방법.
  11. 제 7항에 있어서, 상기 어반 컴퓨팅에서의 경로 탐색 방법은,
    상기 어반 컴퓨팅 장치가 상기 공간에 생성되는 제2비가항 지역을 인식하는 단계;
    상기 어반 컴퓨팅 장치가 상기 공간에서 상기 비가항 지역 및 상기 제2비가항 지역을 제외한 공간인 제2제외공간에 상응하는 폴리곤이 컨케이브 폴리곤인지를 판단하는 단계;
    판단결과 상기 제2제외공간이 컨케이브 폴리곤인 경우, 상기 제2제외공간을 적어도 두 개의 제2컨벡스 서브공간으로 구분하는 단계; 및
    구분된 상기 적어도 두 개의 제2컨벡스 서브 공간, 상기 적어도 두 개의 제2 컨벡스 서브 공간들 중 인접한 두 개의 제2컨벡스 서브 공간을 연결하는 적어도 하나의 제2라우트(route) 노드, 및 상기 공간에 포함되는 포탈(portal) 노드에 기초하여 경로 탐색을 수행하는 단계를 포함하는 어반 컴퓨팅에서의 경로 탐색 방법.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 어반 컴퓨팅 장치에 있어서,
    상기 어반 컴퓨팅 장치는 공간에서 비가항 지역을 제외한 공간인 제외공간에 상응하는 폴리곤이 컨케이브(concave) 폴리곤(polygon)인지를 판단하고, 판단결과 상기 제외공간이 컨케이브 폴리곤인 경우, 상기 제외공간을 적어도 두 개의 컨벡스(convex) 서브 공간으로 구분하며,
    상기 비가항 지역은,
    상기 공간에 존재하는 장애물 지역, 미리 지정된 스케줄에 의해 임시로 생성 되는 서브공간, 또는 상기 공간에 존재하는 객체의 활동에 의해 생성되는 서브공간 중 적어도 하나를 포함하는 어반 컴퓨팅 장치.
  17. 삭제
KR1020090091607A 2009-09-28 2009-09-28 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치 KR101123836B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090091607A KR101123836B1 (ko) 2009-09-28 2009-09-28 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090091607A KR101123836B1 (ko) 2009-09-28 2009-09-28 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치

Publications (2)

Publication Number Publication Date
KR20110034170A KR20110034170A (ko) 2011-04-05
KR101123836B1 true KR101123836B1 (ko) 2012-03-16

Family

ID=44042796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090091607A KR101123836B1 (ko) 2009-09-28 2009-09-28 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치

Country Status (1)

Country Link
KR (1) KR101123836B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101145820B1 (ko) * 2010-04-08 2012-05-16 버츄얼빌더스 주식회사 공간분석 방법 및 그 시스템
CN109000646B (zh) * 2018-04-25 2020-10-30 深圳臻迪信息技术有限公司 基于凹多边形扫描区域的无人船路径规划方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050028859A (ko) * 2003-09-19 2005-03-23 소니 가부시끼 가이샤 환경 인식 장치 및 방법, 경로 계획 장치 및 방법, 및로봇 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050028859A (ko) * 2003-09-19 2005-03-23 소니 가부시끼 가이샤 환경 인식 장치 및 방법, 경로 계획 장치 및 방법, 및로봇 장치

Also Published As

Publication number Publication date
KR20110034170A (ko) 2011-04-05

Similar Documents

Publication Publication Date Title
JP4630660B2 (ja) 位置決め技法
Jiang et al. Continuum crowd simulation in complex environments
Kneidl et al. A hybrid multi-scale approach for simulation of pedestrian dynamics
CN107480320B (zh) 一种基于拓扑地图与视觉影响的人群疏散仿真方法及系统
Aschwanden et al. Empiric design evaluation in urban planning
JP6436241B2 (ja) シミュレーションプログラム、シミュレーション方法およびシミュレーション装置
Van Nes Space syntax in theory and practice
CN106650915A (zh) 基于网格智能体的人群行为模拟方法
Diakité et al. Extraction of the 3D free space from building models for indoor navigation
Mekni Automated generation of geometrically-precise and semantically-informed virtual geographic environments populated with spatially-reasoning agents
Haghpanah et al. Application of bug navigation algorithms for large-scale agent-based evacuation modeling to support decision making
KR101123836B1 (ko) 어반 컴퓨팅 방법, 어반 컴퓨팅에서의 경로 탐색 방법, 및 어반 컴퓨팅 장치
Lämmel et al. Large-scale and microscopic: a fast simulation approach for urban areas
EP2660756A1 (en) Method, apparatus and computer program product for simulating the movement of entities in an area
Wijerathne et al. Scalable HPC enhanced agent based system for simulating mixed mode evacuation of large urban areas
Khan et al. Subspacing based on connected opening spaces and for different locomotion types using geometric and graph based representation in multilayered space-event model (MLSEM)
Gayle et al. Interactive navigation of heterogeneous agents using adaptive roadmaps
Testa et al. Crowdest: a method for estimating (and not simulating) crowd evacuation parameters in generic environments
Jiang et al. Status quo and challenges and future development of fire emergency evacuation research and application in built environment
KR102605041B1 (ko) 3차원 cad 모델 기반의 네비게이션 서비스 제공 방법 및 그 장치
Reilly et al. Using space syntax to enable walkable ar experiences
Jamali et al. A hybrid 3D indoor space model
JP2017224201A (ja) シミュレーションプログラム、シミュレーション方法およびシミュレーション装置
Zhang et al. Urban volumetrics: spatial complexity and wayfinding, extending space syntax to three dimensional space
Izaki et al. Encoding user experiences

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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: 20150109

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170817

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180306

Year of fee payment: 7