















본 발명은 넓게는 정보 처리(information processing)에 관한 것이며, 구체적으로는, 상호대화 환경에서 하나 이상의 아바타(avatar)의 제어, 훈련 및 자율적인 실행(autonomous execution)을 위한 시스템 및 방법에 관한 것이다. 그러나 이에 국한되지 않는다.FIELD OF THE INVENTION The present invention relates generally to information processing, and in particular, to systems and methods for control, training and autonomous execution of one or more avatars in an interactive environment. But it is not limited to this.
최근, 새롭고 강력한 컴퓨팅 플랫폼의 개발에 의해, 사용자가 광범위한 시뮬레이트된 활동을 할 수 있게 해주는 더 강력한 컴퓨터 시뮬레이션과 컴퓨터 게임이 개발될 수 있었다. 이러한 컴퓨팅 플랫폼은 상호대화 컴퓨터 환경에서의 사용자의 경험을 보강시킬 수 있는 다양한 형태의 인공 지능을 통합시키기 위해 시작되었다. 진보된 컴퓨팅 플랫폼이 제공하는 응용의 범위에서, 하나 이상의 자동화된 페르소나(automated person)와 지능기반 에이전트(intelligent agent)의 사용을 포함하는 것들이 있다. 이러한 페르소나, 또는 에이전트는, 특정 경우, “아바타”라고 일컬어질 수 있다. 왜냐하면, 이들은 상호대화 환경에서 다양한 인간 모습의 형상으로 묘사될 수 있기 때문이다.Recently, with the development of new and powerful computing platforms, more powerful computer simulations and computer games have been developed that allow users to perform a wide range of simulated activities. These computing platforms have begun to integrate various forms of artificial intelligence that can enhance the user's experience in interactive computer environments. In the range of applications provided by advanced computing platforms, there are those that include the use of one or more automated persons and intelligent agents. Such a persona, or agent, may in some cases be referred to as an "avatar". For they can be depicted in various human figures in an interactive environment.
상호대화 환경에서 지능기반 에이전트의 제어와 자율 동작에 관련된 연구는 복합적인 결과를 도출하였다. 컴퓨터에 의해 생성된 환경에서 렌더링될 수 있는 인간 움직임의 메커니즘을 완전히 이해하도록 상당한 수준의 연구 작업이 수행되었지만, 이러한 연구는 이들 지능기반 페르소나의 직접적인 제어에 관계없이 상호대화 환경 내에서 상기 페르소나가 자율적으로 동작하는 것을 가능하게 하기 위해 사용될 특징, 방법, 또는 기법을 정의하는데 거의 도움이 되지 못했다. 실제로, 인공 추론(artificial reasoning)의 최첨단 형태는 여전히 대부분이 초기 단계에 머물러 있으며, 사용자의 과거 및 현재 행동을 토대로, 연상 네트워크를 효과적으로 캡처, 분석, 구축하며, 콘텐츠의 형태로 조직된 저장 지식과 관련 메타-데이터를 연상 네트워크에 적용하여, 빠른 조직화, 검색, 상호대화 환경에서 이러한 지식을 지능기반 페르소나의 실시간 자율적 동작으로의 적용이 가능해질 수 있다.Studies on intelligence-based agent control and autonomous behavior in interactive environments have yielded complex results. While considerable research has been done to fully understand the mechanisms of human movement that can be rendered in a computer-generated environment, these studies are autonomous in the interactive environment, regardless of the direct control of these intelligence-based personas. Little help has been made in defining the features, methods, or techniques that will be used to enable it to work with. Indeed, the most advanced forms of artificial reasoning are still largely in their infancy, based on the past and present behavior of users, effectively capturing, analyzing, and building association networks, and storing knowledge organized in the form of content. By applying relevant meta-data to associative networks, this knowledge can be applied to real-time autonomous operation of intelligent persona in a fast organization, search, and interactive environment.
따라서 다양한 상호대화 환경에서, 지능기반 페르소나를 제어함에 있어 사용자의 직접 관여 여부와는 관계없이, 이벤트의 연속적인 모니터링을 제공할 수 있고, 상기 이벤트에 대한 사용자 응답을 능동적으로 모니터링하며, 제어된 동작을 지능기반 페르소나에게 적용하기 위한 시스템과 방법이 현재, 긴급하게 요구된다.Therefore, in various interactive environments, regardless of the direct involvement of the user in controlling the intelligent persona, it is possible to provide continuous monitoring of the event, actively monitor the user response to the event, and control the operation. There is a pressing need for a system and method for applying this to intelligence-based personas.
상호대화 환경의 각각의 사용자에 대한 하나 이상의 아바타를 실행시키고 훈련하는 시스템이 제공되며, 상기 시스템은 각각의 사용자가 상기 하나 이상의 아바타를 제어하는 동안, 상호대화 환경에서의 이벤트에 대한 각각의 사용자의 응답을 지속적으로 모니터링하는 지식 엔진과, 상호대화 환경에서의 이벤트에 대한 모니터링되는 각각의 사용자 응답을 저장하는 지식 베이스와, 상기 하나 이상의 아바타의 각각의 사용자의 제어에 관계없이, 저장된 모니터링된 응답을 기초로 하여, 상호대화 환경에서 각각의 사용자에 대한 하나 이상의 아바타의 하나 이상의 동작을 제어하는 동작 엔진을 포함한다.A system is provided for executing and training one or more avatars for each user of an interactive environment, wherein each system controls each user for events in the interactive environment while each user controls the one or more avatars. A knowledge base that continuously monitors responses, a knowledge base storing each monitored user response to events in an interactive environment, and a stored monitored response regardless of the control of each user of the one or more avatars. On the basis, the motion engine controls one or more motions of one or more avatars for each user in an interactive environment.
도 1은 하나의 실시예에서의 서버와 다양한 클라이언트 장치 간의 네트워크연결을 도시한 블록 다이어그램이다.1 is a block diagram illustrating a network connection between a server and various client devices in one embodiment.
도 2는 하나의 실시예에서의 스탠드얼론 클라이언트 장치를 도시한 블록 다이어그램이다.2 is a block diagram illustrating a standalone client device in one embodiment.
도 3은 하나의 실시예에서의 동작 엔진의 구성요소를 도시한 블록 다이어그램이다.3 is a block diagram illustrating components of an operation engine in one embodiment.
도 4는 하나의 실시예에서의 지식 엔진의 구성요소를 도시한 블록 다이어그램이다.4 is a block diagram illustrating components of the knowledge engine in one embodiment.
도 5A는 하나의 실시예에서의 서버 장치의 구성요소를 도시한 블록 다이어그램이다.5A is a block diagram illustrating components of a server apparatus in one embodiment.
도 5B는 하나의 실시예에서의 클라이언트 장치의 구성요소를 도시한 블록 다이어그램이다.5B is a block diagram illustrating components of a client device in one embodiment.
도 6A는 하나의 실시예에서의 서버 장치의 구성요소를 도시한 블록 다이어그 램이다.FIG. 6A is a block diagram illustrating components of a server device in one embodiment. FIG.
도 6B는 하나의 실시예에서 클라이언트 장치의 구성요소를 도시한 블록 다이어그램이다.6B is a block diagram illustrating components of a client device in one embodiment.
도 7은 하나의 실시예에서 사용자 응답을 모니터링하고, 분류하며, 저장하기 위한 방법을 도시하는 흐름도이다.7 is a flowchart illustrating a method for monitoring, classifying, and storing user responses in one embodiment.
도 8은 하나의 실시예에서 사용자 응답을 평가하고 평가된 사용자 응답을 기초로 아바타의 동작을 제어하는 방법을 도시한 흐름도이다.8 is a flowchart illustrating a method of evaluating a user response and controlling an operation of an avatar based on the evaluated user response in one embodiment.
도 9는 하나의 실시예에서 사용자 응답에 대한 패턴 분석을 적용하기 위한 방법을 도시한 흐름도이다.9 is a flow diagram illustrating a method for applying pattern analysis for a user response in one embodiment.
도 10은 하나의 실시예에서 사용에게 경보하고, 사용자 응답을 모니터링하기 위한 방법을 도시하는 흐름도이다.10 is a flow diagram illustrating a method for alerting for use and monitoring a user response in one embodiment.
도 11은 하나의 실시예에서 상호대화 환경의 작동 모드를 제어하기 위한 방법을 도시하는 흐름도이다.FIG. 11 is a flow diagram illustrating a method for controlling an operating mode of an interactive environment in one embodiment.
도 12는 하나의 실시예에서 상호대화 환경에서의 아바타의 자율 작동을 위한 방법을 도시한 흐름도이다.12 is a flowchart illustrating a method for autonomous operation of an avatar in an interactive environment in one embodiment.
도 13은 하나의 실시예에서 상호대화 환경의 경쟁적 작동 모드에서 아바타의 실행을 위한 동작을 결정하기 위한 방법을 도시하는 흐름도이다.FIG. 13 is a flow diagram illustrating a method for determining an action for execution of an avatar in a competitive mode of operation of an interactive environment in one embodiment.
도 14는 하나의 실시예에서 상호대화 환경의 조력 작동 모드에서 아바타의 실행을 위한 동작을 결정하는 방법을 도시하는 흐름도이다.FIG. 14 is a flow diagram illustrating a method of determining an action for execution of an avatar in a tidal mode of operation of an interactive environment in one embodiment.
다양한 동작들은 각각 기재된 실시예를 이해하는데 가장 도움이 되는 방식으로, 다수의 개별 단계들로 기재될 것이다. 그러나 기재의 순서는 이들 동작이 반드시 이 순서에 따라야 함을 의미하지 않는다. 특히, 이들 동작은 제공되는 순서로 수행될 필요가 없다.Various operations will be described in numerous discrete steps, in a manner that is most helpful in understanding each described embodiment. However, the order of description does not imply that these operations must be in this order. In particular, these operations need not be performed in the order in which they are presented.
다음의 설명은“하나의 실시예에서”라는 어구를 반복적으로 사용하지만, 보통 이러한 구문이 하나의 동일한 실시예를 일컫는 것은 아니다.The following description uses the phrase “in one embodiment” repeatedly, but this phrase does not usually refer to the same embodiment.
도 1은 다수의 클라이언트 장치(104a 내지 104d)와, 네트워크(106)와, 다수의 서버(102a 내지 102d)로 구성된 시스템(100)을 도시한다. 서버 장치(102a 내지 102d) 간의 상호대화 컴퓨팅 및 통신을 위한 시스템에 다양한 클라이언트 장치(104a 내지 104d)가 포함될 수 있다. 클라이언트 장치(104a)는 개인용 컴퓨터를 나타내며, 클라이언트 장치(104b)는 비디오 게임 스테이션(예를 들어, Microsoft Xbox, Microsoft Xbox 360, 또는 Nintendo play station)을 나타낸다. 클라이언트 장치(104c)는 핸드헬드 장치(가령, PDA, 또는 Sony PlayStation, 또는 Nintendo Game Boy 등의 다양한 핸드헬드 게임 장치 중 임의의 것)를 나타내고, 클라이언트 장치(104d)는 휴대용 컴퓨터(portable computer)를 나타낸다. 시스템(100)에 포함된 네트워크(106)는, 로컬 영역 네트워크, 광역 네트워크, 인터넷, 무선 네트워크, 또는 네트워킹 시스템(유선, 무선 및 광통신 채널 및 장치)의 조합 등의 다수의 네트워크 중 임의의 것일 수 있다.1 shows a
도 2는 스탠드얼론(standalone) 환경에서의 클라이언트 장치(104)를 도시한 다. 나타나는 바와 같이, 클라이언트 장치(104)가 하나 이상의 입력 장치(202)와, 통신 인터페이스(204)와, ROM(Read Only Memory)(206)와, 저장 장치(208)와, 중앙 처리 유닛(214)과, 하나 이상의 출력 장치(210)와, 프로그램 메모리(212)를 포함한다. 상기 하나 이상의 출력 장치(210)는 데스크탑 컴퓨터 모니터, 랩탑 컴퓨터의 디스플레이, 모바일 및 핸드헬드형 장치 디스플레이, 또는 컴퓨터 게임 장치(가령, Xbox, Xbox360 등)로 연결되는 텔레비전의 캐소드 레이 튜브(Cathode Ray Tube) 디스플레이 일 수 있다. 각각의 이러한 모듈은 모듈간 통신을 위해 통신 버스(216)로 통신가능하도록 연결된다. 프로그램 메모리(212)가 몇 개의 프로그램 구성요소를 포함하며, 이 구성요소는 상호대화 환경에서 사용자 응답 및 이벤트를 모니터링하고, 상기 상호대화 환경에서 하나 이상의 아바타의 동작을 제공하기 위해 사용될 소프트웨어-구현형 시스템을 포함한다. 도면에서 나타나다시피, 프로그램 메모리(212)는 지식 베이스(knowledge base, 218)와, 지식 엔진(knowledge engine, 220)과, 동작 엔진(action engine, 222)과, 상호대화 컴퓨터-발생형 환경(interactive computer-generated environment, 224)과, 운영 체제(operating system, 226)를 포함한다. 중앙 프로세서(214)는 커맨드를 송신하고, 프로그램 메모리(2121)로부터 통신 버스(216)를 통해 데이터를 수신함으로써, 프로그램 메모리(212)와 상호대화한다.2 shows a
도 2에서 도시된 것과 같은 스탠드얼론형 환경에서, 예를 들어, Sony PlayStation, 또는 Nintendo GameBoy와 같은 게임 스테이션(클라이언트 장치(104b))이 상호대화 환경(224)에서의 이벤트를 지속적으로 모니터링하고, 상기 상호대화 환경(224)의 이러한 이벤트에 대한 사용자 응답을 모니터링하기 위한 지식 엔진(220)을 포함한다. 지식 엔진(220)은 사용자 응답을 능동적으로 분석하고, 관련짓고, 분류하며, 사용자 응답의 이러한 분류된 연관성(association)을 지식 베이스(218)에 저장한다. 소프트웨어에 의해 구현되는 시스템에서, 상호대화 환경(224)에서 하나 이상의 아바타가 인간 사용자에 의해 제어될 수 있다. 그러나 지식 엔진(220)은 각각의 사용자의 응답을 능동적으로 모니터링하여, 상호대화 환경(224)에서 발생하는 무수한 이벤트에 대한 사용자 응답의 범위를 나타내는 응답과 이벤트 간의 연관성의 지식 베이스를 구축할 수 있다. 상호대화 환경(224)에서의 아바타의 동작의 실제 제어가, 지식 엔진(220)에 의한 요청의 발생 후에 동작 엔진(222)에 의해 수행된다.In a standalone environment such as that shown in FIG. 2, for example, a game station (
도 3은 동작 엔진(222)을 포함하는 몇 개의 구성요소를 도시한다. 이들 구성요소는 소프트웨어에 의해 구현되는 시스템의 대안적 실시예 각각에 공통적이다. 나타나다시피, 스탠드얼론형의 특정 예시에서, 등록된 사용자가 상호대화 환경(224)에서 하나 이상의 아바타를 활성화하고, 사용할 수 있게 하도록, 각각의 새로운 가입자, 또는 사용자를 등록하기 위한 가입자 등록 구성요소(302)가 사용된다. 아바타 활성화 구성요소(304)가 상호대화 환경(224)에서 등록된 사용자에 의해 사용될 각각의 새로운 아바타를 활성화시키기 위해 사용된다. 등록된 사용자만 상호대화 환경(224)에서의 동작에 대해 아바타를 활성화시키도록 허가받는다. 동작 실행 구성요소(306)는, 지식 엔진(220)으로부터의 하나 이상의 요청을 기반으로 상호대화 환경(224)에서의 아바타의 동작을 제어하는 것을 담당한다. 동작 실행 구성 요소(306)에 의해 수행되는 동작은, 아바타 제어 규칙 데이터베이스(308)에 저장된 하나 이상의 제어 규칙을 기반으로 한다. 데이터베이스(308)는 상호대화 환경(224)에서의 아바타의 동작을 제어하기 위한 규칙의 레포지토리(repository)를 나타낸다. 지식 엔진 인터페이스(310)는 지식 엔진(220)과 동작 엔진(222) 사이의 통신 인터페이스이며, 동작 실행 구성요소(306)에 의한 실행을 위한, 지식 엔진(220)으로부터의 요청을 수신하도록 사용된다. 이들 요청은 아바타 제어 규칙 데이터베이스(308)에 저장된 하나 이상의 제어 규칙에 의해 구현된다.3 illustrates several components including an
소프트웨어에 의해 구현되는 시스템의 특히 중요한 양태는, 동작 엔진은, 하나 이상의 전문가 시스템(expert system), 신경 네트워크, 또는 그 밖의 다른 형태의 컴퓨터 지능(computational intelligence)에 따르는 인공 지능 엔진으로서 구현될 수 있다는 것이다. 그러나 이러한 인공 지능 엔진은, 반드시 지식 엔진(220)에 의한 요청의 발생에 의해 지시받는다. 지식 엔진(220)은 이벤트와 사용자 응답 간의 저장된 연관성(association)과 통합되고, 상기 저장된 연관성을 능동적으로 검색하여, 상호대화 환경(224)에서의 자율적 작동 모드에서 동작할 때, 아바타에 의해 어떠한 동작이 구현되어야 하는가를 결정한다. 상호 대하 환경(224)에서의 이벤트에 대한 사용자 응답의 이전에 판단된 패턴을 기초로 하는 요청을 기반으로 동작 엔진(222) 내의 동작 실행 구성요소(306)가 동작을 구현함을 보장하기 위해, 지식 엔진(220)에 의해 요청이 발생된다. 이러한 방식으로, 사용자가 상호대화 환경(224)에서의 하나 이상의 아바타를 능동적으로 제어하지 않을 때, 상호대화 환경(224)에서의 하나 이상의 사용자의 아바타의 자율적 동작이 사용자의 응답을 거 의 정확하게 모방할 것이다.A particularly important aspect of a system implemented by software is that the operation engine may be implemented as an artificial intelligence engine that conforms to one or more expert systems, neural networks, or other forms of computer intelligence. will be. However, this artificial intelligence engine is always instructed by the generation of the request by the
도 4는 지식 엔진(220)에 제공된 구성요소를 나타낸다. 스탠드얼론형 실시예에서의 지식 엔진(220)을 참조하였지만, 이러한 각각의 구성요소는 그 밖의 다른 구성요소와 함께 포함되거나, 다양한 동작 조합으로 더 적은 개수의 특정된 구성요소를 포함할 수 있다. 본 실시예에서, 지식 엔진(220)은 이벤트 모니터링 구성요소(402)와, 응답 모니터링 구성요소(404)와, 아바타 모드 관리 구성요소(406)와, 패턴 분석 구성요소(408)와, 분류 구성요소(410)와, 지식 베이스 제어기(412)와, 동작 엔진 제어기(414)를 포함한다. 이벤트 모니터링 구성요소(402)는 상호대화 환경(224)에서 발생하는 이벤트를 지속적으로, 그리고 능동적으로 모니터링한다. 더 상세히는, 이벤트 모니터링 구성요소(402)가 상호대화 환경(224)에서의 이벤트를 모니터링하고, 응답 모니터링 구성요소(404)와 상호 동작하여, 패턴 분석 구성요소(408)가 이벤트와 사용자 응답 간의 연관성뿐 아니라, 하나 이상의 메트릭(metric)에 따르는 사용자 응답의 분류 간의 연관성을 형성할 수 있게 할 수 있다. 이벤트 간의 이러한 연관성은, 동작 요청의 추후 검색 및 발생을 위해 지식 베이스(218)에 저장된다. 응답 모니터링 구성요소(404)는 상호대화 환경(224)에서의 모니터링되는 이벤트에 대한 사용자 응답을 지속적으로 모니터링한다.4 illustrates components provided to the
다음은 분류 구성요소(410)에 의해 모니터링되는 사용자 응답에 적용될 수 있는 대표적인 메트릭의 목록이다. 이 목록이 모든 메트릭인 것은 아니며, 본원에서 논의되는 다양한 실시예에서 지식 엔진의 적용을 위한 메트릭의 대표적 샘플을 설명하기 위한 목적으로만 제공된다. 대안적 실시예에서, 목록의 메트릭의 서브셋 이 사용자 응답 분류를 위해 사용될 수 있고, 또 다른 실시예에서 이와 다르거나 추가적인 메트릭이 적용될 수 있다.The following is a list of representative metrics that may be applied to user responses monitored by the
상호대화 환경(224)은 컴퓨터 시뮬레이션이나 컴퓨터 비디오 게임을 실행할 때 사용되기 위한 컴퓨터에 의해 발생되는 환경이며, 여기서 컴퓨터에 의해 발생되는 다양한 이벤트, 또는 상호대화 환경(224)에서 그 밖의 다른 사용자에 의해 생성되는 이벤트가 발생할 수 있다. 이들 이벤트는 트리거(trigger)되거나, 사용자의 아바타 중 하나 이상이 자율 모드, 또는 조력 듀얼리티 모드(assisted duality mode), 또는 경쟁적 듀얼리티 모드(competitive duality mode)로 동작 중일 때, 상기 아바타로부터 응답을 필요로 한다. 아바타는 클라이언트 장치(104a 내지 104d)의 사용자에 의해 제어되거나, 자율적으로, 즉, 등록된 사용자의 로그-인 상태에 독립적으로 실행될 수 있다.The
아바타 모드 관리 구성요소(406)는 상호대화 환경(224)의 작동 모드를 기반으로 아바타의 제어를 조정한다. 각각의 등록된 사용자는 상호대화 환경(224)에서의 실행을 위한 하나 이상의 아바타를 가질 수 있으며, 그러나 이들 아바타의 동작은 상호대화 환경(224)의 작동 모드에 따라 달라질 수 있다. 사용자가 상호대화 환경(224)으로 능등적으로 로그-인하지 않을 때, 등록된 사용자의 아바타가 상호대화 환경(224)에서 여전히 동작하여, 자율 모드에서 이벤트 모니터링 구성요소(402)에 의해 모니터링되는 이벤트에 응답할 수 있을 것이다. 실제 사용자 모드(real user mode)에서, 각각의 아바타는, 등록된 사용자에 의해 직접 제어되며, 상기 등록된 사용자의, 상호대화 환경(224)에서의 이벤트에 대한 응답은 응답 모니터링 구성요소(404)에 의해 모니터링된다. 동작 엔진(222)의 제어 하에서, 아바타에 의해 특정 동작이 구현되고 실행되게 하는 요청이 발생하고, 동작 엔진(222)에게 발행될 때, 지식 베이스(218)에 포함되는 사용자 응답의 저장된 프로필, 또는 히스토리가 지식 엔진(220)에 의해 평가된다.The avatar
패턴 분석 구성요소(408)는, 모니터링되는 이벤트에 대한 특정 사용자 응답의 출현 빈도를 판단하는 방법을 부분적으로 기초로 하는 패턴 분석 기법을 적용한다. 또한 이들 기법은 특정 통계적 관련도 순위 결정(statistical relevance ranking)과, 사용자 응답들 간의 상관(correlation)을 적용하여, 모니터링되는 이벤트에 대한 사용자 응답에서 패턴을 판단할 수 있다. 패턴 분석 구성요소(408)는 모니터링되는 이벤트와 상기 모니터링되는 이벤트에 대한 하나 이상의 사용자 응답 간의 연관성을 형성한다. 이들 연관성은 실시간으로 판단되고, 응답 모니터링 구성요소(404)에 부합하는 정보를 바탕으로 하여 동적인 방식으로 업데이트된다.The
이벤트에 대한 사용자 응답의 연관 후, 분류 구성요소(410)에 의해, 사용자 응답은 하나 이상의 메트릭에 따라 분류될 것이다. 사용자 응답을 분류하기 위해 사용되는 특정 메트릭은, 성과 메트릭(performance metrics), 결정 메트릭(decision metrics) 및 감정 메트릭(emotion metrics)이 있다. 감정 메트릭은 성과 메트릭과 결정 메트릭을 부분적으로 기초로 한다. 다양한 타입의 성과 메트릭 중에, 이벤트 모니터링 구성요소(402)에 의해 모니터링되는 하나 이상의 이벤트를 기초로 하는 응답 모니터링 구성요소(404)에 의해 모니터링되는 각각의 사용자 응답을 위한 타이밍 측정치가 있다.After association of the user response to the event, by the
분류 구성요소(410)는 사용자 응답을 평가하고, 상기 사용자 응답을 적용 가능한 메트릭에 따라 분류한다. 예를 들어, 경쟁적 복싱 비디오 게임에서, 지식 엔진(220)은 이벤트(가령, 경쟁 아바타로부터 얼굴을 강타하는 잽)에 응답하여 사용자에 의해 취해진 동작을 능동적으로 모니터링할 것이며, 상호대화 환경(224)에서의 유사한 이벤트에 대한 사용자의 응답을 지속적으로 분석할 것이다. 통계적 기법에 따라 서로 다른 모니터링되는 이벤트에 대한 사용자 응답의 총체적 세트는 상관되고, 분류되어, 특정 이벤트에 대한 응답의 타이밍과, 특정 이벤트에 대한 응답 타입과, 상호대화 환경(224)에서의 동일하거나 유사한 이벤트가 존재할 때 유사한 응답이 발생한 빈도가 식별될 수 있다. 이들 분류된 응답은, 이벤트와 응답 간의 검색 가능한 연관성에 추가로, 지식 엔진(220)을 위한 독립적으로 검색 가능한 데이터셋(dataset)을 제공한다. 덧붙이자면, 분류 구성요소(410)에 의해 이벤트에 대한 사용자 응답의 속성은 평가되어, 각각의 응답과 연관된 감정 메트릭이 추론될 수 있을 것이다. 따라서 구성요소(410)에 의해, 지식 엔진(220)은 동작 엔진(222)으로의 요청을 발행할 수 있으며, 상기 동작 엔진(222)에 의해, 자율 모드에서 동작하는 아바타의 동작은, 특정 모니터링되는 이벤트에 대한 등록된 사용자의 응답의 감정적 특성을 모방할 수 있다. 사용자 응답의 타이밍 성과는 분류 구성요소(410)에 의해 “성과 메트릭”으로서 분류되며, 특정 이벤트에 대한 응답의 타입은, 구성요소(410)에 의해, “결정 메트릭”으로서 분류된다.The
지식 베이스 제어기(412)가 추상 데이터형 및 관련 연산자의 다양한 형태로서 나타나는 “연관성”의 판독 및 기록을 제어한다. 이들 연관성은 저장되고, 패턴 분석 구성요소(408)에 의해 생성되는 연관성을 기초로 불러와진다. 동작 엔진 제어기(414)는 동작 엔진(222)으로의 요청의 송신을 제어하여, 응답 모니터링 구성요소(404)에 의해 모니터링되는 특정 모니터링된 사용자 응답, 또는 패턴 분석 구성요소(408)와 분류 구성요소(410)에 의해 요청된 동작을 기초로, 상호대화 환경(224)의 하나 이상의 아바타가 자율 모드로 동작 중일 때, 또는 사용자가 활성 상태로 로그-인되어 있지 않을 때, 또는 상호대화 환경(224)에서 발생하는 이벤트에 반응하여 동작을 취할 때 동작 엔진(222)에 의해 아바타의 명시적 동 작(explicit action)이 구현될 수 있게 한다.
도 5A 및 5B는 클라이언트/서버 구성으로 소프트웨어에 의해 구현되는 시스템의 대안적 실시예를 도시한다. 구체적으로, 이 도면들은 클라이언트 장치(104)와 서버 장치(102)를 나타낸다. 도 5A는 하나 이사의 입력 장치(502)와, 통신 인터페이스(504)와, 판독 전용 메모리(read only memory, 506)와, 저장 장치(518)와, 프로세서(512)와, 프로그램 메모리(514)와, 하나 이상의 출력 장치(516)를 포함하는 서버 장치(102)를 나타낸다. 상기 서버 장치(102)의 각각의 구성요소는 통신 버스(510)로 통신 가능한 방식으로 연결된다. 프로그램 메모리(514)는 지식 베이스(518)와, 서버 지식 엔진(520)을 포함한다. 서버 지식 엔진(520)은 사용자 응답을 지속적으로 모니터링하고 분석하며, 클라이언트 지식 엔진(540)에 의해 모니터링되는 상호대화 환경(536)에서의 이벤트와 사용자 응답 간의 연관성을 형성한다. 또한 지식 엔진(520)은, 결정 메트릭, 성과 메트릭 및 감정 메트릭 등의 다양한 메트릭에 따라 사용자 응답을 분류하기 위한 프로세스를 적용한다. 지식 베이스(518)는 모니터링되는 이벤트와 모니터링되는 사용자 응답 간의 연관성을 저장하고, 사용자 응답이 적용 가능한 메트릭(즉, 결정, 또는 성과, 또는 감정)을 기초로 분류된 분류에 따르는 상기 연관된 이벤트와 응답의 구조화된 저장(organized storage)을 가능하게 한다.5A and 5B illustrate alternative embodiments of a system implemented by software in a client / server configuration. Specifically, these figures show
도 5B는 하나 이상의 입력 장치(522)와, 도 5A에서 도시된 서버 장치(102)와 통신하기 위한 통신 인터페이스와, 판독 전용 메모리(526)와, 저장 장치(528)와, 프로세서(532)와, 프로그램 메모리(534)와, 하나 이상의 출력 장치(530)를 포함하 는 클라이언트 장치(104)를 도시한다. 이들 각각의 구성요소는 통신 버스(525)로 연결되어, 구성요소 간 통신을 촉진시킬 수 있다. 프로그램 메모리(534)는 클라이언트 지식 엔진(540)과, 동작 엔진(542)과, 상호대화 환경(536)과, 운영 체제(538)를 포함한다. 프로그램 메모리(534)에 포함된 각각의 구성요소는, 상호대화 환경(536)의 실행을 위해 프로세서(532)에 의해 사용된다. 상호대화 환경(536)은 컴퓨터에 의해 발생되는 환경이며, 컴퓨터에 의해 발생되는 이벤트의 자율적인 실행을 제어한다. 하나의 실시예에서, 상호대화 환경(536)은 컴퓨터에 의해 발생되는 시뮬레이션 환경이며, 다른 실시예에서는, 상호대화 환경(536)이 컴퓨터에 의해 발생되는 비디오 게임 환경이다. 클라이언트 지식 엔진(540)이 상호대화 환경(536)에서의 이벤트를 지속적으로 모니터링하며, 상화 대화 환경(536)에 등록된 사용자가 로그인하고, 상기 이벤트에 능동적으로 응답할 때, 이들 이벤트에 대한 사용자 응답을 지속적으로 모니터링한다. 클라이언트 지식 엔진(540)은 사용자 응답의 프로파일을 컴파일(compile)하고, 분석, 연관 및 분류를 위해, 이들 응답을 서버의 지식 엔진(520)으로 능동적으로 보고한다. 몇 개의 서로 다른 메트릭, 가령, 결정 메트릭, 성과 메트릭 및 감정 메트릭에 의해, 사용자 응답이 분류된다. 분류 후, 하나 이상의 연관성과, 적용 가능한 메트릭에 따라 응답이 지식 베이스(518)에 저장된다.FIG. 5B illustrates one or
도 6은 소프트웨어에 의해 구현되는 시스템을 위한 대안적 클라이언트/서버 실시예를 도시한다. 구체적으로, 이 실시예는 하나 이상의 서버 장치(102a 내지 102d)(도 6A)와, 하나 이상의 클라이언트 장치(104a-104d)(도 6B)를 포함한다. 서 버 장치(102)는 하나 이상의 입력 장치(602)와, 하나 이사의 클라이언트 장치(104)와 통신을 전송 및 수신하기 위한 통신 인터페이스(604)와, 판독 전용 메모리(606)와, 저장 장치(608)와, 프로세서(612)와, 프로그램 메모리(626)와, 하나 이상의 출력 장치(610)를 포함한다. 지식 베이스(616)와, 서버 지식 엔진(618)과, 동작 엔진(620)이 프로그램 메모리(626)에 저장된다. 동작 엔진(620)의 제어 하에서 아바타에 의해 수행되는 특정 동작으로 해석되는 요청을 발행함으로써, 서버 지식 엔진(618)은 동작 엔진(620)의 동작을 지시한다. 서버 지식 엔진(618)은 상호대화 환경(622)과 상호대화하며, 이는 운영 체제(624)에 의해 실행되어, 이 환경(622)에서 발생하는 이벤트를 모니터링할 수 있다. 서버의 지식 엔진(618)과 동작 엔진(620)에 의해 수행되는 동작의 실행을 위해, 그리고 연관성의 빠른 검색, 저장 및 불러오기(retrieval)와, 사용자 응답의 빠른 검색과 분류 메트릭에 따르는 평가를 위해 프로세서(612)가 프로그램 메모리(626)와 상호대화한다. 서버 장치(102)의 각각의 구성요소는 통신 버스(614)를 통해 통신 가능하도록 연결된다.6 illustrates an alternative client / server embodiment for a system implemented by software. Specifically, this embodiment includes one or
도 6A 및 6B에서 도시된 실시예에서, 서버 지식 엔진(618)과 클라이언트 지식 엔진(644)은 활발하게 상호 동작하여, 상호대화 환경(622)에서 발생하는 이벤트에 대한 사용자 응답을 모니터링할 수 있다. 클라이언트 지식 엔진(644)에 의해 클라이언트 장치(104) 상에서 사용자 응답이 모니터링되고, 로컬 프로그램 메모리(642)에 저장된다. 도 6B에서 도시되는 바와 같이, 클라이언트 장치(104)는 하나 이상의 입력 장치(628)와, 통신 인터페이스(630)와, 판독 전용 메모리(632)와, 저장 장치(634)와, 프로세서(636)와, 프로그램 메모리(642)와, 하나 이상의 출력 장 치(646)를 포함한다. 이들 구성요소는 통신 버스(640)를 통해 서로 통신 가능하도록 연결된다. 이 실시예에서, 사용자는 클라이언트 장치(104)의 입력 장치(628) 상에서 동작을 취함으로써(가령, 조이스틱을 이동, 또는 터치 스크린의 일부분을 건드림으로써), 상호대화 환경(622)의 이벤트에 응답하고, 이러한 응답은 클라이언트 지식 엔진(644)에 의해 능동적으로, 그리고 지속적으로 모니터링된다. 클라이언트 지식 엔진(644)이 클라이언트 장치(104) 상에서 사용자 응답을 모니터링할지라도, 이 실시예에서, 모니터링되는 응답의 기록(record)이 서버 지식 엔진(618)으로 전달되어, 응답과 이벤트의 분석이 이뤄지고, 응답과 이벤트 간의 연관성이 형성되며, 특정 메트릭에 따라 사용자 응답의 분류가 이뤄진다. 하나의 실시예에서, 상호대화 환경(622)은 서버 장치(102) 상에서 실행된다. 대안적 실시예에서, 상호대화 환경(622)은 다수의 서버 상에서 실행되며, 상기 다수의 서버 각각은, 등록된 사용자 및 자율적으로 실행 중인 아바타가 응답할 수 있는 상호대화 환경(622)에서의 이벤트의 실행을 관리함에 있어, 독립적이지만, 응집적인 역할을 갖는다. 서버 지식 엔진(618)은 클라이언트 장치(104)로부터 수신된 사용자 응답을 분석하고, 상호대화 환경(622)의 모니터링된 이벤트에 대한 각각의 사용자 응답을 연관시키고, 하나 이상의 결정 메트릭, 성과 메트릭 및 감정 메트릭에 따라 사용자 응답을 분류한다.In the embodiment shown in FIGS. 6A and 6B,
이 시스템에 제공되는 메트릭은 사용자 응답에 관한 다양한 타이밍 측정치(가령, 성과 메트릭)와, 상호대화 환경(622)의 모니터링되는 이벤트에 대한 특정 사용자 응답의 다양한 결과(가령, 결정 메트릭)를 나타낸다. 다양한 사용자 응답이 분류될 때 따르는 성과 메트릭과 결정 메트릭에 추가로, 사용자 응답은 또한 감정 메트릭에 따라 분류될 수 있다. 감정 메트릭은 하나 이상의 성과 메트릭과 결정 메트릭을 기초로 하며, 서버의 지식 엔진(618)에 의해 판단되고, 관련 이벤트에 대한 응답과 연관되는 복합 메트릭이다. 이러한 연관은 자율 모드에서 사용되어, 등록된 사용자와 연관된 하나 이상의 아바타의 동작을 제어하여, 아바타의 동작이 사용자의 과거 사용자 응답과 일치하는 방식으로 수행되게 할 수 있다. 본질적으로, 서버의 지식 엔진(618)은 사용자 응답의 활발하고, 진행 중이며, 지속적인 분석 정리(profiling)와, 상기 사용자 응답의 연관 및 분류를 가능하게 하여, 사용자가 로그인하고, 상호대화 환경(622)의 이벤트에 응답했을 때 사용자에 의해 디스플레이된 응답 및 상기 응답과 연관된 관련 감정과 일치하는 자율 작동 모드에서 아바타를 이용하는 동작을 판단하고, 적용할 수 있다.Metrics provided to the system represent various timing measures (eg, performance metrics) regarding user responses, and various results (eg, decision metrics) of specific user responses to monitored events in
도 7은 상호대화 환경에서 아바타를 모니터링하고 제어하기 위한 프로세스를 대략적으로 나타낸 흐름도이다. 이 프로세스는 단계(702)에서 시작하고, 상호대화 환경의 이벤트를 모니터링하는 단계(704)로 진행한다. 상호대화 환경의 이벤트를 모니터링하는 동안, 이들 이벤트에 대한 사용자 응답이 모니터링되고 측정되며(단계(706)), 이들 사용자 응답은, 하나 이상의 성과 메트릭, 결정 메트릭 및 감정 메트릭에 따라 컴파일되고, 분석되며, 분류될 것이다(단계(708)). 분류된 사용자 응답이 저장되어(단계(710)), 자율 모드를 운영하면서, 상호대화 환경에서의 하나 이상의 아바타의 동작을 제어하기 위한 요청을 공식할 때, 지식 엔진에 의해 추후에 검색 및 사용될 수 있다. 아바타가 등록된 가입자가 로그인되어 있지 않고, 상호대 화 환경의 모니터링되는 이벤트에 능동적으로 응답하지 않을 때, 상기 아바타는 자율 모드에서 동작을 수행한다. 사용자 응답이 분류화되고, 지식 베이스에 저장된 후, 상기 프로세스는 단계(712)에서 종료한다.7 is a flowchart schematically illustrating a process for monitoring and controlling an avatar in an interactive environment. This process begins at
도 8은 이전 사용자 응답의 비교 평가 후, 이전 사용자 응답을 기초로 하여, 응답을 적용하기 위한 프로세스를 도시한다. 프로세스는 단계(802)에서 시작하며, 이때, 상호대화 환경의 이벤트를 모니터링한다(단계(804)). 이전 사용자 응답을 저장하는 지식 베이스가 검색되며, 이러한 응답은 평가되고, 기록(record)이 나타내는 이전에 모니터링된 이벤트에 대한 사용자 응답과 비교될 것이다(단계(806)). 지식 베이스에서의 이전 사용자 응답을 검색하고 평가할 때, 지식 엔진이, 특정 모니터링되는 이벤트에 대해 가장 가능성 높은 대안적 사용자 응답의 세트를 판단할 것이며(단계(808)), 상기 가장 가능성 높은 대안적 사용자 응답의 세트는 등록된 사용자에 대한 하나 이상의 아바타에 의해 적용될 수 있다. 각각의 모니터링되는 이벤트에 대한 가장 가능성 높은 대안적 사용자 응답의 세트는, 상호대화 환경에서의 과거의 이벤트에 대한 응답의 패턴을 분석하고, 이들 과거 이벤트를 모니터링되는 이벤트와 비교함으로써, 결정될 것이다. 하나 이상의 패턴 분석 기법이 적용될 수 있으며, 예를 들어, 이전에 모니터링된 이벤트의 타입에 대해 특정 타입의 응답의 출연 빈도를 분석하는 기법이 있다. 통계적 관련도 순위 결정 기법이 홀로 적용되거나, 출현 빈도 측정과 조합되어 적용되어, 모니터링되는 이벤트에 대해 가장 가능성 높은 응답, 또는 응답들의 세트를 결정할 수 있다. 가장 가능성 높은 응답이 결정되면, 등록된 사용자에 대한 하나 이상의 아바타에 의해 상호대화 환경에 선택 된 응답이 적용될 것이고(단계(810)), 단계(812)에서 프로세스는 종료하게 될 것이다. 본원에서 사용될 때, 용어 “응답(response)”은 상호대화 환경에서 등록된 사용자의 제어되는 동작에 일반적으로 적용되며, 이 용어는 또한, 이 환경에서, 사용자에 의해 제어되는 직접적인 활동이 없는 경우, 아바타에 의해 취해지는 특정 동작을 일컬을 수 있다.8 shows a process for applying a response based on a previous user response after comparative evaluation of the previous user response. The process begins at
도 9는 사용자 응답을 모니터링하고 보호되는 대기 상태로 들어갈 시점을 결정하기 위한 프로세스를 도시한다. 이 프로세스는 단계(902)에서 시작하며, 단계(904)에서, 사용자 응답이 모니터링되고, 단계(906)에서 각각의 모니터링된 응답이 지식 베이스에 저장된 응답과 비교된다. 상기 단계(906)에서 수행된 비교를 기초로 하여, 단계(908)에서 모니터링된 사용자 응답에 하나 이상의 패턴 분석 방법이 적용될 것이다. 이전에 모니터링된 유사한 이벤트에 대한 새로운 사용자 응답이 이러한 이벤트와 연관되고, 저장되어, 지식 베이스가 이벤트와 응답의 연관성의 실시간 활성 기록으로 업데이트되게 할 수 있다(단계(910)). 업데이트 후, 상호대화 환경이 모니터링되어, 사용자가 로그-오프(log-off) 상태인지의 여부를 판단할 수 있다(단계(912)). 사용자가 로그-오프가 아닌 경우, 사용자에 의해 수행된 마지막 동작의 발생과 현 시점 사이의 시간 길이가, 상호 대화 환경의 모니터링된 이벤트에 대한 사용자로부터의 응답을 수신하기 위한 대기 시간 임계치를 초과하는가의 여부를 판단하기 위해, 대기 시간(wait time)이 체크될 것이다(단계(914)). 대기 시간이 초과된 경우, 등록된 사용자에 대한 하나 이상의 아바타가 상호 대화 환경의 보호받는 대기 상태(protected wait state)가 되며, 사용자로부터의 동작을 취 하기 위한 커맨드, 또는 요청을 기다린다(단계(916)).9 shows a process for monitoring a user response and determining when to enter a protected wait state. This process begins at
대안적으로, 단계(912)에서 나타나는 바와 같이, 사용자가 로그-오프한 경우, 사용자의 아바타가 상호대화 환경에서 보호받는 대기 상태가 될 것이다(단계(916)). 단계(914)에서 사용자가 동작을 취하는 시간이 대기 시간을 초과하지 않았다면, 단계(906)에서 나타나는 바와 같이, 사용자 응답은 계속 활발하게 모니터링되고, 지식 베이스의 저장된 응답의 기록에 비교될 것이다. 이러한 새롭게 모니터링된 응답을 이전에 저장된 모니터링된 응답에 비교하는 실시간 분석은, 상호대화 환경이 활성화 상태인 동안 계속되어, 이러한 환경의 이벤트에 대한 새롭고 다른 응답을 계속 식별하고, 연관하며, 분류할 수 있으며, 이러한 분석은 단계(908)에서 나타난다. 상호대화 환경의 이벤트에 대한 새로운 사용자 응답의 연관성으로, 지식 베이스를 업데이트하는 것이 단계(910)에서 나타난다. 사용자가 로그-오프 상태인 경우, 보호받는 대기 상태가 시작될 것이고(단계(196)), 프로세스는 단계(918)에서 종료할 것이다.Alternatively, as shown in
도 10은 사용자가 상호대화 환경에 로그-인하지 않을 때, 아바타가 상기 사용자와 상호대화할 수 있게 해주는 프로세스를 도시한다. 상기 프로세스는 단계(1002)에서 시작하며, 단계(1004)에서, 아바타가 보호받는 대기 상태에 있는 동안 상호대화 환경의 이벤트를 모니터링한다. 단계(1006)에서 나타나는 바와 같이, 모니터링되는 이벤트에 따라, 아바타에 의해, 특정 동작이 요구될 수 있다. 어떠한 동작도 요구되지 않는 경우, 상호대화 환경의 이벤트가 계속 모니터링되고, 아바타가 보호받는 동작 대기 상태를 유지할 것이다. 그러나 동작이 요구되는 경우, 단 계(1008)에서 나타나는 바와 같이, 동작 경보(action alert)가 사용자에게 전송되고, 단계(1010)에서 나타난 바와 같이, 아바타가 사용자로부터의 응답을 기다린다. 어떠한 응답도 수신되지 않는 경우, 단계(1012)에서와 같이, 상기 아바타는 자율 작동 모드가 될 것이며, 이에 따라서, 지식 베이스에 저장된, 이벤트와 사용자 응답 간의 연관성의 총체적 레코드를 기반으로, 등록된 사용자의 아바타가 상호대화 환경의 이벤트와 상호대화할 것이다. 저장된 연관성의 지식 베이스로부터 적용될 가능성이 가장 높은 동작이 판단되며, 동작 엔진이 활성화되어, 도 3에서 도시된 아바타 제어 규칙 데이터베이스에 저장되어 있는 제어 규칙을 바탕으로 하여, 사용자의 아바타의 하나 이상의 동작의 실행을 명시적으로 제어할 것이다. 이 작동 모드에서, 지식 엔진은, 저장된 연관성을 바탕으로 하여, 동작 엔진에게 요청을 전송할 것이다. 이 모드에서, 지식 엔진 및 동작 엔진은 각각의 사용자의 아바타의 동작에 대한 배타적인 제어를 가질 것이다. 다른 한편으로는, 단계(1010)에서 나타나는 바와 같이, 사용자 응답이 수신된 경우, 프로세스가 도 11에서 나타난 단계로 이동할 것이며, 이 단계는 아래에서 설명된다.10 illustrates a process that allows an avatar to interact with the user when the user does not log in to the interactive environment. The process begins at
단계(1008)로 다시 돌아가서, 등록된 사용자 아바타의 하나 이상에 의해, 동작 경보가, 각각의 사용자의 아바타로부터의 전자 메일 메시지, 또는 전화 콜(telephone call)의 형태로 발행될 수 있으며, 상기 동작 경보에서, 아바타의 합성 음성이 상호대화 환경의 이벤트를 사용자에게 설명한다. 또한 “긴급 동작 메시지(Emergency Action Message)”라고 일컬어지는 전자 메일 메시지는 특정 사용자 입력에 대한 요청을 포함하여, 상호대화 환경에서 긴급한 이벤트, 또는 위험에 응 답하여, 아바타가 동작을 취할 수 있게 할 수 있다.Returning to step 1008, by one or more of the registered user avatars, an action alert may be issued in the form of an e-mail message or a telephone call from each user's avatar, the action In the alert, the synthesized voice of the avatar describes the event of the interactive environment to the user. Email messages, also referred to as “emergency action messages,” may include requests for specific user input, allowing an avatar to take action in response to an urgent event or risk in an interactive environment. have.
사용자가 커맨드를 이용하여 전화 콜 상에 수신된 동작 경보에 응답하는 경우, 도 11의 단계(1102)에서 나타나는 바와 같이, 아바타는 상기 커맨드를 실행하도록 시도할 것이다. 단계(1114)에서 나타나는 바와 같이, 사용자 응답을 처리하는 동안, 지식 엔진은 독립적인 사용자 응답이 요구되는가의 여부를 판단할 것이다. 동작 경보를 발생시킨 아바타가, 상호대화 환경의 독립적인 사용자 동작 없이는, 수신된 사용자 커맨드에서 특정된 동작을 수행할 수 없을 경우, 독립적인 사용자 응답이 요구될 것이다. 이러한 경우, 상호대화 환경의 아바타의 작동 모드가 경쟁적 듀얼리티 모드로 변환될 것이다(단계(1106)). 이러한 작동 모드에서, 사용자가 상호대화 환경에서 로그-인 상태로 복귀하면, 아바타는 사용자의 동작과 직접적으로 경쟁하는 상호대화 환경의 독립적인 동작에 착수한다. 대안적 실시예에서, 아바타의 그룹은 사용자에 의해 제어될 수 있으며, 사용자에 의해 제어되는 그룹에 맞서는 팀으로서 경쟁하는 협력하는 아바타들의 팀이 형성될 수 있다. 사용자가 상호대화 환경에서 로그-인 상태로 복귀된 후, 사용자에 의해 제어되는 아바타의 그룹과 협력하는 아바타들의 팀이 또한 상호대화 환경의 이벤트에 경쟁적으로 응답할 수 있다.If the user responds to a motion alert received on the telephone call using a command, the avatar will attempt to execute the command, as indicated in
대안예에서, 독립적인 사용자 응답이 요구되지 않는 경우, 사용자와 사용자의 하나 이상의 아바타는, 조력 듀얼리티 모드(assisted duality mode)에서 상호대화 환경에서의 이벤트에 응답할 것이다(단계(1108)). 경쟁적 듀얼리티 모드는, 상호대화 환경의 사용자 응답이 사용자의 아바타의 하나 이상의 동작에 활발하게 경 쟁하는 작동 모드이다. 이러한 경우, 아바타와 사용자 모두, 상호대화 환경의 모니터링되는 이벤트에, 그리고 상기 상호대화 환경에서의 서로의 동작에 응답할 것이다. 조력 듀얼리티 모드에서, 사용자와 사용자의 아바타는 협력적인 방식으로 동작하고, 사용자의 아바타가 상호대화 환경에서의 모니터링되는 이벤트에 응답하는 동안, 사용자의 동작이 사용자의 아바타의 독립적인 동작을 보충할 것이다.In an alternative, if an independent user response is not required, the user and one or more avatars of the user will respond to the event in the interactive environment in assisted duality mode (step 1108). The competitive duality mode is an operating mode in which the user response of the interactive environment actively competes for one or more actions of the user's avatar. In this case, both the avatar and the user will respond to the monitored event of the interactive environment and to each other's actions in the interactive environment. In the assisted duality mode, the user and the user's avatar operate in a collaborative manner, and while the user's avatar responds to a monitored event in an interactive environment, the user's motion may supplement the independent motion of the user's avatar. will be.
도 11을 다시 참조하면, 사용자 응답(즉, 상호대화 환경의 사용자 동작)이, 사용자 커맨드(즉, 동작 경보를 발생하는 아바타를 지시하는 이메일, 또는 음성) 대신 수신되는 경우, 단계(1114)에서 나타나는 바와 같이, 상호대화 환경이 실제 사용자 작동 모드로 돌입하고, 단계(1116)에서 나타나는 바와 같이 복귀할 것이다. 사용자 응답은, 상호대화 환경에서 하나 이상의 아바타를 제어하고, 상기 환경에서의 모니터링되는 이벤트에 직접 응답하기 위해 사용자가 상호대화 환경으로 로그-인하는 절차를 포함한다.Referring back to FIG. 11, if a user response (ie, user action in an interactive environment) is received instead of a user command (ie, an email or voice indicating an avatar generating an action alert), at
도 12는 상호대화 환경에서의 아바타의 자율 동작을 위한 프로세스를 도시한다. 상기 프로세스는 단계(1202)에서 시작하고, 단계(1204)에서 상호대화 환경에서의 이벤트가 모니터링된다. 자율 작동 모드에서, 각각의 등록된 사용자의 하나 이상의 아바타가, 그 밖의 다른 등록된 사용자의 아바타에 대해 활발하게 계속 경쟁하며, 이는 이들 아바타의 사용자 로그-인, 또는 제어 상태에 관계없이 이뤄진다. 아바타는 개별 아바타의 경쟁에 착수하거나, 다른 그룹의 아바타와 경쟁하기 위해, 또는 상호대화 환경의 모니터링되는 이벤트에 응답하여 경쟁하기 위해 협력적인 아바타 팀을 스스로 조직할 수 있다. 이러한 작동 모드에서, 상호대화 환경에서의 선 택된 경쟁 이벤트에서의 성과 순위 결정을 위해, 모든 등록된 사용자의 아바타가 서로에 대해 활발하게 경쟁할 수 있게 하도록 다중 서버가 상호대화 환경을 호스팅할 수 있다. 경쟁적 이벤트는 다른 아바타의 동작에 응답하는 아바타들 간의 개별적인 경쟁과, 상호대화 환경에서의 모니터링되는 이벤트에 응답하여 이뤄지는 아바타의 경쟁적 평가와, 협력적 팀으로서 경쟁에 참가하거나 모니터링되는 이벤트에 응답하는 협력적인 아바타 팀의 형성을 포함할 수 있다. 이들 이벤트는 선-스케줄링된(prescheduled) 시간에서 발생되며, “World Olympic Avatar Competition(세계 올림픽 아바타 경쟁 대회)"라고 등록된 모든 사용자에게 발표될 수 있다. 따라서 단계(1206)에서, 이러한 경쟁으로의 참가에 대한 요청이 등록된 사용자에 의해 수신될 수 있다. 상기 요청은 아바타 경쟁 대회가 개최될 상호대화 환경의 관리자에 의해 발행된다.12 shows a process for autonomous operation of an avatar in an interactive environment. The process begins at
요청을 수락한 등록된 사용자의 아바타들 간의 경쟁이 단계(1208)에서 시작되고, 자율 작동 모드에서 이들 아바타는 이벤트에 대하여 응답하여 동작을 취할 것이다. 경쟁은, 상호대화 환경에서의 각각의 등록된 사용자의 아바타에 의한 서로에 대한 경쟁적 상호대화를 필요로 하는 다수의 상호대화 시나리오를 포함한다. 상호대화 시나리오에서의 아바타의 성과(performance)는 평가되고, 경쟁 순위를 결정하기 위해 사용될 것이다(단계(1210)). 이러한 자율 모드 상호대화 경쟁에서의 아바타의 동작은 지식 베이스에 저장된 이벤트와 사용자 응답 간의 연관성과, 선택된 메트릭에 따르는 이들 사용자 응답의 분류를 부분적으로 기초로 한다. 사용자가 상호대화 환경에서의 이벤트에 대한 응답을 제어 및 실행하는 동안, 지식 엔진은 사 용자 응답을 분류한다. 사용자 응답의 분류는 특정 성과 메트릭, 결정 메트릭 및 감정 메트릭을 기반으로 한다. 이들 메트릭은 아바타가 자율 경쟁 모드로 동작하면서, 상호대화 환경에서 동작을 어떻게 적용시킬 것인지에 영향을 미친다. 더 구체적으로, 자율 경쟁 모드에서 아바타에 의해 적용되는 동작은, 상호대화 환경에서의 모니터링되는 이벤트에 대한 응답이 최초로 만들어질 때의 지식 엔진에 의해 사용자 응답에 적용되는 패턴 분석을 기초로 한다(단계(1212)). 동작 엔진과 연합되어 동작하는 지식 엔진은 이러한 경쟁 모드에서 아바타의 동작을 배타적으로 제어할 것이다. 등록된 사용자는 정해지지 않은 시간 주기 동안 자율 모드, 또는 자율 경쟁 모드에서 동작을 수행하는 활성 아바타를 가질 수 있다. 하나의 실시예에서, 상기 정해지지 않은 시간 주기는 등록된 사용자의 수명 이상으로 확장될 수 있다. 아바타의 동작의 성과 순위가 컴파일될 것이며(단계(1214)), 상호대화 환경에서 자율적이고 완전히 호스팅된 경쟁에서 어느 아바타가 가장 높은 점수를 획득했는가에 대한 판단이 이뤄진다. 자율 경쟁 모드에서 아바타에 대한 성과 순위를 컴파일한 후, 프로세스가 단계(1216)에서 종료된다.Competition between the avatars of registered users who accepted the request begins at
도 13은 경쟁적 작동 모드에 대한 프로세스의 하나의 실시예를 도시한다. 이 모드에서, 등록된 사용자는 상호대화 환경에서 사용자의 아바타 중 하나 이상과 적극적으로 경쟁한다. 이 프로세스는 단계(1302)에서 시작하며, 단계(1304)에서, 상호대화 환경에서의 이벤트가 모니터링된다. 다양한 분류의 메트릭, 가령, 성과 메트릭, 결정 메트릭 및 감정 메트릭에 따라, 사용자 응답이 모니터링되고, 측정되며, 상기 응답이 연관되고 분류된다. 상기 사용자 응답은, 특정 응답을 유발한 모 니터링되는 이벤트와 연관되며, 이러한 연관성은 저장되어, 업데이트되는 지식 베이스를 유지할 수 있다(단계(1308)). 업데이트 후, 인간의 뇌에 연관된 형태로 정보를 저장하는 것과 유사한 방식으로, 자율 모드에서, 응답과 이벤트의 총체적 연관성에 따라 지식 베이스가 검색될 것이다.13 illustrates one embodiment of a process for a competitive mode of operation. In this mode, the registered user actively competes with one or more of the user's avatars in an interactive environment. This process begins at
단계(1310)에서 나타나는 바와 같이, 모니터링되는 이벤트에 대한 사용자 응답에 대한 이러한 연관성을 검색하기 위해, 경쟁 작동 모드에서 가장 가능성 높은 사용자 응답을 결정하기 위해, 하나 이상의 패턴 분석 기법이 적용될 것이다. 앞서 지시된 바와 같이, 경쟁적 듀얼리티 모드에서, 사용자는 상호대화 환경에서 활성 상태이지만, 자신의 등록된 아바타 중, 상호대화 환경에서 인간 사용자의 동작뿐 아니라, 자동화된 이벤트에 응답하여 동작을 취하는 하나 이상의 아바타에 대항한다(단계(1312)). 상호대화 환경에서 이벤트를 지속적으로 모니터링하면서, 아바타의 동작을 제어하기 위해, 지식 엔진이 저장된 사용자 응답의 지식 베이스를 활발하게 검색하고, 모니터링된 이벤트와 이전 사용자 응답 간에 형성된 연관성을 기초로, 요청을 발행할 것이다.As shown in
아바타의 동작은, 지식 엔진에 의해 동작 엔진으로 만들어진 요청을 기반으로 하며, 이러한 요청은 사용자 응답과 이전에 모니터링된 이벤트의 연관성의 실시간 검색 및 식별을 기반으로 한다. 이들 연관성은 지식 엔진이 모니터링된 이벤트에 응답하여 어떠한 동작이 필요한지를 쉽게 판단할 수 있게 한다. 통계적 관련도 측정치, 또는 발생 빈도 측정치, 또는 모니터링되는 이벤트에 응답하여 사용자가 취할 가장 가능성 높은 응답을 실시간으로 결정하기 위해 적용되는 그 밖의 다른 적용 가능한 통계적 측정치로부터 적용 가능한 동작이 판단된다. 경쟁 작동 모드에서 상호대화 환경의 하나 이상의 아바타를 지시하기 위한 목적으로 동작 엔진에 의해 조정되는 제어된 동작에 의해, 이러한 응답이 적용될 것이다(단계(1314)). 가장 가능성 높은 사용자 응답을 기초로 아바타 동작을 제어한 후, 이 프로세스는 단계(1316)에서 종료한다.The operation of the avatar is based on a request made by the knowledge engine to the action engine, which request is based on a real-time search and identification of the association of the user response with the previously monitored event. These associations allow the knowledge engine to easily determine what action is required in response to the monitored event. Applicable actions are determined from statistical relevance measures, frequency of occurrence measures, or other applicable statistical measures that are applied to determine in real time the most likely response a user will take in response to a monitored event. This response will be applied by a controlled action coordinated by the action engine for the purpose of indicating one or more avatars of the interactive environment in a competitive mode of operation (step 1314). After controlling the avatar action based on the most likely user response, the process ends at 1316.
도 14는 조력 듀얼리티 작동 모드에서 아바타의 동작을 제어하기 위한 프로세스를 도시한다. 이 프로세서는 단계(1402)에서 시작하며, 단계(1404)에서 상호대화 환경에서의 이벤트가 지속적으로 모니터링되고, 단계(1406)에서 이러한 이벤트에 대한 사용자 응답의 모니터링과 측정이 수행된다. 상호대화 환경의 이벤트가 지속적으로 모니터링되기 때문에, 지식 베이스는 사용자 응답의 연관성(association)과 분류(categorization)로 계속 업데이트된다(단계(1408)). 저장된 연관성과 분류에 따라, 지식 엔진에 의해 상기 지식 베이스에서 사용자 응답이 검색되고(단계(1410)), 상호대화 환경에서의 모니터링된 이벤트에 대한 가장 가능성 높은 사용자 응답을 결정하기 위한 하나 이상의 패턴 분석 방법이 적용되고, 조력 듀얼리티 작동 모드로 이러한 응답이 상호대화 환경에 사용자의 아바타에 의해 적용될 것이다(단계(1412)).14 shows a process for controlling the operation of an avatar in a tidal duality mode of operation. The processor begins at
조력 듀얼리티 작동 모드에서, 사용자가 상호대화 환경에서 아바타를 활발하게 제어하는 동안, 사용자의 아바타는 사용자의 동작을 모니터링한다. 상호대화 환경에서의 이벤트에 대한 사용자의 동작을 모니터링할 때, 지식 엔진이 이들 동작을 지속적으로 측정하고, 상호대화 환경에서의 모니터링되는 이벤트에 대한 사용자 동 작들 간의 연관성을 구축하며, 성과 메트릭, 결정 메트릭 및 하나 이상의 감정 메트릭에 따라 동작을 분류할 것이다. 이러한 맥락에서, 사용자의 “동작”은 사용자에 의해, 상호대화 환경에서 발생하는 이벤트에 대해 만들어진 “응답”이다. 지식 엔진이 조력 듀얼리티 모드에서 아바타에 의해 적용될 가능성이 가장 높은 사용자 응답을 결정한 후, 동작 엔진에 의해 아바타가 동작을 실행할 것이며, 상기 동작은 상호대화 환경에서의 모니터링되는 이벤트에 대한 가장 가능성 높은 사용자 응답을 기초로 한다(단계(1414)). 가장 가능성 높은 응답을 기초로 하는 동작의 적용 후, 상기 프로세스는 단계(1416)에서 종료된다.In the assisted duality mode of operation, the user's avatar monitors the user's motion while the user actively controls the avatar in an interactive environment. When monitoring user behavior for events in an interactive environment, the knowledge engine continuously measures these behaviors, establishes correlations between user behaviors for monitored events in the interactive environment, and measures performance metrics and decisions. Behavior will be classified according to the metric and one or more emotion metrics. In this context, a user's "action" is a "response" made by the user to events that occur in an interactive environment. After the knowledge engine determines the user response that is most likely to be applied by the avatar in the assisted duality mode, the avatar will execute the action by the action engine, which action is the most likely user for the monitored event in the interactive environment. Is based on the response (step 1414). After application of the action based on the most probable response, the process ends at
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/US2007/064438WO2008115234A1 (en) | 2007-03-20 | 2007-03-20 | A system and method for control and training of avatars in an interactive environment |
| Publication Number | Publication Date |
|---|---|
| KR20100014580Atrue KR20100014580A (en) | 2010-02-10 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020097020034AWithdrawnKR20100014580A (en) | 2007-03-20 | 2007-03-20 | A system and method for control and training of avatars in an interactive environment |
| Country | Link |
|---|---|
| JP (1) | JP5188515B2 (en) |
| KR (1) | KR20100014580A (en) |
| WO (1) | WO2008115234A1 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021125794A1 (en)* | 2019-12-19 | 2021-06-24 | Samsung Electronics Co., Ltd. | Computing device and method of operating the same |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9159151B2 (en) | 2009-07-13 | 2015-10-13 | Microsoft Technology Licensing, Llc | Bringing a visual representation to life via learned input from the user |
| US20130212501A1 (en)* | 2012-02-10 | 2013-08-15 | Glen J. Anderson | Perceptual computing with conversational agent |
| US11253783B2 (en)* | 2019-01-24 | 2022-02-22 | Kabushiki Kaisha Ubitus | Method for training AI bot in computer game |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB9817834D0 (en)* | 1998-08-14 | 1998-10-14 | British Telecomm | Predicting avatar movement in a distributed virtual environment |
| US6922685B2 (en)* | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
| JP2003323388A (en)* | 2002-05-01 | 2003-11-14 | Omron Corp | Information providing method and information providing system |
| JP2004113279A (en)* | 2002-09-24 | 2004-04-15 | Atlus Co Ltd | Game system |
| US7636755B2 (en)* | 2002-11-21 | 2009-12-22 | Aol Llc | Multiple avatar personalities |
| US7090576B2 (en)* | 2003-06-30 | 2006-08-15 | Microsoft Corporation | Personalized behavior of computer controlled avatars in a virtual reality environment |
| US8002630B2 (en)* | 2003-08-18 | 2011-08-23 | Igt | Tournament game system and method using a tournament game card |
| US20050143174A1 (en)* | 2003-08-19 | 2005-06-30 | Goldman Daniel P. | Systems and methods for data mining via an on-line, interactive game |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021125794A1 (en)* | 2019-12-19 | 2021-06-24 | Samsung Electronics Co., Ltd. | Computing device and method of operating the same |
| US11527247B2 (en) | 2019-12-19 | 2022-12-13 | Samsung Electronics Co., Ltd. | Computing device and method of operating the same |
| Publication number | Publication date |
|---|---|
| JP5188515B2 (en) | 2013-04-24 |
| JP2010526356A (en) | 2010-07-29 |
| WO2008115234A1 (en) | 2008-09-25 |
| Publication | Publication Date | Title |
|---|---|---|
| US7814041B2 (en) | System and method for control and training of avatars in an interactive environment | |
| US12427418B2 (en) | Gamer training using neural networks | |
| Breazeal et al. | Crowdsourcing human-robot interaction: New methods and system evaluation in a public environment | |
| Yannakakis | Game AI revisited | |
| Drachen et al. | Game analytics–the basics | |
| Rohlfshagen et al. | Pac-man conquers academia: Two decades of research using a classic arcade game | |
| Yannakakis et al. | Modeling players | |
| Yannakakis et al. | Experience-driven procedural content generation | |
| US11325048B2 (en) | User experience modeling for gaming applications | |
| CN113365706A (en) | Artificial Intelligence (AI) model training using cloud gaming networks | |
| US8616970B2 (en) | System and method for managing a multiplicity of text messages in an online game | |
| KR20210130232A (en) | Creating game bots for gaming applications | |
| US7937348B2 (en) | User profiles | |
| US11890545B2 (en) | Enhancement of gameplay experience based on analysis of player data | |
| Nogueira et al. | Guided emotional state regulation: Understanding and shaping players’ affective experiences in digital games | |
| Burelli et al. | Adapting virtual camera behaviour through player modelling | |
| Seyderhelm et al. | Systematic review of dynamic difficulty adaption for serious games: The importance of diverse approaches | |
| KR20100014580A (en) | A system and method for control and training of avatars in an interactive environment | |
| Zhang et al. | Crew: Facilitating human-ai teaming research | |
| Rezvani et al. | Gamers' behaviour and communication analysis in massively multiplayer online games: a survey | |
| CN110711379A (en) | System and method for intelligently rewarding completion of tasks | |
| KR20240167424A (en) | Quality Assurance Game Bots for Gaming Applications | |
| Nalepka et al. | Assessing team effectiveness by how players structure their search in a first‐person multiplayer video game | |
| KR20210013529A (en) | System for managing user experience and method therefor | |
| CN117205576A (en) | Training methods, devices, equipment and storage media for artificial intelligence models |
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application | Patent event date:20090925 Patent event code:PA01051R01D Comment text:International Patent Application | |
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination | ||
| WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |