dfpn.cc

#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/apply_move/applyMoveWithPath.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/misc/align16New.h"
#include "osl/oslConfig.h"
#include <boost/tuple/tuple.hpp>
#include <boost/tuple/tuple_comparison.hpp>
#include <iostream>
#include <iomanip>
#include <bitset>
dfpn.ccのインクルード依存関係図

ソースコードを見る。

構成

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 >

ネームスペース

namespace  osl
 

attackDefense.h


namespace  osl::checkmate
 

詰将棋関係


マクロ定義

#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 CHECKMATE_A3_GOLD
#define CHECKMATE_A3_SIMULLATION
#define MEMORIZE_SOLVED_IN_BITSET

列挙型

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

関数

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

変数

static const int UpwardWeight = 2
static const int SacrificeBlockCount = 0
static const int LongDropCount = 1
static const int MaxDagTraceDepth = 64
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 size_t timer = 0
const size_t debug_time_start = 3851080
static const size_t root_proof_simulation_limit = 999999999

マクロ定義

#define CHECKMATE_A3_GOLD

dfpn.cc60 行で定義されています。

参照元 osl::checkmate::Dfpn::attack().

#define CHECKMATE_A3_SIMULLATION

dfpn.cc61 行で定義されています。

#define CHECKMATE_D2

dfpn.cc52 行で定義されています。

#define DISPROOF_AVERAGE

dfpn.cc55 行で定義されています。

#define GRAND_PARENT_DELAY

dfpn.cc43 行で定義されています。

#define GRAND_PARENT_SIMULATION

dfpn.cc42 行で定義されています。

#define IGNORE_MONSTER_CHILD

dfpn.cc58 行で定義されています。

#define INITIAL_DOMINANCE

dfpn.cc45 行で定義されています。

#define KAKINOKI_FALSE_BRANCH_SEARCH

dfpn.cc57 行で定義されています。

#define KISHIMOTO_WIDEN_THRESHOLD

dfpn.cc59 行で定義されています。

#define MEMORIZE_SOLVED_IN_BITSET

dfpn.cc64 行で定義されています。

参照元 osl::checkmate::Dfpn::defense(), と osl::checkmate::Dfpn::Tree::dump().

#define PROOF_AVERAGE

dfpn.cc54 行で定義されています。

#define ROOT_DISPROOF_TOL   65536ul*1024

root で打切る反証数の閾値

dfpn.cc49 行で定義されています。

参照元 osl::checkmate::Dfpn::hasCheckmateMove(), osl::checkmate::Dfpn::hasEscapeMove(), と osl::checkmate::Dfpn::tryProofMain().

#define ROOT_PROOF_TOL   65536ul*1024

root で打切る証明数の閾値

dfpn.cc47 行で定義されています。

参照元 osl::checkmate::Dfpn::hasCheckmateMove(), osl::checkmate::Dfpn::hasEscapeMove(), と osl::checkmate::Dfpn::tryProofMain().


変数

const size_t debug_time_start = 3851080

dfpn.cc85 行で定義されています。

参照元 osl::checkmate::Dfpn::attack(), と osl::checkmate::Dfpn::defense().

const unsigned int IgnoreUpwardDisproofThreshold = 100 [static]

dfpn.cc73 行で定義されています。

参照元 osl::checkmate::Dfpn::attack().

const unsigned int IgnoreUpwardProofThreshold = 100 [static]

dfpn.cc72 行で定義されています。

参照元 osl::checkmate::Dfpn::defense().

const unsigned int InitialDominanceDisproofMax = 110 [static]

dfpn.cc79 行で定義されています。

参照元 osl::checkmate::DfpnTable::List::probe().

const unsigned int InitialDominanceProofMax = 35 [static]

dfpn.cc75 行で定義されています。

参照元 osl::checkmate::DfpnTable::List::probe().

const int LongDropCount = 1 [static]

dfpn.cc68 行で定義されています。

参照元 osl::checkmate::Dfpn::attack().

const int MaxDagTraceDepth = 64 [static]

dfpn.cc69 行で定義されています。

参照元 osl::checkmate::Dfpn::findDagSource().

const unsigned int NoPromoeIgnoreDisproofThreshold = 200 [static]

dfpn.cc71 行で定義されています。

参照元 osl::checkmate::Dfpn::attack().

const unsigned int NoPromoeIgnoreProofThreshold = 100 [static]

dfpn.cc70 行で定義されています。

参照元 osl::checkmate::Dfpn::attack().

const size_t root_proof_simulation_limit = 999999999 [static]

dfpn.cc1237 行で定義されています。

const int SacrificeBlockCount = 0 [static]

dfpn.cc68 行で定義されています。

参照元 osl::checkmate::Dfpn::defense().

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

dfpn.cc68 行で定義されています。

参照元 osl::checkmate::Dfpn::attack(), と osl::checkmate::Dfpn::defense().

 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:53:38 2010に生成されました。  doxygen 1.6.3