CN112639841B - 用于在多方策略互动中进行策略搜索的采样方案 - Google Patents
用于在多方策略互动中进行策略搜索的采样方案 Download PDFInfo
- Publication number
- CN112639841B CN112639841B CN201980034738.0A CN201980034738A CN112639841B CN 112639841 B CN112639841 B CN 112639841B CN 201980034738 A CN201980034738 A CN 201980034738A CN 112639841 B CN112639841 B CN 112639841B
- Authority
- CN
- China
- Prior art keywords
- party
- state
- possible actions
- sampling
- player
- 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.)
- Active
Links
- 238000005070 sampling Methods 0.000 title claims abstract description 290
- 230000003993 interaction Effects 0.000 title claims abstract description 33
- 230000009471 action Effects 0.000 claims abstract description 439
- 238000000034 method Methods 0.000 claims abstract description 82
- 238000012545 processing Methods 0.000 claims description 56
- 230000015654 memory Effects 0.000 claims description 45
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000007726 management method Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 9
- 230000002265 prevention Effects 0.000 claims description 6
- 238000013468 resource allocation Methods 0.000 claims description 6
- 238000013439 planning Methods 0.000 claims 2
- 238000003860 storage Methods 0.000 abstract description 20
- 238000004590 computer program Methods 0.000 abstract description 15
- 238000004422 calculation algorithm Methods 0.000 description 112
- 238000013528 artificial neural network Methods 0.000 description 69
- 230000009977 dual effect Effects 0.000 description 29
- 238000013500 data storage Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 28
- 230000001186 cumulative effect Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 230000001419 dependent effect Effects 0.000 description 15
- 238000009826 distribution Methods 0.000 description 15
- 210000005036 nerve Anatomy 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 230000001537 neural effect Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000012935 Averaging Methods 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000011151 fibre-reinforced plastic Substances 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 238000012614 Monte-Carlo sampling Methods 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本文公开的方法、系统和装置,包括在计算机存储介质上编码的计算机程序,用于执行反事实遗憾最小化(CFR)以在多方策略互动中进行策略搜索。所述方法之一包括:识别第一方在所述第一方的第一状态下的N1个可能动作;以第一采样概率从所述第一方在第一状态下的所述N1个可能动作中采样出可能动作;识别所述第一方在所述第一方的第二状态下的N2个可能动作,其中,所述第一方的第一状态比所述第一方的第二状态更接近IIG的开始状态;以第二采样概率从所述第一方在第二状态下的所述N2个可能动作中采样出可能动作,其中,所述第一采样概率小于所述第二采样概率。
Description
技术领域
本文涉及在两方或更多方之间的策略互动中进行策略搜索。
背景技术
两方或更多方之间的策略互动可以通过涉及两方或更多方(也称为玩家)的博弈来建模。在涉及两个或更多个玩家的不完美信息博弈(imperfect information games,IIG)中,玩家在做出决策之前只能部分地了解其对手。这类似于现实场景,例如贸易、流量交通路线规划和公开拍卖。许多现实生活场景可以表示为IIG,例如不同公司之间的商业竞争、拍卖场景中的竞标关系、欺诈方和反欺诈方之间的博弈关系。
求解IIG的方法具有很大的经济和社会效益。由于信息隐藏,因此玩家必须在对其对手信息不确定的情况下进行推理,并且玩家还需要采取行动以利用其对手对其自己的信息的不确定的优势。
发明内容
本文的实施方式包括计算机实现的用于在多方策略互动中进行策略搜索的方法。更具体地,本文描述了用于在求解不完美信息博弈(IIG)时执行反事实遗憾最小化(CRF)算法的采样方案的示例,该方法可以降低计算的复杂度和方差同时提高CRF算法的收敛速度。本文还描述了用神经网络执行反事实遗憾最小化(CRF)的技术,由于神经网络的泛化能力,它可以节省存储空间并提供更快的收敛。
本文中描述的在特定实施例中实现的主题实现了以下技术效果和优势中的一个或多个。在一些实施例中,所描述的采样技术可以以更有效的方式帮助寻找例如资源分配、产品/服务推荐、网络攻击预测和/或预防、流量交通路线规划、欺诈管理等的现实场景的更好策略,这些现实场景可被建模或表示为多方策略互动、例如涉及两方或更多方的IIG。在一些实施例中,所描述的技术可以提高反事实遗憾最小化(CRF)算法在寻找由IIG建模的现实场景的最佳策略时的计算效率并降低计算负荷。在一些实施例中,所描述的采样技术可以提供比结果采样更低的方差,同时比外部采样具有更高的存储效率。在一些实施例中,所描述的技术可以提高CRF算法在寻找纳什(Nash)均衡以求解代表一个或多个现实场景的博弈时的收敛速度。在一些实施例中,所描述的技术提供表示IIG的博弈树的更平衡和全面的信息,使得CRF算法可以具有更小的方差和更快的收敛速度。在一些实施例中,所描述的技术通过使用神经网络结合CRF算法,节省了存储空间并提供了更快的收敛。在一些实施例中,所描述的技术可以仅需要少量存储空间用于CRF算法的每次迭代。
本文还提供了耦接一个或多个处理器并且其上存储有指令的一个或多个非暂时性计算机可读存储介质,所述指令当由所述一个或多个处理器执行时,促使所述一个或多个处理器按照本文提供的方法的实施例执行操作。
本文还提供了用于实施本文提供的所述方法的系统。所述系统包括一个或多个处理器以及耦接到所述一个或多个处理器并且其上存储有指令的计算机可读存储介质,所述指令当由所述一个或多个处理器执行时,促使所述一个或多个处理器按照本文提供的方法的实施例执行操作。
应了解,依据本文的方法可以包括本文描述的方面和特征的任意组合。也就是说,根据本文的方法不限于本文具体描述的方面和特征的组合,还包括所提供的方面和特征的任意组合。
以下在附图和描述中阐述了本文的一个或多个实施例的细节。根据说明书和附图以及权利要求,本文的其他特征和优点将显现。
附图说明
图1是根据本文的实施例示出的单牌扑克中的部分博弈树的示例的图。
图2是根据本文的实施例示出的不同采样方案的示例的图。
图3是根据本文的实施例的鲁棒采样蒙特卡罗CFR(MCCFR)的示例的伪代码。
图4是根据本文的实施例示出的应用于博弈树的双神经CFR算法的示例的图。
图5是根据本文的实施例的双神经CFR算法的示例的伪代码。
图6是根据本文的实施例的用于优化与双神经CFR算法相关的神经网络的算法的示例的伪代码。
图7是根据本文的实施例的小批量MCCFR算法的示例的伪代码。
图8是根据本文的实施例示出的用于执行MCCFR的采样处理的示例的流程图。
图9是根据本文的实施例示出的双神经CFR算法的示例的流程图。
图10描绘了根据本文的实施例示出的计算机实现的用于提供与所描述的算法、方法、功能、处理、流程和程序相关联的计算功能的系统的示例的框图。
图11描绘了根据本文的实施例的装置的模块的示例。
图12描绘了根据本文的实施例的另一装置的模块的示例。
各附图中相同的附图标记和名称表示相同的元件。
具体实施方式
本文的实施方式包括计算机实现的例如通过求解不完美信息博弈(IIG)在多方策略互动中进行策略搜索的方法。IIG可以代表例如资源分配、产品/服务推荐、网络攻击预测和/或预防、流量交通路线规划、欺诈管理等一个或多个现实场景,其中,涉及两方或更多方(也称为玩家),且每方可以具有关于他方的决策的不完全或不完美信息。更具体地,本文描述了用于在求解IIG时执行反事实遗憾最小化(counterfactual regret minimization,CRF)算法的采样方案的示例,可以降低计算的复杂度和方差同时提高CRF算法的收敛速度。本文还描述了用神经网络执行反事实遗憾最小化(CRF)的技术,由于神经网络的泛化能力,它可以节省存储空间并提供更快的收敛。
纳什均衡是涉及两个或更多个玩家的IIG的典型解法。反事实遗憾最小化(CRF)是一种旨在近似找到大型博弈的纳什均衡的算法。CRF试图最小化整体的反事实遗憾。事实证明,所有迭代中的多个策略的平均值会收敛到纳什均衡。在求解博弈时,原始形式的CRF(也称为原始CRF、标准CRF、普通CFR或简称CRF)在每次迭代中遍历整个博弈树。因此,原始CFR需要大容量存储器处理大型零和扩展式博弈,例如单挑无限注德州扑克。在某些情况下,原始CFR可能无法用有限存储器处理大型博弈。
引入蒙特卡洛CFR(Monte Carlo CFR,MCCFR)以使反事实遗憾最小化。MCCFR可以计算反事实值(counterfactual value)的无偏估计,并避免遍历整个博弈树。由于在每次迭代中仅访问所有信息集的子集,因此MCCFR所需的存储空间比原始CFR少。
可以使用结果采样(outcome sampling)算法或外部采样(external sampling)算法来执行MCCFR。MCCFR中的结果采样算法的方差大,并且难以在较少的迭代步骤中收敛到近似纳什均衡解。MCCFR中的外部采样算法的方差比结果采样算法的方差小,但该方法的缺点类似于CFR的缺点。当博弈树很大时,它需要非常大的存储空间,并且不能扩展到复杂的大规模IIG。
本文公开了一种鲁棒采样(robust sampling)方案。在所述鲁棒采样方案中,每个玩家在当前决策点使用均匀采样(uniform sampling)方法进行采样,而他方根据相应的策略进行采样。对应于不同迭代的到达概率可以是固定的。可以证明,该鲁棒采样方案的方差比MCCFR中的结果采样方案的方差小,同时比外部采样的存储效率高。在一些实施例中,该鲁棒采样方案可以使MCCFR以更快的收敛求解纳什均衡。
本文公开了一种深度依赖采样方案。所述深度依赖采样方案可以将更高的采样概率分配给更接近终点(terminal)状态的状态,而不是与终点状态更远(或更接近初始状态或开始状态)的另一状态。在一些实施例中,所述深度依赖采样方案可以允许更接近终点状态的状态更多地被采样,从而提供IIG的更全面(well-around)信息,因此与现有采样方案相比提高了MCCFR的收敛速率。
本文还公开了双神经CFR算法。现有的CFR方法,如CFR和MCCFR,使用两个基于表格的大容量存储器来记录所有信息集的累积遗憾和平均策略。这种表格表示形式使得这些方法难以以有限的时间和空间应用于大型扩展式的博弈。
相比之下,双神经CFR算法使用两个神经网络来计算IIG的近似纳什均衡。例如,其中一个神经网络可用于学习累积遗憾,另一个神经网络可用于学习平均策略分布(strategy profile)的累积分子。在这两个网络的帮助下,双神经CFR算法不需要使用基于表格的两个大容量存储器。基于该紧凑神经网络的泛化能力,累积遗憾和平均策略可以被学习和生成。所公开的双神经CFR算法可以保持MCCFR需要较少的计算负荷的益处还不需要两个大容量表格式存储器。即使存在存储器限制,所公开的双神经CFR算法也可用于大型博弈中。在一些实施例中,相比于现有技术,双神经方法可以以更少的迭代实现更低的可利用性。另外,在一些实施例中,在从不良表格策略初始化之后,双神经CFR还可以持续改进。
在一些实施例中,所描述的技术可以用于例如AI扑克、推荐平台和许多其他AI和机器学习的应用。所描述的技术使用蒙特卡罗方法,并且不需要针对整个博弈树的变量。
在一些实施例中,具有玩家有限集合N={0,1,...,n-1}的扩展式博弈可以表示如下。定义hv i为IIG中玩家i的隐藏变量。例如,在扑克游戏中,hv i可以指玩家i的私人牌。H指的是历史的有限集合。H的每个成员 表示可能的历史(或状态),其包括每个玩家的隐藏变量和包括机会的玩家所采取的L个动作。对于玩家i,h也可以表示为其中指的是对手的隐藏变量。空序列是H的成员。表达式表示hj是h的前提(prefix),其中且0<L’<L。表示终点历史,并且任何成员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 ia0a2...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扑克。单牌扑克是扩展式博弈的示例。
博弈树是有向图。博弈树的节点表示博弈中的位置(或玩家状态),并且博弈树表示的节点可以表示博弈的玩家的行动或动作。在图1中,zi表示终点节点,表示终点状态,hi表示非终点节点。部分博弈树102和104各自具有表示机会的根节点h0。在第一部分树102中存在19个不同的节点,对应于左侧树中的包括机会h0的9个非终点节点hi和10个终点节点zi。
在第一部分树102中,两个玩家(玩家0和玩家1)被发牌(Q,J),如左子树中的“0:Q1:J”和(Q,J),如右子树中所示的“0:Q 1:K”。
从根节点到每个节点的轨迹是动作的历史。动作由博弈树的边(用箭头表示)旁边的字母(例如,F、C、P和B)或表达式(例如,“0:Q 1:J”)表示。
在扩展式博弈中,hi指的是动作的历史。例如,如第一部分树102中所示,h3包括动作0:Q 1:J和P。h7包括动作0:Q 1:J、P和B。h8包括动作0:Q1:K、P和B。在第一部分树102中,即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的序列。由于h7和h8未被IIG中的玩家0区分,如果I0是h7和h8的信息集,则I0=I0(h7)=I0(h8)。
策略分布σ={σi|σi∈Σi,i∈N}是所有玩家策略的集合,其中Σi是玩家i的所有可能策略的集合。σ-i指的是除了玩家i之外的所有玩家的策略。对于玩家i∈N,策略σi(Ii)是函数,它将A(Ii)上的动作分布分配给信息集Ii。σi(a|h)表示在状态h由玩家i∈N∪{c}采取动作a的概率。在IIG中,如果两个或更多个状态具有相同的信息集,则这两个或更多个状态具有相同的策略。即,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,策略分布σ的预期博弈效用被表示为其是所有可能终点节点的预期收益。给定固定策略分布σ-i,玩家i的针对实现收益最大化的任何策略是最佳回应。对于双玩家的扩展式博弈,纳什均衡是策略分布以使每个玩家的策略是对对手的最佳回应。∈-纳什均衡是纳什均衡的近似,其策略分布σ*满足:
策略σi的可利用性可以定义为如果∈i(σi)=0,则策略是不可利用的。在像扑克这样的大型双玩家零和游戏中,很难计算。然而,如果玩家交换他们的位置,则一对游戏的值为零,即策略分布σ的可利用性可以定义为
对于诸如CFR的迭代方法,σt指的是第t次迭代的策略分布。如果玩家根据σ采取动作,则历史h的状态到达概率可以用πσ(h)表示。对于空序列,πσ(φ)=1。可以根据每个玩家的贡献将到达概率分解为 其中和
信息集Ii的到达概率(也称为信息集到达概率)可以定义为 如果从状态h′到h的间隔状态到达概率可以定义为πσ(h’,h),则πσ(h’,h)=πσ(h)/πσ(h’)。到达概率和可以被类似地定义。
在大型零和IIG中,CFR被证明是用于计算纳什均衡的有效方法。可以证明,一个玩家的状态到达概率与对手的隐藏变量的后验概率成比例,即,其中hv i和Ii表示特定h。
对于玩家i和策略分布σ,状态h下的反事实值(CFV)vi σ(h)可以定义为
其中是玩家i相对于对手的隐藏变量的近似后验分布的预期奖励。采取动作a的动作反事实值可以表示为vi σ(a|h)=vi σ(ha),并且采取该动作的遗憾是ri σ(a|h)=vi σ(a|h)-vi σ(h)。
类似地,信息集Ii的CFV可以定义为给定信息集Ii,动作a的遗憾可以定义为
然后,可以根据式(2)计算动作a在T次迭代之后的累积遗憾:
其中Ri 0(a|Ii)=0。定义Ri T,+(a|Ii)=max(Ri T(a|Ii),0),可以例如基于遗憾匹配,根据如下式(3)更新T+1迭代处的当前策略(或行为策略):
从迭代1到T的平均策略可以定义为:
其中,表示在第t次迭代时Ii的信息集到达概率,并用于对相应的当前策略进行加权。
在迭代t中定义为附加分子,然后可以将平均策略的累积分子定义为
其中S0(a|Ii)=0。
在求解博弈时,原始CFR在每次迭代中遍历整个博弈树。因此,原始CFR可能无法用有限的存储器处理大型博弈。引入蒙特卡洛CFR(MCCFR)以使反事实遗憾最小化。MCCFR可以计算反事实值的无偏估计并避免遍历整个博弈树。由于在每次迭代中仅访问所有信息集的子集,因此MCCFR所需的存储空间比原始CFR少。
例如,定义Q={Q1,Q2,...,Qm},其中Qj∈Z是每次迭代中的采样终点历史的块,使得Qj涵盖集合Z。通常,根据指定的采样方案,不同的Qj可能会重叠。可以使用几种采样方案。
图2是根据本文的实施例示出的不同采样方案的示例的图200。具体地,子图A示出了博弈树的外部采样方案202的示例;子图B示出了博弈树的结果采样方案204的示例,子图C示出了博弈树的鲁棒采样方案206的示例。
如图2中所示,圆圈表示玩家0节点,矩形表示玩家1节点,三角形表示机会节点。实线边或箭头表示被采样的动作,而虚线边或箭头表示未被采样的动作。阴影节点表示被采样的节点,而空白节点表示未被采样的节点。
以玩家0的更新为例,用如子图A所示的外部采样方案202,玩家0节点遍历玩家0节点的所有分支,非玩家0节点(例如,玩家1节点和机会节点)根据相应采样策略对分支进行随机采样。
结果采样方案不区分不同玩家。如子图B所示,结果采样方案204根据相应采样策略随机地针对所有玩家对一个分支进行采样。因此,在结果采样方案下只会对一个轨迹进行采样。
如子图C所示,鲁棒采样方案206根据玩家0的均匀分布随机选择k个分支,并根据相应采样策略对非玩家0节点的一个分支进行随机采样。通过改变k的值,鲁棒采样方案可以对多个路径或单个路径进行采样,例如,取决于实际存储器需求或系统规范。与外部采样方案不同,鲁棒采样方案不需要每次都了解在当前玩家i的决策点的所有可能动作和变量。
在一些实施例中,在外部采样和结果采样方案中,每个块Qj∈Q表示Z的分划。定义为考虑块Qj的概率,其中定义 为考虑特定终点历史z的概率。在一些实施例中,普通CFR可以被认为是MCCFR的特殊情况,其中Q={Z}仅包含一个块并且qQ1=1。
在结果采样方案中,将仅对一个轨迹进行采样,使得|Qj|=1且|Qj|=|Z|。对于信息集Ii,反事实值的样本估计是
证明了MCCFR中的采样反事实值是CFR中实际反事实值的无偏估计:
定义σrs为采样策略分布,其中σrs是玩家i的采样策略,并且是除玩家i之外的玩家的采样策略。在一些实施例中,对于外部采样和结果采样,采样动作a∈A(Ii)的遗憾可以定义为:
其中是由加权的新效用。可以将T次迭代后的动作a的累积遗憾的样本估计定义为且
对于鲁棒采样,可以将采样简档定义为其中玩家i可以根据针对每个信息集Ii的采样策略随机选择k个动作,并且其他玩家可以根据策略σ-i随机选择一个动作。
在一些实施例中,如果玩家i根据在信息集Ii的离散均匀分布unif(0,|A(Ii)|)随机选择min(k,|A(Ii)|)个动作。即那么在玩家i根据采样策略或简档采取动作的情况下,信息集Ii的到达概率可以通过下式计算:
并且在给定采样简档σrs(k)的情况下,加权效用在每次迭代中可以是常数,其具有低方差。此外,由于加权效用不再需要明确了解对手的策略,因此鲁棒采样可以用于在线遗憾最小化。
为简化符号,令k=max表示k=maxIi∈I|A(Ii)|。如果k=max和玩家i根据信息集Ii的离散均匀分布unif(0,|A(Ii)|)随机选择k个动作, 则鲁棒采样可以类似于k=maxIi∈I|A(Ii)|时的外部采样。
如果k=1且在这种情况下只对一个历史z进行采样,那么对于a∈Ars (k)(Ii),
如果在状态h没有对动作a进行采样,即则遗憾是在这种情况下,鲁棒采样类似于k=1且 时的结果采样。
如果k=1,且玩家i根据信息集Ii的离散均匀分布unif(0,|A(Ii)|)随机选择一个动作,则鲁棒采样可以与结果采样类似。例如,如果k=1,并且玩家i根据信息集Ii的离散均匀分布unif(0,|A(Ii)|)随机选择一个动作,则
对于a∈Ars(k)(Ii),是常数,
如果在状态h没有对动作a进行采样,即则遗憾是与结果采样相比,在这种情况下的鲁棒采样的方差由于常数而较小。
图3是根据本文的实施例的鲁棒采样MCCFR的示例的伪代码300。如伪代码300的第1-5行所示,整体鲁棒采样MCCFR是输入为总迭代次数t的迭代算法。在每次迭代t内,针对玩家0和玩家1调用鲁棒采样MCCFR(RS-MCCFR)函数(如第3和第4行所示),以更新累积遗憾Rt(·|Ii)和平均策略分子St(a|Ii)。函数RS-MCCFR可以定义为如伪代码300的第6-30行中所示。函数RS-MCCFR返回每个信息集的反事实值作为输出。在一些实施例中,反事实值可用于计算反事实遗憾。因此,可以相应地获得累积遗憾和时间平均策略。
具体地,函数RS-MCCFR根据如上结合图2所述的鲁棒采样方案对多个动作进行采样。如伪码300的第16行所示,可以根据鲁棒采样策略对k个不同的动作进行采样并收集为Ars(k)(Ii)。
在一些实施例中,可以使用深度依赖采样方案来提供由博弈树表示的博弈的更平衡或全面的信息。例如,采样策略可以是博弈树中状态h的深度的函数。例如,可以设计采样策略使得更接近终点状态的状态的采样概率比接近初始状态的状态(例如,由博弈树的根表示的状态)的采样概率高。作为示例,可以通过将不同的权重赋予具有不同深度的不同状态的采样概率来实现深度依赖采样方案。这种深度依赖采样可以帮助提供关于更靠近终点状态的状态的更多信息,这可以是有利的,因为通常更接近终点状态的状态比更接近初始状态的状态要多(例如,由于博弈树的分支结构),并且在现有的采样方案下,这些节点的被采样的可能性低于采样轨迹中更接近根节点的节点的被采样的可能性。
在一些实施例中,深度依赖采样方案可以与鲁棒采样、结果采样、外部采样或任何其他合适的采样算法结合使用。例如,深度依赖采样方案可以进一步改善鲁棒采样、结果采样和外部采样中任一项的方差和收敛速度,因为后三种采样方案更多地关注于玩家状态博弈树的不同动作之间的水平采样(例如,表示为博弈树的一个节点的不同分支)。
图4是根据本文的实施例示出的应用于博弈树410的双神经CFR算法的示例400的图。双神经CFR算法400使用两个神经网络420和430来计算IIG,例如由博弈树410表示,的近似纳什均衡。如图4中所示,一个神经网络420用于获得累积遗憾并且被称为RegretSumNetwork(RSN)。另一神经网络430用于获得平均策略,并且被称为AveStrategyNetwork(ASN)。
在一些实施例中,CFR算法的迭代更新维持两种策略:当前策略σi t(a|Ii)以及针对的平均策略因此,两个神经网络420和430可以被设计为分别以迭代方式记录这两个策略。在一些实施例中,双神经CFR算法的示例400可以被称为双增量CFR算法,因为是基于每次迭代中新的、额外的样本来训练或优化该神经网络的。
根据公式(3),可以通过累积遗憾Rt(a|Ii)来计算当前策略σt+1(a|Ii)。在一些实施例中,仅公式(3)中的分子被跟踪,因为当使用该策略时,可以容易地计算分母的归一化。给定信息集Ii和动作a,表示为的神经网络RSN 420可以用于学习Rt(a|Ii),其中是在第t次迭代时RSN 420中的参数。
如图4所示,存储器可以定义为 的每个成员可以包括所访问的信息集Ii和相应遗憾其中Qj是第t次迭代中的采样块。根据式(2),可以使用以下优化进行估计:
根据式(4),近似纳什均衡是T次迭代中所有先前策略的加权平均。类似于累积遗憾,被表示为的另一神经网络ASN 430可用于学习平均策略分子。将另一存储器定义为
的每个成员可以包括访问信息集Ii和πi σt(Ii)σi t(a|Ii)的值,其中Qj是第t次迭代中的采样块。然后可以通过下式估计ASN 430的参数
在一些实施例中,在每次迭代中,和两者都可以根据梯度下降法通过优化公式(7)和式(8)中的目标进行优化,例如相对于以下图7描述的小批量随机梯度下降法。
在一些实施例中,如果大容量存储器可用于在多次迭代内汇总并保存则平均策略不需要在每次迭代中更新。如果存储器已满,则可以通过优化公式(8)来学习增量值。
在一些实施例中,在每次迭代中,仅对信息集的小的子集进行采样,这可能导致神经网络RSN 420和ASN 430忘记那些未观察到的或未采样的信息集的值。为了解决这个问题,来自先前迭代的神经网络参数可以用作当前迭代的初始值,为更新提供了在线学习/适应特色。此外,由于神经网络的泛化能力,即使来自信息集的少量样本也可用于更新新神经网络,并且新更新的神经网络可以为累积遗憾和平均策略产生良好的值。
在一些实施例中,随着迭代次数t增加,Ri t(a|Ii)的值可能变得越来越大,可能使得神经网络难以学习。为了解决这个问题,累积遗憾可以通过的因子进行归一化来使其范围更稳定。这可以根据在线学习的遗憾约束来理解。更具体地,令Δ=maxIi,a,t|Rt(a|Ii)-Rt-1(a|Ii)|,t∈{1,...,T}。其中|A|=maxIi∈I|A(Ii)|。在一些实施例中,神经网络RSN 420可用于跟踪并通过下式更新它:
其中R^i 0(a|Ii)=0。
在一些实施例中,例如,由于存储器和的容量有限,在双增量CFR算法中,存储器和可以在每次迭代之后被清除。在一些实施例中,例如在大型博弈中,即使是使用神经网络来学习累积遗憾和平均策略的双增量CFR算法,存储器和的容量仍然可能需要非常大才能记录每次迭代的累积遗憾和平均策略。
在一些实施例中,为了用有限存储器但无限迭代来持续改进平均策略和/或进一步减轻对存储器容量的要求,可以使用利用两个贮存器(reservoir)MR和MS的双贮存器CFR算法贮存器来保存不同迭代中的采样累积遗憾以及平均策略,以动态学习累积遗憾和平均策略。
在一些实施例中,可以根据重写公式(2)的公式(10)获得T次迭代之后的平均累积遗憾:
类似地,平均策略可以是累积策略的归一化,如公式(4)所示,是由其到达概率进行加权的平均策略
在一些实施例中,两个一样的贮存器MR和MS可用于分别保存采样的和st(a|Ii)。具体而言,MR可以保存中的样本的贮存器,而MS可以保存中的样本的贮存器。可以通过贮存器采样算法将新样本插入到贮存器中。贮存器采样包括一系列随机算法,用于从包含n个项目的列表中随机选择k个项目。例如,如果贮存器未满,则可以将新样本直接添加到贮存器中。如果贮存器已满,则新样本可以根据先进先出(FIFO)原则或根据均匀随机分布或其他分布替换旧样本。
请注意,双增量CFR算法和双贮存器CFR算法均采用在线学习的思想,并分别使用两个神经网络来学习更新遗憾和平均策略。在一些实施例中,不需要在每次迭代中更新ASN,而在蒙特卡洛采样之后可能需要对RSN进行优化以产生新的行为策略。例如,当使用新的行为策略遍历博弈树时,可能需要在每次迭代时更新RSN。另一方面,ASN可以用作最终的近似纳什均衡,其是行为策略的加权平均。ASN可以用作双神经CFR算法的输出。如果有足够大的数据存储设备来保存所有样本,则只需要在最后一步优化平均策略。实际上,对于大型博弈,大容量数据存储设备可能非常昂贵。这样,如果数据存储设备(例如,贮存器)已满,则可以逐步优化平均策略。这样,双神经CFR算法可以包括两个变体。在双增量算法中,仅通过增量样本对神经网络(例如,RSN和/或ASN)进行优化,而在双贮存器算法中,可以通过贮存器中的所有样本对神经网络(例如,RSN和/或ASN)进行优化。
双神经CFR算法和双贮存器CFR算法具有不同的样本集。对于双增量CFR,基于新增的多个样本对神经网络进行优化。对于双贮存器CFR,基于固定大小的贮存器中的多个样本对神经网络进行优化。另外,在双贮存器法中,平均策略可以通过最大对数似然而不是最小均方误差来优化。
图5是根据本文的实施例的双神经CFR算法的示例的伪代码500。该双神经CFR算法的示例包括使用双神经CFR算法或双贮存器CFR算法的选项。
伪代码500的第3-7行显示了第一次迭代中初始化策略的示例。例如,如果系统根据现有CFR方法(例如基于表格的CFR或MCCFR方法或该双神经CFR方法)热启动,则可以根据现有策略分布初始化神经网络以克隆累积遗憾和策略。如果没有热启动初始化,则双神经CFR算法可以在迭代t=1时通过随机初始化RSN和ASN中的参数来启动。
在一些实施例中,如果使用双增量CFR算法,如伪代码500的第8行所示,则可以使用采样方法来返回该迭代中被采样信息集的反事实遗憾和平均策略分子。该迭代中被采样信息集的反事实遗憾和平均策略分子可以分别保存在存储器和中。采样方法可以包括例如如图7描述的小批量鲁棒采样方法算法。在一些实施例中,例如,根据下式(11)和如图7描述的小批量MCCFR算法,此次迭代中多个被采样信息集的多个反事实遗憾可以通过信息集进行累加,以在中提供总值。在一些实施例中,可以删除中的重复记录。
在一些实施例中,如果使用双贮存器CFR算法,则该迭代中被采样信息集的反事实遗憾和平均策略分子(例如在双增量CFR算法中保存在存储器和中的那些)可以分别被保存在贮存器MR和MS中。如果贮存器MR和/或MS已满,则可以使用贮存器采样。
如伪代码500的第13-15行所示,该迭代中被采样信息集的这些反事实遗憾和平均策略分子可以由图6所示的NeuralAgent算法使用,以优化两个神经网络RSN和ASN,并返回RSN和ASN(例如,和)的参数(例如和)。
图6是根据本文的实施例的用于优化与双神经CFR算法相关的神经网络的算法的示例的伪代码600。该算法的示例称为NeuralAgent算法。所描述的双神经CFR算法可以使用其他算法来优化在双神经CFR算法中使用的一个或两个神经网络。
将βepoch定义为训练回合(epoch),βlr定义为学习率,βloss定义为提前停止或终止的标准,βre定义为自上次获得最小损失以来的迭代次数的上限,θt-1定义为要优化的参数,f(·|θt-1)定义为神经网络,M定义为训练样本,由信息集和相应目标组成。为了简化表示,使用β*表示神经网络的参数集。例如,和βS *分别表示RSN和ASN中的参数集。实验表明,经过精心设计的NeuralAgent算法在优化神经网络RSN和ASN方面可以获得相对较高的可利用性收敛速度。伪代码600以解释性注释示出了NeuralAgent算法的细节。
在一些实施例中,现有的优化器可能因潜在的鞍点或局部最小值而不会返回足够低的损失。为了获得相对较高的精度和较低的优化损失,专门设计了一种调度器,以在损失已停止减少时降低学习率。具体地,调度器读取度量值量,例如均方误差,并且如果若干回合内没有看到改善,则学习率被降低了一个因子。另外,一旦损失在βre回合停止减少,就可以在优化器和调度器中重置学习率。可以使用梯度裁剪机制来限制参数梯度的大小,并使优化器在陡崖附近表现更好。在每个回合之后,最佳参数将被更新。一旦最低损失小于规定的标准βloss,就使用提前停止机制。
在实验中,可以如下设置神经网络的超参数。例如,对于RSN,神经批量大小(batchsize)为256,学习率βlr=0.001。调度器将基于回合的数量和损失的收敛速率降低学习率,帮助神经智能体获得高精度。当损失在10个回合后停止改善时,学习率可以降低0.5。该调度器中所有参数的学习率的下限是10-6。为了避免算法收敛到潜在局部最小值或鞍点,可以将学习率重置为,例如,0.001,并帮助优化器学习更好的性能。θbestT是在T个回合后实现最低损耗的最佳参数。如果回合t的平均损失小于指定的标准βloss=10-4,则优化器可以提前停止。例如,设置βepoch=2000并更新优化器最多2000个回合。
对于ASN,提前停止标准的损失可以设置为10-5。当损失在15个回合后停止改善时,学习率可以降低0.7。ASN中的其他超参数可以类似于RSN的那些超参数。
图7是根据本文的实施例的小批量MCCFR算法的示例的伪代码700。小批量MCCFR算法(表示为Mini-Batch-MCCFR-NN)包括用于获取博弈的被采样信息集的反事实遗憾和平均策略分子的采样算法。与仅在一次迭代中对一个块进行采样并提供一个原始CFV的无偏估计量的传统的结果采样和外部采样不同,小批量采样技术可以在一次迭代中随机采样b个块。伪代码700中所示的小批量MCCFR算法的示例基于上述鲁棒采样。在一些实施例中,小批量MCCFR算法可以与诸如深度依赖采样方案的其他采样方案结合使用。请注意,小批量MCCFR算法是用于获取博弈的被采样信息集的反事实遗憾和平均策略分子的算法的示例。双神经CFR算法可以使用其他算法来获取博弈的被采样信息集的反事实遗憾和平均策略分子。
令Qj表示在第j次根据鲁棒采样方案采样的终点块,然后对于信息集Ii,具有b个小批量的小批量CFV可定义为:
此外,可以表明v~i σ(Ii|b)是Ii的反事实值的无偏估计量:EQj~鲁棒采样[v~i σ(Ii|b)]=vi σ(Ii)。
同样,动作a的累积小批量遗憾是
其中R~i 0((a|Ii)|b)=0。在一些实施例中,小批量MCCFR可以并行地对b个块进行采样,并且帮助MCCFR更快地收敛。
注意,小批量MCCFR使用遗憾匹配算法来更新累积小批量遗憾R~T,+((a|Ii)|b)。在一些实施例中,作为小批量MCCFR的变型,可以通过下式使用小批量MCCFR+算法来更新累积小批量遗憾R~T,+((a|Ii)|b)直到迭代T:
其中,(x)+=max(x,0)。在一些实施例中,发现当指定合适的小批量大小时,小批量MCCFR+的收敛比小批量MCCFR的收敛快。伪代码700中所示的函数Mini-Batch-MCCFR-NN提出了一种小批量采样方法,其中b个块将被并行采样。这种小批量方法可以帮助MCCFR实现对CFV的更准确地估计。并行采样使该方法在实践中有效。
如伪代码700的第1-6行所示,Mini-Batch-MCCFR-NN是输入为总迭代次数t的迭代算法。在每次迭代中,MCCFR-NN函数分别被调用用于玩家0和玩家1(如第4和5行所示),并且该迭代中的被采样信息集的反事实遗憾和平均策略分子分别被返回并被保存在存储器和中。
函数MCCFR-NN可以定义为如伪代码700的第8-33行所示的。函数MCCFR-NN像表格MCCFR一样遍历博弈树,它从根历史开始。将Ii定义为h的信息集。假设玩家i将根据鲁棒采样对k个动作进行采样。然后函数可以被定义为如下。(1)如果历史是终点(例如h∈Z),则该函数返回加权效用。(2)如果历史是机会玩家(例如P(Ii)=-1),则可以根据策略σ-i(Ii)对一个动作a∈A(Ii)进行采样。然后,此动作将被添加到历史中,即h←ha。(3)如果P(Ii)=i,则可以通过RSN预测的累积遗憾更新当前策略。然后根据指定采样策略分布(例如,利用或不利用深度依赖采样的鲁棒采样)对k个动作进行采样。在进行递归更新后,可以获得在Ii处每个动作的反事实值和遗憾。对于被访问的节点,可以将其反事实遗憾和相应平均策略分子分别存储在和中。(4)如果P(Ii)是对手,则将根据策略σ-i(Ii)仅对一个动作进行采样。
图8是根据本文的实施例的用于执行MCCFR的采样处理800的示例的流程图。采样处理800可以是上述用于执行反事实遗憾最小化(CRF)以在两方或更多方之间的策略互动中进行策略搜索的深度依赖采样方案的示例。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。IIG可以代表涉及两方或更多方的一个或多个现实场景,例如资源分配、产品/服务推荐、网络攻击预测和/或预防、流量交通路线规划、欺诈管理等,其中,每方可以具有关于他方的决策的不完全或不完美信息。作为示例,IIG可以表示至少涉及第一玩家和第二玩家的合作产品/服务的推荐服务。第一玩家可以是,例如,具有客户(或用户)信息、产品和服务信息、客户的购买历史等的在线零售商。第二玩家可以是,例如,具有该客户的社交网络数据的社交网络平台、具有该客户的财务信息的银行或其他金融机构、汽车经销商或在预测和向该客户推荐产品和服务时具有关于该客户的偏好、需求、财务状况、位置等客户信息的任何其他方。第一玩家和第二玩家可能各自具有不希望与他人共享的专有数据。第二玩家可以在不同时间向第一玩家仅提供部分信息。这样,第一玩家对第二玩家的信息只有有限访问权。为方便起见,处理800将被描述为数据处理装置,如,位于一个或多个位置并根据本文被适当地编程的一个或多个计算机的系统。例如,被适当地编程的图10的计算机系统1000可以执行处理800。
在810处,数据处理装置识别第一玩家在第一玩家的第一状态下的N1个可能动作。在一些实施例中,IIG可以由博弈树(例如,博弈树102、104、202、204或206)表示。第一玩家的第一状态可以由博弈树的第一节点(例如,博弈树102中的玩家0的节点h1)表示,并且N1个可能动作可以是博弈树的第一节点的边或分支(例如,博弈树102中玩家0的节点h1的P和B边)。在合作产品/服务的推荐服务的示例中,第一玩家的第一状态包括第二玩家所提供信息的历史,并且第一玩家的N1个可能动作包括响应于第二玩家所提供信息的历史的N1个可能动作,以向客户提供产品/服务推荐。第一玩家的第一状态和可能动作可以包括由IIG建模的其他现实场景中的其他特征。
在820处,数据处理装置以第一采样概率从第一玩家在第一状态下的N1个可能动作中采样出可能动作。在一些实施例中,数据处理装置可以从第一玩家在第一状态下的N1个可能动作中采样出k1个可能动作,其中,k1个可能动作中的每个动作都以相同的第一采样概率被采样。
在830处,数据处理装置识别第一玩家在第一玩家的第二状态下的N2个可能动作,其中,第一玩家的第一状态比第一玩家的第二状态更接近IIG的开始状态。在博弈树102的示例中,第一玩家的第二状态可以是例如h7节点,其比第一玩家的第一状态(例如,博弈树102中的玩家0的节点h1)距离博弈树102的开始状态(例如,h0节点)更远。
在840处,数据处理装置以第二采样概率从第一玩家在第二状态下的N2个可能动作中采样出可能动作,其中,第一采样概率小于第二采样概率。在一些实施例中,数据处理装置从第一玩家在第二状态下的N2个可能动作中采样出k2个可能动作,其中,k2个可能动作中的每个动作都以相同的第二采样概率被采样。
在850处,数据处理装置基于从第一玩家在第一状态下的N1个可能动作中采样出的可能动作和从第一玩家在第二状态下的N2个可能动作中的采样出可能动作执行CRF。在一些实施例中,可以根据相对于图3和/或图7描述的示例性技术来执行CRF。
在一些实施例中,输出是通过求解IIG产生的第一玩家的策略。该策略可以包括由IIG建模的现实场景中第一玩家的一系列动作。例如,在合作产品/服务的推荐场景中,通过求解IIG产生的第一玩家的策略可以包括,如,响应于第二玩家提供的信息的一系列动作、基于第一玩家的信息给客户的相应产品/服务的推荐、以及由第二玩家提供的信息。通过求解IIG产生的第一玩家的输出策略可以包括由IIG建模的其他现实场景中的其他信息。
在一些实施例中,基于从第一玩家在第一状态下的N1个可能动作中采样出的可能动作和从第一玩家在第二状态下的N2个可能动作中采样出的可能动作执行CRF,包括:计算从第一玩家在第一状态下的N1个可能动作中采样出的可能动作的遗憾值(例如,根据公式(1a)和/或公式(2));计算从第一玩家在第二状态下的N2个可能动作中采样出的可能动作的遗憾值(例如,根据公式(1a)和/或公式(2));基于N1个可能动作中采样出的可能动作的该遗憾值更新第一玩家在第一状态下的第一策略(例如,根据公式(3));以及基于N2个可能动作中采样出的可能动作的该遗憾值更新第一玩家在第二状态下的第二策略(例如,根据公式(3))。
在一些实施例中,数据处理装置基于从第一玩家在第一状态下的N1个可能动作中采样出的k1个可能动作和从第一玩家在第二状态下的N2个可能动作中采样出的k2个可能动作执行CRF。
在一些实施例中,可以结合深度依赖采样进行鲁棒采样。例如,第一采样概率是k1/N1,第二采样概率是k2/N2。这样,根据均匀分布该可能动作被采样。
在一些实施例中,2<=k1<=N1且2<=k2<=N2,以便玩家的每个状态都会有一个以上的可能动作被使用。
在一些实施例中,k1=k2,因此在第一玩家的第一状态和第二状态下选择或访问相等数量的样本。
类似地,可以结合第二玩家进行深度依赖采样。例如,数据处理装置识别第二玩家在第二玩家的第一状态下的M1个可能动作。数据处理装置以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作。数据处理装置识别第二玩家在第二玩家的第二状态下的M2个可能动作,其中,第二玩家的第一状态比第二玩家的第二状态更接近IIG的开始状态。数据处理装置以第四采样概率从第一玩家在第二状态下的M2个可能动作中采样出可能动作,其中,第三采样概率小于第四采样概率。
在一些实施例中,可以结合第一玩家和第二玩家两者进行深度依赖采样。在一些实施例中,数据处理装置识别第二玩家在第二玩家的第一状态下的M1个可能动作,其中,第一玩家的第一状态(例如,博弈树102中的玩家0的状态h1)比第二玩家的第一状态(例如,博弈树102中的玩家1的状态h4)更接近IIG的开始状态(例如,h0状态)。数据处理装置以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作,其中,第三采样概率大于第一采样概率。
图9是根据本文的实施例的用于执行MCCFR的双神经CFR算法900的示例的流程图。采样处理900可以是如上针对图4至图7描述的用于执行反事实遗憾最小化(CRF)以在两个或更多个玩家之间的策略互动中进行策略搜索的双贮存器CFR算法的示例。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。IIG可以代表涉及两方或更多方的一个或多个现实场景,例如资源分配、产品/服务推荐、网络攻击预测和/或预防、流量交通路线规划、欺诈管理等,其中,每方可以具有关于他方的决策的不完全或不完美信息。作为示例,IIG可以表示至少涉及第一玩家和第二玩家的合作产品/服务的推荐服务。第一玩家可以是,例如,具有客户(或用户)信息、产品和服务信息、客户的购买历史等的在线零售商。第二玩家可以是,例如,具有该客户的社交网络数据的社交网络平台、具有该客户的财务信息的银行或其他金融机构、汽车经销商或在预测和向该客户推荐产品和服务时可能具有关于该客户的偏好、需求、财务状况、位置等客户信息的任何其他方。第一玩家和第二玩家可能各自具有不希望与他人共享的专有数据。第二玩家可以在不同时间向第一玩家仅提供部分信息。这样,第一玩家对第二玩家的信息只有有限访问权。为方便起见,处理900将被描述为数据处理装置,如,位于一个或多个位置并根据本文被适当地编程的一个或多个计算机的系统。例如,被适当地编程的图10的计算机系统1000可以执行处理900。
在910处,数据处理装置初始化第一神经网络的参数和第二神经网络的参数。第一神经网络(例如,RegretSumNetwork(RSN)420)可用于预测玩家状态下的可能动作的遗憾值。在合作产品/服务的推荐服务的示例中,玩家状态包括第二玩家所提供信息的历史,并且玩家的可能动作包括响应于第二玩家所提供信息的历史的可能动作,以向客户提供产品/服务的推荐。第二神经网络(例如,AveStrategyNetwork(ASN)430)可用于预测玩家状态下的可能动作的策略值。在一些实施例中,数据处理装置根据热启动分别初始化参数,例如基于在先前迭代中或基于现有CRF算法获得的第一神经网络的参数和第二神经网络的参数分别初始化参数。在一些实施例中,数据处理装置随机地初始化第一神经网络的参数和第二神经网络的参数。
在920处,数据处理装置在第一数据存储设备(例如,贮存器MR)中存储多个遗憾样本,其中,多个遗憾样本各自包括玩家状态和该玩家状态下的可能动作的遗憾值。在一些实施例中,玩家状态下的可能动作的遗憾值包括基于该玩家状态下的该可能动作的反事实值计算出的该玩家状态下的该可能动作的反事实遗憾值。例如,每个遗憾样本可以包括遗憾元组(Ii,r~i σt(a|Ii))。在一些实施例中,在该玩家与至少另一玩家之间的策略互动中进行策略搜索时,通过反事实遗憾最小化(CRF)算法的两次或更多次迭代获得多个遗憾样本。在一些实施例中,CRF算法包括鲁棒采样CRF算法。
在一些实施例中,在求解IIG的CRF算法的两次或更多次迭代的每次迭代中,数据处理装置根据采样方案从玩家在第二状态下的多个可能动作中采样出可能动作;计算玩家在第二状态下的该可能动作的反事实值(例如,根据公式(1));基于玩家在第二状态下的该可能动作的该反事实值,计算玩家在第二状态下的该可能动作的遗憾值(例如,根据公式(1a)和/或公式(2));根据遗憾匹配算法,基于玩家在第二状态下的该可能动作的该遗憾值,计算玩家在第二状态下的该可能动作的更新策略(例如,根据公式(3));以及基于玩家在第二状态下的该可能动作的该更新策略,计算玩家在第二状态下的该可能动作的策略值(例如,根据公式(4)和/或公式(5))。
在一些实施例中,数据处理装置可以获得新遗憾样本(例如,通过执行MCCFR的另一次迭代)。所述数据处理装置可以根据贮存器采样算法将新遗憾样本存储到第一数据存储设备中。例如,根据贮存器采样算法将新遗憾样本存储到第一数据存储设备中,包括:确定第一数据存储设备是否已满;当确定第一数据存储设备已满,用新遗憾样本替换第一数据存储设备中的多个遗憾样本中的一个。
在930处,数据处理装置在第二数据存储设备(例如,贮存器MS)中存储多个策略样本,其中,多个策略样本各自包括玩家状态和该玩家状态下的可能动作的策略值。在一些实施例中,玩家状态下的可能动作的策略值包括平均策略分子。例如,多个策略样本各自可以包含策略元组(Ii,st(a|Ii))。
在940处,例如,根据公式(7),数据处理装置基于第一数据存储设备中的多个遗憾样本更新用于预测玩家状态下的可能动作的遗憾值的第一神经网络的参数。在一些实施例中,可以根据图6所示的NeuralAgent算法或任何其他用于优化神经网络的算法更新第一神经网络的参数。
在950处,例如,根据公式(8),数据处理装置基于第二数据存储设备中的多个策略样本更新用于预测玩家状态下的可能动作的策略值的第二神经网络的参数。在一些实施例中,可以根据图6所示的NeuralAgent算法或任何其他用于优化神经网络的算法更新第二神经网络的参数。
在960处,数据处理装置识别玩家的第一状态以及玩家在第一状态下的第一可能动作。
在970处,数据处理装置使用第一神经网络的参数预测玩家在第一状态下的第一可能动作的第一遗憾值。在一些实施例中,玩家在第一状态下的第一可能动作的预测的第一遗憾值可以被用于CFR算法的下一次迭代中。
在980处,数据处理装置使用第二神经网络的参数预测玩家在第一状态下的第一可能动作的第一策略值。在一些实施例中,玩家在第一状态下的第一可能动作的预测的第一策略值可以被用于CFR算法的下一次迭代中。在一些实施例中,玩家在第一状态下的第一可能动作的预测的第一策略值可以被用于计算近似纳什均衡并作为CFR算法的输出。在一些实施例中,玩家在第一状态下的第一可能动作的预测的第一策略值可以包括在由IIG建模的现实场景中的第一玩家的一系列动作。例如,在合作产品/服务的推荐场景中,玩家在第一状态下的第一可能动作的预测的第一策略值可以包括,例如,响应于由第二玩家提供的信息的一系列动作、基于第一玩家的信息给客户的相应产品/服务的推荐、以及由第二玩家提供的信息。玩家在第一状态下的第一可能动作的预测的第一策略值可以包括由IIG建模的其他现实场景中的其他信息。
图10描绘了示出根据本文的实施例的计算机实现的用于提供与所描述的算法、方法、功能、处理、流程和程序相关联的计算功能的系统的示例的框图。图10是示出根据本公开的实施例的计算机实现的用于提供与所描述的算法、方法、功能、处理、流程和程序相关联的计算功能的系统1000的示例的框图。在所示的实施例中,系统1000包括计算机1002和网络1030。
所示的计算机1002旨在包含任何计算设备,例如服务器、台式计算机、膝上型计算机/笔记本计算机、无线数据端口、智能电话、个人数据助理(PDA)、平板计算机、这些设备中的一个或多个处理器、另一计算设备或计算设备的组合,包括计算设备的物理或反事实实例、或计算设备的物理或反事实实例的组合。另外,计算机1002可以包括输入设备,例如小键盘、键盘、触摸屏,另一输入设备或可以接受用户信息的输入设备的组合,以及传达与计算机1002的操作相关联的信息的输出设备,包括图形类型的用户界面(UI)(或GUI)或其他UI上的数字数据、视觉、音频、另一种类型的信息或各种类型的信息的组合。
计算机1002可以在分布式计算系统中充当客户端、网络组件、服务器、数据库的角色或另一持续性设备、另一角色或用于执行本公开中描述的主题的角色的组合。所示的计算机1002可通信地与网络1030耦接。在一些实施例中,计算机1002的一个或多个组件可以被配置为在包括基于云计算的环境、本地环境、全局环境、另一环境或环境组合的环境中操作。
在高级别上,计算机1002是可操作用于接收、发送、处理、存储或管理与所描述的主题相关联的数据和信息的电子计算设备。根据一些实施例,计算机1002还可包括服务器或与服务器可通信地耦接,包括应用服务器、电子邮件服务器、网络服务器、高速缓存服务器、流数据服务器、另一服务器或服务器的组合。
计算机1002可以通过网络1030(例如,来自另一计算机1002上执行的客户端软件应用)接收请求,并通过使用软件应用或软件应用的组合处理接收的请求来响应接收的请求。另外,还可以从内部用户(例如,从命令控制台或通过另一内部访问方法)、外部或第三方或者其他实体、个人、系统或计算机向计算机1002发送请求。
计算机1002的每个组件可以使用系统总线1003进行通信。在一些实施例中,计算机1002的任何或所有组件,包括硬件、软件或者硬件和软件的组合,可以使用应用编程接口(API)1012、服务层1013、或者API 1012和服务层1013的组合通过系统总线1003进行接口连接。API 1012可以包括用于例程、数据结构和对象类的规范。API 1012可以是独立于计算机语言的或依赖于计算机语言的,并且是指完整的接口、单个函数或甚至一组API。服务层1013向计算机1002或可通信地耦接到计算机1002的其他组件(无论是否示出)提供软件服务。使用服务层1013的所有服务客户可访问计算机1002的功能诸如由服务层1013提供的软件服务通过定义的接口提供可重用的、定义的功能。例如,该接口可以是用以JAVA、C++、另一种计算语言、或以可扩展标记语言(XML)格式、另一种格式或多种格式的组合提供数据的计算机语言的组合编写的软件。虽然示出为计算机1002的集成组件,但是替代实施例可以将API 1012或服务层1013示出为与计算机1002的其他组件有关的独立组件或可通信地耦接到计算机1002的其他组件(无论是否示出)。此外,在不脱离本公开的范围的情况下,API1012或服务层1013的任何或所有部分可以被实现为另一软件模块、企业应用或硬件模块的子模块(a child or a sub-module)。
计算机1002包括接口1004。尽管示出为单个接口1004,但是可以根据计算机1002的特定需要、期望或特定实施例使用两个或更多个接口1004。接口1004被计算机1002用来与在分布式环境中通信地链接到网络1030的另一计算系统(无论是否示出)进行通信。通常,接口1004可操作地与网络1030通信,并且包括以软件、硬件或者软件和硬件的组合编码的逻辑。更具体地说,接口1004可以包括支持与通信相关联的一个或多个通信协议的软件,以使得网络1030或接口1004的硬件可操作地在所示计算机1002之内和所示计算机1002之外通信物理信号。
计算机1002包括处理器1005。尽管示出为单个处理器1005,但是可以根据计算机1002的特定需要、期望或特定实施例使用两个或更多个处理器1005。通常,处理器1005执行指令并操纵数据以执行计算机1002的操作以及本公开中所描述的任何算法、方法、功能、处理、流程和程序。
计算机1002还包括数据库1006,该数据库1006可以保存用于计算机1002的数据、通信地链接到网络1030的另一组件(无论是否示出)的数据、或者计算机1002和另一组件的组合的数据。例如,数据库1006可以是存储与本公开一致的存储数据的内存、常规数据库或另一类型的数据库。在一些实施例中,根据计算机1002的特定需要、期望或特定实施例以及所描述的功能,数据库1006可以是两个或更多个不同数据库类型的组合(例如,混合内存和常规数据库)。尽管被示为单个数据库1006,但是可以根据计算机1002的特定需求、期望或特定实施例以及所描述的功能来使用相似或不同类型的两个或更多个数据库。尽管数据库1006被示为计算机1002的集成组件,但在替代实施例中,数据库1006可以在计算机1002的外部。作为示例,数据库1006可以包括上述存储遗憾样本1026的贮存器MR 1016和存储策略样本1028的存储库MS 1018。
计算机1002还包括存储器1007,该存储器1007可以保存用于计算机1002的数据、通信地链接到网络1030的另一组件(无论是否示出)的数据、或者计算机1002和另一组件的组合的数据。存储器1007可以存储与本公开一致的任何数据。在一些实施例中,根据计算机1002的特定需要、期望或特定实施例以及所描述的功能,存储器1007可以是两种或更多种不同类型的存储器的组合(例如,半导体和磁存储设备的组合)。尽管被示为单个存储器1007,但是可以根据计算机1002的特定需求、期望或特定实施例以及所描述的功能来使用相似或不同类型的两个或更多个存储器1007。尽管存储器1007被示为计算机1002的集成组件,但在替代实施例中,存储器1007可以在计算机1002的外部。
应用1008是算法软件引擎,其提供根据计算机1002的特定需要、期望或特定实施例的功能,特别是关于本公开中描述的功能。例如,应用1008可以用作一个或多个组件、模块或应用。此外,尽管被示为单个应用1008,但是应用1008可以被实现为计算机1002上的多个应用1008。另外,尽管被示为与计算机1002集成,但是在替代实施例中,应用1008可以在计算机1002的外部。
计算机1002还可以包括电源1014。电源1014可包括可被配置为用户可更换的可充电电池或用户不可更换的不可充电电池。在一些实施例中,电源1014可以包括功率转换或管理电路(包括充电、备用或另一电源管理功能)。在一些实施例中,电源1014可以包括电源插头,以允许将计算机1002插入壁式插座或另一电源中,从而例如为计算机1002供电或为可充电电池充电。
可以存在与包含计算机1002的计算机系统关联或在其外部的任何数量的计算机1002,每个计算机1002通过网络1030进行通信。此外,在不脱离本公开的范围的情况下,术语“客户端”、“用户”或其他适当的术语可以适当地互换使用。此外,本公开预期许多用户可以使用一个计算机1002,或者一个用户可以使用多个计算机1002。
图11是根据本文的实施例的装置1100的模块的示例的图。装置1100可以是数据处理装置的示例性实施例,该数据处理装置用于执行反事实遗憾最小化(CRF)以在两个或更多个玩家之间的策略互动中进行策略搜索。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。作为示例,IIG表示至少涉及第一玩家和第二玩家的合作产品服务推荐服务,第一玩家对第二玩家的信息具有有限访问权。装置1100可以对应于上述实施例,并且装置1100包括:第一识别模块1101,用于识别第一玩家在第一玩家的第一状态下的N1个可能动作;第一采样模块1102,用于以第一采样概率从第一玩家在第一状态下的N1个可能动作中采样出可能动作;第二识别模块1103,用于识别第一玩家在第一玩家的第二状态下的N2个可能动作,其中,第一玩家的第一状态比第一玩家的第二状态更接近IIG的开始状态;第二采样模块1104,以第二采样概率从所述第一玩家在第二状态下的N2个可能动作中采样出可能动作,其中,所述第一采样概率小于所述第二采样概率;处理模块1105,用于基于第一玩家在第一状态下的N1个可能动作中的可能动作和第一玩家在第二状态下的N2个可能动作中的可能动作执行CRF。在一些实施例中,第一玩家的第一状态包括第二玩家所提供信息的历史,并且第一玩家的N1个可能动作包括响应于第二玩家所提供信息的历史的N1个可能动作,以向客户提供产品服务推荐。
在可选实施例中,处理模块包括:第一计算模块,用于计算第一玩家在第一状态下的N1个可能动作中的可能动作的遗憾值;第二计算模块,用于计算所述第一玩家在第二状态下的所述N2个可能动作中的可能动作的遗憾值;第一更新模块,用于基于所述N1个可能动作中的可能动作的遗憾值更新所述第一玩家在所述第一状态下的第一策略;第二更新模块,用于基于所述N2个可能动作中的可能动作的遗憾值更新第一玩家在第二状态下的第二策略。
在可选实施例中,第一采样模块从第一玩家在第一状态下的N1个可能动作中采样k1个可能动作,其中,k1个可能动作中的每个可能动作都以相同的第一采样概率被采样。第二采样模块从第一玩家在第二状态下的N2个可能动作中采样出k2个可能动作,其中,k2个可能动作中的每个可能动作以相同的第二采样概率被采样。
在可选实施例中,处理模块基于第一玩家在第一状态下的N1个可能动作中的k1个可能动作和第一玩家在第二状态下的N2个可能动作中的k2个可能动作执行CRF。
在可选实施例中,第一采样概率为k1/N1,第二采样概率为k2/N2。
在一个可选的实施例中,2<=k1<=N1和2<=k2<=N2。
在可选的实施例中,k1=k2。
在可选实施例中,装置1100还包括:第三识别模块,用于识别第二玩家在第二玩家的第一状态下的M1个可能动作;第三采样模块,用于以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作;第四识别模块,用于识别第二玩家在第二玩家的第二状态下的M2个可能动作,其中,第二玩家的第一状态比第二玩家的第二状态更接近IIG的开始状态;第四采样模块,用于以第四采样概率从第一玩家在第二状态下的M2个可能动作中采样出可能动作,其中,第三采样概率小于第四采样概率。
在可选实施例中,装置1100还包括:第五识别模块,用于识别第二玩家在第二玩家的第一状态下的M1个可能动作,其中,第一玩家的第一状态比第二玩家的第一状态更接近IIG的开始状态;第五采样模块,用于以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作,其中,第三采样概率大于第一采样概率。
在先前实施例中示出的系统、装置、模块或单元可以通过使用计算机芯片或实体来实现,或者可以通过使用具有特定功能的产品来实现。典型的实施设备是计算机,计算机可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或这些设备的任意组合。
对于装置中每个模块的功能和角色的实施过程,可以参考前一方法中相应步骤的实施过程。为简单起见,这里省略了细节。
由于装置实施基本上对应于方法实施,对于相关部分,可以参考方法实施中的相关描述。先前描述的装置实施仅是示例。被描述为单独部分的模块可以是或不是物理上分离的,并且显示为模块的部分可以是或不是物理模块,可以位于一个位置,或者可以分布在多个网络模块上。可以基于实际需求来选择一些或所有模块,以实现本文方案的目标。本领域普通技术人员无需付出创造性劳动就能理解和实现本申请的实施方式。
再次参考图11,可以将其解释为示出了内部功能模块和数据处理装置的结构,该数据处理装置用于执行反事实遗憾最小化(CRF)以在两方或更多方之间的策略互动中进行策略搜索。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。执行主体本质上可以是电子设备,并且所述电子设备包括:一个或多个处理器;被配置为存储一个或多个处理器的可执行指令的存储器。
所述一个或多个处理器被配置为识别第一玩家在第一玩家的第一状态下的N1个可能动作;以第一采样概率从第一玩家在第一状态下的N1个可能动作中采样出可能动作;识别第一玩家在第一玩家的第二状态下的N2个可能动作,其中,第一玩家的第一状态比第一玩家的第二状态更接近IIG的开始状态;以第二采样概率从第一玩家在第二状态下的N2个可能动作中采样出可能动作,其中,第一采样概率小于第二采样概率;并基于第一玩家在第一状态下的N1个可能动作中的可能动作和第一玩家在第二状态下的N2个可能动作中的可能动作执行CRF。
可选地,所述一个或多个处理器被配置用于计算所述第一玩家在第一状态下的N1个可能动作中的可能动作的遗憾值;计算第一玩家在第二状态下的N2个可能动作中的可能动作的遗憾值;基于N1个可能动作中的可能动作的遗憾值更新第一玩家在第一状态下的第一策略;并基于N2个可能动作中的可能动作的遗憾值更新第一玩家在第二状态下的第二策略。
可选地,所述一个或多个处理器被配置用于从第一玩家在第一状态下的N1个可能动作中采样出k1个可能动作,其中,k1个可能动作中的每个可能动作以相同的第一采样概率被采样;从第一玩家在第二状态下的N2个可能动作中采样出k2个可能动作,其中,k2个可能动作中的每个可能动作以相同的第二采样概率被采样。
可选地,一个或多个处理器被配置为基于第一玩家在第一状态下的N1个可能动作中的k1个可能动作和第一玩家在第二状态下的N2个可能动作中的k2个动作执行CRF。
可选地,第一采样概率是k1/N1,第二采样概率是k2/N2。
可选地,2<=k1<=N1和2<=k2<=N2。
可选地,k1=k2。
可选地,一个或多个处理器被配置为识别第二玩家在第二玩家的第一状态下的M1个可能动作;以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作;识别第二玩家在第二玩家的第二状态下的M2个可能动作,其中,第二玩家的第一状态比第二玩家的第二状态更接近IIG的开始状态;并以第四采样概率从第一玩家在第二状态下的M2个可能动作中采样出可能动作,其中,第三采样概率小于第四采样概率。
可选地,一个或多个处理器被配置为识别第二玩家在第二玩家的第一状态下的M1个可能动作,其中,第一玩家的第一状态比第二个玩家的第一状态更接近IIG的开始状态;并以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作,其中,第三采样概率大于第一采样概率。
图12是根据本文的实施例的另一装置1200的模块的示例的图。装置1200可以是数据处理装置的示例性实施例,该数据处理装置用于执行反事实遗憾最小化(CRF)以在两个或更多个玩家之间的策略互动中进行策略搜索。装置1200可以对应于上述实施例,并且装置1200包括以下:第一存储模块1201,用于将多个遗憾样本存储在第一数据存储设备中,其中,多个遗憾样本各自包括玩家状态和玩家状态下的可能动作的遗憾值,其中,多个遗憾样本是在玩家与至少另一玩家之间的策略互动中进行策略搜索时,通过反事实遗憾最小化(CRF)算法的两次或更多次迭代获得的;第二存储模块1202,用于将多个策略样本存储在第二数据存储设备中,其中,多个策略样本各自包括玩家状态和玩家状态下的可能动作的策略值;第一更新模块1203,用于基于第一数据存储设备中的多个遗憾样本,更新用于预测玩家状态下的可能动作的遗憾值的第一神经网络的参数;第二更新模块1204,用于基于第二数据存储设备中的多个策略样本更新用于预测玩家状态下的可能动作的策略值的第二神经网络的参数。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。作为示例,IIG表示至少涉及玩家和第二玩家的合作产品服务推荐服务,所述玩家对第二玩家的信息具有有限的访问权,其中,玩家状态包括第二玩家所提供信息的历史,其中,玩家的可能动作包括响应于第二玩家所提供信息的历史的可能动作以向顾客提供产品服务推荐。
前述和其他描述的实施例可以各自可选地包括以下特征中的一个或多个:
在可选的实施例中,装置1200还包括:识别模块,用于识别玩家的第一状态和玩家在第一状态下的第一可能动作;第一预测模块,用于使用第一神经网络的参数预测玩家在第一状态下的第一可能动作的第一遗憾值;第二预测模块,用于使用第二神经网络的参数预测玩家在第一状态下的第一可能动作的第一策略值。
在可选的实施例中,其中,所述第一存储模块能够获取新遗憾样本;并且根据贮存器采样算法将所述新遗憾样本存储到第一数据存储设备中。
在可选的实施例中,其中,根据贮存器采样算法将新遗憾样本存储到第一数据存储设备中,包括:确定第一数据存储设备是否已满;并响应于确定第一数据存储设备已满,用新遗憾样本替换第一数据存储设备中的多个遗憾样本中的一个。
在可选的实施例中,其中,CRF算法包括鲁棒采样CRF算法。
在可选的实施例中,其中,玩家状态下的可能动作的策略值包括平均策略分子。
在可选的实施例中,其中,玩家状态下的可能动作的遗憾值包括基于玩家状态下的可能动作的反事实值计算出的玩家状态下的可能动作的反事实遗憾值。
在可选的实施例中,装置1200还包括:在玩家与至少另一玩家之间的策略互动中进行策略搜索时,在反事实遗憾最小化(CRF)算法的两次或更多次迭代的每次迭代中,采样模块,用于根据采样方案从玩家在第二状态下的多个可能动作中采样出可能动作;第一计算模块,用于计算玩家在第二状态下的可能动作的反事实值;第二计算模块,用于基于玩家在第二状态下的可能动作的反事实值计算玩家在第二状态下的可能动作的遗憾值;第三计算模块,用于根据遗憾匹配算法基于玩家在第二状态下的可能动作的遗憾值计算玩家在第二状态下的可能动作的更新策略;第四计算模块,用于基于玩家在第二状态下的可能动作的更新策略计算玩家在第二状态下的可能动作的策略值。
在可选的实施例中,装置1200还包括:第一初始化模块,用于基于先前迭代中的第一神经网络的参数对第一神经网络的参数进行初始化;第二初始化模块,用于基于先前迭代中的第二神经网络的参数对第二神经网络的参数进行初始化。
在先前实施例中示出的系统、装置、模块可以通过使用计算机芯片或实体来实现,或者可以通过使用具有特定功能的产品来实现。典型的实施设备是计算机,计算机可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或这些设备的任意组合。
对于装置中每个模块的功能和角色的实施过程,可以参考前一方法中相应步骤的实施过程。为简单起见,这里省略了细节。
由于装置实施基本上对应于方法实施,对于相关部分,可以参考方法实施中的相关描述。先前描述的装置实施仅是示例。被描述为单独部分的模块可以是或不是物理上分离的,并且显示为模块的部分可以是或不是物理模块,可以位于一个位置,或者可以分布在多个网络模块上。可以基于实际需求来选择一些或所有模块,以实现本文方案的目标。本领域普通技术人员无需付出创造性劳动就能理解和实现本申请的实施方式。
再次参考图12,可以将其解释为示出了内部功能模块和数据处理装置的结构,该数据处理装置用于执行反事实遗憾最小化(CRF)以在两方或更多方之间的策略互动中进行策略搜索。本质上,执行主体可以是电子设备,电子设备包括:一个或多个处理器;被配置为存储一个或多个处理器的可执行指令的存储器。
所述一个或多个处理器被配置为将多个遗憾样本存储在第一数据存储设备中,其中,多个遗憾样本各自包括玩家状态和玩家状态下的可能动作的遗憾值,其中,多个遗憾样本是在玩家与至少一个其他玩家之间的策略互动中进行策略搜索时,通过反事实遗憾最小化(CRF)算法的两次或更多次迭代获得的;将多个策略样本存储在第二数据存储设备中,其中,所述多个策略样本各自包括玩家状态和玩家状态下的可能动作的策略值;基于第一数据存储设备中的多个遗憾样本更新用于预测玩家状态下的可能动作的遗憾值的第一神经网络的参数;基于第二数据存储设备中的多个策略样本更新用于预测玩家状态下的可能动作的策略值的第二神经网络的参数。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。作为示例,IIG表示至少涉及玩家和第二玩家的合作产品服务推荐服务,所述玩家对第二玩家的信息具有有限的访问权,其中,玩家状态包括第二玩家所提供信息的历史,其中,玩家的可能动作包括响应于第二玩家所提供信息的历史的可能动作以向顾客提供产品服务推荐。
可选地,所述一个或多个处理器被配置为识别玩家的第一状态以及玩家在第一状态下的第一可能动作;使用第一神经网络的参数预测玩家在第一状态下的第一可能动作的第一遗憾值;并使用第二神经网络的参数预测玩家在第一状态下的第一可能动作的第一策略值。
可选地,所述一个或多个处理器被配置为:获得新遗憾样本;以及根据贮存器采样算法将新遗憾样本存储到第一数据存储设备中。
可选地,一个或多个处理器被配置为:确定第一数据存储器是否已满;并响应于确定第一数据存储设备已满,用新遗憾样本替换第一数据存储设备中的多个遗憾样本中的一个。
可选地,CRF算法包括鲁棒采样CRF算法。
可选地,玩家状态下的可能动作的策略值包括平均策略分子。
可选地,玩家状态下的可能动作的遗憾值包括基于玩家状态下的可能动作的反事实值计算出的玩家状态下的可能动作的反事实遗憾值。
可选地,所述一个或多个处理器被配置为:在玩家与至少另一玩家之间的策略互动中进行策略搜索时,在反事实遗憾最小化(CRF)算法的两次或更多次迭代的每次迭代中,根据采样方案从玩家在第二状态下的多个可能动作中采样出可能动作;计算玩家在第二状态下的可能动作的反事实值;基于玩家在第二状态下的可能动作的反事实值计算玩家在第二状态下的可能动作的遗憾值;根据遗憾匹配算法基于玩家在第二状态下的可能动作的遗憾值计算玩家在第二状态下的可能动作的更新策略;并基于玩家在第二状态下的可能动作的更新策略计算玩家在第二状态下的可能动作的策略值。
可选地,所述一个或多个处理器被配置为基于先前迭代中的第一神经网络的参数对第一神经网络的参数进行初始化;并基于先前迭代中的第二神经网络的参数对第二神经网络的参数进行初始化。
所描述的主题的实施例可以包括单独或组合的一个或多个特征。例如,在第一实施例中,一种计算机实现的用于执行反事实遗憾最小化(CRF)以在两方或更多方之间的策略互动中进行策略搜索的方法。所述方法包括识别第一玩家在第一玩家的第一状态下的N1个可能动作;以第一采样概率从第一玩家在第一状态下的N1个可能动作中采样出可能动作;识别第一玩家在第一玩家的第二状态下的N2个可能动作,其中,第一玩家的第一状态比第一玩家的第二状态更接近IIG的开始状态;以第二采样概率从第一玩家在第二状态下的N2个可能动作中采样出可能动作,其中,第一采样概率小于第二采样概率;并基于第一玩家在第一状态下的N1个可能动作中的可能动作和第一玩家在第二状态下的N2个可能动作中的可能动作执行CRF。在一些实施例中,两个或更多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。作为示例,IIG表示指示涉及第一玩家和第二玩家的合作产品服务推荐服务,所述第一玩家对第二玩家的信息具有有限的访问权,其中,第一玩家状态包括由第二玩家提供的信息的历史,其中,第一玩家的N1个可能动作包括响应于由第二玩家提供的信息的历史的N1个可能动作以向顾客提供产品服务推荐。
前述和其他描述的实施例可以各自可选地包括以下特征中的一个或多个:
第一特性,可与以下任何特性组合,其中,基于第一玩家在第一状态下的N1可能动作中的可能动作和第一玩家在第二状态下的N2个可能动作中的可能动作执行CRF包括:计算所述第一玩家在第一状态下的N1个可能动作中的可能动作的遗憾值;计算第一玩家在第二状态下的N2个可能动作中的可能动作的遗憾值;基于N1个可能动作中的可能动作的遗憾值,更新第一玩家在第一状态下的第一策略;并基于N2个可能动作中的可能动作的遗憾值更新第一玩家在第二状态下的第二策略。
第二特征,可与以下任何特征组合,进一步包括:从第一玩家在第一状态下的N1个可能动作中采样出k1个可能动作,其中,k1个可能动作中的每个可能动作以相同的第一采样概率被采样;从第一玩家在第二状态下的N2个可能动作中采样出k2个可能动作,其中,k2个可能动作中的每个可能动作以相同的第二采样概率被采样。
第三特征,可与以下任何特征组合,进一步包括:基于第一玩家在第一状态下的N1个可能动作中的k1个可能动作和在第一玩家在第二状态下的N2个可能动作中的k2个可能动作执行CRF。
第四特征,可与以下任何特征组合,其中,第一采样概率是k1/N1,第二采样概率是k2/N2。
第五特征,可与以下任何特征组合,其中,2<=k1<=N1并且2<=k2<=N2。
第六特征,可与以下任何特征组合,其中,k1=k2。
第七特征,可与以下任何特征组合,进一步包括:识别第二玩家在第二玩家的第一状态下的M1个可能动作;以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作;识别第二玩家在第二玩家的第二状态下的M2个可能动作,其中,第二玩家的第一状态比第二玩家的第二状态更接近IIG的开始状态;并以第四采样概率从第一玩家在第二状态下的M2个可能动作中采样出可能动作,其中,第三采样概率小于第四采样概率。
第八特征,可与以下任何特征组合,进一步包括:识别第二玩家在第二玩家的第一状态下的M1个可能动作,其中,第一玩家的第一状态比第二个玩家的第一状态更接近IIG的开始状态;并以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作,其中,第三采样概率大于第一采样概率。
在第二实施例中,一种系统,包括:一个或多个处理器;一个或多个计算机可读存储器,其耦接到所述一个或多个处理器并其上存储有指令,所述指令可由所述一个或多个处理器执行以执行第一实施例中的任一方法及其如上所述一个或多个特征的可选组合。
在第三实施例中,一种用于执行反事实遗憾最小化CFR以在两方或更多方之间的策略互动中进行策略搜索的装置。所述装置包括:第一识别模块,用于识别第一玩家在第一玩家的第一状态下的N1个可能动作;第一采样模块,用于以第一采样概率从第一玩家在第一状态下的N1个可能动作中采样出可能动作;第二识别模块,用于识别第一玩家在第一玩家的第二状态下的N2个可能动作,其中,第一玩家的第一状态比第一玩家的第二状态更接近IIG的开始状态;第二采样模块,以第二采样概率从所述第一玩家在第二状态下的N2个可能动作中采样出可能动作,其中,所述第一采样概率小于所述第二采样概率;处理模块,用于基于第一玩家在第一状态下的N1个可能动作中的可能动作和第一玩家在第二状态下的N2个可能动作中的可能动作执行CRF。在一些实施例中,两个或多个玩家之间的策略互动可以通过涉及两个或更多个玩家的不完美信息博弈(IIG)来建模。作为示例,IIG表示至少涉及第一玩家和第二玩家的合作产品服务推荐服务,所述第一玩家对第二玩家的信息具有有限的访问权,其中,第一玩家的第一状态包括由第二玩家提供的信息的历史,其中第一玩家的N1个可能动作包括响应于由第二玩家提供的信息的历史的N1个可能动作以向顾客提供产品服务推荐。
前述和其他描述的实施例可以各自可选地包括以下特征中的一个或多个:
第一特性,可与以下任何特性组合,其中,所述处理模块包括:第一计算模块,用于计算第一玩家在第一状态下的N1个可能动作中的可能动作的遗憾值;第二计算模块,用于计算所述第一玩家在第二状态下的所述N2个可能动作中的可能动作的遗憾值;第一更新模块,用于基于所述N1个可能动作中的可能动作的遗憾值更新所述第一玩家在所述第一状态下的第一策略;第二更新模块,用于基于所述N2个可能动作中的可能动作的遗憾值更新第一玩家在第二状态下的第二策略。
第二特征,可与以下任何特征组合,其中,第一采样模块从第一玩家在第一状态下的N1个可能动作中采样出k1个可能动作,其中,k1个可能动作中的每个可能动作以相同的第一采样概率被采样;以及第二采样模块从第一玩家在第二状态下的N2个可能动作中采样出k2个可能动作,其中,k2个可能动作中的每个可能动作以相同的第二采样概率被采样。
第三特征,可与以下任何特征组合,其中,所述处理模块基于第一玩家在第一状态下的N1个可能动作中的k1个可能动作和第一玩家在第二状态下的N2个可能动作中的k2个可能动作执行CRF。
第四特征,可与以下任何特征组合,其中,第一采样概率是k1/N1,第二采样概率是k2/N2。
第五特征,可与以下任何特征组合,其中,2<=k1<=N1并且2<=k2<=N2。
第六特征,可与以下任何特征组合,其中,k1=k2。
第七特性,可与以下任何特性组合,进一步包括:第三识别模块,用于识别第二玩家在第二玩家的第一状态下的M1个可能动作;第三采样模块,用于以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作;第四识别模块,用于识别第二玩家在第二玩家的第二状态下的M2个可能动作,其中,第二玩家的第一状态比第二玩家的第二状态更接近IIG的开始状态;第四采样模块,用于以第四采样概率从第一玩家在第二状态下的M2个可能动作中采样出可能动作,其中,第三采样概率小于第四采样概率。
第八特征,可与以下任何特征组合,进一步包括:第五识别模块,用于识别第二玩家在第二玩家的第一状态下的M1个可能动作,其中,第一玩家的第一状态比第二个玩家的第一状态更接近IIG的开始状态;和第五采样模块,用于以第三采样概率从第二玩家在第一状态下的M1个可能动作中采样出可能动作,其中,第三采样概率大于第一采样概率。
本文中描述的主题、动作和操作的实施例可以在数字电子电路、有形体现的计算机软件或固件、计算机硬件中实现,包括本文中公开的结构及其结构等同物,或者它们中的一个或多个的组合。本文中描述的主题的实施可以实现为一个或多个计算机程序,例如,编码在计算机程序载体上的一个或多个计算机程序指令模块,用于由数据处理执行或控制数据处理装置的操作。例如,计算机程序载体可以包括一个或多个计算机可读存储介质,其具有编码或存储在其上的指令。载体可以是有形的非暂态计算机可读介质,例如磁盘、磁光盘或光盘、固态驱动器、随机存取存储器(RAM)、只读存储器(ROM)或其他介质类型。替代地或另外地,载体可以是人工生成的传播信号,例如,机器生成的电、光或电磁信号,其被生成以编码信息以便传输到合适的接收器装置以供数据处理装置执行。计算机存储介质可以是或部分是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一个或多个的组合。计算机存储介质不是传播信号。
计算机程序,也可以被称为或描述为程序、软件、软件应用、app、模块、软件模块、引擎、脚本或代码,可以以任何形式的编程语言编写,包括编译或解释性语言、说明或程序性语言;它可以配置为任何形式,包括作为独立程序,或者作为模块、组件、引擎、子程序或适合在计算环境中执行的其他单元,该环境可包括由通信数据网络互联的在一个或多个位置上的一个或多个计算机。
计算机程序可以但非必须对应于文件系统中的文件。计算机程序可以存储在:文件保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本;专用于所讨论的程序的单个文件;或者多个协调文件,例如,存储一个或多个模块、子程序或代码部分的多个文件。
举例来说,用于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从耦接到处理器的非暂态计算机可读介质接收用于执行的计算机程序的指令以及数据。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或者多处理器或计算机。数据处理装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)、ASIC(专用集成电路)或GPU(图形处理单元)。除了硬件,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或者它们中的一个或多个的组合的代码。
本文中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个计算机或处理器执行,以通过对输入数据进行运算并生成输出来执行操作。处理和逻辑流程也可以由例如FPGA、ASIC或GPU的专用逻辑电路或专用逻辑电路与一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用和/或专用微处理器,或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的元件可包括用于执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以补充有专用逻辑电路或集成在专用逻辑电路中。
通常,计算机还将包括或可操作地耦接至一个或多个大容量存储设备,以从一个或多个存储设备接收数据或将数据传输到一个或多个大容量存储设备。存储设备可以是,例如,磁盘、磁光或光盘,固态驱动器或任何其他类型的非暂态计算机可读介质。但是,计算机不需要具有这样的设备。因此,计算机可以耦接到例如本地和/或远程的一个或多个存储器的一个或多个存储器设备。例如,计算机可以包括作为计算机的整体部件的一个或多个本地存储器,或者计算机可以耦接到云网络中的一个或多个远程存储器。此外,计算机可以嵌入到另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
组件可以通过例如直接地或经由一个或多个中间组件彼此电连接或光连接而可交换地彼此“耦接”。如果其中一个组件集成到另一个组件中,则组件也可以彼此“耦接”。例如,集成到处理器中的存储组件(例如,L2高速缓存组件)被“耦接到”处理器。
为了提供与用户的交互,本文中描述的主题的实施例可以在计算机上实现或配置为与该计算机通信,该计算机具有:显示设备(例如,LCD(液晶显示器)监视器),用于向用户显示信息;以及输入设备,用户可以通过该输入设备向该计算机提供输入,例如键盘和例如鼠标、轨迹球或触摸板等的指针设备。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以接收来自用户的任何形式的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从用户设备上的web浏览器接收的请求将网页发送到用户设备上的web浏览器,或者通过与在例如智能电话或电子平板电脑等的用户设备上运行的应用(app)交互。此外,计算机可以通过向个人设备(例如,运行消息应用的智能手机)轮流发送文本消息或其他形式的消息来并接收来自用户的响应消息来与用户交互。
本文使用与系统、装置和计算机程序组件有关的术语“配置为”。对于被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已经在其上安装了在运行中促使该系统执行所述操作或动作的软件、固件、硬件或它们的组合。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当被数据处理装置执行时促使该装置执行所述操作或动作的指令。对于被配置为执行特定操作或动作的专用逻辑电路,意味着该电路具有执行所述操作或动作的电子逻辑。
尽管本文包含许多具体实施细节,但这些不应被解释为由权利要求本身限定的对要求保护的范围的限制,而是作为对特定实施例的具体特征的描述。在本文单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下,可以从要求保护的组合中删除来自该组合的一个或多个特征,并且可以要求保护指向子组合或子组合的变体。
类似地,虽然以特定顺序在附图中描绘了操作并且在权利要求中叙述了操作,但是这不应该被理解为:为了达到期望的效果,要求以所示的特定顺序或依次执行这些操作,或者要求执行所有示出的操作。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的划分不应被理解为所有实施例中都要求如此划分,而应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或打包成多个软件产品。
已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的处理无需要求所示的特定顺序或次序来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。
Claims (20)
1.一种计算机实现的方法,用于执行反事实遗憾最小化CFR,以在两方或更多方之间的策略互动中进行策略搜索,所述方法包括:
识别第一方在所述第一方的第一状态下的N1个可能动作;其中,第二方具有关于所述第一方的决策的信息;所述第一状态包括所述第二方所提供信息的历史;所述第一方的第一状态下的N1个可能动作包括响应于所述第二方所提供的信息的历史的N1个可能动作;
以第一采样概率从所述第一方在所述第一状态下的所述N1个可能动作中采样出可能动作;
识别所述第一方在所述第一方的第二状态下的N2个可能动作,其中,所述第一方的所述第一状态比所述第一方的所述第二状态更接近不完美信息博弈IIG的开始状态;
以第二采样概率从所述第一方在所述第二状态下的所述N2个可能动作中采样出可能动作,其中,所述第一采样概率小于所述第二采样概率;以及
基于所述第一方在所述第一状态下的所述N1个可能动作中的所述可能动作和所述第一方在所述第二状态下的所述N2个可能动作中的所述可能动作,执行所述CFR,以求解所述IIG,输出所述第一方的策略;所述策略包括由所述IIG建模的现实场景中的所述第一方响应于所述第二方所提供的信息的一系列动作;
其中,所述策略搜索用于实现资源分配、产品/服务推荐、网络攻击预测和/或预防、交通路线规划或欺诈管理。
2.如权利要求1所述的方法,其中,基于所述第一方在所述第一状态下的所述N1个可能动作中的所述可能动作和所述第一方在第二状态下的所述N2个可能动作中的所述可能动作,执行所述CFR,包括:
计算所述第一方在所述第一状态下的所述N1个可能动作中的所述可能动作的遗憾值;
计算所述第一方在所述第二状态下的所述N2个可能动作中的所述可能动作的遗憾值;
基于所述N1个可能动作中的所述可能动作的所述遗憾值,更新所述第一方在所述第一状态下的第一策略;以及
基于所述N2个可能动作中的所述可能动作的所述遗憾值,更新所述第一方在所述第二状态下的第二策略。
3.如权利要求1所述的方法,还包括:
从所述第一方在所述第一状态下的所述N1个可能动作中采样出k1个可能动作,其中,所述k1个可能动作中的每个可能动作都以相同的所述第一采样概率被采样;以及
从所述第一方在所述第二状态下的所述N2个可能动作中采样出k2个可能动作,其中,所述k2个可能动作中的每个可能动作都以相同的所述第二采样概率被采样。
4.如权利要求3所述的方法,还包括:
基于所述第一方在所述第一状态下的所述N1个可能动作中的所述k1个可能动作和所述第一方在所述第二状态下的所述N2个可能动作中的所述k2个可能动作,执行所述CFR。
5.如权利要求3所述的方法,其中,所述第一采样概率是k1/N1,并且所述第二采样概率是k2/N2。
6.如权利要求3所述的方法,其中,2≤k1≤N1,并且2≤k2≤N2。
7.如权利要求3所述的方法,其中,k1=k2。
8.如权利要求1所述的方法,还包括:
识别第二方在所述第二方的第一状态下的M1个可能动作;
以第三采样概率从所述第二方在所述第一状态下的所述M1个可能动作中采样出可能动作;
识别所述第二方在所述第二方的第二状态下的M2个可能动作,其中,所述第二方的所述第一状态比所述第二方的所述第二状态更接近所述IIG的所述开始状态;以及
以第四采样概率从所述第一方在所述第二状态下的M2个可能动作中采样出可能动作,其中,所述第三采样概率小于所述第四采样概率。
9.如权利要求1所述的方法,还包括:
识别第二方在所述第二方的所述第一状态下的M1个可能动作,其中,所述第一方的所述第一状态比所述第二方的所述第一状态更接近所述IIG的所述开始状态;以及
以第三采样概率从所述第二方在所述第一状态下的所述M1个可能动作中采样出可能动作,其中,所述第三采样概率大于所述第一采样概率。
10.一种装置,用于执行反事实遗憾最小化CFR,以在两方或更多方之间的策略互动中进行策略搜索,所述装置包括:
第一识别模块,用于识别第一方在所述第一方的第一状态下的N1个可能动作;其中,第二方具有关于所述第一方的决策的信息;所述第一状态包括所述第二方所提供信息的历史;所述第一方的第一状态下的N1个可能动作包括响应于所述第二方所提供的信息的历史的N1个可能动作;
第一采样模块,用于以第一采样概率从所述第一方在第一状态下的所述N1个可能动作中采样出可能动作;
第二识别模块,用于识别所述第一方在所述第一方的第二状态下的N2个可能动作,其中,所述第一方的第一状态比所述第一方的第二状态更接近不完美信息博弈IIG的开始状态;
第二采样模块,用于以第二采样概率从所述第一方在第二状态下的所述N2个可能动作中采样可能动作,其中,所述第一采样概率小于所述第二采样概率;以及
处理模块,用于基于所述第一方在第一状态下的所述N1个可能动作中的可能动作和所述第一方在第二状态下的所述N2个可能动作中的可能动作,执行所述CFR,以求解所述IIG,输出所述第一方的策略;所述策略包括由所述IIG建模的现实场景中的所述第一方响应于所述第二方所提供的信息的一系列动作;
其中,所述策略搜索用于实现资源分配、产品/服务推荐、网络攻击预测和/或预防、交通路线规划或欺诈管理。
11.如权利要求10所述的装置,其中,所述处理模块包括:
第一计算模块,用于计算所述第一方在第一状态下的所述N1个可能动作中的可能动作的遗憾值;
第二计算模块,用于计算所述第一方在第二状态下的所述N2个可能动作中的可能动作的遗憾值;
第一更新模块,用于基于所述N1个可能动作中的可能动作的遗憾值,更新所述第一方在第一状态下的第一策略;以及
第二更新模块,用于基于所述N2个可能动作中的可能动作的所述遗憾值,更新所述第一方在第二状态下的第二策略。
12.如权利要求10所述的装置,其中:
所述第一采样模块从所述第一方在第一状态下的所述N1个可能动作中采样出k1个可能动作,其中,所述k1个可能动作中的每个可能动作都以相同的所述第一采样概率被采样;以及
所述第二采样模块从所述第一方在第二状态下的所述N2个可能动作中采样出k2个可能动作,其中,所述k2个可能动作中的每个可能动作以相同的所述第二采样概率被采样。
13.如权利要求12所述的装置,其中,所述处理模块基于所述第一方在第一状态下的所述N1个可能动作中的所述k1个可能动作和所述第一方在第二状态下的所述N2个可能动作中的所述k2个可能动作,执行所述CFR。
14.如权利要求12所述的装置,其中,所述第一采样概率是k1/N1,并且所述第二采样概率是k2/N2。
15.如权利要求12所述的装置,其中,2≤k1≤N1,并且2≤k2≤N2。
16.如权利要求12所述的装置,其中,k1=k2。
17.如权利要求10所述的装置,还包括:
第三识别模块,用于识别第二方在所述第二方的第一状态下的M1个可能动作;
第三采样模块,用于以第三采样概率从所述第二方在第一状态下的所述M1个可能动作中采样出可能动作;
第四识别模块,用于识别所述第二方在所述第二方的第二状态下的M2个可能动作,其中,所述第二方的第一状态比所述第二方的第二状态更接近所述IIG的所述开始状态;以及
第四采样模块,用于以第四采样概率从所述第一方在第二状态下的M2个可能动作中采样出可能动作,其中,所述第三采样概率小于所述第四采样概率。
18.如权利要求10所述的装置,还包括:
第五识别模块,用于识别所述第二方在所述第二方的第一状态下的M1个可能动作,其中,所述第一方的第一状态比所述第二方的第一状态更接近所述IIG的所述开始状态;以及
第五采样模块,用于以第三采样概率从所述第二方在第一状态下的所述M1个可能动作中采样出可能动作,其中,所述第三采样概率大于所述第一采样概率。
19.一种系统,包括:
一个或多个处理器;以及
耦接到所述一个或多个处理器并其上存储有指令的一个或多个计算机可读存储器,所述指令能由所述一个或多个处理器执行以执行权利要求1至9中任一项所述的方法。
20.一种计算机实现的方法,用于执行反事实遗憾最小化CFR,以求解涉及两方或更多方的不完美信息博弈IIG,所述IIG表示涉及至少第一方和第二方的合作产品服务推荐服务,所述第一方具有对所述第二方的信息的有限访问权,所述方法包括:
识别第一方在所述第一方的第一状态下的N1个可能动作,其中,第二方具有关于所述第一方的决策的信息;所述第一方的第一状态包括由所述第二方提供的信息的历史,所述第一方的所述N1个可能动作包括:响应于由所述第二方提供的所述信息的所述历史的N1个可能动作,以向客户提供产品服务推荐;
以第一采样概率从所述第一方在第一状态下的所述N1个可能动作中采样出可能动作;
识别所述第一方在所述第一方的第二状态下的N2个可能动作,其中,所述第一方的第一状态比所述第一方的第二状态更接近IIG的开始状态;
以第二采样概率从所述第一方在第二状态下的所述N2个可能动作中采样可能动作,其中,所述第一采样概率小于所述第二采样概率;以及
基于所述第一方在第一状态下的所述N1个可能动作中的可能动作和所述第一方在第二状态下的所述N2个可能动作中的可能动作,执行所述CFR,以求解所述IIG,输出所述第一方的策略;所述策略包括由所述IIG建模的现实场景中的所述第一方响应于所述第二方所提供的信息的一系列动作。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/072200 WO2020147074A1 (en) | 2019-01-17 | 2019-01-17 | Sampling schemes for strategy searching in strategic interaction between parties |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112639841A CN112639841A (zh) | 2021-04-09 |
CN112639841B true CN112639841B (zh) | 2024-02-06 |
Family
ID=71610026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980034738.0A Active CN112639841B (zh) | 2019-01-17 | 2019-01-17 | 用于在多方策略互动中进行策略搜索的采样方案 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10769544B2 (zh) |
EP (1) | EP3827383A4 (zh) |
JP (1) | JP7078799B2 (zh) |
KR (1) | KR102288785B1 (zh) |
CN (1) | CN112639841B (zh) |
AU (1) | AU2019422026C1 (zh) |
CA (1) | CA3110589C (zh) |
SG (1) | SG11202101861XA (zh) |
WO (1) | WO2020147074A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3110589C (en) * | 2019-01-17 | 2022-04-12 | Advanced New Technologies Co., Ltd. | Sampling schemes for strategy searching in strategic interaction between parties |
WO2020098822A2 (en) | 2019-12-12 | 2020-05-22 | Alipay (Hangzhou) Information Technology Co., Ltd. | Determining action selection policies of an execution device |
CN112041811B (zh) | 2019-12-12 | 2022-09-16 | 支付宝(杭州)信息技术有限公司 | 确定执行设备的动作选择方针 |
SG11202010721QA (en) * | 2019-12-12 | 2020-11-27 | Alipay Hangzhou Inf Tech Co Ltd | Determining action selection policies of execution device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559363A (zh) * | 2013-11-15 | 2014-02-05 | 南京大学 | 一种不完美信息扩展式博弈中计算最佳反应策略的方法 |
CN106296006A (zh) * | 2016-08-10 | 2017-01-04 | 哈尔滨工业大学深圳研究生院 | 非完备信息博弈中风险与收益均衡的最少遗憾的评估方法 |
CN108537339A (zh) * | 2018-04-11 | 2018-09-14 | 中国电子科技集团公司第二十九研究所 | 一种对局策略获取方法及装置 |
CN108701260A (zh) * | 2015-11-27 | 2018-10-23 | 泰勒斯公司 | 用于辅助决策的系统和方法 |
WO2020147074A1 (en) * | 2019-01-17 | 2020-07-23 | Alibaba Group Holding Limited | Sampling schemes for strategy searching in strategic interaction between parties |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002197359A (ja) * | 2000-12-27 | 2002-07-12 | Nippon Lca:Kk | 商品情報提示方法及び装置 |
US7124105B2 (en) * | 2003-01-22 | 2006-10-17 | Intuit Inc. | Cash flow optimization using a genetic algorithm |
US7707131B2 (en) * | 2005-03-08 | 2010-04-27 | Microsoft Corporation | Thompson strategy based online reinforcement learning system for action selection |
US7870082B2 (en) * | 2007-06-07 | 2011-01-11 | International Business Machines Corporation | Method for machine learning using online convex optimization problem solving with minimum regret |
US8545332B2 (en) * | 2012-02-02 | 2013-10-01 | International Business Machines Corporation | Optimal policy determination using repeated stackelberg games with unknown player preferences |
US8905838B2 (en) * | 2012-06-26 | 2014-12-09 | Empire Technology Development Llc | Detecting game play-style convergence and changing games |
US20140039913A1 (en) | 2012-07-31 | 2014-02-06 | Tuomas W. Sandholm | Medical treatment planning via sequential games |
US9602530B2 (en) * | 2014-03-28 | 2017-03-21 | Zitovault, Inc. | System and method for predicting impending cyber security events using multi channel behavioral analysis in a distributed computing environment |
JP6675562B2 (ja) | 2015-08-11 | 2020-04-01 | 株式会社フォワードサイエンスラボラトリ | 三重水素吸収材、重水中からの三重水素の分離方法 |
JP6591672B2 (ja) * | 2015-11-12 | 2019-10-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 |
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 |
-
2019
- 2019-01-17 CA CA3110589A patent/CA3110589C/en active Active
- 2019-01-17 EP EP19910742.6A patent/EP3827383A4/en active Pending
- 2019-01-17 SG SG11202101861XA patent/SG11202101861XA/en unknown
- 2019-01-17 WO PCT/CN2019/072200 patent/WO2020147074A1/en unknown
- 2019-01-17 JP JP2021510344A patent/JP7078799B2/ja active Active
- 2019-01-17 CN CN201980034738.0A patent/CN112639841B/zh active Active
- 2019-01-17 AU AU2019422026A patent/AU2019422026C1/en active Active
- 2019-01-17 KR KR1020217006197A patent/KR102288785B1/ko active IP Right Grant
- 2019-06-21 US US16/448,390 patent/US10769544B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559363A (zh) * | 2013-11-15 | 2014-02-05 | 南京大学 | 一种不完美信息扩展式博弈中计算最佳反应策略的方法 |
CN108701260A (zh) * | 2015-11-27 | 2018-10-23 | 泰勒斯公司 | 用于辅助决策的系统和方法 |
CN106296006A (zh) * | 2016-08-10 | 2017-01-04 | 哈尔滨工业大学深圳研究生院 | 非完备信息博弈中风险与收益均衡的最少遗憾的评估方法 |
CN108537339A (zh) * | 2018-04-11 | 2018-09-14 | 中国电子科技集团公司第二十九研究所 | 一种对局策略获取方法及装置 |
WO2020147074A1 (en) * | 2019-01-17 | 2020-07-23 | Alibaba Group Holding Limited | Sampling schemes for strategy searching in strategic interaction between parties |
Non-Patent Citations (5)
Title |
---|
Double Neural Counterfactual Regret Minimization;Hui Li et.al;《arXiv:1812.10607v1》;1-20 * |
Generalized Sampling and Variance in Counterfactual Regret Minimization;Richard Gibson et.al;《Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence》;1355-1361 * |
Monte Carlo Sampling for Regret Minimization in extensive Games;Marc Lanctot et.al;《Proc of the 23rd Annual Conf on Neural Information Processing Systems》;1-9 * |
不完美信息扩展式博弈中在线虚拟遗憾最小化;胡裕靖等;《计算机研究与发展》;第51卷(第10期);2160-2170 * |
非完备信息博弈估值算法的研究;李景棚;《中国优秀硕士学位论文全文数据库 信息科技辑》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
AU2019422026B2 (en) | 2021-10-07 |
JP2021534514A (ja) | 2021-12-09 |
CN112639841A (zh) | 2021-04-09 |
WO2020147074A1 (en) | 2020-07-23 |
US10769544B2 (en) | 2020-09-08 |
EP3827383A1 (en) | 2021-06-02 |
JP7078799B2 (ja) | 2022-05-31 |
CA3110589A1 (en) | 2020-07-23 |
KR102288785B1 (ko) | 2021-08-13 |
AU2019422026A1 (en) | 2021-03-18 |
EP3827383A4 (en) | 2021-08-25 |
US20200234164A1 (en) | 2020-07-23 |
SG11202101861XA (en) | 2021-03-30 |
CA3110589C (en) | 2022-04-12 |
AU2019422026C1 (en) | 2022-04-07 |
KR20210029826A (ko) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112639841B (zh) | 用于在多方策略互动中进行策略搜索的采样方案 | |
JP7219228B2 (ja) | 当事者の間の戦略的対話における戦略探索 | |
CN106548210B (zh) | 基于机器学习模型训练的信贷用户分类方法及装置 | |
CN112292696B (zh) | 确定执行设备的动作选择方针的方法和装置 | |
CN112799708B (zh) | 联合更新业务模型的方法及系统 | |
CN112292699B (zh) | 确定执行设备的动作选择方针的方法和装置 | |
CN111957053A (zh) | 游戏玩家匹配方法、装置、存储介质与电子设备 | |
CN112470123B (zh) | 确定执行设备的动作选择方针 | |
CN112292698B (zh) | 确定执行设备的动作选择方针的方法和装置 | |
US11113619B2 (en) | Determining action selection policies of an execution device | |
TW202125398A (zh) | 確定執行設備的動作選擇方針 | |
US11077368B2 (en) | Determining action selection policies of an execution device | |
CN112200234B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |