chipiron.players.move_selector.treevalue.node_evaluator.neural_networks package

Submodules

chipiron.players.move_selector.treevalue.node_evaluator.neural_networks.factory module

This module provides a factory for creating neural network node evaluators.

class chipiron.players.move_selector.treevalue.node_evaluator.neural_networks.factory.NeuralNetNodeEvalArgs(syzygy_evaluation: bool, internal_representation_type: ~chipiron.players.boardevaluators.neural_networks.input_converters.ModelInputRepresentationType.InternalTensorRepresentationType, evaluation_scale: ~chipiron.players.boardevaluators.evaluation_scale.EvaluationScale, neural_nets_model_and_architecture: ~chipiron.players.boardevaluators.neural_networks.factory.NeuralNetModelsAndArchitecture = <factory>, type: ~typing.Literal[<NodeEvaluatorTypes.NeuralNetwork: 'neural_network'>] = NodeEvaluatorTypes.NeuralNetwork)[source]

Bases: NodeEvaluatorArgs

Arguments for evaluating a node using a neural network.

Variables:

path_to_nn_folder (path) – Path to the folder containing the model weights and model architecture

__post_init__() None[source]

Performs additional initialization after the object is created.

Raises:

ValueError – If the type is not NodeEvaluatorTypes.NeuralNetwork.

neural_nets_model_and_architecture: NeuralNetModelsAndArchitecture
type: NeuralNetwork: 'neural_network'>] = 'neural_network'

chipiron.players.move_selector.treevalue.node_evaluator.neural_networks.nn_node_evaluator module

This module contains the implementation of the NNNodeEvaluator class, which is a generic neural network class for board evaluation.

class chipiron.players.move_selector.treevalue.node_evaluator.neural_networks.nn_node_evaluator.NNNodeEvaluator(nn_board_evaluator: NNBoardEvaluator, syzygy: SyzygyTable[Any] | None, evaluation_scale: EvaluationScale)[source]

Bases: NodeEvaluator

The Generic Neural network class for board evaluation

evaluate_all_not_over(not_over_nodes: list[chipiron.players.move_selector.treevalue.nodes.algorithm_node.algorithm_node.AlgorithmNode]) None[source]

Evaluates a list of AlgorithmNode objects that are not yet over.

Parameters:

not_over_nodes (list[AlgorithmNode]) – The list of AlgorithmNode objects to evaluate.

Returns:

None

Module contents

This module provides classes and functions for neural network node evaluation in the tree value move selector.

Classes: - NeuralNetNodeEvalArgs: A class representing the arguments for neural network node evaluation.

class chipiron.players.move_selector.treevalue.node_evaluator.neural_networks.NeuralNetNodeEvalArgs(syzygy_evaluation: bool, internal_representation_type: ~chipiron.players.boardevaluators.neural_networks.input_converters.ModelInputRepresentationType.InternalTensorRepresentationType, evaluation_scale: ~chipiron.players.boardevaluators.evaluation_scale.EvaluationScale, neural_nets_model_and_architecture: ~chipiron.players.boardevaluators.neural_networks.factory.NeuralNetModelsAndArchitecture = <factory>, type: ~typing.Literal[<NodeEvaluatorTypes.NeuralNetwork: 'neural_network'>] = NodeEvaluatorTypes.NeuralNetwork)[source]

Bases: NodeEvaluatorArgs

Arguments for evaluating a node using a neural network.

Variables:

path_to_nn_folder (path) – Path to the folder containing the model weights and model architecture

__post_init__() None[source]

Performs additional initialization after the object is created.

Raises:

ValueError – If the type is not NodeEvaluatorTypes.NeuralNetwork.

evaluation_scale: EvaluationScale
internal_representation_type: InternalTensorRepresentationType
neural_nets_model_and_architecture: NeuralNetModelsAndArchitecture
syzygy_evaluation: bool
type: NeuralNetwork: 'neural_network'>] = 'neural_network'