Home [유비쿼터스 컴퓨팅 개론] 10강 - 상황 인식 처리 기술
Post
Cancel

[유비쿼터스 컴퓨팅 개론] 10강 - 상황 인식 처리 기술

💡해당 게시글은 방송통신대학교 정광식 교수님의 '유비쿼터스 컴퓨팅 개론' 강의를 개인 공부 목적으로 메모하였습니다.



학습 개요


  • 상황 인식 컴퓨팅 기술은 여러 센서들로부터 얻은 상황 정보를 응용 서비스에 적합하게 처리하고, 사용자의 현재 상황에 가장 적합한 서비스를 찾아내어 이를 동적으로 재구성하여 사용자에게 제공함
  • 사용자에게 필요한 서비스를 주변에 편재 된 컴퓨터들이 제공해주기 위해서 사용자 및 환경에 대한 동적인 모델을 수용하고 센서를 통해 상황 정보를 인식할 수 있는 기술을 공부함
  • 환경 정보를 지능적으로 판단하고, 가공한 후에 적절한 서비스로 제공해주는 과정을 이해함
  • 상황을 정보로 모델링하는 상황 정보 표현 기술을 공부함



학습 목표


  • 상황 정보를 수집 기술을 이용하여 상황 인식 서비스를 제공하기 위해 필요한 요소 기술에 대하여 이해함
  • 상황 정보를 정의하고 이를 표현하는 다양한 방식에 대하여 배우고 익힘



강의록


상황 인식 컴퓨팅

개요

  • 상황 인식 컴퓨팅(Context-Aware Computing)
    • 실 세계에서 획득한 정보를 추상화하고 연계하여 상황 정보를 지식으로 만들고, 응용 분야에 적합한 지식 표현을 기반으로 사용자와 서비스를 연계하는 응용 기술임

    image.png

    image.png

상황 인식 컴퓨팅 정의

  • 상황 인식 컴퓨팅 기술
    • 사용자의 현재 위치, 시각, 주변에 있는 다른 사람이나 기기들, 사용자의 행동이나 이력 등과 같은 사용자의 현재 상황 정보파악하고 분석한 후, 사용자가 현 상황에서 필요로 하는 서비스를 검색하여 구동 시켜 주는 기술
  • 상황 정보는 센서 네트워크 내의 수많은 센서로부터 수집 된 자료들을 분석하여 파악할 수 있음

상황의 정의

  • 상황 또는 상황 정보
    • 상황을 인식하는 데 필요한 기본 정보
    • 사용자와 다른 사용자, 시스템 혹은 디바이스의 응용 프로그램의 상호 작용에 영향을 미치는 사람, 장소, 사물, 개체, 시간 등 주변 상황의 특징을 규정하는 정보
  • 상황
    • 실 세계에 존재하는 실체의 상태를 특징화하여 정의한 정보
  • 상황 정보의 대상이 되는 실체
    • 사람이나 사람 그룹, 물리적 사물이나 고려 대상인 시스템
  • 상황/실체의 정의는 개발 과정에서 응용 서비스 시나리오를 위한 상황 전개 작업을 쉽게 함
  • 상황의 정의
    • 만약 어느 정보가 상호 작용하는 참여자의 상황을 특징 지을 수 있다면, 그 정보는 바로 상황이 됨
    • 에이전트 관점에서는 감지기를 통하여 수집할 수 있는 모든 정보가 대상이 될 수 있음
    • 상황에는 사용자, 물리적 환경, 컴퓨팅 시스템 상황, 사용자 컴퓨터 상호 작용 이력 등의 정보 등이 포함될 수 있음
    • 슐리트(B.N.Schilit)의 정의
      • 컴퓨팅 상황
        • Computing Context
        • 네트워크 연결성/통신 비용/통신 대역폭/프린터/디스플레이 등 주변에 존재하는 자원
      • 사용자 상황
        • User Context
        • 사용자 프로필/위치/현재의 사회적 상황을 포함한 사용자 정보
      • 물리적 상황
        • 조명/소음 수준/교통 상황/온도 등
    • 그 외에 시간적 상황을 고려하기도 함
      • 시간적 상황
        • 시간/요일/월·일/계절 등

