유비쿼터스 & 상황인지

Saltlux

Jump to: navigation, 찾기


유비쿼터스 기술은 기존의 단순한 형태의 장치들이 연결된 물리적 공간을 보다 지능적이며, 적응적인 컴퓨팅 환경인 지능적 분산 환경으로 변화하는데 핵심적인 역할을 담당하고 있습니다. 이러한 지능적 환경을 구현하기 위에서는 각 시스템들과 서비스들에 다양한 디바이스, 이동 사용자 및 빠르게 변화하는 context를 지원하는 기능이 요구되고 있습니다. 가장 중요한 서비스 기술 요소로는, 유비쿼터스 환경에서 주어진 상황에 맞는 최적을 서비스를 제공하기 위해 각각의 agents는 context-aware 기술을 탑재하여 적응적으로 서비스를 변화하는 기능을 제공하여야 합니다. 유비쿼터스 컴퓨팅 환경에서 이러한 context-awareness를 지원하기 위해서는 지능서비스 미들웨어 기술이 필수적입니다. 지능형서비스 미들웨어는 단순한 형태의 초고속 인터넷 기반 공유, 주변장치 공유의 개념을 벗어나 홈네트워크 기술, 정보가전 기술, 소프트웨어 플랫폼, 솔루션 및 컨텐츠 등 다양한 IT 분야의 기술들이 통합되는 새로운 개념의 차세대 서비스 환경을 위한 context-aware 모듈 개발을 용이하게 합니다. 또한 디지털 홈, 지능형 로봇, 텔레메틱스 서비스가 통합되어 제공되는 ubiquitous Society 구현을 위해, 다양한 적응적 알고리즘을 활용하여 변화하는 context에 맞는 최적의 서비스 환경 구축을 가능케 합니다.

1. Context
컨텍스트(Context)란 어떠한 하나의 엔티티(Entity)의 상황을 특징짓는 데 사용될 수 있는 임의의 정보를 말합니다. 가령, 자동 습도 조절장치가 있다면 현재의 습도에 의해서 습도 조절장치가 동작이 되어야 할지, 그렇지 않을지를 결정하게 되므로 습도는 하나의 컨텍스트가 됩니다. 이러한 정의에 따르면 사람, 장소, 물리적 오브젝트 등 변화를 줄 수 있는 모든 것들을 포함하게 됩니다

1.1 Context 특징
- 컨텍스트의 source 는 다양하며, 여러 위치에 분산되어 있습니다.
- 컨텍스트는 추가적인 추상화를 필요로 한다. 예를 들면, GPS 는 위도, 경도의 정보를 제공하지만 어플리케이션은 이러한 정보를 통해 사용자가 위치하고 있는 장소(예를 들면 도로의 이름)를 필요로 합니다. 이를 위한 추상화를 필요로 합니다.
- 정보를 얻는 컴포넌트는 어플리케이션에 종속적이지 않습니다. 컴포넌트는 때때로 동시에 동작하는 여러 어플리케이션에게 정보를 제공해야 하는데 이러한 상황에서는 컴포넌트와 어플리케이션은 독립적이어야 할 필요가 있습니다.

1.2 상황인지 (Context Awareness)
상황인지는 “상황의 변화를 감지하고 사용자에게 적합한 정보나 서비스를 제공하거나 시스템이 스스로 상태를 변경하는 것”을 말합니다. 이러한 상황의 변화를 컴퓨터가 이해하기 위해서는 우선 상황(Context)이 무엇인지를 명확하게 정의하는 것이 필요합니다.
이러한 상황정보의 가장 중요한 성격으로 Identity, Location, Status, Time을 들 수 있습니다.
- Identity : 객체에 식별자를 부여
- Location : 2차원에서의 위치 정보 및 방향과 고도, 객체간 위치 관계, 내용물을 포함
- Status (or Activity) : 객체가 가지고 있는 고유의 특성 중 센싱이 가능한 부분
- Time : 역사적 정보의 가치를 높이는 것으로 대부분의 경우 다른 상황과 접하거나 기간을 인식하는 데 사용되며, 어떤 경우에는 순서의 나열이나 인과 관계를 확인하는 것만으로도 의미가 있음.

