[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnugo-devel] tuning patch
From: |
Gunnar Farneback |
Subject: |
[gnugo-devel] tuning patch |
Date: |
Sat, 05 Jan 2002 13:02:10 +0100 |
User-agent: |
EMH/1.14.1 SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/20.7 (sparc-sun-solaris2.7) (with unibyte mode) |
This is a tuning patch. Many of the changes are only reordering of
constraints to improve performance. E.g. the owl_topological_eye()
autohelper has been moved to the front of the constraints since it's
now very fast. (It was reimplemented some time ago to use cached
information from owl_determine_life(). Before that it was one of the
slower autohelpers around.)
- tuning
- influence tuning
- performance tuning
/Gunnar
Index: patterns/barriers.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/barriers.db,v
retrieving revision 1.13
diff -u -r1.13 barriers.db
--- patterns/barriers.db 21 Dec 2001 20:01:42 -0000 1.13
+++ patterns/barriers.db 4 Jan 2002 12:20:45 -0000
@@ -791,6 +791,32 @@
;lib(A)==1
+Pattern Barrier58
+
+o,o
+OXO
+
+:8,Ds
+
+o,o
+bAc
+
+;lib(A)<=2 && lib(b)>1 && lib(c)>1
+
+
+Pattern Barrier59
+
+,.
+XO
+
+:8,Ds
+
+ab
+XO
+
+;oplay_attack(a,b,b)
+
+
Pattern Intrusion1
xxxx
@@ -1410,6 +1436,21 @@
;(o_somewhere(e) || !safe_xmove(e)) && !oplay_defend(a,b,c,D)
+Pattern Intrusion43
+
+??XO
+..XO
+?!!o
+
+:8,B,value(50)
+
+?OAO
+.cAO
+?dbo
+
+;lib(A)==2 && !attack(A) && !oplay_attack(b,c,d,d)
+
+
Pattern Nonterritory1
OxO
@@ -1815,6 +1856,43 @@
;attack(b) && oplay_attack(*,b)
>non_oterritory(a);
+
+
+Pattern Nonterritory21
+
+..
+.X
+O?
+
+:8,t
+
+cb
+aX
+O?
+
+;!oplay_attack(a,b,b) && !oplay_attack(b,a,a)
+
+>non_oterritory(a);
+>non_oterritory(b);
+>non_oterritory(c);
+
+
+Pattern Nonterritory22
+
+.?
+*X
+O?
+
+:8,t
+
+a?
+*X
+O?
+
+;safe_omove(*)
+
+>non_xterritory(*);
+>non_xterritory(a);
# END OF FILE
Index: patterns/endgame.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/endgame.db,v
retrieving revision 1.20
diff -u -r1.20 endgame.db
--- patterns/endgame.db 3 Jan 2002 21:37:04 -0000 1.20
+++ patterns/endgame.db 4 Jan 2002 12:20:45 -0000
@@ -474,6 +474,16 @@
;marginal_eye(*) && proper_eye(a) && proper_eye(b)
+Pattern EE206
+# gf New pattern. (3.1.20)
+
+X.
+O*
+--
+
+:8,eOX
+
+
# first line blocks (except in corner)
######################################
Index: patterns/owl_attackpats.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/owl_attackpats.db,v
retrieving revision 1.43
diff -u -r1.43 owl_attackpats.db
--- patterns/owl_attackpats.db 3 Jan 2002 21:37:04 -0000 1.43
+++ patterns/owl_attackpats.db 4 Jan 2002 12:20:46 -0000
@@ -2091,7 +2091,7 @@
xaB
?x?
-; does_attack(*,B) && owl_topological_eye(a,B)==3
+;owl_topological_eye(a,B)==3 && does_attack(*,B)
Pattern A709
@@ -2106,8 +2106,8 @@
Aa*
?x?
-; safe_omove(b) && safe_omove(*) && xplay_attack(*,b,b)
-; && (owl_topological_eye(a,A)==3)
+; owl_topological_eye(a,A)==3
+; && safe_omove(b) && safe_omove(*) && xplay_attack(*,b,b)
Pattern A710
@@ -3089,8 +3089,8 @@
ba
Xc
-;lib(c)>2 && !xplay_defend_both(a,b,c) && vital_chain(b)
-;&& vital_chain(c) && oplay_attack(*,a,a)
+;lib(c)>2 && vital_chain(b) && vital_chain(c)
+;&& oplay_attack(*,a,a) && !xplay_defend_both(a,b,c)
Pattern A1107c
@@ -3106,25 +3106,8 @@
ba
Xc
-;lib(c)>2 && !xplay_defend_both(a,b,c) && vital_chain(b)
-;&& vital_chain(c) && oplay_attack(*,a,a)
-
-
-Pattern A1107c
-# tm New pattern. (3.1.17)
-
-.* defend the surrounding chain
-O.
-XO
-
-:8,-,value(96)
-
-.*
-ba
-Xc
-
-;lib(c)>2 && !xplay_defend_both(a,b,c) && vital_chain(b)
-;&& vital_chain(c) && oplay_attack(*,a,a)
+;lib(c)>2 && vital_chain(b) && vital_chain(c)
+;&& oplay_attack(*,a,a) && !xplay_defend_both(a,b,c)
Pattern A1108
Index: patterns/owl_defendpats.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/owl_defendpats.db,v
retrieving revision 1.46
diff -u -r1.46 owl_defendpats.db
--- patterns/owl_defendpats.db 3 Jan 2002 21:37:04 -0000 1.46
+++ patterns/owl_defendpats.db 4 Jan 2002 12:20:46 -0000
@@ -1130,7 +1130,7 @@
b*a
ooo
-; oplay_attack(*,a,a) && oplay_attack(*,b)
+;oplay_attack(*,b) && oplay_attack(*,a,a)
Pattern D309a
@@ -2396,7 +2396,7 @@
oaB
?o?
-; does_attack(*,B) && owl_topological_eye(a,B)==3
+;owl_topological_eye(a,B)==3 && does_attack(*,B)
Pattern D704
@@ -2411,8 +2411,8 @@
Ba*
?o?
-; safe_xmove(b) && safe_xmove(*) && oplay_attack(*,b,b)
-; && owl_topological_eye(a,B)==3
+; owl_topological_eye(a,B)==3
+; && safe_xmove(b) && safe_xmove(*) && oplay_attack(*,b,b)
Pattern D704b
@@ -3696,7 +3696,7 @@
ba
Oc
-; !oplay_defend_both(a,b,c) && vital_chain(b) && vital_chain(c)
+;vital_chain(b) && vital_chain(c) && !oplay_defend_both(a,b,c)
Pattern D1101
@@ -4337,9 +4337,9 @@
.B*?
AOCd
-; (vital_chain(A) || owl_escape_value(e) > 0)
-; && (vital_chain(C) || owl_escape_value(f) > 0)
-; && lib(C) == 2
+; lib(C) == 2
+; && (owl_escape_value(e) > 0 || vital_chain(A))
+; && (owl_escape_value(f) > 0 || vital_chain(C))
; && oplay_attack_either(*,d,B,A)
@@ -5799,7 +5799,7 @@
X*X breakout & attack
?O?
-:8,-,value(55)
+:|,-,value(55)
A*B
?O?
Index: patterns/owl_vital_apats.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/owl_vital_apats.db,v
retrieving revision 1.23
diff -u -r1.23 owl_vital_apats.db
--- patterns/owl_vital_apats.db 30 Dec 2001 16:40:45 -0000 1.23
+++ patterns/owl_vital_apats.db 4 Jan 2002 12:20:46 -0000
@@ -74,7 +74,7 @@
cX*a
XbX?
-; lib(a)>2 && oplay_attack(*,d) && owl_topological_eye(b,A)==2 &&
owl_topological_eye(c,A)==2
+; lib(a)>2 && owl_topological_eye(b,A)==2 && owl_topological_eye(c,A)==2 &&
oplay_attack(*,d)
Pattern VA2
@@ -805,7 +805,7 @@
a*
Xb
-; !xplay_defend_both(*,a,b) && vital_chain(a) && vital_chain(b)
+;vital_chain(a) && vital_chain(b) && !xplay_defend_both(*,a,b)
Pattern VA47
Index: patterns/patterns.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/patterns.db,v
retrieving revision 1.43
diff -u -r1.43 patterns.db
--- patterns/patterns.db 3 Jan 2002 21:37:04 -0000 1.43
+++ patterns/patterns.db 4 Jan 2002 12:20:47 -0000
@@ -13031,15 +13031,16 @@
# At move 96 of ego.tst, this is matched at J8.
# tm - revised (3.1.15) (see trevora:330)
# added left-hand ?s
+# gf Revised. (3.1.20)
-??????
+?oo???
?..*.x
?....X
?..O??
:8,OX,value(8)
-??cbd?
+?ocbd?
?..*.x
?a...X
?..O??
Index: patterns/patterns2.db
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/patterns2.db,v
retrieving revision 1.24
diff -u -r1.24 patterns2.db
--- patterns/patterns2.db 3 Jan 2002 21:37:04 -0000 1.24
+++ patterns/patterns2.db 4 Jan 2002 12:20:47 -0000
@@ -2436,6 +2436,24 @@
:8,-,shape(1)
+Pattern Shape79
+# gf New pattern. (3.1.20) (see trevord:610,630,640)
+
+OOo Almost always better to block on second line
+X..
+*..
+---
+
+:8,O,shape(-2)
+
+OOo
+A..
+*..
+---
+
+;lib(A)==2
+
+
###########################
#
# Followup moves.
@@ -2878,6 +2896,7 @@
Pattern DD7
+# gf Revised constraint. (3.1.20)
*OX
?XO
@@ -2888,6 +2907,7 @@
?Bc
;lib(d)<4 && (xlib(*)>1 || lib(d)<3)
+;&& oplay_defend(*,A) && oplay_defend(*,B)
;&& !oplay_defend_both(*,A,B) && !oplay_attack(*,c)
>add_attack_either_move(A,B);