상황의 분류

  • 상황의 사례를 분류하는 방법
    • 퍼코프(Perkop)와 버네트(Burnett)에 의한 외부적(external)범위와 내부적(internal) 범위로 구분한 방식
    • 호퍼(Hofer)의 물리적(physical) · 논리적(logical) 상황으로 구분한 방식
  • 외부적 상황의 범위
    • 위치, 빛, 소리, 움직임, 촉감, 온도나 공기 압력 등 과 같이 흔히 하드웨어 센서로 측정 가능한 상황을 나타냄
  • 내부적 상황 정보
    • 사용자의 목표, 업무, 업무 상황, 비즈니스 처리, 사용자의 감정 상태와 같이 사용자에 의해 주어지거나 사용자의 상호 작용을 관찰함으로써 얻어지는 것들임

상황 인식 시스템

  • 상황 인식 시스템
    • 최근 상황 인식 컴퓨팅에서 사용자의 동작이나 작업과 관련 있는 적절한 정보 또는 서비스를 사용자에게 제공하는 과정에서 상황을 사용하는 시스템

상황 인식 시스템 구성 요소

  • 상황 인식 시스템은 클라이언트 기기, 상황 인식 시스템 아키텍처, 상황 인식 모델로 구성 됨
  • 클라이언트 기기
    • 각종 센서, 스마트폰 등의 유비쿼터스 단말기
    • 사용자에게 제공 되는 서비스 종류 및 사용 방식을 결정하는데 중요한 요소로 작용 함
  • 상황 인식 시스템 아키텍처
    • 직접적인 센서 활용 방식
    • 미들웨어 인프라 구조를 이용한 방식
    • 상황 서버를 기반으로 한 방식
  • 상황 인식 모델
    • 상황 데이터를 기계가 처리할 수 있는 형태로 정의하고 저장하기 위한 것임

상황 인식 컴퓨팅에서 사용될 수 있는 상황 정보

  • 상황 정보의 분류
    1. 사용자
    2. 물리적 환경
    3. 컴퓨팅 시스템
    4. 사용자 - 컴퓨터 상호 작용 이력
    5. 기타 미 분류 상황
  • 상황 인식 기술 전반에 대한 개념적인 시스템 구성

    image.png

    • 사용자
      • 신원(ID, 성명)
      • 신체(맥박, 혈압, 체온, 음성)
    • 물리적 환경
      • 공간(위치, 방향, 속도)
      • 시간(일자, 시각, 계절)
      • 환경(온도, 습도, 조도, 소음)
      • 활동(인적인, 행동, 일정)
    • 컴퓨팅 시스템
      • 가용 자원(배터리, 디스플레이, 인터넷, 시스템)
      • 가용 상황(자원, 장비, 시설)
      • 접근 상황(사용자, 허용 정보, 인접성)
    • 사용자-컴퓨터 상호 작용 이력
      • 이력(사용자, 서비스, 시간)
      • 장애(시간-사용자-서비스)
    • 기타 미분류 상황

상황 인식 기술의 응용

  • 상황 인식 응용이 지원할 수 있는 특징

    image.png

    1. 사용자에게 정보와 서비스 제공(presentation)
    2. 사용자를 위한 서비스의 자동 실행(execution)
    3. 이후 검색을 위한 상황 정보의 표시(tagging)
  • 응용 개발 과정에서 설계로부터 실제 구현을 위한 두 가지 접근 방법
    1. 설계자가 구조적인 서비스 또는 특징을 조합하여 응용을 구축하는 방법
    2. 설계자가 대상이 되는 응용을 좀 더 높은 차원에서 생각할 수 있도록 추상화 하는 방법
  • 상황 인식 기술의 실제 구현을 지원하는 상황 인식 응용 개발 도구 기술
    • 상황 정보의 획득과 접근
    • 상황 인식 응용에 독립적인 상황 인식 정보의 저장
    • 배포 및 실행
  • 상황 인식 기술의 실제 구현을 지원하는 기술 요소
    1. 상황 정보의 추상화를 위한 기술
    2. 상황 정보를 해석하는 기술
    3. 유사한 상황 정보를 수집하는 기술

