gpt4 book ai didi

Java获取纳什均衡的玩家/策略的所有组合

转载 作者:搜寻专家 更新时间:2023-11-01 03:52:23 25 4
gpt4 key购买 nike

我正在尝试计算纳什均衡,因此我需要玩家及其策略的所有可能组合。

我有类和方法:

  • Strategy
  • PlayerLinkedList<Strategy> strategies
  • StrategyCombinationTreeMap<Player, Strategy> combination
  • boolean isNashEquilibrium()它测试 StrategyCombination 是否是 NashEquilibrium

一切正常。现在对于给定的玩家列表及其策略,我想计算所有可能的策略组合并测试每个组合的 isNashEquilibirum。我只是想不通怎么办。我想递归算法是可能的。

到目前为止我有:

        public class Game {

LinkedList<Player> players = new LinkedList<Player>();

public Game(){
}

public void addPlayer(Player p){
this.players.add(p);
}

public StrategyCombination computeNashEquilibrium(){

StrategyCombination nash = null;

StrategyCombination sc = new StrategyCombination();

for(int i = 0; i < this.players.size(); i++){
sc.combination.put(this.players.get(i), this.players.get(i).strategies.get(0));
}

for(int i = 0; i <= this.players.size()-1; i++){
for(int j = 0; j <= this.players.get(i).strategies.size()-1; i++){
StrategyCombination sc2 = sc.createNew(this.players.get(i).strategies.get(j)); /* makes a new StrategyCombination with one Strategy replaced */
if(sc2.isNashEquilibrium){
nash = sc2;
}
for(int k = i+1; k <= this.players.size()-1; i++){
for(int l = i+1; l <= this.players.size()-1; l++){
sc2.createNew(...);
}
}
}
}

return nash;
}

那么我怎样才能得到所有的StrategyCombinations呢?即使是蛮力也可以,我只是现在想不通:/。感谢阅读和回复。对不起我的英语。

最佳答案

您可以使用 Permutation如果需要事情的顺序

使用Combinations如果不需要事物的顺序

关于Java获取纳什均衡的玩家/策略的所有组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22251592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com