Refactoring in progress.

Player and Action classes are now singletons (factory pattern) rather than String values.
Implementing more general treesearch code for minimax, alpha-beta, monte carlo using simplified backup logic.
This commit is contained in:
cs6601
2012-08-30 08:41:03 -04:00
parent b44b666663
commit 2e40440838
26 changed files with 647 additions and 433 deletions

View File

@@ -28,11 +28,11 @@ public class GameScore {
return NORMALIZED_ZERO_SCORE + 2 * blackScore - ((int)(2 * (whiteScore + komi)));
}
public double getScore(String color) {
if ("w".equals(color)) {
return getWhiteScore();
} else if ("b".equals(color)) {
public double getScore(Player color) {
if (color == Player.BLACK) {
return getBlackScore();
} else if (color == Player.WHITE) {
return getWhiteScore();
} else {
return 0.0;
}
@@ -42,6 +42,14 @@ public class GameScore {
return (double)whiteScore + komi;
}
public boolean isWinner(String color) {
if ("w".equals(color)) {
return getWhiteScore() < NORMALIZED_ZERO_SCORE;
} else {
return getBlackScore() > NORMALIZED_ZERO_SCORE;
}
}
public String toString() {
return "B: " + blackScore + "W: "+ whiteScore+"K:" + komi;
}