상황 인식 서비스 요소 기술

개요

  • 초기의 상황 인식 서비스 연구
    • 다양한 상황 정보와 수집 기술을 조합하여 특정 플랫폼만을 위한 개별적인 프로토 타입 형태의 응용을 주로 연구함
    • 초기 상황 인식 시스템은 특정 플랫폼에만 연관되어 있어 확장을 위해서는 많은 사전 지식이 필요하였음
      • 공통 된 기능에 대한 모듈화가 되어 있지 않아 재사용이 어려움
      • 이러한 문제점을 인식하여 상황 인식 서비스 인프라와 관련 된 연구가 활발히 진행되었음
  • 상황 인식 응용 개발에 필요한 공통 기능을 응용 레벨에서 분리하여 미들웨어 형태로 개발자에게 제공하는 방안이 연구 됨
  • 상황 인식 서비스 인프라는 개발자에게는 응용과 관계 된 기능에만 집중할 수 있도록 하고, 사용자에게는 일반화 된 응용 서비스를 제공함
  • 상황 인식 서비스 인프라에 대한 요구 사항
    • 기능적 요구 사항
      • 상황 정보 수집, 저장 및 관리, 신청 및 배달, 분해 및 융합 등이 포함 됨
    • 기능 외적인 요구 사항
      • 확장성, 모듈성, 보안성, 이동성, 인터페이스 적절성, 결함 포용성, 서비스 품질, 플랫폼 간 호환성 등이 있음
  • 상황 인식 서비스 요소 기술
    • 상황 정보 수집 기술
    • 상황 정보 모델링 기술
    • 상황 정보 추론 기술
    • 상황 정보 관리 기술
    • 상황 정보 교환 기술

상황 정보 수집 기술

  • 상황 인식 컴퓨팅에서 가장 기본이 되는 상황 정보를 얻기 위해서는 상황 정보 수집(sensing) 기술이 필요함
  • 상황 정보는 사용자 인터페이스, 다양한 센서, 센서 네트워크 등을 통해 수집 됨
  • 사용자는 키패드나 터치 스크린 등과 같은 사용자 인터페이스를 이용하여 자신의 기본적인 개인 정보나 개인 일정 등과 같은 정적인 상황 정보를 입력함
  • 온도, 습도와 같은 환경 상황 정보와 체온, 혈압 등 사용자와 관련 된 정보들은 단말에 부착 된 센서를 통해 직접 수집할 수도 있고, 사용자 주변의 센서 네트워크 또는 상위 계층 네트워크와 통신을 통해 수집할 수도 있음
  • 이렇게 수집 된 상황 정보는 상황 정보 모델에 따라 내부에 저장 된 후 향후 추론을 위한 기초 자료로 활용 됨
  • 다수의 상황 정보는 시간이 지남에 따라 변화할 수 있음
  • 각각의 상황 정보는 서로 다른 특성을 가지므로 변화 되는 주기도 다양함
    • 예를 들어 사용자의 프로파일 정보는 거의 변화하지 않지만, 사용자의 위치 정보는 사용자가 이동함에 따라 수시로 변화함
  • 상황 정보가 변화되었다는 사실은 주기적인 폴링(polling)이나 전파(broadcasting) 기법에 의해 파악할 수 있음
  • 수집 된 값이 특정 조건을 만족할 때에만 보고 받는 형태의 정보 수집도 가능함
  • 사람이나 사물 등과 같은 객체의 식별 정보도 위치 정보와 마찬가지로 상황 인식 서비스를 위해 기본적으로 요구 되는 상황 정보
    • 객체 식별을 위해서는 RFID 기술이 주목 받고 있음
  • 다양한 방식에 의해 상황 정보 수집
    • 시간 정보
      • 내장 된 시계를 통해서
    • 인접 객체에 대한 정보
      • 위치 서버를 통해서
    • 대역폭
      • 커널 모듈에서 제공하는 API를 통해
    • 조명의 밝기
      • 감광성 반도체 소재를 통해서
    • 가속도와 진동
      • 가속도계 통해서
    • 인접 객체 감지
      • 수동형 적외선 센서를 통해서
    • 소리
      • 마이크로 폰을 통해서
    • 기후 정보
      • 온도계나 습도계를 통해서

