CN112292699A - 确定执行设备的动作选择方针 - Google Patents

确定执行设备的动作选择方针 Download PDF

Info

Publication number
CN112292699A
CN112292699A CN201980040188.3A CN201980040188A CN112292699A CN 112292699 A CN112292699 A CN 112292699A CN 201980040188 A CN201980040188 A CN 201980040188A CN 112292699 A CN112292699 A CN 112292699A
Authority
CN
China
Prior art keywords
action
current state
reward
iteration
state
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
CN201980040188.3A
Other languages
English (en)
Inventor
李辉
胡开亮
宋乐
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.)
Alibaba Group Holding Ltd
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
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 Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Publication of CN112292699A publication Critical patent/CN112292699A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/3241Security aspects of a gaming system, e.g. detecting cheating, device integrity, surveillance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • 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
    • 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/3262Player actions which determine the course of the game, e.g. selecting a prize to be won, outcome to be achieved, game to be played
    • 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
    • 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/3286Type of games
    • 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/3286Type of games
    • G07F17/3293Card games, e.g. poker, canasta, black jack

Landscapes

  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本文公开了用于生成执行设备的动作选择方针(ASP)的方法、***和装置。一种方法包括,在当前迭代中,基于在当前状态下的动作各自的第一奖励以及当前迭代中当前状态的动作选择方针,计算当前状态的第一奖励;基于该动作的对应第一奖励与当前状态的第一奖励之差,计算当前状态下每个动作的累对应计遗憾值;计算下一次迭代中当前状态的动作选择方针;基于动作的对应第一奖励和下一次迭代中当前状态的动作选择方针,计算当前状态的第二奖励;以及基于当前状态的第二奖励,确定下一次迭代中前一状态的动作选择方针。

Description