이렇게 상황정보를 통해 상황인식 파라미터를 식별하게 됩니다. 아래 표는 가정공간의 상황인식 파라미터를 식별한 내용입니다.

상황종류 파라미터
사용자 상황 -정상
-발병, 병환 중, 장애발생, 장애 중, 사망
신원적 상황 -ID, PW, 성명, 영문명, 별명, 주민번호, 학번, 회원번호, 사번
신체적 상황 -맥박, 혈압, 체온, 음성, 알코올, 마약, 당뇨, 임신, 비만, 출혈
공간적 상황 -위치, 방향, 속도, 힘, 가속도, 고도, 경사도, 수평각, 수직각
시간적 상황 -연, 월, 일, 시, 계절, 휴일, 일일 시간표, 출장 시간표
환경적 상황 -온도, 습도, 조도, 소음, 산소량, 오존량, LNG, SO3, NH3, CO, CH4, 자외선, 방사선, 적외선, 전자파, 초고음파
활동적 상황 -인접, 질문, 응답, 목격, 검토, 우선순위, 대기
컴퓨팅 상황 -전원 on/off, 수/자동, on/off-line, log-in/out
-Idle/Active/Standby, Normal/Alarm/Failed, Ipv6주소 점유시간
자원적 상황 -배터리, 디스플레이, 인터넷, 메모리(USB, RAM) OS Version
가용적 상황 -신뢰도, 가용시간, 가용성능, 안정도, 안전도, EMC/EMI
접근적 상황 -스팸 메일, 바이러스, 침입탐지, 해킹, 크래킹, 미성년 금지
-흉기, 폭발물, 폭력, 폭언
사고적 상황 -추돌, 화재, 타박상, 찰과상, 골절상
재해적 상황 -해일, 폭풍, 태풍, 폭우, 폭설, 혹서, 가뭄, 혹한, 지진, 화산, 혜성충돌
범죄적 상황 -강도, 절도, 살해, 사기, 유괴, 강간, 파괴, 무단 침입, 밀매, 밀수, 마약복용, 방화, 가정폭력, 시설훼손(스크래칭), 무단 방류, 방뇨, 아동(여성, 노약자)학대
거래적 상황 -사업자등록증, 거래번호, 세금납부번호, 공급자, 공급받는자, EPC
-현금영수증 번호, 물품명, 서비스명, 단가, 수량, 금액

출처 : 박승창/남상엽/류영달/이기혁/김석완, “유비쿼터스 센서네트워크기술”, Jinhan M&B, 2005:129.

2. 상황정보 모델링 기술
상황 모델링은 상황 정보에 대한 높은 수준의 추상적 개념을 제공하기 위해 필요하며 센서와 엑추에이터의 추상화를 제공함으로써, 개발자가 다양한 하드웨어 장치와 인터페이스 하는 부담을 줄일 수 있습니다. 이러한 상황모델링 기법은 각 시스템에서의 상황정보 교환을 위해 사용되는 데이터 구조에 관한 스키마에 의해 분류됩니다.

2.1 키-값(Key-Value) 모델
상황정보를 모델링하기 위한 가장 간단한 데이터 구조입니다. 환경 변수로서 상황정보의 수치를 어플리케이션에게 제공하는데, 키-값 쌍의 형식을 사용하여 상황을 모델링하며 Key-Value 모델은 관리하기 쉽지만, 효과적인 상황검색 알고리즘을 위한 복잡한 구조화가 부족합니다.

2.2 마크업 스키마(Markup Scheme) 모델링 기법
속성과 내용을 갖는 마크업 태그로 구성된 계층적 데이터 구조로 마크업 태그의 내용은 항상 다른 마크업 태그에 의해 재귀적으로 정의될 수 있습니다. 이러한 종류의 상황 모델링 기법에서는 전형적으로 프로파일이 대표적입니다. 프로파일은 항상 XML과 같은 모든 마크업 언어의 슈퍼클래스인 SGML에서 유도된 직렬화에 기반합니다.