상황 정보 모델링 기술

  • 센서가 측정한 아날로그 정보 → 디지털 정보로 변환 → 센서 네트워크를 통한 전송 → 센서 네트워크 미들웨어 등을 통해 저장 되고 추론에 활용 됨
  • 사용자에게 유용한 서비스를 제공하기 위해서는 수집 되고 저장 된 정보를 사용자의 여러 정보와 결합하여 고 차원의 상황 정보로 분석하고 추론할 수 있어야 함
  • 상황 정보 및 사용자 정보 중에서 서비스를 제공하는 데 필수적인 정보만을 얻기 위해서는 먼저 잘 작성 된 모델을 바탕으로 정보들을 정형화하여 저장한 후, 체계적이고 효율적으로 공유할 수 있어야 함
  • 상황 정보를 기계가 처리할 수 있는 형태로 정의하고 저장하기 위해서는 표준화 된 모델링 기술이 필요함
  • 상황 정보의 표현 방식 및 교환 되는 데이터 구조를 기반으로 정보를 표현하는 방법의 분류
    1. 키 값(Key-value) 기반 모델
    2. 마크업 기반 모델
    3. 그래픽 기반 모델
    4. 객체 지향 기반 모델
    5. 로직 기반 모델
    6. 온톨로지 기반 모델
  • 하나의 상황
    • 타입 + 수집한 값
  • 부수적으로 상황 데이터가 수집 된 시간, 정보 획득 대상, 데이터의 확신성 등을 적용하여, 상황 인식 시스템을 가동하면 더욱 유용해질 수 있음

상황 정보 모델링 기술 - 키-값 기반 모델

image.png

  • 셸 변수 등의 표현 방법으로도 많이 사용 되고 있는 가장 간단한 형태의 모델링 방식으로 정보를 나타내고 다루기 쉬움
  • 텍스트 형식으로 표현 된 값에 패턴 매칭 등의 방식으로 질의 처리는 할 수 있지만, 정형화 된 형식이 있어야 하는 효율적인 정보 검색에는 부적합함
  • 많은 상황 인식 시스템의 서비스 발견 프로토콜은 대부분 키 값으로 저장된 정보에 대하여 단순히 문자 비교 방식으로 필요한 서비스를 찾음
  • 현재 개발 된 일부 상황 인식 시스템은 이 모델을 이용하여 사용자, 위치, 주변의 정보, 컴퓨터 장치 시간 등의 동적인 상황 정보를 나타냄

상황 정보 모델링 기술 - 마크업 기반 모델

image.png

  • 태그, 속성, 내용을 계층 구조의 재귀적 형태로 상황 정보를 표현함
  • 간단하고 유연하며 구조화 되어 있음
  • 편재 되어 있는 컴퓨팅에 적합함
  • 응용 프로그램 수준에서 계층적으로 구조화 된 정보를 해석해야 함
  • 정보 간의 복잡한 관계를 정의하기 힘든 단점이 있음

