gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnugo-devel] matcher_check random seeds


From: Evan Berggren Daniel
Subject: [gnugo-devel] matcher_check random seeds
Date: Mon, 26 Aug 2002 09:31:25 -0400 (EDT)

This patch adds random seed getting and setting to matcher_check.  This
way things like I found last night are repeatable.  Also, it will allow
for faster debugging by selecting games that fail early to replay.

Thanks

Evan Daniel

Index: matcher_check
===================================================================
RCS file: /cvsroot/gnugo/gnugo/interface/gtp_examples/matcher_check,v
retrieving revision 1.8
diff -u -r1.8 matcher_check
--- matcher_check       25 Aug 2002 23:57:25 -0000      1.8
+++ matcher_check       26 Aug 2002 13:29:41 -0000
@@ -79,6 +79,8 @@
 my $movecount;
 my $move;
 my $toplay;
+my $randseed;
+

 my $helpstring = "

@@ -97,6 +99,7 @@
   --sgffile <filename>                   (file to save games as)
   --loadsgf <filename>                   (file to analyze)
   --movecount <number of moves to check>
+  --randseed <number>                    (sets the random seed)
   --help                                  (show this)


@@ -112,6 +115,7 @@
           "loadsgf|o=s"            => \$loadfile,
            "games=i"                => \$games,
           "movecount=i"            => \$movecount,
+          "randseed=i"             => \$randseed,
            "help"                   => \$wanthelp,
 );

@@ -148,6 +152,14 @@
     $pidp = open2($prog_out, $prog_in, $program);
     print "program pid: $pidp\n" if $verbose;

+    if (defined($randseed)) {
+        print $prog_in "set_random_seed $randseed\n";
+       eat_no_response($prog_out);
+    } else {
+        print $prog_in "get_random_seed\n";
+       print "random seed " . eat_one_line($prog_out) . "\n";
+    }
+
     for ($movenum = 2; $movenum <= $movecount + 1; $movenum++)
     {
         #load the file, check the statuses, next move.
@@ -181,6 +193,14 @@
     eat_no_response($prog_out);
     print $prog_in  "komi $komi\n";
     eat_no_response($prog_out);
+
+    if (defined($randseed)) {
+        print $prog_in "set_random_seed $randseed\n";
+       eat_no_response($prog_out);
+    } else {
+        print $prog_in "get_random_seed\n";
+       print "random seed " . eat_one_line($prog_out) . "\n";
+    }

     print SGFFILEHANDLE 
"(;GM[1]FF[4]RU[Japanese]SZ[$size]HA[$handicap]KM[$komi]"
        if defined $sgffilename;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]