2.3 객체 지향(Object Oriented) 모델링 기법
유비쿼터스 환경에서 상황의 동적 특성에 관한 문제점들을 해결하기 위해서, 캡슐화와 재사용이라는 객체 지향의 주요 장점을 적용합니다. 상황처리에 관한 자세한 내용은 객체 수준에서 캡슐화되므로, 다른 컴포넌트들에게 은닉되고 상황정보로의 접근은 특정 인터페이스를 통해서만 제공됩니다.

2.4 논리 기반(Logic Based) 모델링
규칙을 기반으로 하여 다양한 상황에 대한 지식을 룰로 표현하고, 상황에 따른 값을 어플리케이션에 제공하는데, 규칙이 많아 질수록 관리가 어렵고 규칙간의 충돌 해소에 많은 시간과 비용이 소요됩니다.

2.5 온톨로지 기반(Ontology Based) 모델링
온톨로지는 개념과 상관 관계를 기술하는 도구로 상황정보를 표현하고 공유하기 위한 어휘 및 용어를 제공하며 상황 정보의 다양성 때문에 도메인 기반 온톨로지(domain specific ontology)를 정의하고 있습니다. 이 모델은 유비쿼터스 컴퓨팅 환경에서 상황지식의 공유와 재사용을 지원하며, 또한 계층적 상황 온톨로지 모델에서는 상위 계층의 온톨로지를 이용하여 도메인에 맞는(domain-specific) 하위 계층의 온톨로지를 생성해 낼 수 있습니다.

3. 상황정보 센싱 기술
유비쿼터스 환경에서 사용자의 위치 정보는 상황인식 서비스에서 중요한 상황정보로 위치인식 시스템을 인식 가능 영역에 따라 분류할 수 있습니다.

3.1 매크로 위치인식 시스템
가장 광범위한 위치인식 가능 영역을 제공하며, 현재 위치기반 서비스 (Location Based Service)를 위해 GPS(global Positioning System)와 이동통신망 기반 위치인식 시스템이 활용되고 있습니다.

3.2 마이크로 위치인식 시스템
무선 환경의 제한으로 매크로 위치인식 시스템이 커버하지 못하는 실내나 지하 또는 건물 밀집지역 등에서 위치인식을 제공하며, 위치인식을 위해 사용되는 매체에 따라 적외선 기반 시스템(Active Badge), 초음파 기반 시스템(Active Bat, Cricket), 무선랜 신호 기반 시스템(RADAR, 3D-iD), 영상 기반 시스템(Easy Living) 등이 있습니다.

3.3 Ad-hoc 위치인식 시스템
무선 센서 네트워크와 같이 위치인식을 위한 추가적인 하드웨어의 도입이 어려운 환경에서 위치정보를 가지는 레퍼런스 노드와의 무선 링크 연결성만으로 위치를 계산합니다. 언제, 어디에서나 그리고, 다양한 응용에 적합한 위치 정보를 수집하기 위해서는 여러 위치인식 시스템간의 통합이 요구됩니다.

4. 관련 시스템 및 아키텍처 소개

4.1 Context Broker Architecture(CoBrA)
유비쿼터스 환경에서 Context 정보의 생성/관리/배포를 위한 아키텍처

image:semantic_technology_02_13_1.jpg

4.1.1 CoBrA세부목표
• Common ontology 개발
시스템 독립적인 context 표현 온톨로지 개발을 목표로, W3C에서 추천하는 OWL로 CoBrA ontology(COBRA-ONT) 설계하였고, COBRA-ONT는 행동, 에이전트, 장치, 회의, 디지털 문서, 공간, 시간에 관한 온톨로지를 정의하고 있습니다.
또한, spatial ontology, Region connection Calculus(RCC), FIPA device ontology와 같은 기존 온톨로지를 참조하고 있습니다.
• Shared context model 개발
smart space에 존재하는 모든 device와 service 및 agent을 위한 공통 context 관리 모델 개발을 목표로 하고 있습니다. 특히 context broker agent을 구현하여, centralized context 모델 제공 및 sensor로부터 입력된 context 정보로부터 추론을 하며, context 정보에 대한 논리적인 불일치를 감지 수정합니다. context 정보에 대한 배포 및 이용에 대한 접근을 정의한 policy를 기반으로 사용자 privacy 보호를 하게 됩니다.
• Common policy language 개발
사용자 및 장치에 대한 context 정보에 접근 정책을 정의할 수 있는 language 개발을 목표로 하고 있습니다. 주로 Rei Policy Language를 확장하여 Semantic web Language로 privacy policy를 표현하고, 접근이 제한된 정보를 사용자가 추론을 통해 얻어 낼 수 있는 문제점에 대해 사용자의 정보 획득에 대한 규칙을 정의하고, 추론하여 context 배포에 반영합니다.

