유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 광주과학기술원오유수 신춘성 정우진 우운택 * 1. 서론 1) 유비쿼터스컴퓨팅은기술중심의발전에서사용자중심의발전으로패러다임의변화를가져온다. 특히, 스마트홈은기술이가족구성원들간의활발한대화를위하여지원되는좋은예이다. 스마트홈에서의맥락인식서비스는수년동안유비쿼터스컴퓨팅분야의핵심연구주제로다루어지고있다. 그중에서다양한센서들로부터얻어진서로다른맥락정보에서동작하는많은서비스들이관련연구분야에의해서집중적으로개발되고있다 [10]. 스마트홈에서거주자들은유비쿼터스컴퓨팅기술에의해서사용자중심의조화로운서비스를제공받을수있고, 구성원간원활한의사소통을이루는데도움을받을수있다. 이와같은스마트홈에서의유비쿼터스컴퓨팅기술은가족간의유대감을증진시킬수있다. 스마트홈에서조화로운서비스를거주자에게제공하기위해서는거주자의관심을인식하는센싱기술과다양한센서로부터거주자의활동을모니터링하는기술을고려해야한다. 또한, 다수의거주자들이서비스를이용하는동안에발생할수있는문제점들도고려하는것이필요하다. 스마트홈서비스에대한많은연구활동들이이루어지고있다. EasyLiving(MS Research, since 1998) [1], AwareHome(GATECH, since 1999)[2], Adaptive House(Colorado Univ., since 1999)[3], House_n Project (MIT, since 2000)[4] 가스마트홈연구동향중의일례이다. 그러나기존연구활동들은다수거주자들의관심이나의도를동시에파악하여조화로운홈응용서비스를보여주지못하고있다. 즉, 다수거주자들에게맥락인식협업서비스를제공하기위한적절한맥락인식모형에대한제시가부족하다. 맥락인식서비스는유비쿼터스컴퓨팅분야에서중 * 종신회원 요한연구주제로다루어지고있다 [11]. 그리고맥락인식시스템을지원하는구조및미들웨어개발은맥락인식서비스연구와함께진행되고있다. 특히, Context-Toolkit[12], TEA context acquisition architecture[13], SOCAM[19], JCAF middleware [14], 그리고 CAMidO[20] 가그것이다. 현재관련연구분야에서는다양한센서를이용하고서로다른맥락정보를활용하는많은시스템이개발되고있다. 그러나일반적인맥락인식시스템개발과관련된이슈들은여전히풀어야할숙제이다. 특히, 다수사용자들의선호도, 관심이나의도를파악하고서비스이용충돌을해결하는이슈는일반적인해결책을제시하기위해서맥락인식응용모형의구조를설계함으로써논의되어야한다. 그러므로, 맥락인식응용모형의구조를설계할때는다음과같은사항들이고려되어야한다. - 다양한센서로부터입력되는맥락정보추출 - 정형화된맥락정보의표현 - 다양한맥락정보통합및추론방법 - 추론된맥락정보들간의충돌문제관리다양한센서를이용하여맥락정보와 activity 를획득하는연구는맥락인식컴퓨팅에서보고되고있다 [15,16]. 이와같은연구는맥락정보를획득하는서로다른보조시스템을위한적합한인터페이스를제공할필요가있다. 관련연구분야에서맥락정보를표현하기위한많은노력이있었으며, 그중에서온톨로지는맥락정보를표현하는널리알려진기법이다. 그러나정형화된맥락정보의구조나형식의정의는인공지능분야에서도여전히문제점으로남아있다. 강건한맥락인식시스템은사용될센서와어플리케이션을충분히지원하는맥락모형이있어야한다. 즉, 새로운센서나어플리케이션이주어진환경에추가되어도맥락인식시스템이그변화를수용할수있는정형화된맥락모형에대한설계가이루어져야한다. 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 25
맥락정보통합및추론은다양한소스및도메인에대한맥락정보의통합을의미한다. 맥락정보통합및추론은입력이센서값이아니라사전에그센서에서계산된맥락정보이기때문에고수준맥락인식으로간주될수있다. 맥락정보통합, 추론및해석에서해결되어야할문제는시스템개발자들이시스템의동작결과에대해서이해해야하는부분에있다. 그래서시스템개발자들이맥락인식시스템을쉽게개발하고관리하기위해서는정형화된맥락인식응용모형이필요하다. 따라서, 본논문에서는스마트홈환경테스트베드인유비홈 (ubihome) 에서조화로운서비스개발을위한정형화된맥락인식응용모형 (ubi-ucam: a Unified Conetxt-aware Application Model for ubiquitous computing environment) 을소개한다. 유비쿼터스컴퓨팅환경에서의정형화된맥락인식응용모형 (ubi-ucam) 은센싱정보를맥락정보로변환해주는유비센서 (ubisensor) 와입력된맥락정보들을통합, 추론, 해석및관리하는유비서비스 (ubiservice) 모듈로나뉜다. ubi-ucam 은센서로부터맥락정보추출, 다양한맥락정보통합및추론, 그리고추론된맥락정보간의충돌관리기법에대하여기술한다. ubi-ucam 은다음과같은특징을가진다. 첫째, ubi-ucam 은센서로부터맥락정보를추출하기위하여위치인식유비센서를이용하여스마트홈거주자들의위치및방위정보가포함된 activity 에대한맥락정보를추출한다. 둘째, ubi-ucam 은다양한종류의센서로부터다수의맥락정보입력을동시에통합하여각거주자의 activity 에대한의도를추론한다. 마지막으로, ubi-ucam 은서비스간에발생가능한충돌상황을감지하여거주자들에게적합한서비스또는콘텐츠를추천함으로써충돌문제를해결한다. ubi-ucam 은스마트홈에서다수의거주자들을위한맥락인식협업미디어서비스인 ubitv 에적용하여평가될수있다. ubitv 는이종센서들로부터획득된맥락정보를통합하고관리함으로써거주자들에게사용자중심의개인화된서비스들을제공한다. ubitv 는 TV, DVD, 음악등과같은다양한서비스들과날씨정보, 주식정보등과같은정보를거주자들에게제공한다. 또한, ubitv 는다양한홈서비스들을이용하여가족구성원들간의대화를유도함으로써구성원들간의유대감을증진시키는기술의가능성을보여준다. 그리므로, ubitv 는미디어서비스들사이에서맥락정보기반협업을적용함으로써가족 ( 사람 ) 중심의집으로환경을풍요롭게하는데도움을준다. 본논문은다음과같이구성된다 : 2장에서는맥락인식모형에대한관련연구에대하여설명한다. 3장에서는스마트홈환경인유비홈테스트베드에대하여소개한다. 4장은정형화된맥락인식응용모형에대하여자세히설명한다. 5장은맥락인식협업미디어서비스의구현에대하여기술한다. 마지막으로 6장에서결론을맺는다. 2. 관련연구맥락인식서비스는유비쿼터스컴퓨팅분야에서중요한연구주제이며, 이를지원하는구조및미들웨어에대한연구로는 Context-Toolkit[12], TEA context acquisition architecture[13], SOCAM[19], JCAF middleware[14], 그리고 CAMidO[20] 등이있다. 본논문에서는이들중최근연구동향에대하여기술한다. 2.1 SOCAM 2.1.1 구조 SOCAM(a Service-Oriented Context-Aware Middleware) 은온톨로지기반의맥락모델을사용하고 OSGi(The Open Service Gateway Initiative) 위에서구동된다. SOCAM 의구조는독립적인서비스들로구성이된다. 각서비스는 Context Discovery, Acquisition, Interpretation 의기능을수행한다. SOCAM 은다음과같이구성되어있다. 맥락해석기는맥락정보를처리할수있도록논리적추론기능 (Logic reasoning service) 을제공한다. 낮은수준의맥락을높은수준의맥락으로해석해서제공한다. Context reasoner와 context knowledge base로구성이되며, 맥락추론, 맥락충돌해결, 지식베이스의일관성을관리한다. 맥락데이터베이스는맥락온톨로지와특정서브도메인의이전맥락을저장하고있다. 각도메인당하나의논리적맥락데이터베이스를지니고있다. 맥락인식응용은다른레벨의맥락을사용하고현재의맥락에맞게적응한다. 응용개발자는규칙 (rule) 을미리정의하고파일에저장하여 context reasoner 를통해불러올수있고, 규칙 (rule) 파일을실행중에수정할수있다. Service-locating service 는 context provider와 context interpreter 가자신의존재를알릴수있게하고, 다른사용자와응용프로그램이찾을수있도록한다. SOCAM 구성요소는독립적인구성요소들로이종네트워크에분산되어질수있고, Java RMI 를통한상호작용을할수있다. 그림 1은 SOCAM 의구조이다. 26 2006. 10. 정보과학회지제 24 권제 10 호
기본적으로해결할수없는보안문제를여전히문제점으로지니고있다. 2.2 JCAF 그림 1 SOCAM 의구조 2.1.2 장 / 단점공통적인맥락모형을사용함으로서맥락추론과지식공유을쉽게하고어플리케이션프로토타입개발을빠르게할수있다. 또한 SOCAM 은 OSGI 기반으로개발되어서 OSGI 의장점을그대로가진다. Java 를기반으로하기때문에플랫폼독립적이며어플리케이션에게필요한 installing, activating, deactivating, updating, and removing services 등의기능을제공하기때문에서비스지향적어플리케이션에효과적이다. SOCAM 은다양한시스템보안레벨을제공한다. 또한, SOCAM 은 OWL 사용으로다양한형식과수준의맥락정보의접근을제한함으로써비스개발을쉽게한다. 즉, 개발자는접근가능한맥락정보만을고려해서시스템을개발할수있다. 그러나, SOCAM 은 Context interpreter와 Context providers 의역할구분이모호하며명확한모듈의정의가부족하다. SOCAM 은온톨로지추론을위해서 OWL 에의존하기때문에자체적인학습모듈을가지지못한다. 또한, OSGi 에기반한 SOCAM 은 OSGi 가 2.2.1 구조 JCAF(Java Context Awareness Framework) 는맥락인식애플리케이션개발을지원하는프레임워크이다. JCAF 는 Context Client, Context Service, Context Sensor and Actuator 의 3단레이어로구성되어있다. Context Client Layer 는 entitiy 와맥락에접근하는맥락인식어플리케이션이다. Context Client 에서맥락정보를얻는방법으로 request-response 방식과 entity listener 를이용한 subscribing 방식을이용한다. Context Service Layer 의 entity 는맥락정보의변화에반응하게되며, subscriber 를관리하며맥락정보의이벤트변화를 client 레이어에통지하는역할을하게된다. Context service layer 의 Transformer Repository 는일반적인자원들을유지하고있으며적절한형태로변형시켜요청에응답할수있게한다. Context Sensor and Actuator 의 Monitor 는맥락정보를센서를통해얻어오는역할을하며, actuator 는하나이상의 actuator 와함께맥락정보에변화를주거나영향을미치는역할을수행한다. Context Service layer 에전달하는방식으로는 asynchronous/synchronous 모드의두가지가존재하는데, 첫번째방식의경우꾸준히맥락정보를전송하는반면, 두번째방식의경우는 Context Service layer 에서요청이오는경우에만맥락정보를전달한다. 그림 2 는 JCAF 의구조이다. 그림 2 JCAF 의구조 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 27
2.2.2 장 / 단점 JCAF 는일반적인목적, 이벤트기반그리고분산서비스지향적인자바프레임워크이다. JCAF 의주요디자인고려사항은다음과같다. 첫째, 맥락정보는환경에산재되어있으며, 일부는원격지에저장된다. 둘째, 각맥락서비스는다른곳으로부터서비스를요청할수있다. 마지막으로맥락정보는사용자행동의변화를포함한환경변화를나타낸다. JCAF 는환경모니터링센서를다루는맥락모니터와변화에반응할수있는 actuator 를다루는맥락 actuator 를제안하였다. JCAF 의해석에있어서, 맥락은맥락아이템을담는콘테이너로고려하고있으며, 맥락의개체는맥락아이템들중하나이다. 맥락컨테이너안의각맥락아이템은다른맥락아이템들과관련이있다. 그러나 JCAF 에대한평가가제안된프레임워크를몇가지프로젝트에적용해보고그결과를기술함으로써그효율성을입증하기가어렵다. 또한, 실제프로젝트에참여한프로그래머들로부터인터뷰결과를기술함으로써일반성을찾기가어렵다. JCAF 의장점들은대부분 Java 언어가갖고있는특징들이어서 Java 언어가갖는단점역시지니고있다. 특히, 동기화부분과맥락정보모델링에있어서자바언어가갖는단점을지적하고있다. 2.3 CAMidO 2.3.1 구조 CAMidO(a Context-Aware Middleware based on an Ontology meta-model) 미들웨어는맥락인 식기능이추가된컴포넌트기반미들웨어의확장이다. 어플리케이션개발자들은맥락수집을위한센서들을다루는방법, 상위레벨의맥락정보를추론하기위한맥락해석등에대한코드를작성해야한다. CAMidO 는센서와의통신그리고맥락정보의수집, 관련된맥락감지를위한해석과분석등이가능하다. 또한, CAMidO 는온톨로지메타모델을포함하고있어어플리케이션개발자들에의한코드작성을쉽게한다. 그림 3은 CAMidO 의구조이다. 2.3.2 장 / 단점 CAMidO 는온톨로지메타모델을사용하여맥락정보를기술함으로어플리케이션개발자 (Application Designer) 의 context-aware 응용어플리케이션제작을가능케한다. CAMidO 는이렇게기술된메타정보를토대로맥락정보를수집하고어플리케이션에적합한형태로동작하게함으로써, 개발자는세부적인부분에대한프로그래밍을하지않아도된다는장점이있다. 온톨로지메타모델을사용하여새로운센서에대한맥락정보를추가하고, 적응 (adaptation) 규칙 (rule) 과해석 (interpretation) 정책 (policy) 도추가할수있다. 이때에는 OWL 언어를사용하여메타정보를작성하게되며크게세가지의온톨로지로나뉜다. 첫번째온톨로지는미들웨어수준의온톨로지로써, CAMidO 미들웨어위에서동작하는어플리케이션에서사용한다. 두번째는맥락정보레벨의온톨로지로, 개발자는센서를통해서얻을수있는직접적인데이터와추론할수있는고수준의맥락인간접적인데이터와그방법을지정해야한다. 마지막으로어플리케이션수준의온톨로지가있다. 이어플리케이션고유의정보는 CAMidO 컴파일러를통해사용되어추론규칙 (rule) 파일과제어소스코드를생성한다. 그러나, CAMidO 를사용하면메타정보를작성함으로직접적인프로그래밍은줄어들고, 소스코드가생성된다는장점이있지만, 메타정보를작성할때에사용되는 OWL 이라는언어에대한지식이필요하고, 적응 (adaptation) 규칙 (rule) 과해석 (interpretation) 정책 (policy) 작성에도개발자가상당부분관여해야한다는단점이있다. 2.4 관련연구와비교 그림 3 CAMidO 의구조 ubi-ucam 과관련된연구들과의비교는구조적특징및장점 / 단점에대하여분석함으로써표현될수있다. 표 1에서는 ubi-ucam 을관련연구들과비교한결과가정리되어있다. 28 2006. 10. 정보과학회지제 24 권제 10 호
표 1 ubi-ucam 과관련연구들과의비교 SOCAM JCAF CAMidO ubi-ucam 구조적특징 장점 단점 서비스지향적응용개발에효율적 다양한맥락정보추론 Java2 Security 모델채택 독립적인서비스구조 온톨로지 (OWL) 기반맥락모델링 목적, 이벤트기반구조 분산서비스지향적인 Java framework 온톨로지메타모델 콤포넌트기반구조 적응규칙과해석정책반영 5W1H 의정형화된맥락표현 센서와서비스의독립적인구조 Java Security API 를이용한보안 실시간변화에적응 추론규칙파일과제어소스코드생성을위한컴파일러제공 실시간변화에적응 사용자중심의정형화된맥락정보표현및관리 다양한맥락정보추론및학습 다양한센서및서비스응용개발에효율적 OWL 에의존하여개발이어려움 학습과정부족 분산시스템의문제점 ( 데이타동기화 ) 네트웍상의맥락서비스관계정의미흡 구조적흐름의복잡성 학습과정부족 맥락정보간의관계성정의미흡 Security 기능구현안됨 3. 유비홈 (ubihome) 테스트베드 유비홈은유비쿼터스컴퓨팅이가능하게하는기술들이홈환경에적용된테스트베드이다 [5]. 그림 4와같이많은종류의퍼베이시브 (pervasive) 센서들과맥락인식서비스들이유비홈에내재되어있다. 이와같이내재된센서들과서비스들은다수의거주자들을위한통합스마트홈환경의기반을이룬다. 유비홈에서의맥락정보는 Schilit 이내린정의와함께시간에대한맥락정보 ( 맥락히스토리 ) 를추가함으로써정의된다. 맥락정보는간략히누가 (Who), 언제 (When), 어디서 (Where), 무엇을 (What), 어떻게 (How), 왜 (Why) 의육하원칙 (5W1H) 에의하여표현된다 [5,6]. 유비홈에서의맥락모델링은유비쿼터스컴퓨팅환경에서의정형화된맥락인식응용모형인 ubi-ucam 에기반한다 [7]. 이모형은거주자의상태, 행동, 및주변환경을인식하기위해서사용된다. 유비홈에서의퍼베이시브센서들은거주자의행동및주변환경을감지한다. 그림 1에서보는것과같이, Couch sensor, IR sensor, PDA, ubitrack, RF tag 과같은다양한종류의센서들이유비홈에배치되어있다 [5,8]. 각센서는센싱, 고유프로세싱, 네트워킹능력을가진스마트센서로써독립적으로동작한다. 유비홈에서의맥락인식서비스들은다수의거주자들을위한사용자중심의서비스로제공된다. 그와같은서비스들에는 c-mp(context-based Media Player), c-mail checker(context-based email checker), TMCS(Tangible Media Control System), 그리고 cpost-it(context-based Post-it) 등이있다 [5,8]. 특히, ubitv 는 ubi-ucam 에기반하여거주자들을화목하게하는사용자중심의미디어서비스를제공한다. 그림 4 다양한센서와서비스가내재된유비홈테스트베드 4. 정형화된맥락인식응용모형 (ubi-ucam) 4.1 맥락정보표현맥락정보의표현은맥락인식시스템설계시에필요한요소중의하나이다. ubi-ucam 에서는맥락인식시스템설계에육하원칙 (5W1H) 구조에의한표현방법을이용한다. 5W1H 표현법은맥락정보가누가 (Who), 언제 (When), 어디서 (Where), 무엇을 (What), 어떻게 (How), 왜 (Why) 의육하원칙으로표현되는구조화된형식이다. 5W1H의표현법은정형화된맥락인식응용모형에적합한맥락정보를사용자중심의관점으로제공한다. 이표현법은육하원칙을이용하여수집된정보를구조화하므로센서에의하여검출될수있는사용자의상황을정확하게표현할수있다. 또한, 이맥락표현은각각의서비스에따른맥락정보의제공및관리를쉽게한다. 각 5W1H 맥락정보는계층적으로구조화되어있다. 누가 (Who) 의맥 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 29
락은거주자의신원, 특징및관계성에대하여기술한다. 언제 (When) 의맥락은센서또는서비스에의해서생성되는시간정보를나타낸다. 어디서 (Where) 의맥락은거주자의실내위치와실외위치에대하여기술한다. 무엇을 (What) 의맥락은거주자에의해서사용되는센서혹은서비스의정보이다. 어떻게 (How) 의맥락은거주자의몸상태, 제스처, 또는제어명령등에대한내용을기술한다. 마지막으로 왜 (Why) 의맥락은수집되는정확한데이터로부터추론되는정보이며, 거주자의의도및감정에대해서기술한다 [6]. 최종맥락 (Final Context: FC) 은맥락관리기에서생성되며, 사용자의의도가반영되고서비스충돌문제가해결되어최종적으로응용서비스가실행되는상태를표현하는맥락정보이다. 4.2 ubi-ucam 구조 정형화된맥락인식응용모형인 ubi-ucam 은그림 5와같은구조를갖는다 [17]. ubi-ucam 은유비센서 (ubisensor) 와유비서비스 (ubiservice) 로구성된다. 유비센서는 physical sensor, feature extraction module, preliminary context generator, self configuration manager 로구성되며유비서비스는 Self Configuration Manager, Context Integrator, Context Manager, Interpreter, Service Provider 로구성된다. 각모듈간의관계및맥락흐름은이전연구에정의되어있다 [17]. 유비센서는사용자와그주변환경에대한변화를인식하여초벌맥락정보 (Preliminary Context) 를형성하는역할을한다. 그리고, 유비서비스는수집된맥락정보들을인식하여사용자의의도에따른응용서비스를제공하는역할을한다. ubi-ucam 에서사용되는각맥락정보에대한정의는다음과같다. 초벌맥락 (Preliminary Context: PC) 는유비센서에의해서생성되는특징정보및센서상세를표현한다. 통합맥락 (Integrated Context: IC) 은맥락통합기에서생성되는완전한 5W1H 의맥락정보를나타낸다. 사용자조건맥락 (User Conditional Context: UCC or UCC') 은모바일장치에서사용자가정의한서비스실행에대한조건정보를표현하고, 해석기 (Interpreter) 에서해석가능한형태로변환가능한맥락정보이다. 서비스조건맥락 (Service Conditional Context: SCC) 은서비스제공기 (Service Provider) 에개발자가정의한서비스실행및기능에대한맥락정보를표현한다. 그림 5 ubi-ucam 의구조 4.3 맥락정보센싱센서로부터맥락정보를추출하기위하여위치인식유비센서를이용하여스마트홈거주자들의위치및방위정보가포함된 activity 에대한맥락정보를추출한다. 위치인식유비센서로는개발된 ubitrack 을이용한다. ubitrack 은 IR 기반의근접방법으로사용자의위치를추적하며, 적외선신호생성시에시분할방식으로센싱영역을중첩시켜신호의충돌없이사용자의위치를추적한다 [9]. 또한 ubitrack 은사용자의프라이버시를보호하기위해위치추적을위한시스템이사용자중심으로되어있어서모든정보는추가적인컴퓨터없이사용자의휴대용디바이스에서연산되며, 사용자의프라이버시레벨을두단계로나누어서관리한다. 게다가, ubitrack 은두개의적외선수신소자를활용하여사용자의위치정보뿐만아니라방위, 속도및여러상태정보를인식한다. 그림 6은 ubitrack 의활용모듈에서의정보흐름을나타낸다. 활용모듈은위치정보를활용하여사용자의방위및특정한 ID 정보를생성하여사용자의위치정보인 어디서 (Where)' 정보를구성한다. 또한, 활용모듈은위치정보의변화를활용하여사용자의이동속도를계산하며, 속도정보를활용하여사용자의 standing, walking, moving fast 상태를구분한다. 방위정보를활용하여사용자가어느방향으로움직이고있는지를인식하며, 추가적인 ID 정보를활용하여 30 2006. 10. 정보과학회지제 24 권제 10 호
사용자의특별한행동을인식한다. 제안된논문에서는이를활용하여사용자가누워있는상태를인식한다. 이러한사용자의행동에관련된정보는 어떻게 (How) 정보를구성한다. ubitrack 활용모듈에서생성된모든정보는정형화된맥락인식응용모형인 ubi-ucam 의맥락통합기에전달되어사용자의복잡한행동이나의도정보를추론하여 왜 (Why) 정보를구성하는데활용이된다. User Who & When Orientation Location Additional ID Where - Turning back - Turning right - Turning left -Walking - Standing - Moving fast -Velocity - Lying down How 그림 6 ubitrack 에서의데이터흐름 4.4 맥락정보통합및추론 Activity / Attention Why 다양한종류의센서로부터다수의맥락정보입력을동시에통합하여각거주자의 activity 에대한의도를추론한다. 각거주자의의도추론은 ubi-ucam 의맥락통합기에서이루어진다. 맥락정보융합및추론은맥락인식시스템의새로운구조인맥락통합기에의해서제공되는핵심기술요소이다. 그림 7은맥락통합기의구조를보여준다. 맥락통합기는 Context Object Analyzer, Context Repository, Preliminary Context Fusion module, Context Inference Engine, 그리고 Integrated Context Generator 로구성된다. Context Object Analyzer 는활성영역에위치한다양한종류의센서들로부터맥락정보를수집하고 누가 (Who) 의부분맥락중의사용자의신원정보에따라서수집된맥락정보들을분류한다. Context Repository 는통합된맥락정보들의히스토리를저장하고관리한다. Preliminary Context Fusion module 은입력된초벌맥락정보들을각특성에따라서 4W1H(Who, What, Where, When, and How) 의통합맥락으로구성한다. 통합맥락은적절한융합방법을적용하여생성된다. 초벌맥락 (Preliminary Context) 은특징정보나센서상세를나타낸다. 통합맥락 (Integrated Context) 은맥락통합기에의해서생성된사용자의도및감정정보를포함하여완전한 5W1H 맥락을형성한다. Context Inference Engine 은 Preliminary Context Fusion module 의결과를이용하여 왜 (Why) 의맥락을추론해낸다. 이추론엔진은시스템의행동을기술하는 facts 와 rules 로구성되는지식베이스을포함한다. Integrated Context Generator 는이미구성된 4W1H 의맥락정보와추론된 왜 (Why) 의맥락을통합하여 5W1H 의통합맥락을생성한다. 이 5W1H의통합맥락은거주자의신원, 위치, 행동, 패턴, 의도등과같은정보를포함한다. 맥락통합기는다양한종류의센서로부터획득된센서데이터를융합하고서로다른수준의정보를통합하도록설계되었다. 이것은의미적인맥락융합을하는시스템에서결과를만든다. 하위레벨의데이터의융합은센서내부의요소로고려된다. 맥락통합기는사용자중심의맥락정보로써거주자 ( 특히, Who 의맥락 ) 에따른분류와융합을하도록지원한다. 맥락통합기는맥락통합과정에서특히맥락의재사용을위한메카니즘으로구성되었다. 맥락의재사용은추론과정에서이전과정의추론된결과를다시사용하는연속과정의결과물로써시스템의효율성을높일수있다. 맥락의재사용의과정이진행될수록높은수준의맥락이추론될수있다. 또한, 맥락의재사용은 Context Repository 에서관리되는맥락히스토리에서저장된맥락정보를사용함으로써도이루어진다. 맥락통합기에기반한맥락인식시스템의일반화된행동과기능은규칙 (rule) 에의하여생성될수있다. 개발자나관리자에의한시스템의변화및재구성은규칙 (rule) 을추가, 삭제및수정함으로써가능하다. 이와같은규칙 (rule) 을간략화하기위해서일반적인텍스트에디터를이용하여쉽게재구성할수있다. 그러므로맥락통합기에서소스코드를바꾸지않고도전체시스템행동에대한변화가가능하다. 맥락통합기의 Context Inference Engine은 JESS (Java Expert System Shell) 를이용하여구현되었다. 구현된규칙 (rule) 은 LISP 언어의구문에기반한다. 다른선언적프로그래밍언어와비교하여이와같은구현은규칙 (rule) 의순서에상관없이재구성을쉽게한다. 맥락통합기는거주자의행동이나제스처를추론할수있다. 이때, 이전의맥락정보는중요한단서가된다. 그래서맥락히스토리는거주자의행동을평가하기위해서사용된다. 맥락통합기는 ubitrack 을통해서거주자의양어깨로부터위치좌표값과방위정보를얻을수있다 [9]. 이렇게얻어진위치좌표와방위정보는거주자의위치나자세를추론하는데이용된다. 맥락통합기는거주자의다음행동을예측하기위해서추론된거주자의위치나자세등을이용할수있다. 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 31
4.5 맥락정보관리 그림 7 맥락통합기의구조 ubi-ucam 은서비스간에발생가능한충돌상황을감지하여거주자들에게적합한서비스또는콘텐츠를추천함으로써충돌문제를해결한다. 조화로운미디어서비스를위한서비스충돌문제는맥락정보를관리함으로써해결할수있다. 특히, 다수사용자들간의조화로운미디어서비스이용을위한충돌관리기법은사용자의선호도및미디어서비스의프로파일등의맥락을활용하여다수사용자간의서비스충돌을관리한다. 이를위해충돌관리기법은동일사용자간의충돌관리인내부충돌관리, 다른미디어응용간의충돌관리인외부충돌관리, 그리고사용자의선택을중재하여최종선택을얻는서비스중재를수행한다. 그림 8은제안하는충돌관리기법의전체흐름을나타낸다. Implicit context Users Media Service Conflict Conflict Detection Detection Context Context Conflict Conflict Resolution Resolution Recommendation Users User s selection Preferences, Items Service Service Mediation Mediation 그림 8 충돌관리기법의흐름 Recommendation Service Provider 그림 8과같이내부충돌관리는동일한미디어를이용하는사용자의맥락정보를수집하고수집된맥락정보에서선호도차이를통해서비스충돌을감지한다. 그리고충돌이발생하는사용자들이타협할수있도록사용자들의선호도를활용하여미디어콘텐츠에대한추천목록을생성한다. 외부충돌관리는환경내에서다른사용자가미디어서비스를이용하면서발생한맥락정보를활용하여충돌을감지한다. 이후사용자들이논 의하여미디어서비스를선택할수있도록충돌미디어서비스목록을토대로미디어콘텐츠에대한추천목록을생성한다. 따라서내부충돌과외부충돌이수행되면사용자의추천정보가생성되고서비스중재단계로접어든다. 서비스중재단계에서는두개혹은한개의충돌목록을토대로사용자간의서비스중재를수행한다. 중재하는동안사용자의입력이주어지면사용자들이의견수렴을할때까지이들의선택을공유화면을통해이를시각화한다. 그리고최종선택이이루어지면사용자간의충돌이해결된것으로간주하고선택된미디어콘텐츠와함께사용자의맥락을생성하여미디어서비스제공기에전달한다. 그림 9는 3명의사용자들이미디어서비스를이용할때발생하는서비스충돌을제안된충돌해결기법에기반으로해결하는예를보여준다. Movie ubitv Father TV Conflict!! Mother Son 그림 9 충돌해결의예 Music Recommendation!! 그림 9와같이충돌기법에따라아버지와아들의선호도에따라이들의추천정보가 TV화면과이들의모바일장치에제공된다. TV화면에는이들의통합된선호도에따라화면에는 애니매이션, 뉴스, 시트콤 이추천된다. 그리고아버지의모바일장치에는아버지의선호도에따라 뉴스, 시트콤, 애니매이션, 그리고아들의모바일장치에는 애니매이션, 시트콤, 뉴스 가추천된다. 이들이추천목록중특정아이템을선택하면화면좌측의공간을통해표시가된다. 그리고음악을이용하고자하는어머니가나타나면음악을함께추천한다. 따라서추천목록은다시정렬되어 3 명의사용자의선호도가높은순으로미디어서비스를추천한다. 그러면사용자들은자신의선호도에따라추천목록을받게된다. 그리고이들은서로의동의하에함께이용가능한미디어서비스를선택한다. 따라서미디어서비스를공유하는사용자들은서로이용하고자하는서비스의선호도가다름에도추천과중재를통해공통으로관심을가질수있는미디어서비스를결정할수있도록한다. 32 2006. 10. 정보과학회지제 24 권제 10 호
5. 맥락인식협업미디어서비스구현 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형을평가하기위하여맥락인식협업미디어서비스를구현하였다. ubitv 는유비홈에서의맥락인식협업미디어서비스중하나이다. 제안된 ubitv 는다양한스마트홈서비스들을이용하여화목한가족을이루도록설계되었다. 가족간의유대감을높이기위해서 ubitv 는 30대부부와어린아들로이루어진가족구성원들사이의관계를이용하여거주자들의경험을얻도록기술적으로지원한다. 그리하여, ubitv 는적절한서비스나콘텐츠를그거주자들에게추천한다. ubitv 에서이용되는서비스-콘텐츠리스트는표 2에서보는것과같다. 그리고 ubitv 는유비홈에서거주자들의기대되는경험들을표현하는지침을보여준다. 표 2 ubitv 에서제공되는서비스 / 콘텐츠종류 서비스 Broadcasting DVD Music Web 콘텐츠 News, Education, Drama, Comedy, Animation SF, Horror, Melodrama, Comic, Animation Rock, Ballad, Dance, Classic, jazz Game, Whether, Stocks, shopping, taxes User B, User C가유비센서로부터맥락정보를추출하여같은시간에 TV를시청하기원하는고이해하고, 이와같은충돌을해결하여적합한콘텐츠를선택된사용자에게추천한다. 이것은선택의권리가선택된사용자에게주어진다는것을의미한다. 그러나실생활에서는사람들은서로서로대화하며의사결정을할수있다. ubitv 는거주자의의도에다라서지능적인서비스를제공할수있다. 그것은 ubitv 가그사용자의의도를예측할수있다는것이다. 실생활에서사람과사람간의커뮤니케이션에서그의도를파악해내기는매우어려운일이다. 그래서, ubitv 는거주자의명시적인의도를예측하기위해서거주자의 activity 를추론해내어의사결정을이루게한다. 또한, ubitv 는유비홈에서조화로운서비스를거주자에게제공하는것을가능하게한다. 그림 11에서보는것과같이, 다수의사용자가유비홈에서 ubitv 와협업하는다양한서비스를제공받을수있다. 그림 11 은윈도우디스플레이 (MRWindow) 와 ubitv 와의맥락정보교환을통한협업서비스상황을나타낸다. 그림 11 ubitv 와윈도우디스플레이 (MRWindow) 간의서비스협업을위한맥락흐름 그림 10 구현된 ubitv 의데이트흐름 ubitv 는충돌문제를해결하기위해서메뉴에서적합한서비스나콘텐츠를추천하는구조를가진다. 또한 ubitv 는제안된정형화된맥락인식응용모형을이용하여다수의거주자들에게개인화된서비스를각각제공한다. 그림 7은구현된 ubitv 의데이터흐름에대해서묘사한다. 그림 10에서, ubitv 는 User A, 정형화된맥락인식응용모형 (ubi-ucam) 의효율성을입증하기위해서는스마트홈환경에편재된다양한종류의센서들과서비스들을이용해야한다. 또한, 구조의효율성은실제로구현된맥락인식응용서비스에제안된모형을적용하여평가할수있다. 딸서, 다양한종류의센서들과서비스들이편재된유비홈환경에서맥락인식협업미디어서비스인 ubitv 에 ubi-ucam 을적용하였다. ubitv 는 TV 장치, PC, 그리고 ubitrack, ubicontroller, 소파센서, 입구센서, PDA 와같은유비홈에장착된센서들을이용하여구현되었다. ubitrack 은위치기반센서로써, 거주자의위치정 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 33
보를생성하고, 거주자주변의대상물의위치정보와의관계 ( 거리정보 ) 를파악하는데이용된다. ubicontroller 는 UPnP 서비스디스커버리를기반하는사용자제어인터페이스이다 [18]. 그림 12는 PDA 전화에구현된 ubicontroller 를보여준다. 소파센서는소파에내장된센서로써, 소파위에서의거주자의자세및행동을감지한다. 그림 13은유비홈에있는오브젝트의 x-y 좌표를나타낸다. 3명의사용자의유비홈에서이용하고자하는서비스와방법, 그리고위치및시간정보등을표현한다. 즉, 아빠는소파에앉아서뉴스를보기원하고, 이때엄마는서비스에대한특별한관심이없는경우이다. 그리고, 아들은윈도우디스플레이에관심이있고, 가족사진을보고싶어한다는내용을나타낸다. 여기서뉴스와가족사진에대한내용은아빠와아들의선호도가있는프로파일정보에서얻어진결과이다. 6. 결론 그림 12 PDA 전화기에구현된 ubicontroller 그림 13 유비홈에서의오브젝트좌표계그림 13의기본환경정보를이용하여우리는유비홈에 3명의사람이있다는것과각사용자에따른 3개의통합맥락정보가생성된다는것을기대할수있다. 유비홈에는 3명의거주자인아빠, 엄마, 그리고아들이있다고가정한다. ubi-ucam 위에구현된 ubitv 는 3명의거주자에대한행동및의도를파악할수있다. 예를들어, 그결과로 [Father TV WestOf- Couch 20050830171130 SitDown ToWatch(News)], [Mother Unconcern WestOfCouch 20050830171130 StandUp Normal], [Son WindowDisplay SouthOf- WindowDisplay 20050830171130 Selection ToSee (Family picture)] 과같은 5W1H 형태의통합맥락정보를얻을수있다. 이와같은 5W1H 통합맥락은 본논문에서는스마트홈환경테스트베드인유비홈 (ubihome) 에서조화로운서비스개발을위한정형화된맥락인식응용모형 (ubi-ucam: a Unified Conetxt-aware Application Model for ubiquitous computing environment) 을소개하였다. ubi-ucam 은센서로부터맥락정보추출, 다양한맥락정보통합및추론, 그리고추론된맥락정보간의충돌관리를지원한다. 그리고 ubi-ucam 은센서로부터맥락정보를추출하여스마트홈거주자들의의도를추론하고그에따른맥락인식서비스를제공한다. 또한, 스마트홈의수많은서비스들이조화롭게거주자에게제공될수있도록서비스간의충돌상황을감지하여적합한서비스및콘텐츠를추천한다. 본논문에서는 ubi-ucam 을스마트홈에서다수의거주자들을위한맥락인식협업미디어서비스인 ubitv 에적용하였다. ubitv 는이종센서들로부터획득된맥락정보를통합하고관리함으로써거주자들에게사용자중심의개인화된서비스들을제공한다. 맥락인식협업미디어서비스인 ubitv 는스마트홈에서다수의거주자들에게다양한맥락정보기반서비스를제공함으로써가족 ( 사람 ) 중심의집으로환경을풍요롭게하는기회를창출하였다. 즉, ubi-ucam 이적용된 ubitv 는다양한홈서비스들을이용하여가족구성원들간의대화를유도함으로써구성원들간의유대감을증진시키는기술의가능성을보여주였다. 추후연구로는일상생활에서발생되는충돌문제를해결하는상황에대한실험및평가와가족구성원에게서비스나콘텐츠를추천하는방법이적합한가에대한사용성평가가이루어져야한다. 참고문헌 [ 1 ] S.Shafer, B.Brumitt, and B.Meyers, The EasyLiving Intelligent Environment System, CHI Workshop on Research Directions in 34 2006. 10. 정보과학회지제 24 권제 10 호
Situated Computing, 2000. [ 2 ] Sensing the Subtleties of Everyday Life, the research magazine of Georgia Tech. (Research Horizons), 2000. [ 3 ] M.C.Mozer, An intelligent environment must be adaptive, IEEE Intelligent Systems and their Applications, 14(2), pp. 11-13, 1999. [ 4 ] House_n Research Group, http://architecture.mit.edu/house_n/, 2005. [ 5 ] S.Jang, C.Shin, Y.Oh, and W.Woo, Introduction of UbiHome Testbed, The first Korea/Japan Joint Workshop on Ubiquitous Computing & Networking Systems 2005 (ubicns2005), 2005. [ 6 ] S.Jang and W.Woo, 5W1H: Unified User-Centric Context, The 7th International Conference on Ubiquitous Computing(Ubi- Comp05), pp. 2005. [ 7 ] Y.Oh, C.Shin, S.Jang, and W.Woo, ubi-ucam 2.0: A Unified Context-aware Application Model for Ubiquitous Computing Environments, The first Korea/Japan Joint Workshop on Ubiquitous Computing & Networking Systems 2005(ubiCNS2005), 2005. [8] Y.Oh and W.Woo, A unified Application Service Model for ubihome by Exploiting Intelligent Context-Awareness, UCS2004, pp. 117-122, 2004. [ 9 ] W.Jung and W.Woo, Indoor orientation tracking using ubitrack, The first Korea/Japan Joint Workshop on Ubiquitous Computing & Networking Systems 2005(ubiCNS2005), 2005. [10] H. Wu. Sensor Data Fusion for Context-Aware Computing Using Dempster-Shafer Theory, PhD Thesis, Carnegie Mellon University, 2003. [11] B. Schilit, N. Adams, and R. Want, Context -Aware Computing Applications, Proc. Workshop Mobile Computer Systems and Applications, IEEE CS Press, Los Alamitos, Calif., 1994, pp. 85-90. [12] D. Salber, A.K. Dey and G.D. Abowd, The Context Toolkit: Aiding the Development of Context-Aware Applications, In the Workshop on Software Engineering for Wearable and Pervasive Computing, Jun. 2000. [13] A. Schmidt, K. A. Aidoo, A. Takaluoma, U. Tuomela, K. Van Laerhoven, and W. Van de Velde. Advanced interaction in context. In H.W. Gellersen, editor, Proc. of First International Symposium on Handheld and Ubiquitous Computing (HUC99), volume 1707 of LNCS, pages 89--101. Springer- Verlag, 1999. [14] Jakob E. Bardram. The Java Context Awareness Framework (JCAF) - A Service Infrastructure and Programming Framework for Context-Aware Applications. In Proceedings of the 3rd International Conference on Pervasive Computing (Pervasive 2005), Lecture Notes in Computer Science, Munich, Germany, May 2005. Springer Verlag. [15] L. Bao and S. S. Intille, Activity recognition from user-annotated acceleration data, in Proceedings of PERVASIVE 2004, vol. LNCS 3001, Springer-Verlag, 2004, pp. 1-17. [16] K. Van Laerhoven, A. Schmidt and H.-W. Gellersen. Multi-Sensor Context-Aware Clothing. In Proc. of the 6th Int. Symposium on Wearable Computers, ISWC 2002, Seattle, WA. ISBN: 0-7695-1816-8; IEEE Press, 2002, pp. 49-57. [17] Y.Oh, C.Shin, S.Jang and W.Woo, ubi- UCAM 2.0: A Unified Context-aware Application Model for Ubiquitous Computing Environments, The first Korea/Japan Joint Workshop on Ubiquitous Computing & Networking Systems (UbiCNS05), 2005. [18] Hyoseok Yoon and Woontack Woo, ubicontroller: Design and Implementation of Mobile Interactive User Interface, in Proceedings of ISUVR2006 International Symposium on Ubiquitous VR, CEUR Workshop Proceedings, Vol-191, pp 93-94, 2006. [19] Tao Gu, Hung Keng Pung, Da Qing Zhang, Toward an OSGi-Based Infrastructure for Context-Aware Applications, IEEE Pervasive 유비홈에서조화로운서비스개발을위한정형화된맥락인식응용모형 35
Computing, vol.03, no.4, pp.66-74, Oct-Dec, 2004. [20] Nabiha Belhanafi Behlouli, Chantal Taconet and Guy Bernard, An Architecture for supporting Development and Execution of Context-Aware Component applications In IEEE International Conference on Pervasive Services, ICPS 2006, Lyon, France, 26-29 June, 2006. 오유수 2002 경북대학교전자전기공학부 ( 학사 ) 2003 광주과학기술원정보통신공학과 ( 석사 ) 2003~ 현재광주과학기술원정보통신공학과박사과정관심분야 : Context-aware Architecture for Ubiquitous Computing, Context Fusion & Reasoning, HCI 등 E-mail : yoh@gist.ac.kr 신춘성 2004 숭실대학교컴퓨터학부 ( 학사 ) 2006 광주과학기술원정보통신공학과 ( 석사 ) 2006~ 현재광주과학기술원정보통신공학과박사과정관심분야 : Ubiquitous Computing, Context-awareness, Artificial Intelligence, HCI 등 E-mail : cshin@gist.ac.kr 정우진 2004 전북대학교전자공학과 ( 학사 ) 2005~ 현재광주과학기술원정보통신공학과석사과정. 관심분야 : Location awareness, Ubiquitous computing 등 E-mail : wjung@gist.ac.kr 우운택 1989 경북대학교전자공학과 ( 학사 ) 1991 포항공과대학교전기전자공학과 ( 석사 ) 1998 University of Southern California, Electrical Engineering-System( 박사 ) 1991~1992 삼성종합기술연구소연구원 1999~2001 ATR MIC Labs. 초빙연구원 2001~ 현재광주과학기술원정보통신공학과조교수관심분야 : 3D computer vision and its applications including attentive AR and mediated reality, HCI, affective sensing and context-aware for ubiquitous computing 등 E-mail : wwoo@gist.ac.kr 36 2006. 10. 정보과학회지제 24 권제 10 호