KR20080094067A - 부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체 - Google Patents

부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20080094067A
KR20080094067A KR1020087020070A KR20087020070A KR20080094067A KR 20080094067 A KR20080094067 A KR 20080094067A KR 1020087020070 A KR1020087020070 A KR 1020087020070A KR 20087020070 A KR20087020070 A KR 20087020070A KR 20080094067 A KR20080094067 A KR 20080094067A
Authority
KR
South Korea
Prior art keywords
team
player
players
score
game
Prior art date
Application number
KR1020087020070A
Other languages
English (en)
Inventor
토레 케이. 에이치. 그래펠
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20080094067A publication Critical patent/KR20080094067A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3225Data transfer within a gaming system, e.g. data sent between gaming machines and users
    • G07F17/3232Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the operator is informed
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3225Data transfer within a gaming system, e.g. data sent between gaming machines and users
    • G07F17/3232Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the operator is informed
    • G07F17/3237Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the operator is informed about the players, e.g. profiling, responsible gaming, strategy/behavior of players, location of players
    • G07F17/3239Tracking of individual players
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/326Game play aspects of gaming systems
    • G07F17/3272Games involving multiple players
    • G07F17/3276Games involving multiple players wherein the players compete, e.g. tournament

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computational Mathematics (AREA)
  • Social Psychology (AREA)
  • Mathematical Analysis (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Primary Health Care (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

각 플레이어에 대한 스코어링은 하나 이상의 플레이어들의 하나 이상의 팀들에서 서로 경쟁하는 플레이어들 사이의 게임의 결과에 기초할 수 있다. 스코어링은 또한 게임의 하나 이상의 플레이어들이 게임의 전체 시간의 일부 동안만 플레이하는 부분 플레이를 고려할 수 있다. 추가적으로 또는 대안적으로, 스코어링은 다른 팀에 대한 한 팀의 상대적인 랭킹이 알려지지 않는, 팀들의 부분 랭킹을 고려할 수 있다. 각 플레이어의 점수는, 플레이어의 점수를 나타내는 분포에서 신뢰 수준을 표시할 수 있는, 잠재 점수들에 대한 분포로서 나타낼 수 있다. 스코어링은 게임 환경 내에서의 플레이어의 진행 상황 및/또는 지위를 추적하는 데 사용되거나, 랭킹에 대한 리더 보드 표시에 사용되거나, 및/또는 미래 게임에서 플레이어들을 서로 매칭하는 데 사용될 수 있다.
플레이어 랭킹, 스코어링, 게임, 분포

Description

부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체{PLAYER RANKING WITH PARTIAL INFORMATION}
게임의 플레이어들의 랭킹을 정할 때, 통상적인 랭킹 시스템들은 단순히 플레이어의 스킬(skill)을 추적한다. 예를 들어, Arpad Elo는 체스 등과 같은 다수의 2팀 게임 환경(two-team gaming environment)에서 사용되는 ELO 랭킹 시스템을 소개하였다. ELO 랭킹 시스템에서, 플레이어의 성취도(performance) 또는 스킬은 정규적으로 분포된 무작위 변수의 평균을 천천히 변경함으로써 측정될 것으로 추정된다. 평균값은 승, 무승부, 및 패로부터 추정된다. 그리고, 평균값은 실제의 게임 승패를 예상되는 게임 승패와 비교함으로써 선형적으로 갱신된다.
본 발명의 앞선 양상들 및 부수적인 이점들은, 아래의 상세한 설명을 첨부된 도면과 함께 참조함으로써 더 쉽게 이해될 것이다.
도 1은 스코어링 시스템(scoring system)을 구현하기 위한 예시적인 컴퓨팅 시스템이다.
도 2는 예시적인 스코어링 시스템의 데이터 흐름도이다.
도 3은 두 잠재 점수 분포에 대한 예시적인 그래프이다.
도 4는 두 플레이어의 점수의 연계 분포(joint distribution)에 대한 예시적 인 그래프이다.
도 5는 두 플레이어 또는 팀들의 점수를 갱신하기 위한 예시적인 방법의 흐름도이다.
도 6은 두 플레이어 또는 팀들을 그들의 점수 분포에 기초하여 매칭(matching)하기 위한 예시적 방법의 흐름도이다.
도 7은 복수의 팀들의 점수를 갱신하기 위한 예시적인 방법의 흐름도이다.
도 8은 복수의 팀들의 점수를 매칭하기 위한 예시적인 방법의 흐름도이다.
도 9는 기대값 최대화(expectation maximization)를 이용하여, 절단된 가우스 분포(truncated Gaussian distribution)를 근사시키기 위한 예시적인 방법의 흐름도이다.
도 10은 매치(match)의 품질을 측정하기 위한 예들의 그래프이다.
도 11은 예시적인 랭킹 행렬 A에 대한 표이다.
도 12는 부분 플레이가 있는 예시적인 랭킹 행렬 A에 대한 표이다.
도 13은 알려지지 않은 부분 랭킹이 있는 예시적인 랭킹 행렬 A에 대한 표이다.
도 14는 부분 랭킹을 통합하는 예시적인 랭킹 행렬 A에 대한 표이다.
예시적인 운영 환경
도 1 및 아래의 논의는 스코어링 시스템이 구현될 수 있는 적절한 컴퓨팅 환경에 대한 간략하고 일반적인 설명을 제공하기 위한 것이다. 도 1의 운영 환경은 적절한 운영 환경의 한 예일 뿐이며, 운영 환경의 사용의 범위 또는 기능에 있어 임의의 제한을 제안하고자 하는 것이 아니다. 여기에 설명된 스코어링 시스템에 사용하기에 적합한 다른 잘 알려진 컴퓨팅 시스템, 환경, 및/또는 구성들은 개인용 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 멀티프로세서 시스템, 마이크로-프로세서 기반 시스템, 프로그램가능한 가전 제품, 네트워크 개인용 컴퓨터, 미니 컴퓨터, 메인프레임 컴퓨터, 상기 시스템 또는 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경 등을 포함하지만, 이에 제한되는 것은 아니다.
요구되지는 않지만, 스코어링 시스템은 하나 이상의 컴퓨터 또는 다른 장치들에 의해 실행되는, 프로그램 모듈과 같은 컴퓨터 실행가능 명령어들의 일반적인 컨텍스트에서 설명될 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 통상적으로, 프로그램 모듈의 기능은 결합되거나 다양한 환경에서 요구되는 바에 따라 분산될 수 있다.
도 1을 참조하여, 스코어링 시스템을 구현하기 위한 예시적인 시스템은 컴퓨팅 장치(100)와 같은 컴퓨팅 장치를 포함한다. 가장 기본적인 구성에서, 컴퓨팅 장치(100)는 통상적으로 적어도 하나의 처리 유닛(102) 및 메모리(104)를 포함한다. 컴퓨팅 장치의 정확한 구성 및 유형에 따라, 메모리(104)는 (RAM과 같은) 휘발성, (ROM, 플래시 메모리 등과 같은) 비휘발성 또는 이 둘의 어떤 조합일 수 있다. 이 가장 기본적인 구성은 점선(106)에 의해 도 1에 도시된다. 이에 더해, 장치(100)는 추가적인 특징 및/또는 기능을 또한 가질 수 있다. 예를 들어, 장 치(100)는 자기 또는 광학 디스크 또는 테이프를 포함하지만 이에 제한되지 않는 추가적인 저장소(예를 들어, 분리식 및/또는 비분리식)를 또한 포함할 수 있다. 이러한 추가적인 저장소는 분리식 저장소(108) 및 비분리식 저장소(110)에 의해 도 1에 도시된다. 컴퓨터 자장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술에 구현된 휘발성 및 비휘발성, 분리식 및 비분리식 매체를 포함한다. 메모리(104), 분리식 저장소(108), 및 비분리식 저장소(110) 모두는 컴퓨터 저장 매체의 예이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 다른 광학 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하느느 데 사용될 수 있고 장치(100)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만 이에 제한되지는 않는다. 임의의 이러한 컴퓨터 저장 매체는 장치(100)의 일부일 수 있다.
장치(100)는 또한 장치(100)가 다른 장치들과 통신할 수 있도록 하는 통신 접속부(들)(112)을 포함한다. 통신 접속부(들)(112)은 통신 매체의 예이다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함한다. 여기에 사용된 컴퓨터 판독가능 매체라는 용어는 저장 매체 및 통신 매체 모두를 포함한다.
장치(100)는 또한 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치, 레이저 거리 측정기(laser range finder), 적외선 카메라, 비디오 입력 장치, 및/또는 임의의 다른 입력 장치와 같은 입력 장치(들)(114)를 가질 수 있다. 디스플레이, 스피커, 프린터, 및/또는 임의의 다른 출력 장치와 같은 출력 장치(들)(116) 또한 포함될 수 있다.
스코어링 시스템
게임 환경, 특히 전자 온라인 게임 환경의 플레이어들은, 서로와 관련하여 점수가 매겨지거나, 미리 결정된 스코어링 시스템과 관련하여 점수가 매겨질 수 있다. 여기에서 사용되는바, 플레이어의 점수는 플레이어가 게임 내에서 점수 또는 다른 보상(reward)을 획득함으로써 달성하는 것이 아니고, 오히려, 점수는 랭킹 또는 플레이어의 스킬에 대한 다른 표시(indication)를 의미한다. 어떠한 게임 환경이라도 아래에 더 상세히 설명되는 스코어링 시스템에서의 사용에 적합할 수 있다는 것을 이해해야 한다. 예를 들어, 게임의 플레이어들은 온라인 게임 환경을 통해 중앙 서버와 통신할 수 있고, 또는 게임 콘솔에 직접 연결될 수 있고, 또는 물리적 세계 게임(예를 들어, 체스, 포커, 테니스)을 플레이하는 것 등을 할 수 있다.
스코어링은 게임 환경 내에서의 플레이어의 진행 상황(progress) 및/또는 지위(standing)를 추적하는 데 사용되고/거나, 미래의 게임에서 플레이어들을 서로 매치하는 데 사용될 수 있다. 예를 들어, 각 플레이어에 대해 게임에서 실질적으로 동등한 도전(challenge)을 형성하기 위해, 실질적으로 동일한 점수, 또는 미리 결정된 및/또는 사용자 정의된(user defined) 임계값을 만족하는 점수를 갖는 플레이어들이 매치될 수 있다.
각 플레이어에 대한 스코어링은 둘 이상의 팀에서 서로 경쟁하는 플레이어들 사이의 하나 이상의 게임들의 결과에 기초할 수 있고, 각 팀은 하나 이상의 플레이어를 갖는다. 각 게임의 결과는 그 게임에 참여한 각 플레이어의 점수를 갱신할 수 있다. 각 게임의 결과는 구체적인 승자, 참여하는 플레이어들의 랭킹 목록, 및 어쩌면 동점(tie) 또는 무승부로서 표시될 수 있다. 숫자 척도(numerical scale) 상의 각 플레이어의 점수는, 평균 점수 μ 및 점수 분산 σ2에 의해 각 플레이어에 대해 매개변수화될 수 있는 잠재 점수들에 대한 분포로서 나타낼 수 있다. 분산은 플레이어의 점수를 나타내는 분포에서의 신뢰 수준(confidence level)을 나타낼 수 있다. 각 플레이어에 대한 점수 분포는 가우스 분포로 모델링될 수 있고, 베이지안 추론 알고리즘을 통해 결정될 수 있다.
도 2는 복수의 플레이어들의 점수를 결정하기 위한 예시적인 스코어링 시스템을 도시한다. 아래의 예가 게임에서 한 플레이어가 다른 하나의 플레이어와 대항(opposing)하여 게임 결과를 만들어내는 것과 관련하여 논의되지만, 이어지는 예 들은 다른 팀에 대항하는 하나 이상의 플레이어를 포함하는 팀뿐 아니라 멀티팀 게임들을 논의할 것이라는 것을 이해해야 한다. 도 2의 스코어링 시스템(200)은 둘 이상의 플레이어들 사이의 게임의 결과(210)를 받아들이는 점수 갱신 모듈을 포함한다. 게임 결과가 임의의 적절한 방법을 통해 수신될 수 있다는 것을 이해해야 한다. 예를 들어, 결과는, 예를 들어, 글로벌 통신 네트워크를 통해서와 같은 임의의 적절한 방법으로, 온라인 시스템과 같은 플레이어 환경으로부터 스코어링 시스템의 중앙 프로세서로 전달될 수 있다. 또 다른 예에서, 대항하는 플레이어(들)의 점수는 스코어링 시스템을 호스트하는 플레이어의 게임 시스템에 전달될 수 있다. 이러한 방식으로, 개별 게임 시스템은 글로벌 통신 네트워크를 통해서와 같은 임의의 적절한 방법으로, 대항하는 플레이어들의 점수를 수신할 수 있다. 또 다른 예에서, 스코어링 시스템은, 홈 게임 시스템(home game system)과 같이, 게임을 플레이하기 위해 플레이어들에 의해 사용되는 게임 환경의 일부일 수 있다. 또 다른 예에서, 게임 환경이 게임 결과를 스코어링 시스템에 전달하는 것이 가능하지 않은 경우, 예를 들어, 게임이 보드 체스(board chess)와 같은 '실제' 세계 게임인 경우, 결과(들)는 수동으로 스코어링 시스템에 입력될 수 있다.
도 2에 도시된 바와 같이, 결과(210)는 이기는 팀, 지는 팀, 및/또는 동점 또는 무승부에 대한 표시일 수 있다. 예를 들어, 두 플레이어(플레이어 A와 플레이어 B)가 게임에서 서로 대항하는 경우, 게임 결과는 플레이어 A가 이기고 플레이어 B가 지거나, 플레이어 A가 지고 플레이어 B가 이기거나, 플레이어 A와 B가 무승부이거나 하는 세 가지 가능한 결과 중 하나일 수 있다. 각 플레이어는, 플레이어 향상(player improvement) (또는 불운한 퇴화(unfortunate atrophy))으로 인한 시간에 따른 가능한 변경 및 게임의 결과에 따라 동적 점수 모듈 및 점수 갱신 모듈 둘 다에 의해, 갱신된 점수(updated score)(216)로 갱신될 수 있는 점수(212)를 갖는다. 더 구체적으로, 플레이어 점수(212)가 분포인 경우, 각 플레이어의 점수의 평균 및 분산은 플레이어 향상(또는 불운한 퇴화)으로 인한 시간에 다른 가능한 변경 및/또는 결과를 고려하여 갱신될 수 있다.
점수 갱신 모듈(202)은 하나 이상의 게임의 결과를 통해 플레이어의 점수를 학습한다. 선택적인 동적 점수 모듈(204)은 플레이어 향상(또는 불운한 퇴화)으로 인해 하나 이상의 플레이어의 점수(212)가 시간에 따라 변경될 수 있도록 한다. 시간에 따라 플레이어 스킬 변경이 가능하도록 하기 위해, 플레이어의 점수는, 하나 이상의 게임의 결과들로부터 결정되지만, 시간에 따라 고정되지 않을 수 있다. 한 예에서, 점수 평균값이 증가되고/거나 점수 분산 또는 점수의 신뢰도가 커질 수 있다. 이러한 방식으로, 각 플레이어의 점수는 동적 플레이어 점수(214)로 변경되어 플레이어의 향상을 가능하게 한다. 다음, 동적 플레이어 점수(214)는 점수 갱신 모듈에 대한 입력으로서 사용될 수 있다. 이러한 방식으로, 각 플레이어의 점수는 둘 이상의 플레이어들 간에 플레이되는 일련의 게임들을 통해 학습될 수 있다.
각 플레이어의 동적 또는 갱신된 점수는, 플레이어 표시 선호도 및/또는 점수 매칭 기술과 같은 요인들에 기초하여 플레이어들 간에 매치를 생성하기 위해, 플레이어 매치 모듈(206)에 의해 사용될 수 있다. 그들의 동적 플레이어 점 수(214) 또는 갱신된 점수(216)로 매칭된 플레이어들은 서로 대항하여 또 다른 게임 결과(210)를 생성할 수 있다.
몇몇 예에서, 리더 보드(leader board) 모듈(218)은 둘 이상의 플레이어의 랭킹을 결정하기 위해 사용될 수 있고, 리더 보드 랭킹 목록의 적어도 일부를 디스플레이 장치에 게시하는 것, 하나 이상의 플레이어들의 액세스를 위해 리더 보드 랭킹 목록을 저장하는 것 등과 같이, 랭킹 목록의 적어도 일부를 하나 이상의 장치들에 제공할 수 있다.
몇몇 경우에서, n 명의 플레이어들의 랭킹을 정확하게 결정하기 위해, 근사적으로 정확한 랭킹을 가진 완전한 리더 보드를 생성하도록 적어도 log(n!), 또는 근사적으로 nlog(n) 개의 게임 결과들이 계산될 수 있다. 로그의 밑수(base)는 두 플레이어 사이의 고유한 결과의 수에 따른다. 이 예에서 세 개의 가능한 결과(플레이어 A가 승, 플레이어 A가 패, 그리고 플레이어 A와 B가 무승부)가 있기 때문에 밑수는 3이다. 산정된 결과들의 하한(lower bound)은 각 결과들이 정보를 충분히 제공할 수 있는 경우, 즉, 선험적으로, 게임의 결과들이 실질적으로 동일한 확률을 가질 때에만 획득될 수 있다. 따라서, 다수의 게임에서, 각 결과로부터 획득되는 지식을 증가시키기 위해 플레이어들은 동일한 강도(strength)를 갖도록 매칭될 수 있다. 또한, 플레이어는 동등한 플레이어(peer player)로부터의 정당한 도전을 받아들일 수 있다. 몇몇 경우에서, 플레이어 랭킹 및 스코어링을 확률적으로 다룰 때, 플레이어들의 매칭은 플레이어의 랭킹에 '불확실성(uncertainty)'을 포함시킬 수 있다.
몇몇 경우에서, m 개의 서로 다른 수준의 플레이어 랭킹이 있을 수 있다. 서로 다른 수준 m의 수가 실질적으로 플레이어들의 수 n보다 적으면, (정보 제공(informative)) 게임들의 최소 수는 몇몇 경우에서 nlog(m)으로 감소될 수 있다. 또한, 게임의 결과가 k 개의 팀들 간의 랭킹인 경우, 각 게임은 log(k!) 비트까지 제공할 수 있고, 이러한 방식으로, 플레이어들의 랭킹을 정하기 위해 충분한 정보를 추출하기 위해 대략적으로 적어도
Figure 112008058366628-PCT00001
개의 정보 제공가능 게임들이 플레이될 수 있다.
동적 점수 모듈(204), 점수 갱신 모듈(202), 플레이어 매치 모듈(206), 리더 보드 모듈이 스코어링 시스템(200) 내의 개별 프로세스들로서 여기에 설명되지만, 스코어링 시스템(200)의 임의의 기능 또는 컴포넌트는 다른 프로세스들 또는 컴포넌트들 중 임의의 것에 의해 제공될 수 있다. 또한, 다른 스코어링 시스템 구성들도 적절할 수 있다는 것을 이해해야 한다. 예를 들어, 둘 이상의 동적 스코어링 모듈(204), 점수 갱신 모듈(202), 점수 벡터, 및/또는 플레이어 매치 모듈이 제공될 수 있고, 점수, 랭킹, 및/또는 게임 결과를 저장하는 데 둘 이상의 데이터베이스가 사용가능할 수 있고, 스코어링 시스템의 모듈들의 임의의 부분이 스코어링 시스템을 지원하는 소프트웨어 내에 하드 코딩(hard-coded)될 수 있고, 및/또는 스코어링 시스템(200)의 임의의 부분이 네트워크의 일부이거나 네트워크 외부에 있는 임의의 컴퓨팅 시스템에 의해 제공될 수 있다.
점수 학습(Learning Scores)
둘 이상의 플레이어들 및/또는 팀들 간의 게임의 결과는, 그 특정 게임에 대한 플레이어들 및/또는 팀들의 랭킹을 통해서와 같은 임의의 적절한 방식으로 표시될 수 있다. 예를 들어, 2-플레이어 게임(two player game)에서, 결과는 플레이어 A 승, 플레이어 A 패, 또는 플레이어 A와 B 무승부일 수 있다. 게임 결과에 따라, 게임의 각 플레이어는 수치적 척도에 따라 랭킹될 수 있다. 예를 들어, 플레이어의 랭킹 ri는 승자에 대해서는 1의 값을 갖고 패자에 대해서는 2의 값을 가질 수 있다. 동점인 경우, 두 플레이어는 같은 랭킹을 갖는다. 멀티-팀의 예에서, 플레이어들은 10에서 n까지 열거될 수 있다. k 개의 팀들 간의 게임은 j번째 팀의 nj 플레이어들(단일 플레이어들만 있고 멀티-플레이어 팀들이 없는 경우에 대해 nj=1)의 k 인덱스들
Figure 112008058366628-PCT00002
에 의해 지정될(specified) 수 있고, 각 팀에 의해 달성된 랭킹 rj
Figure 112008058366628-PCT00003
로 나타낼 수 있다. 다시, 승자는 1의 랭킹을 갖는다고 가정될 수 있다.
플레이어의 스킬은 점수로 나타낼 수 있다. 플레이어의 점수 si는 표준 척도 및/또는 다른 플레이어와 비교하여 플레이어의 지위(standing)를 나타낼 수 있다. 점수는 개별적일 수 있는데, 플레이어로서 동작하는 1인 이상의 사람들(예를 들어, 팀), 또는 게임 유형, 게임 애플리케이션 등에 대해 개별적일 수 있다. 몇몇 경우에서, 팀의 스킬은 j번째 팀의 플레이어들의 모든 스킬 또는 점수의 함수
Figure 112008058366628-PCT00004
일 수 있다. 함수는 임의의 적절한 함수일 수 있다. 팀이 한 명의 플레이어 만을 포함하는 경우, 함수 S는 항등 함수, 예를 들어,
Figure 112008058366628-PCT00005
일 수 있다.
각 플레이어의 점수 si는 확률적 이행 속성(stochastic transitive property)을 가질 수 있다. 더 구체적으로, 플레이어 i가 플레이어 j보다 높게 스코어링된 경우, 플레이어 j가 플레이어 i를 이기는 것보다 플레이어 i가 플레이어 j를 이기기 쉽다. 수학식으로 나타내면:
Figure 112008058366628-PCT00006
두 명의 플레이어 간의 임의의 게임에서 오직 세 개의 상호 배타적인 결과(플레이어 i가 이기거나, 지거나, 무승부임)가 있기 때문에, 이 확률적 이행 속성은 플레이어 i가 이기거나 무승부일 확률이 1/2 이상임을 의미한다.
도 2의 점수 갱신 모듈(202)에서와 같이 각각의 플레이어에 대한 점수를 추정하기 위하여, 베이지안 학습 방법론이 사용될 수 있다. 베이지안 접근법으로, 플레이어의 진정한(true) 점수 si에서의 신뢰(belief)는 점수의 확률 밀도(즉, P(s))로서 표시될 수 있다. 이하의 예들에서, 진정한 점수에서의 신뢰를 나타내는 점수의 확률 밀도는 평균 μ 및 대각 공분산 행렬(diagonal covariance matrix)(diag(σ2))을 갖는 가우스으로서 선택된다. 가우스 밀도는 이하와 같이 나타낼 수 있다:
Figure 112008058366628-PCT00007
가우스를 선택하면, 분포는 모드 μ를 갖는 유니모드(unimode)가 될 수 있다. 이러한 방식으로, 플레이어는 광범위하게 바뀌는 플레이 수준들 간을 오락가락하리라고는 예측되지 않을 것이다. 또한, 점수의 가우스 표현은 메모리에 효율적으로 저장될 수 있다. 특히, 대각 공분산 행렬을 가정하면, 플레이어 i에 대한 각각의 개별 점수는 2개의 값, 즉 평균 μi 및 분산 σi 2 로 표현될 수 있다.
각각의 플레이어의 초기 점수 및 갱신된 점수는 임의의 적절한 방식으로 저장될 수 있다. 플레이어의 점수는 평균 μ 및 분산 σ2, 또는 평균 μ 및 표준 편차 σ 등으로서 표현될 수 있음이 이해되어야 한다. 예를 들어, 각 플레이어의 평균 및 분산은 데이터 저장소 등에서 예를 들어 평균 벡터 μ 및 분산 벡터 σ2인 별개의 벡터들로 저장될 수 있다. 모든 가능한 플레이어들에 대한 모든 평균 및 분산이 예를 들어 μ 및 σ2인 벡터들로 저장된다면, 갱신 식은 게임 결과에 참여한 플레이어와 연관된 이러한 평균 및 분산만을 갱신시킬 수 있다. 대안적으로 또는 추가적으로, 각 플레이어에 대한 점수는, 플레이어 프로필 데이터 저장소, 점수 행렬 등에 저장될 수 있다. 각 플레이어의 점수는 플레이어 식별자 i와의 연관, 및 데이터 저장소 내에서의 배치 또는 위치가 연관된 플레이어를 나타내는 것 등을 포함하여, 임의의 적절한 방식으로 플레이어와 연관될 수 있다.
관계형 데이터베이스, 객체지향 데이터베이스, 비구조적(unstructured) 데이터베이스, 인-메모리(in-memory) 데이터베이스, 또는 기타 데이터 저장소를 포함하는 임의의 적절한 포맷의 임의의 적절한 데이터 저장소가 스코어링 시스템(200)에 점수 및 게임 결과를 저장 및/또는 통신하는 데 사용될 수 있음을 알 것이다. 저장 어레이(storage array)는 ASCII 텍스트, 바이너리 파일, 통신 네트워크를 통해 전송된 데이터 또는 임의의 기타 파일 시스템과 같은 플랫 파일 시스템(flat file system)을 이용하여 구축될 수 있다. 상술한 데이터 저장소의 이러한 가능한 구현에도 불구하고, 본 명세서에서 사용되는 데이터 저장소 및 저장 어레이라는 용어는 컴퓨터에 의해 액세스가능한, 임의의 방식으로 수집 및 저장되는 임의의 데이터를 칭한다.
스코어링 시스템이 각 플레이어에 대한 점수를 학습하므로, 가우스 모델의 분포는 평균 μi 및 σ2에 대한 효율적인 갱신식을 허용할 수 있다. 예를 들어 그 게임에 대한 플레이어들의 랭킹 r에 의해 표시된 게임의 결과를 관측한 후에, 점수 s(예를 들어 플레이어 i에 대한 점수 si 및 플레어어 j에 대한 점수 sj)의 신뢰 분포 또는 밀도 P(s)는 이하와 같은 베이스 룰을 이용하여 갱신될 수 있다:
Figure 112008058366628-PCT00008
여기에서, 변수 ik는 게임에 참여하는 팀 k의 각 플레이어에 대한 식별자 또는 표시자(indicator)이다. 2명의 플레이어의 예에서, 제1 팀에 대한 벡터 i1은 플레이어 A에 대한 표시자이고, 제2 팀에 대한 벡터 i2는 플레어어 B에 대한 표시자이다. 이하 더욱 논의될 복수의 플레이어의 예에서는, 벡터 i는 각 팀에 대해 하나보다 많을 수 있다. 이하 더욱 논의될 복수의 팀의 예에서는, 팀의 개수 k는 2보다 클 수 있다. 식 (3)의 복수의 팀의 예에서, 플레이어들의 점수가 주어진 때의 랭킹의 확률
Figure 112008058366628-PCT00009
는, 팀의 개별 플레이어들의 점수의 함수인 팀의 점수
Figure 112008058366628-PCT00010
가 주어지면 변형될 수 있다.
새롭게 갱신된 신뢰,
Figure 112008058366628-PCT00011
는 사후 신뢰(posterior belief)(예를 들어, 갱신된 점수(214, 216))라고도 칭하며, 대항자(opponent)에 대한 다음 게임의 평가에서 예를 들어 플레이어 점수(212)인 사전 신뢰(prior belief) P(s)를 대신하여 사용될 수 있다. 이러한 방법론은 온-라인 학습으로 알려져 있으며, 예를 들어, 시간이 지남에 따라 하나의 신뢰 분포 P(s)만이 유지되며, 참여하는 플레이어들
Figure 112008058366628-PCT00012
에 대해 각각 관측되는 게임 결과 r이 신뢰 분포에 통합된다.
게임의 결과는 플레이어들의 점수의 결정으로의 통합 후에, 폐기될 수 있다. 그러나, 게임 결과 r은 각 플레이어의 점수의 결정에 완전히 포함되지(encapsulated) 않을 수 있다. 보다 구체적으로 사후 신뢰
Figure 112008058366628-PCT00013
는 컴팩트하고 효율적인 방식으로 표현되지 않을 수 있으며, 정확하게 계산되지 않 을 수 있다. 이러한 경우에, 진정한 사후 확률(true posterior)의 최상의 근사는 기대값 전파(expectation propagation), 변동 추론(variational inference), ADF(assumed density filtering), 라플라스 근사, 최대 우도 등을 포함하는 임의의 적합한 근사 기술을 이용하여 결정될 수 있다. ADF는 대각 공분산을 갖는 가우스 분포와 같은 컴팩트한 표현을 향유하는 소정의 군(family)에서의 진정한 사후 확률에 최상의 근사를 계산한다. 최상의 근사는 새로운 사전 분포로서 사용될 수 있다. 이하의 예들은 수치 적분 및/또는 기대값 전파 중 하나로 해결되는 ADF에 대하여 논의된다.
가우스 분포
각 플레이어의 점수에서의 신뢰는 가우스 분포에 기초할 수 있다. n 차수를 갖는 가우스 밀도는 이하와 같이 규정된다:
Figure 112008058366628-PCT00014
N(x)의 가우스는
Figure 112008058366628-PCT00015
에 의해 규정되는 가우스에 대한 축약형 표시법(shorthand notation)으로서 규정될 수 있다. 누적 가우스 분포 함수는 이하와 같이 규정되는
Figure 112008058366628-PCT00016
에 의해 표시될 수 있다.
Figure 112008058366628-PCT00017
한편, 축약형
Figure 112008058366628-PCT00018
Figure 112008058366628-PCT00019
의 누적 분포를 표시한다.
Figure 112008058366628-PCT00020
의 표시는 x의 무작위 추첨(random draw)에 대한 f의 기대값을 나타낸다. 점수가 주어진 때의 결과의 사후 확률 또는 결과가 주어진 때의 점수의 확률은 가우스가 아닐 수 있다. 따라서, 진정한 사후 확률과 가우스 근사 간의 쿨백-라이블러 발산(Kullback-Leibler divergence)이 최소화되도록 하는 최상의 가우스를 발견함으로써 사후 확률이 추정될 수 있다. 예를 들어, 사후 확률
Figure 112008058366628-PCT00021
Figure 112008058366628-PCT00022
에 의해 근사화될 수 있는데, 윗첨자 *는 근사가 소정의 x에 대하여 최적인 것을 나타낸다. 이러한 방식으로 근사화된 가우스 사후 확률의 평균 및 분산은 이하와 같을 수 있다:
Figure 112008058366628-PCT00023
Figure 112008058366628-PCT00024
여기에서 벡터 gx 및 행렬 Gx는 이하와 같다:
Figure 112008058366628-PCT00025
Figure 112008058366628-PCT00026
그리고, 함수 Zx는 이하와 같이 규정된다:
Figure 112008058366628-PCT00027
수정되고 절단된 가우스
변수 x는 수정된 이중 절단(rectified double truncated) 가우스(지금부터 수정된 가우스라 함)에 따라 분포될 수 있으며, x의 밀도가 이하와 같이 주어진다면
Figure 112008058366628-PCT00028
로 주석이 달릴 수 있다:
Figure 112008058366628-PCT00029
Figure 112008058366628-PCT00030
변수 β가 무한으로 접근할 때 변수 β의 극한값을 취함으로써, 수정된 가우스는
Figure 112008058366628-PCT00031
으로 표시될 수 있다.
수정된 가우스의 클래스는 극한의 경우(limiting case)로서의 가우스 군을 포함한다. 보다 구체적으로, 변수 α가 무한으로 접근할 때 수정된 가우스의 극한이 취해진다면, 수정된 가우스는 점수의 사전 분포로서 이용되는
Figure 112008058366628-PCT00032
에 의해 표시되는 정규 가우스가다.
수정된 가우스의 평균은 이하와 같다:
Figure 112008058366628-PCT00033
여기에서, 함수
Figure 112008058366628-PCT00034
는 이하와 같다:
Figure 112008058366628-PCT00035
수정된 가우스의 분산은 이하와 같다:
Figure 112008058366628-PCT00036
여기에서, 함수
Figure 112008058366628-PCT00037
는 이하와 같다:
Figure 112008058366628-PCT00038
β가 무한으로 접근할 때, 함수
Figure 112008058366628-PCT00039
Figure 112008058366628-PCT00040
Figure 112008058366628-PCT00041
Figure 112008058366628-PCT00042
으로 표시될 수 있으며 이하의 식을 이용하여 결정될 수 있다:
Figure 112008058366628-PCT00043
Figure 112008058366628-PCT00044
이러한 함수들은 수치 적분 기술 또는 임의의 기타 적절한 기술을 이용하여 결정될 수 있다. 함수
Figure 112008058366628-PCT00045
는 표시자 함수
Figure 112008058366628-PCT00046
에 대한 스무드 근사(smooth approximation)일 수 있으며 언제나 [0, 1]을 경계로 할 수 있다. 반대로, 함수
Figure 112008058366628-PCT00047
는 t<α에 대해 개략적으로 α-t와 같이 커질 수 있으며, t>α에 대해서는 제로로 신속히 접근할 수 있다.
보조 함수
Figure 112008058366628-PCT00048
Figure 112008058366628-PCT00049
는 이하의 식을 이용하여 결정될 수 있다:
Figure 112008058366628-PCT00050
Figure 112008058366628-PCT00051
시간에 따른 점수 학습
스코어링 시스템에 대한 베이지안 학습 프로세스는 각 플레이어가 플레이한 각 매치의 결과에 기초하여 각 플레이어에 대한 점수를 학습한다. 베이지안 학습은 각 플레이어의 알려지지 않은 진정한 점수가 시간에 대해 정적이라고, 예를 들어 진정한 플레이어 점수는 변하지 않는다고 가정한다. 따라서, 플레이어가 플레이하는 게임의 수가 많아질수록, 도 2의 갱신된 플레이어의 점수(216)는 이 진정한 점수의 커지는 확실성(certainty)을 반영할 수 있다. 이러한 방식으로, 플레이되는 각각의 새로운 게임은 갱신된 플레이어 점수(216)에서의 확실성에 보다 작은 충격 또는 영향을 줄 수 있다.
그러나, 플레이어는 다른 플레이어들에 비해 및/또는 표준 척도에 비해 시간이 지남에 따라 향상될 수 있다(또는, 불행히도 저하될 수 있다). 이러한 방식으로, 각 플레이어의 진정한 점수는 시간의 경과에 따라 실제로 정적이지는 않다. 따라서, 스코어링 시스템의 학습 프로세스는 각 플레이어의 진정한 점수만을 학습하는 것이 아니라, 각 플레이어의 진정한 점수가 그 플레이어의 변화된 능력에 기인하여 시간의 경과에 따라 변할 수 있게 한다. 시간에 따른 변화된 플레이어 능력을 설명하기 위해서 점수의 사후 신뢰
Figure 112008058366628-PCT00052
는 시간에 따라 수정될 수 있다. 예를 들어, 일정한 시간 주기(예를 들어, △t)동안 게임을 하지 않는 것은 플레이어의 스킬이 쇠퇴되거나 저하되게 할 수 있다. 따라서, 도 2에 도시된 동적 점수(216)를 결정하기 위해, 플레이어의 점수의 사후 신뢰는, 그 플레이어의 플레이 히스토리(예를 들어, 최근의 플레이한 이후로부터의 시간)와 같은 임의의 적절한 요인에 기초하여 동적 점수 모듈에 의해 수정될 수 있다. 보다 구체적으로, 새 로운 사전 분포로서 사용된 사후 신뢰는, 플레이어가 △t의 시간동안 플레이하지 않은 경우에 인덱스 i를 갖는 플레이어의 점수의 사후 신뢰
Figure 112008058366628-PCT00053
로서 표현될 수 있다. 따라서, 수정된 사후 분포는 이하와 같이 표현될 수 있다:
Figure 112008058366628-PCT00054
여기에서, 첫번째 항
Figure 112008058366628-PCT00055
는 인덱스 i를 갖는 플레이어의 점수의 신뢰 분포이고, 두번째 항
Figure 112008058366628-PCT00056
는 최근 갱신 이후부터의 시간 길이 △t에서의 알려지지 않은 진정한 점수의 변화에서의 신뢰를 정량화한다. 함수
Figure 112008058366628-PCT00057
는 플레이되지 않은 시간(예를 들어, △t)의 함수로서의 진정한 점수의 분산이다. 함수
Figure 112008058366628-PCT00058
는 △t의 작은 시간에 대해서는 작을 수 있어, 플레이어의 성취도가 플레이하지 않는 시간의 작은 구간 동안에는 변하지 않을 수 있다는 것을 반영한다. 이 함수는 △t가 증가함에 따라 증가할 수 있다(예를 들어, 손과 눈의 협응이 쇠퇴할 수 있다는 것 등). 이하의 예들에서, 최근 갱신 이후에 경과된 시간이 제로보다 크다면, 이는 적어도 한 게임 더 플레이되었다는 것을 나타내므로, 동적 점수 함수
Figure 112008058366628-PCT00059
는 상수값
Figure 112008058366628-PCT00060
를 반환할 수 있다. 경과된 시간이 제로라면, 함수
Figure 112008058366628-PCT00061
는 0을 반환할 수 있다. 동적 점수 함수
Figure 112008058366628-PCT00062
에 대한 상수 함수
Figure 112008058366628-PCT00063
는 이하와 같이 나타내어질 수 있다:
Figure 112008058366628-PCT00064
여기에서 I는 표시자 함수이다.
플레이어들을 매치하기 위한 추론
특정 게임 결과에서의 신뢰는 각 플레이어의 점수에 대해 획득된 모든 지식(P(s))으로 정량화될 수 있다. 보다 구체적으로, 선택된 플레이어들의 점수가 주어지면 잠재 게임의 결과가 결정될 수 있다. 플레이어들의 선택된 세트에 대한 게임 결과에서의 신뢰는 이하와 같이 나타내어질 수 있다.
Figure 112008058366628-PCT00065
여기에서,
Figure 112008058366628-PCT00066
는 2 플레이어 게임에 대한 sA 및 sB이다. 장래 결과에서의 이러한 신뢰는 이하 더욱 상세히 설명할 바와 같이, 장래 게임을 위해 플레이어들을 매칭하는 데 이용될 수 있다.
2 플레이어 매치 예
게임에서 서로 대항하는 2명의 플레이어들(플레이어 A 및 플레이어 B)에 있어서, 게임의 결과는 하나의 변수 y로 요약될 수 있는데, 변수 y는 플레이어 A가 승리할 경우 1이고, 무승부일 경우 0이고, 플레이어 A가 패배할 경우에는 -1이다. 이러한 방식으로, 변수 y는 플레어어들의 랭킹 r을 고유하게 나타내는 데 사용될 수 있다. 상술한 수학식 3을 고려하여, 점수 s1 및 s2가 주어진 때 게임 결과 y의 모델로서 점수 갱신 알고리즘이 도출될 수 있다:
Figure 112008058366628-PCT00067
여기에서,
Figure 112008058366628-PCT00068
이며, 플레이어 A가 승리한 경우 rA는 1 및 rB는 2이고, 플레이어 B가 승리한 경우 rA는 2 및 rB는 1이고, 플레이어 A 및 B가 무승부인 경우 rA 및 rB는 모두 1이다.
게임의 결과(예를 들어, 변수 y)는 전체 참여 플레이어들(2인의 플레이어의 예에서는 플레이어 A 및 B임)의 성취도에 기초할 수 있다. 플레이어의 성취도는 잠재 점수(latent score) xi로 표현될 수 있고, 이 잠재 점수 xi는 인덱스 i를 갖는 플레이어의 점수 si 등가인 평균, 및 고정된 잠재 점수 분산 β2을 갖는 가우스 분포를 따를 수 있다. 보다 구체적으로, 잠재 점수 xi는 N(xi; si, β2)으로 표현될 수 있다. 잠재 점수의 예시적인 그래픽 표현들이 도 3에 가우스 곡선(302) 및 가우스 곡선(306)으로 각각 도시되어 있다. 점수 sA 및 sB는 라인(304) 및 라인(308)으로 각각 도시되어 있다.
게임의 결과를 결정하기 위하여 플레이어들의 잠재 점수가 비교될 수 있다. 그러나, 만약 팀간 차이가 적거나 거의 0이면, 게임의 결과는 동점일 수 있다. 이러한 방식에서, 2인의 경쟁하는 플레이어들 간의 이러한 실질적인 대등함의 작은 마진(margin)을 나타내기 위하여, 잠재 동점 마진 변수(latent tie margin variable) ε이 고정된 수로서 도입될 수 있다. 따라서, 게임의 결과는 이하와 같이 표현될 수 있다.
xA>xB+ε이면, 플레이어 A가 승자
xB>xA+ε이면, 플레이어 B가 승자
|xA - xB|≤ε이면, 플레이어 A와 B가 동점
가능한 잠재 동점 마진이 도 3에서 0 주위의 폭 2ε의 범위(310)로 도시되어 있다. 레이싱 게임과 같이 무승부가 불가능한 게임과 같은 일부의 경우, 잠재 동점 마진은 대략 0으로 설정될 수 있다. 다른 경우, 잠재 동점 마진은 게임의 종류, (예를 들어, 깃발 탈취하기(capture the flag)), 팀 크기 등과 같은 요인들에 따라 더 크게 또는 더 좁게 설정될 수 있다.
2개의 잠재 점수 곡선은 독립적이기 때문에(각각의 플레이어에 대한 잠재 점수의 독립성 때문에), 개별적인 플레이어 A 및 B의 점수가 주어지면, 결과 y의 확률은 이하와 같이 표현될 수 있다.
Figure 112008058366628-PCT00069
y = -1이면,
Figure 112008058366628-PCT00070
y = 0이면,
Figure 112008058366628-PCT00071
y = +1이면,
여기서, △는 잠재 점수 xA와 xB 간의 차(예를 들어, △ = xA - xB)이다.
플레이어 A 및 플레이어 B에 대한 잠재 점수의 연계 분포(joint distribution)는 그래프에서 '범프(bump)'(402)를 형성하는 등고선으로서 도 4에 도시되어 있으며, 이 그래프는 플레이어 A의 잠재 점수를 나타내는 제1 축(410) 및 플레이어 B의 잠재 점수를 나타내는 제2 축(412)을 갖는다. '범프'(402) 또는 연계 분포의 배치는 '범프'(402) 아래에 있는 부분의 영역의 확률 질량(probability mass)을 조사함으로써 플레이어 A 또는 B가 이길 가능성을 나타낼 수 있다. 예를 들면, 라인(414) 위에 있는 영역(404)의 확률 질량은 플레이어 B가 이길 가능성이 좀더 높음을 나타내고, 라인(416) 아래에 있는 영역(406)의 확률 질량은 플레이어 A가 이길 가능성이 좀더 높음을 나타내고, 라인(414) 및 라인(416)에 의해 한정된 영역(408)의 확률 질량은 두 플레이어가 동점일 가능성을 나타낼 수 있다. 이러한 방식으로, 연계 분포 범프(402) 아래에 있는 영역(404)의 확률 질량은 플레이어 B가 이길 확률이고, 연계 분포 범프(402) 아래에 있는 영역(406)의 확률 질량은 플 레이어 A가 이길 확률이고, 연계 분포 범프(402) 아래에 있는 영역(408)의 확률 질량은 플레이어들이 동점으로 될 확률이다. 도 4의 예시적인 연계 분포(402)에 도시된 바에 의하면, 플레이어 B가 이길 가능성이 좀더 높다.
2 플레이어 점수 갱신
위에서 언급된 바와 같이, 각각의 플레이어 i(예를 들어, 플레이어 A 및 B)에 대한 점수(예를 들어, 평균 μi 및 분산 σi 2)는 그 2인의 플레이어(예를 들어, 플레이어 A 및 B) 간의 게임의 결과를 알면 갱신될 수 있다. 보다 구체적으로, ADF 근사 방식을 사용하면, 참여한 플레이어들의 점수의 갱신은 도 5에 도시된 방법(500)을 따를 수 있다. 정적 변수(들)는 단계(502)에서 초기화될 수 있다. 예를 들면, 잠재 동점 영역 ε, 동적 시간 갱신 상수 τ0 및/또는 잠재 점수 편차 β가 초기화될 수 있다. 이 매개변수들의 예시적인 초기값을 살펴보면, β는 대략 100 내지 대략 400의 범위 내에 있고(일례에서는 대략 250과 동일함), τ0는 대략 1 내지 대략 10의 범위 내에 있고(일례에서는 대략 10과 동일함), ε은 무승부 확률과 같은 여러 인자들에 의존할 수 있다(일례에서는 대략 50과 동일함). 각각의 플레이어 i에 대한 점수 si(예를 들어, 평균 μi 및 분산 σi 2으로 표현됨)는 단계(504)에서 수신될 수 있고, 이 2인의 플레이어의 예에서는 플레이어 A에 대한 평균 μA 및 분산 σA 2, 및 플레이어 B에 대한 평균 μB 및 분산 σB 2을 포함한다.
플레이어가 게임을 하기 전에, 평균 및 분산으로 표현된 플레이어의 점수가 임의의 적절한 값으로 초기화될 수 있다. 간단한 경우, 모든 플레이어의 평균이 동일한 값, 예를 들어 μi = 1200으로 모두 초기화될 수 있다. 다르게는, 평균은 구축된 플레이어의 평균적인 평균(average mean)의 백분율(20-50%, 일부 경우에는 대략 33%와 같이)로 초기화될 수 있다. 분산은 초기화된 평균에 관한 불확실성을 나타내도록, 예를 들어 σ2 = 4002으로 초기화될 수 있다. 다르게는, 플레이어의 초기 평균 및/또는 분산은 다른 게임 환경에서의 그 플레이어의 점수에 전체적으로 또는 부분적으로 기초할 수 있다.
위에서 설명한 바와 같이, 임의의 적절한 방식으로 동적 점수를 반영하기 위하여 신뢰(belief)가 단계(505)에서 갱신될 수 있다. 예를 들면, 신뢰는 함수 τ 및 플레이어가 마지막으로 플레이한 이후로의 시간에 기초하여 각각의 참여 플레이어들의 점수의 분산을 갱신하는 것에 의하는 것 등에 의해, 시간에 기초하여 갱신될 수 있다. 동적 시간 갱신은 도 2의 스코어링 시스템의 동적 점수 모듈(204)에서 행해질 수 있다. 위에서 언급된 바와 같이, 동적 점수 함수 τ의 출력은 항상 0보다 큰 상수 τ0일 수 있다. 이러한 방식에서, τ0는 플레이어가 게임을 하는 초기에는 0이고, 그 후부터 상수 τ0일 수 있다. 각각의 플레이어의 점수의 분산은 이하에 의해 갱신될 수 있다.
Figure 112008058366628-PCT00072
게임 결과에 기초하여 점수를 갱신하기 위하여, 매개변수들이 단계(506)에서 계산될 수 있다. 예를 들어, 매개변수 c가 이하와 같이 되도록 분산의 합으로서 계산될 수 있다.
Figure 112008058366628-PCT00073
Figure 112008058366628-PCT00074
여기서, nA는 팀 A의 플레이어들의 수(2인의 플레이어의 예에서는 1)이고, nB는 팀 B의 플레이어들의 수(2인의 플레이어의 예에서는 1)이다.
2인의 플레이어의 예에서, 매개변수 h는 각각의 플레이어의 점수의 평균 및 계산된 매개변수 c에 기초하여 계산될 수 있고, 매개변수 h는 이하와 같이 계산될 수 있다.
Figure 112008058366628-PCT00075
Figure 112008058366628-PCT00076
여기서, hA = - hB이다. 매개변수 ε'는 단계(506)에서 플레이어들의 수, 잠재 동점 영역 ε 및 매개변수 c에 기초하여 이하와 같이 계산될 수 있다.
Figure 112008058366628-PCT00077
2인의 플레이어의 예에서, ε'는 이하와 같다.
Figure 112008058366628-PCT00078
플레이어 A와 B간의 게임의 결과는 단계(508)에서 수신될 수 있다. 예를 들면, 게임 결과는 변수 y로서 표현될 수 있으며, 이 변수 y는 플레이어 B가 이기면 -1, 플레이어들이 동점으로 되면 0, 플레이어 A가 이기면 +1이다. 도 2의 점수 갱신 모듈에서와 같이, 참여한 플레이어들의 점수의 신뢰를 변화시키기 위하여, 각각의 점수의 평균 및 분산이 단계(510)에서 갱신될 수 있다. 보다 구체적으로, 만약 플레이어 A가 이기면(예를 들어, y = 1), 이긴 플레이어 A의 평균 μA가 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00079
진 플레이어 B의 평균 μB는 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00080
플레이어 A가 이기면, 각각의 플레이어 i(2인의 플레이어의 예에서는 A 및 B)의 분산 σi 2은 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00081
그러나, 만약 플레이어 B가 이기면(예를 들어, y = -1), 진 플레이어 A의 평균 μA는 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00082
이긴 플레이어 B의 평균 μB는 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00083
플레이어 B가 이기면, 각각의 플레이어 i(A 및 B)의 분산 σi 2은 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00084
플레이어 A 및 B가 무승부이면, 플레이어 A의 평균 μA는 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00085
플레이어 B의 평균 μB는 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00086
플레이어들이 동점으로 되면, 플레이어 A의 분산 σA 2은 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00087
플레이어들이 동점으로 되면, 플레이어 B의 분산 σB 2은 이하와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00088
위의 수학식 38-47에서, 함수
Figure 112008058366628-PCT00089
,
Figure 112008058366628-PCT00090
.
Figure 112008058366628-PCT00091
Figure 112008058366628-PCT00092
는 가우스의 수치 근사(numerical approximation)로부터 결정될 수 있다. 구체적으로, 함수
Figure 112008058366628-PCT00093
,
Figure 112008058366628-PCT00094
.
Figure 112008058366628-PCT00095
Figure 112008058366628-PCT00096
는 본 명세서에 참조로 포함되는 Press 등의 Numerical Recipes in C: the Art of Scientific Computing (2d. ed.), Cambridge, Cambridge University Press, ISBN-0-521-43108-5에 기재된 것과 같은 수치적 방법, 및 임의의 기타 적절한 수치적 또는 분석적 방법을 사용하여 위의 수학식 17-20을 사용하여 평가될 수 있다.
플레이어의 점수를 갱신하기 위한 위의 수학식들은 여러 가지 면에서 ELO 시스템과 상이하다. 예를 들면, ELO 시스템은 각각의 플레이어의 분산이 동일하다 고, 예를 들면 공지되어 있다고 가정한다. 다른 예로, ELO 시스템은 플레이어의 불확실성의 비율에 의존하는 가변하는 K 인자를 사용하지 않는다. 이러한 방식에서, 확실한 점수를 갖고 있는 플레이어와의 대결은, 불확실한 플레이어가 다른 불확실한 플레이어와 대결하는 경우에서보다 좀더 큰 스텝으로 상하로 이동하게 할 수 있다.
도 2의 점수 갱신 모듈(202)로부터의 각각의 플레이어의 점수의 평균 및 분산의 갱신된 값(예를 들어, 도 2의 갱신된 점수(216))은 평균 및 분산의 이전 값(점수(212))을 대체할 수 있다. 각각의 플레이어의 점수의 새롭게 갱신된 평균 및 분산은 플레이어 A와 B간의 게임의 결과로부터 획득되는 추가적인 정보를 포함한다.
2 플레이어 매칭
플레이어의 점수의 갱신된 신뢰는 2인의 가능한 적들(opponents) 간의 게임의 결과를 예측하는 데 사용될 수 있다. 예를 들면, 도 2에 도시된 플레이어 매치 모듈(206)은 임의의 가능한 플레이어들 간의 매치의 결과를 예측하고, 대략 동일한 플레이어 점수 평균, 플레이어가 나타내는 선호도, 대략적으로 동일한 승리 및/또는 무승부 확률 등과 같은 매치 기준을 만족하는 플레이어들을 매치시키기 위하여, 플레이어의 갱신된 및/또는 유지된 점수를 사용할 수 있다.
게임의 결과를 예측하기 위하여, 각각의 가능한 플레이어에 대한 점수의 평균 및 표준 편차가 주어지면, 특정 결과 y의 확률, 예를 들어
Figure 112008058366628-PCT00097
가 계산 될 수 있다. 따라서, 결과의 확률
Figure 112008058366628-PCT00098
이, 무시되는(marginalized out) 점수를 갖는 플레이어 점수들이 주어진 때의 결과의 확률로부터 결정될 수 있다.
도 6은 2인의 가능한 플레이어(플레이어 A와 플레이어 B) 간의 게임에 대해 기술될 게임 결과를 예측하는 예시적인 방법(600)을 도시한다. 정적 변수(들)이 단계(602)에서 초기화될 수 있다. 예를 들면, 잠재 동점 영역 ε, 동적 시간 갱신 상수 τ0, 및/또는 잠재 점수 편차 β가 초기화될 수 있다. 예측된 게임에 참여 중인 각각의 플레이어 i에 대한 점수 si(예를 들어, 평균 μi 및 분산 σi 2으로 표현됨)가 단계(604)에서 수신될 수 있다. 2인의 플레이어의 예에서, 플레이어 점수는 플레이어 A에 대한 평균 μA 및 분산 σA 2, 및 플레이어 B에 대한 평균 μB 및 분산 σB 2을 포함한다.
매개변수들은 단계(606)에서 결정될 수 있다. 매개변수 c는 단계(606)에서 위의 수학식 32 또는 수학식 33을 적절하게 사용하여 분산의 합으로서 계산될 수 있다. 매개변수 c에 대한 수학식 32 및 수학식 33이 플레이어 점수의 동적 점수 양상을 포함하도록 수정될 수 있는데, 예를 들면, 일정 시간 △t는 점수의 최종 갱신 이후부터 경과된 시간이다. 수정된 매개변수 c는 이하와 같이 계산될 수 있다.
Figure 112008058366628-PCT00099
nA는 팀 A의 플레이어들의 수(이 예에서는, 1인의 플레이어)이고, nB는 팀 B의 플레이어들의 수(이 예에서는, 1인의 플레이어)이다. 매개변수 ε'는 위의 수학식 36 또는 37을 적절하게 사용하여 계산될 수 있다.
가능한 플레이어들 간에 가능한 각각의 게임 결과의 확률이 단계(608)에서 결정될 수 있다. 플레이어 A가 이길 확률은 이하를 사용하여 계산될 수 있다.
Figure 112008058366628-PCT00100
플레이어 B가 이길 확률은 이하를 사용하여 계산될 수 있다.
Figure 112008058366628-PCT00101
위에서 언급된 바와 같이, 함수 φ는 괄호 안의 값의 인수, 및 0의 평균과 1의 표준 편차를 갖는 누적 가우스 분포 함수를 나타낸다. 플레이어 A 및 B가 무승부로 될 확률은 이하를 사용하여 계산될 수 있다.
Figure 112008058366628-PCT00102
결과들의 결정된 확률들은, 예를 들면 어느 팀이 승리하거나 무승부가 되는 확률을 미리 정해진 또는 사용자 제공의 임계치 또는 다른 선호도(preference)와 비교하는 것과 같이, 게임을 위해 잠재 플레이어들을 매치시키는 데에 이용될 수 있다. 어느 팀이 승리하거나 또는 무승부가 되는 확률에 대응하는 미리 정해진 임계치는 약 25%와 같은 임의의 적절한 값일 수 있다. 예를 들어, 플레이어들이 모든 가능한 결과들에 대하여 실질적으로 동일한 분포를 제공하도록 매칭될 수 있고, 그들의 평균 점수들이 대략적으로 동일(예를 들면, 잠재 동점 마진 내에서)할 수 있는 등이다. 2 플레이어의 예에도 적절한 추가적인 매칭 기술들이 이하에서 복수팀(multi-team)의 예를 참조하여 설명된다.
2 팀(Two Team)
상기 설명된 2 플레이어 기술은 '플레이어 A'가 팀 A의 하나 이상의 플레이어들을 포함하고 '플레이어 B'가 팀 B 내의 하나 이상의 플레이어들을 포함하도록 확장될 수 있다. 예를 들어, 팀 A의 플레이어들은 인덱스 iA로 표시된 임의의 수의 플레이어들 nA를 가질 수 있고, 팀 B는 인덱스 iB로 표시된 임의의 수의 플레이어들 nB를 가질 수 있다. 팀은, 게임에서의 성취도(performance)가 그 팀의 모든 플레이어들에 대한 단일의 결과를 달성하는 하나 이상의 플레이어들로서 정의될 수 있다. 각 팀의 각 플레이어는 평균(mean)
Figure 112008058366628-PCT00103
및 분산(variance)
Figure 112008058366628-PCT00104
에 의해 표현된 개별 점수 si를 가질 수 있다.
2 팀의 점수 갱신
오로지 2개의 팀만 있기 때문에, 상기 2 플레이어의 예와 같이, 매치에 대하 여 세 개의 가능한 결과들이 있을 수 있는데, 즉 팀 A 승리, 팀 B 승리, 및 팀 A와 팀 B 동점이다. 상기 2 플레이어의 예와 같이, 게임 결과는, 일 예에서 팀 A가 게임을 승리하면 1이고, 팀들이 무승부이면 0이며, 팀 B가 게임을 승리하면 -1의 값을 가질 수 있는 단일 변수
Figure 112008058366628-PCT00105
에 의해 표현될 수 있다. 상기 수학식 1을 보면, 점수들은, 각 팀에 대하여 스킬들 또는 점수들
Figure 112008058366628-PCT00106
Figure 112008058366628-PCT00107
가 주어지는 경우 게임 결과
Figure 112008058366628-PCT00108
의 모델에 기초하여 게임의 플레이어들에 대하여 갱신될 수 있다. 이것은 다음과 같이 표현될 수 있다.
Figure 112008058366628-PCT00109
(51.1)
여기에서 랭킹들에 기초한 게임 결과
Figure 112008058366628-PCT00110
은 다음과 같이 정의될 수 있다.
Figure 112008058366628-PCT00111
(51.2)
상기 2 플레이어 매치의 잠재 점수들과 같이, 플레이어들이 인덱스 i를 갖는 팀의 잠재 팀점수 t(i)는 팀의 개별 플레이어들의 잠재 점수들
Figure 112008058366628-PCT00112
의 선형 함수일 수 있다. 예를 들어, 팀의 잠재 점수 t(i)는
Figure 112008058366628-PCT00113
와 동일할 수 있는데,
Figure 112008058366628-PCT00114
는 n개의 엘리먼트들(n은 플레이어들의 수)을 갖는 벡터이다. 따라서, 게임의 결과는 다음과 같이 표현될 수 있다.
Figure 112008058366628-PCT00115
Figure 112008058366628-PCT00116
Figure 112008058366628-PCT00117
여기에서
Figure 112008058366628-PCT00118
는 상기 설명된 잠재 동점 마진이다. 도 3의 예시적인 잠재 점수들에 대하여, 팀 A 및 B의 잠재 점수들은 각각 라인(304) 및 라인(308)으로 표현될 수 있다.
팀들의 점수들이
Figure 112008058366628-PCT00119
Figure 112008058366628-PCT00120
로 주어질 때의 결과의 확률은 상기 수학식들 28-30에 나타나있다. 그러나, 상기 팀의 예에서, 상기 수학식들 28-30의 항 △는 팀들의 잠재 점수들
Figure 112008058366628-PCT00121
Figure 112008058366628-PCT00122
간의 차이이다. 보다 구체적으로, 항 △는 다음과 같이 결정될 수 있다.
Figure 112008058366628-PCT00123
여기에서 x는 모든 플레이어들의 잠재 점수들의 벡터이며 벡터 a는 선형 가중 계수들(linear weighting coefficients)을 포함한다.
벡터 a의 선형 가중 계수들은 어떤 가정들을 하여 정확한 형태로 도출될 수 있다. 예를 들어, 한 가정은, 팀의 플레이어가 양의(positive) 잠재 점수를 가지면, 잠재 팀 점수가 증가할 것이고; 유사하게, 팀의 플레이어가 음의(negative) 잠 재 점수를 가지면, 잠재 팀 점수는 감소할 것이라는 것을 포함할 수 있다. 이것은 벡터
Figure 112008058366628-PCT00124
가 i의 모든 컴포넌트들에서 양인 것을 의미한다. 게임의 결과에 부정적인 영향을 미치는 플레이어들을 처리하기 위하여, 한 개인의 음의 잠재 점수는 팀의 잠재 점수가 감소하게 한다. 예를 들어, 플레이어가 소위 '팀 킬러(team killer)'일 수 있다. 보다 구체적으로, 약한 플레이어는 불리한 것으로 판명될 수 있으며 그 때문에 그 자신의 스코어링에 의해 자신의 팀 점수에 기여하기 보다는 다른 팀을 위한 잠재 팀 점수를 증가시킬 수 있다. 대부분의 플레이어들은 긍정적으로 기여한다는 사실이 각각의 개별 점수의 사전 확률에서 고려될 수 있다. 다른 예시적인 가정은, 팀에 참여하고 있지 않은(매치를 플레이하고 있지 않고/거나 참여 팀에 있지 않은) 플레이어들은 팀 점수에 영향을 주어서는 안된다는 것일 수 있다. 따라서, 벡터(
Figure 112008058366628-PCT00125
) 내에 있지 않은 벡터 b(i)의 모든 컴포넌트들은 0이어야 한다(저장 또는 생성된 벡터 x는 플레이 여부와 무관하게 모든 플레이어들에 대한 잠재 점수들을 포함할 수 있음). 어떤 경우에는, 게임에 참여하는 플레이어들만 벡터 x에 포함될 수 있고, 이 방식으로, 벡터 b(i)는 모든 컴포넌트들(i 내의)에 대하여 0이 아니며 양(positive)이다. 추가적인 가정은, 두 플레이어들이 동일한 잠재 점수들을 갖는 경우 그들 각각을 주어진 팀에 포함시키면 팀의 잠재 점수를 동일한 양만큼 변화시킬 수 있다는 것을 포함할 수 있다. 이것은 벡터 b(i)는 i의 모든 컴포넌트들 내에서 양의 상수라는 것을 의미할 수 있다. 다른 가정은 각 팀의 크기가 두 배로 되고 추가 플레이어들은 오리지널 플레이어들을 복제한 것 들(replications)이라면(예를 들어 새로운 플레이어들이 동일한 점수들
Figure 112008058366628-PCT00126
를 가짐), 어느 한 팀의 승리 또는 무승부의 확률도 영향을 받지 않는다는 것일 수 있다. 이는 벡터 b(i)는 i의 모든 컴포넌트들에서의 역 평균 팀 크기(inverse average team size)와 동일하게 되어 다음의 식이 성립하는 것을 의미할 수 있으며,
Figure 112008058366628-PCT00127
여기에서, 벡터 e는, 컴포넌트 j가 1인 것을 제외하고 모든 컴포넌트들에서 0을 갖는 단위 n-벡터이고, 항
Figure 112008058366628-PCT00128
Figure 112008058366628-PCT00129
는 각각 팀 A 및 B 내의 플레이어들의 수이다. 상기 4개의 가정들로, 가중 계수 a가 고유하게 결정된다.
팀들이 동일한 크기라면(예를 들면,
Figure 112008058366628-PCT00130
), 잠재 플레이어 점수들의 평균, 및 따라서, 잠재 플레이어 점수들 x는 분포의 변화 없이 임의의 양 △만큼 옮겨질 수 있다. 따라서, 잠재 플레이어 점수들은 사실상 간격 척도(interval scale)를 형성한다. 그러나, 어떤 경우, 팀들은 불균등한 넘버링(uneven numbering)을 가질 수 있다(예를 들면,
Figure 112008058366628-PCT00131
Figure 112008058366628-PCT00132
가 동일하지 않음). 이 경우, 각각의 잠재 점수가 x인 두 플레이어들을 잠재 점수가 2x인 하나의 플레이어로 대체하는 것은 잠재 팀 점수를 변화시키지 않는다는 점에서, 잠재 플레이어 점수들은 비율 척도(ratio scale)를 유지한다. 이 방식으로 평균 점수 s를 갖는 플레이어는 평균 점수 s/2를 갖는 플레이어보다 두 배로 우수하다. 따라서, 평균 점수들은 플 레이어의 평균 성취도(average performance)를 나타낸다. 한편, 잠재 점수들은 특정 게임에서의 실제 성취도를 나타내고 간격 척도 상에 존재하는데, 그 이유는 승리, 무승부 및 패배의 확률을 결정하기 위하여는 팀의 잠재 점수들의 차이(예를 들면,
Figure 112008058366628-PCT00133
)만 이용되기 때문이다.
게임에 참여하는 팀 내의 각각의 플레이어 i의 평균
Figure 112008058366628-PCT00134
및 분산
Figure 112008058366628-PCT00135
에 의해 표현된 개별 점수
Figure 112008058366628-PCT00136
는 두 팀 간의 게임의 결과에 기초하여 갱신될 수 있다. 2 팀의 예를 위하여, 2 플레이어 예를 위한 도 5의 갱신 식 및 방법이 수정될 수 있다. 도 5의 방법(500)을 참조하면, 잠재 동점 영역
Figure 112008058366628-PCT00137
, 동적 시간 갱신 상수
Figure 112008058366628-PCT00138
, 및 잠재 점수 편차
Figure 112008058366628-PCT00139
는 전술된 바와 같이 초기화될 수 있다(단계(502)). 유사하게, 두 팀들 각각의 플레이어들 i의 각각에 대하여 점수
Figure 112008058366628-PCT00140
(예를 들면, 평균
Figure 112008058366628-PCT00141
및 분산
Figure 112008058366628-PCT00142
에 의해 표현됨)가 수신될 수 있는데(단계(504)), 이는 2 팀의 예에서는 팀 A의 플레이어들 i에 대하여 평균
Figure 112008058366628-PCT00143
및 분산
Figure 112008058366628-PCT00144
을 포함하고 팀 B의 플레이어들 i에 대하여
Figure 112008058366628-PCT00145
및 분산
Figure 112008058366628-PCT00146
을 포함한다.
신뢰에 대한 동적 갱신(예를 들면, 마지막으로 플레이된 이후의 시간에 기초함)는 오직 그 플레이어의 분산(그리고 가능하다면 그 플레이어가 마지막으로 플레이한 이후의 시간)에만 의존하므로, 각 팀에서의 각 플레이어의 분산은 예를 들면 상기 수학식 31을 이용하는 것과 같이 임의의 적절한 방식으로 갱신될 수 있다(단계(505)). 전술된 바와 같이, 시간에 기초한 갱신은 도 2의 동적 점수 모듈(204) 을 통해 달성될 수 있다.
도 5를 참조해보면, 전술된 것들과 유사한 매개변수들이 결과 및 점수들의 팀 양상(team aspect)을 통합하기 위해 일부 수정되어 계산될 수 있다(단계(506)). 매개변수 c는, 전술된 바와 같이 분산들의 합으로서 계산될 수 있다(단계(506)). 그러나, 각 팀이 하나 이상의 플레이어들을 가질 수 있는 2 팀의 예에서, 게임에 참여하는 모든 플레이어들의 분산들이 합산되어야 한다. 따라서, 2 팀의 예의 경우, 상기 수학식 32는 다음과 같이 수정될 수 있다.
Figure 112008058366628-PCT00147
각 팀의 점수의 평균
Figure 112008058366628-PCT00148
Figure 112008058366628-PCT00149
와 계산된 매개변수 c에 기초하여 상기 수학식 34-35에서 언급된 바와 같이 매개변수
Figure 112008058366628-PCT00150
Figure 112008058366628-PCT00151
가 계산될 수 있다(단계(506)). 각각 팀 A 및 팀 B에 대한 팀 평균 점수들
Figure 112008058366628-PCT00152
Figure 112008058366628-PCT00153
는 각 팀에 대하여 플레이어(들)의 평균들의 합으로서 계산될 수 있다.
Figure 112008058366628-PCT00154
Figure 112008058366628-PCT00155
매개변수
Figure 112008058366628-PCT00156
은 다음과 같이 계산될 수 있다(단계(506)).
Figure 112008058366628-PCT00157
(59.1)
여기에서
Figure 112008058366628-PCT00158
는 팀 A의 플레이어 수이고
Figure 112008058366628-PCT00159
는 팀 B의 플레이어 수이다.
팀 A와 팀 B 사이의 게임의 결과가 수신될 수 있다(단계(508)). 예를 들어, 게임 결과는, 팀 B가 승리하면 -1이고, 팀들이 동점이면 0이며, 팀 A가 승리하면 +1인 변수
Figure 112008058366628-PCT00160
로서 표현될 수 있다. 각 팀의 각각의 참여 플레이어의 이전 점수들의 확률에서의 신뢰를 변화시키기 위하여, 각각의 참여 플레이어의 평균 및 분산은 상기 수학식들 38-46을 수정함으로써 갱신될 수 있다(단계(510)). 팀 A가 게임을 승리하면, 개별 평균들은 다음과 같이 갱신될 수 있다.
Figure 112008058366628-PCT00161
Figure 112008058366628-PCT00162
팀 A가 승리할 때 각 플레이어 i(팀 A 또는 B 중 어느 하나의)의 분산
Figure 112008058366628-PCT00163
은 상기 수학식 40에서 나타난 바와 같이 갱신될 수 있다.
그러나, 팀 B가 승리하면(예를 들면,
Figure 112008058366628-PCT00164
), 각각의 참여 플레이어의 평균
Figure 112008058366628-PCT00165
는 다음과 같이 갱신될 수 있다.
Figure 112008058366628-PCT00166
Figure 112008058366628-PCT00167
팀 B가 승리할 때 각각의 플레이어 i(팀 A 또는 B 중 어느 하나의)의 분산
Figure 112008058366628-PCT00168
은 상기 수학식 43에 나타난 바와 같이 갱신될 수 있다.
팀 A 및 B가 무승부이면, 팀 A 및 B의 각각의 플레이어의 평균
Figure 112008058366628-PCT00169
Figure 112008058366628-PCT00170
는 각각 다음과 같이 갱신될 수 있다.
Figure 112008058366628-PCT00171
Figure 112008058366628-PCT00172
팀들이 동점일 때 팀 A의 각각의 플레이어의 분산
Figure 112008058366628-PCT00173
은 다음과 같이 갱신될 수 있다.
Figure 112008058366628-PCT00174
팀들이 동점일 때 팀 B의 각각의 플레이어의 분산
Figure 112008058366628-PCT00175
은 다음과 같이 갱신될 수 있다.
Figure 112008058366628-PCT00176
수학식 38-43과 같이, 수치계산법(numerical method)을 이용하여 상기 수학식 17-20에 의해 함수들
Figure 112008058366628-PCT00177
Figure 112008058366628-PCT00178
가 평가될 수 있다. 이 방식으로, 각각의 플레이어의 점수의 평균 및 분산의 갱신된 값들이 평균 및 분산의 이전의 값들을 대체하여 팀 A와 B 사이의 게임 결과로부터 획득된 추가적인 지식을 포함할 수 있다.
2 팀 매칭
상기 2 팀의 스코어링 갱신 수학식들과 같이, 도 6의 매칭 방법은 각각 하나 이상의 플레이어를 갖는 두 개 팀을 수용하도록 수정될 수 있다. 상기와 같이, 고정 변수들이 초기화될 수 있다(단계(602)). 점수
Figure 112008058366628-PCT00179
(예를 들어, 각각의 팀 A 및 B의 각각의 플레이어 i에 대한 평균
Figure 112008058366628-PCT00180
Figure 112008058366628-PCT00181
와 분산
Figure 112008058366628-PCT00182
Figure 112008058366628-PCT00183
)가 플레이어들 각각에 대하여 수신될 수 있다(단계(604)). 또한, 매치메이킹(matchmaking) 기 준은 팀 내의 점수들의 변산도(variability)를 고려할 수 있다. 예를 들면, 동등한 점수들을 갖는 플레이어들을 포함하는 팀들을 갖는 것이 바람직할 수 있는데, 왜냐하면 어떤 경우에는 이들이 더 우수하게 협력할 수 있기 때문이다.
전술된 바와 같이 매개변수들이 결정될 수 있다(단계(606)). 예를 들어, 매개변수 c는 수학식 57을 이용하여 계산될 수 있고, 각 팀의 평균
Figure 112008058366628-PCT00184
Figure 112008058366628-PCT00185
는 수학식 58 및 59를 이용하여 계산될 수 있으며, 매개변수
Figure 112008058366628-PCT00186
은 수학식 36을 이용하여 계산될 수 있다.
두 잠재 팀들 간의 게임의 각각의 가능한 결과의 확률이 결정될 수 있다(단계(608)). 팀 A가 승리할 확률은 상기 수학식 49를 이용하여 계산될 수 있다. 팀 B가 승리할 확률은 상기 수학식 50을 이용하여 계산될 수 있다. 무승부의 확률은 상기 수학식 51을 이용하여 계산될 수 있다. 결과들의 결정된 확률들은, 예를 들어 어느 한 팀의 승리 및/또는 무승부의 확률, 팀 및/또는 플레이어 랭킹, 및/또는 팀 및/또는 플레이어 점수들을 미리 결정된 또는 사용자 제공 임계치와 비교하는 것과 같이, 게임을 위해 잠재 팀들을 매치시키는 데에 이용될 수 있다.
복수의 팀들
상기 기술들은, 예를 들어, 매개변수 j에 의해 나타낼 수 있는 둘 이상의 대항하는 팀들과 같은 복수의 팀들을 포함하는 게임을 고려하도록 더 확장될 수 있다. 인덱스 j는 복수의 대항하는 팀들 내의 팀을 나타내고 그 범위는 1 내지 k팀들이며, k는 대항하는 팀들의 전체 수를 나타낸다. 각 팀은 하나 이상의 플레이어 들 i를 가질 수 있고, j번째 팀은 매개변수
Figure 112008058366628-PCT00187
로 표시된 플레이어들의 수 및
Figure 112008058366628-PCT00188
로 표시된 플레이어들을 가질 수 있다.
k개의 모든 팀들의 랭킹 r을 알면, 각 팀의 랭킹
Figure 112008058366628-PCT00189
가 랭킹 순서로 배치될 수 있도록 팀들이 재배열될 수 있다. 예를 들어, 각 팀의 랭킹은
Figure 112008058366628-PCT00190
이 되도록 랭킹 감소순(rank-decreasing order)으로 배치될 수 있으며 여기에서 인덱스 연산자(index operator) ()는 1 내지 k의 인덱스 j의 순열(permutation)이다. 어떤 경우, 랭킹 1은 게임의 승자를 나타내는 것으로 가정되기 때문에, 랭킹 감소 순서는 수치적으로 증가하는 순서를 나타낼 수 있다. 이 방식으로, 게임의 결과 r은 팀 인덱스의 순열 및 벡터
Figure 112008058366628-PCT00191
에 의하여 표현될 수 있다. 예를 들어, 팀(j)가 팀(j+1)에 승리하고 있었다면
Figure 112008058366628-PCT00192
이고, 팀(j)이 팀(j+1)과 무승부를 이루고 있었다면
Figure 112008058366628-PCT00193
이다. 이 방식으로, 벡터
Figure 112008058366628-PCT00194
의 엘리먼트들은
Figure 112008058366628-PCT00195
Figure 112008058366628-PCT00196
로 나타낼 수 있다.
상기 2 팀의 예와 같이, 게임의 결과는 모든 참여 플레이어들의 성취도 또는 잠재 점수들에 기초할 수 있다. 잠재 점수
Figure 112008058366628-PCT00197
는, 인덱스 i를 갖는 플레이어의 점수
Figure 112008058366628-PCT00198
와 등가인 평균 및 고정된 잠재 점수 분산
Figure 112008058366628-PCT00199
을 갖는 가우스 분포를 따를 수 있다. 이 방식으로, 잠재 점수
Figure 112008058366628-PCT00200
Figure 112008058366628-PCT00201
에 의해 표현될 수 있다. 벡터 i에서의 인덱스를 갖는 플레이어들의 팀의 잠재 점수
Figure 112008058366628-PCT00202
는 개별 플레이어들의 잠재 점수들 x의 선형 함수일 수 있다. 이런 방식으로, 잠재 점수는 두 팀의 예와 관련하여 전술된 바와 같이, b(i)에서 t(i)= b(i)Tx로 결정될 수 있다. 이 방식에서, 잠재 점수의 샘플 x가 주어지면, 랭킹은 가장 높은 잠재 팀 점수 t(i)를 갖는 팀이 제1 랭킹에 있고, 두 번째로 높은 팀 점수를 갖는 팀이 제2 랭킹에 있고, 가장 작은 잠재 팀 점수를 가진 팀이 가장 낮은 랭킹에 있도록 이루어진다. 또한, 두 팀은 그들의 잠재 팀 점수가 잠재 무승부 마진(ε)보다 더 크게 차이가 나지 않는 경우 비길 것이다. 이 방식에서, 랭킹된 팀들은 그들의 잠재 팀 점수의 값에 따라 재순서화될 수 있다. 잠재 팀 점수에 기초하여 팀들을 재순서화한 후에, 가장 높은 잠재 팀 점수를 가진 팀이 승리할 것인지 또는 결과가 무승부인지(예컨대, 점수가 ε보다 작게 차이가 남)를 판정하는 데 팀 간의 페어와이즈 차(pairwise difference)를 고려할 수 있다.
잠재 점수에 기초하여 팀들의 재순서화를 결정하기 위해, 보조 변수의 k-1 차원의 벡터 △가 수학식 68에서 정의될 수 있다.
Figure 112008058366628-PCT00203
이 방식에서, 벡터 △는 수학식 69로서 정의될 수 있다.
Figure 112008058366628-PCT00204
잠재 점수 x는 가우스 분포를 따라가기 때문에(예컨대,
Figure 112008058366628-PCT00205
Figure 112008058366628-PCT00206
), 벡터 △는 가우스 분포에 의해 지배받는다(예컨대,
Figure 112008058366628-PCT00207
Figure 112008058366628-PCT00208
). 이 방식에서, 랭킹 r의 확률(순열 연산자() 및 k-1 차원의 벡터 γ에 기초하여 행렬 A에 의해 인코딩됨)은 벡터 △에 걸친 연계 확률에 의해 수학식 70으로서 표현될 수 있다.
Figure 112008058366628-PCT00209
평균 점수 μ및 분산 σ2에 의해 매개변수화된 각 플레이어
Figure 112008058366628-PCT00210
의 점수에서의 신뢰는 랭킹 r의 형태의 게임의 결과가 주어지면 갱신될 수 있다. 신뢰는 표준 수치 적분 방법(standard numerical integration method)(예컨대, Gentz 외 공저, "Numerical Computation of Multivariate normal Probabilities", Computational and Graphical Statistics 저널, 1992년 1월, 141-149 페이지 참조), 기대값 전파 기술(expectation propagation technique)(이하를 참조), 및 임의 의 기타 적합한 기술을 가정된 강도 필터링(assumed density filtering)을 사용하여 결정될 수 있다. 두 팀(예컨대, k = 2)이 존재하는 특수한 경우에, 갱신 수학식은 두 팀의 예에서 전술된 알고리즘으로 축소된다. 그리고 마찬가지로, 두 팀 각각이 단 한명의 플레이어를 갖는 경우, 다수 팀 수학식은 두명의 플레이어의 예에서 전술된 알고리즘으로 축소된다.
이 예에서, 다수 팀 게임의 플레이어의 점수에 대한 갱신 알고리즘은 가우스 적분에 대한 수치 적분으로 결정될 수 있다. 마찬가지로, 플레이어의 마지막 게임 시간 이후의 시간에 기초한 점수들의 동적 갱신은, 0보다 큰 비-경기(non-play times) 시간들에 대하여 상수(τ0)이고, 플레이어가 게임을 처음으로 플레이할 때 또는 게임들 간의 시간 지연이 0인 경우 0일 수 있다.
도 7은 다수 팀 게임을 플레이하는 플레이어의 점수를 갱신하는 예시적 방법(700)을 나타낸다. 잠재 무승부 존(ε), 동적 시간 갱신 상수 τ0, 및 잠재 점수 편차 β는 전술된 바와 같이 초기화될 수 있다(702). 또한, k-1 열 및 n 행을 갖는 행렬 A(즉, 모든 팀의 플레이어의 총수)는 0과 같은 임의의 적합한 수의 집합으로 초기화될 수 있다(702). 각 팀의 각 플레이어 i에 대한 점수 S i (예컨대, 평균 μ i 및 분산 σ i 2에 의해 나타내어짐)는 수신될 수 있고(704), 다수 팀 예에서는 각 팀 j에 있는 각 플레이어 i에 대한 평균
Figure 112008058366628-PCT00211
및 분산
Figure 112008058366628-PCT00212
을 포함한다.
신뢰에 대한 동적 갱신이 시간에 기초할 수 있으므로, 동적 갱신은 그 플레 이어의 분산(및 가능하다면 플레이어가 마지막으로 플레이한 후 경과된 시간)에 의존할 수 있다. 따라서, 각 플레이어의 분산은 상기 수학식 31을 사용하여 갱신될 수 있다(706). 이러한 방식으로, 각 팀의 각 플레이어에 대한, 분산에 대한 동적 갱신은 게임 결과가 평가되기 전에 결정될 수 있다. 보다 구체적으로, 플레이어가 마지막으로 게임을 플레이한 이후 경과된 시간에 기초한 분산에 대한 갱신, 및 플레이어의 스킬(skill)은 현재의 게임 결과가 평가되기 전에 해당 기간 동안 변할 수 있다. 다른 대안으로서, 동적 갱신은, 점수가 게임 결과, 및 기타 등등에 기초하여 갱신된 후에, 게임 결과 이후면서 점수 갱신 이전 등의 임의의 적합한 시간에 행해질 수 있다.
점수는 게임에 참여중인 플레이어의 랭킹 r에 따른 순열()을 계산함으로써(708) 순서화된 랭킹일 수 있다. 예를 들어, 랭킹은 내림차순으로 배치될 수 있다.
랭킹 r는 행렬 A에 의해 인코딩될 수 있다. 보다 구체적으로, 팀 (j) 및 (j+1)의 플레이어들 n (j) n (j+1) 의 조합 각각에 대한 행렬 원소 A row,j 는, 하기의 수학식 71 및 72를 사용하여 결정될 수 있다. 구체적으로, n j 에 대한 플레이어 i( j +1)는 이하와 같다.
Figure 112008058366628-PCT00213
여기서, 행 변수는, 행 변수가 1부터 모든 팀의 플레이어의 총수까지 변하는 것을 의미하는 플레이어 i( j )에 의해 정의되며, 열 변수는 1부터 k-1(여기서 k는 팀의 수)까지 변하는 인덱스 j에 의해 정의되며, n (j) 는 (j)번째 팀에 있는 플레이어 수이고, n (j+1) 는 (j+1)번째 팀에 있는 플레이어 수이다. 모든 nj+1 대한 플레이어 i( j +1)는 이하와 같다.
Figure 112008058366628-PCT00214
여기서 행 변수는 플레이어 i( j +1)에 의해 정의되며, 열 변수는 1부터 k-1(여기서 k는 팀의 수)까지 변하는 인덱스 j에 의해 정의되며, n (j) 는 (j)번째 팀에 있는 플레이어 수이고, n (j+1) 는 (j+1)번째 팀에 있는 플레이어 수이다
예를 들어, 팀들은 게임을 플레이할 수 있고 팀 A, 팀 B, 및 팀 C에 의해 식별될 수 있으며, 각 팀은 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1, 및 플레이어 C2에 의해 식별되는 2명의 플레이어를 갖는다. 게임 이후에, 팀 A는 팀 B와 팀 C 모두를 이기고, 팀 B는 팀 C를 이길 수 있다. 플레이어의 예시적 랭킹 행렬(행렬 A)은 도 11의 행렬(1100)에 의해 도시된다. 구체적으로, 랭킹 행렬(1100)은 1부터 2까지(즉, 1 에서 k-1, 여기서 k는 팀의 수이며, 도시된 예에서는 3임) 변하는 인덱스 j에 의해 정의되는 2개의 열(1102, 1104)을 갖는다. 랭킹 행렬(1100)은 3개의 팀 각각의 2명의 플레이어 각각, 즉 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1 및 플레이어 C2를 개별적으 로 나타내는 6개의 행(1106, 1108, 1110, 1112, 1114, 1116)을 갖는다. 플레이어 A1 및 A2에 대한 플레이어 랭킹은, 랭킹 행렬(1100)에서 행렬 원소(1120, 1122, 1124, 1126)에 인코딩된다. 구체적으로, 열(1102)의 행렬 원소(1120, 1124)에서 플레이어 A1 및 A2의 플레이어 랭킹은, 팀 A와 팀 B 각각이 2명의 플레이어를 갖기 때문에, 상기 수학식 71을 사용하여 2/(nA + nB)=2/(2+2)=1/2로서 결정된다. 열(1104)의 행렬 원소(1122, 1126)에서 플레이어 A1 및 A2의 플레이어 랭킹은 제로(zero)로 결정된다. 플레이어 B1 및 B2에 대한 플레이어 랭킹은 랭킹 행렬(1100)에서 행렬 원소(1128, 1130, 1132, 1134)에 인코딩된다. 구체적으로, 열(1102)의 행렬 원소(1128, 1132)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 A와 팀 B 각각이 2명의 플레이어를 갖기 때문에, 상기 수학식 72을 사용하여 -2/(nA + nB)=-2/(2+2)=-1/2로서 결정된다. 열(1104)의 행렬 원소(1130, 1134)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 B와 팀 C 각각이 2명의 플레이어를 갖기 때문에, 상기 수학식 71을 사용하여 2/(nB + nC)=2/(2+2)=1/2로서 결정된다. 플레이어 C1 및 C2에 대한 플레이어 랭킹은, 랭킹 행렬(1100)에서 행렬 원소(1136, 1138, 1140, 1142)에 인코딩된다. 구체적으로, 열(1102)의 행렬 원소(1136, 1140)에서 플레이어 C1 및 C2의 플레이어 랭킹은, 제로(zero)로 결정된다. 열(1104)의 행렬 원소(1138, 1142)에서 플레이어 C1 및 C2의 플레이어 랭킹은, 팀 B와 팀 C 각각이 2명의 플레이어를 갖기 때문에, 상기 수학식 72을 사용하여 -2/(nB + nC)=- 2/(2+2)=-1/2로서 결정된다.
일부 경우에, 한 명 이상의 플레이어는 게임에 늦게 입장하고, 접속이 끊어짐, 늦은 입장 등의 여러 이유로 인해 일찍 게임을 떠날 수 있고, 좋지 않은 결과로 인해 게임을 떠나고, 코치 등의 제3자에 대하여 판정된 관심, 입장 및 퇴장으로 인해 게임을 떠날 수 있다. 따라서, 일부 경우에, 게임 결과로 이어지는 게임을 플레이하기 위한 부분 시간은 랭킹에 가중치를 부여하는 데 사용될 수 있다. 이러한 방식으로, 한 팀에서 플레이어가 탈락하는 경우, 그 팀의 남은 플레이어들은 게임에 지는데 있어서 불리한 것이 아닐 수 있으며, 그 이유는 그러한 상황이 예상된 결과이기 때문이다. 반대로, 팀의 남은 플레이어는, 예컨대, 3명의 플레이어의 팀이 4명의 플레이어의 팀에 맞서 이기는 경우, 그것은 예상치 못한 결과이기 때문에, 그들이 게임에 이긴다면, 여분의 이익 또는 스킬 갱신을 수신할 수 있다.
부분 플레이(partial play)를 랭킹 행렬 A 내에 구현하기 위해, 랭킹은 평균 팀 사이즈에 기초하여 가중화될 수 있다. 구체적으로, 일례에서, 게임에 참여중인 플레이어 각각에 대한 (팀 j의 플레이어 k의) 게임 Pjk에서 플레이한 단편적 시간(fractional time)이 결정될 수 있다. 팀 j의 플레이어 k 각각에 대한 Pjk에서 플레이한 단편적 시간은 수학식 (72.1)을 사용하여 결정될 수 있다.
Figure 112008058366628-PCT00215
(72.1)
팀 (j)에 대한 랭킹 행렬 A는 수학식 (72.2)를 사용하여 갱신될 수 있다.
Figure 112008058366628-PCT00216
(72.2)
여기서, P (j)row 에서 플레이한 단편 시간(fraction time)은 Arow,j의 행과 연관된 플레이어에 의해 플레이된 단편 시간이다. 수학식 (72.2)의 분모에서의 합계는 팀 (j)와 팀 (j+1) 각각의 모든 플레이어에 의해 플레이된 단편 시간의 합을 나타낸다. 마찬가지 방식에서, 지고있는 팀 (j+1)에 대한 랭킹 행렬은 수학식 (72.3)을 사용하여 갱신될 수 있다.
Figure 112008058366628-PCT00217
(72.3)
여기서 P (j +1 )row 에서 플레이한 단편 시간은 Arow,j+1의 행과 연관된 플레이어에 의해 플레이된 단편 시간이다. 수학식 (72.3)의 분모에서의 합계는 팀 (j)와 팀 (j+1) 각각의 모든 플레이어에 의해 플레이된 단편 시간의 합을 나타낸다.
예를 들어, 팀들은 게임을 플레이할 수 있고 팀 A, 팀 B, 및 팀 C에 의해 식별될 수 있으며, 각 팀은 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1, 및 플레이어 C2에 의해 식별되는 2명의 해당 플레이어를 갖는다. 하지만, 플레이어 A1은 경기 시간의 반만 플레이할 수 있다. 게임 후에, 플레이어 A1의 부분 플레이에도 불구하고, 팀 A는 팀 B와 팀 C 모두를 이기고, 팀 B는 팀 C를 이길 수 있다. 플레이어들의 예시적 랭킹 행렬(행렬 A)은 도 12의 행렬(1200) 에 의해 도시된다. 구체적으로, 랭킹 행렬(1200)은 1부터 2까지(즉, 1 에서 k-1, 여기서 k는 팀의 수이며, 도시된 예에서는 3임) 변하는 인덱스 j에 의해 식별되는 2개의 열(1202, 1204)을 갖는다. 랭킹 행렬(1200)은 3개의 팀 각각의 2명의 플레이어 각각, 즉 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1 및 플레이어 C2를 개별적으로 나타내는 6개의 행(1206, 1208, 1210, 1212, 1214, 1216)을 갖는다. 플레이어 A1 및 A2에 대한 플레이어 랭킹은 랭킹 행렬(1200)에서 행렬 원소(1220, 1222, 1224, 1226)에 인코딩된다. 구체적으로, 열(1202)의 행렬 원소(1220, 1224)에서 플레이어 A1 및 A2의 플레이어 랭킹은, 상기 수학식 (72.2)를 사용하여 결정된다. 열(1204)의 행렬 원소(1222, 1226)에서 플레이어 A1 및 A2의 플레이어 랭킹은 제로로 결정된다. 플레이어 B1 및 B2에 대한 플레이어 랭킹은, 랭킹 행렬(1200)에서 행렬 원소(1228, 1230, 1232, 1234)에 인코딩된다. 구체적으로, 열(1202)의 행렬 원소(1228, 1232)에서 플레이어 B1 및 B2의 플레이어 랭킹은 상기 수학식 (72.3)을 사용하여 결정된다. 열(1204)의 행렬 원소(1230, 1234)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 B 및 C의 플레이어 중 아무도 부분 플레이를 포함하지 않았기 때문에, 수학식 71을 사용하여 결정된다. 플레이어 C1 및 C2의 플레이어 랭킹은, 팀 B 및 C의 플레이어 중 아무도 부분 플레이를 갖지 않았기 때문에, 도 11의 랭킹 행렬(1100)에서와 마찬가지로, 랭킹 행렬(1200)에서 행렬 원소(1236, 1238, 1240, 1242)에 인코딩된다.
일부 경우에, 팀의 정확한 랭킹은 게임 결과에 기초하여 이용가능하지 않을 수 있으며, 예컨대, 게임 결과에 기초하는 모든 팀들의 랭킹은 부분적일 수 있다. 예를 들어, 일부 경우에, 결승선을 통과하는 팀이 타이머를 트리거(trigger)할 수 있고 우승자가 결승선을 통과한 후 소정의 시간 내에 결승선을 통과하는 팀들을 레이스 결과가 랭킹할 수 있는 레이싱 게임에서와 같이 팀들 중 일부의 최종 점수만이 다른 팀과 대하여 알려지거나 또는 결정될 수 있다.
이를 예시하기 위해, 일례에서는, 게임 후에, 팀 C 및 D의 상대적 랭킹이 알려져 있지 않을 수 있다. 점수 및 결과값에 기초하여, 팀 A가 팀 B, C, D를 이겼음(팀 B의 점수 및 팀 C 및 D에 대한 점수 결여에 기초함)을 결정할 수 있고, 마찬가지로 팀 B는 팀 B의 점수와 팀 C 및 D의 점수 결여에 기초하여 팀 C 및 D를 이겼음을 판정할 수 있다. 하지만, 팀 C 및 D의 상대적 랭킹은 게임 결과에 기초하여 알려져 있지 않다. 구체적으로, 도 13은 팀 C 및 D의 랭킹이 알려져 있지 않은 부분 랭킹의 랭킹 행렬 A를 나타낸다. 도 13의 랭킹 행렬(1300)은 1부터 3까지(즉, 1 부터 k-1, 여기서 k는 팀의 수이고 도시된 예에서는 4임) 변하는 인덱스 j에 의해 정의되는 3개의 열(1302, 1304, 1305)을 갖는다. 랭킹 행렬(1300)은 4개의 팀 각각에서 2명의 플레이어 각각, 즉 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1, 플레이어 C2, 플레이어 D1 및 플레이어 D2를 개별적으로 나타내는 8개의 행(1306, 1308, 1310, 1312, 1314, 1315, 1316, 1317)을 갖는다. 플레이어 A1 및 A2에 대한 플레이어 랭킹은, 도 11의 랭킹 행렬(1100)에서의 것과 마찬가지로 랭킹 행렬(1300)에서 행렬 원소(1320, 1322, 1323, 1324, 1326, 1327)에 인코딩된다. 플레이어 B1 및 B2에 대한 플레이어 랭킹은 랭킹 행렬(1300)에서 행렬 원소(1328, 1330, 1331, 1332, 1334, 1335)에 인코딩된다. 구체적으로, 열(1302)의 행렬 원소(1328, 1332)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 A를 팀 B와 비교할 때의 도 11의 랭킹 행렬(1100)에서의 것과 마찬가지로 결정된다. 하지만, 열(1305)의 행렬 원소(1331, 1335)와 열(1304)에서 행렬 원소(1330, 1334)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 B에 대한 팀 C 및 D의 상대적 랭킹이 알려져 있지 않기 때문에, 알려져 있지 않다. 플레이어 C1 및 C2의 플레이어 랭킹은 랭킹 행렬(1300)에서 행렬 원소(1336, 1338, 1339, 1340, 1342, 1343)에 인코딩되고, 알려져 있지 않다. 플레이어 D1 및 D2의 플레이어 랭킹은 랭킹 행렬(1300)에서 행렬 원소(1344, 1346, 1347, 1348, 1350, 1351)에 인코딩되고, 알려져 있지 않다.
랭킹 행렬 A를 구성함에 있어 전술된 바와 같이, (j)번째 랭킹 팀은 (j+1)번째 랭킹의 팀과 비교된다. 하지만, 도 13의 예시적 랭킹 행렬에 도시된 바와 같이, 팀 C의 경우에, 팀 C가 팀 B 또는 팀 D와 비교되어야 하는지 여부는 알려져 있지 않고, 마찬가지로 팀 D의 경우, 팀 D가 팀 B 또는 팀 C와 비교되어야 하는지 여부는, 팀들의 정확한 랭킹이 알려져 있지 않기 때문에, 알려져 있지 않다. 부분 랭킹의 관점에서 랭킹 행렬의 결정을 허용하기 위해, 랭킹 행렬 A는 (j+1)번째 팀을, 수학식 71에 관련하여 전술된 바와 같이 (j)번째 팀이 아니라, 오히려 랭킹이 알려진 마지막 팀과 비교함으로써 구성될 수 있다.
도 14의 예시적 랭킹 행렬(1400)은 팀 C를 팀 B와 비교하고, 팀 D를 팀 B와 비교함으로써, 부분 입력 랭킹을 갖는 완전한 랭킹 행렬을 나타낸다. 구체적으로, 도 14의 랭킹 행렬(1400)은 1부터 3까지(즉, 1 부터 k-1, 여기서 k는 팀의 수이며, 도시된 예에서는 4임) 변하는 인덱스 j에 의해 정의되는 3개의 열(1402, 1404, 1405)을 갖는다. 랭킹 행렬(1400)은 4개의 팀 각각에서 2명의 플레이어, 즉 플레이어 A1, 플레이어 A2, 플레이어 B1, 플레이어 B2, 플레이어 C1, 플레이어 C2, 플레이어 D1 및 D2를 각각 개별적으로 나타내는 8개의 행(1406, 1408, 1410, 1412, 1414, 1415, 1416, 1417)을 갖는다. 플레이어 A1 및 A2에 대한 플레이어 랭킹은 도 13의 랭킹 행렬(1300)에서의 것과 마찬가지로 랭킹 행렬(1400)에서 행렬 원소(1420, 1422, 1423, 1424, 1426, 1427)에 인코딩된다. 플레이어 B1 및 B2에 대한 플레이어 랭킹은 랭킹 행렬(1400)에서 행렬 원소(1428, 1430, 1431, 1432, 1434, 1435)에 인코딩된다. 구체적으로, 열(1402)의 행렬 원소(1428, 1432)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 팀 A를 팀 B와 비교할 때의 도 13의 랭킹 행렬(1300)에서의 것과 마찬가지로 결정된다. 열(1404)의 행렬 원소(1430, 1434)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 도 11의 랭킹 행렬(1100)에서 전술된 바와 마찬가지로 상기 수학식 71을 사용하여 팀 B를 팀 C와 비교함으로써 결정된다. 마찬가지로, 열(1405)의 행렬 원소(1431, 1435)에서 플레이어 B1 및 B2의 플레이어 랭킹은, 도 11의 랭킹 행렬(1100)에서 전술된 바와 마찬가지로 상기 수학식 71을 사용하여 팀 B를 팀 D와 비교함으로써 결정된다. 플레이어 C1 및 C2의 플레이어 랭킹은, 팀 C를 마지막 알려진 랭킹된 팀(즉, 팀 B)와 비교하고 상기 수학식 72를 사용하여 랭킹 행렬(1400)에서 행렬 원소(1436, 1438, 1439, 1440, 1442, 1443)에 인코딩된다. 플레이어 D1 및 D2의 플레이어 랭킹은 팀 D를 마지막 알려진 랭킹된 팀(즉, 팀 B)과 비교하고 상기 수학식 72를 사용하여 랭킹 행렬(1400)에서 행렬 원소(1444, 1446, 1447, 1448, 1450, 1451)에 인코딩된다. 부분 랭킹 예는 전체 시간 경기를 하는 모든 플레이어에 관련하여 설명되어 있지만, 수학식 (72.3) 및 (72.4)를 사용하는 부분 플레이는, 부분 플레이와 부분 랭킹을 통합하는 데 사용될 수 있음을 이해해야 한다
부분 플레이 및/또는 부분 랭킹이 고려되든지 고려되지 않든 간에, (j)번째 랭킹된 팀은 (j+1)번째 랭킹된 팀과 동일한 랭킹에 있으며, 절단된 가우스의 상한 및 하한(the lower and upper limits) a 및 b는 이하와 같이 설정될 수 있다.
Figure 112008058366628-PCT00218
Figure 112008058366628-PCT00219
이와 달리, (j)번째 팀이 (j+1)팀과 동일한 랭킹이 아닌 경우, 절단된 가우스의 상한 및 하한은 이하와 같이 설정될 수 있다.
Figure 112008058366628-PCT00220
Figure 112008058366628-PCT00221
결정된 행렬 A는 임시 매개변수(interim parameters)를 결정하는 데 사용될 수 있다. 임시 매개변수는 이하의 수학식을 사용하는 벡터
Figure 112008058366628-PCT00222
및 행렬 C를 포함할 수 있다.
Figure 112008058366628-PCT00223
Figure 112008058366628-PCT00224
여기서 μ는 플레이어들의 평균을 포함하는 벡터이고, β는 잠재 점수 편차이고, σ2은 플레이어들의 분산을 포함하는 벡터이다. 벡터 μ 및 σ2 는 참여중인 플레이어의 평균 또는 모든 플레이어의 평균을 포함할 수 있다. 벡터가 모든 플레이어의 점수 매개변수를 포함하는 경우, A의 구조는 참여하지 않은(non-participating) 플레이어 각각에 대해 0의 계수를 제공할 수 있다.
임시 매개변수
Figure 112008058366628-PCT00225
및 C는, 벡터 a 및 b의 적분 극한 및 전술한 수학식 6 내지 10을 이용하여 사후 확률을 나타내는 절단된 가우스의 공분산(∑) 및 평균(△)을 결정하는 데 사용될 수 있다(714). 절단된 가우스의 평균 및 공분산은 수치 근사(Gentz 외 공저, "Numerical Computation of Multivariate normal Probabilities", Computational and Graphical Statistics 저널, 1992년 1월, 141-149 페이지 참조), 기대값 전파(이하를 참조), 및 기타 등등을 포함하는 임의의 적합한 방법을 사용하여 결정될 수 있다. 기대값 전파는 도 9와 관련하여 하기에 더 기술될 것이다.
계산된 평균 △ 및 공분산 ∑을 사용하여, 다수 팀 게임에 참여중인 플레이어 각각의 평균 μi 및 분산 σi 2에 의해 정의된 점수는 갱신될 수 있다(716). 일례에서, 함수 벡터 v 및 행렬 W는 하기의 수학식 79 및 80을 사용하여 결정될 수 있다.
Figure 112008058366628-PCT00226
Figure 112008058366628-PCT00227
벡터 v 및 행렬 W를 사용하여, 각 팀 j의 각 사용자 i의 평균
Figure 112008058366628-PCT00228
및 분산
Figure 112008058366628-PCT00229
는 하기의 수학식 81 및 82를 사용하여 갱신될 수 있다.
Figure 112008058366628-PCT00230
Figure 112008058366628-PCT00231
다수 팀 게임을 위한 상기 수학식 및 방법은 상기 주어진 2개의 팀 및 2명의 플레이어의 예들로 축소될 수 있다.
이러한 방식으로, 플레이어 각각의 점수의 평균에 대한 갱신은 게임 결과에 기초하여 선형적으로 증가 또는 감소될 수 있다. 예를 들어, 2명의 사용자의 예에서, 플레이어 A가 플레이어 B의 평균보다 큰 평균을 가진다면, 플레이어 A는 불리한 입장에 있어야 하고, 마찬가지로 플레이어 B는 보상받아야 한다. 각 플레이어의 점수의 분산에 대한 갱신은 곱셈 방식이다. 예를 들어, 결과가 예상치 못한 경우라면, 예컨대 플레이어 A의 평균이 플레이어 B의 평균보다 크고 플레이어 A가 게임에 지는 경우, 게임 결과가 점수에 관한 현재 신뢰에 대하여 잘 알려주기 때문에, 각 플레이어의 분산은 더 많이 감축될 수 있다. 마찬가지로, 플레이어들의 평균이 대략 동일하고(예컨대, 그 차가 잠재 무승부 마진 내에 있음) 게임이 무승부로 된다면, 결과를 예상할 수 있으므로 분산은 갱신에 의해 거의 변경되지 않을 수 있다.
다수 팀 매칭(Multiple Team Matching)
전술된 바와 같이, 각 플레이어에 대한 평균 μ 및 분산 σ2은, 모든 참여중인 플레이어의 점수의 평균 점수 및 표준 편차가 주어지면, 특정 게임 결과 y의 확률을 예상하는 데 사용될 수 있다. 예상된 게임 결과는, 소정의 임계값으로서 플레이어 표시된 환경설정과, 가능성 있는 게임의 결과 예측 확률을 비교하고, 가능한 결과들에 걸쳐 대략 동일한 분산(an approximately equal distribution)(예컨대, 1 - 25 % 이내)을 보장하는 것 등에 의해, 미래 게임에서 플레이어들을 매칭(matching)하는 데 사용될 수 있다. 가능한 결과에 걸쳐 대략 동일한 분산은 게임을 플레이하는 팀의 수에 따를 수 있다. 예를 들어, 각 팀이 이기거나 또는 비 길 가망이 대략 50%이거나 두 팀으로 이루어진 매치(match)는 설정될 수 있다. 게임이 3개의 팀을 갖는 경우, 각 대항하는 팀이 이기거나 또는 비길 가망이 대략 30%인 경우에 매치는 이루어질 수 있다. 대략 동일한 분산은 게임을 플레이하는 팀의 수의 역수로부터 또는 임의의 기타 적합한 방식으로 결정될 수 있다.
일례에서, 플레이어 매치 모듈에 의해 매칭되는 하나 이상의 플레이어에게는 매치를 받아들이거나 또는 거부할 기회가 주어질 수 있다. 플레이어의 결정은 도전자의 점수 및/또는 가능한 결과에 대한 결정된 확률 등의 주어진 정보에 기초할 수 있다. 다른 예에서, 플레이어는 또 한명의 플레이어로부터 직접 도전받을 수 있다. 도전받은 플레이어는, 도전 매치를 플레이어 매치 모듈에 의해 제공된 정보에 기초하여 도전 매치를 받아들이거나 또는 거부할 수 있다.
게임 결과의 확률은, 각 플레이어의 평균 및 분산에 의해 표현된 점수
Figure 112008058366628-PCT00232
에 걸쳐 획득된 지식 또는 불확실성(uncertainty)이 무시되는 점수
Figure 112008058366628-PCT00233
가 주어지면 결과의 확률로부터 게임 결과
Figure 112008058366628-PCT00234
의 확률을 계산함으로써, 결정될 수 있다.
상기 다수 플레이어 점수 갱신 수학식들 처럼, 도 6의 매칭 방법은 하나 이상의 플레이어 각각에 대하여 다수의 항들을 수용하도록 수정될 수 있다. 결과의 확률을 결정하는 예시적 수정 방법(800)은, 도 8에 도시되어 있다. 상기와 마찬가지로, 잠재 점수 편차 β, 잠재 무승부 존 ε, 동적 상수 τ0, 및 행렬 A 등의 정적 변수는 초기화될 수 있다(802). 행렬 A는 모두 제로를 포함하는 행렬로 초기화될 수 있다.
참여자 각각에 대한 점수 Si(참여중인 플레이어 i 각각의 평균 μi 및 분산 σi 2에 의해 표현됨)가 수신될 수 있다(806). k 팀의 랭킹 r이 수신될 수 있다(806). 참여중인 플레이어 각각에 대하여, 분산 σi 2등의 점수는, 참여중인 플레이어 각각에 대해 동적으로 갱신될 수 있고(808), 플레이어가 마지막으로 게임을 플레이한 시간 이후 경과된 시간에 기초할 수 있으며, 예컨대, 동적 갱신은 시간에 기초한다. 이 방식으로, 잠재 참여중인 플레이어 i 각각에 대한 분산은 상기 수학식 31을 사용하여 갱신될 수 있다.
팀의 점수는 플레이어들의 랭킹 r에 따라 순열()을 계산함으로써 순서화된 랭킹일 수 있다. 예를 들어, 전술된 바와 같이, 랭킹은 내림차순으로 배치될 수 있다.
랭킹의 인코딩이 결정될 수 있다(812). 랭킹의 인코딩은 도 7의 랭킹의 인코딩을 결정하고(710) 수학식 71 내지 수학식 76을 사용하는 것에 관련하여 기술된 방법을 사용하여 결정될 수 있다. 임시 매개변수
Figure 112008058366628-PCT00235
및 C는 상기 수학식 77 내지 수학식 78을 사용하여 결정되고(814), 도 7의 임시 매개변수를 결정하는 것(712)과 관련하여 기술될 수 있다. 마지막 갱신 이후에 △t > 0인 얼마 동안 동적 갱신을 게임 결과의 예측값에 포함시키기 위해,
Figure 112008058366628-PCT00236
의 여분의 서맨드(an extra summand)가 상기 수학식 78의 행렬 C의 j번째 대각선 원소(diagonal element)에 추 가될 수 있다.
게임 결과의 확률은 평균
Figure 112008058366628-PCT00237
및 분산 C를 갖는 절단된 가우스의 상수 함수의 값의 평가에 의해 결정될 수 있다(816). 전술된 바와 같이, 절단된 가우스은 수치 근사(Gentz 외 공저, "Numerical Computation of Multivariate normal Probabilities", Computational and Graphical Statistics 저널, 1992년 1월, 141-149 페이지 참조), 기대값 전파(이하를 참조), 및 기타 등등을 포함하는 임의의 적합한 방법으로 평가될 수 있다.
수치 근사
수치 근사의 한 가지 적합한 기술은, Gentz 등에 의한 Numerical Computation of Multivariate Normal Probabilities, Journal of Computational and Graphical Statistics 1, 1992년, 141 페이지 내지 149 페이지에 개시되어 있다. 일례로, 절단된 가우스의 차원성이 작다면(예를 들어, 팀(j) 내의 플레이어들의 수(nj)), 근사화된 사후 확률은, 균등한 랜덤 편차값에 기초하여, 전술한 누적 가우스 분포(φ)를 이용하여 반복적으로 행해질 수 있는 랜덤한 변수들의 변환에 기초하여 추정될 수 있다.
정규화 상수(
Figure 112008058366628-PCT00238
)가 랭킹 확률(r)과 동일하므로, 정규화 상수는 아래 수학식을 적분함으로써 결정될 수 있다.
Figure 112008058366628-PCT00239
평균(z)은 아래 수학식에 의해 ADF를 이용함으로써 결정될 수 있다.
Figure 112008058366628-PCT00240
위 수학식들을 수치적으로 근사화함으로써, 절단된 가우스를 수치 근사하는 데 이용될 수 있는 평균 및 정규화 상수를 제공하게 된다.
기대값 전파
수치 근사가 아닌 기대값 전파를 이용하여 플레이어의 점수를 갱신하며 그리고/또는 게임 결과를 예측할 수 있다. 다수의 팀의 경우, 갱신 및 예측 방법은 2개의 팀 갱신 및 예측 방법의 반복 기술에 기초할 수 있다. 기대값 전파 동안 계산되는 반전(inversion) 수를 줄이려면, 가우스 분포는 랭킹 1 가우스라 가정할 수 있으며, 예를 들어, 우도(
Figure 112008058366628-PCT00241
)가 점수(s)들의 일차원 투영의 소정의 함수이다. 일반적인 기대값 근사에 대한 효율은 사후 확률이 수정된 절단된 가우스 분포라고 가정함으로써 증가될 수 있다.
예를 들어, 도 9는 절단된 가우스를 기대값 전파로 근사화하는 방법(1200)의 일례를 도시한다.
비절단 가우스의 평균(μ) 및 공분산(Σ)은 점수 갱신의 계산에서와 같이 수신될 수 있다(블록 1202). 입력된 평균(μ) 및 공분산(Σ)은 비절단 가우스의 평균 및 공분산이며 플레이어 점수의 평균 및 분산이 아니라는 점을 인식할 것이다. 이 평균은 n개의 원소를 갖고, 공분산 행렬은 n x n일 수 있다. 절단된 가우스의 상절단점 및 하절단점을 수신할 수 있다. 예를 들어, j번째 팀이 j+1번째 팀과 동일한 랭킹이라면, 절단된 가우스의 하한(a) 및 상한(b)은 j 및 j+1 각각에 대하여 아래와 같이 설정될 수 있다.
Figure 112008058366628-PCT00242
Figure 112008058366628-PCT00243
이와 달리, j번째 팀이 j+1과 동일한 랭킹이 아니라면, 변수(a, b)들은 j 및 j+1 각각에 대하여 아래와 같이 설정될 수 있다.
Figure 112008058366628-PCT00244
Figure 112008058366628-PCT00245
(87.1)
기대값 전파의 매개변수들은 블록(1206)에서 초기화될 수 있다. 구체적으로, 1 내지 n값의 각 i에 대하여, 평균(
Figure 112008058366628-PCT00246
)은 제로 또는 기타 임의의 적절한 값 일 수 있으며, 매개변수(
Figure 112008058366628-PCT00247
)는 제로 또는 기타 임의의 적절한 값으로 초기화될 수 있고, 매개변수(
Figure 112008058366628-PCT00248
)는 1 또는 기타 임의의 적절한 값으로 초기화될 수 있다. 근사화된 평균(
Figure 112008058366628-PCT00249
)은 수신된 평균(μ)으로 초기화될 수 있고, 근사화된 공분산(
Figure 112008058366628-PCT00250
)은 수신된 공분산(Σ)으로 초기화될 수 있다.
인덱스(j)는 블록(1208)에서 1 내지 n으로 선택될 수 있다. 근사 평균 및 공분산(
Figure 112008058366628-PCT00251
)은 블록(1210)에서 갱신될 수 있다. 구체적으로, 근사 평균 및 공분산은 아래와 같이 갱신될 수 있다.
Figure 112008058366628-PCT00252
Figure 112008058366628-PCT00253
여기서,
Figure 112008058366628-PCT00254
는 아래의 수학식에 의해 결정된다.
Figure 112008058366628-PCT00255
그리고, 인자(
Figure 112008058366628-PCT00256
)들은 아래의 수학식에 의해 결정된다.
Figure 112008058366628-PCT00257
Figure 112008058366628-PCT00258
인자(
Figure 112008058366628-PCT00259
)들은 아래의 수학식에 의해 결정될 수있 다.
Figure 112008058366628-PCT00260
Figure 112008058366628-PCT00261
여기서, 함수(
Figure 112008058366628-PCT00262
)는 수학식 17 및 18을 이용하여 평가될 수 있으며, 매개변수(
Figure 112008058366628-PCT00263
)는 아래의 수학식들을 이용하여 평가될 수 있다.
Figure 112008058366628-PCT00264
Figure 112008058366628-PCT00265
Figure 112008058366628-PCT00266
Figure 112008058366628-PCT00267
Figure 112008058366628-PCT00268
Figure 112008058366628-PCT00269
인자(
Figure 112008058366628-PCT00270
)들은 블록(1212)에서 갱신될 수 있다. 구체적으로, 이 인자들은 아래의 수학식들을 이용하여 갱신될 수 있다.
Figure 112008058366628-PCT00271
Figure 112008058366628-PCT00272
Figure 112008058366628-PCT00273
이어서, 종료 기준은 블록(1214)에서 평가될 수 있다. 예를 들어, 종료 조건(
Figure 112008058366628-PCT00274
)은 아래의 수학식을 이용하여 계산될 수 있다.
Figure 112008058366628-PCT00275
임의의 적절한 종료 조건은 근사의 수렴을 가리킬 수 있다. 결정된 종료 조건(
Figure 112008058366628-PCT00276
)은 소정의 종료 허용 오차(toleration) 기준(δ)에 비교될 수 있다. 결정된 종료 조건의 절대값이 종료 허용 오차 기준의 이하이면, 근사화된 평균(
Figure 112008058366628-PCT00277
), 분산(
Figure 112008058366628-PCT00278
), 정규화 상수(
Figure 112008058366628-PCT00279
)는 수렴하는 것으로 고려될 수 있다. 종료 기준이 충족되지 않으면, 방법은 인덱스를 선택하는 단계(블록 1208)로 복귀할 수 있다. 종료 기준이 충족되면, 근사화된 평균 및 공분산이 복귀될 수 있다. 또한, 정규화 상수(
Figure 112008058366628-PCT00280
)는 블록(1216)에서 평가될 수 있다. 구체적으로, 정규화 상수는 아래의 수학식을 이용하여 평가될 수 있다.
Figure 112008058366628-PCT00281
매치메이커 및 리더 보드
전술한 바와 같이, 결과의 결정된 확률은, 그 결과에 의해 팀에 도전할 가능성이 있는 것처럼 플레이어들을 매칭하는 데 사용될 수 있다. 게임의 예측 결과를 결정하는 것은, 4개 팀보다 많은 팀들에 대한 전체 결과 분포를 저장하는 메모리의 관점에서 볼 때 일부 경우엔 비용이 비쌀 수 있다. 구체적으로,
Figure 112008058366628-PCT00282
개의 결과가 존재하며, 여기서 k는 팀들의 수이고, 예를 들어, O()에 의해 표현되는 함수의 차수의 O() 평균은 척도 인자 및/또는 상수에 의해서만 다를 수 있다. 또한, 예측 결과들은, 서로 다른 표준 편차(
Figure 112008058366628-PCT00283
)들을 갖는 플레이어들의 평균(
Figure 112008058366628-PCT00284
)들이 동일하다면 이러한 플레이어들을 구별하지 못할 수 있다. 일부 경우엔, 2개의 결과 분포 간의 거리를 계산하는 데 있어서 비용이 비쌀 수 있다. 따라서, 일부 경우엔, 2명의 플레이어의 점수들 간의 점수차를 계산하는 것이 유용할 수 있다. 예를 들어, 점수차는 2개 점수(
Figure 112008058366628-PCT00285
) 간의 차로서 정의될 수 있다. 예상 점수차(
Figure 112008058366628-PCT00286
)는 아래의 수학식을 이용하여 결정될 수 있다.
Figure 112008058366628-PCT00287
또는
Figure 112008058366628-PCT00288
여기서,
Figure 112008058366628-PCT00289
는 플레이어들의 평균들의 차이고(즉,
Figure 112008058366628-PCT00290
), 여기서
Figure 112008058366628-PCT00291
는 플레이어들(i, j)의 분산들의 합이다(즉,
Figure 112008058366628-PCT00292
). 점수들의 차의 예상은 소정의 임계값에 비교되어 플레이어(i, j)가 매칭되어야 하는지 여부 를 결정할 수 있다. 예를 들어, 소정의 임계값은 약 3 내지 약 6의 범위에 있을 수 있으며, 매칭에 이용가능한 플레이어들의 수를 포함하는 많은 인자들에 의존할 수 있다. 구체적으로 더 많은 플레이어들이 이용가능할수록, 더 낮은 임계값을 설정할 수 있다.
게다가, 플레이어(i)의 점수 신뢰를 이용하여 보수적 점수 추정값을
Figure 112008058366628-PCT00293
로서 계산할 수 있고, 여기서 인자 k는 보수주의의 수준을 정량하는 양수이다. k에 대한 임의의 적절한 수는 3과 같은 수를 리더 보드를 위해 사용할 수 있듯이 보수주의의 수준을 가리키도록 선택될 수 있다. 많은 경우에, k 인자의 값은 양수이지만, 낙관적인 점수 추정값을 결정할 때처럼 일부 경우에선 음수를 이용할 수 있다. 이러한 보수적 점수 추정값의 이점은, 새로운 플레이어들에 대하여 추정값이 (초기의 큰 분산(
Figure 112008058366628-PCT00294
)으로 인해) 제로일 수 있다는 점이며 이것은 종종 새로운 플레이어들에 대하여 보다 더 직관적이다("제로에서 시작").
점수의 수렴
플레이어의 평균(
Figure 112008058366628-PCT00295
)은, 모든 플레이어들 간에 승리의 진정한 (미지의) 확률에 의존할 수 있으므로, 특정값에 수렴하지 않을 수 있다. 반면에, 분산(
Figure 112008058366628-PCT00296
)은 고정점에 수렴할 수 있으며, 그 이유는 게임 결과와 같은 데이터의 모든 통합이 스킬 신뢰의 엔트로피를 감소시킬 수 있기 때문이다.
점근성 분산 극한값(
Figure 112008058366628-PCT00297
)은 임의의 적절한 방식으로 결정될 수 있다. 예를 들어, 점근성 분산 극한값(
Figure 112008058366628-PCT00298
)에서, 모든 플레이어들은 스킬 신뢰의 동일한 표준 편차(즉,
Figure 112008058366628-PCT00299
)를 갖는다고 가정될 수 있다. 또한 또는 다른 방안으로, 점근성 분산 극한값(
Figure 112008058366628-PCT00300
)에서, 동일한 스킬들을 갖는 플레이어들만이 서로 매핑될 수 있으며, 예를 들어, 2개 팀에 대하여
Figure 112008058366628-PCT00301
이거나 다수의 팀에 대하여
Figure 112008058366628-PCT00302
일 수 있다. 또한 또는 다른 방안으로, 팀들의 어떠한 쌍 간에도 게임이 무승부로 끝나지 않는다고 가정할 수 있다.
이하의 예는 다수의 팀에 관한 것으로서, 2개 팀 및 2명의 플레이어가 다수 팀 방안의 특별한 경우에 해당한다. 점근성 극한값이 결정되고 있으므로, 분산값(
Figure 112008058366628-PCT00303
)들의 갱신은 분산(
Figure 112008058366628-PCT00304
)에 영향을 끼치지 않는다. 이러한 방식으로, 점근성 분산(
Figure 112008058366628-PCT00305
)이 아래와 같은 수학식으로 표현될 수 있다.
Figure 112008058366628-PCT00306
여기서 행렬(
Figure 112008058366628-PCT00307
)는, 고정된 지연 분산(
Figure 112008058366628-PCT00308
), 동적 시간 갱신(
Figure 112008058366628-PCT00309
), 점근성 분산(
Figure 112008058366628-PCT00310
)에 의존한다. 점근성 극한값은, 임의의 적절한 방식으로 0, 공분산(C0),
Figure 112008058366628-PCT00311
의 적분 극한값의 평균을 이용하여, 절단된 가우스의 공분산을 결정하는 데 사용될 수 있다. 예를 들어, 전술한 다수 팀의 갱신을 참조해 볼 때, 공분산(Z0) 및 공분산(C0)은 아래의 수학식을 이용하여 결정될 수 있다.
Figure 112008058366628-PCT00312
Figure 112008058366628-PCT00313
이러한 방식으로, 매개변수 행렬(W)는 아래의 수학식을 이용하여 결정될 수 있다.
Figure 112008058366628-PCT00314
매개변수 w0가 아래의 수학식에 의해 정의된다고 가정해 보면,
Figure 112008058366628-PCT00315
σ의 점근성 극한값은 아래의 수학식에 의해 결정될 수 있다.
Figure 112008058366628-PCT00316
이것은 아래와 같이 해를 갖는
Figure 112008058366628-PCT00317
에서의 이차 방정식이다.
Figure 112008058366628-PCT00318
매칭
전술한 바와 같이, 한 팀 및/또는 2개 이상의 팀의 2명 이상의 플레이어는, 소정의 사용자 정의 및/또는 소정 선호도, 예를 들어, 무승부 확률 등에 따라 특정한 게임에 대하여 매칭될 수 있다. 일부 예에서, 양호한 또는 바람직한 시합은 각 플레이어가 게임을 이길 수 있는 시합으로서 정의될 수 있다. 특히, 시합은 모든 참여 팀들이 비길 확률이 대략 크다면 바람직할 수 있다.
시합이 바람직한지를 측정하기 위해 무승부 확률을 결정하려면, 무승부 마진()에 대한 의존성은 극한값을
Figure 112008058366628-PCT00320
로서 고려함으로써 제거될 수 있다. 플레이어들의 현재의 스킬 신뢰들이 평균(μ)의 벡터 및 공분산(Σ)의 벡터에 의해 주어지면, 그 평균과 공분산이 주어진 무승부 확률
Figure 112008058366628-PCT00321
은 아래의 수학식처럼 결정될 수 있다.
Figure 112008058366628-PCT00322
여기서, 행렬 A는 수학식 71 및 72에서 언급한 바와 같이 시합을 위해 결정된다.
수학식 115의 점수가 주어진 무승부 확률은 임의의 적절한 시합 품질 측정에 비교될 수 있고, 이 측정은 시합 모듈 내에서 결정될 수 있으며 그리고/또는 사용자에 의해 제공될 수 있다. 일례로, 시합 품질 측정은, 모든 팀들이 동일한 스킬을 갖는, 즉,
Figure 112008058366628-PCT00323
인 동일한 시합의 무승부 확률일 수 있으며, 플레이어 스킬엔 어떠한 불확실성도 없다. 이러한 방식으로, 시합 품질 측정(
Figure 112008058366628-PCT00324
)은 아래와 같이 결정될 수 있다.
Figure 112008058366628-PCT00325
이러한 방식으로, 시합 품질 측정은, 시합 품질 측정값 0과 1 사이에 존재하는 특성을 가질 수 있으며, 여기서 1이라는 값은 최고의 시합을 가리킨다.
플레이어들 중 누구도 게임을 플레이하지 못했다면(예를 들어, μ, Σ의 점수들이 학습되지 않았음 = 초기 μ =
Figure 112008058366628-PCT00326
), k개 팀들에 대한 시합 품질 측정은 아래와 같이 간략화될 수 있다.
Figure 112008058366628-PCT00327
각 팀이 동일한 수의 플레이어들을 갖는다면, 수학식 117의 시합 품질 측정 은 아래와 같이 더 간략화될 수 있다.
Figure 112008058366628-PCT00328
시합 품질 측정을 결정하고 이용하는 방법의 일례를 도 8의 방법(800)을 참조하여 설명한다. 매개변수들은 블록(802)에서 초기화될 수 있다. 예를 들어, 고정된 지연 점수 분산(
Figure 112008058366628-PCT00329
) 또는 성취도 분산이 설정될 수 있으며 그리고/또는 랭킹 인코딩된 행렬(A)이 0으로 초기화될 수 있다. 플레이어 점수들(예를 들어, 평균(μ) 및 분산(
Figure 112008058366628-PCT00330
))은 전술한 바와 같이 블록(804)에서 수신될 수 있다. k개 팀들의 랭킹(r)은 블록(806)에서 임의의 적절한 방식으로 수신될 수 있다. 예를 들어, 이 팀들의 랭킹은 메모리로부터 검색될 수 있다.
팀들의 점수들은 블록(810)에서 플레이어들의 랭킹(r)에 따른 순열()을 컴퓨팅함으로써 랭킹 순서화될 수 있다. 예를 들어, 전술한 바와 같이, 랭킹들은 내림 차순으로 배치될 수 있다.
랭킹의 인코딩은 블록(812)에서 결정될 수 있다. 랭킹의 인코딩은, 도 7의 랭킹(710)의 인코딩을 결정하고 수학식 71 내지 76을 이용하는 것을 참조하여 설명한 방법을 이용하여 결정될 수 있다. 임시 매개변수들은 블록(814)에서 결정될 수 있다. 예를 들어, 매개변수(
Figure 112008058366628-PCT00331
)들은, 도 7의 임시 매개변수를 결정하는 것(블록 712)에 관련하여 설명된 수학식 77을 이용하여 결정될 수 있다. 그러나, 무승부 품질 측정에서 수학식 78의 매개변수 C를 이용하기 보다는, 아래의 수학식을 이용하여 매개변수 C1 및 C2를 결정할 수 있다.
Figure 112008058366628-PCT00332
Figure 112008058366628-PCT00333
게임 결과의 확률은, 평균(u) 및 분산(C)을 갖는 절단된 가우스의 상수 함수의 값을 평가함으로써, 블록(816)에서 결정될 수 있다. 수학식 116의 무승부 품질 측정을 이용함으로써, 무승부의 확률은 아래와 같이 결정될 수 있다.
Figure 112008058366628-PCT00334
플레이어 2명의 시합 품질
플레이어가 한 명인 두 팀의 예는 시합 품질 측정의 특별한 경우이다. 전술한 바와 같이, 제1 플레이어를 A라 하고 제2 플레이어를 B라 할 수 있다. 시합 품질 측정(q)은, 플레이어 2명의 평균 점수들 간의 차 및 양 플레이어들의 분산들의 합의 항으로 기입될 수 있다. 특히, 그 차 및 합은 평균 차(
Figure 112008058366628-PCT00335
) 및 분산 합(
Figure 112008058366628-PCT00336
)을 가리킨다. 이러한 방식으로, 무승부 품질 측정은 아 래와 같이 수학식 116을 이용하여 결정될 수 있다.
Figure 112008058366628-PCT00337
수학식 122로부터 발생하는
Figure 112008058366628-PCT00338
는 항상 0 내지 1의 범위 내에 있으며, 여기서 0은 발생가능한 최악의 시합을 가리키고 1은 발생가능한 최고의 시합을 가리킨다. 수학식 122를 이용함으로써, 2명의 플레이어가 동일한 평균 점수를 갖더라도, 점수의 불확실성은 제안된 시합의 품질 측정에 영향을 끼친다. 예를 들어, 플레이어 점수 불확실성(σ)들 중 어느 것이라도 크다면, 시합 품질 기준은 1보다 상당히 작아서, 시합의 품질 측정을 감소시킨다. 이렇게 결정된 무승부 품질 측정은 플레이어들의 예상되는 스킬 차들의 하나 이상의 측정에 비교될 수 있다. 예를 들어, 스킬 차들의 측정은 절대값 또는 제곱된 에러값을 취할 수 있다. 예를 들어, 절대 무승부 품질 측정의 일례는 아래와 같다.
Figure 112008058366628-PCT00339
다른 예에서, 제곱 에러 무승부 품질 측정은 아래와 같을 수 있다.
Figure 112008058366628-PCT00340
exp(-())의 변환이 [0, 1]의 간격에 대한 게임 점수의 예상 갭을 매핑한다는 점을 인식할 것이며, 1은 하이 (제로 갭) 품질 시합에 대응한다.
수학식 123 및 124의 예에서, 품질 측정이 균등한 평균 스킬(즉,
Figure 112008058366628-PCT00341
)의 2명의 플레이어를 위한 특성이라면(the quality measures may the property that for two players of equal mean skill (i.e.,
Figure 112008058366628-PCT00342
), 플레이어들의 스킬의 임의의 불확실성은 시합 품질(즉, 품질 측정의 값)을 줄인다.
게임 프로세서의 초반에, 예를 들어, 하나 이상의 플레이어나 팀이 높은 불확실성이 있는 스킬을 갖거나 평균 및 분산의 초기화된 값(
Figure 112008058366628-PCT00343
Figure 112008058366628-PCT00344
)에서 스킬을 갖는 경우, 2명의 가망있는 플레이어들 간의 시합의 품질은
Figure 112008058366628-PCT00345
의 품질 임계값에 대하여 비교될 수 있다. 특히, 2명의 플레이어 간의 무승부의 실제 품질은, 전술한 바와 같이 평가될 수 있고, 품질 임계값(
Figure 112008058366628-PCT00346
)에 비교될 수 있다.
플레이어 스킬들이 대략 수렴된 후(예를 들어, 플레이어 분산(
Figure 112008058366628-PCT00347
)들이 대략 0으로 됨), 2명의 가망있는 플레이어 간의 시합 품질(예를 들어,
Figure 112008058366628-PCT00348
)은
Figure 112008058366628-PCT00349
의 품질 임계값에 대하여 비교될 수 있다. 특히, 2명의 플레이어 간의 시합은, 이들의
Figure 112008058366628-PCT00350
가 무승부 품질 측정(
Figure 112008058366628-PCT00351
)보다 작은 경우 허용될 수 있다.
Figure 112008058366628-PCT00352
라는 등립성은 초기에 허용된 시합을 얻는 데 필요할 수 있는 평균 차(
Figure 112008058366628-PCT00353
)를 결정하도록 해를 구할 수 있다. 예 를 들어,
Figure 112008058366628-PCT00354
의 시합 품질의 경우, 아래와 같다.
Figure 112008058366628-PCT00355
이러한 방식으로, 보다 나은 플레이어의 승리 확률은
Figure 112008058366628-PCT00356
의 함수이다. 수학식 122 및 123의 서로 다른 무승부 품질 측정값들이 도 10의 그래프에서 라인(1002, 1004, 1006)들로 각각 도시되어 있다. 축(1008)은
Figure 112008058366628-PCT00357
의 값을 가리키고, 축(1010)은 보다 나은 플레이어가 승리한다는 수학식 125의 확률을 가리킨다. 플롯 1000에서 알 수 있듯이, 라인(1002)의 무승부 확률은 보다 나은 플레이어의 실제 승리 확률을 더 잘 가리킨다.
일부 경우에, 2명의 플레이어 간의 시합을 결정하기 위해, 시합 모듈은 이용가능한 플레이어들 중 한 플레이어에 대하여 최고의 시합을 결정할 수 있다. 예를 들어, 플레이어는 게임 환경에 들어가 시합을 요구할 수 있다. 그 요구에 응답하여, 시합 모듈은 이용가능한 플레이어들, 예를 들어, 게임 환경에서 시합을 찾고 있는 플레이어들의 최고의 시합을 결정할 수 있다. 일부 경우에, 시합 모듈은 시합을 기다리는 모든 현재 플레이어들에 대한 무승부를 평가할 수 있다. 무승부 품질의 임계값(예를 들어,
Figure 112008058366628-PCT00358
)에 기초하여, 시합 모듈은 임계 무승부 값(
Figure 112008058366628-PCT00359
)보다 작은 시합들을 걸러낼 수 있다. 품질 측정을 만족하는 플레이어들의 하나 이상의 잠재 편성은, 수용 또는 거절을 위해 하나 이상의 플레이어에게 제시될 수 있으며, 그리고/또는 시합 모듈은, "매우 좋은" 시합, 이용가능한 "최고의" 시합, (최고의 시합이 되지 않을 수 있는) 모든 플레이어들이 시합을 갖는 모든 이용가능 플레이어들을 위한 시합들, 및 품질 기준을 만족하는 시합들의 결정에 응답하여 시합을 정할 수 있다. 일부 경우에, 모든 결정된 "좋은" 시합들은 한 플레이어에게 제시될 수 있고, 일부 경우엔, 시합 품질에 기초하여 내림 차순(또는 올림 차순)으로 열거될 수 있다.
그러나, 위의 방안은 큰 게임 환경에 대하여 잘 맞지 않을 수 있다. 예를 들어, 어느 때라도 시합을 기다리는 대략 백만명의 사용자들이 존재할 수 있다. 실제 시합 품질 측정(
Figure 112008058366628-PCT00360
)을 이용하려면, 계산상 고비용이 드는 것으로 고려될 수 있는 완전히 선형 테이블 정렬(sort)을 시합 모듈이 행할 필요가 있을 수 있다. 시합을 찾는 플레이어들의 모든 순열에 대한 모든 가능한 게임 결과의 확률을 계산하는 컴퓨팅을 줄이기 위해, 시합 모듈은, 수학식 125에 기초하여 스킬 수준들의 차의 초기 분석(가망있는 플레이어 편성을 프리필터링)을 행할 수 있고, 그 시합 분석으로부터 스킬 수준들, 예를 들어, 평균 점수(μ) 및/또는 평균 점수들의 차(예를 들어,
Figure 112008058366628-PCT00361
)에 대한 간단한 범위 체크를 초과하는 편성을 제거할 수 있다.
플레이어 A에 대한 간단한 범위 체크를 생성하기 위해, 위에서 언급한 수학식 124의 무승부 품질 측정(
Figure 112008058366628-PCT00362
)은, 분산(
Figure 112008058366628-PCT00363
)이 증가하는 경우 감소되며, 평균 차 의 절대값(
Figure 112008058366628-PCT00364
)이 증가하는 경우 증가한다. 특히, 플레이어들 중 임의의 플레이어의 스킬의 불확실성이 증가하거나 평균 편차 스킬이 증가하는 경우, 시합 품질은 줄어든다. 이러한 방식으로, 플레이어 b의 관점에서 볼 때,
Figure 112008058366628-PCT00365
따라서, 품질 측정들(
Figure 112008058366628-PCT00366
, 및
Figure 112008058366628-PCT00367
) 중 임의의 것이 임계 무승부 품질 측정보다 낮으면, 시합 모듈은 편성을 배제할 수 있으며 그 이유는 둘 다의 측정이 실제 매칭 측정(
Figure 112008058366628-PCT00368
)(그러나 탐색에 고 비용이 듬)의 상한을 넘기 때문이다. 구체적으로,
Figure 112008058366628-PCT00369
, 또는
Figure 112008058366628-PCT00370
이 임계 품질 측정보다 크기만 하면, 시합 모듈은 플레이어를 위한 잠재으로 좋은 시합들을 배제하지 않았다.
수학식 126의 범위 체크는 임의의 적절한 방식으로 구현될 수 있다. 예를 들어, 각 플레이어 A 및 B에 대한 평균(μ) 및 분산(
Figure 112008058366628-PCT00371
)은, 수학식 127, 128, 129의 3가지 범위 체크를 이용하여 체크될 수 있다.
Figure 112008058366628-PCT00372
Figure 112008058366628-PCT00373
Figure 112008058366628-PCT00374
임계 무승부 품질 측정값(
Figure 112008058366628-PCT00375
)은, 시합 모듈에서 소정의 값이나 결정된 값으로서 그리고/또는 사용자 선호도로서 제공될 수 있는 임의의 적절한 값일 수 있다. 일부 경우에, 임계 무승부 품질 측정값(
Figure 112008058366628-PCT00376
)은,
Figure 112008058366628-PCT00377
의 대수가 분산의 합(
Figure 112008058366628-PCT00378
)에 대략 동일하도록 설정될 수 있고, 여기서 t는 0 또는 1이고, 여기서 시스템에 대하여 새로운 플레이어의 분산은 0으로 설정된다. t값을 증가시킴으로써, 걸러지지 않은 세션들 또는 시합들의 개수가, 결국 모든 세션들이 포함될 때까지 증가된다.
본 발명의 예시적인 실시예들을 설명하였으므로, 당업자에겐 전술한 설명이 단지 예를 든 예시적인 것이며 한정적인 것이 아니라는 점이 명백하다. 수많은 수정 및 기타 예시적인 실시예들은 당업자의 범위 내에 있으며 본 발명의 범위 내에 속한다. 특히, 전술한 예들은 가우스를 이용한 사전 확률 및/또는 사후 확률의 모델링을 참조하여 설명되어 있지만, 위의 실시예들은 의존하거나 의존하지 않을 수 있는 플레이어들의 점수에 대한 임의의 분포를 허용하는 확장될 수 있음을 인식하 기 바란다. 위의 예에서, 스킬 공분산 행렬은 대각 행렬라고 가정하며, 즉, 조인트 스킬 분포가 각 인자에서 2개의 수(평균 및 표준 편차)에 의해 표현되는 인수분해 가우스 분포이다. 일부 경우에, 공분산 행렬은,
Figure 112008058366628-PCT00379
와 같은 행 랭킹 근사를 이용하여 결정될 수 있다. 이러한 연산을 위한 메모리 요구 사항은
Figure 112008058366628-PCT00380
이고, 갱신 기술에서의 모든 연산을 위한 계산상 요구 사항은 단지
Figure 112008058366628-PCT00381
일 수 있다. d의 작은 값에 대하여, 이것은 메모리 및 계산의 알맞은 양일 수 있고, 사후 근사는 (가정된 것이 아닌) 근사화된 공분산 행렬을 이용하여 개선될 수 있다. 이러한 시스템은 스킬들 간의 상관을 이용할 수 있다. 예를 들어, 플레이어들의 클랜들의 모든 멤버들은 클랜의 단일 멤버의 게임 결과로부터 이익(또는 불이익)을 얻을 수 있다. 공분산 행렬의 저 랭킹 근사화는, 높게 상관된 스킬들이 서로 보다 가깝게 표시되는 것처럼 플레이어들의 가시화(예를 들어, 플레이어 맵)를 허용할 수 있다.
게다가, 본 명세서에서 제시한 상당수의 예들은 방법의 동작들 또는 시스템 요소들의 특정한 조합들을 포함하지만, 이러한 연산 및 요소는 다른 방식으로 결합되어 동일한 목적을 달성할 수 있다는 점을 이해하기 바란다. 일실시예에 대해서만 설명한 연산, 요소, 및 특징은 다른 실시예에서 유사한 역할로부터 배제되지 않는다. 게다가, 청구항의 요소를 수정하기 위해 청구범위에서 "제1" 및 "제2"와 같은 통상적인 용어들을 사용하는 것은 그 자체로 어떠한 우선 순위, 선행, 또는 다른 요소에 대한 하나의 청구항 요소의 순서나 방법의 동작들이 수행되는 순서를 암 시하지 않지만, 청구항 요소들을 구별하기 위해 소정의 이름을 하나의 청구항 요소를 (그러나 통상적인 용어의 사용을 위해) 동일한 이름을 갖는 다른 요소로부터 구별하도록 단지 라벨로서 사용된다.

Claims (20)

  1. a) 제2 팀에 맞서는 적어도 제1 팀 간의 게임의 결과를 수신하는 단계 - 상기 제1 팀은 제1 플레이어 및 제2 플레이어를 포함하고, 상기 제2 팀은 제3 플레이어를 포함하며, 상기 제1 팀의 제1 플레이어는 상기 게임의 전체 시간보다 작은 시간의 일부에서 플레이함 - 와,
    b) 상기 제1 팀의 제1 플레이어에 관련된 분포를 나타내는 제1 평균과 제1 분산을 포함하는 제1 점수를 수신하는 단계와,
    c) 상기 제1 팀의 제2 플레이어에 관련된 분포를 나타내는 제2 평균과 제2 분산을 포함하는 제2 점수를 수신하는 단계와,
    d) 상기 제2 팀의 제3 플레이어에 관련된 분포를 나타내는 제3 평균과 제3 분산을 포함하는 제3 점수를 수신하는 단계와,
    e) 상기 게임의 결과와 상기 제1 플레이어가 플레이한 시간의 일부에 기초하여 상기 제1 평균과 제1 분산을 갱신하는 단계와,
    f) 갱신한 상기 제1 평균과 제1 분산의 표시(indication)를, 상기 제1 플레이어, 상기 제2 플레이어, 상기 제3 플레이어로 이루어지는 그룹 중 적어도 하나에 제공하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 게임의 결과와 상기 제1 플레이어가 플레이한 시간의 일부에 기초하여 상기 제2 평균과 제2 분산을 갱신하는 단계를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 게임의 결과와 상기 제1 플레이어가 플레이한 시간의 일부에 기초하여 상기 제3 평균과 제3 분산을 갱신하는 단계를 더 포함하는 방법.
  4. 제1항에 있어서,
    상기 제1 평균과 제1 분산을 갱신하는 단계는,
    상기 게임의 결과와 상기 제1 플레이어가 플레이한 시간의 일부에 기초하여 랭킹 행렬 내에 상기 제1 팀과 제2 팀의 게임 결과의 랭킹을 인코딩하는 단계와,
    상기 랭킹 행렬을 이용하여 상기 제1 평균과 제1 분산을 갱신하는 단계
    를 포함하는 방법.
  5. 제4항에 있어서,
    상기 제1 평균과 제1 분산을 갱신하는 단계는,
    상기 랭킹 행렬을 이용하여, 상기 제1 점수, 상기 제2 점수, 상기 제3 점수에서의 사후 신뢰(posterior belief)를 나타내는 절단된 가우스(truncated Gaussian)의 평균과 공분산을 결정하는 단계와,
    상기 절단된 가우스의 평균을 이용하여 상기 제1 평균을 갱신하고 상기 절단 된 가우스의 공분산을 이용하여 상기 제1 분산을 갱신하는 단계
    를 포함하는 방법.
  6. 제4항에 있어서,
    상기 랭킹 인코딩 단계는, 상기 게임의 전체 시간에 대한 평균 팀 크기에 기초하여 상기 랭킹을 가중하는 단계를 포함하는 방법.
  7. 제4항에 있어서,
    상기 랭킹 인코딩 단계는,
    상기 제1 플레이어가 플레이한 시간의 일부의 2배를 상기 제1 팀과 제2 팀의 플레이어들의 각각에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 랭킹 행렬의 제1 행과 제1 열의 행렬 원소를 결정하는 단계와,
    2를 상기 제1 팀과 제2 팀의 플레이어들의 각각에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 랭킹 행렬의 제2 행과 상기 제1 열의 행렬 원소를 결정하는 단계
    를 포함하는 방법.
  8. 제7항에 있어서,
    상기 랭킹 인코딩 단계는,
    상기 제2 플레이어가 플레이한 시간의 일부의 음의 2배를 상기 제1 팀과 제2 팀의 플레이어들의 각각에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 랭킹 행렬의 제3 행과 상기 제1 열의 행렬 원소를 결정하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    제3 팀의 제4 플레이어의 제4 평균과 제4 분산을 포함하는 제4 점수를 수신하는 단계를 더 포함하고,
    상기 게임 결과는, 상기 제1 팀이 상기 제2팀과 제3 팀을 이겼음을 식별하며, 상기 제2 팀이 상기 제3 팀을 이겼는지 여부 또는 상기 제3 팀이 상기 제2 팀을 이겼는지 여부를 식별하지 않는 방법.
  10. 제9항에 있어서,
    상기 제1 평균과 제1 분산을 갱신하는 단계는,
    상기 제1 플레이어가 플레이한 시간의 일부, 상기 제1 팀과 제2 팀 간의 비교, 상기 제1 팀과 제3 팀 간의 비교에 기초하여, 랭킹 행렬 내에서 상기 제1 팀, 상기 제2 팀, 상기 제3 팀의 게임 결과의 랭킹을 인코딩하는 단계와,
    상기 랭킹 행렬을 이용하여 상기 제1 평균과 제1 분산을 갱신하는 단계를 포함하는 방법.
  11. a) 제1 팀, 제2 팀, 제3 팀 간의 게임의 결과를 수신하는 단계 - 상기 제1 팀은 제1 플레이어를 포함하고, 상기 제2 팀은 제2 플레이어를 포함하며, 상기 제3 팀은 제3 플레이어를 포함하고, 상기 결과는 상기 제1 팀이 상기 제2 팀과 제3 팀을 이겼음을 정의하지만 상기 제2 팀과 제3 팀 간의 상대적인 게임 결과는 정의하지 않음 - 와,
    b) 상기 제1 팀의 제1 플레이어에 관련된 분포를 나타내는 제1 평균과 제1 분산을 포함하는 제1 점수를 수신하는 단계와,
    c) 상기 제2 팀의 제2 플레이어에 관련된 분포를 나타내는 제2 평균과 제2 분산을 포함하는 제2 점수를 수신하는 단계와,
    d) 상기 제3 팀의 제3 플레이어에 관련된 분포를 나타내는 제3 평균과 제3 분산을 포함하는 제3 점수를 수신하는 단계와,
    e) 상기 제1 팀을 상기 제2 팀과 제3 팀 앞에 순서화하는 단계와,
    f) 적어도 3개의 행과 적어도 2개의 열을 갖는 랭킹 행렬을 생성하는 단계와,
    g) 상기 적어도 3개의 행의 각 랭킹 행렬 원소에서 상기 제1, 제2, 3 플레이어들의 각각의 랭킹을 인코딩하는 단계 - 상기 랭킹 인코딩 단계는 상기 제1 플레이어를 상기 제2 팀 및 상기 제3 팀과 비교하는 단계와, 상기 제2 플레이어를 상기 제1 팀과 비교하는 단계와, 상기 제3 플레이어를 상기 제1 팀과 비교하는 단계를 포함함 - 와,
    h) 상기 랭킹 행렬에 적어도 부분적으로 기초하여 상기 제1 평균과 제1 분산을 갱신하는 단계와,
    i) 갱신한 상기 제1 평균과 제1 분산의 표시를 제공하는 단계
    를 포함하는 방법.
  12. 제11항에 있어서,
    상기 랭킹 행렬에 적어도 부분적으로 기초하여 상기 제2 평균과 제2 분산을 갱신하는 단계를 더 포함하는 방법.
  13. 제12항에 있어서,
    상기 랭킹 행렬에 적어도 부분적으로 기초하여 상기 제3 평균과 제3 분산을 갱신하는 단계를 더 포함하는 방법.
  14. 제11항에 있어서,
    상기 제1 플레이어를 상기 제2 팀과 비교하는 단계는, 상기 제1 플레이어가 플레이한 시간의 일부의 2배를 상기 제1 팀과 제2 팀의 각 플레이어에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 제1 플레이어에 관련된 제1 행의 제1 행렬 원소를 결정하는 단계를 포함하고,
    상기 제1 플레이어를 상기 제3 팀과 비교하는 단계는, 상기 제1 플레이어가 플레이한 시간의 일부의 2배를 상기 제1 팀과 제3 팀의 각 플레이어에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 제1 플레이어에 관련된 상기 제1 행의 제2 행렬 원소를 결정하는 단계를 포함하는 방법.
  15. 제11항에 있어서,
    상기 제2 플레이어를 상기 제1 팀과 비교하는 단계는,
    상기 제2 플레이어가 플레이한 시간의 일부의 음의 2배를 상기 제1 팀과 제2 팀의 각 플레이어에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 제2 플레이어에 관련된 제2 행의 제1 행렬 원소를 결정하는 단계와,
    상기 제2 플레이어에 관련된 상기 제2 행의 제2 행렬 원소를 제로로서 결정하는 단계를 포함하는 방법.
  16. 제11항에 있어서,
    상기 제3 플레이어를 상기 제1 팀과 비교하는 단계는,
    상기 제3 플레이어가 플레이한 시간의 일부의 음의 2배를 상기 제1 팀과 제3 팀의 각 플레이어에 의해 플레이된 시간의 일부의 합으로 나눔으로써, 상기 제3 플레이어에 관련된 제3 행의 제1 행렬 원소를 결정하는 단계와,
    상기 제3 플레이어에 관련된 상기 제3 행의 제2 행렬 원소를 제로로서 결정하는 단계를 포함하는 방법.
  17. 컴퓨터 실행가능 컴포넌트들을 구비하는 하나 이상의 컴퓨터 판독가능 매체로서,
    a) 단일 게임 결과에 기초하여 제1 팀, 제2 팀, 제3 팀의 랭킹을 순서화하는 수단과,
    b) 상기 게임 결과에 기초하는 랭킹 행렬, 상기 게임의 전체 시간보다 작은 적어도 하나의 플레이어가 플레이한 시간의 일부를 고려하기 위한 평균, 및 상기 제1 팀, 상기 제2 팀, 상기 제3 팀의 부분 랭킹을 고려하기 위한 평균을 생성하는 수단과,
    c) 상기 랭킹 행렬에 기초하여 상기 제1 팀의 플레이어의 점수를 갱신하는 수단과,
    d) 상기 점수의 표시를 제공하는 수단
    을 포함하는 컴퓨터 판독가능 매체.
  18. 제17항에 있어서,
    상기 제1 팀은, 상기 게임의 전체 시간의 적어도 일부분 동안 다수의 플레이어를 포함하는 컴퓨터 판독가능 매체.
  19. 제17항에 있어서,
    상기 시간의 일부를 고려하기 위한 평균은, 상기 적어도 하나의 플레이어를 갖는 지고 있는 팀에게 불리함을 주지 않기 위한 평균을 포함하는 컴퓨터 판독가능 매체.
  20. 제17항에 있어서,
    상기 시간의 일부를 고려하기 위한 평균은, 상기 적어도 하나의 플레이어를 갖는 이기고 있는 팀에게 이점을 제공하기 위한 평균을 포함하는 컴퓨터 판독가능 매체.