4.1.2 SOUPA(Standard Ontology for Ubiquitous and Pervasive Applications)
image:semantic_technology_02_13_2.jpg

-SOUPA 에서는 웹 중심의 Ontology Ubiquitous Home Network 측면에서 연구
-SOUPA에서 참조되는 온톨로지
FOAF, TIME and the Entry Sub ontology of time, OpenCye Spatial Ontology&RCC, COBRA ontology&MoGATU BDI Ontology
-Rei Policy ontology
Set of deontic concepts for specifying & reasoning about security access control rules

4.2 Context Toolkit
• 컨텍스트를 쉽게 이용하고 상위어플리케이션에게 하위 컨텍스트 정보들을 제공하기 위한 toolkit입니다. 이것은 하위컨텍스트들에 대한 적절한 추상화(abstraction)을 통해서 심지어 컨텍스트가 로컬(local)에 있던, 리모트(remote)있던지 상관없이 어플리케이션이 이용할 수 있는 방법을 제공합니다.
• Context Toolkit 은 크게 다음의 세 가지로 이루어져 있습니다.
 Widget
컨텍스트를 사용하는 어플리케이션이 그 하단의 세부적인 내용을 알 필요가 없도록 단일화된 인터페이스로써 컨텍스트를 이용할 수 있도록 하기 위한 개체이다. 보통 하나의 컨텍스트를 래핑(Wrapping) 하고 있습니다.
 Aggregator (Context Server)
기본적인 widget 들과 응용 프로그램 사이의 통로(gateway) 역할을 함으로써 어플리케이션이 두 개 이상의 여러 widget의 정보를 통합(integrate) 할 수 있도록 합니다..
 Interpreter
하위 개념의 컨텍스트 정보들을 보다 상위 개념의 정보로 해석해 주는 개체입니다. 예를 들어 사용자 아이디, 위치, 소리의 크기 등의 정보들을 통해 현재 방안에서 회의가 이루어지고 있음을 유추해 낼 수 있습니다. 이러한 일은 Interpreter를 통해 이루어집니다.

image:semantic_technology_02_13_3.jpg

4.3 SOCAM
응용 소프트웨어 개발자들이 context aware 서비스 시스템을 보다 효과적으로 개발 할 수 있는 기반 기술을 제공하고 있습니다. OWL 기반의 온톨로지를 사용하여 의미기반 context 표현, 다양한 형태의 context에 대한 추론, 지식의 공유, context의 분류와 상호 의존성과 관련된 것을 해소하고자 하는 것이 SOCAM의 개발목적입니다.
• 다음은 SOCAM에서 사용된 온톨로지는 CONON(Context ontology Model) 입니다.

image:semantic_technology_02_13_4.jpg
• SOCAM은 Service-Oriented Context-Aware Middleware이고, OSGi에 기반하고 있다.

image:semantic_technology_02_13_5.jpg
• SOCAM의 구성요소는 Context providers, Context Interpreter, Context database, Context aware services, Service-locating service(SLS)

4.3.1 System infrastructure

그림:Semantic_technology_02_13_6.jpg














4.3.2 SOCAM m/w components are built on top of the OSGi framework
• Each component -> independent bundle: SLS bundle, context interpreter bundle, and context provider bundle
image:semantic_technology_02_13_7.jpg

4.3.3 Smart home prototype
image:semantic_technology_02_13_8.jpg

4.4 GAIA
Illinois Urbaba-Champaign 대학에서 연구된 GAIA는 물리적 공간과, 공간 내에 있는 장치들을 programming 가능한 전자 공간으로 변환하는 기능을 수행합니다. Pervasive computing 환경에서의 여러 문제를 해결하기 위해 온톨로지가 어떻게 효과적으로 적용 가능한지를 보여주고 있습니다.
• Configuration Management
• Semantic Discovery and Matchmaking
• Improved Human Interfaces
• Improved Inter-operability between entities
• Context-Sensitive Behavior 등

