Fixed compile errors when EVAL_LEARN or EVAL_NNUE are defined.

This commit is contained in:
Hisayori Noda
2019-06-18 20:28:50 +09:00
parent bcd6985871
commit f58d616198
8 changed files with 34 additions and 13 deletions

View File

@@ -3,7 +3,7 @@
// いまどきの手番つき評価関数(EVAL_KPPTとEVAL_KPP_KKPT)の共用header的なもの。
#if defined (EVAL_KPPT) || defined(EVAL_KPP_KKPT) || defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
#include <functional>
// KKファイル名
@@ -77,7 +77,6 @@ namespace Eval
}
#endif
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
#endif // _EVALUATE_KPPT_COMMON_H_

View File

@@ -1,4 +1,6 @@
#include "evaluate_mir_inv_tools.h"
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
#include "evaluate_mir_inv_tools.h"
namespace Eval
{
@@ -184,3 +186,5 @@ namespace Eval
}
}
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)

View File

@@ -1,6 +1,8 @@
#ifndef _EVALUATE_MIR_INV_TOOLS_
#define _EVALUATE_MIR_INV_TOOLS_
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
// BonaPieceのmirror(左右反転)やinverse(盤上の180度回転)させた駒を得るためのツール類。
#include "../types.h"
@@ -40,4 +42,6 @@ namespace Eval
extern void init_mir_inv_tables();
}
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
#endif

View File

@@ -911,7 +911,7 @@ std::string Eval::trace(const Position& pos) {
return ss.str();
}
#if defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
namespace Eval {
ExtBonaPiece kpp_board_index[PIECE_NB] = {
{ BONA_PIECE_ZERO, BONA_PIECE_ZERO },
@@ -980,4 +980,15 @@ bool EvalList::is_valid(const Position& pos)
return true;
}
}
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
#if !defined(EVAL_NNUE)
namespace Eval {
void evaluate_with_no_return(const Position& pos) {}
void update_weights(uint64_t epoch, const std::array<bool, 4> & freeze) {}
void init_grad(double eta1, uint64_t eta_epoch, double eta2, uint64_t eta2_epoch, double eta3) {}
void add_grad(Position& pos, Color rootColor, double delt_grad, const std::array<bool, 4> & freeze) {}
void save_eval(std::string suffix) {}
double get_eta() {}
}
#endif // defined(EVAL_NNUE)

View File

@@ -37,7 +37,7 @@ Value evaluate(const Position& pos);
void evaluate_with_no_return(const Position& pos);
#if defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
// <20>]<5D><><EFBFBD>֐<EFBFBD><D690>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ǂݍ<C782><DD8D>ށB
// <20><><EFBFBD><EFBFBD><EFBFBD>́A"is_ready"<22>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD>̉<EFBFBD><CC89><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>Ăяo<D18F><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B2<42>x<EFBFBD>Ăяo<D18F><6F><EFBFBD><EFBFBD><EFBFBD>Ƃ͑z<CD91><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882>B
// (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>AEvalDir(<28>]<5D><><EFBFBD>֐<EFBFBD><D690>t<EFBFBD>H<EFBFBD><48><EFBFBD>_)<29><><EFBFBD>ύX<CF8D>ɂȂ<C982><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁAisready<64><79><EFBFBD>ēx<C493><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ݂Ȃ<DD82><C882><EFBFBD><EFBFBD>B)
@@ -216,7 +216,7 @@ struct DirtyPiece
int dirty_num;
};
#endif // defined(EVAL_NNUE)
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
}
#endif // #ifndef EVALUATE_H_INCLUDED

View File

@@ -5,6 +5,8 @@
#include "learn.h"
#if defined (EVAL_LEARN)
#include <array>
#include "../eval/evaluate_mir_inv_tools.h"
#if defined(SGD_UPDATE) || defined(USE_KPPP_MIRROR_WRITE)

View File

@@ -28,6 +28,7 @@
#include <string>
#include "bitboard.h"
#include "evaluate.h"
#include "misc.h"
#include "types.h"
@@ -179,7 +180,7 @@ public:
bool pos_is_ok() const;
void flip();
#if defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
// --- StateInfo
// <20><><EFBFBD>݂̋ǖʂɑΉ<C991><CE89><EFBFBD><EFBFBD><EFBFBD>StateInfo<66><6F><EFBFBD>Ԃ<EFBFBD><D482>B
@@ -188,7 +189,7 @@ public:
// <20>]<5D><><EFBFBD>֐<EFBFBD><D690>Ŏg<C58E><67><EFBFBD><EFBFBD><EFBFBD>߂́A<CC81>ǂ̋<C782><CC8B>ԍ<EFBFBD><D48D>̋<CC8B>ǂ<EFBFBD><C782>ɂ<EFBFBD><C982><EFBFBD>Ȃǂ̏<C782><CC8F><EFBFBD><EFBFBD>B
const Eval::EvalList* eval_list() const { return &evalList; }
#endif // defined(EVAL_NNUE)
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
#if defined(EVAL_LEARN)
// <20><><EFBFBD>ǖʂŎw<C58E><77><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD>w<EFBFBD><77><EFBFBD><EFBFBD><E890B6><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD>̂ő<CC82><C591><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>B<EFBFBD>T<EFBFBD><54><EFBFBD><EFBFBD><EFBFBD>ɂ͎g<CD8E><67><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>ƁB
@@ -248,10 +249,10 @@ private:
StateInfo* st;
bool chess960;
#if defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
// <20>]<5D><><EFBFBD>֐<EFBFBD><D690>ŗp<C597><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃<EFBFBD><CC83>X<EFBFBD>g
Eval::EvalList evalList;
#endif // defined(EVAL_NNUE)
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
};
namespace PSQT {

View File

@@ -466,7 +466,7 @@ constexpr Square Inv(Square sq) { return (Square)((SQUARE_NB - 1) - sq); }
// <20>Ֆʂ<D596><CA82>~<7E><><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>̏<EFBFBD><CC8F>ڂ<EFBFBD><DA82>Ԃ<EFBFBD>
constexpr Square Mir(Square sq) { return make_square(File(7 - (int)file_of(sq)), rank_of(sq)); }
#if defined(EVAL_NNUE)
#if defined(EVAL_NNUE) || defined(EVAL_LEARN)
// --------------------
// <20>
// --------------------
@@ -496,6 +496,6 @@ inline PieceNumber& operator--(PieceNumber& d) { return d = PieceNumber(int8_t(d
// PieceNumber<65>̐<EFBFBD><CC90><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̌<EFBFBD><CC8C><EFBFBD><EFBFBD>Bassert<72>p<EFBFBD>B
constexpr bool is_ok(PieceNumber pn) { return pn < PIECE_NUMBER_NB; }
#endif // defined(EVAL_NNUE)
#endif // defined(EVAL_NNUE) || defined(EVAL_LEARN)
#endif // #ifndef TYPES_H_INCLUDED