CN101496051A - 带有部分信息的玩家排名 - Google Patents

带有部分信息的玩家排名 Download PDF

Info

Publication number
CN101496051A
CN101496051A CNA2007800059357A CN200780005935A CN101496051A CN 101496051 A CN101496051 A CN 101496051A CN A2007800059357 A CNA2007800059357 A CN A2007800059357A CN 200780005935 A CN200780005935 A CN 200780005935A CN 101496051 A CN101496051 A CN 101496051A
Authority
CN
China
Prior art keywords
player
troop
score
rank
average
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CNA2007800059357A
Other languages
English (en)
Inventor
T·K·H·格瑞派尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN101496051A publication Critical patent/CN101496051A/zh
Pending legal-status Critical Current

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/00Systems or methods specially adapted for 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

带有部分信息的玩家排名
背景
在对游戏的玩家进行排名时,典型的排名系统仅仅跟踪玩家的技能。例如,Arpad Elo介绍了一种在诸如国际象棋等许多两支队伍的游戏环境中使用的ELO排名系统。在ELO排名系统中,玩家的表现或技能假定通过缓慢地改变正态分布的随机变量的均值来测量。该均值是从获胜、平局和失败中估算的。该均值然后通过将实际与预期的游戏获胜和失败的次数进行比较来线性地更新。
附图简述
当结合附图考虑时,本发明的上述方面和许多附带优点将变得更容易理解,因为这些可以通过参考以下详细描述来更好地理解,附图中:
图1是用于实现评分系统的示例计算系统;
图2是示例评分系统的数据流图;
图3是两个潜在得分分布的示例曲线图;
图4是两个玩家的得分的联合分布的示例曲线图;
图5是更新两个玩家或队伍的得分的示例方法的流程图;
图6是基于其得分分布来匹配两个玩家或队伍的示例方法的流程图;
图7是更新多支队伍的得分的示例方法的流程图;
图8是匹配多支队伍的得分的示例方法的流程图;
图9是使用期望值最大化来逼近截断的高斯分布的示例方法的流程图;
图10是测量匹配质量的示例的曲线图;
图11是示例排名矩阵A的表格;
图12是带有部分玩的示例排名矩阵A的表格;
图13是带有未知的部分排名的示例排名矩阵A的表格;以及
图14是结合了部分排名的示例排名矩阵A的表格。
详细描述
示例性操作环境
图1和以下讨论旨在提供其中可实现评分系统的合适的计算环境β的简要概括描述。图1的操作环境仅是合适的操作环境的一个示例,并不旨在对该操作环境的使用范围或功能提出任何局限。可适用于此处所描述的评分系统的其它公知的计算系统、环境和/或配置包括但不限于,个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络个人计算机、小型计算机、大型计算机、包括上述系统或设备中的任一个的分布式计算环境等等。
尽管并非所需,但该评分系统将在诸如程序模块等由一个或多个计算机或其它设备执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等等。通常,程序模块的功能在各个环境中可以按需组合或分布。
参考图1,用于实现评分系统的一个示例性系统包括诸如计算设备100等计算设备。在其最基本的配置中,计算设备100通常包括至少一个处理单元102和存储器104。根据计算设备的确切配置和类型,存储器104可以是易失性(如RAM)、非易失性(如ROM、闪存等)或两者的某一组合。这一最基本配置在图1中由虚线106示出。此外,设备100也可以具有另外的特征和/或功能。例如,设备100也可包括另外的存储(例如,可移动和/或不可移动),包括但不限于,磁盘、光盘或磁带。这类另外的存储在图1中由可移动存储108和不可移动存储110示出。计算机存储介质包括以用于储存如计算机可读指令、数据结构、程序模块或其它数据等信息的任一方法或技术实现的易失性和非易失性、可移动和不可移动介质。存储器104、可移动存储108和不可移动存储110都是计算机存储介质的示例。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可以用来储存期望的信息并可由计算设备100访问的任一其它介质。任一这类计算机存储介质可以是设备100的一部分。
设备100也可包含允许设备100与其它计算进行通信的通信连接112。通信连接112是通信介质的一个示例。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括任一信息传送介质。术语“已调制数据信号”指以对信号中的信息进行编码的方式设置或改变其一个或多个特征的信号。作为示例而非局限,通信介质包括有线介质,如有线网络或直接线连接,以及无线介质,如声学、RF、红外和其它无线介质。此处使用的术语计算机可读介质包括存储介质和通信介质两者。
设备100也可具有(多个)输入设备112,如键盘、鼠标、笔、语音输入设备、触摸输入设备、激光测距仪、红外线照相机、视频输入设备和/或任何其它输入设备。也可包括(多个)输出设备114,如显示器、扬声器、打印机和/或任何其它输出设备。
评分系统
游戏环境,尤其是电子在线游戏环境中的玩家可相对于彼此或相对于一预定评分系统来评分。如此处所使用的,玩家的得分并不是该玩家通过在游戏中获取点数或其它奖励而得到的“得分”;而是,得分意味着对玩家技能的排名或其它指示。应当理解,任何游戏环境可适合与以下进一步描述的评分系统一起使用。例如,游戏的玩家可以通过一在线游戏环境与一中央服务器通信、直接连接到游戏控制台、玩实体世界的游戏(例如,国际象棋、纸牌、网球)等等。
评分可用于跟踪玩家在该游戏环境中的进步和/或地位,和/或可用于在未来的游戏中将玩家彼此匹配。例如,具有基本相等的或满足预定和/或用户定义阈值的得分的玩家可被匹配以对每一玩家形成游戏中基本相等的挑战。
每一玩家的评分可以基于在两支或多支队伍中相互比赛的玩家之间的一次或多次游戏的结局,其中每一支队伍具有一个或多个玩家。每一次游戏的结局可更新参与该游戏的每一玩家的得分。游戏的结局可被指示为特定胜者、参与玩家的排名列表以及可能的平局或和局。一数值等级表上的每一玩家的得分可被表示为潜在得分上的分布,该分布可用平均得分μ和得分方差σ2来对每一玩家参数化。方差可指示表示玩家的得分的分布中的置信水平。每一玩家的得分分布可以用高斯分布来建模,并且可以通过贝叶斯推论算法来确定。
图2示出了用于为多个玩家确定得分的示例评分系统。尽管以下示例是相对于在游戏中与另一单个玩家对抗以产生游戏结局的一个玩家来讨论的,但是应当理解,以下示例将讨论包括一个或多个玩家的与另一队伍对抗的队伍,以及多队伍游戏。图2的评分系统200包括一得分更新模块,它接受两个或多个玩家之间的游戏的结局210。应当理解,游戏结局可以通过任何合适的方法来接收。例如,结局可以从诸如在线系统等玩家环境传送到中央处理器,并诸如通过全球通信网络等以任何合适的方式传送到评分系统。在另一示例中,对抗玩家的得分可被传送到主存该得分系统的玩家的游戏系统。以此方式,各个游戏系统可诸如通过全球通信网络等按任何合适的方式来接收对抗玩家的得分。在又一示例中,该评分系统可以是诸如家庭游戏系统等由玩家用于玩游戏的游戏环境的一部分。在再一示例中,如果游戏环境无法将游戏结局传送到得分系统,例如游戏是诸如板式国际象棋等“真实”世界游戏,则游戏结局可以被手动输入到评分系统中。
如图2所示,结局210可以是获胜队伍、失败队伍和/或平局或和局的标识。例如,如果两个玩家(玩家A和玩家B)在游戏中彼此对抗,则游戏结局可以是三种可能结果中的一种,即玩家A获胜且玩家B失败、玩家A失败且玩家B获胜、以及玩家A和B打平。每一玩家具有得分212,该得分可由动态得分模块和得分更新模块两者根据随着时间的推移由于玩家进步(或不幸的退步)而引起的可能改变以及游戏的结果来更新到经更新的得分216。更具体地,在玩家得分212是一分布的情况下,每一玩家的得分的均值和方差可鉴于结局和/或随着时间的推移由于玩家进步(或不幸的退步)引起的可能变化来更新。
得分更新模块202通过一个或多个游戏的结局来学习玩家的得分。可任选动态得分模块204允许一个或多个玩家的得分212因玩家进步(或不幸的退步)而随时间改变。为允许玩家技能随时间改变,玩家得分尽管是从一个或多个游戏的结局确定的,但也可以不是随时间为静态的。在一个示例中,得分均值可以增加,和/或得分方差或得分中的置信度可被加宽。以此方式。每一玩家的得分可被修改成动态玩家得分214以允许玩家的进步。动态玩家得分214然后可用作得分更新模块的输入。以此方式,每一玩家的得分可通过在两个或多个玩家之间玩的一系列游戏来学习。
每一玩家的动态的或经更新的得分可由玩家匹配模块206用于基于诸如玩家指示的偏好和/或得分匹配技术来创建玩家之间的匹配。匹配的玩家用其动态玩家得分214或经更新的得分216然后可彼此对抗并生成游戏结局210。
排行榜(leaderboard)模块218在某些示例中可用于确定两个或多个玩家的排名,并可向一个或多个设备提供排名列表的至少一部分,诸如在显示设备上公布该排行榜排名列表的至少一部分、储存该排行榜排名列表以供一个或多个玩家访问等等。
在某些情况下,为准确地确定n个玩家的排名,可对至少log(n!),或近似地nlog(n)个游戏结局进行评估以生成具有近似正确的排名的完整的排行榜。对数的基数取决于两个玩家之间的独特结局的数量。在此示例中,基数是3,因为有三种可能的结局(玩家A获胜,玩家A失败,以及玩家A和B打平)。所评估的结局的下界可以仅在每一结局提供完整信息时达到,即,游戏结局先验地具有基本相等的概率。由此,在许多游戏中,玩家可被匹配为具有相等强度以增加从每一结局中获得的知识。此外,玩家可以愿意接受来自对等玩家的合理挑战。在某些情况下,在玩家排名和评分的概率性处理中,玩家的匹配可以在玩家排名中结合“不确定性”。
在某些情况下,可以有m个不同等级的玩家排名。如果不同等级数m实质上小于玩家数n,则在某些情况下可将最小(提供信息)游戏数减少到nlog(m)。此外,如果游戏的结局是k支队伍之间的排名,则每一游戏可提供多达log(k!)位,且以此方式,可玩大约至少
Figure A20078000593500101
次提供信息的游戏来提取足够的信息以对玩家排名。
可以理解,尽管动态得分模块204、得分更新模块202、玩家匹配模块206以及排行榜模块此处是作为评分系统200中的单独进程来讨论的,但是可由其它进程或组件中的任一个来提供评分系统200的任何功能或组件。此外,可以理解,其它评分系统配置也可以是适当的。例如,可提供多于一个动态得分模块204、得分更新模块202、得分向量和/或玩家匹配模块,可以有多于一个数据库可用于储存得分、排名和/或游戏结局,评分系统的模块的任何部分可被硬编码到支持评分系统的软件中,和/或评分系统200的任何部分可由作为网络的一部分或网络外部的任何计算系统来提供。
学习得分
两个或多个玩家和/或队伍之间的游戏的结局可以诸如通过玩家和/或队伍对该特定游戏的排名等以任何适当的方式来指示。例如,在两个玩家的游戏中,结局可以是玩家A获胜、玩家A失败、或玩家A和B打平。根据游戏结局,游戏的每一玩家可以根据一数值等级表来排名。例如,一玩家的排名ri可以对胜者具有值1,而对失败者具有值2。在平局中,两个玩家将具有相同的排名。在多队伍示例中,玩家可从1枚举到n。k支队伍之间的游戏可由第j支队伍中的nj个玩家(nj=1用于其中仅有单个玩家且没有多玩家队伍的游戏)的k个索引ij∈{1,...,n}nj来指定,并且每一队伍所得到的排名rj可被表示为r:=(r1,...,rk)T∈{1,...,k}k。再一次,可假定胜者具有排名1。
玩家的技能可由得分来表示。玩家的得分si可以指示该玩家相对于标准等级表或其它玩家的地位。得分可以是单独的,即对作为玩家来行动的一个或多个人(例如,队伍),或对游戏类型、游戏应用等是单独的。在某些情况下,队伍的技能可以是第j支队伍中的玩家的所有技能或得分的函数
Figure A20078000593500111
。该函数可以是任何适当的函数。在队伍仅包括单个玩家的情况下,函数S可以是恒等函数,例如 S ( s i j ) = s i .
每一玩家的得分si可以具有一随机传递性质。更具体地,如果玩家i的得分高于玩家j的,则玩家i更有可能战胜玩家j而非玩家j战胜玩家i。在数学上:
si≥sj→P(玩家i获胜)≥P(玩家j获胜)                    (1)
该随机传递性质意味着玩家i获胜或平局的可能性要大于或等于一半,因为在两个玩家之间的任何游戏中,仅有三种互斥的结局(玩家i获胜、失败或平局)。
为诸如在图2的得分更新模块202中那样对每一玩家估算得分,可使用贝叶斯学习方法。采用贝叶斯方法,一玩家的真实得分si的置信可被指示为得分的概率密度(即,P(s))。在以下示例中,选择表示真实得分的置信的得分的概率密度作为具有均值μ以及对角协方差矩阵(diag(σ2))的高斯型。高斯密度可被示为:
P(s)=N(s;μ,diag(σ2))                          (2)
选择该高斯型允许该分布是具有模式μ的单峰。以此方式,不预期玩家在广泛变化的玩游戏等级之间交替。另外,得分的高斯表示可被有效地储存在存储器中。具体地,假定一对角协方差矩阵实际上导致允许用两个值,即均值μi和方差σi 2来表示对玩家i的每一单独得分。
每一玩家的初始的和经更新的得分可用任何适当的方式来储存。可以理解,玩家的得分可以被表示为均值μi和方差σ2,或均值μ和标准差σ等等。例如,每一玩家的均值和方差可被储存在单独的向量中,例如均值向量μ和方差向量σ2,被储存在数据存储中,等等。如果所有可能玩家的所有均值和方差都以向量储存,例如μ和σ2,则更新公式可仅更新与参与该游戏结局的玩家相关联的那些均值和方差。替换地或另外地,每一玩家的得分可以被储存在一玩家简介数据存储、得分矩阵等中。每一玩家的得分可以用任何适当的方式与一玩家相关联,包括与玩家标识符i的关联,数据存储中的放置或位置可指示相关联的玩家等等。
可以理解,可使用任何适当格式的任何适当的数据存储来储存得分和游戏结局和/或将其传送到评分系统200,包括关系型数据库、面向对象的数据库、非结构化数据库、存储器内数据库或其它数据存储。可使用诸如ACSII文本、二进制文件、通过通信网络发送的数据或任何其它文件系统等平面文件文件系统来构造存储阵列。尽管有上述数据存储的这些可能的实现,但此处所使用的队伍数据存储和存储阵列指的是以计算机可访问的任何方式收集和储存的任何数据。
分布的高斯模型可以允许在评分系统学习每一玩家的得分时有效地更新用于均值μi和方差σi 2的等式。在观察到游戏的结局之后,例如由该游戏的玩家的排名r所指示的,可使用由下式给出的贝叶斯规则来更新得分s(例如,玩家i的得分si以及玩家j的得分sj)中的置信分布或密度P(s):
P ( s | r , { i 1 , . . . , i k } = P ( r | s , { i 1 , . . . , i k } ) P ( s | { i 1 , . . . , i k } ) P ( r | { i 1 , . . . , i k } )
                            (3)
= P ( r | s i 1 , . . . , s i k ) P ( s ) P ( r | { i 1 , . . . , i k } )
其中变量ik是参与游戏的队伍k的每一玩家的标识符或指示符。在两个玩家的示例中,第一支队伍的向量i1是玩家A的指示符,而第二支队伍的向量i2是玩家B的指示符。在以下进一步讨论的多个玩家的示例中,向量i可以对每一队伍多于一个。在以下进一步讨论的多支队伍的示例中,队伍数k可以大于2。在等式(3)的多支队伍的示例中,给定玩家的得分时的排名的概率
Figure A20078000593500133
可以在给定队伍得分S(sik)时修改,该队伍得分是该队伍的各个玩家的得分的函数。
新更新的置信P(s|r,{i1,...ik})也被称为后验置信(例如,经更新的得分214、216),并且可代替先验置信P(s)(例如,玩家得分212)来用于评估对那些对手的下一次游戏。这一方法被称为在线学习,例如,随着时间的推移仅维护置信分布P(s),并且对参与的玩家{i1,...,ik}的每一观察到的游戏结局r被结合到该置信分布中。
在被结合到对玩家得分的确定中之后,可忽略游戏的结局。然而,游戏结局r可能没有被完全装入每一玩家的得分的确定中。更具体地,后验置信P((s|r,{i1,...ik})可能未用紧凑且高效的方式来表示,并且可能没有被确切地计算。在这一情况下,可使用任何适当的逼近技术,包括期望值传播、变化推论、假设密度过滤、拉普拉斯逼近、最大似然等,来确定对真实后验的最佳逼近。假设密度过滤(ADF)以喜爱紧凑表示的某一族-诸如具有对角协方差的高斯分布-来计算对真实后验的最佳逼近。该最佳逼近可被用作新的先验分布。以下示例是参考通过数值积分和/或期望值传播来解的假设密度过滤来讨论的。
高斯分布
每一玩家的得分中的置信可以基于高斯分布。具有n维的高斯密度由下式定义:
N ( x ; μ , Σ ) = ( 2 π ) - n 2 | Σ | - 1 2 exp ( - 1 2 ( x - μ ) T Σ - 1 ( x - μ ) - - - ( 4 )
高斯型N(x)可被定义为用于由N(x;O,I)定义的高斯型的速记表示法。累积高斯分布函数可以由Φ(t;μ,σ2)来指示,其由下式定义:
Φ ( t ; μ , σ 2 ) = P x ≅ N ( x ; μ , σ 2 ) ( x ≤ t ) = ∫ - ∞ t N ( x ; μ , σ 2 ) dx - - - ( 5 )
再一次,对Φ(t)的速记指示了累积分布Φ(t;0,1)。表示法<f(x)>x~P表示随机平局x的期望f,即<f(x)>x-P=∫f(x)dP(x)。给定得分时的结局的后验概率或给定结局时的得分的概率可能不是高斯型。由此,后验可通过找出使得真实后验和高斯逼近之间的Kullback-Leibler发散最小化的最佳高斯型来估算。例如,后验P(θ|x)可以通过N(θ,μx ,∑x )来逼近,其中上标*指示该逼近对于给定的x是最优的。以此方式,逼近的高斯后验的均值和方差可由下式给出:
μx =μ+∑gx                             (6)
x =∑-∑(gxgx T-2Gx)∑                  (7)
其中向量gx和矩阵Gx由下式给出:
g x = &PartialD; log ( Z x ( &mu; ~ , &Sigma; ~ ) ) &PartialD; &mu; ~ | &mu; ~ = &mu; , &Sigma; ~ = &Sigma; - - - ( 8 )
G x = &PartialD; log ( Z x ( &mu; ~ , &Sigma; ~ ) ) &PartialD; &Sigma; ~ | &mu; ~ = &mu; , &Sigma; ~ = &Sigma; - - - ( 9 )
并且函数Zx由下式定义:
Zx(μ,∑)=∫tx(θ)N(θ;μ;∑)dθ=P(x)(10)
校正的截断高斯型
变量x可以根据一校正的双截断高斯型(从此处开始称为校正的高斯型)来分布,并且如果x的密度由下式给出,则由x~R(x;μ,σ2,α,β)来注释:
R ( x ; &mu; , &sigma; 2 , &alpha; , &beta; ) = I x &Element; ( &alpha; , &beta; ) N ( x ; &mu; , &sigma; 2 ) &Phi; ( &beta; ; &mu; , &sigma; 2 ) - &Phi; ( &alpha; ; &mu; , &sigma; 2 ) - - - ( 11 )
= I x &Element; ( &alpha; , &beta; ) N ( x - &mu; &sigma; ) &sigma; ( &Phi; ( &beta; - &mu; &sigma; ) - &Phi; ( &alpha; - &mu; &sigma; ) ) - - - ( 12 )
当取变量β在其接近无限的极限时,校正的高斯型可被表示为R(x;μ,σ2,α)。
该类校正的高斯型包含高斯族作为一限制情况。更具体地,如果当变量α接近无限时取校正的高斯型的极限,则该校正的高斯型是由用作得分的先验分布的N(x;μ,σ2)指示的正态高斯型。
校正的高斯型的均值由下式给出:
< x > x ~ R = &mu; + &sigma;v ( &mu; &sigma; , &alpha; &sigma; , &beta; &sigma; ) - - - ( 13 )
其中函数v(·,α,β)由下式给出:
v ( t , &alpha; , &beta; ) = N ( &alpha; - t ) - N ( &beta; - t ) &Phi; ( &beta; - t ) - &Phi; ( &alpha; - t ) - - - ( 14 )
校正的高斯型的方差由下式给出:
< x 2 > x ~ R - ( < x > x ~ R ) 2 = &sigma; 2 ( 1 - w ( &mu; &sigma; , &alpha; &sigma; , &beta; &sigma; ) ) - - - ( 15 )
其中函数w(·,α,β)由下式给出:
w ( t , &alpha; , &beta; ) = v 2 ( t , &alpha; , &beta; ) + ( &beta; - t ) N ( &beta; - t ) - ( &alpha; - t ) N ( &alpha; - t ) &Phi; ( &beta; - t ) - &Phi; ( &alpha; - t ) - - - ( 16 )
当β接近无限时,函数v(·,α,β)和w(·,α,β)可被指示为v(·,α)和w(·,α),并使用下式来确定:
v ( t , &alpha; ) = lim &beta; &RightArrow; &infin; v ( t , &alpha; , &beta; ) = N ( t - &alpha; ) &Phi; ( t - &alpha; ) - - - ( 17 )
w ( t , &alpha; ) = lim &beta; &RightArrow; &infin; w ( t , &alpha; , &beta; ) = v ( t , &alpha; ) &CenterDot; ( v ( t , &alpha; ) - ( t - &alpha; ) ) - - - ( 18 )
这些函数可使用数值积分技术或任何其它合适的技术来确定。函数w(·,α)可以是对指示函数It≤α的平滑逼近,并且可以总是由[0,1]来界定。相反,函数v(·,α)对于t<α可大致如α-t那样增长,并且对于t>α可迅速接近0。
辅助函数
Figure A20078000593500157
Figure A20078000593500158
可使用下式来确定:
v ~ ( t , &epsiv; ) = v ( t , - &epsiv; , &epsiv; ) - - - ( 19 )
w ~ ( t , &epsiv; ) = w ( t , - &epsiv; , &epsiv; ) - - - ( 20 )
随时间学习得分
用于得分系统的贝叶斯学习过程基于每一玩家所玩的每一比赛的结局来学习每一玩家的得分。贝叶斯学习可以假设每一玩家的未知的、真实的得分随时间是静态的,例如,真实的玩家得分不会改变。由此,当玩家玩更多游戏时,图2的经更新的玩家得分216可以反映该真实得分中增长的确定性。以此方式,所玩的每一新游戏对于经更新的玩家得分216中的确定性几乎没有影响或效果。
然而,玩家可能会随着时间的推移而相对于其它玩家和/或标准等级表有进步。以此方式,每一玩家的真实得分随时间并不是真正静态的。由此,该评分系统的学习过程可以不仅学习每一玩家的真实得分,而且还可允许每一玩家的真实得分由于该玩家的改变的能力而随时间改变。为考虑到随时间改变的玩家能力,可随时间修改得分的后验置信P(s|r,{i1,...ik}。例如,一段时间(例如,Δt)没有玩游戏可允许玩家的技能退步或变差。由此,玩家的得分的后验置信可以由动态得分模块基于任何合适的因素,诸如该玩家玩游戏的历史(例如,自最后一次玩游戏以来的时间)来修改,以确定如图2所示的动态得分216。更具体地,用作新先验分布的后验置信可被表示为在给定具有索引i的玩家在Δt的时间内没有玩游戏的情况下该玩家的得分的后验置信P(si|Δt)。由此,经修改的后验分布可被表示为:
P(si|Δt)=∫P(sii+Δμ)P(Δμ|Δt)d(Δμ)
=∫N(si;μi+Δμ,σi 2)N(Δμ;0,τ2(Δt))d(Δμ)
=N(si;μi,σi 22(Δt))                          (21)
其中第一项P(si|μ)是具有索引i的玩家的得分的置信分布,而第二项P(Δμ|Δt)量化了自从最后一次更新以来长度为Δt的时间内未知真实得分的改变的置信。函数τ(·)是真实得分的变量,其是未玩游戏的时间(例如,Δt)的函数。函数τ(Δt)可以对于小时间Δt较小,以反映玩家的表现不会在较小的一段未玩游戏时间内改变。该函数可随着Δt的增加而增加(例如,手眼协调可能会退步,等等)。在以下的示例中,如果自最后一次更新以来经过的时间大于0(这指示至少玩了一次游戏),则动态得分函数τ可返回一恒定值τ0。如果经过的时间为0,则函数τ可返回0。对于动态得分函数τ的常值函数τ0可被表示为:
τ2(Δt)=IΔt>0τ0 2                               (22)
其中I是指示函数。
对比赛玩家的推论
特定游戏结局的置信可用关于每一玩家的得分所获得的全部知识来量化,即P(s)。更具体地,可确定给定所选玩家的得分时一潜在游戏的结局。对所选一组玩家的游戏结局的置信可被表示为:
P ( r | { i 1 , . . . i k } ) = &Integral; P ( r | s , { i 1 , . . . i k } ) P ( s | { i 1 , . . . i k } ) ds
= &Integral; P ( r | S ( s i 1 ) , . . . , S ( s i k ) } ) P ( s ) ds - - - ( 23 )
其中
Figure A20078000593500163
是用于两个玩家的游戏的sA和sB。这一将来结局的置信可用于对将来的游戏匹配玩家,如以下进一步讨论的。
两个玩家匹配的示例
当在游戏中两个玩家(玩家A和玩家B)彼此对抗时,游戏的结局可以用一个变量y来总结,其中如果玩家A获胜则y为1,如果玩家打平则y为0,且如果玩家A失败则y为-1。以此方式,变量y可用于唯一地表示玩家的排名r。鉴于以上等式(3),得分更新算法可作为给定得分s1和s2时游戏结局y的模型来得出,如下:
P(r|sA,sB)=P(y(r)|sA,sB)                           (24)
其中y(r)=sign(rB-rA),其中如果玩家A获胜,则rA为1而rB为2,如果玩家B获胜,则rA为2而rB为1,而如果玩家A和B打平,则rA和rB都为1。
游戏的结局(例如,变量y)可以基于所有参与的玩家(在两个玩家的示例中为玩家A和B)的表现。玩家的表现可由一潜在得分xi来表示,该得分可遵循其均值等于具有索引i的玩家的得分si、且有固定的潜在得分方差β2的高斯分布。更具体地,潜在得分xi可以被表示为N(xi;si,β2)。潜在得分的示例图形表示在图3中分别被示为高斯曲线302和306。得分sA和sB分别被示为线304和308。
玩家的潜在得分可进行比较以确定游戏的结局。然而,如果队伍之间的差别较小或近似为0,则游戏的结局可以是平局。以此方式,可引入一潜在平局余量变量ε作为示出两个竞争玩家之间的基本相等的这一小余量的固定数字。由此,游戏的结局可被表示为:
如果:xA>xB+ε,则玩家A是胜者                    (25)
如果:xB>xA+ε,则玩家B是胜者                    (26)
如果:|xA-xB|≤ε,则玩家A和B打平                 (27)
一种可能的潜在平局余量在图3中被示为0附近宽度为2ε的范围310。在某些情况下,该潜在平局余量可被设为近似为0,诸如在其中和局是不切实际的游戏中,诸如赛车游戏。在其它情况下,该潜在平局余量可取决于诸如游戏类型(例如,捕捉标志)、队伍大小等因素而被设置得较大或较小。
由于两个潜在得分曲线是独立的(由于每一玩家的潜在得分的独立性),因此给定个别玩家A和B的得分时的结局y的概率可被表示为:
Figure A20078000593500181
其中Δ是潜在得分xA和xB之差(例如,Δ=xA-xB)。
对玩家A和玩家B的潜在得分的联合分布在图4中被示为等高线,该等高线形成了图中的“隆起”402,其中第一条轴410指示玩家A的潜在得分,而第二条轴412指示玩家B的潜在得分。“隆起”402,即联合分布的放置可通过检查“隆起”402下的区域的概率面积量(probability mass of area)来指示玩家A或B获胜的可能性。例如,线416下的概率面积量406可指示玩家A更有可能获胜,而线414和416所限定的概率面积量408可指示玩家有可能打平。以此方式,联合分布隆起402下的概率面积量404是玩家B获胜的概率,联合分布隆起402下的概率面积量406是玩家A获胜的概率,而联合分布隆起402下的概率面积量408是玩家打平的概率。如在图4的示例联合分布402中所示的,玩家B更有可能获胜。
两个玩家的得分更新
如上所述,每一玩家i(例如玩家A和B)的得分(例如,均值μi和方差σi 2)可在知道了这两个玩家(例如,玩家A和B)之间的游戏的结局的情况下更新。更具体地,使用ADF逼近,对参与玩家的得分的更新可遵循图5所示的方法500。可初始化(502)静态变量。例如,可初始化潜在平局区ε、动态时间更新常数τ0、和/或潜在得分方差β。用于这些参数的示例初始值可以包括:β在约100到约400的范围内,且在一个示例中可以约等于250,τ0在约1到约10的范围内,且在一个示例中可以约等于10,而ε可取决于诸如和局概率等许多因素,且在一个示例中可以约等于50。可对每一玩家i接收(504)得分si(例如,由均值μi和方差σi 2来表示),在两个玩家的示例中得分包括玩家A的均值μA和方差σA 2,以及玩家B的均值μB和方差σB 2
在玩家玩游戏之前,由均值和方差表示的玩家的得分可被初始化为任何适当的值。在一个简单的情况下,所有玩家的均值可被初始化为同一值,例如μi=1200。或者,均值可被初始化为所建立的玩家的平均值的百分比(诸如20-50%,并且在某些情况下约为33%)。方差可被初始化以指示关于所初始化的均值的不确定性,例如,σ2=4002。或者,玩家的初始均值和/或方差可完全或部分地基于另一游戏环境中该玩家的得分。
如上所述,可更新(505)置信以用任何适当的方式来反映动态得分。例如,置信可基于时间来更新,诸如通过基于函数τ和自从玩家上次玩游戏以来的时间来更新每一参与玩家的得分的方差。动态时间更新可以在图2的评分系统的动态得分模块204中完成。如上所述,动态得分函数τ的输出可以对所有大于0的时间是常数τ0。以此方式,当玩家首次玩游戏时τ0可以是0,并且之后可以是常数τ0。每一玩家的得分的方差可通过下式来更新:
&sigma; i 2 &LeftArrow; &sigma; i 2 + &tau; 0 2 - - - ( 31 )
为基于游戏结局来更新得分,可计算(506)参数。例如,参数c可被计算为方差之和,使得参数c为:
c=(nA+nB2A 2B 2                  (32)
=2β2A 2B 2                         (33)
其中nA是队伍A中的玩家数(在两个玩家的示例中为1),而nB是队伍B中的玩家数(在两个玩家的示例中为1)。
参数h可基于每一玩家的得分的均值和在两个玩家的示例中所计算的参数c来计算,参数h可被计算为:
h A = &mu; A - &mu; B C - - - ( 34 )
h B = &mu; B - &mu; A C - - - ( 35 )
这表明hA=-hB。参数ε’可基于玩家数、潜在平局区ε和参数c计算(506)如下:
&epsiv; &prime; = &epsiv; ( n A + n B ) 2 C - - - ( 36 )
并且对于两个玩家的示例,这导致:
&Element; , = &epsiv; C - - - ( 37 )
可以接收(508)玩家A和B之间的游戏的结局。例如,游戏结局可以被表示为变量y,如果玩家B获胜则y为-1,如果玩家打平则y为0,而如果玩家A获胜则y为+1。为改变参与的玩家的得分中的置信,诸如在图2的得分更新模块中,可更新(510)每一得分的均值和方差。更具体地,如果玩家A获胜(例如,y=1),则获胜玩家A的均值μA可被更新如下:
&mu; A &LeftArrow; &mu; A + &sigma; A 2 C v ( h A , &epsiv; &prime; ) - - - ( 38 )
失败玩家B的均值μB可被更新如下:
&mu; B &LeftArrow; &mu; B - &sigma; B 2 C v ( h A , &epsiv; &prime; ) - - - ( 39 )
每一玩家i(在两个玩家的示例中为A和B)的方差σi 2可在玩家A获胜时被更新为:
&sigma; i 2 &LeftArrow; &sigma; i 2 ( 1 - &sigma; i 2 C w ( h A , &epsiv; &prime; ) ) - - - ( 40 )
然而,如果玩家B获胜(例如,y=-1),则失败玩家A的均值μA可被更新为:
&mu; A &LeftArrow; &mu; A - &sigma; A 2 C v ( h B , &epsiv; &prime; ) - - - ( 41 )
获胜玩家B的均值μB可被更新为:
&mu; B &LeftArrow; &mu; B + &sigma; B 2 C v ( h B , &epsiv; &prime; ) - - - ( 42 )
每一玩家i(A和B)的方差σi 2可在玩家B获胜时被更新为:
&sigma; i 2 &LeftArrow; &sigma; i 2 ( 1 - &sigma; i 2 C w ( h B , &epsiv; &prime; ) ) - - - ( 43 )
如果玩家A和B打平,则玩家A的均值μA可被更新为:
&mu; A &LeftArrow; &mu; A + &sigma; A 2 C v ~ ( h A , &epsiv; &prime; ) - - - ( 44 )
玩家B的均值μB可被更新为:
&mu; B &LeftArrow; &mu; B + &sigma; B 2 C v ~ ( h B , &epsiv; &prime; ) - - - ( 45 )
玩家A的方差σA 2可在玩家打平时被更新为:
&sigma; A 2 &LeftArrow; &sigma; A 2 ( 1 - &sigma; A 2 C w ~ ( h A , &epsiv; &prime; ) ) - - - ( 46 )
玩家B的方差σB 2可在玩家打平时被更新为:
&sigma; B 2 &LeftArrow; &sigma; B 2 ( 1 - &sigma; B 2 C w ~ ( h B , &epsiv; &prime; ) ) - - - ( 47 )
在以上等式(38-47)中,函数v()、w()、
Figure A200780005935002011
可从高斯型的数值逼近来确定。具体地,函数v()、w()、
Figure A20078000593500211
Figure A20078000593500212
可使用以上等式(17-20)使用诸如在Press等人的Numerical Recipes in C(C中的数值方法):the Art of ScientificComputing(科学计算艺术)(第2版),剑桥,剑桥大学出版社,ISBN-0-521-43108-5中所描述的数值方法以及任何其它合适的数值或解析方法来求值,该参考文献通过引用结合于此。
以上更新玩家的得分的等式在许多方面都不同于ELO系统。例如,ELO系统假设每一玩家的方差是相等的,例如公知的。在另一示例中,ELO系统不使用依赖于玩家的不确定性比率的变量K因子。以此方式,与具有某一得分的玩家一起玩允许不确定玩家以比在与另一不确定玩家一起玩的情况下更大的步长向上或向下移动。
来自图2的得分更新模块202的每一玩家的得分(例如,图2的经更新的得分216)的均值和方差的经更新的值可以替换均值和方差(得分212)的旧值。每一玩家的得分的新更新的均值和方差结合了从玩家A和B之间的游戏的结局所获得的附加知识。
两个玩家匹配
经更新的玩家得分的置信可用于预测两个潜在对手之间的游戏的结局。例如,图2所示的玩家匹配模块206可使用玩家的经更新的和/或维持的得分来预测任何潜在玩家之间的比赛的结局,并且匹配满足诸如近似相等的玩家得分均值、玩家指示的偏好、近似相等的获胜和/或平局概率等匹配准则的那些玩家。
为预测游戏的结局,可计算给定每一潜在玩家的得分的均值和标准差时一特定结局y的概率,例如P(y|sA,sB)。因此,结局的概率P(y)可以从给定玩家得分时的结局概率(其中忽略到边缘得分)中确定。
图6示出了预测游戏结局的示例方法600,该方法将参考两个潜在玩家(玩家A和玩家B)之间的游戏来描述。可初始化(602)静态变量。例如,可初始化潜在平局区ε、动态时间更新常数τ0、和/或潜在得分方差β。可对参与预测的游戏的每一玩家i接收(604)得分si(例如,由均值μi和方差σi 2来表示)。在两个玩家的示例中,玩家得分包括玩家A的均值μA和方差σA 2,以及玩家B的均值μB和方差σB 2
可确定(606)参数。可以适当地使用以上等式(32)或(33)来计算(606)参数c为方差之和。可修改用于参数c的等式(32)和(33),以包括玩家得分的动态得分方面,例如,自从最后一次更新得分以来已经过了某些时间Δt。经修改的参数c可被计算为:
c=(nA+nB2A 2B 2+(nA+nB0                  (48)
其中nA是队伍A中的玩家数(在本示例中是1个玩家),而nB是队伍B中的玩家数(在本示例中是1个玩家)。可适当地使用上述等式(36)或(37)来计算参数ε’。
可确定(608)潜在玩家之间的游戏的每一可能结局的概率。玩家A获胜的概率可以使用下式来计算:
P ( y = 1 ) = &Phi; ( &mu; A - &mu; B - &epsiv; &prime; c ) - - - ( 49 )
玩家B获胜的概率可以使用下式来计算:
P ( y = - 1 ) = &Phi; ( &mu; B - &mu; A - &epsiv; &prime; c ) - - - ( 50 )
如上所述,函数Φ指示一累积高斯分布函数,其自变量为圆括号中的值,且均值为0,标准差为1。玩家A和B打平的概率可使用下式来计算:
P(y=0)=1-P(y=1)-P(y=-1)                        (51)
可使用所确定的结局的概率来对一游戏匹配潜在玩家,诸如将任一队伍获胜或打平的概率与预定的或用户提供的阈值或其它偏好进行比较。对应于任一队伍获胜或打平的概率的预定阈值可以是诸如约25%的任何适当的值。例如,玩家可被匹配以提供所有可能结局上基本相等的分布,其均值得分可以大致相等(例如,在潜在平局余量内)等等。同样适用于两个玩家的示例的其它匹配技术将在以下参考多队伍示例来讨论。
两支队伍
上述两个玩家的技术可被扩展,使得“玩家A”包括队伍A中的一个或多个玩家,而“玩家B”包括队伍B中的一个或多个玩家。例如,队伍A中的玩家可以具有由索引iA指示的任意数量的玩家nA,而队伍B可具有由索引iB指示的任意数量的玩家nB。队伍可被定义为其在游戏中的表现实现对该队伍上的所有玩家的单个结局的一个或多个玩家。每一队伍的每一玩家可具有由均值μi和方差σi 2表示的单独得分si
两支队伍的得分更新
由于仅有两支队伍,因此如以上两个玩家的示例一样,对一比赛有三种可能的结果,即队伍A获胜,队伍B获胜,以及队伍A和队伍B打平。与以上两个玩家的示例一样,该游戏结局可以由单个变量y来表示,在一个示例中,如果队伍A获胜,则y的值为1,如果两支队伍打平,则y的为0,而如果队伍B赢得游戏,则y的值为-1。鉴于以上等式(1),可基于给定每一队伍的技能或得分siA和siB时的游戏结局y的模型来对游戏的玩家更新得分。这可被表示为:
P(r|siA,siB)=P(y(r)|siA,siB)                         (51.1)
其中基于排名的游戏结局y(r)可被定义为:
y(r)=sign(rB-rA)                                       (51.2)
与以上两个玩家匹配的潜在得分一样,具有索引为i的玩家的队伍的队伍潜在得分t(i)可以是该队伍的各个玩家的潜在得分xj的线性函数。例如,队伍潜在得分t(i)可以等于b(i)Tx,其中b(i)是具有n个元素的向量,其中n是玩家数。由此,游戏的结局可被表示为:
如果:t(iA)>t(iB)+ε,则队伍A获胜                  (52)
如果:t(iB)>t(iA)+ε,则队伍B获胜                  (53)
如果:|t(iA)-t(iB)≤ε,则队伍A和B打平              (54)
其中,ε是上述潜在平局余量。对于图3的示例潜在得分,队伍A和B的潜在得分可分别被表示为线304和308。
给定队伍的得分
Figure A20078000593500231
时的结局的概率在以上等式(28-30)中示出。然而,在队伍示例中,以上等式(28-30)的Δ项是队伍的潜在得分t(iA)和t(iB)之差。更具体地,Δ项可被确定为:
Δ=t(iA)-t(iB)=(b(iA)-b(iB))Tx=aTx               (55)
其中x是所有玩家的潜在得分的向量,并且该向量包括线性加权系数。
向量a的线性加权系数可用作出某一假设的确切形式来导出。例如,一种假设可包括如果队伍中的玩家具有正的潜在得分,则潜在队伍得分将增加;类似地,如果队伍中的玩家具有负的潜在得分,则潜在队伍得分将减少。这意味着向量b(i)在i的所有分量中都是正的。个人的负的潜在得分使得队伍潜在得分减少以应付对游戏结局有负面影响的玩家。例如,玩家可以是所谓的“队伍杀手”。更具体地,较弱的玩家可能被证实是一个包袱从而可能增加其它队伍的潜在队伍得分而非自己通过得分来对其队伍的得分作出贡献。在每一个人得分的先验概率中可考虑到大多数玩家都作出正面的贡献的这一事实。另一示例假设可以是没有参与一队伍(没有进行比赛和/或没有在参与队伍中)的玩家应当不会影响队伍得分。因此,向量b(i)中未在向量i中的所有分量应当为0(因为所储存或生成的向量x可包含所有玩家的潜在得分,而不管其是否在玩游戏)。在某些情况下,仅游戏中的参与玩家可被包括在向量x中,并且以此方式,向量b(i)的所有分量(在i中)都可以是非负且正的。另一假设可包括如果两个玩家具有相同的潜在得分,则在一给定队伍中包括他们两个可将队伍潜在得分改变相同的量。这意味着向量b(i)在i的所有分量中是正的常数。另一假设可以是如果每一队伍的大小加倍,并且附加的玩家是原始玩家的重复(例如,新玩家具有相同的得分si,),则对任一队伍获胜或和局的概率不受影响。这意味着向量b(i)在i的所有分量中都等于平均队伍大小的倒数,使得:
b ( i ) = 2 n A + n B &Sigma; j &Element; i e j - - - ( 56 )
其中向量e是除了分量j(为1)之外的所有分量都是带有0的单位n向量,并且项nA和nB分别是队伍A和B中的玩家数。有了以上四种假设,唯一地确定加权系数a。
如果队伍是相等大小的,例如,nA+nB,则潜在玩家得分的均值,以及因而的潜在玩家得分x可以被平移一任意量而不会对分布Δ有任何改变。由此,潜在玩家得分实际上形成一间隔标度。然而,在某些情况下,队伍可以具有不均匀的标号,例如nA和nB不相等。在这一情况下,潜在玩家得分在用潜在得分为2x的一个玩家替换各自的潜在得分为x的两个玩家不会改变潜在队伍得分的这一意义上是存活在比例标度上的。以此方式,平均得分为s的玩家比平均得分为s/2的玩家要好两倍。由此,平均得分指示了玩家的平均表现。另一方面,潜在得分指示了一特定游戏中的实际表现,并且存在于间隔标度上,因为为了确定获胜、和局和失败的概率,仅使用队伍潜在得分的差,例如t(iA)-t(iB)。
由队伍中参与游戏的每一玩家i的均值μi和方差σi 2表示的个人得分si可以基于两支队伍之间的游戏的结局来更新。用于两个玩家的示例的图5的更新等式和方法可对两支队伍的示例进行修改。参考图5的方法500,可如上所述初始化(502)潜在平局区ε、动态时间更新常数τ0、和潜在得分方差β。类似地,可对两支队伍中的每一支中的每一玩家i接收(504)得分si(例如,由均值μi和方差σi 2来表示),在两支队伍的示例中,该得分包括用于队伍A中的玩家i的均值
Figure A20078000593500251
和方差
Figure A20078000593500252
,以及用于队伍B中的玩家i的均值
Figure A20078000593500253
和方差
Figure A20078000593500254
由于对置信的动态更新(例如,基于自从最后一次玩游戏以来的时间)仅依赖于该玩家的方差(以及可能的自从该玩家最后一次玩游戏以来的时间),因此每一队伍中的每一玩家的方差可诸如通过使用以上等式(31)等用任何适当的方式来更新(505)。如上所述,基于时间的更新可通过图2的动态得分模块204来实现。
参考图5,可类似于以上所描述的计算(506)参数,其中进行了某些修改以结合得分和结局的队伍方面。可如上所述计算(506)参数c为方差之和。然而,在其中每一队伍可具有一个或多个玩家的两支队伍的示例中,参与游戏的所有玩家的方差必须相加。由此,对于两支队伍的示例,以上等式(32)可被修改为:
c = ( n A + n B ) &beta; 2 + &Sigma; i = 1 n A &sigma; A i 2 + &Sigma; i = 1 n B &sigma; B i 2 - - - ( 57 )
参数hA和hB可以如上在等式(34-35)中所述地基于每一队伍的得分μA和μB的均值以及所计算的参数c来计算(506)。队伍A和B各自的队伍平均得分μA和μB可以被计算为对每一队伍的玩家的均值之和,如:
&mu; A = &Sigma; i = 1 n A &mu; A i - - - ( 58 )
&mu; B = &Sigma; i = 1 n B &mu; B i - - - ( 59 )
参数可ε’被计算(506)为:
&epsiv; &prime; = &epsiv; ( n A + n B ) 2 c - - - ( 59.1 )
其中nA是队伍A中的玩家数,而nB是队伍B中的玩家数。
可接收(508)队伍A和B之间的游戏的结局。例如,该游戏结局可以被表示为变量y,如果队伍B获胜则y等于-1,如果队伍打平则y等于0,而如果队伍A获胜则y等于+1。为改变每一队伍的每一参与的玩家的先前得分的概率的置信,可通过修改上述等式(38-46)来更新(510)每一参与玩家的均值和方差。如果队伍A赢得游戏,则可将个人均值更新为:
&mu; A i &LeftArrow; &mu; A i + &sigma; A i 2 c v ( h A , &epsiv; &prime; ) - - - ( 60 )
&mu; B i &LeftArrow; &mu; B i - &sigma; B i 2 c v ( h A , &epsiv; &prime; ) - - - ( 61 )
(任一队伍A或B的)每一玩家i的方差σi 2可在队伍A获胜时如上等式(40)中所示地更新。
然而,如果队伍B获胜(例如,y=-1),则每一参与玩家的均值μAi可被更新为:
&mu; A i &LeftArrow; &mu; A i - &sigma; A i 2 c v ( h B , &epsiv; &prime; ) - - - ( 62 )
&mu; B i &LeftArrow; &mu; B i + &sigma; B i 2 c v ( h B , &epsiv; &prime; ) - - - ( 63 )
(任一队伍A或B)的每一玩家i的方差σi 2可在队伍B获胜时如上在等式(43)中所示地更新。
如果队伍A和B打平,则队伍A和B的每一玩家各自的均值
Figure A20078000593500265
Figure A20078000593500266
可被更新为:
&mu; A i &LeftArrow; &mu; A i + &sigma; A i 2 c v ~ ( h A , &epsiv; &prime; ) - - - ( 64 )
&mu; B i &LeftArrow; &mu; B i + &sigma; B i 2 c v ~ ( h B , &epsiv; &prime; ) - - - ( 65 )
队伍A中的每一玩家的方差
Figure A20078000593500269
可在队伍打平时被更新为:
&sigma; A i 2 &LeftArrow; &sigma; A i 2 ( 1 - &sigma; A i 2 c w ~ ( h A , &epsiv; &prime; ) ) - - - ( 66 )
队伍B中的每一玩家的方差
Figure A200780005935002611
可在队伍打平时被更新为:
&sigma; B i 2 &LeftArrow; &sigma; B i 2 ( 1 - &sigma; B i 2 c w ~ ( h B , &epsiv; &prime; ) ) - - - ( 67 )
如同等式(38-43)一样,函数v()、w()、
Figure A200780005935002613
可使用以上等式(17-20)使用数值方法来求值。以此方式,每一玩家的得分的均值和方差的经更新的值可替换均值和方差的旧值以结合从队伍A和B之间的游戏的结局中所获得的附加知识。
两支队伍匹配
与以上两支队伍得分更新一样,可修改图6的匹配方法以适应各自有一个或多个玩家的两支队伍。与上述一样,可初始化(602)静态变量。可对每一玩家接收(604)得分si(诸如每一相应队伍A和B的每一玩家i的均值
Figure A20078000593500271
Figure A20078000593500272
以及方差
Figure A20078000593500274
)。另外,进行匹配准则可考虑队伍中的得分的变化性。例如,可能期望具有带均一得分的玩家的队伍,因为在某些情况下,他们能更好地协作。
可如上所述确定(606)参数。例如,可使用等式(57)来计算参数c,可使用等式(58)和(59)来计算每一队伍的均值μA和μB,并且可使用等式(36)来计算参数ε’。
可确定(608)两支潜在队伍之间的游戏的每一可能的结局的概率。队伍A获胜的概率可以使用以上等式(49)来计算。队伍B获胜的概率可以使用以上等式(50)来计算。和局的概率可以使用以上等式(51)来计算。所确定的结局的概率可用于对一游戏匹配潜在队伍,诸如将任一队伍获胜和/或和局的概率、队伍和/或玩家排名、和/或队伍和/或玩家得分与预定或用户提供的阈值进行比较。
多支队伍
以上技术可被进一步扩展以考虑包括多支队伍的游戏,例如,两支或多支对抗的队伍,其可以由参数j来指示。索引j指示多支对抗队伍中的队伍,并且范围是从1到k支队伍,其中k指示了对抗队伍的总数。每一队伍可具有一个或多个玩家i,并且第j支队伍可具有由参数nj指示的数目的玩家,且玩家由ij来指示。
知道了所有k支队伍的排名允许重新排列队伍,使得每一队伍的排名rj可按排名次序来放置。例如,每一队伍的排名可按排名递减次序来放置,使得r(1)≤r(2)≤...≤r(k),其中索引算子()是从1到k的索引j的排列。由于在某些情况下,假设排名1指示游戏的胜者,因此该排名递减次序可表示一数值上递增的次序。以此方式,游戏的结局r可以按照队伍索引的排列以及向量y∈{0,+1}k-1来表示。例如,如果队伍(j)战胜队伍(j+1),则(yj=+1),而如果队伍team(j)与队伍(j+1)战平,则(yj=0)。以此方式,向量y的元素可以被表示为yj=sign(r(j+1)-r(j))。
与以上对于两支队伍的示例一样,游戏的结局可以基于所有参与玩家的表现或潜在得分。潜在得分xi可遵循均值等于索引为i的玩家的得分si,且具有固定潜在得分方差β2的高斯分布。以此方式,潜在得分xi可由N(xi;si,β2)来表示。具有其索引在向量i中的玩家的队伍的潜在得分t(i)可以是各个玩家的潜在得分x的线性函数。以此方式,该潜在得分可被确定为t(i)=b(i)Tx,其中b(i)如上对于两支队伍的示例所描述的那样。以此方式,给定一示例潜在得分x,排名是使得具有最高潜在队伍得分t(i)的队伍排名第一,具有次高队伍得分的队伍排名第二,而具有最低潜在队伍得分的队伍排名最低。此外,如果两支队伍的潜在队伍得分相差不多于潜在平局余量ε,则两支队伍战平。以此方式,排名的队伍可根据其潜在队伍得分的值来重新排序。在基于潜在队伍得分对队伍重新排序之后,可考虑队伍之间的成对差,以确定具有较高潜在队伍得分的队伍是否获胜,或者结局是否为和局(例如,得分差小于ε)。
为基于潜在得分来确定队伍的重新排序,可定义辅助变量的k-1维向量Δ,其中:
Δj:=t(i(j))-t(i(j+1))=aj Tx.(68)
以此方式,向量Δ可被定义为:
&Delta; = A T x = a 1 T . . . a k - 1 T x - - - ( 69 )
由于潜在得分x遵循高斯分布(例如,x~N(x;s,β2I),因此向量Δ受高斯分布的支配(例如,Δ~N(Δ;ATs,β2ATA)。以此方式,排名r的概率(基于排列算子()和k-1维向量y通过矩阵A来编码)可由Δ上的联合概率来表达为:
P ( y | s i 1 , . . . , s i k ) = &Pi; j = 1 k - 1 ( P ( &Delta; j > &epsiv; ) ) y j ( P ( | &Delta; j | &le; &epsiv; ) ) 1 - y j - - - ( 70 )
由均值μ和方差来σ2参数化的每一玩家的得分的置信(P(si))可在给定形式为排名r的游戏结局时更新。置信可使用假设的密度过滤用标准数值积分方法(例如,Gentz等人的Numerical Computation of Multivariate Normal Probalities(多元正态概率的数值计算),Journal of Computational and Graphical Statistics(计算和图形统计学期刊)1,1992年,第141-149页)、期望值传播技术(见下文)以及任何其它合适的技术来确定。在有两支队伍(例如,k=2)的特殊情况中,更新等式精简为以上在两支队伍的示例中所述的算法。类似地,如果两支队伍中的每一支都仅有一个玩家,多队伍等式精简为以上在两个玩家示例中所述的算法。
在此示例中,可用用于高斯积分的数值积分来确定多队伍游戏的玩家的得分的更新算法。类似地,基于自从玩家最后一次玩游戏以来的时间的得分的动态更新对未玩游戏时间大于0可以是常数τ0,而对游戏之间的时间延迟为0或在玩家首次玩游戏时可以是0。
图7示出了更新玩多队伍游戏的玩家的得分的示例方法700。如上所述,可初始化(702)潜在平局区ε、动态时间更新常数τ0、和潜在得分方差β。另外,可用任何适当的一组数字,诸如0来初始化(702)具有k-1列和n行(即,所有队伍中的玩家的总数)的矩阵A。可对每一队伍中的每一玩家i接收(704)得分si(例如,由均值μi和方差σi 2来表示),在多队伍示例中,该得分包括每一队伍j中的每一玩家i的均值
Figure A20078000593500291
和方差
Figure A20078000593500292
由于对置信的动态更新可以基于时间,因此该动态时间可依赖于该玩家的方差(以及可能自从该玩家最后一次玩游戏以来的时间)。由此,可使用以上等式(31)来更新(706)每一玩家的方差。以此方式,对每一队伍中的每一玩家,可在评估游戏结局之前确定对方差的动态更新。更具体地,对方差的更新基于自从该玩家最后一次玩游戏以来的时间,并且该玩家的技能可能在评估当前游戏结局之前在该段时间内改变。或者,动态更新可以在任何适当的时间完成,诸如在游戏结局之后并且在得分更新之前、在得分更新之后基于游戏结局、等等。
得分可通过根据参与游戏的玩家的排名r计算(708)排列()来进行排名排序。例如,排名可按排名递减的次序来放置。
排名r可通过矩阵A来编码(710)。更具体地,对于队伍(j)和(j+1)的n(j)和n(j+1)个玩家的每一种组合,矩阵元素Arow,j可以使用以下等式(71)和(72)来确定。具体地,对于nj个玩家i(j+1)
Arow,j=2/(n(j)+n(j+1))                       (71)
其中,行变量是由玩家i(j)来定义的,这意味着行变量的范围从1到所有队伍中的玩家的总数;列变量是由从1到k-1(其中k是队伍数)的索引j来定义的;而n(j)是第(j)支队伍上的玩家数;n(j+1)是第(j+1)支队伍上的玩家数。对于所有nj+1个玩家i(j+1)
Arow,j+1=-2/(n(j)+n(j+1))                         (72)
其中行变量是由玩家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来标识。在游戏之后,队伍A可能赢了队伍B和C,而队伍B可能赢队伍C。玩家的一个示例排名矩阵(矩阵A)由图11的矩阵1100示出。具体地,排名矩阵1100具有由范围从1到2(即,1到k-1,其中k是队伍数,这在所示的示例中为3)的索引j定义的两个列1102、1104。排名矩阵1100具有分别代表三支队伍中的每一支队伍的两个玩家中的每一个,即玩家A1、玩家A2、玩家B1、玩家B2、玩家C1和玩家C2的六行1106、1108、1110、1112、1114、1116。玩家A1和A2的玩家排名在排名矩阵1110的矩阵元素1120、1122、1124、1126处编码。具体地,在列1102中的矩阵元素1120、1124处的玩家A1和A2的玩家排名使用以上等式(71)被确定为2/(nA+nB)=2/(2+2)=1/2,因为队伍A和队伍B各自有两个玩家。在列1104中的矩阵元素1122、1126处的玩家A1和A2的玩家排名被确定为0。玩家B1和B2的玩家排名在排名矩阵1100中的矩阵元素1128、1130、1132、1134处编码。具体地,在列1102中的矩阵元素1128、1132处的玩家B1和B2的玩家排名使用以上等式(72)被确定为-2/(nA+nB)=-2/(2+2)=-1/2,因为队伍A和B各自有两个玩家。在列1104中的矩阵元素1130、1134处的玩家B1和B2的玩家排名使用以上等式(71)被确定为2/(nB+nC)=2/(2+2)=1/2,因为队伍B和C各自有两个玩家。玩家C1和C2的玩家排名在排名矩阵1110中的矩阵元素1136、1138、1140、1142处编码。具体地,在列1102中的矩阵元素1136、1140处的玩家C1和C2的玩家排名被确定为0。在列1104中的矩阵元素1138、1142处的玩家C1和C2的玩家排名使用以上等式(72)被确定为-2/(nB+nC)=-2/(2+2)=-1/2,因为队伍B和队伍C各自有两个玩家。
在某些情况下,一个或多个玩家可出于诸如连接断开、晚进入、因为不喜欢结果而离开游戏、由于兴趣而离开游戏、如教练等第三方确定的进入和离开等等任何数量的原因而晚进入游戏、早离开游戏。由此,在某些情况下,导致游戏结果的部分玩游戏时间可用于对排名加权。以此方式,如果一支队伍有玩家离去,则该队伍的其余玩家不会因为输了游戏而受到惩罚,因为这是预期到的结果。相反,如果队伍的其余玩家赢了游戏则他们可接收到额外的好处或技能升级,因为这是未预期到的结果,例如,三个玩家的队伍赢了四个玩家的队伍。
为了将部分玩实现到排名矩阵A中,该排名可以基于平均队伍大小来加权。具体地,在一个示例中,可对参加游戏的每一玩家确定(队伍j的玩家k)玩游戏
Figure A20078000593500311
的部分时间。队伍j的每一玩家k玩
Figure A20078000593500312
的部分时间可使用下式来确定:
Figure A20078000593500313
可使用下式对队伍(j)更新排名矩阵A:
A row , j = 2 p ( j ) row &Sigma; k = 1 n ( j ) p ( j ) k + &Sigma; k = 1 n ( j + 1 ) p ( j + 1 ) k - - - ( 72.2 )
其中玩的部分时间
Figure A20078000593500315
是与行Arow,j相关联的玩家玩的部分时间。等式(72.2)的分母中的求和指示了队伍(j)和(j+1)中每一个的所有玩家玩的时间部分的总和。以此方式,可对失败的队伍(j+1)使用下式来更新排名矩阵:
A row , j + 1 = - 2 p ( j + 1 ) row &Sigma; k = 1 n ( j ) p ( j ) k + &Sigma; k = 1 n ( j + 1 ) p ( j + 1 ) k - - - ( 72 . 3 )
其中玩的部分时间
Figure A20078000593500317
是与行Arow,j+1相关联的玩家玩的部分时间。等式(72.3)的分母中的求和指示了队伍(j)和(j+1)中每一个的所有玩家玩的时间部分的总和。
例如,各队伍可玩一个游戏并且可由队伍A、队伍B和队伍C来标识,其中每一队伍具有两个玩家,由玩家A1、玩家A2、玩家B1、玩家B2、玩家C1和玩家C2来标识。然而,玩家A1可能仅玩了一半的时间。在游戏之后,尽管玩家A1是部分玩,但是队伍A仍赢了队伍B和C,并且队伍B赢了队伍C。各玩家的一个示例排名矩阵(矩阵A)由图12的矩阵1200示出。具体地,排名矩阵1200具有由范围从1到2(即,1到k-1,其中k是队伍数,这在所示的示例中为3)的索引j定义的两个列1202、1204。排名矩阵1100具有分别代表三支队伍中的每一支队伍的两个玩家中的每一个,即玩家A1、玩家A2、玩家B1、玩家B2、玩家C1和玩家C2的六行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的玩家排名被确定为0。玩家B1和B2的玩家排名在排名矩阵1200中的矩阵元素1228、1230、1232、1234处编码。具体地,在列1202中的矩阵元素1228、1232处的玩家B1和B2的玩家排名使用以上等式(72.3)来确定。在列1104中的矩阵元素1130、1134处的玩家B1和B2的玩家排名使用等式(71)来确定,因为队伍B和C中没有一个玩家包括了部分玩。玩家C1和C2的玩家排名如图11的排名矩阵1100一样在排名矩阵1200中的矩阵元素1236、1238、1240、1242处编码,因为队伍B和C的没有一个玩家是部分玩的。
在某些情况下,队伍的确切排名可能不能基于游戏的结果来获得,例如,基于游戏结果的所有队伍的排名可能是部分的。例如,在某些情况下,仅队伍的一部分的最终得分是已知或可相对于其它队伍来确定,诸如在其中穿过终点线的队伍可触发一定时器并且赛跑结果只能对在胜者穿过终点线之后的预定时间内穿过终点线的队伍排名的赛跑游戏中。
为示出这一情况,在一个示例中,在游戏之后,队伍C和D的相对排名可能是未知的。基于得分和结果,可以确定队伍A赢了队伍B、C和D(基于队伍B的得分以及缺少队伍C和D的得分),类似地,基于队伍B的得分和缺少队伍C和D的得分,队伍B赢了队伍C和D。然而,队伍C和D的相对排名不能基于游戏结果来得知。具体地,图13示出了具有队伍C和D的未知排名的部分排名的排名矩阵A。图13的排名矩阵1300具有由范围从1到3(即,1到k-1,其中k是队伍数,这在所示的示例中为4)的索引j定义的三列1302。1304、1305。排名矩阵1300具有分别代表四支队伍中的每一支的两个玩家的每一个,即玩家A1、玩家A2、玩家B1、玩家B2、玩家C1、玩家C2、玩家D1和玩家D2的八行1306、1308、1310、1312、1314、1315、1316、1317。玩家A1和A2的玩家排名类似于在图1100的排名矩阵1100中那样在排名矩阵1300的矩阵元素1320、1322、1323、1324、1326、1327处编码。玩家B1和B2的玩家排名在排名矩阵1300中的矩阵元素1328、1330、1331、1332、1334、1335处编码。具体地,在列1302中的矩阵元素1328、1332处的玩家B1和B2的玩家类似于在图11的排名矩阵1100中将队伍A与队伍B进行比较那样来确定。然而,在列1304中的矩阵元素1330、1334处以及矩阵1305中的矩阵元素1331、1335处的玩家B1和B2的玩家排名是未知的,因为队伍C和D相对于队伍B的相对排名是未知的。玩家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比较是未知的,因为其确切排名是未知的。为允许鉴于部分排名来确定排名矩阵,可通过不如上对于等式(71)和(72)所述地将第(j+1)个队伍与第(j)个队伍进行比较,而是与具有已知排名的最后一个队伍进行比较来构造排名矩阵A。
图1400的示例排名矩阵1400示出了通过将队伍C与队伍B,并将队伍D与队伍B进行比较的具有部分输入排名的完整的排名矩阵。具体地,图14的排名矩阵1400具有由范围从1到3(即,1到k-1,其中k是队伍数,这在所示的示例中为4)的索引j定义的三列1402、1404、1405。排名矩阵1400具有分别代表四支队伍中的每一支的两个玩家的每一个,即玩家A1、玩家A2、玩家B1、玩家B2、玩家C1、玩家C2、玩家D1和玩家D2的八行1406、1408、1410、1412、1414、1415、1416、1417。玩家A1和A2的玩家排名类似于在图1300的排名矩阵1300中那样在排名矩阵1400的矩阵元素1420、1422、1423、1424、1426、1427处编码。玩家B1和B2的玩家排名在排名矩阵1400中的矩阵元素1428、1430、1431、1432、1434、1435处编码。具体地,在列1402中的矩阵元素1428、1432处的玩家B1和B2的玩家排名类似于在图13的排名矩阵1300中将队伍A与队伍B进行比较那样来确定。在列1404中的矩阵元素1430、1434处的玩家B1和B2的玩家排名与以上在图11的排名矩阵1100中所讨论的那样使用等式(71)通过将队伍B与队伍C进行比较来确定。类似地,在列1405中的矩阵元素1431、1435处的玩家B1和B2的玩家排名类似于以上在图11的排名矩阵1100中所讨论的那样使用等式(71)通过将队伍B和队伍D进行比较来确定。玩家C1和C2的玩家排名在排名矩阵1400中的矩阵元素1436、1438、1439、1440、1442、1443处通过将队伍C与最后一个已知排名的队伍(即队伍B)并使用以上等式(72)来编码。玩家D1和D2的玩家排名在排名矩阵1400中的矩阵元素1444、1446、1447、1448、1450、1451处通过将队伍D与最后一个已知排名的队伍(即队伍B)并使用以上等式(72)来编码。尽管相对于玩了全部时间的所有玩家讨论了部分排名示例,但是可以理解,使用等式(72.3)和(72.4)的部分玩可用于将部分玩与部分排名相结合。
不论是否考虑部分玩和/或部分排名,排名第(j)的队伍与排名第(j+1)的队伍排名相同,则截断高斯型的下限a和上限b可被设为:
ai=-ε                                (73)
bi=ε                                 (74)
否则,如果第(j)支队伍与第(j+1)支队伍排名不同,则截断高斯型的下限a和上限b可被设为:
ai=ε                                 (75)
bi=∞                                 (76)
所确定的矩阵A可用于确定(712)中间参数。中间参数可包括向量u和矩阵C,使用以下等式:
u=ATμ                                (77)
C=AT2I+diag(σ2))A                 (78)
其中,向量μ是包含玩家的均值的向量,β是潜在得分方差,而σ2是包含玩家的方差的向量。向量μ和σ2可包含参与玩家或所有玩家的均值。如果该向量包含所有玩家的得分参数,则A的构造可对每一非参与玩家提供系数0。
中间参数u和C可用于使用以上等式(6)-(10)和向量a和b的积分极限来确定(714)表示后验的截断高斯型的均值Δ和协方差∑。截断高斯型的均值和协方差可使用任何适当的方法来确定,这些方法包括数值逼近(见Gentz等人的Numerical Computation of Multivariate Normal Probabilities,Journal ofComputational and Graphical Statistics 1,1992,第141-149页)、期望值传播(见下文)等。期望值传播将在以下参考图9进一步讨论。
使用所计算的均值Δ和协方差∑,可更新(716)由参与多队伍游戏的每一玩家的均值μi和方差σi 2定义的得分。在一个示例中,可使用下式来确定函数向量v和矩阵W:
v=AC-1(Δ-u)                         (79)
W=AC-1(C-∑)C-1AT                    (80)
使用向量v和矩阵W,可使用下式来更新每一队伍j中的每一玩家i的均值
Figure A20078000593500351
和方差
Figure A20078000593500352
&mu; j i &LeftArrow; &mu; j i + &sigma; j i 2 v j i - - - ( 81 )
&sigma; j i 2 &LeftArrow; &sigma; j i 2 ( 1 - &sigma; j i 2 W j i , j i ) - - - ( 82 )
以上用于多队伍游戏的等式和方法可被精简为以上给出的两支队伍和两个玩家的示例。
以此方式,对每一玩家得分的均值的更新可以是基于游戏结局的线性增加或减少。例如,如果在两个玩家的示例中,玩家A的均值大于玩家B的均值,则玩家A应被惩罚,类似地,玩家B应被奖励。对每一玩家得分的方差的更新是倍增的。例如,如果结局是非预期的,例如玩家A的均值大于玩家B的均值而玩家A在游戏中失败,则可将每一玩家的方差减少得更多,因为游戏结局相对于关于得分的当前置信提供很多信息。类似地,如果玩家的均值大致相等(例如,其差在潜在平局余量内)且游戏结果是和局,则更新可对方差作极小的改变,因为结局是所预期到的。
多支队伍匹配
如上所讨论的,由每一玩家的均值μ和方差σ2所表示的得分可用于在给定所有参与玩家的得分的平均得分和标准差时预测特定游戏结局y的概率。所预测的游戏结局可用于对将来的游戏匹配玩家,诸如通过将潜在游戏的结局的预测的可能性与预定阈值、玩家指示的偏好进行比较,确保可能结局上的大致相等的分布(例如,在1-25%内)等等。可能结局上的大致相等的分布可取决于玩该游戏的队伍的数目。例如,如果有两支队伍,则如果每支队伍都有大约50%的获胜或战平的机会,则可设置匹配。如果游戏具有3支队伍,则如果每一对抗的队伍具有约30%的获胜或战平机会,则可作出匹配。可以理解,大致相等的分布可从玩该游戏的队伍的数目的倒数或用任何其它适当的方式来确定。
在一个示例中,由玩家匹配模块匹配的一个或多个玩家可被给予接受或拒绝匹配的机会。玩家的决定可基于诸如挑战者的得分和/或所确定的可能结局的概率等给定信息。在另一示例中,一玩家可直接被另一玩家挑战。被挑战的玩家可基于由玩家匹配模块提供的信息来接受或拒绝该挑战比赛。
游戏结局的概率可通过从给定得分时的结局的概率中计算游戏结局y的概率(P(y))来确定,其中所获得的由每一玩家的均值和方差所表示的得分
Figure A20078000593500362
上的知识或不确定性被忽略。
与以上多个玩家得分更新等式一样,图6的匹配方法可被修改以适应各自有一个或多个玩家的多支队伍。确定结局的概率的示例修改方法800在图8中示出。与以上一样,可初始化(802)静态变量,诸如潜在得分方差β、潜在平局区ε、动态常数τ0、和矩阵A。矩阵A可被初始化为包含全0的矩阵。
可对每一玩家接收(804)得分si(由每一参与玩家i的均值μi和方差σi 2来表示)。可接收(806)k支队伍的排名r。对于参与的每一玩家,诸如方差σi 2等得分可对每一参与玩家动态地更新(808),并且可基于自从该玩家最后一次玩游戏以来的时间,例如,基于时间的动态更新。以此方式,每一潜在参与玩家i的方差可使用以上等式(31)来更新。
队伍的得分可通过根据玩家的排名r计算(810)排列来对排名排序。例如,如上所述,排名可以按排名递减的次序放置。
可确定(812)排名的编码。排名的编码可使用参考图7的确定(710)排名编码来描述的方法并使用等式(71-76)来确定。可使用以上等式(77-78)并如上参考图7的确定中间参数(712)所描述的来确定(814)中间参数u和C。为将动态更新结合到游戏结局的预测中,有时候Δt>0,因为自从最后一次更新以来,可向以上等式(78)的矩阵C的第j个对角元素添加一额外的被加数(n(j)+n(j+1)0
游戏结局的概率可通过对具有均值u和方差C的截断高斯型的常数函数的值求值来确定(816)。如上所述,截断高斯型可用任何适当的方式来求值,包括数值逼近(见Gentz等人的Numerical Computation of Multivariate NormalProbabilities,Journal of Computational and Graphical Statistics 1,1992,第141-149页)、期望值传播等等。
数值逼近
一种合适的数值逼近技术在Gentz等人的Numerical Computation ofMultivariate Normal Probabilities,Journal of Computational and GraphicalStatistics 1,1992,第141-149页中讨论。在一个示例中,如果截断高斯型的维数(例如,队伍j中的玩家数nj)较小,则可基于统一随机偏离,基于随机变量的变换(可以使用以上讨论的累积高斯分布来迭代地完成)来估算逼近的后验。
由于归一化常量Zr(u,C)等于排名r的概率,因此该归一化常量可通过对以下等式积分来确定:
Z r ( &mu; , &sigma; ) = &Integral; a b N ( z ; u , C ) dz - - - ( 83 )
均值z可以使用ADF通过下式来确定:
< z > z ~ R ( z ) = u ( &mu; ) + C [ v ( u ( &mu; ) C &epsiv; C ) &CenterDot; v ~ ( u ( &mu; ) C &epsiv; C ) 1 - y ] - - - ( 84 )
数值逼近以上等式将提供可用于数值逼近截断高斯型的均值和归一化常量。
期望值传播
与数值逼近不同,期望值传播可用于更新玩家的得分和/或预测游戏结局。在多支队伍的情况下,该更新和预测方法可基于两支队伍更新和预测方法的迭代方案。为减少在期望值传播期间计算的转换的数量。可假定高斯分布为秩为1的高斯型,例如,似然性ti,r是得分s的一维投影的某一函数。一般的期望值逼近的效率可通过假设后验是校正的、截断的高斯分布来提高。
例如,图9示出了用期望值传播来逼近截断高斯型的示例方法1200。
可诸如在得分更新的计算中接收(1202)非截断高斯型的均值μ和协方差∑。可以理解,输入的均值μ和∑是非截断高斯型的均值和协方差,而非玩家得分的均值和方差。均值可具有n个元素,而协方差矩阵的维数可以为nxn。可接收截断高斯型的上和下截断点。例如,如果第j支队伍与第j+1支队伍的排名相同,则可对每一j和j+1玩家设置截断高斯型的下限a和上限b为:
ai=-ε                                    (85)
bi=ε                                     (86)
否则,如果第j支队伍与第j+1支队伍的排名不同,则可对每一j和j+1玩家设置变量a和b为:
ai=ε                                     (87)
bi=∞                                    (87.1)
可初始化(1206)期望值传播的参数。更具体地,对于从1到n的每一i,均值μi可被初始化为0或任何其它适当的值,参数πi可被初始化为0或任何其它适当的值,参数ζi可被初始化为1或任何其它适当的值。逼近的均值μ可被初始化为接收到的均值μ,而逼近的协方差∑可被初始化为接收到的协方差∑。
可选择(1208)从1到n的索引j。可更新(1210)逼近均值和协方差(μ和∑)。更具体地,逼近均值和协方差可通过下式来更新:
&mu; * = &mu; * + &pi; j ( &mu; * j - &mu; j ) + &alpha; j e j t j - - - ( 88 )
&Sigma; * = &Sigma; * + &pi; j e j - &beta; j e j 2 t j t j T - - - ( 89 )
其中tj由下式确定:
tj=[∑1,j ,∑2,j ,...,∑n,j ]                 (90)
并且因数dj和ej由下式确定:
dj=πij,j                                          (91)
ej=1-dj                                                (92)
因数αj和βj由下式确定:
&alpha; j = v ( &phi; j , , a j , , b j , ) / &psi; j - - - ( 93 )
&beta; j = w ( &phi; j , , a j , , b j , ) / &psi; j - - - ( 94 )
其中函数v()和w()可使用以上等式(17-18)来求值,而参数φj’、aj’、bj’和ψj可以通过使用下式来求值:
φj=μj +djj j)/ej                             (95)
Ψj=∑j,j /ej                                        (96)
&phi; j , = &phi; j / &psi; j - - - ( 97 )
&psi; j , = &psi; j / &psi; j - - - ( 98 )
a j &prime; = a j / &psi; j - - - ( 99 )
bj’=bj/Ψ                                             (100)
可更新(1212)因数πj、μj和ζj。更具体地,这些因数可使用下式来更新:
&pi; j = 1 / ( &beta; j - 1 - &psi; j ) - - - ( 101 )
μj=φjjj                                        (102)
&zeta; j = ( &phi; ( b j , - &phi; j , ) - &phi; ( a j , - &phi; j , ) ) &CenterDot; exp &alpha; j 2 2 &beta; j ( 1 - &psi; j &beta; j - - - ( 103 )
然后可评估(1214)终止准则。例如,终止条件Δz可使用下式来计算:
Δz=|Z-Z old|                                       (104)
任何适当的终止条件可指示逼近的收敛。可将所确定的终止条件Δz与一预定终止容许准则δ进行比较。如果所确定的终止条件的绝对值小于或等于该终止容许准则,则逼近的均值μ、方差∑和归一化常数Z可被认为是收敛的。如果不满足终止准则,则该方法可返回到选择索引(1208)。如果满足终止准则,则可返回逼近的均值和协方差。另外,可对归一化常数Z进行求值(1216)。更具体地,该归一化常数可使用下式来求值:
Z * = ( &Pi; i = 1 n &zeta; i ) &CenterDot; | &Sigma; * &Sigma; - 1 | &CenterDot; exp ( - 1 2 ( &Sigma; i = 1 n &pi; i &mu; i 2 + &mu; T &Sigma; - 1 &mu; - &mu; * T &Sigma; * - 1 &mu; * ) ) - - - ( 105 )
比赛安排和排行榜
如上所述,所确定的结局的概率可用于根据预定阈值来匹配玩家,使得结局对队伍可能是有挑战性的。确定游戏的预测结局在某些情况下在用于储存对多于四支队伍的整个结局分布的存储器方面是昂贵的。更具体地,有O(2k-1K!)个结局,其中k是队伍数,而O()意味着“数量级”,例如,由O()表示的函数可以仅在比例因子和/或常量上有区别。另外,预测的结局在具有不同标准差σi的玩家(如果其均值μi是相同的)之间没有区分。在某些情况下,计算两个结局分布之间的距离在计算上可能是昂贵的。由此,在某些情况下,计算两个玩家的得分之间的得分间隙可能是有用的。例如,得分间隙可被定义为两个得分si和sj之差。预期的得分间隙E(si-sj)或E[(si-sj)2可使用下式来确定:
E [ | s i - s j | ] = 2 &sigma; ij 2 N ( &mu; ij ; 0 , &sigma; ij 2 ) + &mu; ij ( 2 &Phi; ( &mu; ij &sigma; ij ) - 1 ) - - - ( 106 )
E [ ( s i - s j ) 2 ] = &mu; ij 2 + &sigma; ij 2 - - - ( 107 )
其中μij是玩家的均值之差(即,μij=μij),而σij 2是玩家i和j的方差之和(即,σij 2=σj 2j 2)。得分间隙的期望可与预定阈值进行比较以确定玩家i和j是否应匹配。例如,预定阈值可以在约3到约6的范围内,并且可取决于许多因素,包括可用于匹配的玩家的数量。更具体地,可用玩家越多,阈值就可被设置得越低。
此外,玩家i的得分置信可用于计算保守得分估算为μi-k·σi,其中k因子k是量化保守等级的正数。可对k选择任何适当的数字以指示保守等级,诸如数字3,来用于排行榜。在许多情况下,k因子k的值可以是正的,然而在某些情况下,诸如当确定“乐观”得分估算时,可使用负数。这一保守得分估算的优点是对于新玩家,该估算可以为0(由于大的初始方差σi 2),这通常对于新玩家而言更直观(“从零开始”)。
得分收敛
玩家的均值μi可能不会收敛到一特定值上,因为它可取决于在所有玩家之间获胜的真实(未知)概率。另一方面,方差σi可以收敛到一固定点,因为诸如游戏结果等每一次数据结合都可减少技能置信的熵。
渐进方差极限σi 可以用任何适当的方式来确定。例如,在渐进反差极限σi 中,所有玩家可以被假定为具有相同的技能置信标准差,即σ=σ*1。另外地或另选地,在渐进方差极限σi 中,仅具有相等技能的玩家可彼此匹配,例如,对于两个队伍的示例为μA=μB=0,或对于多个队伍的示例为向量u=0。另外地或另选地,可以假定游戏不会以任何一对队伍之间的平局结束。
以下示例针对多个队伍的示例,因为两个队伍和两个玩家的示例是多个队伍的方法的特殊情况。由于正确定渐进极限,因此对方差σ的值的更新将保持方差σ的值不受影响。以此方式,渐进方差σ可被表示为:
&sigma; * 2 = min t [ ( &sigma; * 2 + &tau; 0 2 ) ( 1 - ( &sigma; * 2 + &tau; 0 2 ) W t , t ) ]
                                   (108)
= ( &sigma; * 2 + &tau; 0 2 ) ( 1 - ( &sigma; * 2 + &tau; 0 2 ) max t W t , t )
其中矩阵Wt,t取决于固定的潜在方差β2、动态时间更新τ0 2和渐进方差σ*2。渐进极限可用于以任何适当的方式确定均值为0、协方差为C0,且积分极限为(ε1,+∞)的截断高斯型的协方差Z0。例如,参考上述的多个队伍更新,协方差Z0和协方差C0可使用下式来确定:
C = ( &beta; 2 + &sigma; * 2 + &tau; 0 2 ) A T A = ( &beta; 2 + &sigma; * 2 + &tau; 0 2 ) C 0 - - - ( 109 )
Z = ( &beta; 2 + &sigma; * 2 + &tau; 0 2 ) Z 0 - - - ( 110 )
以此方式,参数矩阵W可使用下式来确定:
W = AC - 1 ( C - Z ) C - 1 A T
                          (111)
= ( &beta; 2 + &sigma; * 2 + &tau; 0 2 ) AC 0 - 1 ( C 0 - Z 0 ) C 0 - 1 A T
 假定参数w0是由下式定义的:
w 0 = max t [ AC 0 - 1 ( C 0 - Z 0 ) C 0 - 1 A T ] t , t - - - ( 112 )
 则σ的渐进极限可通过使用下式来确定:
&sigma; * 2 = ( &sigma; * 2 + &tau; 0 2 ) ( 1 - &sigma; * 2 + &tau; 0 2 &beta; 2 + &sigma; * 2 + &tau; 0 2 w 0 ) - - - ( 113 )
 这是解如下的σ*2的二次方程:
&sigma; * 2 = &tau; 0 2 [ 1 2 w 0 + 1 2 w 0 ( 1 2 w 0 + 2 &beta; 2 &tau; 0 2 ) - 1 ] - - - ( 114 )
匹配
如上所述,根据某些用户定义和/或预定的偏好,例如平局概率等,可对一特定游戏匹配一队伍中的两个或多个玩家和/或两个或多个队伍。在某些示例中,良好或优选的匹配可被定义为其中每一玩家都可能赢得游戏的匹配。具体地,如果所有参与队伍将战平的可能性较大,则匹配可能是合乎需要的。
为确定平局的可能性以测量匹配是否合乎需要,可通过将极限认为是ε→0来移除对平局余量ε的依赖性。如果玩家的当前技能置信是由均值向量μ和协方差向量∑来给出的,则给定均值和协方差时平局的概率P(draw|μ,∑)可被确定为:
P ( draw | &mu; , &Sigma; ) = lim &epsiv; &RightArrow; 0 &Integral; - &epsiv; &epsiv; &Lambda; &Integral; - &epsiv; &epsiv; N ( z ; A T &mu; ; A T ( &beta; 2 I + &Sigma; ) A ) dz - - - ( 115 )
= N ( 0 ; A T &mu; ; A T ( &beta; 2 I + &Sigma; ) A
其中如上在等式(71)和(72)中所述对每一匹配确定矩阵A。
给定得分时等式(115)的平局概率可与任何适当的匹配质量度量进行比较,该度量可以在匹配模块中预定和/或由用户提供。在一个示例中,该匹配质量度量可以是其中所有队伍具有相同的技能,即ATμ=0,且玩家技能没有不确定性的同一匹配的平局概率。以此方式,匹配质量度量qdraw(μ,∑,β,A)可被确定为:
q draw ( &mu; , &Sigma; , &beta; , A ) = N ( 0 ; A T &mu; ; A T ( &beta; 2 I + &Sigma; ) A ) N ( 0 ; 0 ; &beta; 2 A T A )
= | &beta; 2 A T A | | &beta; 2 A T A + A T &Sigma;A | exp ( - 1 2 &mu; T A ( &beta; 2 A T A + A T &Sigma;A ) - 1 A T &mu; ) - - - ( 116 )
以此方式,匹配质量度量可具有使得匹配质量度量的值在0和1之间的性质,其中值1指示最佳匹配。
如果没有一个玩家曾经玩过游戏(例如,其得分μ、∑尚未被学习=初始μ=μ01,∑=σ0I),则对于k支队伍的匹配质量度量可被简化为:
q draw ( &mu; , &Sigma; , &beta; , A ) = exp ( - 1 2 &mu; 0 2 ( &beta; 2 + &sigma; 0 2 ) 1 i T A ( A T A ) - 1 A T 1 i ) &beta; k ( &beta; 2 + &sigma; 0 2 ) k - - - ( 117 )
如果每一队伍具有相同数量的玩家,则等式(117)的匹配质量度量可被进一步简化为:
q draw ( &mu; , &Sigma; , &beta; , A ) = &beta; k ( &beta; 2 + &sigma; 0 2 ) k - - - ( 118 )
确定并使用匹配质量度量的一个示例方法参考图8的方法800来描述。可初始化(802)参数。例如,可设置表现方差或固定潜在得分方差β2,和/或可将排名编码的矩阵A初始化为0。可如上所述地接收(804)玩家得分(例如,均值μ和方差σ2=diag(∑))。可用任何适当的方式来接收(806)k支队伍的排名r。例如,可从存储器中检索队伍的排名。
可通过根据玩家的排名r计算(810)排列()来对队伍的得分排名。例如,如上所述,排名可按排名递减次序来放置。
可确定(812)排名的编码。排名的编码可使用以上参考图7的确定排名编码(710)来描述的方法并使用等式(71-76)来确定。可确定(814)中间参数。例如,可使用以上等式(77)并如参考图7的确定中间参数(712)所描述地来确定参数u。然而,与等式(78)的参数C不同,在平局质量度量中,参数C1和C2可使用下式来确定:
C1=β2ATA                             (119)
C2=C1+ATdiag(σ2)A                    (120)
可通过对具有均值u和方差C的截断高斯型的常数函数的值求值来确定(816)游戏结局的概率。使用以上等式(116)的平局质量度量,平局概率可被确定为:
P draw = exp ( - 1 2 u T C 2 - 1 u ) | C 1 | | C 2 | - - - ( 121 )
两个玩家的匹配质量
单个玩家、两支队伍的示例是匹配质量度量的特殊情况。如上所述,第一个玩家可以被表示为A,而第二个玩家可以被表示为B。匹配质量度量q可以按照两个玩家的平均得分之差以及两个玩家的方差之和来写出。具体地,均值之差mAB=μAB以及方差之和ζAB 2=ζA 2B 2。以此方式,可使用以上等式(116)来确定平局质量度量为:
q draw ( m AB , &zeta; AB 2 , &beta; ) = exp ( - m AB 2 2 ( 2 &beta; 2 + &zeta; AB 2 ) ) 2 &beta; 2 2 &beta; 2 + &zeta; AB 2 - - - ( 122 )
从等式(122)所得的qdraw的范围总是在0和1之间,其中0指示最差的可能匹配,而1是最佳的可能匹配。使用等式(122),即使两个玩家具有相同的平均得分,得分的不确定性也会影响建议匹配的质量度量。例如,如果任一玩家的得分不确定性(σ)较大,则匹配质量准则远小于1,从而减小了匹配质量的度量。这一确定的平局质量度量可以与玩家的预期技能差别的一个或多个度量进行比较。例如,技能差别的度量可以是在绝对或平方误差的意义上。例如,绝对平局质量度量的一个示例可以是:
q 1 ( m AB , &zeta; AB 2 , &beta; ) = exp ( - E [ | s A - s B | ] ) = exp ( - ( m AB ( 2 &Phi; ( m AB &zeta; AB ) - 1 ) + 2 &zeta; AB N ( m AB &zeta; AB ) ) ) - - - ( 123 )
在另一示例中,平方误差平局质量度量可以是:
q 2 ( m AB , &zeta; AB 2 , &beta; ) = exp ( - E [ | s A - s B | 2 ] ) = exp ( - ( m AB 2 + &zeta; AB 2 ) ) - - - ( 124 )
可以理解,变换exp(-())将游戏的预期得分间隙映射到区间[0,1],使得1对应于高(0间隙)质量匹配。
在等式(123)和(124)的示例中,质量度量可具有对于相等平均技能(即,mAB=0)的两个玩家可能是正确的,则玩家技能的任何不确定性会降低匹配质量(即,质量度量的值)的性质。
在游戏过程的早期,例如,一个或多个玩家或队伍的技能有较高的不确定性,或者在均值μ0和方差σ0 2的初始化值处,两个预期玩家之间的匹配的质量可以与质量阈值qdraw(0,2σ0 2,β)进行比较。具体地,两个玩家之间平局的实际质量可如上所述地评估,并且可与质量阈值q进行比较。
在玩家技能基本收敛之后,例如玩家方差σ2基本为0,则可将两个预期玩家之间的匹配质量(例如,qdraw(mAB,0,β))与质量阈值q draw(0,2σ0 2,β)进行比较。具体地,如果玩家之间的匹配的质量qdraw小于质量阈值度量q draw,则该匹配是可接受的。
可解出等式qdraw(mAB,2σ2,β))=q draw(mAB,0,β)以确定最初使一匹配可接受可能所需的均值mAB的差别。例如,在匹配质量qdraw的情况下:
m AB = 2 &beta; ln ( 1 + &sigma; 0 2 &beta; 2 ) &DoubleLeftRightArrow; P ( betterwins ) = &Phi; ( ln ( 1 + &sigma; 0 2 &beta; 2 ) ) - - - ( 125 )
以此方式,较佳玩家获胜的概率是
Figure A20078000593500444
的函数。等式(122)、(123)、和(124)的不同平局质量度量的示例曲线图在图10的示例图中分别被绘制为曲线1002、1004和1006。轴1008指示
Figure A20078000593500445
的值,轴1010指示等式(125)的较佳玩家获胜的概率。如可在曲线1000中见到的,曲线1002的平局概率更好地指示了较佳玩家获胜的实际概率。
在某些情况下,为确定两个玩家之间的匹配,匹配模块可从可用玩家中确定对一玩家的最佳匹配。例如,一玩家可进入游戏环境,并且请求匹配。响应于该请求,匹配模块可确定可用玩家(例如,该游戏环境中同样也在寻找匹配的那些玩家)的最佳匹配。在某些情况下,匹配模块可对等待匹配的所有当前玩家对qdraw求值。基于平局质量(例如,q draw)的临界值,匹配模块可以过滤掉小于临界平局质量q的那些匹配。满足匹配质量的玩家的一个或多个潜在配对可以被呈现给一个或多个玩家以供接受或拒绝,和/或匹配模块可以响应于对“足够好”匹配、可用的“最佳”匹配、对所有有空玩家的匹配来设置匹配使得所有玩家被匹配(可能不是“最佳匹配”)且匹配满足质量准则。在某些情况下,所有确定的“好”匹配可以被呈现给玩家,并且在某些情况下可以基于匹配的质量以降序(或升序)列出。
然而,以上方法可能对于大型游戏环境并不能很好地缩放。例如,在任何时刻可能有大约100万个用户正等待匹配。使用实际的匹配质量度量qdraw可能要求匹配模块进行完整的线性表排序,这可能被认为在计算上太昂贵。为减少对寻求匹配的玩家的所有排列计算所有可能游戏结局的概率的运算,匹配模块可基于等式(125)来作出技能等级差的初始分析(例如,预过滤预期玩家配对),并从匹配分析中移除超过对技能等级的简单范围检查(例如,平均得分μ和/或平均得分差(例如mAB))的那些配对。
为创建对于玩家A的简单范围检查,如果任一方差σA增加或如果均值差的绝对值|μAB|增加,则以上等式(124)的平局质量度量q2减小。具体地,如果任一玩家的技能的不确定性增长,或者如果平均技能偏差增长,则匹配质量收缩。以此方式,从玩家b的观点来看:
q 2 ( m AB , &sigma; B 2 , &beta; ) &GreaterEqual; q 2 ( m AB , &zeta; AB 2 , &beta; )
                                (126)
q 2 ( 0 , &zeta; AB 2 , &beta; ) &GreaterEqual; q 2 ( m AB , &zeta; AB 2 , &beta; )
由此,如果质量度量q2(mAB,σB 2,β)和q2(0,ζAB 2,β)中的任一个低于临界平局质量,则匹配模块可排除该配对,因为这两个度量都限制了以上真实(但搜索成本较高)的匹配度量q2(mAB,ζAB 2,β)。更具体地,只要q2(mAB,σB 2,β)或q2(0,ζAB 2,β)大于临界质量度量,则匹配模块就不会排除对一玩家的潜在的好匹配。
等式(126)的范围检查可用任何适当的方式来实现。例如,可使用等式(127)、(128)和(129)的所有三种范围检查来检查每一玩家A和B的均值μ和方差σ2
&mu; A < &mu; B + log ( 1 / q * ) - &sigma; B 2 - - - ( 127 )
&mu; A > &mu; B - log ( 1 / q * ) - &sigma; B 2 - - - ( 128 )
&sigma; A < log ( 1 / q * ) - &sigma; B 2 - - - ( 130 )
临界平局质量度量q的值可以是可作为匹配模块中的预定或确定值和/或用户偏好来提供的任何适当的值。在某些情况下,该临界平局质量度量q可以被设为使得(1/q)的对数基本等于方差之和σB t+t,其中t或者是0或者是1,并且其中系统的新玩家的方差被设为1。通过增加t的值,未被过滤掉的匹配或会话的数量增加,直到最终包括了所有会话。
现在已经描述了本发明的某些说明性实施例,本领域的技术人员应当清楚,上述内容仅是说明性而非限制性的,其仅作为示例而提出。众多修改和其它说明性实施例在本领域的普通技术人员的范围之内,并且被认为落入本发明的范围之内。特别地,尽管以上示例是参考用高斯型来对先验和/或后验概率建模来描述的,但是可以理解,以上实施例可被扩展以允许玩家得分的任意分布,这可以是或不是独立的。在以上示例中,假设技能协方差矩阵是对角矩阵,即,联合技能分布是由每一因素的两个数字(均值和标准差)表示的分解高斯分布。在某些情况下,协方差矩阵可以使用低秩逼近来确定,使得∑的秩=d的值。对该操作的存储器要求是O(n·d),并且对更新技术中的所有操作的计算要求可以不大于O(n·d2)。对于较小的d值,这可以是可行的存储器和计算数量,并且后验的逼近可以用逼近(而非假设)的协方差矩阵来改进。这一系统能够充分利用技能之间的相关。例如,玩家小集团的所有成员可以获益于(或遭受)该小集团的单个成员的游戏结局。对协方差矩阵的低秩逼近可允许对玩家的可视化(例如,玩家地图),使得具有高度相关技能的玩家可被彼此接近地显示。
此外,尽管此处所提出的许多示例涉及方法操作或系统元件的具体组合,但是应当理解,这些操作和元件可以用其它方式来组合以实现相同的目标。仅结合一个实施例所讨论的操作、元件和特征并不旨在排除其它实施例中的类似角色。此外,在权利要求中使用诸如“第一”和“第二”等序数词来修饰一权利要求要素本身并不意味着一个权利要求要素相对于另一个的任何优先级、优先顺序或次序,也不意味着执行方法操作的时间次序,而是仅用作将具有特定名称的一个权利要求要素与具有相同名称(但使用序数词)的另一权利要求要素区分开来的标签,以便区分各权利要求要素。

Claims (20)

1.一种方法,包括:
a)接收至少第一队伍与第二队伍之间的游戏的结果,所述第一队伍包括第一玩家和第二玩家,所述第二队伍包括第三玩家,所述第一队伍的第一玩家玩所述游戏的时间是所述游戏的全部时间的一部分;
b)接收表示与所述第一队伍的第一玩家相关联的分布、包括第一均值和第一方差的第一得分;
c)接收表示与所述第一队伍的第二玩家相关联的分布的、包括第二均值和第二方差的第二得分;
d)接收表示与所述第二队伍的第三玩家相关联的分布的、包括第三均值和第三方差的第三得分;
e)基于所述游戏的结果以及所述第一玩家玩游戏的部分时间,更新所述第一均值和所述第一方差;以及
f)向由所述第一玩家、所述第二玩家和所述第三玩家构成的至少一个组提供所述更新的第一均值和第一方差的指示。
2.如权利要求1所述的方法,其特征在于,还包括基于所述游戏的结果和所述第一玩家玩游戏的部分时间来更新所述第二均值和所述第二方差。
3.如权利要求2所述的方法,其特征在于,还包括基于所述游戏的结果和所述第一玩家玩游戏的部分时间来更新所述第三均值和所述第三方差。
4.如权利要求1所述的方法,其特征在于,更新所述第一均值和所述第一方差包括基于所述游戏的结果和所述第一玩家玩游戏的部分时间在一排名矩阵中对所述第一队伍与所述第二队伍的游戏结果的排名进行编码,并使用所述排名矩阵来更新所述第一均值和第一方差。
5.如权利要求4所述的方法,其特征在于,更新所述第一均值和所述第一方差包括使用所述排名矩阵来确定表示所述第一得分、所述第二得分和所述第三得分的后验置信的截断高斯型的均值和协方差,并使用所述截断高斯型的均值来更新所述第一均值且使用所述截断高斯型的协方差来更新所述第一方差。
6.如权利要求4所述的方法,其特征在于,对排名进行编码包括基于所述全部游戏时间上的平均队伍大小来对所述排名加权。
7.如权利要求4所述的方法,其特征在于,对排名编码包括按照所述第一玩家玩游戏的部分时间除以所述第一和第二队伍中的每一玩家玩游戏的部分时间的总和再乘以2来确定所述排名矩阵的第一行第一列的矩阵元素,按照2除以所述第一和第二队伍的每一玩家玩游戏的部分时间的和来确定所述排名矩阵的第二行第一列的矩阵元素。
8.如权利要求7所述的方法,其特征在于,对排名编码包括按照所述第二玩家玩游戏的部分时间除以所述第一和第二队伍的每一玩家玩游戏的部分时间的总和再乘以负2来确定所述排名矩阵的第三行第一列的矩阵元素。
9.如权利要求1所述的方法,其特征在于,还包括接收包括第三队伍的第四玩家的第四均值和第四方差的第四得分,其中所述游戏结果标识所述第一队伍战胜所述第二队伍和所述第三队伍,但未标识所述第二队伍是否战胜所述第三队伍以及所述第三队伍是否战胜所述第二队伍。
10.如权利要求9所述的方法,其特征在于,更新所述第一均值和所述第一方差包括基于所述第一玩家玩游戏的部分时间、所述第一队伍和所述第二队伍之间的比较、以及所述第一队伍和所述第三队伍之间的比较在一排名矩阵中对所述第一队伍、所述第二队伍和所述第三队伍的游戏结果的排名进行编码,并使用所述排名矩阵来更新所述第一均值和第一方差。
11.一种方法包括:
a)接收第一队伍、第二队伍和第三队伍之间的游戏的结果,所述第一队伍包括第一玩家,所述第二队伍包括第二玩家,所述第三队伍包括第三玩家,所述结果定义所述第一队伍战胜所述第二队伍和所述第三队伍,但是未定义所述第二队伍和所述第三队伍之间的相对游戏结果;
b)接收表示与所述第一队伍的第一玩家相关联的分布的、包括第一均值和第一方差的第一得分;
c)接收表示与所述第二队伍的第二玩家相关联的分布的、包括第二均值和第二方差的第二得分;
d)接收表示与所述第三队伍的第三玩家相关联的分布的、包括第三均值和第三方差的第三得分;
e)将所述第一队伍排序在所述第二队伍和所述第三队伍之前;
f)生成具有至少三行和至少两列的排名矩阵;
g)在所述至少三行的每一排名矩阵元素中对所述第一、第二和第三玩家中的每一个的排名进行编码,其中对所述排名进行编码包括将所述第一玩家与所述第二和第三队伍进行比较、将所述第二玩家与所述第一队伍进行比较、以及将所述第三玩家与所述第一队伍进行比较;
h)至少部分地基于所述排名矩阵来更新所述第一均值和所述第一方差;以及
i)提供对所述更新的第一均值和第一方差的指示。
12.如权利要求11所述的方法,其特征在于,还包括至少部分地基于所述排名矩阵来更新所述第二均值和所述第二方差。
13.如权利要求12所述的方法,其特征在于,还包括至少部分地基于所述排名矩阵来更新所述第三均值和所述第三方差。
14.如权利要求11所述的方法,其特征在于,将所述第一玩家与所述第二队伍进行比较包括按照所述第一玩家玩游戏的部分时间除以所述第一和第二队伍中的每一玩家玩游戏的部分时间的总和再乘以2来确定与所述第一玩家相关联的第一行的第一个矩阵元素,并且其中,将所述第一玩家与所述第三队伍进行比较包括按照所述第一玩家玩游戏的部分时间除以所述第一和第三队伍中的每一玩家玩游戏的部分时间的总和再乘以2来确定与所述第一玩家相关联的第一行的第二个矩阵元素。
15.如权利要求11所述的方法,其特征在于,将所述第二玩家与所述第一队伍进行比较包括按照所述第二玩家玩游戏的部分时间除以所述第一和第二队伍中的每一玩家玩游戏的部分时间的总和再乘以负2来确定与所述第二玩家相关联的第二行的第一个矩阵元素,并且将与所述第二玩家相关联的第二行的第二个矩阵元素确定为0。
16.如权利要求11所述的方法,其特征在于,将所述第三玩家与所述第一队伍进行比较包括按照所述第三玩家玩游戏的部分时间除以所述第一和第二队伍中的每一玩家玩游戏的部分时间的总和再乘以负2来确定与所述第三玩家相关联的第三行的第一个矩阵元素,并将与所述第三玩家相关联的第三行的第二个矩阵元素确定为0。
17.一种或多种包含计算机可执行组件的计算机可读介质,所述组件包括:
a)用于基于单个游戏结果对第一队伍、第二队伍和第三队伍的排名排序的装置;
b)用于基于所述游戏结果来生成排名矩阵的装置,用于考虑小于所述游戏的全部时间的、至少一个玩家玩游戏的部分时间的装置,以及用于考虑所述第一队伍、所述第二队伍和所述第三队伍的部分排名的装置;
c)用于基于所述排名矩阵来更新所述第一队伍的玩家的得分的装置;以及
d)用于提供对所述得分的指示的装置。
18.如权利要求17所述的计算机可读介质,其特征在于,所述第一队伍在所述游戏的全部时间的至少一部分中包括多个玩家。
19.如权利要求17所述的计算机可读介质,其特征在于,所述用于考虑部分时间的包括装置用于不惩罚包含所述至少一个玩家的失败队伍的装置。
20.如权利要求17所述的计算机可读介质,其特征在于,所述用于考虑部分时间的装置包括用于使包含所述至少一个玩家的获胜队伍获益的装置。
CNA2007800059357A 2006-02-17 2007-02-13 带有部分信息的玩家排名 Pending CN101496051A (zh)

