一:鹰鸽博弈
鹰鸽博弈是博弈论中的一个经典模型,以下是对鹰鸽博弈的具体介绍:
基本策略和行为模式:
鹰策略:代表着激进、好斗、具有攻击性的行为方式。在博弈中,选择鹰策略的个体在面对竞争或冲突时会全力以赴、坚决斗争,不轻易退缩,直到取得胜利或者给对手造成重大伤害。这种策略往往需要付出较高的成本,比如在战斗中可能会受伤,但如果获胜,就能获得较高的收益。
鸽策略:象征着温和、妥协、非攻击性的行为方式。选择鸽策略的个体在遇到竞争或冲突时,通常会选择避免正面冲突,以和平的方式解决问题,或者选择退让、分享资源。鸽策略的成本相对较低,因为可以避免激烈的战斗和受伤的风险,但获得的收益也相对较少。
收益情况:
当两只鹰相遇时,它们会进行激烈的战斗,由于战斗会带来两败俱伤的结果,所以双方的收益都是负的(比如假定为 - 2)。
当两只鸽子相遇时,它们会共同分享资源,各自获得一定的收益(比如假定为 1)。
当鹰和鸽子相遇时,鸽子会逃走,鹰将独自获得全部资源,鹰的收益较高(比如假定为 2)。
在这个博弈中,玩家可以选择扮演鹰(攻击型)或鸽(和平型)。鹰会争夺资源,但可能受伤;鸽则避免战斗,但可能无法获得资源。
import numpy as np
# 博弈矩阵
payoff_matrix = np.array([[-2, 2], [1, 1]])
# 策略选择函数
def choose_strategy(payoff_matrix, strategy):
if strategy == "hawk":
return np.argmax(payoff_matrix[0])
elif strategy == "dove":
return np.argmax(payoff_matrix[1])
# 模拟博弈
strategy1 = "hawk"
strategy2 = "dove"
result1 = choose_strategy(payoff_matrix, strategy1)
result2 = choose_strategy(payoff_matrix, strategy2)
print(f"玩家1选择:{strategy1}, 玩家2选择:{strategy2}")
print(f"玩家1的收益:{payoff_matrix[0][result2]}, 玩家2的收益:{payoff_matrix[1][result1]}")
以下是对代码的详细解释:
1:定义博弈矩阵
import numpy as np
payoff_matrix = np.array([[-2, 2], [1, 1]])
这里创建了一个新的二维
numpy
数组作为博弈矩阵。
- 矩阵的第一行