Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
fixed merge conflicts
  • Loading branch information
john committed Apr 30, 2016
2 parents 6de3165 + df046c5 commit 4174382
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 9 deletions.
14 changes: 9 additions & 5 deletions src/controller/Game.java
Expand Up @@ -106,7 +106,7 @@ public class Game {
public Move getMinimaxMove(int depth, boolean inJumpSequence) {
ArrayList<Board> boardFrontier = null;
ArrayList<Move> moveFrontier = null;
ArrayList<Integer> moveScores = new ArrayList<Integer>();
ArrayList<Double> moveScores = new ArrayList<Double>();

if (inJumpSequence) {
/* Generate the frontier only for the piece that just moves */
Expand Down Expand Up @@ -140,7 +140,7 @@ public class Game {
}

/* Determine the maximum minimax score and which move led to that score */
int maxScore = Integer.MIN_VALUE;
double maxScore = Double.MIN_VALUE;
Move bestMove = null;

for (int i = 0; i < moveScores.size(); ++i) {
Expand All @@ -150,14 +150,18 @@ public class Game {
bestMove = moveFrontier.get(i);
maxScore = moveScores.get(i);
}

System.out.println(moveFrontier.get(i) + " --> " + moveScores.get(i));
}

System.out.println("Choosing: " + bestMove);

return bestMove;
}

public int getMinimaxScore(Color color, Board b, int depth, boolean inJumpSequence) {
public double getMinimaxScore(Color color, Board b, int depth, boolean inJumpSequence) {
ArrayList<Board> boardFrontier;
ArrayList<Integer> moveScores = new ArrayList<Integer>();
ArrayList<Double> moveScores = new ArrayList<Double>();
Color otherColor = (color == Color.BLACK ? Color.WHITE : Color.BLACK);

if (depth == 0) {
Expand Down Expand Up @@ -192,7 +196,7 @@ public class Game {
}

for (Board board : boardFrontier) {
int moveScore = getMinimaxScore(nextColor, board, depth - 1, inJumpSequence);
double moveScore = getMinimaxScore(nextColor, board, depth - 1, inJumpSequence);
moveScores.add(moveScore);
}

Expand Down
9 changes: 5 additions & 4 deletions src/model/Board.java
Expand Up @@ -387,11 +387,12 @@ public class Board {
location.row == BOARD_SIZE - 1 );
}

public int getHeuristic(Color color) {
public double getHeuristic(Color color) {
/* Kings are weighted more, so we count for them twice */
int blackHeuristic = blackPieces + blackKings;
int whiteHeuristic = whitePieces + whiteKings;
return (color == Color.BLACK ?

double blackHeuristic = blackPieces + blackKings * 1.5;
double whiteHeuristic = whitePieces + whiteKings * 1.5;
return - (color == Color.BLACK ?
(blackHeuristic - whiteHeuristic) :
(whiteHeuristic - blackHeuristic));
}
Expand Down

0 comments on commit 4174382

Please sign in to comment.