-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexperiments.txt
189 lines (118 loc) · 4.7 KB
/
experiments.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
== Experiments and losing first moves found so far. ==
(times from an early run)
Params: negascout, d=7, moves sorted
Moves: 10: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3]
Time: 2.155s
Params: alphabeta, d=7, moves sorted
Moves: 10: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3]
Time: 2.52s
Params: negascout, d=9, moves sorted
Result: 10: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3]
Time: 17.36s
Params: alphabeta, d=9, moves sorted
Result: 10: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3]
Time: 19.83s
Params: negascout, d=11, moves sorted
Result: 12: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3,B1-A2,G1-H2]
Time: 2m8.022s
Params: alphabeta, d=11, moves sorted
Result: 12: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,C1-A3,F1-H3,B1-A2,G1-H2]
Time: 2m34.016s
Params: negascout, d=13, moves sorted
Moves: 24: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,H1-H6,A1-D4,H1-E4,B1-D3,C1-A3,C1-E3,F1-D3,F1-H3,G1-E3,A1-B2,B1-A2,C1-B2,D1-C2,E1-F2,F1-G2,G1-H2,H1-G2]
Time: 17m28.199s
Params: negascout, d=15, moves sorted
Moves: 44: [A1-A7,B1-H7,D1-D7,E1-E7,G1-A7,H1-H7,A1-A6,C1-H6,F1-A6,H1-H6,A1-E5,D1-H5,E1-A5,H1-D5,A1-D4,H1-E4,A1-C3,B1-B3,B1-D3,C1-A3,C1-E3,D1-B3,D1-F3,E1-C3,E1-G3,F1-D3,F1-H3,G1-G3,G1-E3,H1-F3,A1-B2,B1-A2,B1-C2,C1-B2,C1-D2,D1-C2,D1-E2,E1-D2,E1-F2,F1-E2,F1-G2,G1-F2,G1-H2,H1-G2]
Time: 123m14.894s
Params: negascout, d=17
Moves: 66: [A1-A7,B1-B7,B1-H7,D1-D7,E1-E7,G1-G7,G1-A7,H1-H7,A1-A6,C1-H6,D1-D6,E1-E6,F1-A6,H1-H6,A1-A5,A1-E5,C1-G5,D1-D5,D1-H5,E1-E5,E1-A5,F1-B5,H1-H5,H1-D5,A1-D4,B1-E4,D1-A4,E1-H4,G1-D4,H1-E4,A1-A3,A1-C3,B1-B3,B1-D3,C1-A3,C1-E3,D1-B3,D1-F3,E1-C3,E1-G3,F1-D3,F1-H3,G1-G3,G1-E3,H1-H3,H1-F3,A1-B2,B1-B2,B1-A2,B1-C2,C1-C2,C1-B2,C1-D2,D1-D2,D1-C2,D1-E2,E1-E2,E1-D2,E1-F2,F1-F2,F1-E2,F1-G2,G1-G2,G1-F2,G1-H2,H1-G2]
Params: negascout, d=19
Moves: 74: [A1-A7,B1-B7,B1-H7,D1-D7,E1-E7,G1-G7,G1-A7,H1-H7,A1-A6,B1-G6,C1-H6,D1-D6,E1-E6,F1-A6,G1-B6,H1-H6,A1-A5,A1-E5,C1-G5,D1-D5,D1-H5,E1-E5,E1-A5,F1-B5,H1-H5,H1-D5,A1-D4,B1-B4,B1-E4,C1-F4,D1-A4,D1-G4,E1-B4,E1-H4,F1-C4,G1-G4,G1-D4,H1-E4,A1-A3,A1-C3,B1-B3,B1-D3,C1-A3,C1-E3,D1-B3,D1-F3,E1-C3,E1-G3,F1-D3,F1-H3,G1-G3,G1-E3,H1-H3,H1-F3,A1-B2,B1-B2,B1-A2,B1-C2,C1-C2,C1-B2,C1-D2,D1-D2,D1-C2,D1-E2,E1-E2,E1-D2,E1-F2,F1-F2,F1-E2,F1-G2,G1-G2,G1-F2,G1-H2,H1-G2]
# With binary board
Params: negascout, d=7
Time: 1.87s
Params: negascout, d=9
Time: 14.28s
Params: negascout, d=11
Time: 1m49s
# With fixed move order
Params: alphabeta, d=7
Time: 1.50s
Params: alphabeta, d=9
Time: 7.30s
Params: alphabeta, d=11
Time: 27.14s
Params: negascout, d=7
Time: 1.22s
Params: negascout, d=9
Time: 5.61s
Params: negascout, d=11
Time: 20.92s
Params: negascout, d=13
Time: 61.11s
# With improved move generation (stop on first invalid forward move)
Params: negascout, d=7
Time: 0.93s
Params: negascout, d=9
Time: 4.06s
Params: negascout, d=11
Time: 14.14s
Params: negascout, d=13
Time: 39.83s
Params: negascout, d=15
Time: 97.29s
Params: negascout, d=17
Time: 173.59s
# With even more improved move generation (do not use `between`)
Params: negascout, d=7
Time: 0.63s
Params: negascout, d=9
Time: 2.85s
Params: negascout, d=11
Time: 10.09s
Params: negascout, d=13
Time: 29.20s
Params: negascout, d=15
Time: 70.82s
Params: negascout, d=17
Time: 128.01s
Params: negascout, d=19
Time: 207.65s
# With my implementation of negascout
Params: negascout, d=9
Time: 2.85s
Params: negascout, d=11
Time: 10.09s
Params: negascout, d=13
Time: 29.20s
Params: negascout, d=15
Time: 70.82s
Params: negascout, d=17
Time: 128.01s
Params: negascout, d=19
Time: 207.65s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=7
Time: 0.61s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=9
Time: 2.73s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=11
Time: 9.64s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=13
Time: 27.76s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=15
Time: 67.45s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=17
Time: 122.05s
# with merge instead of sort (and with more polymorphism than needed)
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=7
Time: 0.50s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=9
Time: 2.17s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=11
Time: 7.68s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=13
Time: 22.15s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=15
Time: 53.56s
Params: mode=LosingMoves, algo=Negascout, implementation=My, depth=17
Time: 97.40s