这是尝试编写遗传算法来玩纸牌游戏 Dominion。
这个概念是将 Dominion 策略建模为您想要结束游戏的目标牌组。 计算机每回合都会执行一个简单的策略,以最大限度地提高其手牌的购买力,然后将钱花在最能使其套牌更接近目标套牌的卡片上。
遗传方面是从许多具有不同随机目标套牌的计算机玩家开始,相互对战,并培育出最成功的目标套牌以创造下一代玩家。 几代之后,出现了一套在对抗略低于平均水平的人类玩家(也就是我)时表现相当不错的套牌。
目标牌组由一系列牌组成,每张牌都有一个偏好和一个延迟。 优先选择较高的卡而不是优先选择较低的卡。 如果两张卡的偏好相同,计算机将购买您牌组中较少的一张。 如果一张卡片有延迟,计算机将在给定的回合数内推迟购买这张卡片(这是为了避免过早购买胜利卡片。)
到目前为止,我只实现了大约 15 张卡片(实际上主要是来自 Dominion Intrigue 的卡片。)
2022-11-30 16:11:57
9KB
Python
1