4.4.1 Architecture
• Each device in the cluster contains the Component Management Core and Service Deployment Framework layers of Mobile Gaia
• Service interaction layer
Inter-personal space Communication
• Cluster management Service
Discovers devices in User’s vicinity.
• Negotiates with the devices to join the cluster and manages the composition of the cluster

image:semantic_technology_02_13_9.jpg

4.5 Semantic Space
Explicit Representation, Context Querying, Context Reasoning의 세 가지 주요한 이슈들을 만족함으로써 어플리케이션이 이동하는 사용자의 급변하는 상황에 적절히 대응할 수 있도록 하는 Context Infrastructure입니다.
4.5.1 The Semantic Space context infrastructure

image:semantic_technology_02_13_10.jpg

4.5.2 Context Querying & Context Reasoning
• Context wrappers
- Obtain raw context information and transform them into context markups
- Self-Configuring components: Implemented as UPnP (Universal Plug and Play)
• Context aggregator
- Discovers context wrappers and gathers context markups from them
• (CKB) Context knowledge base
- Provide persistent context knowledge storage
- Stores the extended context ontology for particular space
- Links the context ontology and markups and provides interfaces for the context query engine and context reasoner

5. 해외 연구 및 응용 현황
5.1 Scarlet-Context-Aware Infrastructure (2003)
일리노이 기술연구소에서 개발한 Scarlet은 어플리케이션에 상황정보를 제공하는 방법을 중점으로 연구하였습니다.

5.2 Gaia (University of Illinois, 2004, 미국)
Gaia는 상황인식 서비스 구조로 어플리케이션이 다양한 상황정보를 얻고 추론 할 수 있게 해줍니다.

5.3 Context-Tookit (Georgia Institute of Technology, 2002)
센서에서 정보를 받아 상황정보로 만드는 상황 위젯(Context-Widget)

5.4 E-SENSE (IST/EU, 2006-1007)
e-SENSE는 3G 모바일 이후의 차세대 무선통신 모델인 무선 센서 네트워크를 위한 상황인식을 제공합니다.

5.5 Cyberguide (Georgia Institute of Technology, 2004)

Cyberguide는 관광객의 위치와 시간을 상황정보로 이용합니다.

5.6 Conference Assistant (Georgia Institute of Tech, 2004)
Conference Assistant는 Georgia 기술 연구소에서 개발한 것으로 회의 참석자를 돕기 위해 다양한 상황정보를 이용합니다.
- 회의 일정, 사용자의 위치, 사용자의 관심 분야 등을 조사하고 사용자가 발표장에 들어가면 자동으로 발표자, 발표 주제 및 다른 관련 정보를 보여줌.
- 또한 나중의 검색을 위해 주변의 이용 가능한 오디오/비디오 장치가 자동으로 현재의 슬라이드, 의견, 질문을 기록

5.7 People and Object Pager (Kent, 영국)

People and Object Pager는 Kent대학에서 개발한 것으로 상황정보로 사용자의 위치, 근처의 사람과 사물을 이용합니다.
- Pager는 방문객으로부터 가장 가까이에 위치한 사람에게 메시지를 라우팅함으로써 페이징 장치는 갖고 있지 않지만 액티브 배지를 가진 방문객에게 메시지를 보냄

5.8 Adaptive GSM phone and PDA (Starlab)
Adaptive GSM phone and PDA는 Starlab의 TEA에서 개발한 것으로 PAD 시나리오에서 노트패드는 사용자의 행동에 맞게 글자 크기 조절

6. 관련 프로젝트
6.1 유비쿼터스 환경지원 지식서비스 미들웨어 기술 개발
6.2 유비쿼터스 지향 지능형 개인용 미디어 관리 기술 개발
6.3 USN 시맨틱 웹 기반, 시민 참여형 미래 u-Seoul 서비스 모델 설계 및 기술 개발


[작성 : 솔트룩스 연구본부 전은정]