KR20060051202A - 분리된 작업 및 장치 설명서를 사용한 가전 제품의 기술방법 및 시스템 - Google Patents
분리된 작업 및 장치 설명서를 사용한 가전 제품의 기술방법 및 시스템 Download PDFInfo
- Publication number
- KR20060051202A KR20060051202A KR1020050084649A KR20050084649A KR20060051202A KR 20060051202 A KR20060051202 A KR 20060051202A KR 1020050084649 A KR1020050084649 A KR 1020050084649A KR 20050084649 A KR20050084649 A KR 20050084649A KR 20060051202 A KR20060051202 A KR 20060051202A
- Authority
- KR
- South Korea
- Prior art keywords
- task
- user
- devices
- descriptions
- job
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Cookers (AREA)
- Recrystallisation Techniques (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
작업 편성 시스템에서 복수의 전자 장치들 중 하나 또는 복수에서 수행되는 사용자 작업을 표시하는 방법이 제시된다. 각 장치는 장치가 수행할 수 있는 기능을 설명하는 기능 설명서를 포함한다. 기능 설명서들은 하나 또는 그 이상의 장치들로부터 획득되며, 특정 작업들에 요구되는 장치의 기능을 설명하는 작업 설명서들이 획득되고, 얻어진 장치 기능 설명서들과 작업 설명서들에 기초하여 작업 제안이 생성된다. 각 작업 제안은 사용자 작업을 얻어진 장치 설명서들과 작업 설명서들 중 하나 또는 그 이상의 추상화로서 표현한다. 작업 제안들은 디스플레이 상에 표시되고 사용자가 그로부터 선택하도록 하는데, 사용자가 선택한 작업 제안은 장치 기능 설명서들에 설명된 장치 기능을 사용하는 작업 설명서들에 기초하여 장치들 중 하나 또는 그 이상에 대한 편성(자동화)에 의해 수행된다.
Description
도 1a는 본 발명에 따른 작업 편성 시스템의 일 실시예의 구조의 예를 나타낸 블록도이다.
도 1b는 도 1a의 시스템에 따른 작업 편성 프로세스의 예를 나타낸 흐름도이다.
도 2는 본 발명에 따른 작업 편성 모듈을 포함하는 작업 편성 시스템의 다른 일 실시예의 구조의 예를 나타낸 블록도이다.
도 3은 도 2의 시스템에서의 의사 언어를 사용한 작업 제안의 예를 나타낸 도면이다.
도 4는 도 2의 시스템에서의 작업 제안을 생성하기 위해 장치로부터 장치 기능 설명서들을 획득하는 것을 나타낸 도면이다.
도 5는 본 발명에 따른 작업 설명서들과 장치 설명서들을 논리적으로 분리하는 예를 나타낸 도면이다.
도 6은 작업 제안을 생성하고 표시하는 단계들의 예를 나타낸 흐름도이다.
도 7은 작업 제안을 표시하여 사용자가 선택하게 하고 도 2의 시스템에서의 작업 편성 모듈에 의해 수행되도록 하는 단계들의 예를 나타낸 흐름도이다.
본 발명은 장치의 사용자 제어를 위한 사용자 인터페이스의 제공에 관한 것으로서, 특히 일군의 가전(Consumer electronic: CE) 장치들에 대한 사용자 작업들을 제시하는 것과 표시하는 것에 관한 것이다.
TV, VCR, DVD 플레이어, CD 플레이어 등과 같은 가전 장치들의 사용자 제어를 위한 통상적인 사용자 인터페이스는 사용자 작업들을 장치에 표시하지 않는다. 대신 사용자에게 일련의 장치의 기능들을 제시하고 사용자가 작업을 수행하기 위해 이들 장치 기능들의 조합을 선택하게 한다. 예를 들면, 비디오 테이프를 보기 위해서는 사용자가 입력(테이프)을 선택하고, 테이프를 되감고, VCR의 플레이 버튼을 눌러야 한다. 그 결과로서, 사용자는 단순히 “비디오 테이프를 보고 싶다”라고 명시하여 이와 같은 작동을 자동화할 수는 없는 것이다. 따라서 사용자는 원하는 작업을 직접 표현할 수는 없으며, 반드시 장치를 직접 제어하여 원하는 기능들(예를 들면, 입력 선택, 테이프 되감기, VCR의 재생 버튼 누르기)을 수행해야 한다.
이는 전통적인 소프트웨어 아키텍쳐와 유사한데, 이러한 소프트웨어 아키텍쳐에서는 응용 프로그램의 개념에 작업들이 맵핑된다. 예를 들면, 사용자가 편지를 쓰고 싶다면, 사용자는 적절한 기능을 가진 워드 프로세서 프로그램을 수행해야 한다. 그런데, 이러한 과정에서는 사용자에게 잘 알려진 기능을 잘 알려진 이름에 매 핑하고 있지 않고 있다.
이와 다른 방식으로는, 사용자에게 메뉴 형식으로 여러 개의 옵션을 제시하는 방법이 있다. 많은 시스템에서는 잘 알려진 작업을 메뉴 옵션 상에 제시하여 선택하게 하고 있다(예를 들면, “문서의 맞춤법 검사” 또는 “VCR 상의 즉시 녹화” 등이 그것이다). 그러나, 이러한 시스템에서도 사용자에게 장치의 기능들만을 제공할 뿐이다.
또 다른 방식으로는, 사용자가 작업을 그래픽으로 표현하도록 허용하는 것이다. 예를 들면, 원하는 작업을 수행하기 위한 일련의 장치들을 선을 이용하여 연결하도록 하는 것이다. 이러한 방식의 문제점은 장치를 사용하는데 따른 복잡함을 사용자로부터 감추고 있지 않다는 것이다. 즉 이러한 방식에서는 사용자에게 그래픽으로 기능을 제시하고 이를 사용자가 선택하게 하며, 사용자가 작업을 수행하는데 필요한 연결을 특정하도록 요구한다.
나아가, 전통적으로, 가전 제품들은 언어 API들과 같은 인터페이스 기술 방법을 사용하여 기술된다. UPNP, OSGi, Jini 등과 같은 미들웨어들은 그러한 컴퓨터 의 절차적인 인터페이스의 사용을 표준화해 왔다. 그러나, 이러한 인터페이스들은 정의된 인터페이스를 호출하는 경우 외에는 다른 컴퓨터/장치들에 의해 의미있게 사용될 수 있는 정도로 장치에 대해 상세히 설명하지 않는다. 다른 접근 방법들은 CC/PP와 같이 능력들이나 선호도를 더 상세히 설명하는데 초점을 맞추는데, 여기서는 속성들의 집합들이 능력들과 선호도들을 나타내는 컴퓨팅 장치들에 대해 표현될 수 있다. 나아가, 시멘틱 웹(semantic web)의 영역에서의 접근 방법들은, DAML과 RDF에 의해 구현된 작업들과 같이, 좀더 상세한 기술 능력 쪽으로 이동하고 있다. 그러나, 이러한 접근 방법들은 특정의 접근 방법보다는 개체들을 기술하기 위해 핵심만을 기술할 뿐이다. 시멘틱 웹과 XML 기술을 핵심으로 사용하여, HPL에서의 User-Centric Appliance Aggregation과 같은 과거의 작업들은 가전 제품을 단지 작업을 모든 장치와 연관시키는 장치 설명서들을 사용하여 기술하려고 노력하였다. 예를 들어, DVD는 ‘DVD들을 재생하고’, TV는 ‘비디오를 보여준다’. 이러한 접근 방법들의 문제점은 그것들이 장치들과 그들의 상호 작용들을 적절하게 기술하지 않는다는 것인데, 이는 많은 사용자 작업들이 하나의 장치에 의해 포착될 수 있는 것보다 더 많은 세부 사항들을 가지고 있기 때문이다. 예를 들면, DVD를 재생하는 것은 동시에 전등을 어둡게 하는 것을 요할 수 있다.
따라서 본 발명이 이루고자 하는 기술적 과제는, 블랙 박스로서 동작하는 제어기 프로그램으로서보다는 탄력적인 설명서에 기술된 장치의 상호 작용을 기술하며, 사용자의 홈 디바이스 사용법에 대한 인식 구조에 더 가깝게 일치하는 장치의 상호 작용을 허용하며, 상호 작용들이 하나의 장치에 집중되지 않도록 허용하는(즉, 장치를 작업에 직접적으로 맵핑시키지 않는) 작업 설명서를 제공하며, 또한 상호 작용적인 설명서와 설명서들의 상호 교환을 허용하는 사용자 작업들의 설명서를 제공하는 방법 및 시스템을 제공하는 것이다.
상기 기술적 과제를 이루기 위한 작업 편성 시스템에서의 복수의 전자 장치 들의 상호 작용에 의해 수행되는 사용자 작업의 표현 방법은, 장치가 수행할 수 있는 기능을 기술하는 장치 설명서(device description)로서 장치의 기능을 나타내는 단계; 및 상기 장치 설명서에 기초하여, 각각이 사용자 작업을 하나 또는 그 이상의 장치 설명서들의 추상화로서 나타내는 작업 제안들을 생성하는 단계를 포함하며, 이에 의해 사용자 작업들이 장치들과 분리되는 것이 바람직하다.
상기 기술적 과제를 이루기 위한 상호 연결된 장치들의 네트워크를 위한 작업 편성 시스템(task orchestration system)은, 하나 또는 그 이상의 장치들로부터 기능 설명서들을 획득하고, 획득한 장치 기능 설명서들에 기초한 작업 제안들을 생성하여 각 작업 제안들이 사용자 작업을 하나 또는 그 이상의 획득한 장치 설명서들의 추상화로서 나타낼 수 있도록 하며, 여기서 장치 기능은 장치가 수행할 수 있는 기능을 나타내는 장치 설명서로서 표현되어 이에 의해 사용자 작업들이 장치들로부터 분리되도록 하는 작업 구동 제어기; 및 선택된 작업 제안에 의해 표시되는 사용자 작업이 하나 또는 그 이상의 장치들에 의해 수행되도록, 작업 제안들을 디스플레이 상에 표시하여 사용자가 그로부터 선택할 수 있도록 하는 사용자 인터페이스 장치를 포함하는 것이 바람직하다.
일 실시예에 있어서 본 발명은 네트워크 상의 복수의 전자 장치들 중 하나 또는 그 이상에서 수행되는 사용자 작업들을 표현하는 방법을 구현하는 작업 편성 시스템(task orchestration system)을 제공한다. 각각의 장치는 그 장치가 수행할 수 있는 기능을 설명하는 기능 설명서(function description)들을 포함한다. 장치의 기능은 그 장치가 수행할 수 있는 기능을 기술하는 장치 설명서에 의해 표현된 다. 기능 설명서들은 하나 또는 그 이상의 장치들로부터 획득된다. 더 나아가 사용자 작업과 그러한 작업들을 수행하기 위해 필요한 기능들을 설명하는 작업 설명서(task description)들이 또한 획득된다. 그 다음엔 이렇게 얻어진 기능 설명서들과 작업 설명서들을 사용하여 사용자에 대한 작업 제안(task suggestion)들이 생성된다. 각 작업 제안은 사용자 작업을 의사 문장(pseudo-sentence)으로 추상적으로 표현되며, 작업 설명서로부터 획득되고, 얻어진 장치 설명서들 중 하나 또는 그 이상을 사용할 수 있다. 작업 제안들은 디스플레이 상에 표시되어, 사용자가 그로부터 선택할 수 있게 한다. 이렇게 사용자가 선택한 작업 제안에 의해 요청된 작업은 하나 또는 그 이상의 장치에서 수행되게 된다. 이와 같이 하여, 작업 제안들은 장치의 기능을 시스템의 사용자로부터 감추게 된다.
일 실시예에 있어서, 작업 제안들은 타입을 가진 일련의 용어들로 구성된 의사 언어 구조를 사용하여 표현되어, 사용자 작업들을 작업 설명서들과 장치 기능 설명서들의 추상화로서 서술한다. 사용자 인터페이스 장치가 사용자가 선택할 작업 제안을 표시하는데 사용되는데, 이러한 작업 제안들은 작업 편성(자동화) 모듈의 제어 아래 있는 하나 또는 그 이상의 장치들에 의해 작업들을 수행하도록 선택된다.
작업 제안들로부터 선택함에 있어, 사용자는 의사 문장 요소들/용어들을 선택하도록 허용되는데, 사용자가 선택한 작업 제안들은 시스템의 작업 편성 모듈의 제어 아래 놓인 장치들에 의해 수행될 수 있다. 작업 편성 모듈은 시스템의 논리적 모듈이 될 수 있다.
일 예에 있어서, 사용자 작업 설명서는 작업 외부 설명서(task external description), 작업 성질들(task properties), 작업 기능들(task functionalities) 및 작업 동작들(task actions)을 포함한다. 작업 외부 설명서는 사용자와 상호 작용하기 위한 작업 제안들(즉, 의사 문장들)의 개요를 나타낸다. 작업 성질들은 사용자 작업에 대한 정보를 표현한다. 작업 기능들은 사용자 작업을 수행하기 위해 요구되는 기능을 표현한다. 그리고, 작업 동작은 요구되는 기능을 충족하는 장치들의 배열과 조합들을 기술한다. 장치 설명서는 장치 기능 설명서(device functionality description)와 장치 기초 지식(device grounding)을 포함하는데, 장치 기능 설명서는 장치의 기능에 대한 개요를 나타내고, 장치 기초 지식은 기능 설명서에 기초한 장치의 제어를 기술한다.
일 실시예에 있어서, 그 자체로서, 작업 편성 모듈은 작업 구동형 제어기를 포함하는데, 작업 구동형 제어기는 하나 또는 그 이상의 장치들로부터 장치 기능 설명서들을 획득하고, 특정한 작업들에 의해 요구되는 장치의 기능들을 설명하는 작업 설명서들을 획득하고, 얻어진 작업 설명서들과 장치 설명서들로부터 작업 제안을 생성하며, 작업 제안이 선택되면 얻어진 장치 기능 설명서들에 설명된 기능들을 사용하는 작업 설명서들에 기초하여 선택된 작업 제안을 수행한다.
이와 같은 본 발명의 특징들, 태양들, 및 장점들은 이하의 설명 및 첨부된 특허청구범위 및 첨부된 도면들을 참조하면 이해될 것이다.
일 실시예에 있어서, 본 발명은 장치들이 네트워크에 의해 상호 연결된 일반 가정에서의 가전 장치에서와 같은 다양한 장치들의 집합 위에서 수행되는 사용자 작업을 편성하는 시스템을 제공한다. 사용자 작업의 편성이란 작업을 수행하기 위해 사용되는 장치를 선택하는 과정을 자동화하는 것을 의미한다. 한가지 예에 있어서, 이는 장치 기능 설명서들 및 작업 설명서들을 획득하고 획득된 장치 기능 설명서 및 작업 설명서들에 기초하여 작업 제안들을 생성하고, 작업 제안들에 순위를 매기고, 사용자로 하여금 그 작업 제안들 중에서 선택하게 허용하고, 선택된/요구된 작업 제안을 수행할 장치를 편성(자동화)하는 것을 포함한다. 예를 들면, 언급한 바와 같이 작업 제안들은 서로를 수식하는 일련의 요소들/용어들로 이루어진 의사 문장들로 기술될 수 있다.
본 발명은 사용자 작업들을 의사 문장을 사용하면서도 인간이 읽을 수 있는 증가적이고 탄력적인 방식으로 표현하는 것을 허용한다. 그 자체로서 본 발명은 설명서가 장치의 동작에 어떻게 맵핑되는지를 정의하지 않으며, 대신 작업 동작들을 어떻게 사용자에 의해 해석되는 방식으로 표현할 것인지에 대해 집중한다. 의사 문장들이 내재된 장치들로부터 격리된 추상 계층(abstraction layer)을 제공한다. 작업들은 의사 문장들을 사용하여 손으로 쓴 낙서를 인식한 기호가 실제의 로마자 글자들에 가깝게 되는 것과 대체로 유사한 방식으로 설명된다(예를 들어, 자연어와 완전한 필기체 인식에 비교되는 사용자 작업들의 낙서). 일 구현예에 있어서, 이는 간결한 프로그램이 복잡한 자연어 처리를 거치지 않고서도 사용자 작업을 결정할 수 있도록 허용한다.
작업 편성은 장치에 대한 고수준, 작업 중심, 원거리 제어로서 동작하며, 사용자로 하여금 선택과 설정을 최소화해 준다. 그 자체로서, 여러 기술들의 조합이 사용자 작업의 편성을 자동화하는데 적합한 편성 시스템을 제공하는데 사용된다.
도 1a 및 도 1b에 도시된 구조의 예를 참조하면, 본 발명에 따른 작업 편성 시스템(10)은 사용자 작업들이 사용자로부터의 최소한의 입력에 의해 편성 장치의 동작들의 집합으로 자동화되도록 허용한다. 하나의 버전에 있어서는, 작업 편성 시스템(10)은 세 종류의 논리 장치로서 구성된다. 첫째는 사용자 인터페이스를 보여주는 장치를 포함하는 클라이언트 장치들(20)이고, 둘째는 다른 장치들을 제어하는 장치를 포함하는 제어기 장치들(30), 그리고 셋째는 제어기들에 의해 제어되는 장치를 포함하는 제어되는 장치들(40)이다.
각각의 논리적 장치는 본 발명에 따른 작업 편성을 가능하게 하는 특정한 기능을 가진다. 구체적으로 말하면, 제어되는 장치들(40)은 시멘틱 마크업 언어(semantic markup language) 등과 같은 언어를 사용하여 그들의 기능에 대한 강화된 설명서를 포함한다(이는 그들의 인터페이스를 설명하는 것이 아니라, 대신 그들의 기능에 대해 추상적으로 기술한다). 또한, 장치의 기능에 대한 설명서에 부가하여, 장치는 하나 또는 그 이상의 사용자 작업의 설명서를 포함할 수 있다. 작업 설명서는 그들의 기능을 사용하는 작업들만을 열거하거나, 그들의 기능 및 다른 장치들의 잠재적인 기능을 사용하는 작업들을 열거하거나, 또는 다른 장치들을 위한 작업들을 열거할 수 있다.
제어기 장치들(30)은 작업 편성(task orchestration: TO) 모듈들(50)을 포함하며, 장치들이 사용자가 선택한 작업 제안들(즉 작업 요구들)을 수행하도록 편성하는 기능을 포함한다. 제어 접근 소프트웨어에 부가하여, 제어기(30)는 작업 편성 모듈(50) 내에 추론 시스템(예를 들어, 전문가 시스템, 규칙 시스템 등)을 포함하는데, 이는 작업 요구를 수행하는데 필요한 일련의 동작 및 장치들을 추론할 수 있다. 제어기(30)는 작업 및 장치 기능 설명서를 획득하고 이 정보를 사용하여 (1) 현재의 장치, 그들의 기능 및 설명된 작업들이 주어진 상태에서, 어떤 작업들이 시스템에서 유효한가 및 (2) 요구된 작업을 충족하기 위해서 어떠한 장치의 조합들이 사용될 수 있는지를 추론한다.
클라이언트 장치들(20)은 작업 제안들을 사용자에게 요구하고 표시할 수 있는 기능을 포함한다. 그 자체로서, 작업들을 사용자에게 보여주기 위해 제어기(30)의 작업 편성 모듈(50)과 연결될 사용자 인터페이스를 포함한다. 이러한 연결은 사용자 인터페이스(예를 들어 GUI)가 현재 장치(40), 작업 및 기능이 주어진 상태에서 가능한 작업 제안들만을 표시할 수 있게 한다. 더 나아가, 작업 제안의 일부가 만들어진 경우(즉, 작업 요구의 일부가 특정된 경우), 사용자 인터페이스는 제어기(30)를 사용하여 적용 가능한 사용자 옵션들을 감축할 수 있다. 이러한 기능을 사용하여, 클라이언트 장치(20)는 이용 가능한 작업들과 옵션들을 의사 문장들을 사용하여 제시할 수 있다. 작업 제안은 사용자에 의해 선택되고, 선택된 작업 제안을 수행하라는 요구는 선택된/요구된 작업을 수행하기 위해 제어기(30)에 의해 처리된다. 이를 통해 제어기(30)는 간결화된 방식으로 어떠한 사용자 작업이 기대되는지를 결정하고 이를 작업 설명서와 일치시키며 결국 작업을 완성하기 위해 장치 선택 및 설정에 일치시킨다. 어느 방에서 비디오를 재생할 것인가와 같은 사용자 선호들은 수식어들로서 작업 제안 의사 문장의 일부로서(예를 들어, 의사 문장인 ‘침실 에서’ 비디오를 재생하라 또는 ‘헤드폰을 사용하여’ 비디오를 재생하라) 특정된다. 작업 제안들을 선택하기 위한 이러한 검색 공간의 부분들(즉, 의사 문장들의 이용 가능한 부분들)은 이하에서 작업 및 장치 설명서들을 분리한 가전을 기술함에 의해 좀더 설명될 것이다.
도 2는 본 발명에 따른 작업 편성 시스템(10)의 기능 구조의 일 예를 나타낸 것이다. 본 발명에 의한 작업 편성 시스템(10)은 사용자 인터페이스(GUI) 모듈(60) 및 제어기(30)를 포함하며, 제어기(30)는 내재하는 클라이언트 장치들(40)의 상위 계층으로서 작업 편성 모듈(50)을 포함한다. 제어기(30)와 클라이언트 장치들(40) 사이의 미들웨어 계층/모듈(70)은 장치들을 제어하도록 해주는 중간 계층의 기능들(예를 들어, 장치들을 제어하기 위한 API 등)을 제공한다. 미들웨어 모듈(70)의 동작에 대한 설명은 본 발명의 범위를 벗어나는 것이므로, 여기서는 상세한 설명을 생략한다.
사용자 인터페이스(60)를 통해서, 작업 편성 모듈(50)은 일군의 가전 장치들(40)에 의해 수행될 수 있는 작업 제안들을 제시하고 표시한다. 그 자체로서, 작업 편성 모듈(50)은 그러한 작업 제안들이 어떻게 장치들(40)에 맵핑되는지를 감추며, 사용자에게는 작업 제안들만을 표시한다. 작업들을 증가적이고 탄력적이며 또한 인간이 읽을 수 있는 방식에 의해 작업 제안들로 기술하는 방식이 제공된다. 이러한 방법은 작업 설명서(95)가 어떻게 장치들(40)의 동작에 맵핑되는지에 관해서 초점을 맞추지 않으며, 대신 작업 동작들을 사용자에 의해 해석될 수 있는 방식으로 표현하는 것에 초점을 맞춘다(예를 들면, 작업 제안들을 의사 문장들의 용어를 사용 한다).
이제 도 3을 참조하면, 일 예에 있어서, 작업 제안은 의사 문장을 나타내는 간략화된 언어 구조(200)에 의해 기술될 수 있다. 이하 설명의 편의를 위해서, 예시된 구조는 서로를 수식하는 용어들의 집합으로 구성되어 있으며, 이 예에서는 동작을 정의하는 ‘동사’들의 표준화된 집합이 계층적 언어 트리(200)의 루트로 사용된다. 예를 들어, “재생”, “보여주기”, “보기”, “조정하기”, “물주기”, 등이 ‘동사’들의 집합을 이루며, 각 ‘동사’ 뒤에는 “사진”,”잔디밭”,”영화” 등과 같은 ‘주제어’가 나온다. ‘주제어’는 ‘동사’들에 의해 정의된 동작의 범위를 감축함에 의해 ‘동사’들을 수식한다.
‘주제어’ 뒤에는 특정한 동작의 범위를 더 감축하는 인스턴스와 같은 ‘수식어’들의 조합이 나온다. 예를 들면, “재생” “영화” “매트릭스”는 특정한 인스턴스로서 “매트릭스”가 부가된 경우이다. “동굴에서” 또는 “오후 8시에”와 같은 다른 ‘수식어’들이 작업을 제어하기 위해 특정될 수 있다. 뿐만 아니라, 다른 수식어들이 영화 “매트릭스”가 저장되어 있는 매체를 특정할 수 있다. 주의할 것은 이 구조는 작업들을 특정하며, 장치의 동작을 특정하지는 않는다는 것이다. 볼륨이나 채널을 변경하는 것과 같은 장치의 동작들은 여기서는 작업으로 취급되지 않으며, 대신 그러한 것들은 존재하는 작업에서의 동작들이 된다(예를 들면 “TV” “보기” 중의 볼륨 변경). 이러한 구조(200)에서의 단어의 조합은 특정한 문맥(예를 들어 가정에서)에 대해 정해진 용어들의 집합에 의해서가 아니라 장치(40)에 위치하는 작업들의 표준화된 설명서에 의해 채워진다. 이러한 장치들은 현 재 시스템 상에서 연결되고 접근 가능한 장치들에 기초하여 각 레벨에 대한 용어들의 집합 및 가능한 수식어들을 생성하기 위해 검색된다. 이러한 접근 방식은 사용자 작업을 특정하는 것을 훨씬 쉽게 하는데, 이는 크기가 크면서 별 관계없는 단어 베이스는 올바른 의사 문장을 결정하기 어렵게 만들기 때문이다.
이제 또한 도 4에 도시된 예시 다이어그램을 참조하면, 장치들(40)은 각 레벨(즉, 의사 문장에서의 위치)에서의 용어들의 집합 및 작업 설명서들(95)과 같은 홈 네트워크(85)에서 현재 연결되거나 접근 가능한 장치들에 기초하여 가능한 수식어들을 위해 검색된다. 이러한 방식에 의해 작업 제안을 특정하는 것이 간단해지는데, 이는 그렇게 하지 않으면, 무관하지만 크기가 큰 단어 베이스가 올바른 의사 문장을 결정하는 것을 어렵게 하기 때문이다.
본 발명에 따른 이러한 실시예에 대한 개선은 다른 용어들 또는 수식어들의 현재 선택에 기초하여 가능한 용어들 또는 수식어들의 집합만을 결정하는 것이다. 예를 들면, 만일 “재생” 또는 “CD 플레이어에서”가 선택되면, 비록 “재생” “비디오”가 가능한 작업이라고 하더라도, 비디오는 CD 플레이어에서 재생할 수 없기 때문에 시스템에서 장치 작업 설명서에 적합하지 않게 된다. 대신에, 만일 그것만이 존재하는 장치들(40)에 기초하여 가능한 옵션인 경우, 단지 “음악” 만이 사용자에게 제시된다.
본 발명에 따른 이러한 실시예에 대한 다른 개선 방법은, 작업이 부분적으로만 특정되도록 허용하는 것이다(예를 들어 “재생””음악””노래명”). 만일 복수의 작업들이 일치하면, 사용자에 대한 옵션을 결정함으로써 작업이 인스턴스화된 다. 이는 랜덤한 선택에 의해서, 과거의 요구들에 기초한 학습에 의해서, 또는 좀더 복잡한 접근 방법에 의해서 이루어질 수 있다. 이렇게 함에 의해 소수의 옵션이 존재하거나 작업 편성 모듈(50)이 지금까지의 사용자 입력에 기초하여 사용자에 대한 적합한 선택을 결정할 수 있다는 아는 때 사용자들이 의사 결정과 사용자 인터페이스 옵션들을 줄일 수 있도록 허용한다. 작업 편성 모듈(50)은 또한 사용 가능한 장치들과 자원에 기초하여 그것들을 결정할 수 있으므로 가능한 옵션들을 채워넣을 수 있다. 예를 들면, 만일 단지 하나의 음악 장치(CD 플레이어)만이 존재하면, 방에 대한 수식어들과 장치에 대한 선택들은 내재하는 기계 자동화의 부분에서 수행 중에는 제거된다.
따라서, 본 발명은 사용자들이 장치 동작들이 아니라 작업들을 특정할 수 있도록 해주며, 응용 프로그램 또는 장치들이 그들이 수행하는 기능들을 특정할 수 있도록 해주며, 사용자 인터페이스가 존재하는 모든 작업들이 아니라 표현/수행 가능한 작업들만을 검색하도록 해주며, 사용자들이 작업들을 빨리 표현할 수 있는 표준화된 어휘를 제공하며, 간결한 프로그램이 복잡한 자연어 처리를 거치지 않고서도 사용자 작업들을 결정할 수 있도록 해준다.
언급한 바와 같이, 다른 일 태양에 있어서, 본 발명은 분리된 작업 설명서들과 장치 기능 설명서들을 사용하여 가전 장치들을 기술하는 방법을 제공한다. 그 자체로서, 장치들의 상호 작용은 장치 기능 설명서들과 추상적인 장치 상호 작용들을 사용하여 표현된다. 이러한 방법에 의해, 장치 설명서(즉, 장치 기능) 및 사용자 작업(즉, 장치 사용)이 풍부한 설명서들의 집합으로 논리적으로 분리된다. 그러 한 설명서들을 사용하여 가전 제품들(가정에서 사용되는 제품들과 같은)의 집합 및 그것들이 상호 작용하는 가능한 방법들의 집합을 기술하는 것이 가능해진다. 작업 설명서들과 장치 설명서들의 복잡도에 기초하여, 복잡한 순차적이고 병행적이고 공동 작용할 수 있는 상호 작용들이 가전 장치들이 사용자 작업들을 수행할 수 있는 기능들을 편성하기 위해 표현될 수 있다. 이에 의해, 블랙 박스로 작용하는 제어기 프로그램보다는 탄력적인 방식의 설명서에 의해 설명되는 장치의 상호 동작, 사용자가 느끼는 가전 장치의 사용에 대한 구조에 좀더 일치하는 장치의 상호 동작들, 상호 작용을 하나의 장치에만 집중되지 않도록 하는(즉 장치가 작업에 직접적으로 맵핑되지 않도록 하는) 작업 설명서, 및 상호 작용 가능한 설명서와 설명서들의 교환을 가능하게 하는 작업 제안으로서의 사용자 작업의 설명서들을 제공한다.
도 5를 참조하면, 일 예에 있어서, 가전 제품들(40)의 설명서(300)는 사용자 작업을 나타내는 작업 설명서(310)와 장치의 기능을 나타내는 장치 설명서(320)라는 두 개의 논리적 설명서들로서 제공된다. 이러한 설명서들(310, 320)은 작업 제안이 제어기(30)가 홈 네트워크(85)에서 어떤 장치들(40)이 작업 설명서(310)에 기초하여 작업을 제안을 수행할 수 있도록 사용 가능한지를 이해할 수 있게 허용하는 방식에 의해 관련되어 있다. 이러한 타입의 설명서(310)는 많은 용도가 있으나, 주로 작업들이 홈 네트워크(85)의 장치들(40)로부터 분리되도록 허용한다. 그리고 작업들이 잘 알려진 현존하는 장치들에 대해 미리 정해지고 미리 정의된 순서로 작업들을 프로그램적으로 수행하는 블랙 박스 제어기 스타일의 응용 프로그램으로부터 분리되도록 허용한다.
도 5에 도시된 바와 같이, 작업 설명서(310)는 (1) 작업 외부 설명서(330), (2) 작업 성질(340), (3) 작업 기능(350), 그리고 (4) 작업 동작(360)의 네 개의 부분을 포함한다. 작업 외부 설명서(330)는 의사 문장들의 아웃라인을 제공한다(주의할 것은 이 예에서 도 2의 작업 설명서(95)와 도 5의 작업 설명서(330)는 동일하다는 점이다). 작업 성질들(340)은 작업에 관한 유용한 정보를 표현한다(예를 들면, 그것은 DVD가 재생될 때는 임의적으로 조명을 어둡게 하거나, 특정 사용자에 대해 이러한 작업을 사용할 수 있도록 허용할 수 있다). 작업 기능들(350)은 작업이 그 목표를 달성하는데 필요한 기능을 표현한다. 이러한 기능은 장치 설명서(320)에 사용된 용어들을 공유하여 기술되며 장치(40)의 기능을 추상적으로 기술한다. 예를 들면, DVD 플레이어는 “AV소스”라고 표현될 수 있다. 이러한 기능은 기능들의 계층 구조로서 기술된다. 나아가 DVD 플레이어가 다기능 동작의 형태를 가진다면 AV 소스로서 기술될 수 있다. 또는 단순히 DVD 플레이어들을 기술하는 “AV소스”의 서브 클래스인 “DVDAV소스”라고 표현될 수 있다. 마지막으로, 작업 동작들(360)은 나열된 기능들을 수행하는 장치들의 차례와 조합들을 기술한다.
나아가 장치 설명서(320)는 작업 설명서와 유사한 구조를 가지며 기능 설명서를 공유한다. 장치 설명서들(320)은 기능(350a)을 포함할 수 있으며, 여기서 작업 설명서(310) 상의 작업 기능(350)은 장치 설명서(320) 상의 기능(350a)에 대응한다. 기능(350a)은 기능 설명서(370), 장치 기초 지식(380) 및 장치 속성들(예를 들어, 스크린 사이즈, 특징들 등)을 포함할 수 있다. 기능 설명서(370)는 장치(40)의 기능에 대한 아웃라인을 제공한다. 예를 들면, CD 플레이어는 오디오싱크이며, 반면 초월코드(transcode)는 MPEG오디오싱크 및 MPEG오디오소스로서 기능을 가질 수 있다. 장치 기초 지식(380)은 기능 설명서(380)에 기초하여 장치(40)를 제어하는 방법을 설명한다. 예를 들면, 볼륨 레벨을 변경하거나, 장치의 연결을 설정하는 등의 동작을 위해 호출되는 URL을 포함할 수 있다. 택일적으로, 그것은 장치를 제어하기 위해 필요한 UPNP 상호 작용들을 표현함에 의해 UPNP 장치를 제어하기 위한 기초 지식을 가질 수 있다. 본 발명의 기술 분야의 숙련자라면 인식할 수 있는 바와 같이, 다른 장치 제어 프로토콜들이 또한 활용될 수 있다.
실행 시간에, 작업 설명서들(310)과 장치 설명서들(320)은 작업 편성 모듈(50)에 의해 읽혀지고 분석되어 작업 기능들(350)에 일치하는 장치들(40)의 집합이 존재하는지를 결정한다. 만일 존재한다면, 작업 편성 모듈(50)은 그 작업에 일치하는 장치 기능(350)을 그 작업에 대한 후보 장치로 정한다. 작업 편성 모듈(50)은 그 다음 사용 가능한 장치들(40)을 반복적으로 검색하여 작업 기능(350)을 성취할 수 있는 장치들(40)의 조합을 결정한다. 이러한 검색에서 일치하는 작업/장치 조합의 여러 집합들이 답으로서 주어지며, GUI(60) 상에 출력 솔류션(75)으로서 사용자에게 제시된다. 사용자는 그가 선호하는 의사 문장을 선택하는데, 이는 작업/장치 조합에 맵핑되며 작업을 성취하기 위해 장치 설명서(320) 상의 장치 기초 지식(380)을 사용하는 장치 동작들을 차례로 요구하는 작업 동작을 사용함에 의해 작업을 인스턴스화한다.
장치 설명서들(320)이 단지 논리적으로만 설명서(300) 상의 작업 설명서(310)와 분리되어 있기 때문에, 장치(40)가 큰 작업에 참여하는 것과 더불어 작업 설명으로서 그 기능을 기술하는 것에 아무런 제한이 없으며, 설명서들은 물리적으로 결합될 수 있다. 대체적인 구현은 시멘틱 웹 기술을 사용하여 장치 설명서들(320)과 작업 설명서들(310)을 작성하여, 공유 시멘틱 온톨로지(언어)가 그 시멘틱이 기계가 읽을 수 있는 형태로 모든 장치들과 작업들의 양상을 풍부하게 기술할 수 있도록 허용하는 것이다. 이상의 설명이 가전의 측면에서 기술되었지만, 본 발명의 기술 분야의 숙련자라면 본 발명이 모바일 장치들이나, 데스크탑 컴퓨팅, 기업 컴퓨팅 등의 다른 응용 분야들에서 사용될 수 있음을 인식할 수 있을 것이다.
그 자체로서, 모듈(50)은 작업 설명서들과 장치 설명서들을 결합하여 장치가 특정 작업에 사용될 수 있는지를 결정한다. 사용자 작업을 수행하기 위하여, 모듈(50)은 작업과 장치 설명서들의 결합 상의 정보를 획득하여 장치의 기초 지식을 결하는데, 여기서 작업 설명서는 모듈(50)이 장치 동작들을 편성하는데 사용하는 동작 스크립트의 순열을 포함한다. 나아가, 모듈(50)은 복수의 장치 설명서로부터의 기초 지식 정보를 작업 설명서 스크립트와 결합하여 사용자 작업을 위한 장치들을 제어하기 위한 특정한 스크립트를 생성한다. 장치 기초 지식 정보는 장치 설명서로부터의 기능에 근거하여 특정된다. 나아가 장치 기초 직식 정보는 장치의 제어를 결정하기 위한 상호 작용들과 파라미터 설정들을 특정한다. 장치 기초 지식은 사용될 동작과 파라미터들을 기술하는 URI(Uniform Resource Identifier)의 형태로 특정될 수 있다. 나아가, 장치 기초 지식 정보는 요구되는 기능을 성취하기 위해 결합되는 복수의 기초 지식 정보 섹션들을 포함할 수 있다. 또한, 장치 설명서는 제어기 또는 장치 소프트웨어에 의해 사용되는 다른 프로토콜들을 맵핑하는 복수의 기초 지식 정보 섹션들을 포함할 수 있다.
지금부터는 본 발명의 일 실시예에 따라 상기 방법들을 사용하여 내재하는 장치들(40)의 기능 및 지능을 강화하는 작업 편성 시스템(10)의 구현 예를 설명한다.도 2에 도시된 바와 같이, 작업 편성 시스템(10)은 사용자가 작업 제안을 시스템(10)에 요구하는 기술과 작업 제안을 해석하고 처리하는 기술들을 구현한다. 이 실시예에서, 의미적으로 풍부한 마크업 언어상의 개체들(예를 들면, 장치들)에 대한 발전 중인 온톨로지들을 포함하여, 몇몇 시멘틱 웹 기반의 툴들과 기술들이 효율적인 시스템을 만들기 위해 적용된다. 온톨로지들은 가전 장치들(40)과 사용자 작업 요구들(95)을 표시하기 위해 구조화되고, 이하에서 더 상세히 설명될 것이다.
작업 편성 모듈(50)은 사용자에게 작업 제안들을 제공하고, 사용자로부터 사용자가 선택한 작업 제안들의 수행을 편성하라는 요구들을 받아들인다. 작업 편성 모듈(50)은 사용자 인터페이스(도 2의 60)와 결합하여 최상위 계층으로서 추론 엔진(도 1b의 65)을 사용하여 선택된 작업 제안(95)을 파싱함으로써 이를 처리하고, 선택된 작업 제안을 수행할 수 있는 적절한 장치들(40)을 발견하고, 이 정보를 수행하기 위한 아래쪽 계층들(예를 들어, 모듈(70))로 전달한다. 일 예에 있어서, 추론 엔진(65)과 함께 적합한 마크업 언어가 그 언어에 의해 표현된 내용에 대해 추론하는데 사용되는데, 그에 의해 각 개체들은 서로와 통신하고 이해한다. 한가지 버전에 있어서, 시멘틱 기술들이 장치 기능과 장치들의 기능 중심의 결합을 촉진하기 위해 장치 기능 및 작업을 기술하는데 사용된다.
예를 들어, 홈 네트워크(40) 상에서는 다음과 같은 장치(40)들의 타입이 사 용된다.
TV - 오디오/비디오 보여주기
DVD - 오디오/비디오 재생, 사진 보여주기
PC - 오디오/비디오 보여주기, 사진 보여주기, 게임 플레이하기, AV 소스
리시버 - 소스를 싱크에 연결, 오디오 플레이, 라디오 플레이
냉장고 - 웹 서핑, 오디오/비디오 플레이, 제어
전등 - 제어
전화기 - 오디오 플레이, 사용자 호출, 사용자 데이터 베이스
PVR - 오디오/비디오 녹화, 중지, 재생, 사진 저장, 사진 보여주기
카메라 - 오디오/비디오 녹화, 오디오/플레이 재생, 오디오/비디오 스트리밍 보여주기 등
이와 같은 홈 네트워크(85) 상에서 가능한 작업들의 예로는 다음과 같은 것을 포함한다.
“물주기” “정원”
“재생” “영화” “매트릭스” “서라운드 사운드로”
“보여주기” “사진” “브라질”
“동기화” “MP3 플레이어”
“어둡게 하기” “전등”
“재생” “내 음악” “거실”
상기와 같은 예들(시나리오들)은 예를 들어 작업 제안을 표현하기 위한 의사 문장 언어를 사용하는데, 반면 예를 들어 장치와 기능들을 설명하기 위해 시멘틱 언어가 사용될 수 있고, 지식에 대해 추론하고 작업 요구를 수행하기 위해 추론 엔진이 사용될 수 있다. 일 예에 있어서, 온톨로지들/규칙들을 표현하기 위해 선택된 언어는 일치의 시멘틱 레벨, 고도의 탄력성 및 표현력, 타입과 포섭 관계에 대한 지원, 데이터 타입들에 대한 지원 및 제한의 표현 등을 제공한다. 지식 베이스(105)가 작업 편성 모듈(도 2의 50)에 포함된다.
다른 예에 있어서, 시멘틱 웹 기술들이 작업 편성 모듈(50)에서 활용될 수 있다. 시멘틱 웹(Semantic Web)은 정보의 의미가 잘 정의되도록 현재의 웹을 확장한 것이며, 컴퓨터들과 사람들이 더 잘 협력하도록 해준다. 시멘틱 웹을 위해 디자인된 마크업 언어는 다양한 개체들 간의 공통적인 이해를 제공한다. 시멘틱 웹 기술의 예로는 DAML+OIL, DAML-S, OWL 등이 포함되는데, 이들은 시멘틱 웹을 위해 개발되었다. 작업 편성 모듈(50)의 일 예에 있어서, 장치와 작업 온톨로지(110)들은 DAML+OIL을 사용하여 구조화되고 지식 베이스(105)에 적재된다. 장치들(40)의 다양한 속성들과 기능들이 식별되고 또한 그들 속성들 사이의 관계를 포착한 온톨로지가 구조화된다. 나아가, DAML+OIL에서의 장치 인스턴스들(115)이 온톨로지에 기초하여 구조화되는데, 여기서 인스턴스는 본질적으로 그 인터페이스와 기능의 관점에서 본 장치의 의미적 설명이다. 도 1b의 작업 편성 흐름에서 도시된 바와 같이, 사용자가 선택한 작업 제안은 요구된 바에 따라 하나 또는 그 이상의 작업들로 나누어지고 사용 가능한 장치들에 의해 수행될 수 있는 작업들의 기능들에 맵핑된다. 이 맵핑은 온톨로지 상에 표현된 정보를 추론하고 장치/사용자의 상태/선호도에 대 해 부가적인 규칙을 적용함으로써 가능하게 된다.
이제 도 2 및 도 4의 예를 참조하면, 작업 편성 모듈(50)은 필요한 때 언제나 장치 설명서를 획득할 수 있도록 장치 편성 모듈(50)에 인터페이스를 제공하는 모듈과 상호 작용하는 제어기(30) 내에 존재한다. 일 실시예에서, 존재하는 장치들에 의해 제공되는 DAML+OIL 작업 인스턴스들(120)은 지식 베이스(105)에 표명되고, 제스 법칙(Jess Rule) 및/또는 DAML+OIL로 쓰여진 미리 정의된 사용자 선호도(130)들이 또한 지식 베이스(105)에 적재된다. 나아가, 요구된 작업에 대한 장치 선호도 및 작업에 필요한 기능에 대한 속성 선호도들이 통합된다. 모든 가능한 ‘동사들’(예를 들어, “재생”)과 ‘주제어들’(예를 들어 “영화”)이 지식 베이스(105)로부터 검색되며 GUI(60) 상에 표시된다.
그 자체로서, 사용자 작업 요구는 GUI(60)를 통해 필드(예를 들어 도 2의135)들의 집합으로서 획득되며 작업 편성 모듈(50)의 지식 베이스(105)의 입력으로서 제공된다. 일 예에 있어서, 사용자로부터 획득된 입력은 모든 선택 필드들을 포함한다. 다른 예에 있어서, 사용자로부터 획득된 입력은 (a) 필수 필드: 동사, 주제어 및 내용, 장소, 단말 장치 및 (b) 선택 필드: 속성들(예를 들어, 서라운드 사운드, 와이드 스크린 등)을 포함한다.
이 예에 있어서, 사용자가 ‘동사’ 및 ‘주제어’를 선택한 뒤, 작업 편성 모듈(50)은 모듈(70) 내의 프로토콜 스택과 통신하여 ‘주제어’의 맥락에서 관련된 가능한 모든 내용을 획득한다.
사용자가 선택한 완전한 작업 제안을 획득하면, 작업 편성 모들(50)은 작업 제안 및 대응하는 작업 설명서(95)를 파싱하고 요구에 대한 솔류션을 서비스할 수 있는 장치들(40)의 모든 가능한 조합들을 계산한다. 다음, 작업 편성 모듈(50)은 선호도를 적용하고 솔류션들에 순위를 매긴 뒤 GUI(60)에 사용자를 위한 출력(75)을 표시하기 위해 전송한다.
언급한 바와 같이, 작업 편성 모듈(50)은 GUI(60)을 통해 사용자와 상호 작용하며, 추론 엔진(도 1b의 65)과 상호 작용하며, 규칙 엔진(도 2의 130)과 상호 작용한다. 작업 편성 모듈(50)은 그 외에도 온톨로지들을 사실들의 형태로 저장하고 그 데이터에 규칙들(130)을 적용하는 지식 베이스(105)를 포함한다.
이제 도 6을 참조하여, 동작 시나리오의 일 예를 설명한다.
1. 400 단계에서, 초기화 중에 장치와 작업 온톨로지들(110)이 지식 베이스(105)에 표명되는데, 여기서 온톨로지의 내용은 (‘성질 값’ ‘서브 클래스’ ‘사람’ ‘개인’)의 포맷을 가진 사실로 변환된다.
2. 405 단계에서, 장치들과 작업들의 인스턴스들(115, 120)이 또한 지식 베이스(105)에 표명된다. 이 예에서는 온톨로지들(110)이 TV, CD 플레이어, DVD 플레이어, IPAQ, 스피커, 트랜스코더(transcoder) 등의 AV 장치들에 대해 구현된다.
3. 410 단계에서, 온톨로지들(110)과 인스턴스들(115, 120)이 적재된 뒤, ‘동사들’, ‘동사들’과 관련된 ‘주제어들’ 및 장치들(40)에 의해 지원되는 ‘작업들’이 지식 베이스(105) 내의 사실들로부터 추출된다.
4. 415 단계에서, 유사한 방식으로, 위에서 식별된 작업들을 수행하는 데 필요한 ‘기능들’이 또한 지식 베이스(105) 내의 사실들로부터 추출되어 쉬운 검색 을 위해 새로운 사실들로 저장된다.
5. 420 단계에서, GUI(60)를 사용하여 사용자가 예를 들어 ‘동사’, 그 ‘동사’의 맥락과 관련된 ‘주제어’ 및 관련 내용(선택된 주제어가 속한 카테고리) 등을 선택함에 의해 작업 제안(95)을 특정/선택한다. 사용자는 또한 선호하는 위치 및/또는 요구된/선택된 작업 제안이 수행될 단말 장치(40)를 특정할 수 있다.
6. 425 단계에서, 작업을 수행하기 위해 요구되는 장치의 기능들이 식별된다(바람직하게는, 이러한 정보는 미리 계산되어서 용이하게 검출될 수 있는 사실들로 저장되어서 이 단계에서 소요되는 시간이 적어야 한다).
7. 430 단계에서, 작업 편성 모듈(50)은 필요한 기능들을 가지는 장치들(40)을 솔류션으로서 식별한다. 만일 작업이 여러 가지 다양한 기능을 요구한다면, 작업 편성 모듈(50)은 집합적으로 그 작업을 수행/서비스할 수 있는 장치들(40)의 집합을 식별한다.
8. 435 단계에서, 사용자가 선택한 작업 제안을 수행할 수 있는 장치들(40)의 집합을 식별한 후, 사용자 선호도(130)가 솔류션들의 집합에 적용되고 순위가 매겨진다.
9. 440 단계에서, 사용자에게 마침내 솔류션들의 집합이 출력(75)으로서 그들의 순위가 증가하는 순서대로 표시된다. 홈 네트워크에 대한 순위의 예로는 가정에서의 거실이 플라즈마 TV, PC, 스피커 및 IPAQ을 포함하는 것이다. 사용자는, 영화를 재생할 때 장치의 스크린 사이즈를 40 인치 이상으로 하라든지, 오디오를 재생할 때 IPAQ보다는 스피커를 선호한다든지 하는 선호도를 설정한다. “영화 매트 릭스를 거실에서 재생하라”와 같은 작업 요구에 대해, 작업 편성 모듈(50)은 요구된/선택된 작업 제안을 수행할 수 있는 다음의 장치들의 조합(솔류션들)을 식별한다: PC와 스피커, PC와 IPAQ, 그리고 플라즈마 TV. 솔류션들은 상기와 같은 사용자 선호도에 따라 순위가 매겨져서, (1) 플라즈마 TV, (2) PC와 스피커, (3) PC와 IPAQ와 같이 사용자에게 표시된다.
사용자는 솔류션들 중에서 가장 선호하는 장치들(40)의 조합을 선택하고, 작업 동작들을 사용하여 작업을 인스턴스화 하는데, 작업 동작들은 작업을 성취하기 위해 장치 설명서(도 5의 320) 상의 장치 기초 지식(380)을 사용하는 장치 동작들을 차례로 요구한다. 언급한 바와 같이, 사용자가 요구된 작업을 수행하기 위해 장치들(40)의 집합을 선택하면, 작업 편성 모듈(50)은 작업에 요구되는 장치들에 적합한 인터페이스들을 불러낸다.
도 7의 흐름도 상의 각 단계를 참조하여, 다음에는 사용자 인터페이스 모듈(60)의 실시예에서의 동작의 예를 설명한다. 사용자는 다음에 설명하는 바와 같은 네 단계를 거쳐 GUI 모듈을 사용하여 작업 요구를 증가적으로 작성할 수 있다.
1. 500 단계에서, GUI(60) 상에 유효한 ‘동사들’이 표시된다. 사용자는 리스트에서 ‘동사’를 선택하고 ‘다음’을 클릭하여 다음 단계(즉 505 단계)로 진행할 수 있다. ‘다음’ 을 클릭하기 전에는 언제든지 사용자는 선택한 ‘동사’를 변경할 수 있다.
2. 505 단계에서, 선택된 ‘동사’와 관련된 모든 ‘주제어’들의 리스트가 GUI(60) 상에 표시된다. 사용자는 리스트에서 ‘주제어’를 선택하고 ‘다음’을 클릭하여 다음 단계(즉 510 단계)로 진행할 수 있다. ‘다음’을 클릭하기 전에는 사용자는 언제든지 선택된 ‘주제어’를 변경할 수 있다. 사용자는 또한 ‘뒤로’ 또는 ‘처음부터 다시’를 클릭하여 이전 단계(즉 500 단계)로 돌아가서 선택된 ‘동사’를 변경할 수 있다.
3. 510 단계에서, 선택된 ‘주제어’에 관련된 모든 ‘내용’의 리스트가 표시된다. 사용자는 리스트 상에서 ‘내용’을 선택하고 ‘다음’을 클릭하여 다음 단계(즉 515 단계)로 진행할 수 있다. ‘다음’을 클릭하기 전에 사용자는 언제든지 선택된 ‘내용’을 변경할 수 있다. 사용자는 또한 ‘뒤로’를 클릭하여 이전 단계(즉 505 단계)로 돌아가서 선택된 ‘주제어’를 변경하거나, ‘처음부터 다시’를 클릭하여 500 단계로 돌아가 선택된 ‘동사’를 변경할 수 있다. 위 과정들 중 어떤 단계에서 또는 510 단계의 끝에서, 사용자는 작업 수행의 원하는 위치를 설정하고/설정하거나 전체 작업 또는 작업의 일부분을 수행할 단말 장치를 설정할 수 있다.
4. 515 단계에서, 작업 편성 모듈(50)은 선택된 ‘동사’, ‘주제어’, ‘내용’, 사용자 선호도(장소, GUI에 의해 설정된 최종 단말 및 사실들과 규칙들로 특정된 다른 선호도들 등) 및 지식 베이스(105) 상에 가지고 있는 존재하는 장치 및 작업들에 대한 사실들에 대해서 내부적으로 추론한다. 추론 뒤에, 작업 편성 모듈(50)은 요청된 작업을 수행할 수 있는 장치들의 모든 가능한 조합들(즉 솔류션)을 결정한다. 얻어진 솔류션들의 집합은 작업 편성 모듈(50) 내부에서 순위가 매겨지며 GUI(60)를 통하여 사용자에게 표시된다(예를 들면, 순위가 증가하는 순서대로). 515 단계에서의 처리의 예를 다음에 설명한다. 작업 편성 모듈(50)은 작업과 장치 설명서들을 읽어 들이고, 지식 베이스(105)에 이들 정보들을 사실로서 저장한다. 추론 엔진(65)은 작업과 장치 설명서들을 해석하고, 작업 및 장치 설명서들에 직접적으로 특정되지는 않았으나 클래스들이나 특성들의 형태, 또는 그들 간의 관계로서 특정되어 있는 새로운 정보를 이끌어 낸다. 작업 편성 모듈(50)은 그 정보를 가공하고 조작한다.
일 예에 있어서, 작업 편성 모듈(50)에 연관된 기본 단계들은 다음을 포함한다.
1. 작업 및 장치 설명서들을 읽어 들임
2. 작업 및 장치 설명서들에 시멘틱을 적용함
3. 파서를 사용하여 지식 베이스(105)에 적재된 작업 및 장치 설명서들을 변환함
4. 상기 설명된 바와 같이 다른 규칙들이나 질의어들을 적용함
언급한 바와 같이, 온톨로지들(110)은 작업들, 장치들 및 사용자 선호도들을 기술하기 위한 메커니즘으로서 구조화된다. 일반적으로, 온톨로지란 개념화의 특정이다. 이는 개념의 서술(정형적인 프로그램의 특정)이며 개체(예를 들면, 장치들, 사용자들 등) 또는 개체의 집합에 대해 존재할 수 있는 관계이다. 이 예에서는, 장치들 및 작업들이 그들의 기본 속성/성질들 및/또는 제공되거나 요구되는 기능들에 기초하여 기술된다. 설명서는 마크업 언어를 사용하여 부호화되는데, 이러한 설명서에 기초하여 사용자의 작업 요구가 이해되고, 처리되고, 서비스된다.
나아가, ‘기능+내용 타입’ 속성들이 온톨로지(110)에 포함될 수 있다. 온톨로지(110)의 구현예에 있어서, 장치(40)가 제공하는 각각의 기능에 대해서, 어떤 종류의 데이터가 입력으로서 허용되는지, 어떤 소스에서 장치(40)가 입력을 받아들일 수 있는지, 그리고 어떤 종류의 데이터가 (존재하는 경우) 출력으로서 생성되는지 가 또한 특정된다. 이는 매우 일반적이고 내용의 타입을 특정하지 않는 요구에 대한 답으로서 충분하다. 그러나, 만일 작업 편성 모듈(50)이 장치들에 대한 내용 타입 기반의 색인(lookup)을 제공하고자 한다면, 내용 타입(예를 들면, mp3render)을 분리된 속성이 아닌 것으로서 포함하는 기능을 표현하는 방법이 요구된다. 이는 ‘기능+내용 타입’ 속성들이 온톨로지(110)에 포함됨에 의해 성취될 수 있다.
또한, 사용자 선호도(130)를 표현하는 온톨로지가 활용될 수 있다. 구현예에서 선호도(130)는 장치 인스턴스들(115)과 작업 인스턴스들(120)이 특정된 것과 유사한 방식으로 마크업 언어로 표현될 수 있다. 이러한 설명서를 표준화된/일반적인 포맷으로 작성하고 선호도들의 집합의 다른 속성들간의 관계를 더 잘 표현하기 위해서, 사용자 선호도의 인스턴스가 구조화될 수 있는 것에 기초하여 온톨로지가 활용될 수 있다.
선호도를 이해하기 위한 메커니즘 또한 구현될 수 있다. 예로서, 작업 편성 모듈(50)은 “영화를 재생할 때에는 스크린 크기가 더 큰 장치를 선택하라”와 같은 선호도를 이해할 수 있다. 바람직하게는, 작업 편성 모듈(50)은 “플라즈마 TV가 다른 어떤 종류의 TV보다 항상 좋으며, 스크린 사이즈도 가장 크다”는 것을 이해할 수 있다. 나아가 좀더 일반적인 온톨로지들이 포함될 수 있는데 이는 모든 종 류의 장치들에 적용될 수 있으며, 심지어는 구현 당시에는 알려지지 않은 장치들에 대해서도 적용될 수 있다.
이제까지의 예들은 가전과 홈 네트워크에 관련하여 설명되었지만, 본 발명이 속하는 분야의 숙련자라면 본 발명이 모바일 개인 장치들, 데스크탑 작업들, 복잡한 기업 시스템들 등에 적용될 수 있음을 알 수 있을 것이다. 나아가 본 설명에서는 작업 편성 시스템의 실시예가 가전에 관련하여 설명되었지만, 본 발명이 속하는 기술 분야의 숙련자들은 본 발명이 개체들의 알려진 집합들이 작업과 상호작용하고 그들 개체들에 사용자 편성을 위한 간단한 방법이 필요한 다른 응용 분야(예를 들면, 다양한 동작들이나 조립 로봇들의 설정들을 특정하기 위한 생산 라인)에서도 유용하다는 것을 인식할 것이다. 나아가, 논리적으로 장치들과 분리되어 있기 때문에, 그것들이 실제 장치들과 물리적으로 결합될 수 없는 이유가 전혀 없다. 또한 실시예로서 하나의 제어기/편성 모듈만이 설명되었지만, 장치들의 집합이 제어 동작이나 장치들의 편성을 결정하는데 참여할 수 있다.
본 발명은 특정한 최적의 버전에 대해 상당히 상세하게 설명되었다. 그러나, 다른 버전들도 가능하다. 그러므로, 첨부된 청구항의 진의나 범위가 여기에 포함된 최적의 버전에 대한 설명의 범위로 제한되어서는 아니될 것이다.
본 발명에 따른 분리된 작업 및 장치 설명서를 사용한 가전 제품의 기술 방법 및 시스템에 의하면, 블랙 박스로서 동작하는 제어기 프로그램으로서보다는 탄력적인 설명서에 기술된 장치의 상호 작용을 기술하며, 사용자의 홈 디바이스 사용 법에 대한 인식 구조에 더 가깝게 일치하는 장치의 상호 작용을 허용하며, 상호 작용들이 하나의 장치에 집중되지 않도록 허용하는 작업 설명서를 제공하며, 또한 상호 작용적인 설명서와 설명서들의 상호 교환을 허용하는 사용자 작업들의 설명서를 제공함에 의해, 사용자가 장치의 기능들에 대해서 복잡한 선택을 할 필요가 없이 원하는 작업을 직접 선택하게 할 수 있다.
Claims (32)
- 장치가 수행할 수 있는 기능을 기술하는 장치 설명서(device description)로서 장치의 기능을 나타내는 단계; 및상기 장치 설명서에 기초하여, 각각이 사용자 작업을 하나 또는 그 이상의 장치 설명서들의 추상화로서 나타내는 작업 제안들을 생성하는 단계를 포함하며,이에 의해 사용자 작업들이 장치들과 분리되는 것을 특징으로 하는 작업 편성 시스템에서의 복수의 전자 장치들의 상호 작용에 의해 수행되는 사용자 작업의 표현 방법.
- 제1항에 있어서, 상기 장치 설명서 및 추상화된 장치 상호 작용들에 기초하여 장치 상호 작용들을 표현하는 단계를 더 포함하며, 이에 의해 장치 기능과 장치의 상호 작용들이 논리적으로 분리되고 장치들의 설명서와 장치들이 서로 상호 작용하는 가능한 방법들의 집합을 허용하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제1항에 있어서, 상기 작업 제안들을 생성하는 단계는,작업 외부 설명서(task external description), 작업 성질들(task properties), 작업 기능들(task functionalities) 및 작업 동작들(task actions)을 포함하는 작업 설명서들에 기초하여 작업 제안들을 생성하는 단계를 포함하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서, 상기 작업 외부 설명서는 사용자와 상호 작용하기 위한 작업 제안들의 개요를 나타내는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서, 상기 작업 성질들은 사용자 작업에 대한 정보를 표현하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서, 상기 작업 기능들은 사용자 작업을 수행하기 위해 요구되는 기능을 표현하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서, 상기 작업 동작은 요구되는 기능을 충족하는 장치들의 배열과 조합들을 기술하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제1항에 있어서, 상기 장치 설명서는 장치 기능 설명서(device functionality description)와 장치 기초 지식(device grounding)을 포함하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제8항에 있어서, 상기 장치 기능 설명서는 장치의 기능에 대한 개요를 나타내는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제8항에 있어서, 상기 장치 기초 지식은 기능 설명서에 기초한 장치의 제어를 기술하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서,작업 설명서들과 장치 설명서들을 사용하여 사용자 작업을 수행할 수 있는 장치들의 집합을 결정하는 단계를 더 포함하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제3항에 있어서,사용자 작업 설명서는 상호 작용하는 설명서와 설명서들의 상호 교환을 제공하는 시멘틱 온톨로지(semantic ontology)를 포함하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 제1항에 있어서,장치들의 기능들을 편성하여 사용자 작업들을 수행할 수 있도록 순차적이고 병행적이며 공동 작용할 수 있는 장치의 상호 작용들을 표현하는 단계를 더 포함하는 것을 특징으로 하는 사용자 작업의 표현 방법.
- 하나 또는 그 이상의 장치들로부터 기능 설명서들을 획득하고, 획득한 장치 기능 설명서들에 기초한 작업 제안들을 생성하여 각 작업 제안들이 사용자 작업을 하나 또는 그 이상의 획득한 장치 설명서들의 추상화로서 나타낼 수 있도록 하며, 여기서 장치 기능은 장치가 수행할 수 있는 기능을 나타내는 장치 설명서로서 표현되어 이에 의해 사용자 작업들이 장치들로부터 분리되도록 하는 작업 구동 제어기; 및선택된 작업 제안에 의해 표시되는 사용자 작업이 하나 또는 그 이상의 장치들에 의해 수행되도록, 작업 제안들을 디스플레이 상에 표시하여 사용자가 그로부터 선택할 수 있도록 하는 사용자 인터페이스 장치를 포함하는 것을 특징으로 하는 상호 연결된 장치들의 네트워크를 위한 작업 편성 시스템(task orchestration system).
- 제14항에 있어서, 상기 제어기에서는 장치의 상호 작용들이 장치 설명서들과 추상화된 장치 상호 작용들에 기초하여 표현되며, 이에 의해 장치 기능과 장치 상호 작용들이 논리적으로 분리되어, 장치들의 설명서와 장치들이 서로 상호 작용할 수 있는 가능한 방법들의 집합을 허용하는 것을 특징으로 하는 작업 편성 시스템.
- 제14항에 있어서, 상기 제어기는 작업 외부 설명서, 작업 성질들, 작업 기능들 및 작업 동작들을 포함하는 작업 설명서들에 기초한 작업 제안을 생성하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 작업 외부 설명서는 사용자와 상호 작용하기 위한 작업 제안들의 개요를 나타내는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 작업 성질들은 사용자 작업에 대한 정보를 표현하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 작업 기능들은 사용자 작업을 수행하기 위해 요구되는 기능을 표현하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 작업 동작은 요구되는 기능들을 충족하는 장치들의 배열과 조합들을 기술하는 것을 특징으로 하는 작업 편성 시스템.
- 제14항에 있어서, 상기 장치 설명서는 장치 기능 설명서와 장치 기초 지식을 포함하는 것을 특징으로 하는 작업 편성 시스템.
- 제21항에 있어서, 상기 기능 설명서는 장치의 기능에 대한 개요를 나타내는 것을 특징으로 하는 작업 편성 시스템.
- 제21항에 있어서, 상기 장치 기초 지식은 상기 기능 설명서에 기초한 장치의 제어를 기술하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 제어기는 상기 작업 설명서와 장치 설명서들을 사용하여 사용자 작업을 수행할 수 있는 장치들의 집합을 결정하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 작업 설명서는 상호 작용할 수 있는 설명서와 설명서들의 상호 교환을 제공하는 시멘틱 온톨로지를 포함하는 것을 특징으로 하는 작업 편성 시스템.
- 제14항에 있어서, 상기 제어기는 장치들의 기능들을 편성하여 사용자 작업들을 수행할 수 있도록 순차적이고 병행적이며 공동 작용할 수 있는 장치의 상호 작용들을 표현하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 제어기는,장치 기능 설명서들을 장치 온톨로지들로 구조화하고, 작업 설명서들을 작업 온톨로지들로 구조화하고, 상기 장치 및 작업 온톨로지들을 사용하여 사용자가 선택한 작업 제안을 사용 가능한 장치들에 의해 수행될 수 있는 작업들에 맵핑시키는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 제어기는,장치 기능 설명서들을 장치 온톨로지들로 구조화하고, 작업 설명서들을 작업 온톨로지들로 구조화하고, 상기 장치 온톨로지들에 기초하여 장치 인스턴스들을 구조화하고, 상기 작업 온톨로지들에 기초하여 작업 인스턴스들을 구조화하고, 상기 장치 및 작업 온톨로지들과 인스턴스들을 사용하여 사용자가 선택한 작업 제안을 사용 가능한 장치들에 의해 수행될 수 있는 작업들에 맵핑시키는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 제어기는 선택된 사용자 작업 제안들을 수행할 장치들의 조합들을 제어하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 사용자 인터페이스 장치는, 상기 제어기와 결합하여 사용 가능한 장치들, 작업들 및 장치 기능이 주어진 경우 가능한 작업 제안들을 표시하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 상기 사용자 인터페이스 장치는, 상기 제어기와 결합하여 사용 가능한 작업 제안들과 장치 설명서들에 기초한 옵션들을 표시하는 것을 특징으로 하는 작업 편성 시스템.
- 제16항에 있어서, 제어기가 요구되는 사용자 작업을 결정하고 사용자 작업을 수행하기 위해 사용자 작업 설명서들을 사용자 작업 설명서들에 일치시키도록 하기 위해, 각각의 작업 설명서가 온톨로지 언어로 표현되고, 그 온톨로지 언어로 장치들이 작업들을 제어기에 표현하는 것을 특징으로 하는 작업 편성 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/950,121 | 2004-09-24 | ||
US10/950,121 US8412554B2 (en) | 2004-09-24 | 2004-09-24 | Method and system for describing consumer electronics using separate task and device descriptions |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060051202A true KR20060051202A (ko) | 2006-05-19 |
KR100739733B1 KR100739733B1 (ko) | 2007-07-13 |
Family
ID=35276108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050084649A KR100739733B1 (ko) | 2004-09-24 | 2005-09-12 | 분리된 작업 및 장치 설명서를 사용한 가전 제품의 기술방법 및 시스템 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8412554B2 (ko) |
EP (1) | EP1640838B1 (ko) |
JP (1) | JP5027397B2 (ko) |
KR (1) | KR100739733B1 (ko) |
CN (1) | CN100541427C (ko) |
AT (1) | ATE376204T1 (ko) |
DE (1) | DE602005002906T2 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100727977B1 (ko) * | 2004-09-22 | 2007-06-13 | 삼성전자주식회사 | 가전 제품 상의 작업들을 편성하는 방법 및 시스템 |
US8185427B2 (en) | 2004-09-22 | 2012-05-22 | Samsung Electronics Co., Ltd. | Method and system for presenting user tasks for the control of electronic devices |
US8412554B2 (en) | 2004-09-24 | 2013-04-02 | Samsung Electronics Co., Ltd. | Method and system for describing consumer electronics using separate task and device descriptions |
US8510737B2 (en) | 2005-01-07 | 2013-08-13 | Samsung Electronics Co., Ltd. | Method and system for prioritizing tasks made available by devices in a network |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8069422B2 (en) * | 2005-01-10 | 2011-11-29 | Samsung Electronics, Co., Ltd. | Contextual task recommendation system and method for determining user's context and suggesting tasks |
JP2006236140A (ja) * | 2005-02-25 | 2006-09-07 | Toshiba Corp | 情報管理装置、情報管理方法、及び情報管理プログラム |
US8205013B2 (en) * | 2005-05-02 | 2012-06-19 | Samsung Electronics Co., Ltd. | Method and system for aggregating the control of middleware control points |
US8028283B2 (en) * | 2006-03-20 | 2011-09-27 | Samsung Electronics Co., Ltd. | Method and system for automated invocation of device functionalities in a network |
US20070233287A1 (en) * | 2006-03-30 | 2007-10-04 | Samsung Electronics Co., Ltd. | Dynamic generation of tasks in resource constrained devices |
US20070261055A1 (en) * | 2006-05-04 | 2007-11-08 | Samsung Electronics Co., Ltd. | Method and system for the generic and flexible access of available tasks through a user interface |
US20070279389A1 (en) * | 2006-05-31 | 2007-12-06 | Samsung Electronics Co., Ltd. | Method of task-oriented universal remote control user interface |
US7945470B1 (en) | 2006-09-29 | 2011-05-17 | Amazon Technologies, Inc. | Facilitating performance of submitted tasks by mobile task performers |
US8324826B2 (en) | 2006-09-29 | 2012-12-04 | Koninklijke Philips Electronics N.V. | Method and device for composing a lighting atmosphere from an abstract description and lighting atmosphere composition system |
US8204856B2 (en) | 2007-03-15 | 2012-06-19 | Google Inc. | Database replication |
KR101493692B1 (ko) * | 2007-06-22 | 2015-02-16 | 삼성전자주식회사 | 이벤트 메시지 전송 방법, 이벤트 메시지 수신 방법,피제어 장치 및 제어 포인트 |
US8214832B2 (en) * | 2007-09-19 | 2012-07-03 | International Business Machines Corporation | Techniques for implementing separation of duties using prime numbers |
CN102231194A (zh) * | 2009-10-30 | 2011-11-02 | 国际商业机器公司 | 一种管理对象的生命周期的方法和系统 |
US10223637B1 (en) | 2013-05-30 | 2019-03-05 | Google Llc | Predicting accuracy of submitted data |
JP2018194900A (ja) * | 2017-05-12 | 2018-12-06 | 富士通株式会社 | 情報処理装置、情報処理プログラムおよび情報処理方法 |
Family Cites Families (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05197573A (ja) * | 1991-08-26 | 1993-08-06 | Hewlett Packard Co <Hp> | タスク指向パラダイムによるタスク管理システム |
US5410326A (en) * | 1992-12-04 | 1995-04-25 | Goldstein; Steven W. | Programmable remote control device for interacting with a plurality of remotely controlled devices |
JP3408850B2 (ja) * | 1992-12-09 | 2003-05-19 | 三菱電機株式会社 | クライアント・サーバシステムおよびその制御方法、並びにクライアント機装置 |
EP0626635B1 (en) | 1993-05-24 | 2003-03-05 | Sun Microsystems, Inc. | Improved graphical user interface with method for interfacing to remote devices |
US5812865A (en) * | 1993-12-03 | 1998-09-22 | Xerox Corporation | Specifying and establishing communication data paths between particular media devices in multiple media device computing systems based on context of a user or users |
US5555376A (en) * | 1993-12-03 | 1996-09-10 | Xerox Corporation | Method for granting a user request having locational and contextual attributes consistent with user policies for devices having locational attributes consistent with the user request |
JP3488525B2 (ja) * | 1994-12-13 | 2004-01-19 | 富士通株式会社 | ヘルプ画面表示方法およびヘルプ画面表示装置 |
US5910799A (en) | 1996-04-09 | 1999-06-08 | International Business Machines Corporation | Location motion sensitive user interface |
JP3857388B2 (ja) * | 1997-06-27 | 2006-12-13 | 富士通株式会社 | 移動通信端末 |
US6421069B1 (en) | 1997-07-31 | 2002-07-16 | Sony Corporation | Method and apparatus for including self-describing information within devices |
JPH11352446A (ja) | 1998-06-10 | 1999-12-24 | Sony Corp | 基板組み合わせ指示装置 |
US6563430B1 (en) * | 1998-12-11 | 2003-05-13 | Koninklijke Philips Electronics N.V. | Remote control device with location dependent interface |
EP1060448A1 (en) | 1998-11-10 | 2000-12-20 | Koninklijke Philips Electronics N.V. | Upgrading of synergetic aspects of home networks |
KR20000033089A (ko) | 1998-11-19 | 2000-06-15 | 윤종용 | 메뉴 기능 안내 방법 |
US7046263B1 (en) * | 1998-12-18 | 2006-05-16 | Tangis Corporation | Requesting computer user's context data |
US7225229B1 (en) * | 1998-12-18 | 2007-05-29 | Tangis Corporation | Automated pushing of computer user's context data to clients |
US6848104B1 (en) | 1998-12-21 | 2005-01-25 | Koninklijke Philips Electronics N.V. | Clustering of task-associated objects for effecting tasks among a system and its environmental devices |
EP1057302A1 (en) | 1998-12-29 | 2000-12-06 | Koninklijke Philips Electronics N.V. | Home control system with distributed network devices |
US6957075B1 (en) * | 1999-02-01 | 2005-10-18 | Intel Corporation | Method and apparatus for providing a location based appliance personality |
JP4258585B2 (ja) | 1999-03-19 | 2009-04-30 | 株式会社エクォス・リサーチ | 目的地設定装置 |
AU4183600A (en) | 1999-03-30 | 2000-10-16 | Sony Electronics Inc. | A method and a device for managing resources in a network |
US6256019B1 (en) * | 1999-03-30 | 2001-07-03 | Eremote, Inc. | Methods of using a controller for controlling multi-user access to the functionality of consumer devices |
US6567840B1 (en) | 1999-05-14 | 2003-05-20 | Honeywell Inc. | Task scheduling and message passing |
US20010032132A1 (en) * | 2000-01-28 | 2001-10-18 | Dan Moran | System for message delivery in interactive communication networks |
WO2001069380A2 (en) | 2000-03-14 | 2001-09-20 | Edapta, Inc. | A system and method for enabling dynamically adaptable user interfaces for electronic devices |
US7076255B2 (en) * | 2000-04-05 | 2006-07-11 | Microsoft Corporation | Context-aware and location-aware cellular phones and methods |
JP4576675B2 (ja) | 2000-06-30 | 2010-11-10 | ソニー株式会社 | 制御システム、制御機器及びサーバ |
WO2002009456A2 (en) * | 2000-07-20 | 2002-01-31 | Aeptec Microsystems, Inc. | Method, system, and protocol for location-aware mobile devices |
JP2002049556A (ja) | 2000-08-02 | 2002-02-15 | Sharp Corp | 家庭内メディア配信システム |
JP2002063033A (ja) | 2000-08-21 | 2002-02-28 | Toko Seiki Co Ltd | オントロジを備えた知識管理システム |
US6931630B1 (en) * | 2000-09-27 | 2005-08-16 | International Business Machines Corporation | Method of, system for, and computer program product for providing automatic identification of a computer program code candidate for web deployment or a stored procedure |
JP4543532B2 (ja) | 2000-10-06 | 2010-09-15 | ソニー株式会社 | 情報通信システム |
GB2386724A (en) * | 2000-10-16 | 2003-09-24 | Tangis Corp | Dynamically determining appropriate computer interfaces |
US7290039B1 (en) * | 2001-02-27 | 2007-10-30 | Microsoft Corporation | Intent based processing |
US20020138327A1 (en) * | 2001-03-26 | 2002-09-26 | Mello Celso Luis | System for remotely managing elevator mechanic service routine |
GB0111431D0 (en) | 2001-05-11 | 2001-07-04 | Koninkl Philips Electronics Nv | A real-world representation system and language |
US7206559B2 (en) * | 2001-10-16 | 2007-04-17 | Hewlett-Packard Development Company, L.P. | System and method for a mobile computing device to control appliances |
US6954737B2 (en) * | 2001-11-05 | 2005-10-11 | Johnsondiversey, Inc. | Method and apparatus for work management for facility maintenance |
JP4164280B2 (ja) * | 2002-04-11 | 2008-10-15 | キヤノン株式会社 | 周辺機器およびジョブ管理方法およびコンピュータが読み取り可能な記憶媒体およびプログラム |
US7123925B2 (en) * | 2002-06-18 | 2006-10-17 | British Telecommunications Public Limited Company | Method and apparatus for locating devices |
US7170422B2 (en) * | 2002-06-24 | 2007-01-30 | Matsushita Electric Industrial Co., Ltd. | Personal programmable universal remote control |
US6792323B2 (en) * | 2002-06-27 | 2004-09-14 | Openpeak Inc. | Method, system, and computer program product for managing controlled residential or non-residential environments |
US7024256B2 (en) * | 2002-06-27 | 2006-04-04 | Openpeak Inc. | Method, system, and computer program product for automatically managing components within a controlled environment |
WO2004019225A1 (ja) * | 2002-08-26 | 2004-03-04 | Fujitsu Limited | 状況付情報を処理する装置および方法 |
RU2348964C2 (ru) | 2002-09-30 | 2009-03-10 | Майкрософт Корпорейшн | Система и способ для обеспечения известности элементов пользовательского интерфейса для приложения и пользователя |
US20040100505A1 (en) | 2002-11-21 | 2004-05-27 | Cazier Robert Paul | System for and method of prioritizing menu information |
US8561069B2 (en) * | 2002-12-19 | 2013-10-15 | Fujitsu Limited | Task computing |
WO2004062227A2 (en) | 2003-01-06 | 2004-07-22 | Koninklijke Philips Electronics N.V. | Multi-factor application selection |
US8607280B2 (en) * | 2003-01-08 | 2013-12-10 | Intel Corporation | Resource and capability borrowing |
US20040176118A1 (en) | 2003-02-18 | 2004-09-09 | Michael Strittmatter | Service attribute based filtering system and method |
JP2004266453A (ja) | 2003-02-28 | 2004-09-24 | Toshiba Corp | ネットワークシステム、サーバ機器および通信方法 |
FR2852173B1 (fr) | 2003-03-06 | 2005-05-27 | France Telecom | Systeme de creation d'ambiance et d'environnement de personnes a l'aide d'equipements electroniques multisensoriels |
KR20040080663A (ko) | 2003-03-12 | 2004-09-20 | 삼성전자주식회사 | 유비퀴터스 서비스 기능을 가지는 사설 네트워크 시스템및 그의 동작방법 |
US7064675B2 (en) * | 2003-08-15 | 2006-06-20 | Microsoft Corporation | Context-sensitive remote controls |
EP1526457B1 (en) * | 2003-10-22 | 2013-03-13 | Sony Deutschland GmbH | Context-aware automatic service discovery and execution engine in mobile ad-hoc networks |
KR100651729B1 (ko) | 2003-11-14 | 2006-12-06 | 한국전자통신연구원 | 홈네트워크 환경에서의 멀티-모달 상황 인식어플리케이션을 위한 시스템 및 방법 |
US7526464B2 (en) * | 2003-11-28 | 2009-04-28 | Manyworlds, Inc. | Adaptive fuzzy network system and method |
US7496500B2 (en) | 2004-03-01 | 2009-02-24 | Microsoft Corporation | Systems and methods that determine intent of data and respond to the data based on the intent |
US7081203B2 (en) * | 2004-03-16 | 2006-07-25 | Glenn Helm | Compact surface mounted on-site wastewater treatment unit |
US7522549B2 (en) * | 2004-04-16 | 2009-04-21 | Broadcom Corporation | Registering access device multimedia content via a broadband access gateway |
EP1759289A4 (en) * | 2004-04-28 | 2008-08-20 | Fujitsu Ltd | SEMANTIC TASK DATA PROCESSING |
US20050267770A1 (en) * | 2004-05-26 | 2005-12-01 | International Business Machines Corporation | Methods and apparatus for performing task management based on user context |
US8099313B2 (en) * | 2004-09-22 | 2012-01-17 | Samsung Electronics Co., Ltd. | Method and system for the orchestration of tasks on consumer electronics |
US8185427B2 (en) * | 2004-09-22 | 2012-05-22 | Samsung Electronics Co., Ltd. | Method and system for presenting user tasks for the control of electronic devices |
US8412554B2 (en) | 2004-09-24 | 2013-04-02 | Samsung Electronics Co., Ltd. | Method and system for describing consumer electronics using separate task and device descriptions |
KR100622303B1 (ko) | 2004-12-07 | 2006-09-19 | 한국전자통신연구원 | 디지털 홈 네트워크 시스템의 지능형 관리 장치 및 관리방법 |
US7613285B2 (en) * | 2004-12-07 | 2009-11-03 | Electronics And Telecommunications Research Institute | System and method for service-oriented automatic remote control, remote server, and remote control agent |
KR100682995B1 (ko) | 2004-12-16 | 2007-02-15 | 한국전자통신연구원 | 유비쿼터스 기반의 상황 정보 제공 서비스 시스템 및 그방법 |
US8510737B2 (en) * | 2005-01-07 | 2013-08-13 | Samsung Electronics Co., Ltd. | Method and system for prioritizing tasks made available by devices in a network |
US8069422B2 (en) * | 2005-01-10 | 2011-11-29 | Samsung Electronics, Co., Ltd. | Contextual task recommendation system and method for determining user's context and suggesting tasks |
US8972872B2 (en) * | 2006-03-27 | 2015-03-03 | Fujitsu Limited | Building computing applications based upon metadata |
US20070233287A1 (en) | 2006-03-30 | 2007-10-04 | Samsung Electronics Co., Ltd. | Dynamic generation of tasks in resource constrained devices |
-
2004
- 2004-09-24 US US10/950,121 patent/US8412554B2/en not_active Expired - Fee Related
-
2005
- 2005-09-12 KR KR1020050084649A patent/KR100739733B1/ko not_active IP Right Cessation
- 2005-09-15 DE DE602005002906T patent/DE602005002906T2/de active Active
- 2005-09-15 EP EP05255716A patent/EP1640838B1/en not_active Not-in-force
- 2005-09-15 AT AT05255716T patent/ATE376204T1/de active
- 2005-09-21 JP JP2005274135A patent/JP5027397B2/ja not_active Expired - Fee Related
- 2005-09-22 CN CNB2005101049529A patent/CN100541427C/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100727977B1 (ko) * | 2004-09-22 | 2007-06-13 | 삼성전자주식회사 | 가전 제품 상의 작업들을 편성하는 방법 및 시스템 |
US8099313B2 (en) | 2004-09-22 | 2012-01-17 | Samsung Electronics Co., Ltd. | Method and system for the orchestration of tasks on consumer electronics |
US8185427B2 (en) | 2004-09-22 | 2012-05-22 | Samsung Electronics Co., Ltd. | Method and system for presenting user tasks for the control of electronic devices |
US8412554B2 (en) | 2004-09-24 | 2013-04-02 | Samsung Electronics Co., Ltd. | Method and system for describing consumer electronics using separate task and device descriptions |
US8510737B2 (en) | 2005-01-07 | 2013-08-13 | Samsung Electronics Co., Ltd. | Method and system for prioritizing tasks made available by devices in a network |
Also Published As
Publication number | Publication date |
---|---|
KR100739733B1 (ko) | 2007-07-13 |
CN1855038A (zh) | 2006-11-01 |
EP1640838A1 (en) | 2006-03-29 |
US8412554B2 (en) | 2013-04-02 |
JP5027397B2 (ja) | 2012-09-19 |
DE602005002906D1 (de) | 2007-11-29 |
CN100541427C (zh) | 2009-09-16 |
US20060069602A1 (en) | 2006-03-30 |
DE602005002906T2 (de) | 2008-07-24 |
JP2006092550A (ja) | 2006-04-06 |
ATE376204T1 (de) | 2007-11-15 |
EP1640838B1 (en) | 2007-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100739732B1 (ko) | 전자 장치의 제어를 위한 사용자 작업을 제시하는 방법 및시스템 | |
KR100727977B1 (ko) | 가전 제품 상의 작업들을 편성하는 방법 및 시스템 | |
KR100739733B1 (ko) | 분리된 작업 및 장치 설명서를 사용한 가전 제품의 기술방법 및 시스템 | |
RU2609075C2 (ru) | Расширенное меню поиска и конфигурация для компьютерных приложений | |
US8510453B2 (en) | Framework for correlating content on a local network with information on an external network | |
CN111372109B (zh) | 一种智能电视以及信息交互方法 | |
US8935305B2 (en) | Sequential semantic representations for media curation | |
TW200411553A (en) | System and method for making user interface elements known to an application and user | |
WO2008140270A1 (en) | Method and system for providing relevant information to a user of a device in a local network | |
CN111914134A (zh) | 一种关联推荐方法、智能设备及服务设备 | |
WO2022012234A1 (zh) | 一种关联推荐方法、智能设备及服务设备 | |
CN113076427B (zh) | 一种媒资资源搜索方法、显示设备及服务器 | |
CN118779402A (zh) | 一种终端设备及检索方法 | |
CN118445485A (zh) | 一种显示设备及语音搜索方法 | |
CN117672206A (zh) | 一种显示设备及语音控制方法 | |
CN118733917A (zh) | 一种显示设备与用户场景创建方法 | |
CN118586501A (zh) | 显示设备及基于大语言模型的任务处理方法 | |
Gilroy et al. | SBML: a user interface mark-up language based on interaction style | |
Korhonen | Interactive television usability: Case: TELE Omavisio | |
Lino et al. | Exploring Semantic Representation for t-learning on the ITV Platform |
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: 20120615 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130624 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |