CN114461788A - 对弈讲解方案生成方法、装置、电子设备及存储介质 - Google Patents
对弈讲解方案生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114461788A CN114461788A CN202210156558.3A CN202210156558A CN114461788A CN 114461788 A CN114461788 A CN 114461788A CN 202210156558 A CN202210156558 A CN 202210156558A CN 114461788 A CN114461788 A CN 114461788A
- Authority
- CN
- China
- Prior art keywords
- chess
- candidate
- steps
- deduction
- round
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 230000008569 process Effects 0.000 claims abstract description 68
- 238000011156 evaluation Methods 0.000 claims description 74
- 230000000007 visual effect Effects 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 16
- 238000012216 screening Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 11
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 206010011469 Crying Diseases 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F3/00—Board games; Raffle games
- A63F3/02—Chess; Similar board games
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开实施例公开了对弈讲解方案生成方法、装置、电子设备及存储介质。该方法包括:在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于推荐棋步对弈,生成当前对弈棋局;在当前对弈棋局中没有胜出方的情况下,基于当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;基于讲解文本,生成对弈过程的对弈讲解方案。
Description
技术领域
本公开涉及数据处理技术,尤其涉及一种对弈讲解方案生成方法、装置、电子设备及存储介质。
背景技术
通过视频进行棋艺讲解是目前棋艺教学中的普遍方式。在讲解过程中,通常会通过视频、文字和音频同步的方式进行棋局的走法讲解。目前,已存在采用人工智能(Artificial intelligence,AI)对弈机器人来进行课程讲解的技术,但是,采用AI对弈机器人进行课程讲解之前,需要通过人工制作的方式来制作讲解方案,且人工制作成本和周期都比较长,智能性低。
发明内容
本公开实施例提供一种对弈讲解方案生成方法、装置、电子设备及存储介质,能够提高生成对弈讲解方案时的智能性和效率。
本公开实施例的技术方案是这样实现的:
本公开实施例提供一种对弈讲解方案生成方法,包括:
在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于所述推荐棋步对弈,生成当前对弈棋局;
在所述当前对弈棋局中没有胜出方的情况下,基于所述当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于所述下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;
基于所述讲解文本,生成所述对弈过程的对弈讲解方案。
在一些实施例中,所述基于所述讲解文本,生成所述对弈过程的对弈讲解方案,包括:
根据所述候选棋步之间的顺序关系与对应关系,确定所述候选棋步的讲解文本之间的顺序关系和第一对应关系;
根据所述候选棋步与所述推荐棋步之间的对应关系,确定所述候选棋步的讲解文本与所述推荐棋步的讲解文本之间的第二对应关系;
基于所述讲解文本、所述顺序关系、所述第一对应关系,以及所述第二对应关系,生成所述对弈过程的对弈讲解方案。
在一些实施例中,所述预设数量为N,且N为大于零的整数;所述在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,包括:
基于预设棋局参数,生成初始对弈棋局;
基于所述初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据所述M个候选棋步,生成对应的M个推演棋局;i为1~N中的整数;M为大于或等于1的整数;
根据所述第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步的情况下,基于N个推演回合得到的候选棋步,从所述第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,作为所述当前对弈回合中攻击方的推荐棋步;
其中,在对弈方至少包括第一方和第二方的情况下,所述第i个推演回合的攻击方为所述第一方,所述第i+1个推演回合的攻击方为所述第二方。
在一些实施例中,所述基于所述初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据所述M个候选棋步,生成对应的M个推演棋局,包括:
基于所述初始对弈棋局,确定所述第i个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;
将所述实力值最大的前M个棋步,作为所述第i个推演回合的攻击方的M个候选棋步;
基于所述初始对弈棋局和所述M个候选棋步中的每个候选棋步,生成所述每个候选棋步对应的推演棋局,得到所述M个推演棋局。
在一些实施例中,所述估算所述每个棋步的实力值,包括:
基于所述初始对弈棋局和每个棋子的预设等级值,分别估算所述每个棋步的风险值和攻击值;
基于所述每个棋步的风险值和攻击值,确定所述每个棋步的实力值。
在一些实施例中,每个候选棋步对应一个实力值;所述基于所述初始对弈棋局和所述M个候选棋步中的每个候选棋步,生成所述每个候选棋步对应的推演棋局,包括:
根据所述实力值,从所述M个候选棋步中选出实力值最高的第1个候选棋步,基于所述初始对弈棋局和所述第1个候选棋步,生成第1个推演棋局;
根据所述实力值,从所述M个候选棋步中除所述第1个候选棋步之外的候选棋步中,选出实力值最高的第2个候选棋步,基于所述初始对弈棋局和所述第2个候选棋步,生成第2个推演棋局,直至基于所述初始对弈棋局和第M个候选棋步,生成第M个推演棋局。
在一些实施例中,所述根据所述第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,包括:
基于所述第i个推演回合的任一个推演棋局,确定对应的所述第i+1个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;
将所述实力值最大的前M个棋步,作为所述任一个推演棋局对应的所述第i+1个推演回合的M个候选棋步。
在一些实施例中,每个候选棋步对应一个实力值;所述基于N个推演回合得到的候选棋步,从所述第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,包括:
根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到所述第i个推演回合的攻击方的每个候选棋步的评价值;
根据所述评价值,从所述第i个推演回合的攻击方的M个候选棋步中,筛选出所述推荐棋步。
在一些实施例中,所述第i个推演回合的攻击方的每个候选棋步对应X个评价值;所述根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到所述第i个推演回合的攻击方的每个候选棋步的评价值,包括:
将所述第i个推演回合至所述第N个推演回合中,存在对应关系的候选棋步的实力值进行依次求和,得到所述第i个推演回合的攻击方的每个候选棋步的X个评价值;其中,X等于M的M+1次方。
在一些实施例中,所述基于所述讲解文本,生成所述对弈过程的对弈讲解方案,包括:
根据每个讲解文本,确定对应的语音讲解数据、视觉对弈动作数据和视觉表情数据;
根据所述语音讲解数据、所述视觉对弈动作数据和所述视觉表情数据,生成所述对弈过程的音视频讲解方案。
本公开实施例提供一种对弈讲解方案生成装置,包括:
第一生成单元,用于在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于所述推荐棋步对弈,生成当前对弈棋局;
第二生成单元,用于在所述当前对弈棋局中没有胜出方的情况下,基于所述当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于所述下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;
第三生成单元,用于基于所述讲解文本,生成所述对弈过程的对弈讲解方案。
本公开实施例提供一种电子设备,包括:存储器,用于存储可执行计算机程序;处理器,用于执行所述存储器中存储的可执行计算机程序时,实现上述的对弈讲解方案生成方法。
本公开实施例提供一种计算机可读存储介质,存储有计算机程序,用于引起处理器执行时,实现上述的对弈讲解方案生成方法。
本公开实施例的技术方案具有以下有益技术效果:
由于在对弈过程中,根据对弈棋局进行棋步推演,得到每个推演回合中攻击方的候选棋步,以及得到候选棋步中的推荐棋步,并根据推荐棋步进行实际的对弈,直至在实际的对弈过程中有胜出方的情况下,根据推演得到的所有候选棋步和得到的每个推荐棋步,得到每个棋步的讲解文本,之后,根据每个棋步的讲解文本来生成对弈过程的讲解方案;因而,可以自适应地对所有对弈方的棋步进行预估,以及自适应地根据预估的棋步进行所有对弈方之间的对弈,并根据预估的棋步和用于对弈的棋步的讲解文本生成对弈过程的讲解方案;相比于通过人工制作人为对弈过程的讲解方案而言,提高了生成对弈讲解方案时的智能性和效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图2为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图3为本公开实施例提供的示例性的棋盘样式的一个示意图。
图4A为本公开实施例提供的示例性的初始对弈棋局的一个示意图。
图4B为本公开实施例提供的示例性的初始对弈棋局的另一个示意图。
图5为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图6为本公开实施例提供的示例性的推演棋局的一个示意图;
图7为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图8为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图9为本公开实施例提供的示例性的在红棋与黑棋双方对弈的过程中,4个推演回合的候选棋步之间的对应关系示意图;
图10为本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图;
图11为本公开实施例提供的对弈讲解方案生成装置的结构示意图;
图12为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开实施例的目的,不是旨在限制本公开。
本公开实施例提供一种对弈讲解方案生成方法,能够提高生成对弈讲解方案时的智能性和效率。本公开实施例提供的对弈讲解方案生成方法应用于电子设备。本公开实施例提供的电子设备可以实施为AI机器人(例如,AI引擎)等各种类型的终端设备(以下简称终端),也可以实施为服务器。
在一些实施例中,本公开实施例生成的对弈讲解方案可以应用于对弈机器人或人为进行对弈过程的讲解方面,从而对弈机器人或人可以根据已经生成的对弈讲解方案进行对弈过程的讲解。
图1是本公开实施例提供的对弈讲解方案生成方法的一个可选的流程示意图,将结合图1示出的步骤进行说明。
S101、在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于推荐棋步对弈,生成当前对弈棋局。
在一些实施例中,对弈棋局可以是围棋的对弈棋局,也可以是象棋的对弈棋局,还可以跳棋的对弈棋局等等,本公开实施例对此不作限定。
在一些实施例中,电子设备可以根据对弈棋局,确定出预设数量的推演回合,并且对于每个推演回合而言,电子设备可以作为这一推演回合中的攻击方来确定出这一推演回合中的攻击方的棋步,以此来确定出预设数量的推演回合中每个推演回合中的攻击方的候选棋步,并根据得到的候选棋步来预估出当前对弈回合中的攻击方的推演棋步,从而根据得到的推荐棋步进行对弈,得到对弈后生成的当前对弈棋局。
这里,当前对弈回合可以是对弈过程中的任意一个对弈回合,例如,可以是第一个对弈回合、第二个对弈回合,等等,为便于解释,本公开实施例通过当前对弈回合进行说明。
示例性的,在对弈棋局为象棋的对弈棋局,对弈双方为黑棋和红棋,并且,当前对弈回合是第一个对弈回合的情况下,电子设备可以以红棋作为第一个对弈回合中的攻击方,根据初始对弈棋局确定红棋的第一步棋的候选棋步,再以黑棋作为攻击方,根据红棋的第一步棋的候选棋步,确定黑棋的第一步棋的候选棋步,之后,继续以红棋作为攻击方来根据黑棋的第一步棋的候选棋步,确定红棋的第二步棋的候选棋步,最后,又以黑棋作为攻击方,并根据红棋的第二步棋的候选棋步,确定黑棋的第二步棋的候选棋步,从而得到了4个推演回合中每个推演回合中攻击方的候选棋步,并根据得到的4个推演回合中攻击方的候选棋步,预估出第一个对弈回合中红棋的推荐棋步,之后,以该推荐棋步作为红棋在第一个对弈回合中的对弈棋步,并生成对弈后的棋局。
这里,预设数量可以根据实际需要设定,例如,可以是4,也可以是其他数值,本公开实施例对此不作限定。
S102、在当前对弈棋局中没有胜出方的情况下,基于当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本。
在一些实施例中,电子设备得到当前对弈棋局后,可以分析当前对弈棋局中是否有一方胜出,并在分析出当前对弈棋局中没有胜出方的情况下,可以根据当前对弈棋局,继续确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于候选棋步,预估下一个对弈回合的攻击方的推荐棋步,从而根据得到的下一个推荐棋步进行对弈,得到对弈后生成的对弈棋局,即得到当前对弈棋局的下一个对弈棋局,之后,继续分析得到的该下一个对弈棋局中是否有一方胜出,并在分析出得到的该下一个对弈棋局中没有胜出方的情况下,根据得到的该下一个对弈棋局,继续确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于候选棋步预估下下一个对弈回合(即得到的该下一个对弈棋局的下一个对弈棋局)的攻击方的推荐棋步,从而根据得到的下下一个推荐棋步进行对弈,得到对弈后生成的对弈棋局,即得到下一个对弈棋局的下一个对弈棋局,继续分析得到的下下一个对弈棋局中是否有一方胜出,如此循环,直至生成的对弈棋局中有胜出方的情况下,对弈过程结束,此时,电子设备可以生成每个候选棋步和每个推荐棋步的讲解文本。
在一些实施例中,对于每个候选棋步或推荐棋步,电子设备可以根据每个棋步和预设的棋步话术文本,生成每个候选棋步或推荐棋步的讲解文本,例如,在一个推荐棋步是将棋盘的位置A的棋子“马”向棋盘的位置B走了一步的情况下,生成的讲解文本可以包括“从A位置向B位置上马”这一用于描述此推荐棋步的文本。
在一些实施例中,每个候选棋步或推荐棋步的讲解文本中还包括用于描述得到该候选棋步或推荐棋步时的分析过程的文本。
S103、基于讲解文本,生成对弈过程的对弈讲解方案。
在一些实施例中,电子设备可以根据生成的每个候选棋步的讲解文本、推荐棋步的讲解文本,生成文本形式的对弈讲解方案。
在一些实施例中,电子设备也可以根据生成的每个候选棋步的讲解文本、推荐棋步的讲解文本,生成对应的音频数据,之后,根据生成的音频数据,直接生成音频形式的对弈讲解方案,或根据生成的音频数据和对应的讲解文本,生成文字+音频形式的对弈讲解方案。
这里,电子设备可以采用语音合成方法,例如,离线语音合成(text to speech,TTS)的方法,生成每个讲解文本的音频数据。
在一些实施例中,电子设备可以将生成的每个讲解文本直接进行组合,或者,将音频数据直接进行组合,从而可以得到文本形式的对弈讲解方案,或者得到音频形式的对弈讲解方案。
在一些实施例中,电子设备可以在得到一个推演回合中的候选棋步,以及得到一个对弈回合的推荐棋步的情况下,便将候选棋步和推荐棋步按照获得时间记录至数据库中,从而后续可以根据数据库中存储的棋步的记录时间,进行棋步的讲解文本或讲解文本对应的音频数据的组合,从而得到对弈讲解方案。
在一些实施例中,对弈讲解方案描述了对弈过程中每个推演回合的攻击方的候选棋步、如何从候选棋步中预估出每一个对弈回合中的推荐棋步的过程、执行推荐棋步后得到的对弈棋局,以及对弈棋局中的胜负情况。
在一些实施例中,对弈讲解方案描述了对弈过程中如何根据对弈棋局确定每个推演回合的攻击方的候选棋步的过程、如何从候选棋步中预估出每一个对弈回合中的推荐棋步的过程、执行推荐棋步后得到的对弈棋局,以及对弈棋局中的胜负情况。
本公开实施例中,电子设备可以在对弈过程中,以对弈双方的角色进行棋步的预估和根据预估的棋步进行对弈,实现“电子设备自己与自己对弈”,直至电子设备判断到有一方胜出,之后,可根据预估的棋步和对弈时的棋步生成每个棋步的讲解文本,最终,根据讲解文本可以生成对弈过程中的对弈讲解方案;因而,可以自适应地对所有对弈方的棋步进行预估,以及自适应地根据预估的棋步进行所有对弈方之间的对弈,并根据预估的棋步和用于对弈的棋步的讲解文本生成对弈过程的讲解方案;相比于通过人工制作人为对弈过程的讲解方案而言,提高了生成对弈讲解方案时的智能性和效率。
在一些实施例中,如图2所示,上述S101中的在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于候选棋步,预估当前对弈回合的攻击方的推荐棋步,可以通过S1011~S1013实现,将以图2为例进行说明。
S1011、基于预设棋局参数,生成初始对弈棋局。
在一些实施例中,预设棋局参数可以动态设定,且可根据实际需要设置;预设棋局参数可以是某个类型的棋盘样式(例如,如图3)以及初始对弈棋局中每个棋子在该棋盘上的位置。电子设备可以根据预设棋局参数生成待对弈的初始对弈棋局。
在一些实施例中,初始对弈棋局可以是还未对弈的棋局,例如,图4A所示,或者,初始对弈棋局也可以是已经进行了对弈的棋局(残局),例如,图4B所示。
S1012、基于初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据M个候选棋步,生成对应的M个推演棋局;i为1~N中的整数;M为大于或等于1的整数;预设数量为N,且N为大于零的整数。
在一些实施例中,电子设备可以根据生成的初始对弈棋局,确定第1个推演回合的攻击方的M个候选棋步,并根据这M个候选棋步中的每个候选棋步,得到一个对应的推演棋局,从而得到与M个候选棋步一一对应的M个推演棋局。例如,在对弈棋局为象棋的对弈棋局,对弈双方为黑棋和红棋,并且,当前对弈回合是第一个对弈回合的情况下,电子设备可以以红棋作为第一个对弈回合中的攻击方,根据初始棋局确定红棋的第一步棋的M候选棋步,并根据这M个候选棋步,生成M个推演棋局。
这里,N的数值可以根据实际需要设定,例如,N可以为2,还可以为4等等;以及,M的数值也可以根据实际需要设定,例如,M可以为2,还可以为5等等,本公开实施例对N和M的取值不作限定。
S1013、根据第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步的情况下,基于N个推演回合得到的候选棋步,从第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,作为当前对弈回合中攻击方的推荐棋步;其中,在对弈方至少包括第一方和第二方的情况下,第i个推演回合的攻击方为第一方,第i+1个推演回合的攻击方为第二方。
在一些实施例中,对弈方可以包括至少两方,并且第i个推演回合的攻击方为第一方,第i+1个推演回合的攻击方为第二方,第i+2个推演回合的攻击方为第三方,…,如此,直至遍历了所有攻击方。示例性的,在对弈方为第一方和第二方的情况下,第i个推演回合的攻击方为第一方,第i+1个推演回合的攻击方为第二方。例如,在对弈方为红棋和黑棋,存在4个推演回合,且第1个推演回合的攻击方为红棋的情况下,第2个推演回合的攻击方为黑棋,第3个推演回合的攻击方为红棋,第4个推演回合的攻击方为黑棋。
在一些实施例中,电子设备可以根据第i个推演回合的每个推演棋局,确定出第i+1个推演回合的攻击方的M个候选棋步,并根据第i+1个推演回合的攻击方的M个候选棋步中的每个候选棋步,得到一个推演棋局,即得到了第i+1个推演回合的每个推演棋局,之后,根据第i+1个推演回合的每个推演棋局,确定出第i+2个推演回合的攻击方的M个候选棋步,并根据第i+2个推演回合的攻击方的M个候选棋步中的每个候选棋步,得到一个推演棋局,即得到了第i+2个推演回合的每个推演棋局,如此循环,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步;在此情况下,电子设备便可基于N个推演回合所得到的全部候选棋步,从第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,并作为当前对弈回合中攻击方的推荐棋步,以进行当前对弈回合中的对弈。
在一些实施例中,在N为4的情况下,电子设备可以根据第1个推演回合的每个推演棋局,确定出第2个推演回合的攻击方的M个候选棋步,并根据第2个推演回合的攻击方的M个候选棋步中的每个候选棋步,得到一个推演棋局,即得到了第2个推演回合的每个推演棋局,之后,根据第2个推演回合的每个推演棋局,确定出第3个推演回合的攻击方的M个候选棋步,并根据第3个推演回合的攻击方的M个候选棋步中的每个候选棋步,得到一个推演棋局,即得到了第3个推演回合的每个推演棋局,根据第3个推演回合的每个推演棋局,确定出第4个推演回合的攻击方的M个候选棋步,并基于4个推演回合所得到的全部候选棋步,从第1个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,并作为当前对弈回合中攻击方的推荐棋步。
示例性的,在对弈棋局为象棋的对弈棋局,对弈双方为黑棋和红棋,N为4,M为2,并且,当前对弈回合是第一个对弈回合的情况下,电子设备可以以红棋作为第一个对弈回合中的攻击方,根据初始对弈棋局确定红棋的第一步棋的2个候选棋步,并根据2个候选棋步分别对应生成红棋的第一步棋的2个推演棋局;再以黑棋作为攻击方,根据红棋的第一步棋的2个推演棋局,确定黑棋的第一步棋的2个候选棋步,并根据2个候选棋步分别对应生成黑棋的第一步棋的2个推演棋局;之后,继续以红棋作为攻击方来根据黑棋的第一步棋的2个推演棋局,确定红棋的第二步棋的2个候选棋步,最后,又以黑棋作为攻击方,根据红棋的第二步棋的2个推演棋局,确定黑棋的第二步棋的2个候选棋步,并根据2个候选棋步分别对应生成黑棋的第二步棋的2个推演棋局;如此,得到了红棋和黑棋各自两步棋的候选棋步,从而可以根据得到的红棋和黑棋各自两步棋的候选棋步,预估出第一个对弈回合中红棋的推荐棋步,之后,以该推荐棋步作为红棋在第一个对弈回合中的对弈棋步,并生成对弈后的棋局。
在一些实施例中,如图5所示,上述S1012可以通过S201~S203实现,将以图5为例进行说明。
S201、基于初始对弈棋局,确定第i个推演回合的攻击方的每个棋步,并估算每个棋步的实力值。
S202、将实力值最大的前M个棋步,作为第i个推演回合的攻击方的M个候选棋步。
在一些实施例中,电子设备可以在生成初始对弈棋局之后,根据预设的攻击方设定参数,确定当前对弈回合中的攻击方,并将当前对弈回合中的攻击方作为第i个推演回合中的攻击方,通过分析初始对弈棋局中的攻击方的棋子,以及分析与第i个推演回合中的攻击方对立的一方的棋子,来确定第i个推演回合的攻击方的每个可走的棋步,并估算每个棋步的实力值。例如,在当前对弈回合为第一个对弈回合,且电子设备根据预设的攻击方参数将红棋设为第一个对弈回合的攻击方的情况下,电子设备可以将红棋作为第1个推演回合中的攻击方,通过分析初始对弈棋局中红棋的棋子和与红棋对立的黑棋的棋子,来确定第1个推演回合中红棋可走的每个棋步,并估算每个棋步的实力值,之后,可以根据实力值从确定的可走的棋步中,选出实力值最大的前M个棋步,作为第i个推演回合的攻击方的M个候选棋步。
在一些实施例中,电子设备可以将根据初始对弈棋局,确定第i个推演回合的攻击方的每个棋步,并估算每个棋步的实力值,将实力值最大的前M个棋步,作为第i个推演回合的攻击方的M个候选棋步的过程,生成对应的文本,如此,可以得到用于描述得到第i个推演回合的每个候选棋步时的分析过程的文本。
在一些实施例中,对于第i个推演回合的攻击方的每个棋步,电子设备可以根据该棋步给对方带来的伤害和该棋步给自身带来的损失,综合分析出该棋步的实力值。
示例性的,对于第i个推演回合的攻击方的每个棋步,电子设备可以基于初始对弈棋局和每个棋子的预设等级值,分别估算每个棋步的风险值和攻击值;基于每个棋步的风险值和攻击值,确定每个棋步的实力值。
这里,棋局中的每个棋子有预设的等级值,且不同种类的棋子对应的等级值不同;例如,在棋局为象棋棋局的情况下,“马”、“卒”、“炮”、“士”等等这些不同种类的棋子均对应有预设的等级值,如,“卒”的等级值为1分、“马”的等级值为6分,“车”的等级值为8分,等等。
在一些实施例中,对于第i个推演回合的攻击方的每个棋步,电子设备可以根据当前的棋局和该棋步对应的棋子的预设等级值,以及在当前的棋局中该棋步对应的棋子所能吃掉的对方的棋子的预设等级值,计算出该棋步的攻击值;例如,在第i个推演回合的攻击方的一个棋步为“从A位置向B位置上马”,且在第i个推演回合对应的棋局中,此棋步吃掉了对方的一个“卒”的情况下,可以根据棋子“马”的预设等级值和棋子“卒”的预设等级值,通过预设第一比例值,计算出“从A位置向B位置上马”这一棋步的攻击值。
在一些实施例中,对于第i个推演回合的攻击方的每个棋步,电子设备可以根据该棋步对应的棋子的预设等级值,以及在第i+1个推演回合中能够吃掉该棋子的攻击方的棋子的预设等级值,计算出该棋步的风险值;例如,在第i个推演回合的攻击方的一个棋步为“从A位置向B位置上马”,且在第i+1个推演回合的攻击方的“车”可以吃掉“从A位置向B位置上马”这一棋步对应的棋子“马”的情况下,可以根据棋子“马”的预设等级值和棋子“车”的预设等级值,通过预设第二比例值,计算出“从A位置向B位置上马”这一棋步的风险值。
在一些实施例中,对于第i个推演回合的攻击方的每个棋步,电子设备在计算出该棋步的攻击值和风险值的情况下,可以根据攻击值和风险值之间的总和,以及预设第三比值,计算出该棋步的综合值,并通过将该综合值归一化处理,得到该综合值对应的归一化值,并将该归一化值作为该棋步的实力值。示例性的,电子设备可以通过归一化处理,将综合值归一化至[0,1]中的某个数值。这里,通过归一化处理,可以将每个棋步的综合值量化到同一空间中,有利于后续根据得到的实力值进行推荐棋步的筛选。
这里,预设第一比例值、预设第二比例值和预设第三比例值,可以根据实际需要设定,本公开实施例对此不作限定。
S203、基于初始对弈棋局和M个候选棋步中的每个候选棋步,生成每个候选棋步对应的推演棋局,得到M个推演棋局。
在一些实施例中,对于M个候选棋步中的每个候选棋步,电子设备可以在初始对弈棋局上分别执行每个候选棋步,从而得到每个候选棋步对应的一个推演棋局。例如,在初始对弈棋局如图4A所示,且当前攻击方的一个候选棋步为“从C位置向D位置走卒”的情况下,通过在初始对弈棋局上执行该候选棋步,所得到的一个推演棋局如图6所示。
在一些实施例中,如图7所示,上述S203可以通过S2031~S2032实现,将以图7为例进行说明。
S2031、根据实力值,从M个候选棋步中选出实力值最高的第1个候选棋步,基于初始对弈棋局和第1个候选棋步,生成第1个推演棋局;每个候选棋步对应一个实力值。
S2032、根据实力值,从M个候选棋步中除第1个候选棋步之外的候选棋步中,选出实力值最高的第2个候选棋步,基于初始对弈棋局和第2个候选棋步,生成第2个推演棋局,直至基于初始对弈棋局和第M个候选棋步,生成第M个推演棋局。
在一些实施例中,电子设备在根据初始对弈棋局和M个候选棋步,生成M个推演棋局的过程中,可以先从M个候选棋步中选出实力值最高的一个候选棋步,在初始对弈棋局上执行选出的该候选棋步,从而得到第1个推演棋局;之后,继续从剩余的M-1个候选棋步中继续选出实力值最高的一个候选棋步,并在初始对弈棋局上执行选出的该候选棋步,从而得到第2个推演棋局,如此循环,直至剩余了1个候选棋步的情况下,在初始对弈棋局上执行该剩余的候选棋步,从而得到第M个推演棋局。
在一些实施例中,如图8所示,上述S1013可以通过S301~S303实现,且S1013中基于N个推演回合得到的候选棋步,从第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,作为当前对弈回合中攻击方的推荐棋步,可以通过S302~S303实现,将以图8为例进行说明。
S301、根据第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步;其中,在对弈方至少包括第一方和第二方的情况下,第i个推演回合的攻击方为第一方,第i+1个推演回合的攻击方为第二方。
S302、根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到第i个推演回合的攻击方的每个候选棋步的评价值;每个候选棋步对应一个实力值。
S303、根据评价值,从第i个推演回合的攻击方的M个候选棋步中,筛选出推荐棋步,作为当前对弈回合中攻击方的推荐棋步。
这里,第i个推演回合的部分候选棋步与第i+1个推演回合的部分候选棋步之间存在对应关系,且每个候选棋步对应一个实力值,电子设备在得到了N个推演回合的候选棋步的情况下,可以根据N个推演回合中存在对应关系的候选棋步的实力值,得到第i个推演回合的攻击方的每个候选棋步的评价值,并根据评价值从第i个推演回合的攻击方的M个候选棋步中,筛选出评价值最小的一个候选棋步作为当前对弈回合的攻击方的推荐棋步。
示例性的,如图9所示,在N为4、M为2,对弈双方为红棋和黑棋,且第1个推演回合中的攻击方和当前对弈回合中的攻击方为红棋的情况下,在第1个推演回合中,确定出了红棋的第一步棋的2个候选棋步r1和r2;在第2个推演回合中黑棋为攻击方,且确定出了与r1对应的黑棋的第一步棋的2个候选棋步b1和b2,以及确定出了与r2对应的黑棋的第一步棋的2个候选棋步b3和b4;在第3个推演回合中红棋为攻击方,且确定出了与b1对应的红棋的第二步棋的2个候选棋步r11和r12,确定出了与b2对应的红棋的第二步棋的2个候选棋步r13和r14,确定出了与b3对应的红棋的第二步棋的2个候选棋步r15和r16,以及确定出了与b4对应的红棋的第二步棋的2个候选棋步r17和r18;最后,在第4个推演回合中黑棋为攻击方,且确定出了与r11对应的黑棋的第二步棋的2个候选棋步b11和b12,确定出了与r12对应的黑棋的第二步棋的2个候选棋步b13和b14,确定出了与r13对应的黑棋的第二步棋的2个候选棋步b15和b16,确定出了与r14对应的黑棋的第二步棋的2个候选棋步b17和b18,确定出了与r15对应的黑棋的第二步棋的2个候选棋步b19和b20,确定出了与r16对应的黑棋的第二步棋的2个候选棋步b21和b22,确定出了与r17对应的黑棋的第二步棋的2个候选棋步b23和b24,以及,确定出了与r18对应的黑棋的第二步棋的2个候选棋步b25和b26,从而得到了4个推演回合中的所有候选棋步;基于此可知,r1、b1、r11和b11相互之间存在对应关系,r1、b1、r11和b12相互之间存在对应关系,以及r1、b1、r12和b13相互之间存在对应关系,等等,在此不一一例举;从而,电子设备可以基于存在对应关系的候选棋步的实力值,得到第1个推演棋局中候选棋步r1的评价值,以及得到候选棋步r2的评价值。
在一些实施例中,电子设备可以将根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到第i个推演回合的攻击方的每个候选棋步的评价值,根据评价值从第i个推演回合的攻击方的M个候选棋步中,筛选出推荐棋步的过程,生成对应的文本,如此,得到了用于描述得到当前对弈回合的推荐棋步时的分析过程的文本。
在一些实施例中,如图10所示,上述S302可以通过S3021实现,将以图10为例进行说明。
S3021、将第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值进行依次求和,得到第i个推演回合的攻击方的每个候选棋步的X个评价值;其中,第i个推演回合的攻击方的每个候选棋步对应X个评价值,X等于M的M+1次方。
示例性的,如图9所示,在M为2的情况下,可以得到第1个推演回合的攻击方的候选棋步r1的8个评价值和候选棋r2的8个评价值,其中,候选棋步r1的第1个评价值是候选棋步r1、b1、r11和b11的实力值的总和、第2个评价值是候选棋步r1、b1、r11和b12的实力值的总和、第3个评价值是候选棋步r1、b1、r12和b13的实力值的总和、第4个评价值是候选棋步r1、b1、r12和b14的实力值的总和、第5个评价值是候选棋步r1、b2、r13和b15的实力值的总和、第6个评价值是候选棋步r1、b2、r13和b16的实力值的总和、第7个评价值是候选棋步r1、b2、r14和b17的实力值的总和,以及,第8个评价值是候选棋步r1、b2、r14和b18的实力值的总和;同理,候选棋步r2的第1个评价值是候选棋步r2、b3、r15和b19的实力值的总和、第2个评价值是候选棋步r2、b3、r15和b20的实力值的总和、第3个评价值是候选棋步r2、b3、r16和b21的实力值的总和、第4个评价值是候选棋步r2、b3、r16和b22的实力值的总和、第5个评价值是候选棋步r2、b4、r17和b23的实力值的总和、第6个评价值是候选棋步r2、b4、r17和b24的实力值的总和、第7个评价值是候选棋步r2、b4、r18和b25的实力值的总和,以及,第8个评价值是候选棋步r2、b4、r18和b26的实力值的总和;之后,电子设备可以从这16个评价值中选择最小的一个评价值,并将该最小的评价值所属的候选棋步,作为推荐棋步;例如,在最小的评价值所属的候选棋步为r2的情况下,可以将候选棋步r2作为当前对弈回合中红棋的推荐棋步。
在一些实施例中,上述S103可以通过下述步骤实现:根据候选棋步之间的顺序关系与对应关系,确定候选棋步的讲解文本之间的顺序关系和第一对应关系;根据候选棋步与推荐棋步之间的对应关系,确定候选棋步的讲解文本与推荐棋步的讲解文本之间的第二对应关系;基于讲解文本、顺序关系、第一对应关系,以及第二对应关系,生成对弈过程的对弈讲解方案。
这里,根据图9所示的例子可知,每两个相邻的推演棋局的部分候选棋步之间存在对应关系(例如,r1与b1对应,r1与b2对应,等等),且预设数量的推演棋局中的候选棋步之间也存在先后顺序关系(例如,r1在b1之前,r1在b2之前,等等),以及候选棋步与推荐棋步之间也存在对应关系(例如,在推荐棋步为r1的情况下,图9所示的全部候选棋步对应了推荐棋步r1,或者,在推荐棋步为r2的情况下,图9所示的全部候选棋步对应了推荐棋步r2),从而电子设备可以根据候选棋步之间存在的顺序关系和对应关系,得到候选棋步的讲解文本之间的顺序关系和第一对应关系,以及,根据候选棋步与推荐棋步之间的对应关系,得到候选棋步的讲解文本与推荐棋步的讲解文本之间的第二对应关系,之后,根据第一对应关系、顺序关系和第二对应关系,生成对弈过程的对弈讲解方案。
在一些实施例中,电子设备可以根据第一对应关系直接将相关的候选棋步的讲解文本之间进行组合,以及,根据第二对应关系直接将相关的候选棋步与推荐棋步的讲解文本进行组合,从便得到了文本形式的对弈过程的对弈讲解方案。
在一些实施例中,电子设备可以先生成每个文本的音频数据,之后,根据第一对应关系和顺序关系直接将相关的候选棋步的讲解文本之间进行组合,以及,根据第一对应关系和顺序关系直接将相关的候选棋步的音频数据进行组合,同时,根据第二对应关系直接将相关的候选棋步和推荐棋步的讲解文本进行组合,以及,根据第二对应关系直接将相关的候选棋步和推荐棋步的音频数据进行组合;如此,分别得到了对弈过程的讲解文本和讲解音频,之后,可以将讲解文本与讲解音频进行对齐,并将对齐后的讲解文本与讲解音频进行合成处理,得到文字+音频形式的对弈过程的对弈讲解方案。
在一些实施例中,上述S103还可以通过下述步骤实现:根据每个讲解文本,确定对应的语音讲解数据、视觉对弈动作数据和视觉表情数据;根据语音讲解数据、视觉对弈动作数据和视觉表情数据,生成对弈过程的音视频讲解方案。
在一些实施例中,视觉对弈动作数据可以是对弈动画,例如,棋步“从A位置向B位置走马”对应的是棋子“马”从初始位置A移动至目标位置B的动画;视觉表情数据可以是表情动画,例如,动态的微笑表情、动态的哭泣表情等。
在一些实施例中,电子设备在生成每个对弈棋局的情况下,能够根据该棋局的样式和棋局中每个棋子的位置,生成该对弈棋局的动画画面,并在根据该对弈棋局确定出候选棋步或推荐棋步的情况下,可以在该对弈棋局的动画画面的基础上,生成执行该候选棋步或推荐棋步时的动画画面(即对弈动画),同时,根据该候选棋步或推荐棋步的攻击力为该棋步匹配对应的表情动画;之后,将该对弈棋局的动画画面、该候选棋步或推荐棋步的对弈动画,以及该候选棋步或推荐棋步的表情动画进行合成,从而得到该候选棋步或推荐棋步的动画片段,通过将得到的所有动画片段按照候选棋步之间的顺序关系和对应关系,以及推荐棋步与候选棋步之间的对应关系进行组合,得到对弈过程的视频讲解方案。与此同时,电子设备在生成每个对弈棋局,并在根据该对弈棋局确定出候选棋步或推荐棋步的情况下,可以生成每个棋步的讲解文本,并根据讲解文本生成对应的音频数据,通过将得到的所有音频数据按照候选棋步之间的顺序关系和对应关系,以及推荐棋步与候选棋步之间的对应关系进行组合,得到对弈过程的音频讲解方案;之后,将视频讲解方案与音频讲解方案进行对齐处理,得到了对弈过程的音视频讲解方案。
在一些实施例中,在对弈机器人或人为根据已经生成的对弈讲解方案进行对弈时,可以一边在显示屏幕上显示当前的对弈棋局,一边同步语音讲解根据当前对弈棋局分析当前攻击方的每个候选棋步的过程,并在分析过程中通过显示屏幕同步显示执行当前攻击方的每个候选棋步的动画,以及执行当前攻击方的候选棋步后得到的推演棋局,并在采用这样的讲解方式讲解完预设数量个推演回合后,继续语音讲解根据这预设数量个推演回合中分析出的当前攻击方的候选棋步,筛选当前攻击方的当前对弈棋局的推荐棋步的过程,并在讲解到筛选出当前攻击方的当前对弈棋局的推荐棋步之后,通过显示屏幕显示在当前对弈棋局上执行当前攻击方的候选棋步的动画,以及执行推荐棋步后得到的新的当前对弈棋局;之后,继续语音讲解分析新的当前对弈棋局中是否存在胜出方的过程,并在不存在胜出方的情况下,继续以新的攻击方为当前攻击方,以新的当前对弈棋局进行对弈过程的讲解,直到讲解到新得到的对弈棋局中存在胜出方时,结束讲解。
以下通过一个具体场景实施例对本公开的对弈讲解方案生成方法进行解释说明;其中,对弈方包括:红棋和黑棋,并且,在对弈时均向后推演红棋、黑棋的各一步棋;
S1、设置初始棋局;
这里,可以根据预设棋局参数,设置初始棋局。
S2、设置当前棋走方为红棋,当前对立方为黑棋;
这里,可以根据预设攻击方参数,设置当前棋走方和当前对立方。
S3、计算当前棋走方第一步每个可走的棋步;
这里,可以根据初始棋局,确定红棋的每个可走的棋步。
S4、计算当前棋走方第一步每个可走的棋步的风险系数;
这里,可以基于初始棋局和红棋第一步的每个棋子的预设等级值,分别估算红棋每个可走的棋步的风险值(风险系数)。
S5、对当前棋走方第一步的可走的棋步,根据攻击力进行排序;
这里,可以根据初始棋局和红棋每个棋子的预设等级值,分别估算红棋第一步每个可走的棋步的攻击值,并根据攻击值对红棋第一步的所有可走的棋步进行排序。
S6、对当前棋走方第一步的可走的棋步,根据风险系数排序;
这里,可以根据S4计算出的每个红棋第一步的每个可走的棋步的风险值,对红棋的所有可走的棋步进行排序。
S7、对当前棋走方第一步的可走的棋步,进行综合风险和攻击力排序;
这里,可以根据红棋所有可走的棋步的攻击值的排序,以及红棋的所有可走的棋步的风险值的排序,对红棋的所有可走的棋步进行综合排序;具体的,可以根据红棋的每个可走的棋步的风险值和攻击值,确定红棋每个可走的棋步的实力值,之后,根据实力值进行排序。
S8、获取当前棋走方第一步的排序前5的棋步;
S9、获取当前棋走方第一步的排序前5的棋步中排序最高的棋步,并记录至数据库;
S10、生成当前棋走方第一步的该排序最高的棋步走后的棋局;
S11、根据生成的该棋局,采用与S3~S9相同的原理,确定出当前对立方的第一步排序前5的棋步中排序最高的棋步,并记录至数据库;
这里,在当前棋走方为红棋时,当前对立方为黑棋;在当前棋走方为黑棋时,当前对立方为红棋。
S12、生成当前对立方第一步的该排序最高的棋步走后的棋局;
S13、从当前对立方第一步的排序前5的棋步的剩余棋步中,继续确定出一个排序最高的棋步,记录至数据库;之后,返回继续执行S12与S13,直至确定出当前对立方第一步的排序前5的棋步中的排序第5的棋步;
S14、从当前棋走方第一步的排序前5的棋步的剩余棋步中,继续确定出一个排序最高的棋步,记录至数据库;之后,返回继续执行S10~S13,直至确定出当前棋走方第一步排序前5的棋步中的排序第5的棋步;
S15、根据红棋第一步的排序前5的棋步的实力值,以及黑棋第一步的排序前5的棋步的实力值,确定出红棋第一步的排序前5的棋步中每个棋步的评价值(走法损失);
S16、从红棋第一步的排序前5的棋步中,选取评价值最小的一个棋步作为红棋的推荐棋步;
S17、采用红棋的推荐棋步,在初始棋局的基础上进行对弈,并生成该推荐棋步走后的新棋局;
S18、根据新棋局,判断是否有一方胜出;若是则执行S19~S23;若否,则设置当前棋走方为黑棋,当前对立方为红棋,并返回继续执行S3~S18;
S19、从数据库中导出所记录的黑棋和红棋的所有棋步,以及每个棋步的相关数据;
S20、从棋步对应的预设模板话术中,确定导出的每一个棋步对应的棋步话术,并生成导出的每一种棋子走法的棋步讲解文本;
S21、采用离线TTS方式,根据导出的每一种棋子走法的棋步讲解文本,生成对应的音频数据;
S22、将导出的每一种棋子走法的棋步讲解文本与对应的音频数据的播放顺序对齐;
S23、将对齐后的所有棋子走法进行组合,生成初始棋局对应的讲解方案。
本公开还提供一种对弈讲解方案生成装置,图11为本公开实施例提供的对弈讲解方案生成装置的结构示意图;如图11所示,对弈讲解方案生成装置1包括:第一生成单元10,用于在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于所述推荐棋步对弈,生成当前对弈棋局;第二生成单元20,用于在所述当前对弈棋局中没有胜出方的情况下,基于所述当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于所述下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;第三生成单元30,用于基于所述讲解文本,生成所述对弈过程的对弈讲解方案。
在本公开的一些实施例中,所述第三生成单元30,还用于根据所述候选棋步之间的顺序关系与对应关系,确定所述候选棋步的讲解文本之间的顺序关系和第一对应关系;根据所述候选棋步与所述推荐棋步之间的对应关系,确定所述候选棋步的讲解文本与所述推荐棋步的讲解文本之间的第二对应关系;基于所述讲解文本、所述顺序关系、所述第一对应关系,以及所述第二对应关系,生成所述对弈过程的对弈讲解方案。
在本公开的一些实施例中,所述预设数量为N,且N为大于零的整数;所述第一生成单元10,还用于基于预设棋局参数,生成初始对弈棋局;基于所述初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据所述M个候选棋步,生成对应的M个推演棋局;i为1~N中的整数;M为大于或等于1的整数;根据所述第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步的情况下,基于N个推演回合得到的候选棋步,从所述第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,作为所述当前对弈回合中攻击方的推荐棋步;其中,在对弈方至少包括第一方和第二方的情况下,所述第i个推演回合的攻击方为所述第一方,所述第i+1个推演回合的攻击方为所述第二方。
在本公开的一些实施例中,所述第一生成单元10,还用于基于所述初始对弈棋局,确定所述第i个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;将所述实力值最大的前M个棋步,作为所述第i个推演回合的攻击方的M个候选棋步;基于所述初始对弈棋局和所述M个候选棋步中的每个候选棋步,生成所述每个候选棋步对应的推演棋局,得到所述M个推演棋局。
在本公开的一些实施例中,所述第一生成单元10,还用于基于所述初始对弈棋局和每个棋子的预设等级值,分别估算所述每个棋步的风险值和攻击值;基于所述每个棋步的风险值和攻击值,确定所述每个棋步的实力值。
在本公开的一些实施例中,每个候选棋步对应一个实力值;所述所述第一生成单元10,还用于根据所述实力值,从所述M个候选棋步中选出实力值最高的第1个候选棋步,基于所述初始对弈棋局和所述第1个候选棋步,生成第1个推演棋局;根据所述实力值,从所述M个候选棋步中除所述第1个候选棋步之外的候选棋步中,选出实力值最高的第2个候选棋步,基于所述初始对弈棋局和所述第2个候选棋步,生成第2个推演棋局,直至基于所述初始对弈棋局和第M个候选棋步,生成第M个推演棋局。
在本公开的一些实施例中,所述第一生成单元10,还用于基于所述第i个推演回合的任一个推演棋局,确定对应的所述第i+1个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;将所述实力值最大的前M个棋步,作为所述任一个推演棋局对应的所述第i+1个推演回合的M个候选棋步。
在本公开的一些实施例中,每个候选棋步对应一个实力值;所述第一生成单元10,还用于根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到所述第i个推演回合的攻击方的每个候选棋步的评价值;根据所述评价值,从所述第i个推演回合的攻击方的M个候选棋步中,筛选出所述推荐棋步。
在本公开的一些实施例中,所述第i个推演回合的攻击方的每个候选棋步对应X个评价值;所述第一生成单元10,还用于将所述第i个推演回合至所述第N个推演回合中,存在对应关系的候选棋步的实力值进行依次求和,得到所述第i个推演回合的攻击方的每个候选棋步的X个评价值;其中,X等于M的M+1次方。
在本公开的一些实施例中,所述第三生成单元30,还用于根据每个讲解文本,确定对应的语音讲解数据、视觉对弈动作数据和视觉表情数据;根据所述语音讲解数据、所述视觉对弈动作数据和所述视觉表情数据,生成所述对弈过程的音视频讲解方案。
本公开实施例还提供一种电子设备,图12为本公开实施例提供的电子设备的结构示意图,如图12所示,包括:存储器22和处理器23,其中,存储器22和处理器23通过通信总线21连接;存储器22,用于存储可执行计算机程序;处理器23,用于执行存储器22中存储的可执行计算机程序时,实现本公开实施例提供的对弈讲解方案生成方法。
本公开实施例提供一种计算机可读存储介质,存储有计算机程序,用于引起处理器23执行时,实现本公开实施例提供的对弈讲解方案生成方法。
本公开实施例提供一种计算机程序,包括计算机可读代码,在所述计算机可读代码在电子设备中运行的情况下,所述电子设备中的处理器执行时实现上述的显示方法。
上述的讲解方案生成装置、电子设备和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有与相应方法实施例相似的技术描述和有益效果,限于篇幅,可参考上述方法实施例的记载,故在此不再赘述。对于本公开讲解方案生成装置、电子设备和存储介质实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
在本公开的一些实施例中,存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备,可为易失性存储介质或非易失性存储介质。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号;也可以是包括上述存储器之一或任意组合的各种设备;也可以是包括上述存储器之一或任意组合的各种设备;也可以是包括上述存储器之一或任意组合的各种设备。
在本公开的一些实施例中,计算机可读代码可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它部分。
作为示例,计算机可读代码可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,HyperText Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,计算机可读代码可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
综上所述,采用本技术实现方案,可以自适应地对所有对弈方的棋步进行预估,以及自适应地根据预估的棋步进行所有对弈方之间的对弈,并根据预估的棋步和用于对弈的棋步生成对弈过程的讲解方案;相比于通过人工制作人为对弈过程的讲解方案而言,提高了生成对弈讲解方案时的智能性和效率。
以上所述,仅为本公开的实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本公开的保护范围之内。
Claims (13)
1.一种对弈讲解方案生成方法,其特征在于,包括:
在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于所述推荐棋步对弈,生成当前对弈棋局;
在所述当前对弈棋局中没有胜出方的情况下,基于所述当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于所述下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;
基于所述讲解文本,生成所述对弈过程的对弈讲解方案。
2.根据权利要求1所述的方法,其特征在于,所述基于所述讲解文本,生成所述对弈过程的对弈讲解方案,包括:
根据所述候选棋步之间的顺序关系与对应关系,确定所述候选棋步的讲解文本之间的顺序关系和第一对应关系;
根据所述候选棋步与所述推荐棋步之间的对应关系,确定所述候选棋步的讲解文本与所述推荐棋步的讲解文本之间的第二对应关系;
基于所述讲解文本、所述顺序关系、所述第一对应关系,以及所述第二对应关系,生成所述对弈过程的对弈讲解方案。
3.根据权利要求1或2所述的方法,其特征在于,所述预设数量为N,且N为大于零的整数;所述在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,包括:
基于预设棋局参数,生成初始对弈棋局;
基于所述初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据所述M个候选棋步,生成对应的M个推演棋局;i为1~N中的整数;M为大于或等于1的整数;
根据所述第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,直至根据第N-1个推演回合的每个推演棋局,确定出对应的第N个推演回合的攻击方的M个候选棋步的情况下,基于N个推演回合得到的候选棋步,从所述第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,作为所述当前对弈回合中攻击方的推荐棋步;
其中,在对弈方至少包括第一方和第二方的情况下,所述第i个推演回合的攻击方为所述第一方,所述第i+1个推演回合的攻击方为所述第二方。
4.根据权利要求3所述的方法,其特征在于,所述基于所述初始对弈棋局,确定第i个推演回合的攻击方的M个候选棋步,根据所述M个候选棋步,生成对应的M个推演棋局,包括:
基于所述初始对弈棋局,确定所述第i个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;
将所述实力值最大的前M个棋步,作为所述第i个推演回合的攻击方的M个候选棋步;
基于所述初始对弈棋局和所述M个候选棋步中的每个候选棋步,生成所述每个候选棋步对应的推演棋局,得到所述M个推演棋局。
5.根据权利要求4所述的方法,其特征在于,所述估算所述每个棋步的实力值,包括:
基于所述初始对弈棋局和每个棋子的预设等级值,分别估算所述每个棋步的风险值和攻击值;
基于所述每个棋步的风险值和攻击值,确定所述每个棋步的实力值。
6.根据权利要求4或5所述的方法,其特征在于,每个候选棋步对应一个实力值;所述基于所述初始对弈棋局和所述M个候选棋步中的每个候选棋步,生成所述每个候选棋步对应的推演棋局,包括:
根据所述实力值,从所述M个候选棋步中选出实力值最高的第1个候选棋步,基于所述初始对弈棋局和所述第1个候选棋步,生成第1个推演棋局;
根据所述实力值,从所述M个候选棋步中除所述第1个候选棋步之外的候选棋步中,选出实力值最高的第2个候选棋步,基于所述初始对弈棋局和所述第2个候选棋步,生成第2个推演棋局,直至基于所述初始对弈棋局和第M个候选棋步,生成第M个推演棋局。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述根据所述第i个推演回合的每个推演棋局,确定对应的第i+1个推演回合的攻击方的M个候选棋步,包括:
基于所述第i个推演回合的任一个推演棋局,确定对应的所述第i+1个推演回合的攻击方的每个棋步,并估算所述每个棋步的实力值;
将所述实力值最大的前M个棋步,作为所述任一个推演棋局对应的所述第i+1个推演回合的M个候选棋步。
8.根据权利要求3-7任一项所述的方法,其特征在于,每个候选棋步对应一个实力值;所述基于N个推演回合得到的候选棋步,从所述第i个推演回合的攻击方的M个候选棋步中筛选出推荐棋步,包括:
根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到所述第i个推演回合的攻击方的每个候选棋步的评价值;
根据所述评价值,从所述第i个推演回合的攻击方的M个候选棋步中,筛选出所述推荐棋步。
9.根据权利要求8所述的方法,其特征在于,所述第i个推演回合的攻击方的每个候选棋步对应X个评价值;所述根据第i个推演回合至第N个推演回合中,存在对应关系的候选棋步的实力值,得到所述第i个推演回合的攻击方的每个候选棋步的评价值,包括:
将所述第i个推演回合至所述第N个推演回合中,存在对应关系的候选棋步的实力值进行依次求和,得到所述第i个推演回合的攻击方的每个候选棋步的X个评价值;其中,X等于M的M+1次方。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述基于所述讲解文本,生成所述对弈过程的对弈讲解方案,包括:
根据每个讲解文本,确定对应的语音讲解数据、视觉对弈动作数据和视觉表情数据;
根据所述语音讲解数据、所述视觉对弈动作数据和所述视觉表情数据,生成所述对弈过程的音视频讲解方案。
11.一种对弈讲解方案生成装置,其特征在于,包括:
第一生成单元,用于在对弈过程中,基于对弈棋局,确定预设数量的推演回合中每个推演回合的攻击方的候选棋步,基于所述候选棋步,预估当前对弈回合的攻击方的推荐棋步,并基于所述推荐棋步对弈,生成当前对弈棋局;
第二生成单元,用于在所述当前对弈棋局中没有胜出方的情况下,基于所述当前对弈棋局,预估下一个对弈回合的攻击方的推荐棋步,并基于所述下一个对弈回合的攻击方的推荐棋步对弈,生成下一个对弈棋局,直至生成的对弈棋局中有胜出方的情况下,生成每个候选棋步和每个推荐棋步的讲解文本;
第三生成单元,用于基于所述讲解文本,生成所述对弈过程的对弈讲解方案。
12.一种电子设备,其特征在于,包括:
存储器,用于存储可执行计算机程序;
处理器,用于执行所述存储器中存储的可执行计算机程序时,实现权利要求1至10任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,存储有计算机程序,用于引起处理器执行时,实现权利要求1至10任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210156558.3A CN114461788A (zh) | 2022-02-21 | 2022-02-21 | 对弈讲解方案生成方法、装置、电子设备及存储介质 |
PCT/CN2022/127650 WO2023155472A1 (zh) | 2022-02-21 | 2022-10-26 | 对弈讲解方案生成方法、装置、电子设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210156558.3A CN114461788A (zh) | 2022-02-21 | 2022-02-21 | 对弈讲解方案生成方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114461788A true CN114461788A (zh) | 2022-05-10 |
Family
ID=81415214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210156558.3A Withdrawn CN114461788A (zh) | 2022-02-21 | 2022-02-21 | 对弈讲解方案生成方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114461788A (zh) |
WO (1) | WO2023155472A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023155472A1 (zh) * | 2022-02-21 | 2023-08-24 | 上海商汤智能科技有限公司 | 对弈讲解方案生成方法、装置、电子设备、存储介质和程序产品 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343230A (zh) * | 2020-01-22 | 2020-06-26 | 北京翼鸥教育科技有限公司 | 基于专属小黑板的在线实时发起、应答方法及互动系统 |
JP2021128309A (ja) * | 2020-02-17 | 2021-09-02 | Necソリューションイノベータ株式会社 | 将棋対局評価判定装置、将棋対局評価判定方法、プログラム及び記録媒体 |
CN111475771B (zh) * | 2020-04-13 | 2023-05-12 | 腾讯科技(深圳)有限公司 | 基于人工智能的棋盘信息处理方法、装置、设备和介质 |
CN112598131A (zh) * | 2020-12-29 | 2021-04-02 | 中国科学院自动化研究所 | 推演数据生成及行动方案推演系统、方法及装置 |
CN113599798B (zh) * | 2021-08-25 | 2023-03-17 | 上海交通大学 | 基于深度强化学习方法的中国象棋博弈学习方法及系统 |
CN113946604B (zh) * | 2021-10-26 | 2023-01-20 | 网易有道信息技术(江苏)有限公司 | 分阶段围棋教学方法、装置、电子设备及存储介质 |
CN114461788A (zh) * | 2022-02-21 | 2022-05-10 | 北京市商汤科技开发有限公司 | 对弈讲解方案生成方法、装置、电子设备及存储介质 |
-
2022
- 2022-02-21 CN CN202210156558.3A patent/CN114461788A/zh not_active Withdrawn
- 2022-10-26 WO PCT/CN2022/127650 patent/WO2023155472A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023155472A1 (zh) * | 2022-02-21 | 2023-08-24 | 上海商汤智能科技有限公司 | 对弈讲解方案生成方法、装置、电子设备、存储介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
WO2023155472A1 (zh) | 2023-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109621422B (zh) | 电子棋牌决策模型训练方法及装置、策略生成方法及装置 | |
CN109091868B (zh) | 对战行为确定的方法、装置、计算机设备及存储介质 | |
CN112016704B (zh) | Ai模型训练方法、模型使用方法、计算机设备及存储介质 | |
Pumperla et al. | Deep learning and the game of Go | |
WO2019085823A1 (zh) | 游戏信息的确定方法和装置、存储介质、电子装置 | |
CN108579095A (zh) | 游戏中的社交关系推荐方法、装置和计算机可读存储介质 | |
CN112704882B (zh) | 基于模型的棋牌游戏策略更新的方法、系统、介质及装置 | |
CN111506514B (zh) | 一种应用于消除类游戏的智能测试方法及系统 | |
Lora Ariza et al. | Time series and case-based reasoning for an intelligent tetris game | |
CN114461788A (zh) | 对弈讲解方案生成方法、装置、电子设备及存储介质 | |
Khan et al. | Optimal skipping rates: training agents with fine-grained control using deep reinforcement learning | |
Giannatos et al. | Suggesting new plot elements for an interactive story | |
Liu et al. | Automatic generation of tower defense levels using PCG | |
Conroy et al. | Modeling player-like behavior for game AI design | |
CN113836749B (zh) | 一种地震救援虚拟演练系统 | |
CN113209640B (zh) | 解说的生成方法、装置、设备及计算机可读存储介质 | |
Yin et al. | A data-driven approach for online adaptation of game difficulty | |
CN113230650B (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN114404975A (zh) | 决策模型的训练方法、装置、设备、存储介质及程序产品 | |
CN110263937B (zh) | 一种数据处理方法、设备及存储介质 | |
CN112274935A (zh) | Ai模型训练方法、使用方法、计算机设备及存储介质 | |
CN116570929A (zh) | 游戏智能体确定、游戏运行方法、装置、介质和电子设备 | |
CN113935618B (zh) | 下棋能力的测评方法、装置、电子设备及存储介质 | |
CN113946604B (zh) | 分阶段围棋教学方法、装置、电子设备及存储介质 | |
Mozgovoy et al. | Building a believable agent for a 3D boxing simulation game |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20220510 |
|
WW01 | Invention patent application withdrawn after publication |