상황 정보 모델링 기술 - 온톨로지 기반 모델

  • 정보를 구조화하는 데 효과적이며 상호 관계성 및 부분적인 상황 정보를 쉽게 표현
  • 다양한 상황 인식 프레임 워크는 주로 온톨로지 기반 모델을 채택하고 있음
  • 온톨로지 작성을 지원하는 도구들과 자원 기술 프레임워크(RDF), 온톨로지 웹 언어(OWL) 등을 이용하여 상황 정보를 선언함
  • 자원 기술 프레임워크(RDF)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
      <?xml version="1.0" encoding="UTF-8"?>
        
      <rdf:RDF
              xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
              xmlns:feature="http://www.linkeddatatools.com/clothing-features#">
              <rdf:Description rdf:about="http://www.linkeddatatools.com/clothes#t-shirt">
                
              <feature:color rdf:resource="http://www.linkeddatatools.com/colors#white"/>
          </rdf:Description>
      </rdf:RDF>
    

    image.png

상황 정보 추론 기술

  • 수집 된 여러 데이터를 분석하여 상위 상황 정보를 도출하려면 확률적인 메커니즘도 제공되어야 함
  • 계층적 상황 정보를 기반으로 지능적인 추론 방법도 제공되어야 함
  • 온톨로지를 이용한 모델이 상황 지식의 공유 가능, 재사용 지원, 높은 추론 기능을 제공할 수 있음
    • 이와 관련 된 추론 시스템 연구가 활발하게 연구되고 있음

상황 정보 교환 기술

  • 센서나 장치, 대상 객체와의 상호 작용을 지원하기 위해 이벤트 기반 또는 폴링 기반의 통신 메커니즘을 제공해야 함
  • SOAP(Simple Object Access Protocol)은 분산 환경에서 데이터를 교환하기 위한 XML 기반 프로토콜임
  • SOAL은 표준 인코딩 모델을 가지고 있으므로 서로 다른 시스템 간에도 호환성을 제공함

상황 정보 관리 기술

  • 상황 정보 관리에서 가장 중요한 이슈는 응용이 필요한 상황 정보를 기능적으로 조합하여 효율적으로 제공하는 것임
  • 상황 정보 툴킷
    • 서버와 해석기로 구성 됨
    • 서버
      • 상황 정보 위젯으로부터 필요한 다양한 상황 정보를 취합함
    • 해석기
      • 상황을 다른 형태나 의미로 변환하여 상위 레벨의 응용에 제공함
  • 상황 정보 위젯, 서버, 해석기가 외부 제약 없이 언제나 효율적으로 센서와 응용 서비스를 지원하기 위하여 각 컴포넌트는 서로에 대한 완벽한 추상화를 제공해야 함
  • 상황 정보의 조합 문제를 응용과 독립적으로 설계할 수 있으며, 이를 통해 센서나 응용 서비스의 추가 및 제거가 발생하더라도 부가적인 조정을 하지 않아도 됨

상황 정보의 정의 및 표현

개요

  • 초기의 유비쿼터스 컴퓨팅 응용은 단순히 센서가 수집한 데이터만 이용하였음
    • 다양한 형태의 센싱 정보가 아니라 한 종류의 데이터만 가지게 됨
  • 센서 관련 기술이 발전되어 센서의 단가가 낮아지고 다양한 기능을 가진 센서가 등장함
    • 상황 인식 미들웨어도 여러 종류의 센서로부터 다양한 데이터를 수신할 수 있게 되었음
    • 다양해진 데이터를 정의하고 표현할 방법이 필요하게 됨
  • 상황 정보의 정의는 사용자에게 좀 더 정확하게 제공하는 데 필요함
  • 수집 된 상황 정보가 한 개인에게 국한 된 것이 아니므로 상황 정보를 일반적으로 표현하여 다수의 사용자에게 공통적인 정보로 제공하는데 필요함