KR1020087020070A 2006-02-17 2007-02-13 부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체 KR20080094067A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/276,226 2006-02-17
US11/276,226 US7840288B2 (en) 2005-01-24 2006-02-17 Player ranking with partial information

Publications (1)

Publication Number Publication Date
KR20080094067A true KR20080094067A (ko) 2008-10-22

Family

ID=38437705

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087020070A KR20080094067A (ko) 2006-02-17 2007-02-13 부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체

Country Status (4)

Country Link
US (1) US7840288B2 (ko)
KR (1) KR20080094067A (ko)
CN (1) CN101496051A (ko)
WO (1) WO2007098038A1 (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8175726B2 (en) 2005-01-24 2012-05-08 Microsoft Corporation Seeding in a skill scoring framework
JP3887001B1 (ja) * 2005-08-31 2007-02-28 株式会社コナミデジタルエンタテインメント ゲーム成績評価方法及び装置
EP1862955A1 (en) * 2006-02-10 2007-12-05 Microsoft Corporation Determining relative skills of players
US20070225056A1 (en) * 2006-03-20 2007-09-27 Phil Lewis Poker Game System
US7459624B2 (en) * 2006-03-29 2008-12-02 Harmonix Music Systems, Inc. Game controller simulating a musical instrument
US20080214308A1 (en) * 2006-09-06 2008-09-04 Martin Stephen Lyons Gaming system including a player ranking function
US20080086223A1 (en) * 2006-10-10 2008-04-10 Michael Pagliarulo System and method for evaluating a baseball player
US7946960B2 (en) * 2007-02-05 2011-05-24 Smartsports, Inc. System and method for predicting athletic ability
US8678896B2 (en) 2007-06-14 2014-03-25 Harmonix Music Systems, Inc. Systems and methods for asynchronous band interaction in a rhythm action game
US20090075711A1 (en) 2007-06-14 2009-03-19 Eric Brosius Systems and methods for providing a vocal experience for a player of a rhythm action game
US8221221B2 (en) 2008-09-15 2012-07-17 Sony Computer Entertainment America Llc Metrics-based gaming operations
US20090093287A1 (en) * 2007-10-09 2009-04-09 Microsoft Corporation Determining Relative Player Skills and Draw Margins
WO2010006054A1 (en) * 2008-07-08 2010-01-14 Harmonix Music Systems, Inc. Systems and methods for simulating a rock and band experience
US8406906B2 (en) * 2009-05-23 2013-03-26 Dream Big Baseball, Inc. Baseball event outcome prediction method and apparatus
US8858318B2 (en) 2009-11-12 2014-10-14 Igt Gaming systems, gaming devices and methods with volatility control games
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US8550908B2 (en) 2010-03-16 2013-10-08 Harmonix Music Systems, Inc. Simulating musical instruments
US8909796B2 (en) * 2010-07-06 2014-12-09 International Business Machines Corporation Storage procedures for application server session persistence
US9024166B2 (en) 2010-09-09 2015-05-05 Harmonix Music Systems, Inc. Preventing subtractive track separation
US8788074B1 (en) 2012-10-23 2014-07-22 Google Inc. Estimating player skill in games
US9654592B2 (en) 2012-11-08 2017-05-16 Linkedin Corporation Skills endorsements
CN103970768B (zh) * 2013-01-29 2018-07-20 腾讯科技(深圳)有限公司 获取排名的方法及系统
US20140274304A1 (en) * 2013-03-13 2014-09-18 Ignite Game Technologies, Inc. Method and apparatus for evaluation of skill level progression and matching of participants in a multi-media interactive environment
US20150039107A1 (en) * 2013-08-01 2015-02-05 National Wrestling Coaches Accociation System and method for ranking a group of athletes
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US9842577B2 (en) 2015-05-19 2017-12-12 Harmonix Music Systems, Inc. Improvised guitar simulation
US9799314B2 (en) 2015-09-28 2017-10-24 Harmonix Music Systems, Inc. Dynamic improvisational fill feature
US9773486B2 (en) 2015-09-28 2017-09-26 Harmonix Music Systems, Inc. Vocal improvisation
US20180001212A1 (en) * 2016-06-30 2018-01-04 Zynga Inc. Player rating system for multiplayer online computer games
JP6069568B1 (ja) * 2016-06-30 2017-02-01 グリー株式会社 制御プログラム、制御方法及びコンピュータ
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
CN107229701B (zh) * 2017-05-25 2018-07-03 腾讯科技(深圳)有限公司 排名更新方法、装置和计算机设备
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10765948B2 (en) 2017-12-22 2020-09-08 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
US20190344183A1 (en) * 2018-05-14 2019-11-14 Mz Ip Holdings, Llc System and method for auto-tiering alliances in multiplayer online games
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
CN109621428A (zh) * 2018-12-27 2019-04-16 杭州威佩网络科技有限公司 一种信息处理方法及装置
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
EP4079384A1 (en) 2021-04-22 2022-10-26 Morai Sp. z o.o. A method of creating ranking, a system for creating ranking and a ranking

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2366878A (en) * 2000-09-15 2002-03-20 Oxford Forecasting Services Lt Optimisation based on events possible outcomes
US20020115488A1 (en) 2001-02-22 2002-08-22 Nicholas Berry System and method for conducting an online competition
US6640204B2 (en) * 2001-04-06 2003-10-28 Barry E. Feldman Method and system for using cooperative game theory to resolve statistical joint effects
US7416489B2 (en) 2003-05-08 2008-08-26 Smith Iii Jay System and method for scoring, ranking, and awarding cash prizes to interactive game players
KR100539148B1 (ko) 2004-03-25 2005-12-26 주식회사 유웨이중앙교육 성적 정보 제공 방법 및 장치
US8641496B2 (en) * 2004-04-16 2014-02-04 Scientific Games Holdings Limited System and method for conducting a game
US7050868B1 (en) * 2005-01-24 2006-05-23 Microsoft Corporation Bayesian scoring

Also Published As

Publication number Publication date
US20060184260A1 (en) 2006-08-17
US7840288B2 (en) 2010-11-23
WO2007098038A1 (en) 2007-08-30
CN101496051A (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
KR20080094067A (ko) 부분 정보를 갖는 플레이어 랭킹 방법 및 컴퓨터 판독가능 매체
KR101376806B1 (ko) 팀 매칭을 위한 방법 및 컴퓨터 판독 가능 매체
US8175726B2 (en) Seeding in a skill scoring framework
US7376474B2 (en) Bayesian scoring
US20070112706A1 (en) Handicapping in a Bayesian skill scoring framework
Bengs et al. Preference-based online learning with dueling bandits: A survey
Minka et al. Trueskill 2: An improved bayesian skill rating system
Georganas et al. On the persistence of strategic sophistication
KR101312874B1 (ko) 상대적 스킬의 표시를 결정하는 방법, 장치 및 컴퓨터 프로그램
US8374973B2 (en) Reputation system
Conley et al. How does he saw me? a recommendation engine for picking heroes in dota 2
CN101313322A (zh) 队伍匹配
Menke et al. A Bradley–Terry artificial neural network model for individual ratings in group competitions
Suznjevic et al. Application context based algorithm for player skill evaluation in MOBA games
Jensen et al. Hierarchical Bayesian modeling of hitting performance in baseball
Dockhorn et al. A decision heuristic for Monte Carlo tree search doppelkopf agents
Deng et al. A study of prisoner's dilemma game model with incomplete information
Ekstrøm et al. Evaluating one-shot tournament predictions
Bisberg et al. Scope: Selective cross-validation over parameters for elo
Stanescu Rating systems with multiple factors
Chen et al. Challenging artificial intelligence with multiopponent and multimovement prediction for the card game Big2
Hamilton et al. The many routes to the ubiquitous Bradley-Terry model
Long Search, inference and opponent modelling in an expert-caliber Skat player
Saikia et al. Performing under difficulty: The magical pressure index
WO2005086601A2 (en) A method for providing on-line game service enabling to monitor its processing and a system thereof.

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid