Tries to maximize liberty average of own minus opponent blocks. More...
#include <SpAveragePlayer.h>
Public Member Functions | |
SpAverageMoveGenerator (const GoBoard &board) | |
int | Evaluate () |
int | EvaluateMove (SgPoint p) |
Execute move, then evaluate board. | |
virtual void | GenerateMoves (SgEvaluatedMoves &eval, SgBlackWhite toPlay) |
Protected Attributes | |
const GoBoard & | m_board |
Reference to go board on which to play. |
Tries to maximize liberty average of own minus opponent blocks.
Tends to build long chains with many liberties and some eyes. The strongest of the original simple players.
Definition at line 18 of file SpAveragePlayer.h.
SpAverageMoveGenerator::SpAverageMoveGenerator | ( | const GoBoard & | board | ) | [explicit] |
Definition at line 22 of file SpAveragePlayer.h.
int SpAverageMoveGenerator::Evaluate | ( | ) | [virtual] |
Implements Sp1PlyMoveGenerator.
Definition at line 26 of file SpAveragePlayer.cpp.
References LibertyAveragex10(), SpMoveGenerator::m_board, GoBoard::Opponent(), and SgOppBW().
int Sp1PlyMoveGenerator::EvaluateMove | ( | SgPoint | p | ) | [virtual, inherited] |
Execute move, then evaluate board.
Implements SpMoveGenerator.
Definition at line 35 of file SpMoveGenerator.cpp.
References GoModBoard::Board(), Sp1PlyMoveGenerator::Evaluate(), GoMoveExecutor::IsLegal(), and SpMoveGenerator::m_board.
void SpMoveGenerator::GenerateMoves | ( | SgEvaluatedMoves & | eval, | |
SgBlackWhite | toPlay | |||
) | [virtual, inherited] |
Reimplemented in SpDumbTacticalMoveGenerator, and SpLadderMoveGenerator.
Definition at line 18 of file SpMoveGenerator.cpp.
References SgEvaluatedMoves::AddMove(), GoModBoard::Board(), SpMoveGenerator::EvaluateMove(), SpMoveGenerator::m_board, SgEvaluatedMoves::Relevant(), and GoBoard::SetToPlay().
Referenced by SpSimplePlayer::GenMove().
const GoBoard& SpMoveGenerator::m_board [protected, inherited] |
Reference to go board on which to play.
Definition at line 33 of file SpMoveGenerator.h.
Referenced by SpSafeMoveGenerator::Evaluate(), SpMinLibMoveGenerator::Evaluate(), SpMaxEyeMoveGenerator::Evaluate(), SpInfluenceMoveGenerator::Evaluate(), SpGreedyMoveGenerator::Evaluate(), SpCaptureMoveGenerator::Evaluate(), Evaluate(), SpStaticMoveGenerator::EvaluateMove(), Sp1PlyMoveGenerator::EvaluateMove(), SpDumbTacticalMoveGenerator::GenerateAttackMoves(), SpDumbTacticalMoveGenerator::GenerateDefendMoves(), SpMoveGenerator::GenerateMoves(), SpLadderMoveGenerator::GenerateMoves(), SpDumbTacticalMoveGenerator::GenerateMoves(), SpMaxEyeMoveGenerator::Heuristic(), SpMinLibMoveGenerator::LibertyMinimum(), SpRandomMoveGenerator::Score(), and SpLibertyMoveGenerator::Score().