시맨틱 웹

  • 시맨틱 웹
    • 컴퓨터가 정보의 의미를 이해하고 의미를 조작할 수 있는 웹 형태의 정보 표현
  • 시맨틱 웹은 웹을 통해 동일한 개념으로 다양한 정보를 보다 효과적으로 활용할 수 있게 함

image.png

  • 월드 와이드 웹
    • 단순한 문서의 의미 내용도 컴퓨터가 알지 못하는 수준
  • 시맨틱 웹
    • 정보와 지식을 처리할 수 있는 웹의 환경
  • 시맨틱 웹 환경에서 지식을 표현하기 위한 언어는 자원 기술 프레임워크, 온톨로지 추론 계층, DARPA 에이전트 마크업 언어 등이 있음

정리 하기

  • 상황 인식 컴퓨팅은 현실 공간과 가상 공간을 연결하여 가상 공간에서의 현실의 상황을 정보화하고 이를 활용하여 사용자 중심의 지능화 된 서비스를 제공하는 기술임
  • 상황 인식 서비스를 위해서는 상황 정보 수집 기술, 모델링 기술, 추론 기술과 같은 주요 요소 기술을 필요로 함



연습 문제


  1. 상황의 분류에 포함되지 않는 것은 무엇인가?

    a. 지식적 상황

    • 상황의 분류에 포함 되는 것
      • 컴퓨팅 상황
      • 사용자 상황
      • 물리적 상황
  2. 상황(또는 상황 정보, Context)의 정의에 포함되지 않는 것은 무엇인가?

    a. 사용자의 주변을 구성하는 가상화 된 자원 정보

    • 상황(또는 상황 정보, Context)의 정의에 포함되는 것
      • 상황 인식을 하기 위해 필요한 기본 정보
      • 실 세계에 존재하는 실체의 상태를 특징화하여 정의한 정보
      • 사용자의 상황을 특징 지을 수 있는 정보
  3. 상황 인식 서비스 요소 기술이 아닌 것은 무엇인가?

    a. 상황 정보 연계 기술

    • 상황 인식 서비스 요소 기술
      • 상황 정보 모델링 기술
      • 상황 정보 추론 기술
      • 상황 정보 관리 기술



정리 하기


  • 상황 인식 컴퓨팅(Context-Aware Computing)
    • 실 세계에서 획득한 상황 정보를 추상화하고 연계하여 상황 정보를 지식으로 만들고, 응용 분야에 적합한 지식 표현을 기반으로 사용자와 서비스를 연계하는 응용 기술
  • 상황 인식 기술의 효율적인 이용을 위한 요구 사항
    • 상황에 대한 이해
      • 상황 정보의 선택/활용 방법/상황 인식 행위의 결정을 지원해줌
    • 상황과 관련된 기술 구조에 대한 이해
      • 응용 서비스의 구축을 지원해줌
  • 상황(또는 상황 정보, Context)의 정의
    • 상황 인식을 하기 위해 필요한 기본 정보
    • 실 세계에 존재하는 실체의 상태를 특징화하여 정의한 정보
    • 사용자의 상황을 특징 지을 수 있는 정보
  • 상황의 분류
    • 컴퓨팅 상황(Computing Context)
    • 사용자 상황(User Context)
    • 물리적 상황(Physical Context)
  • 상황 인식 시스템의 구성
    • 클라이언트 기기
    • 상황 인식 시스템
    • 상황 인식 모델
  • 상황 인식 응용 개발 도구 기술
    • 상황 정보의 추상화(Abstraction) 기술
    • 상황 정보의 해석(Interpretation) 기술
    • 유사한 상황 정보의 수집(Aggregation)기술
  • 상황 인식 서비스 요소 기술
    • 상황 정보 수집 기술
    • 상황 정보 모델링 기술
    • 상황 정보 추론 기술
    • 상황 정보 관리 기술

[운영 체제] 10강 - 페이지 교체 알고리즘

[데이터 정보 처리 입문] 11강 - 엑셀 활용 2