engine

package
v1.55.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 12, 2024 License: GPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LmrMult added in v1.55.0

func LmrMult(d, m float64) float64

func SeeGE

func SeeGE(pos *Position, move Move, threshold int) bool

based on Ethereal

Types

type Engine

type Engine struct {
	Options Options
	// contains filtered or unexported fields
}

func NewEngine

func NewEngine(options Options) *Engine

func (*Engine) Clear

func (e *Engine) Clear()

func (*Engine) Prepare

func (e *Engine) Prepare()

func (*Engine) Search

func (e *Engine) Search(ctx context.Context, searchParams SearchParams) SearchInfo

type EvaluatorAdapter

type EvaluatorAdapter struct {
	// contains filtered or unexported fields
}

func (*EvaluatorAdapter) EvaluateQuick

func (e *EvaluatorAdapter) EvaluateQuick(p *Position) int

func (*EvaluatorAdapter) Init

func (e *EvaluatorAdapter) Init(p *Position)

func (*EvaluatorAdapter) MakeMove

func (e *EvaluatorAdapter) MakeMove(p *Position, m Move)

func (*EvaluatorAdapter) UnmakeMove

func (e *EvaluatorAdapter) UnmakeMove()

type IEvaluator added in v1.55.0

type IEvaluator interface {
	Evaluate(p *Position) int
}

type IUpdatableEvaluator

type IUpdatableEvaluator interface {
	Init(p *Position)
	MakeMove(p *Position, m Move)
	UnmakeMove()
	EvaluateQuick(p *Position) int
}

type Options added in v1.55.0

type Options struct {
	EvalBuilder        func() interface{}
	Hash               int
	Threads            int
	ExperimentSettings bool
	ProgressMinNodes   int
	AspirationWindows  bool
	ReverseFutility    bool
	NullMovePruning    bool
	Probcut            bool
	CheckExt           bool
	SingularExt        bool
	Lmp                bool
	Futility           bool
	See                bool
	// contains filtered or unexported fields
}

func NewBaseOptions added in v1.55.0

func NewBaseOptions(evalBuilder func() interface{}) Options

func NewMainOptions added in v1.55.0

func NewMainOptions(evalBuilder func() interface{}) Options

func (*Options) InitLmr added in v1.55.0

func (o *Options) InitLmr(f func(d, m float64) float64)

func (*Options) Lmr added in v1.55.0

func (o *Options) Lmr(d, m int) int

type TimeManager

type TimeManager interface {
	IsDone() bool
	OnNodesChanged(nodes int)
	OnIterationComplete(line mainLine)
	Close()
}

type TransTable

type TransTable interface {
	Size() (megabytes int)
	IncDate()
	Clear()
	Read(key uint64) (depth, score, bound int, move Move, found bool)
	Update(key uint64, depth, score, bound int, move Move)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL