Implemented naive Monte Carlo move generator (simulates 10 random moves for 3 turns by each player).
Consequently, it performs strictly worse than Alpha-Beta, but usually avoids setting players up for an easy capture, unlike Alpha-Beta.
This commit is contained in:
@@ -2,6 +2,7 @@ package view;
|
||||
|
||||
import model.comPlayer.AlphaBetaComPlayer;
|
||||
import model.comPlayer.MinimaxComPlayer;
|
||||
import model.comPlayer.MonteCarloComPlayer;
|
||||
import model.comPlayer.Player;
|
||||
import model.comPlayer.RandomComPlayer;
|
||||
|
||||
@@ -9,6 +10,7 @@ public class ParsedArgs {
|
||||
public static final String COM_RANDOM = "RANDOM";
|
||||
public static final String COM_MINIMAX = "MINIMAX";
|
||||
public static final String COM_ALPHABETA = "ALPHABETA";
|
||||
public static final String COM_MONTECARLO = "MONTECARLO";
|
||||
public static final String COM_DEFAULT = COM_ALPHABETA;
|
||||
|
||||
private String comPlayer = COM_DEFAULT;
|
||||
@@ -20,6 +22,8 @@ public class ParsedArgs {
|
||||
return new MinimaxComPlayer();
|
||||
} else if (COM_ALPHABETA.equalsIgnoreCase(comPlayer)) {
|
||||
return new AlphaBetaComPlayer();
|
||||
} else if (COM_MONTECARLO.equalsIgnoreCase(comPlayer)) {
|
||||
return new MonteCarloComPlayer();
|
||||
} else {
|
||||
System.out.println("Unrecognized comPlayer '" + comPlayer +"', using default: " + COM_DEFAULT);
|
||||
return new AlphaBetaComPlayer();
|
||||
|
||||
Reference in New Issue
Block a user