Skip to content

Package: MinMaxVGStrategy

MinMaxVGStrategy

nameinstructionbranchcomplexitylinemethod
MinMaxVGStrategy()
M: 0 C: 3
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
computeNextMove(int, VGPlayer, VGState)
M: 0 C: 15
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
toString()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%

Coverage

1: package de.fhdw.gaming.ipspiel22.vierGewinnt.strategy;
2:
3: import java.util.Optional;
4:
5: import de.fhdw.gaming.core.domain.GameException;
6: import de.fhdw.gaming.ipspiel22.searchtree.algorithm.MinMaxAlgorithm;
7: import de.fhdw.gaming.ipspiel22.vierGewinnt.domain.VGPlayer;
8: import de.fhdw.gaming.ipspiel22.vierGewinnt.domain.VGState;
9: import de.fhdw.gaming.ipspiel22.vierGewinnt.domain.VGStrategy;
10: import de.fhdw.gaming.ipspiel22.vierGewinnt.moves.VGMove;
11:
12: /**
13: * Best Strategy by using the MinMaxAlgorithm.
14: */
15: public class MinMaxVGStrategy implements VGStrategy {
16:
17: @Override
18: public Optional<VGMove> computeNextMove(final int gameId, final VGPlayer player, final VGState state)
19: throws GameException {
20: final MinMaxViergewinnt vg = new MinMaxViergewinnt(state, player);
21: final MinMaxAlgorithm<VGPlayer, VGState, VGMove, MinMaxViergewinnt> minmax = new MinMaxAlgorithm<>(vg);
22:
23: return minmax.getBestMove(5);
24: }
25:
26: @Override
27: public String toString() {
28: return MinMaxVGStrategy.class.getSimpleName();
29: }
30: }