确定执行设备的动作选择方针
技术领域
本文涉及确定执行设备的动作选择方针,以在包括执行设备以及一个或多个其他设备的环境中完成任务。
背景技术
两个或更多个参与方之间的策略交互可以通过涉及两个或更多个参与方(也称为玩家)的博弈来建模。在涉及两个或更多个玩家的不完全信息博弈(imperfectinformation games,IIG)中,玩家在做出决策之前只能部分地了解其对手。这类似于现实场景,例如贸易、交通路线规划和公开拍卖。许多现实生活场景可以表示为IIG,例如不同公司之间的商业竞争、拍卖场景中的竞标关系、欺诈方和反欺诈方之间的博弈关系。
求解IIG的方法具有很大的经济和社会效益。由于信息隐藏,因此玩家必须在对其对手信息不确定的情况下进行推理,并且玩家还需要采取行动以利用其对手对其自己的信息的不确定的优势。
发明内容
本文描述了用于确定执行设备的动作选择方针的技术,以在包括执行设备以及一个或多个其他设备的环境中完成任务,例如,在执行设备与一个或多个其他设备之间进行策略交互。例如,执行设备可以执行一种计算机实现的用于寻求执行设备与一个或多个其他设备之间的博弈的纳什均衡(Nash equilibrium)的方法。在一些实施例中,这些技术可以包括执行快速异步反事实遗憾最小化(CFR)算法以求解不完全信息博弈。在一些实施例中,该技术可以降低计算复杂性和方差,同时提高CFR算法的收敛速度。
本文还描述了耦接到一个或多个处理器并且其上存储有指令的一个或多个非暂态计算机可读存储介质,当所述指令由所述一个或多个处理器执行时,所述指令将促使所述一个或多个处理器按照本文提供的方法的实施例执行操作。
本文还描述了用于实现本文所述的方法的***。该***包括一个或多个处理器以及耦接到所述一个或多个处理器并且其上存储有指令的计算机可读存储介质,当所述指令由所述一个或多个处理器执行时,所述指令将促使所述一个或多个处理器按照本文提供的方法的实施例执行操作。
根据本文所述的方法、***和计算机介质可包括本文描述的各个方面和特征的任何组合。也就是说,根据本文所述的方法不限于本文具体描述的各个方面和特征的组合,而是还包括所描述的各个方面和特征的任何组合。
在附图和以下描述中阐述了本公开的一个或多个实施例的细节。根据说明书和附图以及权利要求,本文的其他特征和优点将显现。
附图说明
图1是示出根据本文的实施例的单牌扑克(one-card poker)中的部分博弈树的示例的图示。
图2是示出根据本文的实施例的应用于部分博弈树的原始CFR算法和快速异步CFR算法的示例的图示。
图3是根据本文实施例的执行快速异步CFR以在两个或更多个参与方之间的策略交互中进行策略搜索的处理的示例的流程图。
图4描绘了示出根据本文的实施例的计算机实现的用于提供与所述算法、方法、功能、处理、流程和过程相关联的计算功能的***的示例的框图。
图5是根据本文的实施例的装置的模块的示例的图示。
不同的附图中相同的附图标记和名称表示相同的元件。
具体实施方式
本文描述了用于确定执行设备的动作选择方针的技术,以在包括执行设备以及一个或多个其他设备的环境中完成任务,例如,在执行设备与一个或多个其他设备之间进行策略交互。例如,执行设备可以执行一种计算机实现的用于寻求执行设备与一个或多个其他设备之间的博弈的纳什均衡的方法。在一些实施例中,这些技术可以包括执行快速异步反事实遗憾最小化(CFR)算法以求解不完全信息博弈。在一些实施例中,该技术可以降低计算复杂性和方差,同时提高CFR算法的收敛速度。
IIG可以表示一个或多个现实场景,诸如资源分配、产品/服务推荐、网络攻击预测和/或预防、交通路线规划、欺诈管理,其中涉及两个或更多个参与方(也称为玩家),且每个参与方可以具有关于另一参与方的决策的不完整或不完全信息。
纳什均衡是涉及两个或更多个玩家的IIG的典型解法。反事实遗憾最小化(CFR)是一种旨在近似找到大型博弈的纳什均衡的算法。CFR试图最小化整体的反事实遗憾。事实证明,所有迭代中的多个策略的平均值会收敛到纳什均衡。在求解博弈时,原始形式的CFR(也称为原始CFR、标准CFR、普通CFR或简称CFR)在每次迭代中遍历整个博弈树。因此,原始CFR需要大容量存储器处理大型零和扩展式博弈,例如单挑无限注德州扑克。在一些情况下,原始CFR可能无法用有限存储器处理大型博弈。
引入蒙特卡洛CFR(Monte Carlo CFR,MCCFR)以使反事实遗憾最小化。MCCFR可以计算反事实值(counterfactual value)的无偏估计,并避免遍历整个博弈树。由于在每次迭代中仅访问所有信息集的子集,因此MCCFR所需的存储空间比原始CFR少。
可以使用结果采样(outcome sampling)算法或外部采样(external sampling)算法来执行MCCFR。MCCFR中的结果采样算法的方差大,并且难以在较少的迭代步骤中收敛到近似纳什均衡解。MCCFR中的外部采样算法的方差比结果采样算法的方差小,但该方法呈现与CFR类似的缺点。当博弈树很大时,它需要非常大的存储空间,并且不能扩展到复杂的大规模IIG。
在一些实施例中,具有玩家有限集合N={0,1,...,n-1}的扩展式博弈可以表示如下。定义hv i为IIG中玩家i的隐藏变量。例如,在扑克游戏中,hv i可以指玩家i的私人牌。H指的是历史的有限集合。H的每个成员
Figure BDA0002837531050000041
表示可能的历史(或状态),该历史包括每个玩家的隐藏变量和玩家所采取的L个动作(包括机会)。对于玩家i,h也可以表示为
Figure BDA0002837531050000042
其中
Figure BDA0002837531050000043
指的是对手的隐藏变量。空序列
Figure BDA0002837531050000044
是H的成员。表达式
Figure BDA0002837531050000045
表示hj是h的前提(prefix),其中
Figure BDA0002837531050000046
且0<L’<L。
Figure BDA0002837531050000047
表示终点历史,并且任何成员z∈Z不是任何其他序列的前提。A(h)={a:ha∈H}是非终点历史h∈H\Z之后的可用动作集合。玩家函数P将N∪{c}的成员分配给每个非终点历史,其中c表示机会玩家标识符(ID),其通常可以是例如-1。P(h)是在历史h之后采取动作的玩家。
历史{h∈H:P(h)=i}的Ii是玩家i的信息分划。集合Ii∈Ii是玩家i的信息集。Ii(h)指的是状态h下的信息集Ii。在一些实施例中,Ii只能记住玩家i观察到的信息,包括玩家i的隐藏变量和公开动作。因此,Ii表示IIG中的序列,即hv i a0a1...aL-1。在一些实施例中,对于Ii∈Ii和对于任何h∈Ii,集合A(h)可以由A(Ii)表示,并且玩家P(h)由P(Ii)表示。对于每个玩家i∈N,效用函数ui(z)定义终点状态z的收益。下面将讨论这些符号和定义的更详细解释并且将包括图1中所示的示例。
图1是根据本文的实施例示出的单牌扑克中的部分博弈树102和部分博弈树104的示例的图100。单牌扑克是双玩家IIG扑克。单牌扑克是扩展式博弈的示例。游戏规则定义如下。从一副X张牌中给每个玩家发一张牌。第一玩家可以过牌或下注。如果第一玩家下注,则第二玩家可以跟注或弃牌。如果第一玩家过牌,则第二玩家可以过牌或下注。如果第二玩家下注,则第一玩家可以弃牌或跟注。游戏在两次过牌、跟注或弃牌的情况下结束。弃牌玩家将损失1个筹码。如果游戏在两次过牌的情况下结束,则牌较高的玩家赢得1个筹码。如果游戏在跟注的情况下结束,则牌较高的玩家赢得2个筹码。
博弈树是有向图。博弈树的节点表示博弈中的位置(或玩家状态),并且博弈树的边可以表示博弈的玩家的行动或动作。在图1中,zi表示终点节点,表示终点状态,hi表示非终点节点。部分博弈树102和104各自具有表示机会的根节点h0。在第一部分博弈树102中存在19个不同的节点,对应于左侧树中的9个非终点节点hi(包括机会h0)和10个终点节点zi
在第一部分博弈树102中,如左子树中的“0:Q 1:J”所示,将(Q,J)发给两个玩家(玩家0和玩家1),以及如右子树中的“0:Q 1:K”所示,将(Q,K)发给两个玩家。
从根节点到每个节点的轨迹是动作的历史。动作由博弈树的边(用箭头表示)旁边的字母(例如,F、C、P和B)或表达式(例如,“0:Q 1:J”)表示。字母F、C、P、B分别表示弃牌、跟注、过牌和下注。
在扩展式博弈中,hi指的是动作的历史。例如,如第一部分博弈树102中所示,h3包括动作0:Q 1:J和P。h7包括动作0:Q 1:J、P和B。h8包括动作0:Q 1:K、P和B。在第一部分博弈树102中,
Figure BDA0002837531050000051
即h3是h7的前提。A(h3)={P,B}表示非终点历史h7之后的可用动作的集合是P和B。P(h3)=1表示在历史h3之后采取动作的玩家是玩家1。
在该IIG中,玩家1的私人牌对于玩家0是不可见的,因此对于玩家0来说h7和h8实际上是相同的。信息集可用于表示这些不可区分状态的集合。类似地,h1和h2在同一信息集中。对于右部分博弈树104,h′3和h′5在相同的信息集中;h′4和h′6在相同的信息集中。
通常,任何Ii∈I只能记住玩家i观察到的信息,包括玩家i的隐藏变量和公开动作。例如,如第一部分博弈树102中所示,h7和h8的信息集表示0:Q、P和B的序列。由于在该IIG中玩家0不区分h7和h8,如果I0是h7和h8的信息集,则I0=I0(h7)=I0(h8)。
策略分布σ={σii∈Σi,i∈N}是所有玩家策略的集合,其中Σi是玩家i的所有可能策略的集合。σ-i指的是除了玩家i之外的所有玩家的策略。对于玩家i∈N,策略σi(Ii)是函数,它将A(Ii)上的动作分布分配给信息集Ii。σi(a|h)表示在状态h由玩家i∈N∪{c}采取动作a的概率。在IIG中,如果两个或更多个状态具有相同的信息集,则这两个或更多个状态具有相同的策略。即,
Figure BDA0002837531050000061
Ii=Ii(h1)=Ii(h2),σi(Ii)=σi(h1)=σi(h2),σi(a|Ii)=σi(a|h1)=σi(a|h2)。例如,I0是h7和h8的信息集,则I0=I0(h7)=I0(h8),σ0(I0)=σ0(h7)=σ0(h8),σ0(a|I0)=σ0(a|h7)=σ0(a|h8)。在图1中,相同的阴影(灰色阴影除外)被用来表示在对应状态下设置的相同信息。
对于玩家i,策略分布σ的预期博弈效用被表示为
Figure BDA0002837531050000062
其是所有可能终点节点的预期收益。给定固定策略分布σ-i,玩家i的针对
Figure BDA0002837531050000063
实现收益最大化的任何策略
Figure BDA0002837531050000064
是最佳回应。对于双玩家的扩展式博弈,纳什均衡是策略分布
Figure BDA0002837531050000065
以使每个玩家的策略是对对手的最佳回应。∈纳什均衡是纳什均衡的近似,其策略分布σ*满足:
Figure BDA0002837531050000066
Figure BDA0002837531050000067
策略σi的可利用性可以定义为
Figure BDA0002837531050000068
如果∈ii)=0,则策略是不可利用的。在像扑克这样的大型双玩家零和游戏中,
Figure BDA0002837531050000069
很难计算。然而,如果玩家交换他们的位置,则一对游戏的值为零,即
Figure BDA00028375310500000610
策略分布σ的可利用性可以定义为
Figure BDA00028375310500000611
Figure BDA0002837531050000071
对于诸如CFR的迭代方法,σt指的是第t次迭代的策略分布。如果玩家根据σ采取动作,则历史h的状态到达概率可以用πσ(h)表示。对于空序列,πσ(φ)=1。可以根据每个玩家的贡献将到达概率分解为
Figure BDA0002837531050000072
其中
Figure BDA0002837531050000073
信息集Ii的到达概率(也称为信息集到达概率)可以定义为
Figure BDA0002837531050000074
如果
Figure BDA0002837531050000075
从状态h'到h的间隔状态到达概率可以定义为πσ(h’,h),则πσ(h’,h)=πσ(h)/πσ(h’)。到达概率
Figure BDA0002837531050000076
Figure BDA0002837531050000077
可以被类似地定义。
在大型零和IIG中,CFR被证明是用于计算纳什均衡的有效方法。可以证明,一个玩家的状态到达概率与对手的隐藏变量的后验概率成比例,即,
Figure BDA0002837531050000078
其中hv i和Ii表示特定h。
对于玩家i和策略分布σ,状态h下的反事实值(counterfactual value,CFV)vi σ(h)可以定义为
Figure BDA0002837531050000079
其中
Figure BDA00028375310500000710
是玩家i相对于对手的隐藏变量的近似后验分布的预期奖励。于是,信息集Ii的反事实值为
Figure BDA00028375310500000711
采取动作a的动作反事实值可以表示为vi σ(a|h)=vi σ(ha),并且采取该动作的遗憾是
ri σ(a|h)=vi σ(a|h)-vi σ(h) (2)。
类似地,信息集Ii的CFV可以定义为
Figure BDA00028375310500000712
而其动作a的CFV为
Figure BDA00028375310500000713
给定信息集Ii的动作a的遗憾可以定义为
Figure BDA00028375310500000714
其中,
Figure BDA0002837531050000081
注意,在不完全信息博弈中,
Figure BDA0002837531050000082
然后,可以根据式(4)计算动作a在T次迭代之后的累计遗憾:
Figure BDA0002837531050000083
其中Ri 0(a|Ii)=0。定义Ri T,+(a|Ii)=max(Ri T(a|Ii),0),可以例如基于遗憾匹配(RM),根据如下式(5)更新T+1迭代处的当前策略(或迭代策略或行为策略):
Figure BDA0002837531050000084
从迭代1到T的平均策略
Figure BDA0002837531050000085
可以定义为:
Figure BDA0002837531050000086
其中,
Figure BDA0002837531050000087
表示在第t次迭代时Ii的信息集到达概率,并用于对相应的当前策略
Figure BDA0002837531050000088
进行加权。
如果在迭代t中
Figure BDA0002837531050000089
被定义为附加分子,则平均策略
Figure BDA00028375310500000810
的累计分子可以定义为
Figure BDA00028375310500000811
其中S0(a|Ii)=0。
在一些实施例中,如式(1)定义的原始CFR中的CFV可以改写为
Figure BDA00028375310500000812
即递归地对博弈树从叶节点到根节点进行加权求和。
在一些实施例中,在快速异步CFR中,不同于如式(9)定义的原始CFR中的CFV,在根据式(5)获得概率
Figure BDA00028375310500000813
后,给定信息集Ii,CFV可以基于概率
Figure BDA00028375310500000814
被更新,以加速CFR算法的收敛。例如,虚拟反事实值(fictitious counterfactual value,FCFV),
Figure BDA00028375310500000815
可以被定义为:
Figure BDA0002837531050000091
对于式(9)中的FCFV,用
Figure BDA0002837531050000092
替换
Figure BDA0002837531050000093
即,
Figure BDA0002837531050000094
用于使用信息集Ii计算导致当前状态的在前一状态下的动作a的
Figure BDA0002837531050000095
在一些实施例中,只有子节点全部被访问的节点的反事实值才可以被FCFV替换。图2示出了与博弈树中节点的原始CFV对比,FCFV的示例性更新处理。
在一些实施例中,可以在例如根据式(5)计算出Ii的迭代策略
Figure BDA0002837531050000096
后,立即计算如式(9)定义的FCFV
Figure BDA0002837531050000097
之后,将
Figure BDA0002837531050000098
即将FCFV用作CFV。因此,存储器无需存储
Figure BDA0002837531050000099
这样,存储器的效率和快速异步CFR算法的空间复杂度可比得上原始CFR算法。
在求解博弈时,原始CFR在每次迭代中遍历整个博弈树。因此,原始CFR可能无法用有限的存储器处理大型博弈。引入蒙特卡洛CFR(MCCFR)以使反事实遗憾最小化。MCCFR可以计算反事实值的无偏估计并避免遍历整个博弈树。由于在每次迭代中仅访问所有信息集的子集,因此MCCFR所需的存储空间比原始CFR少。
例如,定义Q={Q1,Q2,...,Qm},其中Qj∈Z是每次迭代中的采样终点历史的块,使得Qj涵盖集合Z。通常,根据指定的采样方案,不同的Qj可能会重叠。可以使用几种采样方案。
图2是示出根据本文实施例的分别应用于部分博弈树的原始CFR算法和快速异步CFR算法的示例200a和200b的图示。在示例200a和200b两者中,部分博弈树包括节点0、1、2……7,其中节点0是根节点,节点6和7是叶节点。节点i对应于信息集Ii
示例200a示出了原始CFV算法的CFV更新处理。在每次迭代中,原始CFR需要维护当前策略,并使用当前策略生成CFV(例如,根据式(1)或(9)),并使用遗憾匹配算法(例如,根据式(5))计算下一次迭代的当前策略。所有迭代处理的当前策略的加权平均值可以收敛到纳什均衡。
示例200b示出了快速异步CFR算法的FCFV更新处理。在一些实施例中,在每次迭代中,快速异步CFR算法可以遍历整个博弈树,并且使用自下而上的处理来更新树的每个节点的CFV。例如,如200b所示,由于节点6和节点7是叶节点,因此其CFV可以被认为是其各自的FCFV。在当前迭代(例如,第(t)次迭代)中,对于节点5,可以基于策略σt来计算节点5的CFVvt(I5),例如,根据vt(I5)=∑avt(a|I5t(a|I5)v(a6|I5t(a6|I5)+v(a7|I5t(a7|I5),其中,vt(a6|I5)是当前迭代中导致节点6的动作a6的CFV,且vt(a7|I5)是导致节点7的动作a7的CFV。
可以基于节点5的CFVvt(I5)计算当前迭代中节点5的遗憾值。例如,第(t)次迭代中在节点5的状态下的动作a6的迭代遗憾值,可以根据rt(a6|I5)=vt(a6|I5)-vt(I5)来计算。t次迭代后在节点5的状态下的动作a6的累计遗憾可以根据式(4)来计算,例如
Figure BDA0002837531050000101
类似地,在节点5的状态下的动作a7的迭代遗憾值可以根据rt(a7|I5)=vt(a6|I5)-vt(I5)来计算。在t次迭代后在节点5的状态下的动作a7的累计遗憾可以根据式(4)来计算,例如
Figure BDA0002837531050000102
基于累计遗憾值,可以计算在节点5处两个动作a6和a7的迭代策略,例如,根据式(5)中示出的遗憾匹配。在一些实施例中,在节点5处两个动作a6和a7的迭代策略(例如,式(5)中的
Figure BDA0002837531050000103
Figure BDA0002837531050000104
)可以表示为作为迭代策略的ft+1(a6|I5)和ft+1(a7|I5),并且可以用作节点5处的策略,用于在下一次迭代(例如,第(t+1)次迭代)中遍历博弈树。迭代策略可以表示在节点5处分别导致节点6和节点7的两个动作a6和a7中每个动作的概率。节点5处从迭代1到迭代t的平均策略
Figure BDA0002837531050000111
可以基于迭代策略ft+1(a6|I5)和ft+1(a7|I5)进行计算,例如,根据式(6)。如果满足收敛条件,则可以将平均策略
Figure BDA0002837531050000112
输出,以近似纳什均衡,并控制该参与方在节点5处的动作。
第(t)次迭代中节点5的FCFV
Figure BDA0002837531050000113
可以基于迭代策略ft+1来计算,例如,根据
Figure BDA0002837531050000114
Figure BDA0002837531050000115
节点5的FCFV
Figure BDA0002837531050000116
可用于替换节点5的CFV,例如当前迭代中在节点5的父节点(即节点1)处导致节点5的动作a5的CFV是vt(a5|I5),即
Figure BDA0002837531050000117
例如,用于计算节点5的父节点(即节点1)的CFV,如200b中所示。
例如,如200b所示,节点1具有分别导致节点4和节点5的两个动作(表示为a4和a5)。由于节点4是叶节点,因此节点4的CFV是导致节点4的动作a4的CFV。相应地,对于节点1,可以基于策略σt来计算节点1的CFVvt(I1),例如,根据vt(I1)=∑avt(a|I1t(a|I1)v(a4|I1t(a4|I1)+v(a5|I1t(a5|I1),其中,vt(a4|I1)是当前迭代中导致节点4的动作a4的CFV,且vt(a5|I1)是导致节点5的动作a5的CFV,后者被更新为如上所述计算出的节点5的FCFV。
第(t)次迭代中在节点1的状态下的动作a4的迭代遗憾值可以根据rt(a4|I1)=vt(a4|I1)-vt(I1)来计算。t次迭代后在节点1的状态下的动作a4的累计遗憾可以根据式(4)来计算,例如
Figure BDA0002837531050000118
Figure BDA0002837531050000119
类似地,在节点1的状态下的动作a5的迭代遗憾值可以根据rt(a5|I1)=vt(a5|I1)-vt(I1)来计算。在t次迭代后在节点1的状态下的动作a5的累计遗憾可以根据式(4)来计算,例如
Figure BDA00028375310500001110
基于节点1的遗憾值,可以计算下一次迭代中节点1处两个动作a4和a5的的迭代策略(表示为ft+1(a4|I1)和ft+1(a5|I1)),例如,根据式(5)中示出的遗憾匹配。迭代策略可以表示在节点1处分别导致节点4和节点5的两个动作a4和a5中每个动作的概率。节点1处的迭代策略可用于在下一次迭代(第(t+1)次迭代)中在节点1处遍历博弈树。节点1处从迭代1到迭代t的平均策略
Figure BDA0002837531050000121
可以基于迭代策略ft+1(a4|I1)和ft+1(a5|I1)进行计算,例如,根据式(6)。如果满足收敛条件,则可以将平均策略
Figure BDA0002837531050000122
输出,以近似纳什均衡,并控制该参与方在节点1处的动作。
节点1的FCFV
Figure BDA0002837531050000123
可以基于下一次迭代中的迭代策略ft+1来计算,例如,根据v(a4|I1)ft+1(a4|I1)+v(a5|I1)ft+1(a5|I1)。节点1的FCFV
Figure BDA0002837531050000124
可用于替换节点1的CFV,例如当前迭代中从节点1的父节点(即节点0)导致节点1的动作a1的CFV是vt(a1|I0),即
Figure BDA0002837531050000125
例如,用于计算节点1的父节点(即节点0)的CFV,如200b中所示。
上述用于计算博弈树的节点的FCFV的自下而上的处理可以继续进行,直到到达根节点为止。在一些实施例中,可以例如通过执行原始CFR、MCCFR或CFR算法的任何其他变型,用节点的FCFV替换其各自的CFV,以确定动作选择方针(例如,策略)。
图3是根据本文的实施例的用于执行快速异步反事实遗憾最小化(CFR)以确定软件应用的动作选择方针的处理的示例的流程图。处理300可以是上述关于图2的快速异步CFR算法的示例。
在一些实施例中,处理300可以以迭代的方式来执行,例如,通过执行两次或更多次迭代来执行。在一些实施例中,处理300可用于自动控制、机器人或任何其他涉及动作选择的应用。在一些实施例中,执行设备可以执行处理300,以生成用于在包括执行设备以及一个或多个其他设备的环境中完成任务(例如寻找纳什均衡)的动作选择方针(例如策略)。在一些实施例中,执行设备可以执行处理300以根据动作选择方针控制执行设备的操作。
在一些实施例中,执行设备可以包括数据处理装置,例如位于一个或多个位置并根据本文经过适当编程的,由一个或多个电脑组成的***。例如,图4的计算机***400,经过适当编程,可以执行处理300。执行设备可以与执行方或玩家相关联。执行方或玩家以及一个或多个其他参与方(例如,与一个或多个其他设备相关联的一个或多个其他参与方)可以是环境中的参与者或玩家,例如,用于在执行方和一个或多个其他方之间的策略交互中进行策略搜索。
在一些实施例中,环境可以通过涉及两个或更多个玩家的不完全信息博弈(IIG)来建模。在一些实施例中,可以执行处理300以求解IIG,例如,由受到应用程序支持的执行方来执行。IIG可以表示一个或多个涉及两个或两个以上参与方的现实场景,例如资源分配、产品/服务推荐、网络攻击预测和/或预防、交通路线规划、欺诈管理等,各参与方可能对另一参与方的决策有不完整或不完全的信息。例如,IIG可以表示至少涉及第一玩家和第二玩家的协作产品服务推荐服务。第一玩家可以是,例如,具有客户(或用户)信息、产品和服务信息、客户的购买历史等的在线零售商。第二玩家可以是,例如,具有客户的社交网络数据的社交网络平台,拥有客户的财务信息的银行或其他金融机构、汽车经销商或在预测和向该客户推荐产品和服务时可能拥有客户偏好、需求、财务状况、位置等客户信息的任何其他参与方。第一玩家和第二玩家可各自拥有该玩家不想与其他人共享的专有数据。第二玩家只能在不同时间向第一玩家提供部分信息。因此,第一玩家只能限制访问第二玩家的信息。在一些实施例中,可以执行处理300以向具有第二参与方的有限信息的参与方作出推荐,利用有限信息规划路线。
在302,在第一次迭代(即第t=1迭代)中初始化动作选择方针(例如策略
Figure BDA0002837531050000131
)。在一些实施例中,动作选择方针可以包括,或以其他方式指定,执行设备(例如执行处理300的执行设备的设备)从当前状态(例如状态i)下的多个可能动作中选择一个动作(例如aj)的对应概率(例如,
Figure BDA0002837531050000141
)。当前状态是由执行设备在前一状态下采取的前一动作导致的,并且当执行设备在当前状态下时,多个可能动作中的每个动作如果被执行设备所执行,将导致下一对应状态。在一些实施例中,状态可以由表示环境的博弈树的节点(例如,具有相应信息集的200b中所示的节点0至7)表示,并且一个状态(例如200b中所示的节点5)下的多个可能动作可以包含导致各自的下一状态(例如200b中所示的节点3和节点7)的该状态的多个动作(例如200b中所示的动作a3和a7)。如200b所示,执行设备的状态(例如节点5)是由执行设备在前一状态(例如节点1)下采取的前一动作a5导致的,并且当执行设备在当前状态(例如节点5)下时,多个可能动作(例如动作a6和a7)中的每个动作如果被执行设备所执行,将导致下一对应状态(例如节点6和7)。
在一些实施例中,例如,可以基于现有策略、均匀随机策略(例如,基于均匀概率分布的策略)或另一策略(例如,基于不同概率分布的策略)来初始化策略。例如,如果***从现有CFR方法(例如,原始CFR或MCCFR方法)热启动,则可以根据现有策略分布初始化迭代策略,以克隆现有遗憾和策略。
在304,确定是否满足收敛条件。收敛条件可以用于确定是继续还是终止迭代。在一些实施例中,收敛条件可以基于策略σ的可利用性。根据可利用性的定义,可利用性应大于或等于0。越小的可利用性表明越好的策略。也就是,在足够的迭代之后,收敛策略的可利用性应该接近0。例如,在扑克中,当可利用性小于1时,时间平均策略被视为良好的策略,并确定满足收敛条件。在一些实施例中,收敛条件可以基于预定次数的迭代。例如,在小型博弈中,迭代可以由可利用性容易地确定。也就是,如果可利用性足够小,则处理300可以终止。在大型博弈中,可利用性是难以识别的,典型地,可以指定用于迭代的较大参数。在每次迭代之后,可以获得新策略分布,其优于旧策略分布。例如,在大型博弈中,处理300可以在足够次数的迭代之后终止。
如果满足收敛条件,则不需要更多迭代。处理300进行至322,根据当前迭代中的动作选择方针控制执行设备的操作。如果收敛条件没有得到满足,则t加1,处理300进行至下一次迭代,其中t>1。
在当前迭代(例如第t次迭代)中,对于执行设备在当前状态下的多个可能动作中的每个动作,在305,获得当前迭代中的当前状态的动作选择方针(例如策略
Figure BDA0002837531050000151
)。在一些实施例中,在前一次迭代中获得当前迭代中当前状态的动作选择方针(例如策略
Figure BDA0002837531050000152
),例如,根据式(5)。
在306,获得当前状态下的每个动作的对应第一奖励。在一些实施例中,每个动作的对应第一奖励表示该动作带来的有助于完成任务的收益。例如,每个动作的第一奖励可以是每个动作的CFV。在一些实施例中,获得当前状态下每个动作的对应第一奖励包括通过基于前一次迭代中当前状态的动作选择方针(例如策略
Figure BDA0002837531050000153
)遍历代表环境的博弈树,获得当前状态下每个动作的对应第一奖励。
在一些实施例中,处理300的每次迭代可包括用于更新状态的第一奖励的自下而上的处理。例如,处理300可从终点状态(例如200b中所示的叶节点6和节点7)开始,向上移动至初始状态(例如200b中所示的根节点0)。在一些实施例中,对于终点节点,终点状态下的每个动作的对应第一奖励可以是该终点状态的第一奖励(例如终点状态z的效用函数ui(z)或收益),因为该终点状态不再具有导致任何下一状态的动作。
在308,基于所述动作各自的第一奖励和当前迭代中当前状态的动作选择方针,计算当前状态的第一奖励。在一些实施例中,当前状态的第一奖励表示当前状态带来的有助于完成任务的收益。例如,当前状态的第一奖励可以是当前状态的CFV。
在一些实施例中,基于所述动作各自的第一奖励和当前迭代中当前状态的动作选择方针,计算当前状态(例如,非终点状态)的第一奖励,包括,基于经当前迭代中在当前状态下选择动作的对应概率加权的所述动作各自的第一奖励之和,计算当前状态的第一奖励,例如,根据式(1)或式(8)。
例如,如200b所示,可以基于动作a6的第一奖励(例如动作a6的CFV,v(a6|I5))、动作a7的第一奖励(例如动作a7的CFV,v(a4|I5))以及当前迭代中当前状态的动作选择方针σt(a|I5),例如当前迭代中选择所述动作的概率,来计算当前状态的第一奖励(例如节点5的CFV,v(I5)),例如,根据vt(I5)=∑avt(a|I5t(a|I5)=v(a6|I5)σt(a6|I5)v(a7|I5t(a7|I5)。
在310,基于该动作的对应第一奖励和当前状态的第一奖励之差,计算多个可能动作中每个动作的对应遗憾值。在一些实施例中,执行设备在一个状态下的动作的遗憾值表示该执行设备在该状态下采取该动作后的收益或效用与该执行设备在该状态下(不采取该动作)的收益或效用之差。在一些实施例中,对应遗憾值可以被称为当前迭代中的迭代遗憾值。
在一些实施例中,基于前一次迭代中在当前状态下的每个动作的对应累计遗憾值和当前迭代中在当前状态下的每个动作的对应迭代遗憾值,来计算当前迭代中在当前状态下的每个动作的对应累计遗憾值,例如,根据式(4)。
例如,如200b所示,第(t)次迭代中在节点5的状态下的动作a6的迭代遗憾值可以根据rt(a6|I5)=vt(a6|I5)-vt(I5)来计算。t次迭代后在节点5的状态下的动作a6的累计遗憾可以根据式(4)来计算,例如
Figure BDA0002837531050000161
类似地,在节点5的状态下的动作a7的迭代遗憾值可以根据rt(a7|I5)=vt(a6|I5)-vt(I5)来计算。在t次迭代后在节点5的状态下的动作a7的累计遗憾可以根据式(4)来计算,例如
Figure BDA0002837531050000162
在312,基于当前迭代中当前状态下的每个动作的对应累计遗憾值,计算下一次迭代中当前状态的动作选择方针。下一次迭代中当前状态的动作选择方针可以用于在下一次迭代中遍历博弈树。在一些实施例中,不仅基于当前迭代中当前状态下每个动作的对应迭代遗憾值,还基于当前迭代之前的迭代中当前状态下的每个动作的迭代遗憾值(例如,前一次迭代中当前状态下的每个动作的对应累计遗憾值,如式(5)所示),来计算当前迭代中当前状态的迭代动作选择方针。
例如,如关于200b所述,下一次迭代(例如第(t+1)次迭代)中节点5处的两个动作a6和a7的动作选择方针可以表示为ft+1(a6|I5)和ft+1(a7|I5)。所述策略可以表示在节点5处分别导致节点6和节点7的两个动作a6和a7中每个动作的概率。
在314,基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针,计算当前状态的第二奖励。在一些实施例中,基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针,计算当前状态的第二奖励,包括,基于经下一次迭代中在当前状态下选择动作的相应概率加权的所述动作各自的第一奖励之和,计算当前状态的第二奖励。在一些实施例中,执行设备的状态的第二奖励可以是执行设备的状态的FCFV。在一些实施例中,执行设备的状态的第二奖励可以是根据式(9)计算出的。
例如,如200b所示,可以基于经下一次迭代中当前状态的每个动作的对应概率(例如策略)加权的每个动作的第一奖励(例如,动作a6的CFVv(a6|I5),动作a7的CFVv(a7|I5))来计算执行设备的当前状态的第二奖励(例如节点5的FCFV
Figure BDA0002837531050000171
),例如,根据
Figure BDA0002837531050000172
Figure BDA0002837531050000173
在316,用当前状态的第二奖励替换导致当前状态的在前一状态下的前一动作的第一奖励。在一些实施例中,前一状态下的前一动作的第一奖励表示执行设备在前一状态下采取的前一动作的第一奖励,并且可用于基于当前状态的第二奖励更新前一状态的第一奖励。例如,如200b所示,导致当前状态的在前一状态下的前一动作的第一奖励(例如,导致节点5的节点1处的动作a5的CFV,v(a5|I1))被更新为当前状态的第二奖励(例如节点5的FCFV,
Figure BDA0002837531050000181
),以表示执行设备在前一状态下采取的前一动作的第一奖励(例如,节点1的前一状态下的动作a5的CFV),例如,用于基于当前状态的第二奖励(例如,节点5的FCFV,
Figure BDA0002837531050000182
)更新前一状态的第一奖励(例如,节点1的CFV,v(I1)),例如根据式(1)或(8),如关于200b所述。
在一些实施例中,将当前状态的第一奖励替换为当前状态的第二奖励可以简化算法并提高存储效率,因为无需分配额外的存储空间即可存储该状态的第二奖励。
在318,确定当前状态是否为初始状态。在一些实施例中,这样的确定操作可以用于确定是继续还是终止更新当前迭代中的状态的第一奖励。在一些实施例中,初始状态可以被表示为博弈树的根节点(例如,200b所示的节点0)。
如果当前状态是初始状态,则不需要再更新第一奖励。处理300进行至320。如果当前状态不是初始状态,则用该状态的前一状态(例如,当前节点的父节点,例如,如200b所示的当前节点5的节点1)替换当前状态,并且处理300返回306,以获得前一状态(例如,如200b所示的节点1)的每个动作(例如,如200b所示的动作a4和动作a5)的对应第一奖励。处理300可以如图3所示继续。
在320,基于当前状态的第二奖励(例如,节点5的FCFV,
Figure BDA0002837531050000183
),确定下一次迭代中前一状态的动作选择方针(例如,下一次迭代中节点1的动作选择方针ft+1(a|I1)的
Figure BDA0002837531050000184
)。例如,如关于200b所述,基于当前状态的第二奖励确定下一次迭代中前一状态的动作选择方针,包括,基于当前状态的第二奖励(例如节点5的FCFV),计算下一次迭代中从前一状态(例如节点5的父节点,即由信息集I1表示的节点1)下的多个可能动作(例如a4和a5)中选择前一动作(例如a5)的概率(例如ft+1(a5|I1))。例如,基于当前状态的第二奖励计算下一次迭代中从前一状态下的多个可能动作中选择前一动作的概率(例如ft+1(a5|I1)),包括:基于当前状态的第二奖励(例如节点5的FCFV,v(I5))计算前一状态的第一奖励(例如节点1的FCFV,v(I1)),例如,如关于200b所述,根据v(I1)=v(a4|I1)ft(a4|I1)+v(a5|I1)ft(a5|I1),其中,v(a5|I1)是节点5的FCFV,
Figure BDA0002837531050000191
基于前一次迭代中前一状态下的前一动作的对应累计遗憾值,以及前一状态下的前一动作的第一奖励(例如Rt-1(a5|I1))与前一状态的第一奖励之差,计算当前迭代中前一状态下的前一动作的累计遗憾值(例如Rt(a5|I1)),例如,根据式(4),例如,
Figure BDA0002837531050000192
以及基于前一状态下的前一动作的累计遗憾值,计算从前一状态下的多个可能动作中选择前一动作的概率,例如,根据式(5)。
在322,响应于确定满足收敛条件,基于动作选择方针,控制执行设备的动作。在一些实施例中,响应于确定满足收敛条件,可以计算每个状态下的所有迭代(例如从第一次迭代到当前迭代)的平均动作选择方针,例如,根据式(6)。在一些实施例中,平均动作选择方针可以作为处理300的输出,例如,作为计算出的纳什均衡。在一些实施例中,基于下一次迭代中前一状态的动作选择方针,计算所有迭代的平均动作选择方针;并且基于下一次迭代中前一状态的动作选择方针控制执行设备的动作包括,根据平均动作选择方针控制执行设备的动作。
例如,可以基于当前状态的动作选择方针ft+1(a6|I5)和ft+1(a7|I5),计算节点5的当前状态的平均动作选择方针,
Figure BDA0002837531050000193
例如,根据式(6)。可以将平均策略
Figure BDA0002837531050000194
输出,以近似纳什均衡,并控制执行设备在节点5的当前状态下的动作。类似地,可以基于前一状态的动作选择方针ft+1(a4|I1)和ft+1(a5|I1),计算节点1的前一状态的平均动作选择方针,例如,根据式(6)。可以将平均策略
Figure BDA0002837531050000195
输出,以近似纳什均衡,并控制执行设备在节点1的前一状态下的动作。
例如,动作选择方针可以作为软件实现应用的输出,以自动地控制执行设备在每个状态的动作,例如,通过基于动作选择方针在多个可能动作中选择可能性最高的动作。例如,环境包括交通路线规划环境,受应用支持的执行设备包括计算机辅助车辆,动作选择方针包括用于控制计算机辅助车辆的方向的路线选择方针,以及根据动作选择方针控制执行设备的动作包括根据路线选择方针控制计算机辅助车辆的方向。
图4描绘了示出根据本文的实施例的计算机实现的用于提供与所描述的算法、方法、功能、处理、流程和程序相关联的计算功能的***400的示例的框图。图4是示出根据本文的实施例的计算机实现的用于提供与所描述的算法、方法、功能、处理、流程和程序相关联的计算功能的***400的示例的框图。在所示的实施例中,***400包括计算机402和网络430。
所示的计算机402旨在包含任何计算设备,例如服务器、台式计算机、膝上型计算机/笔记本计算机、无线数据端口、智能电话、个人数据助理(PDA)、平板计算机、这些设备中的一个或多个处理器、另一计算设备或计算设备的组合,包括计算设备的物理或虚拟实例、或计算设备的物理或虚拟实例的组合。另外,计算机402可以包括输入设备,例如小键盘、键盘、触摸屏,另一输入设备或可以接受用户信息的输入设备的组合,以及传达与计算机402的操作相关联的信息的输出设备,包括图形类型的用户界面(UI)(或GUI)或其他UI上的数字数据、视觉、音频、另一种类型的信息或各种类型的信息的组合。
计算机402可以在分布式计算***中充当客户端、网络组件、服务器、数据库的角色或另一持续性设备、另一角色或用于执行本公开中描述的主题的角色的组合。所示的计算机402可通信地与网络430耦接。在一些实施例中,计算机402的一个或多个组件可以被配置为在包括基于云计算的环境、本地环境、全局环境、另一环境或环境组合的环境中操作。
在高级别上,计算机402是可操作用于接收、发送、处理、存储或管理与所描述的主题相关联的数据和信息的电子计算设备。根据一些实施例,计算机402还可包括服务器或与服务器可通信地耦接,包括应用服务器、电子邮件服务器、网络服务器、高速缓存服务器、流数据服务器、另一服务器或服务器的组合。
计算机402可以通过网络430(例如,来自另一计算机402上执行的客户端软件应用)接收请求,并通过使用软件应用或软件应用的组合处理接收的请求来响应接收的请求。另外,还可以从内部用户(例如,从命令控制台或通过另一内部访问方法)、外部或第三方或者其他实体、个人、***或计算机向计算机402发送请求。
计算机402的每个组件可以使用***总线403进行通信。在一些实施例中,计算机402的任何或所有组件,包括硬件、软件或者硬件和软件的组合,可以使用应用编程接口(API)412、服务层413、或者API 412和服务层413的组合通过***总线403进行接口连接。API 412可以包括用于例程、数据结构和对象类的规范。API 412可以是独立于计算机语言的或依赖于计算机语言的,并且是指完整的接口、单个函数或甚至一组API。服务层413向计算机402或可通信地耦接到计算机402的其他组件(无论是否示出)提供软件服务。计算机402的功能可被使用服务层413的所有服务消费者访问。软件服务,例如服务层413提供的那些软件服务,通过预定义的接口提供可重用的、预定义的功能。例如,该接口可以是用以JAVA、C++、另一种计算语言、或以可扩展标记语言(XML)格式、另一种格式或多种格式的组合提供数据的计算机语言的组合编写的软件。虽然示出为计算机402的集成组件,但是替代实施例可以将API 412或服务层413示出为与计算机402的其他组件有关的独立组件或可通信地耦接到计算机402的其他组件(无论是否示出)。此外,在不脱离本公开的范围的情况下,API 412或服务层413的任何或所有部分可以被实现为另一软件模块、企业应用或硬件模块的子模块(a child or a sub-module)。
计算机402包括接口404。尽管示出为单个接口404,但是可以根据计算机402的特定需要、期望或特定实施例使用两个或更多个接口404。接口404被计算机402用来与在分布式环境中通信地链接到网络430的另一计算***(无论是否示出)进行通信。通常,接口404可操作地与网络430通信,并且包括以软件、硬件或者软件和硬件的组合编码的逻辑。更具体地说,接口404可以包括支持与通信相关联的一个或多个通信协议的软件,以使得网络430或接口404的硬件可操作地在所示计算机402之内和所示计算机402之外通信物理信号。
计算机402包括处理器405。尽管示出为单个处理器405,但是可以根据计算机402的特定需要、期望或特定实施例使用两个或更多个处理器405。通常,处理器405执行指令并操纵数据以执行计算机402的操作以及本公开中所描述的任何算法、方法、功能、处理、流程和程序。
计算机402还包括数据库406,该数据库406可以保存用于计算机402的数据、通信地链接到网络430的另一组件(无论是否示出)的数据、或者计算机402和另一组件的组合的数据。例如,数据库406可以是存储与本公开一致的存储数据的内存、常规数据库或另一类型的数据库。在一些实施例中,根据计算机402的特定需要、期望或特定实施例以及所描述的功能,数据库406可以是两个或更多个不同数据库类型的组合(例如,混合内存和常规数据库)。尽管被示为单个数据库406,但是可以根据计算机402的特定需求、期望或特定实施例以及所描述的功能来使用相似或不同类型的两个或更多个数据库。尽管数据库406被示为计算机402的集成组件,但在替代实施例中,数据库406可以在计算机402的外部。作为示例,数据库406可以包括上述CFR算法的策略416。
计算机502还包括存储器407,该存储器407可以保存用于计算机402的数据、通信地链接到网络430的另一组件(无论是否示出)的数据、或者计算机402和另一组件的组合的数据。存储器407可以存储与本公开一致的任何数据。在一些实施例中,根据计算机402的特定需要、期望或特定实施例以及所描述的功能,存储器407可以是两种或更多种不同类型的存储器的组合(例如,半导体和磁存储设备的组合)。尽管被示为单个存储器407,但是可以根据计算机402的特定需求、期望或特定实施例以及所描述的功能来使用相似或不同类型的两个或更多个存储器407。尽管存储器407被示为计算机402的集成组件,但在替代实施例中,存储器407可以在计算机402的外部。
应用408是算法软件引擎,其提供根据计算机402的特定需要、期望或特定实施例的功能,特别是关于本公开中描述的功能。例如,应用408可以用作一个或多个组件、模块或应用。此外,尽管被示为单个应用408,但是应用408可以被实现为计算机402上的多个应用408。另外,尽管被示为与计算机402集成,但是在替代实施例中,应用408可以在计算机402的外部。
计算机402还可以包括电源414。电源414可包括可被配置为用户可更换的可充电电池或用户不可更换的不可充电电池。在一些实施例中,电源414可以包括功率转换或管理电路(包括充电、备用或另一电源管理功能)。在一些实施例中,电源414可以包括电源插头,以允许将计算机402***壁式插座或另一电源中,从而例如为计算机402供电或为可充电电池充电。
可以存在与包含计算机402的计算机***关联或在其外部的任何数量的计算机402,每个计算机402通过网络430进行通信。此外,在不脱离本公开的范围的情况下,术语“客户端”、“用户”或其他适当的术语可以适当地互换使用。此外,本公开预期许多用户可以使用一个计算机402,或者一个用户可以使用多个计算机402。
图5是根据本文的实施例的装置500的模块的示例的图示。在一些实施例中,装置500可以执行用于执行设备的计算机实现的方法,以生成动作选择方针,从而在包括执行设备以及一个或多个其他设备的环境中完成任务。在一些实施例中,该方法用表示不完全信息博弈(IIG)的数据来表示环境、参与方的可能动作以及应用可获得的关于其他参与方的不完全信息,其中,应用通过以迭代的方式(例如,通过执行两次或更多次迭代)执行反事实遗憾最小化(CFR)以在参与方之间的策略交互中进行策略搜索来确定可操作输出。
装置500可以对应于上述实施例,且装置500包括以下模块:第一获得模块501,用于在多次迭代中的当前迭代,获得当前迭代中当前状态的动作选择方针,其中,所述动作选择方针指定了从当前状态下的多个可能动作中选择一个动作的对应概率,其中,当前状态是由执行设备在前一状态下采取的前一动作导致的,并且当执行设备在当前状态下时,所述多个可能动作中的每个动作如果被执行设备所执行,导致下一对应状态;第二获得模块502,用于获得当前状态下的每个动作的对应第一奖励,其中,每个动作的对应第一奖励表示该动作带来的有助于完成任务的收益;第一计算模块503,用于基于所述动作各自的第一奖励以及当前迭代中当前状态的动作选择方针,计算当前状态的第一奖励,其中,当前状态的第一奖励表示当前状态带来的有助于完成任务的收益;第二计算模块504,用于基于前一次迭代中每个动作的对应累计遗憾值,以及该动作的对应第一奖励和当前状态的第一奖励之差,计算当前迭代中当前状态下的多个可能动作中的每个动作的对应累计遗憾值;第三计算模块505,用于基于当前迭代中当前状态下的每个动作的对应累计遗憾值,计算下一次迭代中当前状态的动作选择方针;第四计算模块506,用于基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针计算当前状态的第二奖励;确定模块508,用于基于当前状态的第二奖励确定下一次迭代中前一状态的动作选择方针;以及控制模块509,用于响应于确定满足收敛条件,基于下一次迭代中前一状态的动作选择方针控制执行设备的动作。
在可选实施例中,其中,获得当前状态下的每个动作的对应第一奖励,包括,通过基于前一次迭代中当前状态的动作选择方针遍历表示环境的博弈树,获得当前状态下的每个动作的对应第一奖励。
在可选实施例中,其中,基于所述动作各自的第一奖励以及当前迭代中当前状态的动作选择方针,计算当前状态的第一奖励,包括基于经当前迭代中在当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算当前状态的第一奖励。
在可选实施例中,其中,基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针计算当前状态的第二奖励,包括基于经下一次迭代中在当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算当前状态的第二奖励。
在可选实施例中,装置500还包括替换模块507,用于将导致当前状态的在前一状态下的前一动作的第一奖励替换为当前状态的第二奖励。
在可选实施例中,其中,基于当前状态的第二奖励确定下一次迭代中前一状态的动作选择方针,包括基于当前状态的第二奖励,计算下一次迭代中从前一状态下的多个可能动作中选择前一动作的概率。
在可选实施例中,还包括:响应于确定满足收敛条件,基于下一次迭代中前一状态的动作选择方针,计算所有迭代的平均动作选择方针;以及,其中,基于下一次迭代中前一状态的动作选择方针,控制执行设备的动作,包括根据平均动作选择方针控制执行设备的动作。
在可选实施例中,其中:环境包括交通路线规划环境,受应用支持的执行设备包括计算机辅助车辆,动作选择方针包括用于控制计算机辅助车辆的方向的路线选择方针,以及根据动作选择方针控制执行设备的动作包括根据路线选择方针控制计算机辅助车辆的方向。
在先前实施例中所示的***、装置、模块或单元可以通过使用计算机芯片或实体来实现,或者可以通过使用具有特定功能的产品来实现。典型实施例设备是计算机,计算机可以是个人计算机、膝上型计算机、蜂窝电话、摄像电话、智能手机、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏机、平板电脑、可穿戴设备,或这些设备的任何组合。
对于装置中每个模块的功能和作用的实施过程,可以参考前述方法中相应步骤的实施过程。为了简单起见,这里省略了细节。
由于装置实施例基本上对应于方法实施例,因此对于相关部分,可以参考方法实施例中的相关描述。前面描述的装置实施例仅仅是示例。被描述为独立部分的模块可以是物理上独立的或者不是物理上独立的,显示为模块的部分可以是物理模块或者不是物理模块,可以位于一个位置,或者可以分布在多个网络模块上。部分或全部模块可基于实际需求来选择,以达到本文的解决方案的目的。本领域的普通技术人员无需创造性的努力即可理解和实现本申请的实施例。
再次参考图5,图5可被解释为示出数据处理装置的内部功能模块和结构,该数据处理装置用于为软件实现应用生成动作选择方针,该软件实现应用在包括由应用支持的执行方以及一个或多个其他参与方的环境中执行动作。执行主体本质上可以是电子设备,电子设备包括以下:一个或多个处理器以及存储器,该存储器被配置成存储一个或多个处理器的可执行指令。
本文中描述的技术产生一种或多种技术效果。在一些实施例中,所描述的技术可以由执行设备执行,以生成动作选择方针,从而在包括执行设备以及一个或多个其他设备的环境中完成任务。在一些实施例中,所描述的技术可以确定软件实现应用的动作选择方针,该软件实现应用在包括由应用支持的执行方以及一个或多个其他参与方的环境中执行动作。在一些实施例中,所描述的技术可被用于自动控制、机器人或涉及动作选择的任何其他应用中。
在一些实施例中,所描述的技术可以帮助以更有效的方式找到例如资源分配、产品/服务推荐、网络攻击预测和/或预防、交通路线规划、欺诈管理等的现实场景的更好策略,所述策略可以由各参与方之间的策略交互(例如,涉及两个或更多个参与方的IIG)来建模或表示。
在一些实施例中,所描述的技术可以提高反事实遗憾最小化(CFR)算法在寻找纳什(Nash)均衡以求解代表一个或多个现实场景的博弈时的收敛速度。在一些实施例中,所描述的技术可以在寻找由IIG建模的现实场景的最佳策略时提高计算效率并减少CFR算法的计算量,例如,在针对CFR算法的每次迭代更新策略和遗憾值时,通过使用增量策略,而不是累计遗憾或平均策略。
在一些实施例中,相比于原始CFR算法,所公开的快速异步CFR算法可以提供更快的收敛。例如,快速异步CFR算法可以使用FCFV,以利用当前迭代中基于CFV计算出的更新增量策略的优势,而无需等待下一次迭代。这样,快速异步CFR算法可以较原始CFR算法更快地达到收敛。
所描述的主题的实施例可以单独地或组合地包括一个或多个特征。例如,在第一实施例中,一种执行设备的计算机实现的方法,用于生成动作选择方针,以在包括执行设备以及一个或更多个其他设备的环境中完成任务,该方法包括,在多次迭代中的当前迭代,获得当前迭代中当前状态的动作选择方针,其中所述动作选择方针指定了从当前状态下的多个可能动作中选择一个动作的对应概率,其中,当前状态是由前一状态下执行设备采取的前一动作导致的,并且当执行设备在当前状态下时,所述多个可能动作中的每个动作如果被执行设备所执行,将导致下一对应状态;获得当前状态下的每个动作的对应第一奖励,其中,每个动作的对应第一奖励表示该动作带来的有助于完成任务的收益;基于所述动作各自的第一奖励以及当前迭代中当前状态的动作选择方针,计算当前状态的第一奖励,其中,当前状态的第一奖励表示当前状态带来的有助于完成任务的收益;基于前一次迭代中每个动作的对应累计遗憾值,以及该动作的对应第一奖励与当前状态的第一奖励之差,计算当前迭代中当前状态下的多个可能动作中的每个动作的对应累计遗憾值;基于当前迭代中当前状态下的每个动作的对应累计遗憾值,计算下一次迭代中当前状态的动作选择方针;基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针计算当前状态的第二奖励;基于当前状态的第二奖励确定下一次迭代中前一状态的动作选择方针;以及响应于确定满足收敛条件,基于下一次迭代中前一状态的动作选择方针控制执行设备的动作。
上述和其他所描述的实施例可以各自可选地包括一个或多个以下特征:
第一特征,与以下特征中的任一特征可组合的,其中,获得当前状态下每个动作的对应第一奖励,包括,通过基于前一迭代中当前状态的动作选择方针遍历表示环境的博弈树,获得当前状态下每个动作的对应第一奖励。
第二特征,与以下特征中的任一特征可组合的,其中,基于所述动作各自的第一奖励以及当前迭代中在当前状态下的动作选择方针,计算当前状态的第一奖励,包括基于经当前迭代中在当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算当前状态的第一奖励。
第三特征,与以下特征中的任一特征可组合的,其中,基于所述动作各自的第一奖励和下一次迭代中当前状态的动作选择方针计算当前状态的第二奖励,包括基于经下一次迭代中在当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算当前状态的第二奖励。
第四特征,与以下特征中的任一特征可组合的,还包括将导致当前状态的在前一状态下的前一动作的第一奖励替换为当前状态的第二奖励。
第五特征,与以下特征中的任一特征可组合的,其中,基于当前状态的第二奖励确定下一次迭代中前一状态的动作选择方针,包括基于当前状态的第二奖励,计算下一次迭代中从前一状态下的多个可能动作中选择前一动作的概率。
第六特征,与以下特征中的任一特征可组合的,还包括:响应于确定满足收敛条件,基于下一次迭代中前一状态的动作选择方针,计算所有迭代的平均动作选择方针;以及,其中,基于下一次迭代中前一状态的动作选择方针控制执行设备的动作,包括根据平均动作选择方针控制执行设备的动作。
第七特征,与以下特征中的任一特征可组合的,其中:环境包括交通路线规划环境,受应用支持的执行设备包括计算机辅助车辆,动作选择方针包括用于控制计算机辅助车辆的方向的路线选择方针,以及根据动作选择方针控制执行设备的动作包括根据路线选择方针控制计算机辅助车辆的方向。
在本文中描述的主题的实施例以及动作和操作可以以数字电子电路、有形实现的计算机软件或固件、计算机硬件(包括本文中公开的结构及其结构等同物)、或者它们中的一个或多个的组合实现。本文中描述的主题的实施例可以实现为一个或多个计算机程序,例如,一个或多个计算机程序指令模块,编码在计算机程序载体上,用于由数据处理装置执行或控制数据处理装置的操作。例如,计算机程序载体可以包括具有编码在其上或者存储在其上的指令的一个或多个计算机存储介质。载体可以是有形的非暂态计算机可读介质,诸如磁盘、磁光盘或者光盘、固态驱动器、随机存储区存储器(RAM)、只读存储器(ROM)、或者其他类型的介质。可选地或附加地,载体可以是人工生成的传播信号,例如,机器生成的电信号、光信号或电磁信号,其被生成来编码信息用于传输到合适的接收器装置以供数据处理装置执行。计算机存储介质可以是或部分是机器可读存储设备、机器可读存储基板、随机或串行访问存储器设备或它们中的一个或多个的组合。计算机存储介质不是传播信号。
计算机程序,也可以被称为或描述为程序、软件、软件应用、应用、模块、软件模块、引擎、脚本或代码,可以以任何形式的编程语言编写,包括编译或演绎性语言、说明或程序性语言;它可以配置为任何形式,包括作为独立程序,或者作为模块、组件、引擎、子程序或适合在计算环境中执行的其他单元,该环境可包括由数据通信网络互联的在一个或多个位置的一台或多台计算机。
计算机程序可以但非必须对应于文件***中的文件。计算机程序可以存储在:保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本;专用于所讨论的程序的单个文件;或者多个协调文件,例如,存储一个或多个模块、子程序或代码部分的多个文件。
用于执行计算机程序的处理器包括例如通用微处理器和专用微处理器以及任何种类的数字计算机的任一个或多个处理器。通常,处理器将从耦接至该处理器的非暂态计算机可读介质接收用于执行的计算机程序的指令以及数据。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或者多处理器或计算机。数据处理装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)、ASIC(专用集成电路)或GPU(图形处理单元)。除了硬件,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理***、操作***或者它们中的一个或多个的组合的代码。
本文中描述的过程和逻辑流程可通过一台或多台计算机或处理器执行一个或多个计算机程序来进行,以通过对输入数据进行运算并生成输出进行操作。过程和逻辑流程也可以由例如FPGA、ASIC、GPU等的专用逻辑电路或专用逻辑电路与一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用或专用微处理器或者两者,或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件可包括用于执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以补充有专用逻辑电路或集成在专用逻辑电路中。
通常,计算机还将包括或可操作地耦接至一个或多个存储设备,以从一个或多个存储设备接收数据或将数据传输到一个或多个存储设备。存储设备可以是例如磁盘、磁光盘或光盘、固态驱动器、或者任何其他类型的非暂态计算机可读介质。但是,计算机不需要具有这样的设备。因此,计算机可以耦接至一个或多个存储设备,诸如本地和/或远程的一个或多个存储器。例如,计算机可以包括作为计算机的组成部件的一个或多个本地存储器,或者计算机可以耦接至处于云网络中的一个或多个远程存储器。此外,计算机可以嵌入在另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位***(GPS)接收器或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
组件可以通过诸如直接或经由一个或多个中间组件彼此交互性地电连接或光学连接而彼此耦接。如果一个组件集成到另一个组件中,部件也可以耦接至彼此。例如,集成到处理器(例如,L2缓存组件)中的存储组件耦接至处理器。
为了提供与用户的交互,本文中描述的主题的实施例可以在计算机上实现或配置为与该计算机通信,该计算机具有:显示设备,例如,LCD(液晶显示器)监视器,用于向用户显示信息;以及输入设备,用户可以通过该输入设备向该计算机提供输入,例如键盘和例如鼠标、轨迹球或触摸板等的指针设备。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以接收来自用户的任何形式的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过向用户设备上的web浏览器发送web页面以响应从web浏览器收到的请求,或者通过与例如智能电话或电子平板电脑等的用户设备上运行的应用(app)进行交互。此外,计算机可以通过向个人设备(例如,运行消息应用的智能手机)轮流发送文本消息或其他形式的消息并接收来自用户的响应消息来与用户交互。
本文使用与***、装置和计算机程序组件有关的术语“配置为”。对于被配置为执行特定操作或动作的一个或多个计算机的***,意味着***已经在其上安装了在运行中促使该***执行所述操作或动作的软件、固件、硬件或它们的组合。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当被数据处理装置执行时促使该装置执行所述操作或动作的指令。对于被配置为执行特定操作或动作的专用逻辑电路,意味着该电路具有执行所述操作或动作的电子逻辑。
虽然本文包含许多具体实施细节,但是这些不应被解释为由权利要求本身限定的对要求保护的范围的限制,而是作为对特定实施例的具体特征的描述。在本文中在多个单独实施例的上下文中描述的多个特定特征也可以在单个实施例中组合地实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下,可以从要求保护的组合中删除来自该组合的一个或多个特征,并且可以要求保护指向子组合或子组合的变体。
类似地,虽然以特定顺序在附图中描绘了操作并且在权利要求中叙述了操作,但是这不应该被理解为:为了达到期望的结果,要求以所示的特定顺序或依次执行这些操作,或者要求执行所有示出的操作。在一些情况下,多任务并行处理可能是有利的。此外,上述实施例中的各种***模块和组件的划分不应被理解为所有实施例中都要求如此划分,而应当理解,所描述的程序组件和***通常可以一起集成在单个软件产品或者打包成多个软件产品。
已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程无需要求所示的特定顺序或次序来实现期望的结果。在一些情况下,多任务和并行处理可能是有利的。

Claims (10)

1.一种执行设备的计算机实现方法,用于生成动作选择方针,以在包括所述执行设备以及一个或多个其他设备的环境中完成任务,所述方法包括:
在多次迭代中的当前迭代,
获得所述当前迭代中当前状态的动作选择方针,其中,所述动作选择方针指定了从所述当前状态下的多个可能动作中选择动作的对应概率,其中,所述当前状态是由所述执行设备在前一状态下采取的前一动作导致的,并且当所述执行设备在所述当前状态下时,所述多个可能动作中的每个动作如果被所述执行设备所执行,将导致下一对应状态;
获得所述当前状态下的每个动作的对应第一奖励,其中,每个动作的对应第一奖励表示所述动作带来的有助于完成所述任务的收益;
基于所述动作各自的第一奖励以及所述当前迭代中所述当前状态的动作选择方针,计算所述当前状态的第一奖励,其中,所述当前状态的第一奖励表示所述当前状态带来的有助于完成所述任务的收益;
基于前一次迭代中每个动作的对应累计遗憾值,以及该动作的对应第一奖励与所述当前状态的第一奖励之差,计算所述当前迭代中所述当前状态下的所述多个可能动作中的每个动作的对应累计遗憾值;
基于所述当前迭代中所述当前状态下的每个动作的对应累计遗憾值,计算所述下一次迭代中所述当前状态的动作选择方针;
基于所述动作各自的第一奖励和所述下一次迭代中所述当前状态的动作选择方针计算所述当前状态的第二奖励;
基于所述当前状态的第二奖励确定所述下一次迭代中所述前一状态的动作选择方针;以及
响应于确定满足收敛条件,基于所述下一次迭代中所述前一状态的动作选择方针控制所述执行设备的动作。
2.根据权利要求1所述的方法,其中,获得所述当前状态下的每个动作的对应第一奖励,包括:通过基于前一次迭代中所述当前状态的动作选择方针遍历表示所述环境的博弈树,获得所述当前状态下的每个动作的对应第一奖励。
3.根据前述任一权利要求所述的方法,其中,基于所述动作各自的第一奖励以及所述当前迭代中所述当前状态的动作选择方针,计算所述当前状态的第一奖励,包括:基于经所述当前迭代中在所述当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算所述当前状态的第一奖励。
4.根据前述任一权利要求所述的方法,其中,基于所述动作各自的第一奖励和所述下一次迭代中所述当前状态的动作选择方针计算所述当前状态的第二奖励,包括:基于经所述下一次迭代中在所述当前状态下选择动作的对应概率所加权的所述动作各自的第一奖励之和,计算所述当前状态的第二奖励。
5.根据前述任一权利要求所述的方法,还包括:将导致所述当前状态的在所述前一状态下的所述前一动作的第一奖励替换为所述当前状态的第二奖励。
6.根据前述任一权利要求所述的方法,其中,基于所述当前状态的第二奖励确定所述下一次迭代中所述前一状态的动作选择方针,包括:基于所述当前状态的第二奖励,计算所述下一次迭代中从所述前一状态下的所述多个可能动作中选择所述前一动作的概率。
7.根据前述任一权利要求所述的方法,还包括:
响应于确定满足收敛条件,基于所述下一次迭代中所述前一状态的动作选择方针,计算所有迭代的平均动作选择方针;以及
其中,基于所述下一次迭代中所述前一状态的动作选择方针控制所述执行设备的动作,包括根据所述平均动作选择方针控制所述执行设备的动作。
8.根据前述任一权利要求所述的方法,其中:
所述环境包括交通路线规划环境,
受应用支持的所述执行设备包括计算机辅助车辆,
所述动作选择方针包括用于控制所述计算机辅助车辆的方向的路线选择方针,以及
根据动作选择方针控制执行设备的动作包括根据所述路线选择方针控制计算机辅助车辆的方向。
9.一种用于执行软件实现应用的***,所述***用于为所述软件实现应用生成动作选择方针,所述软件实现应用在包括由所述应用支持的执行设备以及一个或多个其他设备的环境中执行动作,所述***包括:
一个或多个处理器;以及
一个或多个计算机可读存储器,耦接到所述一个或多个处理器上且其上存储有指令,所述指令能够被所述一个或多个处理器执行以执行权利要求1至8中任一项所述的方法。
10.一种用于为软件实现应用生成动作选择方针的装置,所述软件实现应用用于在包括由所述应用支持的执行设备以及一个或多个其他设备的环境中执行动作,所述装置包括用于执行权利要求1至8中任一项所述的方法的多个模块。
CN201980040188.3A 2019-05-15 2019-05-15 确定执行设备的动作选择方针 Pending CN112292699A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/087003 WO2020227960A1 (en) 2019-05-15 2019-05-15 Determining action selection policies of an execution device

Publications (1)

Publication Number Publication Date
CN112292699A true CN112292699A (zh) 2021-01-29

Family

ID=72615149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980040188.3A Pending CN112292699A (zh) 2019-05-15 2019-05-15 确定执行设备的动作选择方针

Country Status (5)

Country Link
US (1) US10789810B1 (zh)
EP (1) EP3756147A1 (zh)
CN (1) CN112292699A (zh)
SG (1) SG11202002915SA (zh)
WO (1) WO2020227960A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11790032B2 (en) * 2020-05-26 2023-10-17 International Business Machines Corporation Generating strategy based on risk measures
CN116917903A (zh) * 2021-02-04 2023-10-20 华为技术有限公司 用于自动化奖励塑形的装置和方法
CN114580642B (zh) * 2022-03-17 2023-04-07 中国科学院自动化研究所 构建博弈ai模型和数据处理的方法、装置、设备及介质

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130185039A1 (en) * 2012-01-12 2013-07-18 International Business Machines Corporation Monte-carlo planning using contextual information
US20130204412A1 (en) * 2012-02-02 2013-08-08 International Business Machines Corporation Optimal policy determination using repeated stackelberg games with unknown player preferences
CN103559363A (zh) * 2013-11-15 2014-02-05 南京大学 一种不完美信息扩展式博弈中计算最佳反应策略的方法
CN103618731A (zh) * 2013-12-05 2014-03-05 北京工业大学 一种基于动态博弈的访问控制方法
US20160314402A1 (en) * 2015-04-23 2016-10-27 International Business Machines Corporation Decision processing and information sharing in distributed computing environment
CN106296006A (zh) * 2016-08-10 2017-01-04 哈尔滨工业大学深圳研究生院 非完备信息博弈中风险与收益均衡的最少遗憾的评估方法
US20170286125A1 (en) * 2016-03-29 2017-10-05 Intel Corporation Systems, methods and devices for dynamic power management of devices using game theory
US20180032864A1 (en) * 2016-07-27 2018-02-01 Google Inc. Selecting actions to be performed by a reinforcement learning agent using tree search
US20180046961A1 (en) * 2016-08-09 2018-02-15 Conduent Business Services, Llc Method and system for dispatching of vehicles in a public transportation network
US20180129974A1 (en) * 2016-11-04 2018-05-10 United Technologies Corporation Control systems using deep reinforcement learning
US20180157973A1 (en) * 2016-12-04 2018-06-07 Technion Research & Development Foundation Limited Method and device for a computerized mechanical device
CN108288097A (zh) * 2018-01-24 2018-07-17 中国科学技术大学 强化学习任务中高维连续动作空间离散化探索方法
CN108446801A (zh) * 2018-03-22 2018-08-24 成都大象分形智能科技有限公司 一种多人信息非对称博弈游戏决策生成***
WO2018156891A1 (en) * 2017-02-24 2018-08-30 Google Llc Training policy neural networks using path consistency learning
WO2018206504A1 (en) * 2017-05-10 2018-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Pre-training system for self-learning agent in virtualized environment
US20190115027A1 (en) * 2017-10-12 2019-04-18 Google Llc Turn-based reinforcement learning for dialog management
US20190124033A1 (en) * 2017-10-25 2019-04-25 Dropbox, Inc. Delayed processing for arm policy determination for content management system messaging
CN109733415A (zh) * 2019-01-08 2019-05-10 同济大学 一种基于深度强化学习的拟人化自动驾驶跟驰模型

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2828472A1 (en) * 2011-03-04 2012-09-13 Tian Lu Method and system for robust social choices and vote elicitation
US20140039913A1 (en) 2012-07-31 2014-02-06 Tuomas W. Sandholm Medical treatment planning via sequential games
WO2017026533A1 (ja) 2015-08-11 2017-02-16 株式会社フォワードサイエンスラボラトリ 三重水素吸収材、重水中からの三重水素の分離方法
US10057367B2 (en) 2016-03-02 2018-08-21 Huawei Technologies Canada Co., Ltd. Systems and methods for data caching in a communications network
US10694526B2 (en) 2016-09-30 2020-06-23 Drexel University Adaptive pursuit learning method to mitigate small-cell interference through directionality
CN107050839A (zh) * 2017-04-14 2017-08-18 安徽大学 基于uct算法的亚马逊棋机器博弈***
US11138513B2 (en) 2017-06-13 2021-10-05 Princeton University Dynamic learning system
US20190122140A1 (en) * 2017-10-20 2019-04-25 STATGRAF Research LLP. Data analysis and rendering
US20190163515A1 (en) 2017-11-24 2019-05-30 Wipro Limited Method and system for resolving anomaly events occurring in a virtual environment in real-time
US20190392309A1 (en) 2018-06-21 2019-12-26 Denso International America, Inc. LSTM Training For Neural Network Based Course Of Action Selection
CN109361482A (zh) * 2018-09-04 2019-02-19 中国人民解放军陆军工程大学 一种基于非合作博弈确定多用户选择信道感知顺序的方法

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130185039A1 (en) * 2012-01-12 2013-07-18 International Business Machines Corporation Monte-carlo planning using contextual information
US20130204412A1 (en) * 2012-02-02 2013-08-08 International Business Machines Corporation Optimal policy determination using repeated stackelberg games with unknown player preferences
CN103559363A (zh) * 2013-11-15 2014-02-05 南京大学 一种不完美信息扩展式博弈中计算最佳反应策略的方法
CN103618731A (zh) * 2013-12-05 2014-03-05 北京工业大学 一种基于动态博弈的访问控制方法
US20160314402A1 (en) * 2015-04-23 2016-10-27 International Business Machines Corporation Decision processing and information sharing in distributed computing environment
US20170286125A1 (en) * 2016-03-29 2017-10-05 Intel Corporation Systems, methods and devices for dynamic power management of devices using game theory
US20180032864A1 (en) * 2016-07-27 2018-02-01 Google Inc. Selecting actions to be performed by a reinforcement learning agent using tree search
US20180046961A1 (en) * 2016-08-09 2018-02-15 Conduent Business Services, Llc Method and system for dispatching of vehicles in a public transportation network
CN106296006A (zh) * 2016-08-10 2017-01-04 哈尔滨工业大学深圳研究生院 非完备信息博弈中风险与收益均衡的最少遗憾的评估方法
US20180129974A1 (en) * 2016-11-04 2018-05-10 United Technologies Corporation Control systems using deep reinforcement learning
US20180157973A1 (en) * 2016-12-04 2018-06-07 Technion Research & Development Foundation Limited Method and device for a computerized mechanical device
WO2018156891A1 (en) * 2017-02-24 2018-08-30 Google Llc Training policy neural networks using path consistency learning
WO2018206504A1 (en) * 2017-05-10 2018-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Pre-training system for self-learning agent in virtualized environment
US20190115027A1 (en) * 2017-10-12 2019-04-18 Google Llc Turn-based reinforcement learning for dialog management
US20190124033A1 (en) * 2017-10-25 2019-04-25 Dropbox, Inc. Delayed processing for arm policy determination for content management system messaging
CN108288097A (zh) * 2018-01-24 2018-07-17 中国科学技术大学 强化学习任务中高维连续动作空间离散化探索方法
CN108446801A (zh) * 2018-03-22 2018-08-24 成都大象分形智能科技有限公司 一种多人信息非对称博弈游戏决策生成***
CN109733415A (zh) * 2019-01-08 2019-05-10 同济大学 一种基于深度强化学习的拟人化自动驾驶跟驰模型

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
HUI LI ET AL.: "Double Neural Counterfactual Regret Minimization", 《ARXIV:1812.10607V1 [CS.AI]》, pages 1 - 20 *
NOAM BROWN ET AL.: "Regret-based pruning in extensive-form games", 《NIPS\'15: PROCEEDINGS OF THE 28TH INTERNATIONAL CONFERENCE ON NEURAL INFORMATION PROCESSING SYSTEMS》, vol. 2, 31 December 2015 (2015-12-31), pages 1 - 11 *
VILIAM LISÝ ET AL.: "Online Monte Carlo Counterfactual Regret Minimization for Search in Imperfect Information Games", 《PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON AUTONOMOUS AGENTS AND MULTIAGENT SYSTEMS (AAMAS 2015)》, 8 May 2015 (2015-05-08), pages 1 - 10 *
VOJTĚCH KOVAŘÍK ET AL.: "Analysis of Hannan Consistent Selection for Monte Carlo Tree Search in Simultaneous Move Games", 《ARXIV:1804.09045V1 [CS.GT]》, pages 1 - 44 *
代佳宁: "基于虚拟遗憾最小化算法的非完备信息机器博弈研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2, 15 February 2018 (2018-02-15), pages 19 - 45 *
刘小梅等: "基于博弈论的多机器人任务分配算法", 《吉林大学学报(信息科学版)》, vol. 28, no. 3, 31 May 2010 (2010-05-31), pages 256 - 263 *
李翔等: "基于手牌预测的多人无限注德州扑克博弈方法", 《计算机学报》, vol. 41, no. 1, 31 January 2018 (2018-01-31), pages 47 - 64 *

Also Published As

Publication number Publication date
SG11202002915SA (en) 2020-12-30
EP3756147A4 (en) 2020-12-30
EP3756147A1 (en) 2020-12-30
WO2020227960A1 (en) 2020-11-19
US10789810B1 (en) 2020-09-29

Similar Documents

Publication Publication Date Title
US11157316B1 (en) Determining action selection policies of an execution device
US10679125B1 (en) Strategy searching in strategic interaction between parties
US10675537B1 (en) Determining action selection policies of an execution device
US10769544B2 (en) Sampling schemes for strategy searching in strategic interaction between parties
US11204803B2 (en) Determining action selection policies of an execution device
CN112292699A (zh) 确定执行设备的动作选择方针
TWI763120B (zh) 執行設備的計算機實現的方法、用於執行軟體實現應用的系統和用於為軟體實現應用生成動作選擇方針的裝置
CN112470123B (zh) 确定执行设备的动作选择方针
US11113619B2 (en) Determining action selection policies of an execution device
US10719358B1 (en) Determining action selection policies of an execution device
US11077368B2 (en) Determining action selection policies of an execution device
CN112292696B (zh) 确定执行设备的动作选择方针的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination