A.I。用于类似于 3-5-8 的纸牌游戏(也称为军士长)
A.I. for card game similar to 3-5-8 (also known as Sergeant Major)
我必须实现类似于 3-5-8 的纸牌游戏,但我无法 select A.I 的正确方法。执行。有没有可能的游戏A.I。使用像 OpenRules 业务决策管理系统这样的包来创建?我也看过Drools,但是好像太复杂了。
一般来说,专家系统是否适合这样的 A.I。发展?
这取决于您的解决方案是采用启发式算法还是算法(或者可能是两者的组合)。例如,在国际象棋中,您对游戏状态有完整的了解并且可以提前计划转弯,因此极小极大算法允许您为任何给定的搜索深度找到 "optimal" 的解决方案。启发式 "good enough" 解决方案可用于不可能或难以确定最佳解决方案的情况(因为游戏状态不完全已知,存在机会,或玩家选择的数量太大而无法考虑).例如,您可以根据自己手中的牌和其他玩家手中的牌轻松创建基本的启发式方法,了解在二十一点或纸牌游戏中应该做什么。然后可以将这些简单的启发式方法扩展为包含其他启发式方法。
这是在纸牌游戏中赢得一墩牌的一组简单规则(即启发式):
Rule FirstPlayHighTrump
When
You're playing the first card and
You have trump cards
Then
Play the highest trump card in your hand
Rule FirstPlayHighCard
When
You're playing the first card and
You don't have trump cards
Then
Play the highest card in your hand
Rule PlayHighCard
When
You're not playing the first or last card and
You have a card to win the trick
Then
Play the highest card in your hand that will win the trick
Rule PlayLowCard
When
You don't have a card to win the trick
Then
Play the lowest card in your hand
Rule LastPlayLowestCardToWin
When
You're playing the last card and
You have a card to win the trick
Then
Play the lowest card in your hand that will win the trick
这些 rules/heuristics 比随机挑选牌要好,但由于它们不涉及赢得下一墩的计划,因此可以改进。
我必须实现类似于 3-5-8 的纸牌游戏,但我无法 select A.I 的正确方法。执行。有没有可能的游戏A.I。使用像 OpenRules 业务决策管理系统这样的包来创建?我也看过Drools,但是好像太复杂了。
一般来说,专家系统是否适合这样的 A.I。发展?
这取决于您的解决方案是采用启发式算法还是算法(或者可能是两者的组合)。例如,在国际象棋中,您对游戏状态有完整的了解并且可以提前计划转弯,因此极小极大算法允许您为任何给定的搜索深度找到 "optimal" 的解决方案。启发式 "good enough" 解决方案可用于不可能或难以确定最佳解决方案的情况(因为游戏状态不完全已知,存在机会,或玩家选择的数量太大而无法考虑).例如,您可以根据自己手中的牌和其他玩家手中的牌轻松创建基本的启发式方法,了解在二十一点或纸牌游戏中应该做什么。然后可以将这些简单的启发式方法扩展为包含其他启发式方法。
这是在纸牌游戏中赢得一墩牌的一组简单规则(即启发式):
Rule FirstPlayHighTrump
When
You're playing the first card and
You have trump cards
Then
Play the highest trump card in your hand
Rule FirstPlayHighCard
When
You're playing the first card and
You don't have trump cards
Then
Play the highest card in your hand
Rule PlayHighCard
When
You're not playing the first or last card and
You have a card to win the trick
Then
Play the highest card in your hand that will win the trick
Rule PlayLowCard
When
You don't have a card to win the trick
Then
Play the lowest card in your hand
Rule LastPlayLowestCardToWin
When
You're playing the last card and
You have a card to win the trick
Then
Play the lowest card in your hand that will win the trick
这些 rules/heuristics 比随机挑选牌要好,但由于它们不涉及赢得下一墩的计划,因此可以改进。