Applications Claiming Priority (2)

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

Publications (1)

Publication Number Publication Date
CN101496051A true CN101496051A (zh) 2009-07-29

Family

ID=38437705

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800059357A Pending CN101496051A (zh) 2006-02-17 2007-02-13 带有部分信息的玩家排名

Country Status (4)

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

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103970768A (zh) * 2013-01-29 2014-08-06 腾讯科技(深圳)有限公司 获取排名的方法及系统
CN104885100A (zh) * 2012-11-08 2015-09-02 邻客音公司 技能赞同
CN107229701A (zh) * 2017-05-25 2017-10-03 腾讯科技(深圳)有限公司 排名更新方法、装置和计算机设备
CN109621428A (zh) * 2018-12-27 2019-04-16 杭州威佩网络科技有限公司 一种信息处理方法及装置

Families Citing this family (42)

* 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
US8678895B2 (en) 2007-06-14 2014-03-25 Harmonix Music Systems, Inc. Systems and methods for online band matching in a rhythm action game
US8678896B2 (en) 2007-06-14 2014-03-25 Harmonix Music Systems, Inc. Systems and methods for asynchronous band interaction in 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
US8568234B2 (en) 2010-03-16 2013-10-29 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
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
EP3095494A1 (en) 2015-05-19 2016-11-23 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
JP6069568B1 (ja) * 2016-06-30 2017-02-01 グリー株式会社 制御プログラム、制御方法及びコンピュータ
US20180001212A1 (en) * 2016-06-30 2018-01-04 Zynga Inc. Player rating system for multiplayer online computer games
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation 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
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US10864443B2 (en) 2017-12-22 2020-12-15 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
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
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
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
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

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885100A (zh) * 2012-11-08 2015-09-02 邻客音公司 技能赞同
US10027778B2 (en) 2012-11-08 2018-07-17 Microsoft Technology Licensing, Llc Skills endorsements
CN104885100B (zh) * 2012-11-08 2019-08-13 微软技术许可有限责任公司 用于推荐技能赞同的方法、系统和机器可读介质
US10397364B2 (en) 2012-11-08 2019-08-27 Microsoft Technology Licensing, Llc Skills endorsements
CN103970768A (zh) * 2013-01-29 2014-08-06 腾讯科技(深圳)有限公司 获取排名的方法及系统
WO2014117566A1 (en) * 2013-01-29 2014-08-07 Tencent Technology (Shenzhen) Company Limited Ranking method and system
CN103970768B (zh) * 2013-01-29 2018-07-20 腾讯科技(深圳)有限公司 获取排名的方法及系统
CN107229701A (zh) * 2017-05-25 2017-10-03 腾讯科技(深圳)有限公司 排名更新方法、装置和计算机设备
CN107229701B (zh) * 2017-05-25 2018-07-03 腾讯科技(深圳)有限公司 排名更新方法、装置和计算机设备
CN109621428A (zh) * 2018-12-27 2019-04-16 杭州威佩网络科技有限公司 一种信息处理方法及装置

