📝 博弈论
99篇技术文档📅  最后修改于: 2021-09-24 05:00:07        🧑  作者: Mango
在本文中,将使用 C 编程语言设计一个简单的数字记忆游戏。这是一个简单的记忆数字游戏,其中显示一个随机数并在一段时间后隐藏。任务是猜测显示的数字以继续游戏。如何玩这个游戏:按键盘上的 1 开始游戏。控制台中会显示一个随机正数,玩家必须记住它。几秒钟后,显示的数字将消失。在控制台的下一行,玩家必须输入之前显示的数字。如果输入的数字与前一个数字相同,则玩家的分数加 1,游戏继续。如果输入的数字不正确,...
📅  最后修改于: 2021-09-24 05:00:14        🧑  作者: Mango
给定一个长度为N的二进制字符串S,如果两个玩家A和B按照以下规则进行最佳游戏,则任务是找到游戏的获胜者:玩家 A 总是开始游戏。在玩家的第一个回合中,他可以移动到由‘0’组成的任何索引(基于 1 的索引)并使其成为‘1’。对于随后的回合,如果任何玩家处于索引i,那么他可以移动到它的相邻索引之一,如果它包含0,并在移动后将其转换为‘1’。如果任何玩家在他的回合中无法移动到任何位置,则该玩家输掉游戏。...
📅  最后修改于: 2021-09-24 05:00:22        🧑  作者: Mango
给定四个整数p、q、r和s。两个玩家正在玩一个游戏,其中玩家都击中了目标,第一个击中目标的玩家赢得了比赛。第一个玩家击中目标的概率为p / q,第二个玩家击中目标的概率为r / s。任务是找出第一个玩家赢得比赛的概率。例子:Input:p = 1, q = 4, r = 3, s = 4Output:0.307692308Input:p = 1, q = 2, r = 1, s = 2Output...
📅  最后修改于: 2021-09-24 05:00:30        🧑  作者: Mango
给定一个包含 n 个元素的数组 A[]。有两个玩家 Alice 和 Bob。玩家可以从数组中选择任何元素并将其删除。如果移除所选元素后所有剩余元素的按位异或等于 0,则该玩家输了。这个问题是 nim-game 的变体。注:每个玩家轮流玩游戏。如果两个玩家都发挥最佳,找出获胜者。爱丽丝首先开始游戏。如果数组中有一个元素,则将其值视为数组的 XOR。例子 :Input : A[] = {3, 3, 2...
📅  最后修改于: 2021-09-24 05:00:37        🧑  作者: Mango
考虑一排 n 个硬币,价值为 v1 。 . . vn,其中 n 是偶数。我们通过交替轮流与对手进行游戏。在每一轮中,玩家从该行中选择第一个或最后一个硬币,将其从该行中永久移除,并获得该硬币的价值。确定如果我们先行动,我们肯定能赢得的最大可能金额。注意:对手和使用者一样聪明。让我们通过几个例子来理解这个问题:5, 3, 7, 10 : 用户收集最大值为 15(10 + 5)8, 15, 3, 7 :...
📅  最后修改于: 2021-09-24 05:00:46        🧑  作者: Mango
如何解决“博弈论”中属于 Finders 门将类别的问题?注意- Finders 守门员游戏属于“博弈论”中的“公正游戏”类别。什么是“公正游戏”?让两个玩家“A”和“B”之间进行游戏。如果双方的棋步相同,则称他们之间的博弈是“公正的”。在游戏的特定时刻选择哪个移动取决于游戏的状态。发现者守门员游戏Let two players A and B playing a game on a pile o...
📅  最后修改于: 2021-09-24 05:00:55        🧑  作者: Mango
Expectimax 搜索算法是一种用于最大化预期效用的博弈论算法。它是 Minimax 算法的一种变体。 Minimax 假设对手(最小化者)以最佳方式进行游戏,而 Expectimax 则不然。这对于建模环境中的对手代理不是最佳的,或者他们的行动是基于机会的很有用。期望极大值与极小极大值考虑下面的极小极大树:正如我们所知,对手代理(最小化器)发挥最佳作用,向左移动是有意义的。但是如果最小化器有...
📅  最后修改于: 2021-09-24 05:01:02        🧑  作者: Mango
以前关于此主题的帖子:博弈论中的极小极大算法、博弈论中的评估函数、井字棋 AI – 寻找最佳移动、Alpha-Beta 剪枝。Zobrist Hashing 是一种广泛用于 2 人棋盘游戏的散列函数。它是转置表中最常用的散列函数。换位表基本上存储了先前棋盘状态的评估值,因此如果再次遇到它们,我们只需从换位表中检索存储的值。我们将在后面的文章中介绍换位表。在本文中,我们将以国际象棋棋盘为例并为此实现...
📅  最后修改于: 2021-09-24 05:01:10        🧑  作者: Mango
给定一个整数数组arr[],两个玩家A和B正在玩一个游戏,其中A可以从数组中删除任意数量的非零元素,这些元素是3 的倍数。类似地,B可以删除5 的倍数。不能移除任何元素的玩家输掉游戏。任务是如果A先开始并且双方都发挥最佳,则找到游戏的获胜者。例子:Input:arr[] = {1, 2, 3, 5, 6}Output:A3 and 6 are the elements that A can rem...
📅  最后修改于: 2021-09-24 05:01:17        🧑  作者: Mango
给定一个由不同的正整数组成的数组arr[],两个玩家A和B正在玩游戏。在每一步,玩家从数组中选择两个数字x和y,如果|x – y|不存在于数组中,则玩家将此数字添加到数组中(数组的大小增加 1)。不能移动的玩家输掉游戏。如果玩家A总是开始游戏,则任务是找到游戏的获胜者。例子:Input:arr[] = {2, 3}Output:AAfter A’s move, array will be {2, ...
📅  最后修改于: 2021-09-24 05:01:25        🧑  作者: Mango
两个玩家正在玩以数字 n开头的游戏。在每一回合中,玩家可以进行以下任一动作:将 n 除以任何大于 1 的奇数除数。数的除数包括数本身。如果 n > k 其中 k < n,则从 n 中减去 1。玩家 1 进行主要移动,如果玩家 1 获胜,则打印“是”,否则如果双方都发挥最佳,则打印“否”。无法移动的玩家输掉游戏。例子:Input:n = 12, k = 1Output:YesExplanation:...
📅  最后修改于: 2021-09-24 05:01:33        🧑  作者: Mango
给定一个由二进制字符串组成的数组arr[],任务是在两个玩家按照以下规则进行最佳游戏时找到游戏的获胜者:玩家 1开始游戏。在每一轮中,玩家必须选择一个非空字符串并从字符串的开头删除正数个字符。玩家 1只能选择以字符’0′ 开头的字符串,而玩家 2只能选择以字符’1′ 开头的字符串。不能移动的玩家输掉游戏。例子:Input:arr[] = {“010”, “101”}Output:Player 2E...
📅  最后修改于: 2021-09-24 05:01:41        🧑  作者: Mango
两个玩家正在玩一个有 n 个石头的游戏,其中玩家 1 总是先玩。两个玩家轮流移动并发挥最佳效果。在一次移动中,玩家可以从一堆石头中取出 1、3 或 4 个石头。如果玩家无法移动,则该玩家输掉游戏。给定 n 小于等于 200 的石头数量,找出并打印获胜者的名字。例子:为了解决这个问题,我们需要找到 n 的每个可能值作为赢或输的位置。由于上述博弈是一种公平的组合博弈,因此输赢位置的刻画是有效的。输赢状...
📅  最后修改于: 2021-09-24 05:01:48        🧑  作者: Mango
就像以 0 和 1 作为数字的以 2 为基数的二进制数字系统一样,三元(三元)数字系统是以 0、1 和 -1 作为数字的以 3 为基数的数字系统。最好使用字母“Z”代替 -1,因为虽然表示完整的三进制数 -1 在 1 和 0 之间看起来很奇怪。十进制转换为平衡三元:与二进制转换一样,首先将十进制数表示为具有 0、1、2 作为提醒的正常三进制系统。现在从最低位迭代可以安全地跳过任何 0 和 1,但是...
📅  最后修改于: 2021-09-24 05:01:56        🧑  作者: Mango
先决条件:博弈论在讨论博弈论中的策略时,通常会从玩家的角度提及它们。然而,当策略是从观察者的角度形成的,其主要动机是希望每个玩家都获得最好的结果;也就是说,当从社会平衡的角度形成策略时,结果被称为帕累托最优结果。如果一个结果不能被任何其他结果所支配,则称该结果是帕累托最优的。具体来说,选择帕累托结果,很明显,没有其他结果可以证明对所有参与者来说都比这个结果更好。除此之外,一个玩家严格选择帕累托最优...