RCS file: /sources/gnugo/gnugo/interface/play_gtp.c,v
retrieving revision 1.183
diff -u -r1.183 play_gtp.c
|
|
|
|
| 2219 | 2219 | |
| 2220 | 2220 | gtp_start_response(GTP_SUCCESS); |
| 2221 | 2221 | |
| 2222 | | for (pos = BOARDMIN; pos < BOARDMAX; pos++) { |
| 2223 | | if (ON_BOARD(pos) |
| 2224 | | && (pos == str |
| | 2222 | scan_board(pos, |
| | 2223 | if (pos == str |
| 2225 | 2224 | || (str == NO_MOVE |
| 2226 | 2225 | && board[pos] != EMPTY |
| 2227 | | && dragon[pos].origin == pos))) { |
| | 2226 | && dragon[pos].origin == pos)) { |
| 2228 | 2227 | if (str == NO_MOVE) |
| 2229 | 2228 | gtp_mprintf("%m: ", I(pos), J(pos)); |
| 2230 | 2229 | |
| … |
… |
|
| 2246 | 2245 | } |
| 2247 | 2246 | empty_response = 0; |
| 2248 | 2247 | } |
| 2249 | | } |
| | 2248 | ) |
| 2250 | 2249 | |
| 2251 | 2250 | if (empty_response) |
| 2252 | 2251 | gtp_printf("\n"); |
| … |
… |
|
| 2376 | 2375 | return gtp_success("PASS"); |
| 2377 | 2376 | |
| 2378 | 2377 | gtp_start_response(GTP_SUCCESS); |
| 2379 | | for (pos = BOARDMIN; pos < BOARDMAX; pos++) |
| 2380 | | if (ON_BOARD(pos) && defense_points[pos]) { |
| | 2378 | scan_board(pos, |
| | 2379 | if (defense_points[pos]) { |
| 2381 | 2380 | if (!first) |
| 2382 | 2381 | gtp_printf(" "); |
| 2383 | 2382 | else |
| 2384 | 2383 | first = 0; |
| 2385 | 2384 | gtp_print_vertex(I(pos), J(pos)); |
| 2386 | | } |
| | 2385 | } |
| | 2386 | ) |
| 2387 | 2387 | |
| 2388 | 2388 | return gtp_finish_response(); |
| 2389 | 2389 | } |
| … |
… |
|
| 3696 | 3696 | compute_move_probabilities(probabilities); |
| 3697 | 3697 | |
| 3698 | 3698 | gtp_start_response(GTP_SUCCESS); |
| 3699 | | for (pos = BOARDMIN; pos < BOARDMAX; pos++) { |
| 3700 | | if (ON_BOARD(pos) && probabilities[pos] != 0.0) { |
| | 3699 | scan_board(pos, |
| | 3700 | if (probabilities[pos] != 0.0) { |
| 3701 | 3701 | gtp_mprintf("%m ", I(pos), J(pos)); |
| 3702 | 3702 | gtp_printf("%.4f\n", probabilities[pos]); |
| 3703 | 3703 | any_moves_printed = 1; |
| 3704 | 3704 | } |
| 3705 | | } |
| | 3705 | ) |
| 3706 | 3706 | |
| 3707 | 3707 | if (!any_moves_printed) |
| 3708 | 3708 | gtp_printf("\n"); |
| … |
… |
|
| 3731 | 3731 | compute_move_probabilities(probabilities); |
| 3732 | 3732 | |
| 3733 | 3733 | gtp_start_response(GTP_SUCCESS); |
| 3734 | | for (pos = BOARDMIN; pos < BOARDMAX; pos++) { |
| 3735 | | if (ON_BOARD(pos) && probabilities[pos] > 0.0) { |
| | 3734 | scan_board(pos, |
| | 3735 | if (probabilities[pos] > 0.0) { |
| 3736 | 3736 | /* Shannon's formula */ |
| 3737 | 3737 | uncertainty += -1 * ((double)probabilities[pos]) * |
| 3738 | 3738 | log((double)probabilities[pos]) / log(2.0); |
| 3739 | 3739 | } |
| 3740 | | } |
| | 3740 | ) |
| 3741 | 3741 | |
| 3742 | 3742 | gtp_printf("%.4f\n\n", uncertainty); |
| 3743 | 3743 | |