Also Published As

Publication number Publication date
US7840288B2 (en) 2010-11-23
KR20080094067A (ko) 2008-10-22
US20060184260A1 (en) 2006-08-17
WO2007098038A1 (en) 2007-08-30

Similar Documents

Publication Publication Date Title
CN101496051A (zh) 带有部分信息的玩家排名
CN101313322A (zh) 队伍匹配
US7376474B2 (en) Bayesian scoring
US7846024B2 (en) Team matching
US8583266B2 (en) Seeding in a skill scoring framework
US20070112706A1 (en) Handicapping in a Bayesian skill scoring framework
US6763338B2 (en) Machine decisions based on preferential voting techniques
Groll et al. A hybrid random forest to predict soccer matches in international tournaments
Abernethy et al. A collaborative mechanism for crowdsourcing prediction problems
US20070192169A1 (en) Reputation System
Glickman et al. A stochastic rank ordered logit model for rating multi-competitor games and sports
Xiao et al. Ranking and selection for pairwise comparison
WO2020135642A1 (zh) 一种基于生成对抗网络的模型训练方法及设备
Deng et al. A study of prisoner's dilemma game model with incomplete information
Kocsis et al. Universal parameter optimisation in games based on SPSA
Geluvaraj et al. AMatrix factorization technique using parameter tuning of singular value decomposition for Recommender Systems
Ryzhov et al. May the best man win: simulation optimization for match-making in e-sports
Chen et al. Approximate Bayesian inference as a form of stochastic approximation: A new consistency theory with applications
Aydogan et al. A baseline for non-linear bilateral negotiations: the full results of the agents competing in ANAC 2014
Young et al. Sandwich boosting for accurate estimation in partially linear models for grouped data
Ensthaler et al. Games played through agents in the laboratory—a test of Prat & Rustichini's model
Heller Population Curation in Swarms: Predicting Top Performers
Forišek Using item response theory to rate (not only) programmers
Rodrigues et al. Clusterization of an online game community through self-organizing maps and an evolved fuzzy system
Liubov et al. Churn Prediction Task in MOOC

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090729