Classes | Namespaces | Defines | Enumerations | Functions | Variables
dfpn.cc File Reference
#include "osl/checkmate/dfpn.h"
#include "osl/checkmate/dfpnParallel.h"
#include "osl/checkmate/dfpnRecord.h"
#include "osl/checkmate/immediateCheckmate.h"
#include "osl/checkmate/fixedDepthSearcher.h"
#include "osl/checkmate/fixedDepthSearcher.tcc"
#include "osl/checkmate/libertyEstimator.h"
#include "osl/checkmate/pieceCost.h"
#include "osl/checkmate/disproofPieces.h"
#include "osl/checkmate/oracleAdjust.h"
#include "osl/checkmate/pawnCheckmateMoves.h"
#include "osl/checkmate/proofTreeDepthDfpn.h"
#include "osl/move_generator/escape_.h"
#include "osl/move_generator/addEffectWithEffect.h"
#include "osl/move_action/store.h"
#include "osl/move_classifier/check_.h"
#include "osl/move_classifier/moveAdaptor.h"
#include "osl/move_classifier/pawnDropCheckmate.h"
#include "osl/record/csa.h"
#include "osl/container/moveVector.h"
#include "osl/stl/hash_map.h"
#include "osl/stl/vector.h"
#include "osl/stl/slist.h"
#include "osl/stat/ratio.h"
#include "osl/hash/hashRandomPair.h"
#include "osl/misc/align16New.h"
#include "osl/oslConfig.h"
#include <boost/tuple/tuple.hpp>
#include <boost/tuple/tuple_comparison.hpp>
#include <iostream>
#include <iomanip>
#include <bitset>
Include dependency graph for dfpn.cc:

Go to the source code of this file.

Classes

struct  osl::checkmate::SimpleTwinList
struct  osl::checkmate::DfpnPathRecord
struct  osl::checkmate::DfpnVisitLock< Enabled >
struct  osl::checkmate::DfpnPathList
class  osl::checkmate::DfpnPathTable
struct  osl::checkmate::Dfpn::NodeBase
struct  osl::checkmate::Dfpn::Node
struct  osl::checkmate::Dfpn::Tree
struct  osl::checkmate::DfpnTable::List
struct  osl::checkmate::DfpnTable::Table
struct  osl::checkmate::Dfpn::CallAttack< P >
struct  osl::checkmate::Dfpn::CallDefense< P >
struct  osl::checkmate::Dfpn::CallProofOracleAttack< P, UseTable >
struct  osl::checkmate::Dfpn::CallProofOracleDefense< P, UseTable >

Namespaces

namespace  osl
 

attackDefense.h


namespace  osl::checkmate
 

詰将棋関係


Defines

#define GRAND_PARENT_SIMULATION
#define GRAND_PARENT_DELAY
#define INITIAL_DOMINANCE
#define ROOT_PROOF_TOL   65536ul*1024
 root で打切る証明数の閾値
#define ROOT_DISPROOF_TOL   65536ul*1024
 root で打切る反証数の閾値
#define CHECKMATE_D2
#define PROOF_AVERAGE
#define DISPROOF_AVERAGE
#define KAKINOKI_FALSE_BRANCH_SEARCH
#define IGNORE_MONSTER_CHILD
#define KISHIMOTO_WIDEN_THRESHOLD
#define ADHOC_SUM_RESTRICTION
#define AGGRESSIVE_FIND_DAG
#define AGGRESSIVE_FIND_DAG2
#define CHECKMATE_A3_GOLD
#define CHECKMATE_A3_SIMULLATION
#define MEMORIZE_SOLVED_IN_BITSET

Enumerations

enum  osl::checkmate::LoopToDominance { osl::checkmate::NoLoop = 0, osl::checkmate::BadAttackLoop }

Functions

int osl::checkmate::log2 (uint32_t n)
int osl::checkmate::slow_increase (uint32_t n)
int osl::checkmate::attackProofCost (Player attacker, const NumEffectState &state, Move move)

Variables

