Safe Haskell | None |
---|---|
Language | Haskell2010 |
AUTHOR
- Dr. Alistair Ward
DESCRIPTION
- Defines configurable options related to the evaluation of the game at any instance.
- N.B.:
evaluation
is distinct fromsearch
: evaluation => how one assesses the fitness of candidate moves; search => the order in which one evaluates candidates before selecting on the basis of their fitness.
Synopsis
- type IncrementalEvaluation = Bool
- type Reader criterionWeight pieceSquareValue rankValue x y = Reader (EvaluationOptions criterionWeight pieceSquareValue rankValue x y)
- data EvaluationOptions criterionWeight pieceSquareValue rankValue x y
- tag :: String
- mkEvaluationOptions :: (Enum x, Enum y, Eq pieceSquareValue, Eq criterionWeight, Fractional pieceSquareValue, Num criterionWeight, Ord x, Ord y) => RankValues rankValue -> CriteriaWeights criterionWeight -> IncrementalEvaluation -> Maybe (PieceSquareTable x y pieceSquareValue, PieceSquareTable x y pieceSquareValue) -> EvaluationOptions criterionWeight pieceSquareValue rankValue x y
Types
Type-synonyms
type IncrementalEvaluation = Bool Source #
Whether to generate position-hashes incrementally from the hash of the position prior to the last move.
type Reader criterionWeight pieceSquareValue rankValue x y = Reader (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source #
Self-documentation.
Data-types
data EvaluationOptions criterionWeight pieceSquareValue rankValue x y Source #
Defines the options related to the automatic selection of moves.
Instances
(Enum x, Enum y, Ord x, Ord y, Eq rankValue, Eq criterionWeight, Eq pieceSquareValue) => Eq (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions (==) :: EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> Bool # (/=) :: EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> Bool # | |
(Enum x, Enum y, Ord x, Ord y, Show rankValue, Show criterionWeight, Show x, Show y, Show pieceSquareValue) => Show (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions showsPrec :: Int -> EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> ShowS # show :: EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> String # showList :: [EvaluationOptions criterionWeight pieceSquareValue rankValue x y] -> ShowS # | |
(NFData criterionWeight, NFData pieceSquareValue, NFData rankValue, NFData x, NFData y) => NFData (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions rnf :: EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> () # | |
(Fractional rankValue, Num criterionWeight, Ord rankValue, Show rankValue) => Default (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions def :: EvaluationOptions criterionWeight pieceSquareValue rankValue x y # | |
(Enum x, Enum y, Fractional pieceSquareValue, Fractional rankValue, XmlPickler criterionWeight, XmlPickler rankValue, Num criterionWeight, Ord criterionWeight, Ord pieceSquareValue, Ord rankValue, Ord x, Ord y, Real pieceSquareValue, Show pieceSquareValue, Show criterionWeight, Show rankValue) => XmlPickler (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions xpickle :: PU (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) # | |
(Enum x, Enum y, Ord x, Ord y, Real criterionWeight, Real pieceSquareValue, Real rankValue, Show pieceSquareValue) => ShowFloat (EvaluationOptions criterionWeight pieceSquareValue rankValue x y) Source # | |
Defined in BishBosh.Input.EvaluationOptions showsFloat :: (Double -> ShowS) -> EvaluationOptions criterionWeight pieceSquareValue rankValue x y -> ShowS Source # |
Constants
Functions
Constructor
:: (Enum x, Enum y, Eq pieceSquareValue, Eq criterionWeight, Fractional pieceSquareValue, Num criterionWeight, Ord x, Ord y) | |
=> RankValues rankValue | The static value associated with each piece's rank. |
-> CriteriaWeights criterionWeight | The weights applied to the values of the criteria used to select a move. |
-> IncrementalEvaluation | |
-> Maybe (PieceSquareTable x y pieceSquareValue, PieceSquareTable x y pieceSquareValue) | The value to each type of piece, of each square, during normal play & the end-game. |
-> EvaluationOptions criterionWeight pieceSquareValue rankValue x y |
Smart constructor.