Photo by Brett Jordan on Unsplash
为了获得更逼真的近似值,我们在模拟中增加了随机性,其中游戏中的回合数R遵循具有均值30和标准差3的高斯分布。均值取自在线文章,方差为任意的。
opponents = []
n_oppo = 4-1 # a 4-player game has 3 opponents
n_game = 1e6
n_round_mean, n_round_std = get_n_round_stat(n_oppo)
# 1. Create opponents in a list
for _ in range(n_oppo):
opponents.append(Player())
# 2. Simulate 1,000,000 games
for i in range(round(n_game)):
# by creating a new board and cleaning each player's states
board = Board()
for player in opponents:
player.new_game()
# 3. Simulate a random number of rounds per game
n_round = np.random.normal(n_round_mean, n_round_std)
for j in range(round(n_round)):
# 4. Simulate each turn for each player
for player in opponents:
board.turn(player=player)
让我们通过条形图可视化每个图块s的着陆概率p(s)。
Landing probabilities of tiles on the Monopoly board
哇。
我当然没想到这一点。 着陆概率不相等。 我们可以观察到
- 您最终有0%的机会最终会进入"入狱",
- 您可能会选择使用CC图块而不是使用机会图块,这可能是由于牌组中的纸牌组合有所不同,
- 您有6.31%的机会进入监狱,包括"仅拜访"和"进入监狱",
- 即使我们不包括"仅拜访",监狱也是访问量最高的区域,
- 棕色1号(Old Kent Road / Mediterranean Avenue)是造访次数最少的房产,机会为1.98%,
- 红色3号(特拉法加广场/伊利诺伊州大街)是访问量最大的酒店,概率为3.16%,这可能是因为将玩家发送到该酒店的机会卡,以及
- 橙色3号(Vine Street /纽约大街)和橙色2号(Marlborough Street / Tennessee Avenue)是参观人数最多的房地产竞赛的亚军,这使得橙色设置平均是参观人数最多的颜色组。 这是因为刚离开监狱(棋盘上访问最多的地方)的玩家经常会拜访他们。
也许棕色套装不值得投资。 也许橙色是必须购买的。 我们目前尚不确定,因为我们没有考虑他们的租金和成本。 我们也这样做。
旁注2:监狱的着陆可能性可能被低估了。 我们假设玩家通过使用免费监狱卡或支付50英镑/美元来摆脱监狱。 他们不会尝试不支付任何费用而翻倍越狱。 这种假设在游戏开始时就
b)投资成本物业的投资成本c(s,h)包括土地价格和房屋价格。 对于不同的属性和在顶部建造的房屋数量,它有所不同。 它们被硬编码到程序中。
Cost matrix for each colour set, railroads, and utilities
请注意,我们会考虑整个颜色集的投资成本,而不是单个属性的投资成本。 这是因为只有当玩家拥有整个颜色集时才能购买房屋。
我们还以类似的方式对租金收入矩阵r(s,h)进行了硬编码。
成立了,但在游戏结束时却没有,因为留在监狱里是避免支付租金的最佳策略。
3.评估a)收支平衡点我们将资产的收支平衡点定义为收回投资所需的预期对手数。 这是通过财产总成本除以对手每回合的预期租金收入得出的。 对手每转一圈的预期收入与其着陆概率和租金收入成正比。 我们可以使用相同的逻辑,通过以下公式找出颜色集的收支平衡点。