CN101313322A - 队伍匹配 - Google Patents
队伍匹配 Download PDFInfo
- Publication number
- CN101313322A CN101313322A CNA2006800432719A CN200680043271A CN101313322A CN 101313322 A CN101313322 A CN 101313322A CN A2006800432719 A CNA2006800432719 A CN A2006800432719A CN 200680043271 A CN200680043271 A CN 200680043271A CN 101313322 A CN101313322 A CN 101313322A
- Authority
- CN
- China
- Prior art keywords
- troop
- player
- score
- variance
- 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
Links
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
游戏环境,尤其是电子在线游戏环境中的玩家可相对于彼此或相对于一预定评分系统来评分。每一玩家的评分可基于一个或多个玩家的一个或多个队伍中彼此竞争的玩家之间的游戏的结局。每一玩家的得分可被表示为潜在得分的分布,该分布可指示表示玩家得分的分布的置信水平。每一玩家的得分分布可以用高斯分布来建模,并且可通过贝叶斯推论算法来确定。评分可用于跟踪玩家在游戏环境中的进步和/或级别、在排名的排行榜指示中使用、和/或可用于在将来的游戏中将玩家彼此匹配。潜在游戏中一个或多个队伍的匹配可使用一匹配质量阈值来评估,该阈值指示了可以与游戏结局的概率分布相关的预期匹配质量的度量。
Description
背景
在对游戏的玩家进行排名时,典型的排名系统仅仅跟踪玩家的技能。例如,Arpad Elo介绍了一种在诸如国际象棋、世界杯足球联盟等许多两支队伍的游戏环境中使用的ELO排名系统。在ELO排名系统中,玩家的表现或技能假定通过缓慢地改变正态分布的随机变量的均值来测量。该均值是从获胜、平局和失败中估算的。该均值然后通过将实际与预期的游戏获胜和失败的次数进行比较来线性地更新。
附图简述
当结合附图考虑时,本发明的上述方面和许多附带优点将变得更容易理解,因为这些可以通过参考以下详细描述来更好地理解,附图中:
图1是用于实现评分系统的示例计算系统;
图2是示例评分系统的数据流图;
图3是两个潜在得分分布的示例曲线图;
图4是两个玩家的得分的联合分布的示例曲线图;
图5是更新两个玩家或队伍的得分的示例方法的流程图;
图6是基于其得分分布来匹配两个玩家或队伍的示例方法的流程图;
图7是更新多支队伍的得分的示例方法的流程图;
图8是匹配多支队伍的得分的示例方法的流程图;
图9是使用期望值最大化来逼近截断的高斯分布的示例方法的流程图;
图10是测量匹配质量的示例的曲线图;
图11是匹配两支或多支队伍的示例方法的流程图。
详细描述
示例性操作环境
图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!),或近似地n log(n)个游戏结局进行评估以生成具有近似正确的排名的完整的排行榜。对数的基数取决于两个玩家之间的独特结局的数量。在此示例中,基数是3,因为有三种可能的结局(玩家A获胜,玩家A失败,以及玩家A和B打平)。所评估的结局的下界可以仅在每一结局提供完整信息时达到,即,游戏结局先验地具有基本相等的概率。由此,在许多游戏中,玩家可被匹配为具有相等强度以增加从每一结局中获得的知识。此外,玩家可以愿意接受来自对等玩家的合理挑战。在某些情况下,在玩家排名和评分的概率性处理中,玩家的匹配可以在玩家排名中结合“不确定性”。
在某些情况下,可以有m个不同等级的玩家排名。如果不同等级数m实质上小于玩家数n,则在某些情况下可将最小(提供信息)游戏数减少到nlog(m)。此外,如果游戏的结局是k支队伍之间的排名,则每一游戏可提供多达log(k!)位,且以此方式,可玩大约至少次提供信息的游戏来提取足够的信息以对玩家排名。
可以理解,尽管动态得分模块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支队伍中的玩家的所有技能或得分的函数该函数可以是任何适当的函数。在队伍仅包括单个玩家的情况下,函数S可以是恒等函数,例如
每一玩家的得分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):
(3)
其中变量ik是参与游戏的队伍k的每一玩家的标识符或指示符。在两个玩家的示例中,第一支队伍的向量i1是玩家A的指示符,而第二支队伍的向量i2是玩家B的指示符。在以下进一步讨论的多个玩家的示例中,向量i可以对每一队伍多于一个。在以下进一步讨论的多支队伍的示例中,队伍数k可以大于2。在等式(3)的多支队伍的示例中,给定玩家的得分时的排名的概率可以在给定队伍得分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)可被定义为用于由N(x;0,I)定义的高斯型的速记表示法。累积高斯分布函数可以由φ(t;μ,σ2)来指示,其由下式定义:
再一次,对φ(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由下式给出:
并且函数Zx由下式定义:
Zx(μ,∑)=∫tx(θ)N(θ;μ;∑)dθ=P(x) (10)
校正的截断高斯型
变量x可以根据一校正的双截断高斯型(从此处开始称为校正的高斯型)来分布,并且如果x的密度由下式给出,则由 x~R(x;μ,σ2,α,β)来注释:
当取变量β在其接近无限的极限时,校正的高斯型可被表示为R(x;μ,σ2,α)。
该类校正的高斯型包含高斯族作为一限制情况。更具体地,如果当变量α接近无限时取校正的高斯型的极限,则该校正的高斯型是由用作得分的先验分布的N(x;μ,σ2)指示的正态高斯型。
校正的高斯型的均值由下式给出:
其中函数v(·,α,β)由下式给出:
校正的高斯型的方差由下式给出:
其中函数w(·,α,β)由下式给出:
当β接近无限时,函数v(·,α,β)和w(·,α,β)可被指示为v(·,α)和w(·,α),并使用下式来确定:
这些函数可使用数值积分技术或任何其它合适的技术来确定。函数w(·,α)可以是对指示函数It≤α的平滑逼近,并且可以总是由[0,1]来界定。相反,函数v(·,α)对于t<α可大致如α-t那样增长,并且对于t>α可迅速接近0。
随时间学习得分
用于得分系统的贝叶斯学习过程基于每一玩家所玩的每一比赛的结局来学习每一玩家的得分。贝叶斯学习可以假设每一玩家的未知的、真实的得分随时间是静态的,例如,真实的玩家得分不会改变。由此,当玩家玩更多游戏时,图2的经更新的玩家得分216可以反映该真实得分中增长的确定性。以此方式,所玩的每一新游戏对于经更新的玩家得分216中的确定性几乎没有影响或效果。
然而,玩家可能会随着时间的推移而相对于其它玩家和/或标准等级表有进步。以此方式,每一玩家的真实得分随时间并不是真正静态的。由此,该评分系统的学习过程可以不仅学习每一玩家的真实得分,而且还可允许每一玩家的真实得分由于该玩家的改变的能力而随时间改变。为考虑到随时间改变的玩家能力,可随时间修改得分的后验置信P(s|r,{i1,...ik}。例如,一段时间(例如,Δt)没有玩游戏可允许玩家的技能退步或变差。由此,玩家的得分的后验置信可以由动态得分模块基于任何合适的因素,诸如该玩家玩游戏的历史(例如,自最后一次玩游戏以来的时间)来修改,以确定如图2所示的动态得分216。更具体地,用作新先验分布的后验置信可被表示为在给定具有索引i的玩家在Δt的时间内没有玩游戏的情况下该玩家的得分的后验置信P(si|Δt)。由此,经修改的后验分布可被表示为:
P(si|Δt)=∫P(si|μi+Δμ)P(Δμ|Δt)d(Δμ)
=∫N(si;μi+Δμ,σi 2)N(Δμ;0,τ2(Δt))d(Δμ)
=N(si;μi,σi 2+τ2(Δ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)。更具体地,可确定给定所选玩家的得分时一潜在游戏的结局。对所选一组玩家的游戏结局的置信可被表示为:
其中是用于两个玩家的游戏的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的概率可被表示为:
其中Δ是潜在得分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。每一玩家的得分的方差可通过下式来更新:
为基于游戏结局来更新得分,可计算(506)参数。例如,参数c可被计算为方差之和,使得参数c为:
c=(nA+nB)β2+σA 2+σB 2 (32)
=2β2+σA 2+σB 2 (33)
其中nA是队伍A中的玩家数(在两个玩家的示例中为1),而nB是队伍B中的玩家数(在两个玩家的示例中为1)。
参数h可基于每一玩家的得分的均值和在两个玩家的示例中所计算的参数c来计算,参数h可被计算为:
这表明hA=-hB。参数∈’可基于玩家数、潜在平局区∈和参数c计算(506)如下:
并且对于两个玩家的示例,这导致:
可以接收(508)玩家A和B之间的游戏的结局。例如,游戏结局可以被表示为变量y,如果玩家B获胜则y为-1,如果玩家打平则y为0,而如果玩家A获胜则y为+1。为改变参与的玩家的得分中的置信,诸如在图2的得分更新模块中,可更新(510)每一得分的均值和方差。更具体地,如果玩家A获胜(例如,y=1),则获胜玩家A的均值μA可被更新如下:
失败玩家B的均值μB可被更新如下:
每一玩家i(在两个玩家的示例中为A和B)的方差σi 2可在玩家A获胜时被更新为:
然而,如果玩家B获胜(例如,y=-1),则失败玩家A的均值μA可被更新为:
获胜玩家B的均值μB可被更新为:
每一玩家i(A和B)的方差σi 2可在玩家B获胜时被更新为:
如果玩家A和B打平,则玩家A的均值μA可被更新为:
玩家B的均值μB可被更新为:
玩家A的方差σA 2可在玩家打平时被更新为:
玩家B的方差σB 2可在玩家打平时被更新为:
在以上等式(38-47)中,函数v( )、w( )、和可从高斯型的数值逼近来确定。具体地,函数v( )、w( )、和可使用以上等式(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+nB)β2+σA 2+σB 2+(nA+nB)τ0 (48)
其中nA是队伍A中的玩家数(在本示例中是1个玩家),而nB是队伍B中的玩家数(在本示例中是1个玩家)。可适当地使用上述等式(36)或(37)来计算参数∈’。
可确定(608)潜在玩家之间的游戏的每一可能结局的概率。玩家A获胜的概率可以使用下式来计算:
玩家B获胜的概率可以使用下式来计算:
如上所述,函数φ指示一累积高斯分布函数,其自变量为圆括号中的值,且均值为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。
Δ=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的所有分量中都等于平均队伍大小的倒数,使得:
其中向量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的均值和方差以及用于队伍B中的玩家i的均值和方差
由于对置信的动态更新(例如,基于自从最后一次玩游戏以来的时间)仅依赖于该玩家的方差(以及可能的自从该玩家最后一次玩游戏以来的时间),因此每一队伍中的每一玩家的方差可诸如通过使用以上等式(31)等用任何适当的方式来更新(505)。如上所述,基于时间的更新可通过图2的动态得分模块204来实现。
参考图5,可类似于以上所描述的计算(506)参数,其中进行了某些修改以结合得分和结局的队伍方面。可如上所述计算(506)参数c为方差之和。然而,在其中每一队伍可具有一个或多个玩家的两支队伍的示例中,参与游戏的所有玩家的方差必须相加。由此,对于两支队伍的示例,以上等式(32)可被修改为:
参数hA和hB可以如上在等式(34-35)中所述地基于每一队伍的得分μA和μB的均值以及所计算的参数c来计算(506)。队伍A和B各自的队伍平均得分μA和μB可以被计算为对每一队伍的玩家的均值之和,如:
参数可∈’被计算(506)为:
其中nA是队伍A中的玩家数,而nB是队伍B中的玩家数。
可接收(508)队伍A和B之间的游戏的结局。例如,该游戏结局可以被表示为变量y,如果队伍B获胜则y等于-1,如果队伍打平则y等于0,而如果队伍A获胜则y等于+1。为改变每一队伍的每一参与的玩家的先前得分的概率的置信,可通过修改上述等式(38-46)来更新(510)每一参与玩家的均值和方差。如果队伍A赢得游戏,则可将个人均值更新为:
(任一队伍A或B的)每一玩家i的方差σi 2可在队伍A获胜时如上等式(40)中所示地更新。
然而,如果队伍B获胜(例如,y=-1),则每一参与玩家的均值μAi可被更新为:
(任一队伍A或B)的每一玩家i的方差σi 2可在队伍B获胜时如上在等式(43)中所示地更新。
如014214"果队伍A和B打平,则队伍A和B的每一玩家各自的均值和可被更新为:
如同等式(38-43)一样,函数v( )、w( )、和可使用以上等式(17-20)使用数值方法来求值。以此方式,每一玩家的得分的均值和方差的经更新的值可替换均值和方差的旧值以结合从队伍A和B之间的游戏的结局中所获得的附加知识。
两支队伍匹配
与以上两支队伍得分更新一样,可修改图6的匹配方法以适应各自有一个或多个玩家的两支队伍。与上述一样,可初始化(602)静态变量。可对每一玩家接收(604)得分si(诸如每一相应队伍A和B的每一玩家i的均值和以及方差和)。另外,进行匹配准则可考虑队伍中的得分的变化性。例如,可能期望具有带均一得分的玩家的队伍,因为在某些情况下,他们能更好地协作。
可如上所述确定(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)
以此方式,向量Δ可被定义为:
由于潜在得分x遵循高斯分布(例如,x~N(x;s,β2I),因此向量Δ受高斯分布的支配(例如,Δ~N(Δ;ATs,β2ATA)。以此方式,排名r的概率(基于排列算子()和k-1维向量y通过矩阵A来编码)可由Δ上的联合概率来表达为:
由均值μ和方差来σ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的均值和方差
由于对置信的动态更新可以基于时间,因此该动态时间可依赖于该玩家的方差(以及可能自从该玩家最后一次玩游戏以来的时间)。由此,可使用以上等式(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到k-1(其中k是队伍数)的索引j来定义的,而n(j)是第(j)支队伍上的玩家数,n(j+1)是第(j+1)支队伍上的玩家数。对于所有nj+1个玩家i(j+1):
Arow+1,j=-2/(n(j)+n(j+1)) (72)
其中行变量是由玩家i(j+1)来定义的,列变量是由从1到k-1(其中k是队伍数)的索引j来定义的,而n(j)是第(j)支队伍上的玩家数,n(j+1)是第(j+1)支队伍上的玩家数。如果第(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=AT(β2I+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)
以上用于多队伍游戏的等式和方法可被精简为以上给出的两支队伍和两个玩家的示例。
以此方式,对每一玩家得分的均值的更新可以是基于游戏结局的线性增加或减少。例如,如果在两个玩家的示例中,玩家A的均值大于玩家B的均值,则玩家A应被惩罚,类似地,玩家B应被奖励。对每一玩家得分的方差的更新是倍增的。例如,如果结局是非预期的,例如玩家A的均值大于玩家B的均值而玩家A在游戏中失败,则可将每一玩家的方差减少得更多,因为游戏结局相对于关于得分的当前置信提供很多信息。类似地,如果玩家的均值大致相等(例如,其差在潜在平局余量内)且游戏结果是和局,则更新可对方差作极小的改变,因为结局是所预期到的。
多支队伍匹配
如上所讨论的,由每一玩家的均值μ和方差σ2所表示的得分可用于在给定所有参与玩家的得分的平均得分和标准差时预测特定游戏结局y的概率。所预测的游戏结局可用于对将来的游戏匹配玩家,诸如通过将潜在游戏的结局的预测的可能性与预定阈值、玩家指示的偏好进行比较,确保可能结局上的大致相等的分布(例如,在1-25%内)等等。可能结局上的大致相等的分布可取决于玩该游戏的队伍的数目。例如,如果有两支队伍,则如果每支队伍都有大约50%的获胜或战平的机会,则可设置匹配。如果游戏具有3支队伍,则如果每一对抗的队伍具有约30%的获胜或战平机会,则可作出匹配。可以理解,大致相等的分布可从玩该游戏的队伍的数目的倒数或用任何其它适当的方式来确定。
在一个示例中,由玩家匹配模块匹配的一个或多个玩家可被给予接受或拒绝匹配的机会。玩家的决定可基于诸如挑战者的得分和/或所确定的可能结局的概率等给定信息。在另一示例中,一玩家可直接被另一玩家挑战。被挑战的玩家可基于由玩家匹配模块提供的信息来接受或拒绝该挑战比赛。
与以上多个玩家得分更新等式一样,图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可以使用ADF通过下式来确定:
数值逼近以上等式将提供可用于数值逼近截断高斯型的均值和归一化常量。
期望值传播
与数值逼近不同,期望值传播可用于更新玩家的得分和/或预测游戏结局。在多支队伍的情况下,该更新和预测方法可基于两支队伍更新和预测方法的迭代方案。为减少在期望值传播期间计算的转换的数量。可假定高斯分布为秩为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)逼近均值和协方差(μ*和∑*)。更具体地,逼近均值和协方差可通过下式来更新:
其中tj由下式确定:
tj=[∑1,j *,∑2,j *,...,∑n,j *] (90)
并且因数dj和ej由下式确定:
dj=πi∑j,j * (91)
ej=1-dj (92)
因数αj和βj由下式确定:
其中函数v()和w()可使用以上等式(17-18)来求值,而参数φj’、aj’、bj’和ψj可以通过使用下式来求值:
φj=μj *+dj(μj *-μj)/ej (95)
ψj=∑j,j */ej (96)
bj’=bj/ψ (100)
可更新(1212)因数、πj、μj和ζj。更具体地,这些因数可使用下式来更新:
πj=1/(βj -1-ψj) (101)
μj=φj+αj/βj (102)
然后可评估(1214)终止准则。例如,终止条件Δz可使用下式来计算:
Δz=|Z*-Z* old| (104)
任何适当的终止条件可指示逼近的收敛。可将所确定的终止条件Δz与一预定终止容许准则δ进行比较。如果所确定的终止条件的绝对值小于或等于该终止容许准则,则逼近的均值μ*、方差∑*和归一化常数Z*可被认为是收敛的。如果不满足终止准则,则该方法可返回到选择索引(1208)。如果满足终止准则,则可返回逼近的均值和协方差。另外,可对归一化常数Z*进行求值(1216)。更具体地,该归一化常数可使用下式来求值:
比赛安排和排行榜
如上所述,所确定的结局的概率可用于根据预定阈值来匹配玩家,使得结局对队伍可能是有挑战性的。确定游戏的预测结局在某些情况下在用于储存对多于四支队伍的整个结局分布的存储器方面是昂贵的。更具体地,有O(2k-1k!)个结局,其中k是队伍数,而O()意味着“数量级”,例如,由O()表示的函数可以仅在比例因子和/或常量上有区别。另外,预测的结局在具有不同标准差σi的玩家(如果其均值μi是相同的)之间没有区分。在某些情况下,计算两个结局分布之间的距离在计算上可能是昂贵的。由此,在某些情况下,计算两个玩家的得分之间的得分间隙可能是有用的。例如,得分间隙可被定义为两个得分si和sj之差。预期的得分间隙E(si-sj)或E[(si-sj)2可使用下式来确定:
或
其中uij是玩家的均值之差(即,uij=μi-μj),而σij 2是玩家i和j的方差之和(即,σij 2=σj 2+σj 2)。得分间隙的期望可与预定阈值进行比较以确定玩家i和j是否应匹配。例如,预定阈值可以在约3到约6的范围内,并且可取决于许多因素,包括可用于匹配的玩家的数量。更具体地,可用玩家越多,阈值就可被设置得越低。
此外,玩家i的得分置信可用于计算保守得分估算为μi-k·σi,其中k因子k是量化保守等级的正数。可对k选择任何适当的数字以指示保守等级,诸如数字3。保守得分估算可用于排行榜、如以下所讨论地确定匹配质量等。在许多情况下,k因子k的值可以是正的,然而在某些情况下,诸如当确定“乐观”得分估算时,可使用负数。这一保守得分估算的优点是对于新玩家,该估算可以为0(由于大的初始方差σi 2),这通常对于新玩家而言更直观(“从零开始”)。
匹配质量
如上所述,根据某些用户定义和/或预定的偏好,例如平局概率等,可对一特定游戏匹配一队伍中的两个或多个玩家和/或两个或多个队伍。两个或多个队伍之间的匹配的质量可用任何适当的方式来确定或估计。
一般而言,两个或多个队伍之间的匹配的质量可以是这些潜在队伍之间的可能游戏结局上的概率分布的函数。在某些示例中,良好或优选的匹配可被定义为其中每一队伍都可赢得游戏的匹配。如果每一参与者(或队伍)赢得该潜在匹配的游戏的概率基本相等,则该匹配质量可被认为是“好”或潜在匹配。例如,在具有各自的获胜概率为p1、p2和p3的三个玩家的游戏中,其中p1+p2+p3=1,该分布的熵,即Gini索引可用作匹配质量的度量。在另一示例中,如果所有参与队伍将战平的可能性较大,则匹配可以是合乎需要的(例如,匹配质量良好)。
在一个示例中,匹配的质量或匹配质量度量(q)可以被定义为每一队伍战平的基本相等的可能性(qdraw)。为确定平局的可能性以测量匹配是否合乎需要,可通过将极限认为是∈→0来移除对平局余量∈的依赖性。如果玩家的当前技能置信是由均值向量μ和协方差向量∑来给出的,则给定均值和协方差时极限∈→0中平局的概率P(d raw|μ,∑)可被确定为:
其中如上在等式(71)和(72)中所述对每一匹配确定矩阵A。
给定得分时等式(108)的平局概率可与任何适当的匹配质量度量进行比较,该度量可以在匹配模块中预定和/或由用户提供。在一个示例中,该匹配质量度量可以是其中所有队伍具有相同的技能,即ATμ=0,且玩家技能没有不确定性的同一匹配的平局概率。以此方式,匹配质量度量qdraw(μ,∑,β,A)可被确定为:
以此方式,匹配质量度量可具有使得匹配质量度量的值在0和1之间的性质,其中值1指示最佳匹配。
如果没有一个玩家曾经玩过游戏(例如,其得分μ、∑尚未被学习=初始μ=μ01,∑=σ01)或者玩家的得分已被充分地学习,则对于k支队伍的匹配质量度量可被简化为:
如果每一队伍具有相同数量的玩家,则等式(110)的匹配质量度量可被进一步简化为:
确定并使用匹配质量度量的一个示例方法参考图11的方法1100来描述。可接收(1102)玩一个或多个游戏的多个玩家的得分。如上所述,每一队伍可具有一个或多个玩家,并且一个潜在匹配可包括两个或多个队伍。可从多个潜在玩家中选择(1104)两个或多个队伍作为对一匹配的潜在队伍。可至少部分地基于所选队伍之间的可能游戏结局的概率分布的函数,用任何适当的方式来确定(1108)所选队伍之间的匹配的质量。如上所述,该概率分布的函数可以是每一队伍获胜、失败或战平的概率;每一队伍获胜、战平或失败的分布的熵;等等。
可用任何适当的方式来确定(1110)匹配质量阈值。匹配质量阈值可以是指示匹配的质量水平的任何适当的阈值。如上所述,该匹配质量度量可取0和1之间的值,其中1指示理想匹配。匹配质量阈值然后可被适当地预定为1值附近的值或不是该值。如果匹配质量阈值是预定值,则可从存储器中检索匹配质量阈值。在另一示例中,匹配质量阈值可以是诸如从一个或多个匹配参与者计算或接收到的确定的值。匹配质量度量然后可以与预定的匹配质量阈值进行比较(1112)以确定是否超过阈值。例如,如果高匹配质量度量值指示好的匹配,则可将该匹配质量度量与该匹配质量阈值进行比较以确定匹配质量度量是否大于该匹配质量阈值。然而,可以理解,其它匹配质量度量可适当地用较低的值来指示好匹配。
如果匹配质量比较没有指示(1114)好匹配,则该方法可返回到选择(1104)队伍组合并评估该潜在匹配的质量。
如果匹配质量比较指示(1114)好匹配,例如,超过了该阈值,则可用任何适当的方式指示(1116)该所选队伍组合提供合适的匹配。在某些情况下,可呈现(1120)第一个合适的匹配作为对一游戏的建议的匹配。
在其它情况下,对于建议的游戏的所呈现的匹配可以是在一段时间内从所有潜在匹配中确定的或以任何其它适当的方式确定的最合适的匹配。如果要确定并比较两个或多个匹配的质量,则该方法可返回到选择(1104)用于下一个潜在匹配的两个或多个队伍,不论所呈现的所选队伍是否指示(1116)“好”匹配,例如,超过阈值。在这一情况下,该方法可继续确定两个或多个潜在匹配的质量,直到评估(1118)一停止条件。如上所述,该停止条件可以是队伍组合的数量、所确定的好匹配的数量、时间段、所有潜在匹配等中的任何一种或多种。如果满足停止条件,则可呈现(1120)所确定的最佳匹配作为对游戏的建议的匹配。
可以用任何适当的方式来呈现(1120)一个或多个潜在匹配。满足质量度量的一个或多个潜在玩家配对可被呈现给一个或多个玩家以供接受或拒绝,和/或匹配模块可响应于“足够好”的匹配、可用的“最佳”匹配、使得所有玩家都被匹配的所有可能玩家的匹配(可能不是“最佳匹配”)、以及满足质量准则的匹配的确定来设置匹配。在某些情况下,可向玩家呈现所有确定的“好”匹配,并且在某些情况下,这些“好”匹配可以基于匹配的质量按降序(或升序)列出。
在一个示例中,图11中的确定(1108)匹配质量可包括如上对于图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 (112)
C2=C1+ATdiag(σ2)A (113)
可通过对具有均值u和方差C的截断高斯型的常数函数的值求值来确定(816)游戏结局的概率。使用以上等式(109)的平局质量度量,然后可将平局余量极限∈→0中的归一化平局概率用作确定的匹配质量(例如,图11的步骤108),并且可被确定为:
两个玩家的匹配质量
单个玩家、两支队伍的示例是图11的步骤1108中所确定的匹配质量度量的特殊情况。如上所述,第一个玩家可以被表示为A,而第二个玩家可以被表示为B。匹配质量度量q可以按照两个玩家的平均得分之差以及两个玩家的方差之和来写出。具体地,均值之差mAB=μA-μB以及方差之和ζAB 2=ζA 2+ζB 2。以此方式,可在图11的步骤1108处使用以上等式(109)来确定平局质量度量为:
从等式(115)所得的匹配质量度量qdraw的范围总是在0和1之间,其中0指示最差的可能匹配,而1是最佳的可能匹配。由此,质量阈值可以是指示好匹配的等级的任何适当的值,该值可以是接近1的值,如.75、.85、.95、.99等。
使用等式(115),即使两个玩家具有相同的平均得分,得分的不确定性也会影响建议匹配的质量度量。由此,如果任一玩家的得分不确定性(σ)较大,则匹配质量准则远小于1,从而减小了匹配质量的度量。结果,如果一个或多个方差较大,则平局质量度量可能是不适当的,因为没有一个评估的匹配可超过该阈值。由此,确定(1108)的匹配质量可使用任何其它合适的方法来确定,诸如对玩家的预期技能差别进行评估。例如,作为技能差别的度量的匹配质量度量可以是在绝对或平方误差的意义上。绝对平局质量度量的一个示例可以是:
在另一示例中,平方误差平局质量度量可以是:
等式(115)、(116)和(117)的不同平局质量度量的示例曲线图在图10的示例图中分别被绘为线1002、1004和1006。轴1008指示的值,而轴1010指示以下所示的等式(118)的较好玩家获胜的概率。如可以从曲线图1000中见到的,线1002的平局概率更好地指示了较好玩家获胜的实际概率。
可以理解,变换exp(-( ))将游戏的预期得分间隙映射到区间[0,1],使得1对应于高(0间隙)质量匹配。由此,质量阈值可以是指示好匹配的等级的任何适当的值,这可以是接近1的值,如.75、.85、.95、.99等。
在等式(116)和(117)的示例中,平局质量在绝对或平方误差的意义上测量两个玩家的技能差别。这些等式可用于基本相等的平均技能(例如,mAB≈0)的两个玩家,因为玩家技能的任何不确定性会降低匹配质量(即,质量度量的值)。
平局质量阈值q*的值(诸如在图11的步骤1110中确定的)可以是任何适当的值,该值可以作为匹配模块中的预定或确定值和/或作为用户偏好来提供。平局质量阈值q*可在较高的阈值导致可用的所有游戏会话/伙伴都被拒绝的情况下随时间的推移而被放松,即降低。参考图11的方法1100,对匹配质量阈值的确定1110可以基于已经发现可接受的匹配的数目、找到合适匹配所花的时间等来改变。
尽管放松匹配质量阈值导致较低质量的匹配,但是可能有必要允许玩家在超过了一特定等待时间之后玩游戏。在某些情况下,匹配质量阈值q*可被设置成使得对数(1/q*)基本等于要匹配的玩家的方差与要随时间增加的参数t之和,σB t+t,且其中,对系统的新玩家的方差被设为1。通过增加t的值,放松了质量阈值,并且增加了未被过滤掉的匹配或会话的数目,直到最终包括了所有的会话。
在游戏过程的早期,例如,一个或多个玩家或队伍的技能有较高的不确定性,或者在均值μ0和方差σ0 2的初始化值处,两个预期玩家之间的匹配的质量可以与质量阈值qdraw(0,2σ0 2,β)进行比较,该质量阈值是使用固定方差值,通常是发起玩家技能的方差的值的平局质量。
在玩家技能基本收敛之后,例如玩家方差σ2基本为0,则可将两个预期玩家之间的匹配质量(如在图11的步骤1108中所确定的)与被求值为qdraw(mAB,0,β)的平局质量阈值(如在图11的步骤1110中所确定的)进行比较。具体地,如果玩家之间的匹配的qdraw大于平局质量阈值q*,则该匹配被指示为可接受的。
匹配过滤器
如上参考图11所述,在某些情况下,为确定两个玩家之间的匹配,匹配模块可从可用玩家中确定对一玩家的最佳匹配。例如,一玩家可进入游戏环境,并且请求匹配。响应于该请求,匹配模块可确定可用玩家(例如,该游戏环境中同样也在寻找匹配的那些玩家)的最佳匹配。在某些情况下,匹配模块可对等待匹配的所有当前玩家对qdraw求值。基于平局质量阈值(例如,q*),匹配模块可过滤调小于平局质量阈值q*的那些匹配。
然而,以上方法可能对于大型游戏环境并不能很好地缩放。例如,在任何时刻可能有大约100万个用户正等待匹配。使用实际的匹配质量度量可能要求匹配模块进行完整的线性表排序,这可能被认为在计算上太昂贵。为减少为所有寻求匹配的玩家的排列计算所有可能游戏结局的匹配质量(例如,概率或其它质量度量)的运算,匹配模块可进行初始分析(例如,预过滤预期玩家配对)。由此,一个或多个玩家最初可至少部分地基于诸如连接速度、玩家得分范围等一个或多个过滤准则而从选择中过滤掉。
参考图11,方法1100可包括从匹配分析中过滤(1106)一个或多个玩家。过滤器可以基于任何一个或多个因素,这减少了要分析的潜在匹配排列的数量。
例如,一种滤波器可以基于实现可接受匹配(例如,超过匹配质量阈值的匹配质量)最初所需的平均得分。在该示例中,匹配质量基于平局概率,可解等式qdraw(mAB,2σ2,β))=qdraw(mAB,0,β)来确定最初使一匹配被接受所需的均值差mAB。例如,在平局质量qdraw的情况下:
由此,为减少对寻求匹配的玩家的所有排列计算所有可能游戏结局的概率的运算,匹配模块可基于等式(118)来作出技能等级差的初始分析(例如,预过滤预期玩家配对),并从匹配分析中移除超过对技能等级的简单范围检查(例如,平均得分μ和/或平均得分差(例如mAB))的那些配对。
为创建对于玩家A的简单范围检查,如果任一方差σA增加或如果均值差的绝对值|μA-μB|增加,则以上等式(117)的平局质量度量q2减小。具体地,如果任一玩家的技能的不确定性增长,或者如果平均技能偏差增长,则匹配质量收缩。以此方式,从玩家B的观点来看:
且
由此,如果质量度量q2(mAB,σB 2,β)和q2(0,ζAB 2,β)中的任一个低于平局质量阈值,则匹配模块可排除该配对,因为这两个度量都限制了以上真实(但搜索成本较高)的匹配度量q2(mAB,ζAB 2,β)。更具体地,只要q2(mAB,σB 2,β)或q2(0,ζAB 2,β)大于诸如等式(119)所示的匹配质量度量,则匹配模块就不会排除对一玩家的潜在的好匹配。
等式(119)的范围检查过滤器可用任何适当的方式来实现。例如,可使用等式(120)、(121)和(122)的三种范围检查中的一种或多种来检查每一玩家A和B的均值μ和方差σ2:
如上所述,平局质量阈值q*的值可以是预定或确定的任何适当的值。
现在已经描述了本发明的某些说明性实施例,本领域的技术人员应当清楚,上述内容仅是说明性而非限制性的,其仅作为示例而提出。众多修改和其它说明性实施例在本领域的普通技术人员的范围之内,并且被认为落入本发明的范围之内。特别地,尽管以上示例是参考用高斯型来对先验和/或后验概率建模来描述的,但是可以理解,以上实施例可被扩展以允许玩家得分的任意分布,这可以是或不是独立的。在以上示例中,假设技能协方差矩阵是对角矩阵,即,联合技能分布是由每一因素的两个数字(均值和标准差)表示的分解高斯分布。在某些情况下,协方差矩阵可以使用低秩逼近来确定,使得∑的秩=d的值。对该操作的存储器要求是O(n·d),并且对更新技术中的所有操作的计算要求可以不大于O(n·d2)。对于较小的d值,这可以是可行的存储器和计算数量,并且后验的逼近可以用逼近(而非假设)的协方差矩阵来改进。这一系统能够充分利用技能之间的相关。例如,玩家小集团的所有成员可以获益于(或遭受)该小集团的单个成员的游戏结局。对协方差矩阵的低秩逼近可允许对玩家的可视化(例如,玩家地图),使得具有高度相关技能的玩家可被彼此接近地显示。
此外,尽管此处所提出的许多示例涉及方法操作或系统元件的具体组合,但是应当理解,这些操作和元件可以用其它方式来组合以实现相同的目标。仅结合一个实施例所讨论的操作、元件和特征并不旨在排除其它实施例中的类似角色。此外,在权利要求中使用诸如“第一”和“第二”等序数词来修饰一权利要求要素本身并不意味着一个权利要求要素相对于另一个的任何优先级、优先顺序或次序,也不意味着执行方法操作的时间次序,而是仅用作将具有特定名称的一个权利要求要素与具有相同名称(但使用序数词)的另一权利要求要素区分开来的标签,以便区分各权利要求要素。
Claims (20)
1.一种方法,包括:
a)接收包括表示与第一队伍相关联的分布的第一均值和第一方差的第一得分;
b)接收包括表示与第二队伍相关联的分布的第二均值和第二方差的第二得分;
c)至少部分地基于包括所述第一均值、所述第一方差、所述第二均值和所述第二方差的组中的至少一个,确定所述第一队伍和所述第二队伍之间的匹配质量;
d)确定一匹配质量阈值;
e)基于所述匹配质量和所述匹配质量阈值来将所述第一队伍与所述第二队伍匹配;以及
f)向所述第一队伍和/或所述第二队伍提供所述匹配的指示。
2.如权利要求1所述的方法,其特征在于,还包括从多个玩家均值和多个玩家方差中确定包括所述第一均值和所述第一方差的所述第一得分,每一玩家均值和玩家方差与所述第一队伍的多个玩家中的一个相关联。
3.如权利要求1所述的方法,其特征在于,确定匹配质量包括确定所述第一队伍和所述第二队伍之间的平局概率。
4.如权利要求3所述的方法,其特征在于,确定所述平局概率包括从所述平局概率中移除对固定平局余量的依赖性,并且所述平局概率至少基于一固定潜在得分方差参数。
5.如权利要求4所述的方法,其特征在于,确定所述匹配质量阈值包括至少基于约为零的得分均值差、约为初始化方差值的两倍的得分方差以及所述固定潜在得分方差参数来确定平局概率。
6.如权利要求4所述的方法,其特征在于,确定所述匹配质量阈值包括至少基于所述第一均值和所述第二均值之差、约为零的得分方差以及所述固定潜在得分方差参数来确定平局概率。
7.如权利要求1所述的方法,其特征在于,还包括基于所述第一均值、所述第二均值、所述第一方差和所述第二方差的范围比较来标识所述第二队伍。
8.如权利要求7所述的方法,其特征在于,所述范围比较包括确定所述第一均值是否小于所述第二均值μB与所述平局质量度量q*的倒数的对数减去所述第二方差σB 2的平方根之和
9.如权利要求7所述的方法,其特征在于,所述范围比较包括确定所述第一均值是否大于所述第二均值μB与所述平局质量度量q*的倒数的对数减去所述第二方差σB 2的平方根之差
10.如权利要求7所述的方法,其特征在于,所述范围比较包括确定所述第一方差σA是否小于所述平局质量度量q*的倒数的对数与所述第二方差σB 2之差
11.如权利要求1所述的方法,其特征在于,还包括基于所述第一均值与一保守等级指示符乘以所述第一方差的平方根之差来确定所述第一队伍的至少一个玩家的得分估算。
12.一种或多种包括至少一个计算机存储介质的计算机可读介质,所述一个或多个计算机可读介质包含当被实现时执行一种方法的计算机可读指令,所述方法包括:
a)接收第一队伍的一玩家的第一得分,所述第一得分包括第一均值和第一方差;
b)接收第二队伍的一玩家的第二得分,所述第二得分包括第二均值和第二方差;
c)确定所述第一队伍与所述第二队伍之间的期望得分间隙;
d)基于所述期望得分间隙与一匹配质量阈值的比较来将所述第一队伍与所述第二队伍匹配;以及
e)向所述第一队伍和/或所述第二队伍提供所述匹配的指示。
13.如权利要求12所述的计算机可读介质,其特征在于,确定所述期望得分间隙包括计算所述第一队伍的所述玩家的第一得分与所述第二队伍的所述玩家的第二得分之差。
14.如权利要求13所述的计算机可读介质,其特征在于,所述匹配质量阈值可以由用户来定义。
15.如权利要求12所述的计算机可读介质,其特征在于,将所述第一队伍与所述第二队伍匹配包括通过至少基于大约为零的得分均值差、约为初始化方差值的两倍的得分方差、以及一固定潜在得分方差参数确定平局概率来确定所述匹配质量阈值。
16.如权利要求12所述的方法,其特征在于,将所述第一队伍与所述第二队伍匹配包括通过至少基于所述第一均值与所述第二均值之差、约为零的得分方差以及一固定潜在得分方差参数确定平局概率来确定所述匹配质量阈值。
17.一种或多种包含计算机可执行组件的计算机可读介质,所述组件包括:
a)用于基于第一队伍与第二队伍之间的游戏的结局来更新所述第一队伍的第一得分和所述第二队伍的第二得分的装置,其中所述第一得分和所述第二得分中的每一个被建模为一分布;
b)用于基于所述第一得分、所述第三队伍的第三得分、以及一匹配质量阈值来将所述第一队伍与第三队伍匹配的装置;以及
c)用于向所述第一队伍和/或所述第三队伍提供所述匹配的指示的装置。
18.如权利要求17所述的计算机可读介质,其特征在于,还包括用于从可用于与所述第一队伍玩游戏的多个队伍中标识出所述第三队伍的装置。
19.如权利要求18所述的计算机可读介质,其特征在于,所述用于标识的装置包括用于基于对所述第三队伍的得分的范围检查来过滤所述多个队伍的装置。
20.如权利要求17所述的计算机可读介质,其特征在于,所述用于匹配的装置包括用于确定一游戏的结局为所述第一队伍和所述第三队伍之间的平局的概率的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US73907205P | 2005-11-21 | 2005-11-21 | |
US60/739,072 | 2005-11-21 | ||
US11/561,374 | 2006-11-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101313322A true CN101313322A (zh) | 2008-11-26 |
Family
ID=40101082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800432719A Pending CN101313322A (zh) | 2005-11-21 | 2006-11-21 | 队伍匹配 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101313322A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105144224A (zh) * | 2013-04-29 | 2015-12-09 | 思奇里兹股份有限公司 | 确定游戏技巧因子 |
CN107823887A (zh) * | 2017-10-25 | 2018-03-23 | 广州南瞻部洲互动娱乐有限公司 | 一种游戏对象匹配方法 |
CN108379846A (zh) * | 2018-03-16 | 2018-08-10 | 深圳冰川网络股份有限公司 | 一种针对生存类游戏的玩家在线匹配方法和系统 |
CN109011580A (zh) * | 2018-06-29 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 残局牌面获取方法、装置、计算机设备及存储介质 |
CN109152956A (zh) * | 2016-03-15 | 2019-01-04 | 思奇里兹股份有限公司 | 用于虚拟排名赛的同步模型 |
CN109126141A (zh) * | 2018-08-24 | 2019-01-04 | 苏州玩友时代科技股份有限公司 | 一种游戏系统内的人员匹配方法及系统 |
CN109745708A (zh) * | 2017-11-02 | 2019-05-14 | 北京金山安全软件有限公司 | 对手匹配方法及装置 |
CN110383324A (zh) * | 2017-04-06 | 2019-10-25 | 赫尔实验室有限公司 | 利用典型相关分析的对手移动显式预测 |
CN110772797A (zh) * | 2019-10-29 | 2020-02-11 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、服务器及可存储介质 |
CN111298401A (zh) * | 2020-02-24 | 2020-06-19 | 湖南大学 | 一种基于车联网的赛车娱乐竞赛系统 |
CN112805076A (zh) * | 2018-09-07 | 2021-05-14 | 威尔乌集团 | 用于玩家安排比赛的机器学习的信任度评分 |
CN113144610A (zh) * | 2021-03-02 | 2021-07-23 | 百果园技术(新加坡)有限公司 | 一种用户能力更新方法、装置、电子设备及存储介质 |
CN113298172A (zh) * | 2021-06-09 | 2021-08-24 | 山西智胜数字体育科技有限公司 | 游戏类别确定方法及装置、电子设备和存储介质 |
CN115089972A (zh) * | 2016-06-30 | 2022-09-23 | 索尼互动娱乐股份有限公司 | 自动人工智能(ai)个人助理法 |
CN115501620A (zh) * | 2022-09-21 | 2022-12-23 | 同济大学 | 一种用于优化百人四排在线竞技游戏中匹配方法 |
CN118059504A (zh) * | 2024-04-22 | 2024-05-24 | 北京邮电大学 | 一种基于胜率图的竞赛匹配系统及方法 |
-
2006
- 2006-11-21 CN CNA2006800432719A patent/CN101313322A/zh active Pending
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113499580A (zh) * | 2013-04-29 | 2021-10-15 | 思奇里兹平台股份有限公司 | 确定游戏技巧因子 |
CN105144224A (zh) * | 2013-04-29 | 2015-12-09 | 思奇里兹股份有限公司 | 确定游戏技巧因子 |
US11992757B2 (en) | 2016-03-15 | 2024-05-28 | Skillz Platform Inc. | Synchronization model for virtual tournaments |
CN109152956A (zh) * | 2016-03-15 | 2019-01-04 | 思奇里兹股份有限公司 | 用于虚拟排名赛的同步模型 |
US11376499B2 (en) | 2016-03-15 | 2022-07-05 | Skillz Platform, Inc. | Synchronization model for virtual tournaments |
CN115089972A (zh) * | 2016-06-30 | 2022-09-23 | 索尼互动娱乐股份有限公司 | 自动人工智能(ai)个人助理法 |
CN110383324B (zh) * | 2017-04-06 | 2023-08-25 | 赫尔实验室有限公司 | 预测移动的系统、非暂时性计算机可读介质和方法 |
CN110383324A (zh) * | 2017-04-06 | 2019-10-25 | 赫尔实验室有限公司 | 利用典型相关分析的对手移动显式预测 |
CN107823887A (zh) * | 2017-10-25 | 2018-03-23 | 广州南瞻部洲互动娱乐有限公司 | 一种游戏对象匹配方法 |
CN109745708A (zh) * | 2017-11-02 | 2019-05-14 | 北京金山安全软件有限公司 | 对手匹配方法及装置 |
CN108379846B (zh) * | 2018-03-16 | 2021-03-23 | 深圳冰川网络股份有限公司 | 一种针对生存类游戏的玩家在线匹配方法和系统 |
CN108379846A (zh) * | 2018-03-16 | 2018-08-10 | 深圳冰川网络股份有限公司 | 一种针对生存类游戏的玩家在线匹配方法和系统 |
CN109011580A (zh) * | 2018-06-29 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 残局牌面获取方法、装置、计算机设备及存储介质 |
CN109126141B (zh) * | 2018-08-24 | 2019-11-26 | 苏州玩友时代科技股份有限公司 | 一种游戏系统内的人员匹配方法及系统 |
CN109126141A (zh) * | 2018-08-24 | 2019-01-04 | 苏州玩友时代科技股份有限公司 | 一种游戏系统内的人员匹配方法及系统 |
CN112805076A (zh) * | 2018-09-07 | 2021-05-14 | 威尔乌集团 | 用于玩家安排比赛的机器学习的信任度评分 |
CN110772797B (zh) * | 2019-10-29 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、服务器及可存储介质 |
CN110772797A (zh) * | 2019-10-29 | 2020-02-11 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、服务器及可存储介质 |
CN111298401A (zh) * | 2020-02-24 | 2020-06-19 | 湖南大学 | 一种基于车联网的赛车娱乐竞赛系统 |
CN113144610A (zh) * | 2021-03-02 | 2021-07-23 | 百果园技术(新加坡)有限公司 | 一种用户能力更新方法、装置、电子设备及存储介质 |
CN113144610B (zh) * | 2021-03-02 | 2024-04-30 | 百果园技术(新加坡)有限公司 | 一种用户能力更新方法、装置、电子设备及存储介质 |
CN113298172A (zh) * | 2021-06-09 | 2021-08-24 | 山西智胜数字体育科技有限公司 | 游戏类别确定方法及装置、电子设备和存储介质 |
CN115501620A (zh) * | 2022-09-21 | 2022-12-23 | 同济大学 | 一种用于优化百人四排在线竞技游戏中匹配方法 |
CN118059504A (zh) * | 2024-04-22 | 2024-05-24 | 北京邮电大学 | 一种基于胜率图的竞赛匹配系统及方法 |
CN118059504B (zh) * | 2024-04-22 | 2024-08-27 | 北京邮电大学 | 一种基于胜率图的竞赛匹配系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101313322A (zh) | 队伍匹配 | |
CN101496051A (zh) | 带有部分信息的玩家排名 | |
US7376474B2 (en) | Bayesian scoring | |
US7846024B2 (en) | Team matching | |
US20120221129A1 (en) | Seeding in a skill scoring framework | |
Duffy et al. | Does observation of others affect learning in strategic environments? An experimental study | |
US20070112706A1 (en) | Handicapping in a Bayesian skill scoring framework | |
US6763338B2 (en) | Machine decisions based on preferential voting techniques | |
US20070192169A1 (en) | Reputation System | |
Menke et al. | A Bradley–Terry artificial neural network model for individual ratings in group competitions | |
Yuan et al. | A mixture-of-modelers approach to forecasting NCAA tournament outcomes | |
Glickman et al. | A stochastic rank ordered logit model for rating multi-competitor games and sports | |
WO2020135642A1 (zh) | 一种基于生成对抗网络的模型训练方法及设备 | |
CN111265878A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
Dehpanah et al. | The evaluation of rating systems in online free-for-all games | |
Deng et al. | A study of prisoner’s dilemma game model with incomplete information | |
Bennett et al. | Learning consensus opinion: mining data from a labeling game | |
Kocsis et al. | Universal parameter optimisation in games based on SPSA | |
Tran | Predicting NBA games with matrix factorization | |
Ryzhov et al. | May the best man win: simulation optimization for match-making in e-sports | |
Kocsis et al. | RSPSA: enhanced parameter optimization in games | |
Duarte | Utilizing machine learning techniques in football prediction | |
Groves et al. | Exploiting Transitivity for Top-k Selection with Score-Based Dueling Bandits | |
Sleeuwaert | Evaluation of The Current State of Football Match Outcome Prediction Models | |
Vatsvåg | Analysis of injury time in a football game using machine learning techniques |
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: 20081126 |