static const int UpwardWeight = 2
static const int SacrificeBlockCount = 0
static const int LongDropCount = 1
static const int MaxDagTraceDepth = 1600
static const unsigned int NoPromoeIgnoreProofThreshold = 100
static const unsigned int NoPromoeIgnoreDisproofThreshold = 200
static const unsigned int IgnoreUpwardProofThreshold = 100
static const unsigned int IgnoreUpwardDisproofThreshold = 100
static const unsigned int InitialDominanceProofMax = 35
static const unsigned int InitialDominanceDisproofMax = 110
static const unsigned int DagFindThreshold = 64
static const unsigned int DagFindThreshold2 = 256
static const int EnableGCDepth = 512
static const int AdHocSumScale = 128
static const size_t GrowthLimitInfty = std::numeric_limits<size_t>::max()
const int ProofSimulationTolerance = 1024
static size_t timer = 0
const size_t debug_time_start = 3851080
static const size_t root_proof_simulation_limit = 999999999

Define Documentation

Definition at line 60 of file dfpn.cc.

Definition at line 61 of file dfpn.cc.

Definition at line 62 of file dfpn.cc.

Definition at line 63 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack().

Definition at line 64 of file dfpn.cc.

#define CHECKMATE_D2

Definition at line 52 of file dfpn.cc.

Definition at line 55 of file dfpn.cc.

Definition at line 43 of file dfpn.cc.

Definition at line 42 of file dfpn.cc.

Definition at line 58 of file dfpn.cc.

Definition at line 45 of file dfpn.cc.

Definition at line 57 of file dfpn.cc.

Definition at line 59 of file dfpn.cc.

Definition at line 67 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::defense(), and osl::checkmate::Dfpn::Tree::dump().

#define PROOF_AVERAGE

Definition at line 54 of file dfpn.cc.

#define ROOT_DISPROOF_TOL   65536ul*1024

root で打切る反証数の閾値

Definition at line 49 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::hasCheckmateMove(), osl::checkmate::Dfpn::hasEscapeMove(), and osl::checkmate::Dfpn::tryProofMain().

#define ROOT_PROOF_TOL   65536ul*1024

root で打切る証明数の閾値

Definition at line 47 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::hasCheckmateMove(), osl::checkmate::Dfpn::hasEscapeMove(), and osl::checkmate::Dfpn::tryProofMain().


Variable Documentation

const int AdHocSumScale = 128 [static]

Definition at line 90 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::defense().

const unsigned int DagFindThreshold = 64 [static]

Definition at line 87 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::defense().

const unsigned int DagFindThreshold2 = 256 [static]

Definition at line 88 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::defense().

const size_t debug_time_start = 3851080

Definition at line 98 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::defense().

const int EnableGCDepth = 512 [static]

Definition at line 89 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::setTable().

const size_t GrowthLimitInfty = std::numeric_limits<size_t>::max() [static]

Definition at line 91 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::setTable().

const unsigned int IgnoreUpwardDisproofThreshold = 100 [static]

Definition at line 80 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack().

const unsigned int IgnoreUpwardProofThreshold = 100 [static]

Definition at line 79 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::defense().

const unsigned int InitialDominanceDisproofMax = 110 [static]

Definition at line 86 of file dfpn.cc.

Referenced by osl::checkmate::DfpnTable::List::probe().

const unsigned int InitialDominanceProofMax = 35 [static]

Definition at line 82 of file dfpn.cc.

Referenced by osl::checkmate::DfpnTable::List::probe().

const int LongDropCount = 1 [static]

Definition at line 71 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack().

const int MaxDagTraceDepth = 1600 [static]

Definition at line 75 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::findDagSource().

const unsigned int NoPromoeIgnoreDisproofThreshold = 200 [static]

Definition at line 78 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack().

const unsigned int NoPromoeIgnoreProofThreshold = 100 [static]

Definition at line 77 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack().

const int ProofSimulationTolerance = 1024
const size_t root_proof_simulation_limit = 999999999 [static]

Definition at line 1447 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::tryProofMain().

const int SacrificeBlockCount = 0 [static]

Definition at line 71 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::defense().

size_t timer = 0 [static]
const int UpwardWeight = 2 [static]

Definition at line 71 of file dfpn.cc.

Referenced by osl::checkmate::Dfpn::attack(), and osl::checkmate::Dfpn::defense().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines