Index
All Classes and Interfaces|All Packages
A
- addWinAndIncrementVisit(int) - Method in class search.mcts.MCTSNode
-
Increments the number of visits and adds a win to the node.
- AI - Class in search
-
Interface for defining an AI.
- AI() - Constructor for class search.AI
- app - package app
- aspirationWindow - Variable in class search.SearchConfig
- aspirationWindowSize - Variable in class search.SearchConfig
B
- benchmark - package benchmark
- benchmark.simulation - package benchmark.simulation
- bestConfig - Static variable in class search.ab.Minimax_AB
- BLUE - Enum constant in enum class game.Color
- board - Variable in class search.mcts_lib.OpeningBookGenerator
- bytesToGigabytes(long) - Static method in class benchmark.simulation.ConnectionSimulation
- bytesToGigabytes(long) - Static method in class benchmark.simulation.Simulation
C
- capturingHM - Variable in class game.MoveGenerator
- clone() - Method in class game.MoveGenerator
- closenessWeight - Static variable in class search.ab.Evaluation
- closenessWeightTotal - Static variable in class search.ab.Evaluation
- color - Variable in class benchmark.simulation.ConnectionSimulation.GameResult
- color - Variable in class benchmark.simulation.Simulation.GameResult
- Color - Enum Class in game
-
Enumeration representing piece colors used in the game.
- communication - package communication
- connect() - Method in class communication.Connection
-
Connects to the game server and manages game play.
- Connection - Class in communication
-
Handles connection and communication with the game server.
- Connection(boolean, boolean) - Constructor for class communication.Connection
-
Constructs a Connection object.
- Connection(boolean, boolean, double, boolean) - Constructor for class communication.Connection
-
Constructs a Connection object.
- ConnectionSimulation - Class in benchmark.simulation
-
ConnectionSimulation of full games between two AIs.
- ConnectionSimulation() - Constructor for class benchmark.simulation.ConnectionSimulation
- ConnectionSimulation.GameResult - Class in benchmark.simulation
-
Class to represent the result of a game, including the winning AI and the color.
- ConnectionSimulationConfig - Class in benchmark.simulation
-
Configuration for a connection simulation.
- ConnectionSimulationConfig(double, double, double, int, int, double, boolean, int, int, double) - Constructor for class benchmark.simulation.ConnectionSimulationConfig
-
Constructs a new
ConnectionSimulationConfigwith the specified parameters. - continueSearch(double) - Method in class search.mcts.MCTS
-
Checks whether the search should continue based on the end time-
- convertAllMoves(Map<Integer, List<Integer>>) - Static method in class game.MoveGenerator
-
Converts a map of possible combined integer moves to a formatted FEN string representation.
- convertMovesToList(LinkedHashMap<Integer, List<Integer>>) - Static method in class search.ab.Evaluation
-
Converts a map of moves to a list for easier manipulation.
- convertMovesToMap(List<Integer>) - Static method in class search.ab.Evaluation
-
Converts a list of moves (as combined integers) back to a map representation.
- convertMoveToFEN(int) - Static method in class game.MoveGenerator
-
Convert a combined integer move to FEN notation.
- convertPosToString(int) - Static method in class game.MoveGenerator
-
Convert a combined integer position to a string representation.
- convertStringToPos(String) - Static method in class game.MoveGenerator
-
Convert a string position to a combined integer position.
- convertStringToPosWrapper(String) - Method in class game.MoveGenerator
-
Convert a FEN move to an array of two combined integer positions.
- copy() - Method in class search.SearchConfig
-
Method to create a copy of this configuration.
D
- debug - package debug
- Debugger - Class in debug
-
Debugging tool for analyzing move order of an AI.
- Debugger() - Constructor for class debug.Debugger
- depths - Variable in class benchmark.simulation.ConnectionSimulation.GameResult
- depths - Variable in class benchmark.simulation.Simulation.GameResult
- doesBaseRowContainColor(Color, int) - Method in class game.MoveGenerator
-
Checks if a specific row on the board contains any pieces of a given color.
- DOUBLE - Enum constant in enum class game.Piece
- doubleWeight - Static variable in class search.ab.Evaluation
- dynamicTime - Variable in class search.SearchConfig
E
- EMPTY - Enum constant in enum class game.Color
- EMPTY - Enum constant in enum class game.Piece
- Evaluation - Class in search.ab
-
Provides methods for evaluating game positions.
- Evaluation() - Constructor for class search.ab.Evaluation
- expandAndReturnRandomNode(MCTSNode, MoveGenerator, Color, LinkedList<Integer>) - Method in class search.mcts.MCTS
-
Expands the given MCTS node by creating new child nodes for each possible move and returns one of the created child nodes at random.
G
- game - package game
- GameLog - Class in debug
-
Reads a log file containing game logs and outputs a visual representation to a text file.
- GameLog() - Constructor for class debug.GameLog
- GameResult(int, Color, ArrayList<Integer>) - Constructor for class benchmark.simulation.ConnectionSimulation.GameResult
- GameResult(int, Color, ArrayList<Integer>) - Constructor for class benchmark.simulation.Simulation.GameResult
- generateAllPossibleMoves(Color) - Method in class game.MoveGenerator
-
Generates all possible moves for a specific color.
- generateAllPossibleMovesCaptures(Color) - Method in class game.MoveGenerator
-
Generates all possible capturing moves for a specific color.
- generateMaxOnePossibleMoveForAI(Color) - Method in class game.MoveGenerator
-
Generates a maximum of one possible move for a given color.
- GeneticAlgorithm - Class in search.optimisation
-
Implementation of a Genetic Algorithm to optimize weights for evaluating game states in a specific game scenario.
- GeneticAlgorithm() - Constructor for class search.optimisation.GeneticAlgorithm
- GeneticAlgorithm.Individual - Class in search.optimisation
-
Represents an individual in the genetic algorithm population, with specific weights for evaluating game states.
- getBestMove(String) - Method in class search.ab.Minimax_AB
-
Determines the best move for a given board state represented by a FEN string.
- getBestMove(MCTSNode) - Method in class search.mcts.MCTS
-
Determines the average wins per visit for each child of a give node and chooses the child that maximizes this value.
- getBestMoveNoAlphaBeta(String) - Method in class search.Minimax_noAB
-
Finds the best move using the Minimax algorithm without Alpha-Beta pruning.
- getColor(char) - Method in class game.MoveGenerator
-
Get the color from a character representation.
- getColorAtPosition(int) - Method in class game.MoveGenerator
-
Get the piece color at a specific position on the board.
- getColorBoard() - Method in class game.MoveGenerator
- getFenFromBoard() - Method in class game.MoveGenerator
-
Get the FEN string representation of the current board state.
- getMove(String, Color) - Method in class app.Player
-
Gets a valid move from the player.
- getMovesWrapper(String) - Method in class game.MoveGenerator
-
Retrieves all possible moves for a given board FEN string.
- getNodeValue() - Method in class search.mcts.MCTSNode
-
Calculates the node's value using the UCB1 formula.
- getPieceAtPosition(int) - Method in class game.MoveGenerator
-
Get the piece at a specific position on the board.
- getPieceBoard() - Method in class game.MoveGenerator
- getProtectedPieces() - Method in class game.MoveGenerator
- getRandomMove(LinkedHashMap<Integer, List<Integer>>) - Method in class game.MoveGenerator
-
Retrieves a random move from a map of possible moves.
- getRandomMoveInt(LinkedHashMap<Integer, List<Integer>>) - Method in class game.MoveGenerator
-
Generates a random move from the given possible moves.
- getScore(Piece, double, double) - Static method in class search.ab.Evaluation
-
Computes the score (contribution) of a piece based on its type and weight.
- getScoreWrapper(MoveGenerator, Color, double) - Static method in class search.ab.Evaluation
-
Computes the score of the current game position for a specified player.
- getScoreWrapperAI(MoveGenerator, Color, double, LinkedHashMap<Integer, List<Integer>>) - Static method in class search.ab.Evaluation
-
Computes the score of the current game position for a player considering opponent's moves.
- getScoreWrapperOld(MoveGenerator, Color, String) - Static method in class search.ab.Evaluation
-
Computes the score of the current game position for a specified player in an old version for benchmarking.
- getTotalPossibleMoves() - Method in class game.MoveGenerator
- getWinner(LinkedHashMap<Integer, List<Integer>>, Color) - Method in class game.MoveGenerator
-
Determines the winner for the Monte Carlo Tree Search (MCTS) strategy (only use when confirmed that game is over).
I
- initializeBoard() - Method in class game.MoveGenerator
-
Initialize the board(s) with starting position.
- initializeBoard(String) - Method in class game.MoveGenerator
-
Initialize the board based on the provided FEN string.
- isFullyExpanded() - Method in class search.mcts_lib.MCTSNode_lib
-
Checks if every child node of this node has been visited at least once.
- isGameOver(Color) - Method in class game.MoveGenerator
-
Checks if the game is over for a specific color based on current board state.
- isGameOver(String, Color) - Method in class game.MoveGenerator
-
Checks if the game is over for a specific color after a given move.
- isGameOver(LinkedHashMap<Integer, List<Integer>>, Color) - Method in class game.MoveGenerator
-
Checks if the game is over for a specific color based on available moves.
- isGameOverMCTS(LinkedHashMap<Integer, List<Integer>>, Color) - Method in class game.MoveGenerator
-
Checks if the game is over for the Monte Carlo Tree Search (MCTS) strategy and returns the result.
- isGameOverMCTS_lib(LinkedHashMap<Integer, List<Integer>>) - Method in class game.MoveGenerator
-
Checks if the game is over for the Monte Carlo Tree Search (MCTS) strategy.
- isOnBaseLineForColor() - Method in class search.mcts.MCTSNode
-
Checks if the node's move is on the baseline of the enemy.
- isValidMove(int, Color) - Method in class game.MoveGenerator
-
Checks if a move is valid for a piece of the given color.
- isWinForMCTS(Color) - Method in class game.MoveGenerator
-
Checks if the game is a win for the Monte Carlo Tree Search (MCTS) strategy.
- iterativeDeepening(MoveGenerator, double, Color) - Method in class search.ab.Minimax_AB
-
Performs an iterative deepening search to find the best move score within the given time limit.
- iterativeDeepeningNoAlphaBeta(MoveGenerator, Color, Color, int) - Method in class search.Minimax_noAB
-
Performs iterative deepening search using the Minimax algorithm without Alpha-Beta pruning.
M
- main(String[]) - Static method in class app.Orchestrator
-
Main method to start the game with a specific initial board state.
- main(String[]) - Static method in class benchmark.MCTSBM
-
Main method to run the benchmarks and print results to a file.
- main(String[]) - Static method in class benchmark.Minimax_ABBM
-
Main method to run the benchmarks and print results to a file.
- main(String[]) - Static method in class benchmark.Minimax_noABBM
-
Main method to run the benchmarks and print results to a file.
- main(String[]) - Static method in class benchmark.MoveGeneratorBM
-
Main method to run the benchmarks and print results to a file.
- main(String[]) - Static method in class benchmark.simulation.ConnectionSimulation
-
Main method to run a simulation between two AIs using predefined configurations and an initial board state.
- main(String[]) - Static method in class benchmark.simulation.Simulation
-
Main method to run a simulation between two AIs using predefined configurations and an initial board state.
- main(String[]) - Static method in class communication.Connection
-
Main method to start the connection and game play.
- main(String[]) - Static method in class debug.Debugger
-
Main method to start the simulation of the move order and output to a file.
- main(String[]) - Static method in class debug.GameLog
-
Main method to execute the game log processing.
- main(String[]) - Static method in class search.mcts_lib.OpeningBookGenerator
- main(String[]) - Static method in class search.optimisation.GeneticAlgorithm
-
Main method that executes the Genetic Algorithm to optimize weights.
- maxAllowedDepth - Variable in class search.SearchConfig
- maxDepth - Variable in class search.ab.Minimax_AB
- MCTS - Class in search.mcts
-
An implementation of a Monte Carlo Tree Search for the game Jump Sturdy.
- MCTS() - Constructor for class search.mcts.MCTS
- MCTS_lib - Class in search.mcts_lib
-
Implementation of Monte Carlo Tree Search (MCTS) for creating an opening library document.
- MCTS_lib() - Constructor for class search.mcts_lib.MCTS_lib
- MCTSBM - Class in benchmark
-
Benchmarking class for the MCTS.
- MCTSBM() - Constructor for class benchmark.MCTSBM
- MCTSNode - Class in search.mcts
-
Represents a node in the Monte Carlo Tree Search (MCTS) tree.
- MCTSNode(Color) - Constructor for class search.mcts.MCTSNode
-
Constructs an MCTSNode Root node only needing the Color as a parameter
- MCTSNode(MCTSNode, int, Color) - Constructor for class search.mcts.MCTSNode
-
Constructs any MCTSNode with a specified parent, move, move generator, and color.
- MCTSNode_lib - Class in search.mcts_lib
-
Class of nodes for the MCTS-algorithm for creating an opening-library-document.
- MCTSNode_lib(int, MCTSNode_lib, int) - Constructor for class search.mcts_lib.MCTSNode_lib
-
Constructs a new MCTSNode_lib object.
- Minimax_AB - Class in search.ab
-
An implementation of a Minimax Search for the game Jump Sturdy with Alpha-Beta Pruning, Aspiration Windows, Transposition Tables and a Quiescence Search.
- Minimax_AB() - Constructor for class search.ab.Minimax_AB
- Minimax_ABBM - Class in benchmark
-
Benchmarking class for the Minimax_AB.
- Minimax_ABBM() - Constructor for class benchmark.Minimax_ABBM
- Minimax_noAB - Class in search
-
An implementation of a Minimax Search for the game Jump Sturdy without Alpha-Beta Pruning,.
- Minimax_noAB() - Constructor for class search.Minimax_noAB
- Minimax_noABBM - Class in benchmark
-
Benchmarking class for the Minimax_noAB.
- Minimax_noABBM() - Constructor for class benchmark.Minimax_noABBM
- MIXED - Enum constant in enum class game.Piece
- mixedWeight - Static variable in class search.ab.Evaluation
- MoveGenerator - Class in game
-
Responsible for managing the Jump Sturdy game logic.
- MoveGenerator() - Constructor for class game.MoveGenerator
- MoveGeneratorBM - Class in benchmark
-
Benchmarking class for the MoveGenerator.
- MoveGeneratorBM() - Constructor for class benchmark.MoveGeneratorBM
- moveOrder(String, String, int) - Static method in class debug.Debugger
-
Simulates a sequence of moves and prints board states after each move.
- movePiece(int) - Method in class game.MoveGenerator
-
Moves a piece from a combined integer start end position.
- movePiece(int, int) - Method in class game.MoveGenerator
-
Moves a piece from the combined integer start position to the end position on the board.
N
- number - Variable in class benchmark.simulation.ConnectionSimulation.GameResult
- number - Variable in class benchmark.simulation.Simulation.GameResult
- numberOfAllSimulations - Variable in class search.mcts.MCTS
O
- OpeningBookGenerator - Class in search.mcts_lib
-
Creates a library-file for the first 3 moves with the best response-move for every possible move of the opponent using the MCTS-algorithm.
- OpeningBookGenerator() - Constructor for class search.mcts_lib.OpeningBookGenerator
- orchestrator(String, SearchConfig) - Method in class search.ab.Minimax_AB
- orchestrator(String, SearchConfig) - Method in class search.AI
-
Orchestrates the AI on the given FEN position and search configuration.
- orchestrator(String, SearchConfig) - Method in class search.mcts.MCTS
- orchestrator(String, SearchConfig) - Method in class search.Minimax_noAB
- orchestrator(String, SearchConfig) - Method in class search.RandomAI
- Orchestrator - Class in app
-
Orchestrates and manages the gameplay between a human player and an AI player.
- Orchestrator() - Constructor for class app.Orchestrator
- orderMoves(LinkedList<Integer>, Color, MoveGenerator) - Static method in class search.ab.Evaluation
-
Orders moves in a list based on whether a move winning, capturing, and closeness to target row.
- orderMovesOld(LinkedList<Integer>, Color) - Static method in class search.ab.Evaluation
-
Orders moves in a list in an old version for benchmarking based on whether a move winning and closeness to target row.
P
- Piece - Enum Class in game
-
Enumeration representing types of pieces used in the game.
- Player - Class in app
-
Represents a player in a game.
- Player() - Constructor for class app.Player
- playGame() - Static method in class search.optimisation.GeneticAlgorithm
-
Simulates playing a full game using a specific set of weights for evaluation.
- playGame(String) - Static method in class app.Orchestrator
-
Plays a game between a human player and an AI.
- playGame(AI, SearchConfig, AI, SearchConfig, String, boolean) - Static method in class benchmark.simulation.Simulation
-
Plays a full game between two AIs using the provided configurations and initial board state.
- playGame(AI, SearchConfig, AI, SearchConfig, String, boolean, ConnectionSimulationConfig, ConnectionSimulationConfig) - Static method in class benchmark.simulation.ConnectionSimulation
-
Plays a full game between two AIs using the provided configurations and initial board state.
- positionsHM - Variable in class search.ab.Minimax_AB
- positionsHM - Variable in class search.Minimax_noAB
- possibleMovesWeight - Static variable in class search.ab.Evaluation
- printBoard(boolean) - Method in class game.MoveGenerator
-
Prints the current state of the board to the console.
- propagateDataToRoot(MCTSNode, int, Color) - Method in class search.mcts.MCTS
-
Propagates the results of a simulation back up to the root of the Monte Carlo Tree Search (MCTS) tree.
- protectedPiecesWeight - Static variable in class search.ab.Evaluation
Q
- qSDepth - Variable in class search.SearchConfig
- quiescenceSearch(MoveGenerator, double, double, Color, Color) - Method in class search.ab.Minimax_AB
-
Performs a quiescence search to evaluate positions more accurately by only exploring capture moves.
R
- RandomAI - Class in search
- RandomAI() - Constructor for class search.RandomAI
- rateMove(MoveGenerator, Color, int, int, int) - Method in class search.ab.Evaluation
-
Rates a move in the game based on its impact on the game position for a specified player.
- ratePosition(MoveGenerator, Color, int) - Static method in class search.ab.Evaluation
-
Rates the overall position of the game for a specified player.
- ratePositionAI(MoveGenerator, Color, int, LinkedHashMap<Integer, List<Integer>>, Color) - Static method in class search.ab.Evaluation
-
Rates the overall position of the game for a player considering opponent's moves.
- ratePositionOld(MoveGenerator, Color, String) - Static method in class search.ab.Evaluation
-
Rates the overall position of the game for a specified player in an old version for benchmarking.
- readFileAndFillBib(String) - Method in class communication.Connection
-
Fills the startingBib HashMap with precalculated starting moves.
- readFileAndFillBib(String, int, HashMap<String, String>) - Static method in class benchmark.simulation.ConnectionSimulation
-
Fills the startingBib HashMap with precalculated starting moves.
- RED - Enum constant in enum class game.Color
- runMCTS(MoveGenerator, Color) - Method in class search.mcts_lib.MCTS_lib
-
Runs the Monte Carlo Tree Search (MCTS) algorithm to determine the best move.
- runOBG(boolean) - Method in class search.mcts_lib.OpeningBookGenerator
-
Runs the openingBookGenerator.
S
- search - package search
- search.ab - package search.ab
- search.mcts - package search.mcts
- search.mcts_lib - package search.mcts_lib
- search.optimisation - package search.optimisation
- SearchConfig - Class in search
-
Configuration class for defining search algorithm parameters.
- SearchConfig(boolean, double, boolean, double, boolean, int, boolean, boolean, int) - Constructor for class search.SearchConfig
-
Constructor to initialize all configuration parameters.
- setColorBoard(Color[][]) - Method in class game.MoveGenerator
-
Set the color board.
- setPieceBoard(Piece[][]) - Method in class game.MoveGenerator
-
Set the piece board.
- showConfig() - Method in class search.ab.Minimax_AB
- showConfig() - Method in class search.AI
-
Returns the configuration of the AI.
- showConfig() - Method in class search.mcts.MCTS
- showConfig() - Method in class search.Minimax_noAB
- showConfig() - Method in class search.RandomAI
- simulate(AI, SearchConfig, AI, SearchConfig, String, int, boolean) - Method in class benchmark.simulation.Simulation
-
Simulates a series of games between two AIs using the provided configurations and initial board state.
- simulate(AI, SearchConfig, AI, SearchConfig, String, int, boolean, ConnectionSimulationConfig, ConnectionSimulationConfig) - Method in class benchmark.simulation.ConnectionSimulation
-
Simulates a series of games between two AIs using the provided configurations and initial board state.
- simulateToEnd(Color, MoveGenerator, Color) - Method in class search.mcts.MCTS
-
Simulates the game to the end using a probabilistic approach weighted by the number of possible moves or each player.
- Simulation - Class in benchmark.simulation
-
ConnectionSimulation of full games between two AIs.
- Simulation() - Constructor for class benchmark.simulation.Simulation
- Simulation.GameResult - Class in benchmark.simulation
-
Class to represent the result of a game, including the winning AI and the color.
- SINGLE - Enum constant in enum class game.Piece
- switchMCTS - Variable in class communication.Connection
T
- timeCriterion - Variable in class search.SearchConfig
- timeLimit - Variable in class search.mcts_lib.MCTS_lib
- timeLimit - Variable in class search.SearchConfig
- toString() - Method in class benchmark.simulation.ConnectionSimulationConfig
- toString() - Method in class search.AI
- toString() - Method in class search.optimisation.GeneticAlgorithm.Individual
-
Provides a string representation of the individual, including its weights and fitness.
- transpositionTable - Variable in class search.ab.Minimax_AB
- TranspositionTableObject - Class in search.ab
-
Represents an entry in the transposition table used for optimizing the search algorithm.
- TranspositionTableObject(double, LinkedList<Integer>, int) - Constructor for class search.ab.TranspositionTableObject
-
Constructs a new
TranspositionTableObjectwith the position rating, a list of moves, and the search depth. - transpositionTables - Variable in class search.SearchConfig
- treePolicy(MoveGenerator, MCTSNode, Color) - Method in class search.mcts.MCTS
-
Executes the tree policy for the Monte Carlo Tree Search (MCTS) algorithm.
- treeSearch(MoveGenerator, double, double, double, int, Color, Color) - Method in class search.ab.Minimax_AB
-
Executes a recursive tree search with alpha-beta pruning to evaluate game positions and find the best possible move for the current player.
- treeSearchNoAlphaBeta(MoveGenerator, int, Color, Color, double) - Method in class search.Minimax_noAB
-
Performs the Minimax search without Alpha-Beta pruning.
- treeTraversal(double, MCTSNode, MoveGenerator) - Method in class search.mcts.MCTS
-
Performs a tree traversal in the Monte Carlo Tree Search (MCTS) algorithm.
U
- updateNode(MoveGenerator) - Method in class search.mcts.MCTSNode
-
Updates the node to determine if it has won in its position.
- useOpeningLib - Variable in class communication.Connection
- useQuiescenceSearch - Variable in class search.SearchConfig
V
- valueOf(String) - Static method in enum class game.Color
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class game.Piece
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class game.Color
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class game.Piece
-
Returns an array containing the constants of this enum class, in the order they are declared.
All Classes and Interfaces|All Packages