diff options
| author | tslil <tslil@posteo.de> | 2021-01-12 01:15:49 -0500 |
|---|---|---|
| committer | tslil <tslil@posteo.de> | 2026-08-28 19:37:41 +0100 |
| commit | 67dd4ba3a9adc6a9db8eb543480e9e82310eeccb (patch) | |
| tree | f1841c69d669ea35f65e999d3e070ece5642d42c /src | |
| parent | 8647a53cb6ece8184fa989961efba974e553ecfc (diff) | |
Train on data that is close to the end of the game only
Diffstat (limited to 'src')
| -rw-r--r-- | src/ctaklm.c | 2 | ||||
| -rw-r--r-- | src/pptdb.c | 32 |
2 files changed, 24 insertions, 10 deletions
diff --git a/src/ctaklm.c b/src/ctaklm.c index 346b5a5..a5bfe05 100644 --- a/src/ctaklm.c +++ b/src/ctaklm.c @@ -152,6 +152,8 @@ print_info(void) { printf("Caps remaining: %s%d%s, %s%d%s\n", wht,white_count >> 7,rst, blk,black_count >> 7,rst); + printf("Valuation: %s%.6f%s\n", + blk, evaluate_black_win(), rst); } char *gamelog = 0; diff --git a/src/pptdb.c b/src/pptdb.c index 773962f..35aa325 100644 --- a/src/pptdb.c +++ b/src/pptdb.c @@ -47,8 +47,15 @@ write_input(void) { // Warning: performs _no_ checks on input whatsoever static enum E_RESULT parse_line(const char *pt, const ssize_t read) { - ssize_t idx = 0; + ssize_t idx; enum E_RESULT r; + int total_plies = 0; + + for (idx=0;idx<read;idx++) { + if (pt[idx]==',') total_plies++; + } + + idx=0; for(;;) { if (pt[idx] == 'P') { // P [A-F][1-6] [CF]?, @@ -69,10 +76,11 @@ parse_line(const char *pt, const ssize_t read) { r = try_place(THE_COORDS(col,row), current_colour, stone); if (r != ACT_OK) return r; - char buf[20]; - generate_place(board_size, THE_COORDS(col,row), stone, buf); - puts(buf); - + /* + * char buf[20]; + * generate_place(board_size, THE_COORDS(col,row), stone, buf); + * puts(buf); + */ } else if (pt[idx] == 'M') { // M [A-F][1-6] [A-F][1-6]( [1-6])+, idx+=2; @@ -104,15 +112,19 @@ parse_line(const char *pt, const ssize_t read) { } } - char buf[20]; - generate_move(board_size, THE_COORDS(s_col, s_row), dir, steps, drops, buf); - puts(buf); + /* + * char buf[20]; + * generate_move(board_size, THE_COORDS(s_col, s_row), dir, steps, drops, buf); + * puts(buf); + */ } - if (current_colour == C_BLACK && ply > 15) puts("Here"); + /* + * if (current_colour == C_BLACK && ply > 15) puts("Here"); + */ // Generate training data, not too early in the game - if (generate && current_colour == C_BLACK && ply > 15) { + if (generate && current_colour == C_BLACK && ply > total_plies - 5) { write_input(); fprintf(training_fh,"%d,%d\n", result, 1-result); } |
