查看完整版本 : 改良中國象棋程式後之測試

xianrenb 2018-9-22 02:35 PM

改良中國象棋程式後之測試

近日想到我之前寫的中國象棋程式算是用了不當的處理技巧,運算時會有較差的效能。
修改成較佳的處理方式後,分析能力竟由每秒約 3 萬個局面,升至每秒約 10 萬個局面!
棋力大為提升!

以下分享的是改良中國象棋程式後測試的一個對局。
限時 5 分鐘/ 40 着。

車馬象士將士象馬車 紅 黑
|+++++++|    
|砲+/+\+砲| 帥 將
卒+卒+卒+卒+卒 仕 士
+-------+ 相 象
+-------+ 傌 馬
兵+兵+兵+兵+兵 俥 車
|炮+\+/+炮| 炮 砲
|+++++++| 兵 卒
俥傌相仕帥仕相傌俥    

1:炮二平五
2:砲2平5
3:傌二進三
4:馬2進1
5:俥九進二
6:車1進1
7:仕四進五
8:車1平4
9:俥一平二
10:車9進2

+-象士將士象馬+ 紅 黑
|++車++++|    
馬#+/砲\+砲車 帥 將
卒+卒+卒+卒+卒 仕 士
+-------+ 相 象
+-------+ 傌 馬
兵+兵+兵+兵+兵 俥 車
俥炮+\炮/傌#| 炮 砲
|+++仕+++| 兵 卒
+傌相仕帥\相俥+    

11:炮五進四
12:士6進5
13:相七進五
14:車4進5
15:炮五平九
16:馬8進7
17:兵九進一
18:卒3進1
19:兵三進一
20:車4平3

+-象士將/象-+ 紅 黑
|+++士+++|    
馬#+/砲\馬砲車 帥 將
炮+#+#+卒+卒 仕 士
+-卒-----+ 相 象
兵-----兵-+ 傌 馬
#+車+兵+#+兵 俥 車
俥炮+\相/傌#| 炮 砲
|+++仕+++| 兵 卒
+傌-仕帥\相俥+    

21:傌三進四
22:車9退1
23:傌四進六
24:車3平2
25:傌八進七
26:車2平4
27:炮八進六
28:馬1退3
29:炮九平七
30:砲5平3

+-象士將/象-+ 紅 黑
|炮馬+士+++車    
|#砲/+\馬砲| 帥 將
#+炮+#+卒+卒 仕 士
+-卒傌----+ 相 象
兵-----兵-+ 傌 馬
#+#車兵+#+兵 俥 車
俥#傌\相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥\相俥+    

31:炮七進二
32:車9進1
33:傌六進七
34:砲8平3
35:傌七進八
36:車4退1
37:炮七退三
38:砲3平1
39:炮七平五
40:馬7進5

+-象士將/象-+ 紅 黑
|炮++士+++|    
砲#+/+\+#車 帥 將
#+#+馬+卒+卒 仕 士
+---炮---+ 相 象
兵傌-車--兵-+ 傌 馬
#+#+兵+#+兵 俥 車
俥#+\相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥\相俥+    

41:傌八進七
42:車4退1
43:俥九平六
44:車4平3
45:俥二進九
46:車9平7
47:炮八進一
48:將5平6
49:炮五進三
50:車3退1

+炮象士-將象俥+ 紅 黑
|+++炮+++|    
砲#+/+\車#| 帥 將
#+車+馬+卒+卒 仕 士
+-------+ 相 象
兵-----兵-+ 傌 馬
#+#+兵+#+兵 俥 車
|#+俥相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥\相-+    

51:俥六進七
52:將6進1
53:俥二退一
54:將6進1
55:俥六平四
56:將6平5
57:炮五退二
58:車3平2
59:俥四平七
60:砲1平4

+炮俥\-/象-+ 紅 黑
|++++++俥|    
|#+砲將\車#| 帥 將
#車#+炮+卒+卒 仕 士
+-------+ 相 象
兵-----兵-+ 傌 馬
#+#+兵+#+兵 俥 車
|#+\相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥\相-+    

61:俥二平四
62:砲4退2
63:炮八平六
64:車2退1
65:炮六退四
66:車2進2
67:俥七退二

+--\-/象-+ 紅 黑
|++++俥++|    
|#俥/將\車#| 帥 將
#+#+炮+卒+卒 仕 士
+車-炮----+ 相 象
兵-----兵-+ 傌 馬
#+#+兵+#+兵 俥 車
|#+\相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥\相-+    

(紅勝)

xianrenb 2018-9-22 02:49 PM

[quote]原帖由 [i]xianrenb[/i] 於 2018-9-22 02:35 PM 發表 [url=https://www.discuss.com.hk/redirect.php?goto=findpost&pid=487745069&ptid=27731926][img]https://www.discuss.com.hk/images/common/back.gif[/img][/url]
近日想到我之前寫的中國象棋程式算是用了不當的處理技巧,運算時會有較差的效能。
修改成較佳的處理方式後,分析能力竟由每秒約 3 萬個局面,升至每秒約 10 萬個局面!
棋力大為提升!

以下分享的是改良中國象棋程式後測試的一個對局。
限時 5 分鐘/ 40 着。

車馬象士將士象馬車 紅 黑
|+++++++|    
|砲+/+\+砲| 帥 將
卒+卒+卒+卒+卒 仕 士
+ ... [/quote]

[url=https://www.discuss.com.hk/viewthread.php?tid=27508626&extra=page%3D1]https://www.discuss.com.hk/viewthread.php?tid=27508626&extra=page%3D1[/url] 的說法,現在我的象棋程式以 NPS 算一定棋力提升了。
以 NPS = 100,000 來算,等效的等級分約是:
s = 2346 * (log(log(100,000 * 60)/log(5.095)) - log(9))  + 2328
~= 2392

然而,在相同時限之下,新程式在大部份情況有可能可以算多一級。
所以感受起來比起看分數數字要差別大一些。

xianrenb 2018-9-22 11:03 PM

[quote]原帖由 [i]xianrenb[/i] 於 2018-9-22 02:35 PM 發表 [url=https://www.discuss.com.hk/redirect.php?goto=findpost&pid=487745069&ptid=27731926][img]https://www.discuss.com.hk/images/common/back.gif[/img][/url]
近日想到我之前寫的中國象棋程式算是用了不當的處理技巧,運算時會有較差的效能。
修改成較佳的處理方式後,分析能力竟由每秒約 3 萬個局面,升至每秒約 10 萬個局面!
棋力大為提升!

以下分享的是改良中國象棋程式後測試的一個對局。
限時 5 分鐘/ 40 着。

車馬象士將士象馬車 紅 黑
|+++++++|    
|砲+/+\+砲| 帥 將
卒+卒+卒+卒+卒 仕 士
+ ... [/quote]

1 樓的是正常模式的對局。
再分享一局,限時 5 分鐘/ 40 着,超級深模式。

車馬象士將士象馬車 紅 黑
|+++++++|    
|砲+/+\+砲| 帥 將
卒+卒+卒+卒+卒 仕 士
+-------+ 相 象
+-------+ 傌 馬
兵+兵+兵+兵+兵 俥 車
|炮+\+/+炮| 炮 砲
|+++++++| 兵 卒
俥傌相仕帥仕相傌俥    

1:炮八平五
2:砲8平5
3:傌二進三
4:馬8進7
5:傌八進七
6:馬2進3
7:俥一平二
8:車9平8
9:俥九平八
10:砲2平1

車-象士將士象車+ 紅 黑
|+++++++|    
砲#馬/砲\馬#| 帥 將
卒+卒+卒+卒+卒 仕 士
+-------+ 相 象
+-------+ 傌 馬
兵+兵+兵+兵+兵 俥 車
|#傌\炮/傌炮| 炮 砲
|+++++++| 兵 卒
+俥相仕帥仕相俥+    

11:俥八進八
12:卒3進1
13:俥八平七
14:馬3進2
15:俥七退三
16:馬2進1
17:傌七進九
18:砲1進4
19:俥七進二
20:車1平2

+車象士將士象車+ 紅 黑
|+++++++|    
|#俥/砲\馬#| 帥 將
卒+#+卒+卒+卒 仕 士
+-------+ 相 象
+-------+ 傌 馬
砲+兵+兵+兵+兵 俥 車
|#+\炮/傌炮| 炮 砲
|+++++++| 兵 卒
+-相仕帥仕相俥+    

21:兵七進一
22:砲1平7
23:仕四進五
24:卒7進1
25:兵七進一
26:卒7進1
27:傌三退四
28:車2進9
29:相七進九
30:卒1進1

+-象士將士象車+ 紅 黑
|+++++++|    
|#俥/砲\馬#| 帥 將
#+#+卒+#+卒 仕 士
卒-兵-----+ 相 象
+-----卒-+ 傌 馬
#+#+兵+砲+兵 俥 車
相#+\炮/+炮| 炮 砲
|+++仕+++| 兵 卒
+車-仕帥傌相俥+    

31:相九進七
32:馬7進6
33:炮五進四
34:士6進5
35:俥七進二
36:卒1進1
37:相七退五
38:馬6進5
39:炮五退一
40:車8進4

+-俥士將/象-+ 紅 黑
|+++士+++|    
|#+/砲\+#| 帥 將
#+#+#+#+卒 仕 士
+-兵-炮--車+ 相 象
卒-----卒-+ 傌 馬
#+#+馬+砲+兵 俥 車
|#+\相/+炮| 炮 砲
|+++仕+++| 兵 卒
+車-仕帥傌相俥+    

41:炮五退一
42:卒7平6
43:炮五進二
44:砲7退4
45:兵一進一
46:砲7平8
47:炮五進二
48:將5進1
49:俥七退一
50:將5退1

+--士將/象-+ 紅 黑
|+俥+++++|    
|#+/砲\+砲| 帥 將
#+#+#+#+卒 仕 士
+-兵----車+ 相 象
卒----卒--兵 傌 馬
#+#+馬+#+# 俥 車
|#+\相/+炮| 炮 砲
|+++仕+++| 兵 卒
+車-仕帥傌相俥+    

51:俥七平二
52:馬5進3
53:炮二平七
54:車8進5
55:俥二平三
56:象7進9
57:俥三退一
58:砲5進3
59:俥三平九
60:象9退7

+--士將/象-+ 紅 黑
|+++++++|    
俥#+/+\+砲| 帥 將
#+#+#+#+卒 仕 士
+-兵-----+ 相 象
卒---砲卒--兵 傌 馬
#+#+#+#+# 俥 車
|#炮\相/+#| 炮 砲
|+++仕+++| 兵 卒
+車-仕帥傌相車+    

61:俥九平三
62:士4進5
63:俥三進二
64:士5退6
65:俥三退二
66:將5平4
67:俥三平六
68:將4平5
69:俥六平三
70:車2退2

+--\將士--+ 紅 黑
|+++++++|    
|#+/+\俥砲| 帥 將
#+#+#+#+卒 仕 士
+-兵-----+ 相 象
卒---砲卒--兵 傌 馬
#+#+#+#+# 俥 車
|車炮\相/+#| 炮 砲
|+++仕+++| 兵 卒
+--仕帥傌相車+    

71:俥三平五
72:士6進5
73:炮七進二
74:砲8平6
75:炮七平四
76:砲5進3
77:帥五進一
78:砲6進7
79:炮四平五
80:車2進1

+--\將/--+ 紅 黑
|+++士+++|    
|#+/俥\+#| 帥 將
#+#+#+#+卒 仕 士
+-兵-----+ 相 象
卒---炮---兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
|車++帥+++| 兵 卒
+--仕-砲相車+    

81:帥五退一
82:車2平6
83:俥五平二
84:將5平4
85:俥二平九
86:砲6平4
87:俥九進二
88:將4進1
89:俥九退一
90:將4退1

+--將-/--+ 紅 黑
俥+++士+++|    
|#+/+\+#| 帥 將
#+#+#+#+卒 仕 士
+-兵-----+ 相 象
卒---炮---兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
|++++車++| 兵 卒
+--砲帥\相車+    

91:俥九進一
92:將4進1
93:俥九平三
94:車8平7
95:俥三退九
96:砲4平7
97:炮五退一
98:砲7平9
99:炮五進二
100:車6退4

+--\-/--+ 紅 黑
|++將士+++|    
|#+/+\+#| 帥 將
#+#+#+#+卒 仕 士
+-兵-炮車--+ 相 象
卒-------兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
|+++++++| 兵 卒
+--/帥\--砲    

101:炮五平六
102:將4退1
103:相五進三
104:將4平5
105:相三退五
106:車6平5
107:帥五進一
108:砲9平2
109:炮六退二
110:車5平3

+--\將/--+ 紅 黑
|+++士+++|    
|#+/+\+#| 帥 將
#+#+#+#+卒 仕 士
+-車-----+ 相 象
卒-------兵 傌 馬
#+#炮#+#+# 俥 車
|#+\相/+#| 炮 砲
|+++帥+++| 兵 卒
+砲-/-\--+    

111:炮六平五
112:將5平4
113:炮五進四
114:車3平5
115:炮五平二
116:車5退2
117:炮二退五
118:將4平5
119:炮二平一
120:砲2平9

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+卒 仕 士
+-------+ 相 象
卒-------兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#炮 炮 砲
|+++帥+++| 兵 卒
+--/-\--砲    

121:炮一平二
122:砲9退1
123:炮二平四
124:卒1平2
125:炮四平二
126:卒2平3
127:炮二平四
128:砲9退1
129:炮四退二
130:砲9平8

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+卒 仕 士
+-------+ 相 象
+-卒-----兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+砲| 炮 砲
|+++帥+++| 兵 卒
+--/-炮--+    

131:炮四平五
132:砲8進2
133:炮五平七
134:砲8退7
135:炮七平五
136:砲8進5
137:炮五平九
138:砲8平9
139:炮九平四
140:砲9平7

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+卒 仕 士
+-------+ 相 象
+-卒-----兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/砲#| 炮 砲
|+++帥+++| 兵 卒
+--/-炮--+    

141:炮四平五
142:砲7進1
143:炮五平一
144:砲7平9
145:炮一平七
146:砲9平8
147:炮七進二
148:砲8退6
149:炮七退二
150:砲8平9

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#砲 帥 將
#+#+#+#+卒 仕 士
+-------+ 相 象
+-卒-----兵 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
|+++帥+++| 兵 卒
+-炮/-\--+    

151:炮七平一
152:砲9進3
153:炮一進二
154:砲9平6
155:炮一平二
156:卒9進1
157:炮二進二
158:砲6進2
159:炮二退二
160:砲6退3

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+----砲--卒 相 象
+-卒-----+ 傌 馬
#+#+#+#+# 俥 車
|#+\相/+炮| 炮 砲
|+++帥+++| 兵 卒
+--/-\--+    

161:炮二平三
162:卒9進1
163:炮三進七
164:砲6退2
165:炮三退二
166:砲6進2
167:炮三進二
168:砲6退3
169:炮三退九
170:砲6進8

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----卒 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
|+++帥+++| 兵 卒
+--/-砲炮-+    

171:炮三進五
172:砲6平2
173:炮三退三
174:砲2平1
175:炮三退二
176:砲1退2
177:炮三平五
178:將5平6
179:炮五平九
180:砲1進1

+--\-將--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----卒 傌 馬
#+#+#+#+# 俥 車
|#+\相/+#| 炮 砲
砲+++帥+++| 兵 卒
炮--/-\--+    

181:炮九平二
182:將6平5
183:炮二平五
184:砲1退1
185:炮五平九
186:砲1平2
187:炮九進二
188:砲2進1
189:炮九進二
190:卒9進1

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
炮-卒-----+ 傌 馬
#+#+#+#+卒 俥 車
|#+\相/+#| 炮 砲
|砲++帥+++| 兵 卒
+--/-\--+    

191:炮九退二
192:卒9平8
193:炮九平六
194:卒8平7
195:炮六退二
196:卒7平6
197:炮六進二
198:士5退4
199:帥五平六
200:車5進5

+--士將/--+ 紅 黑
|+++++++|    
|#+/+\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----+ 傌 馬
#+#+#卒#+# 俥 車
|#+炮車/+#| 炮 砲
|砲+帥++++| 兵 卒
+--/-\--+    

201:炮六進五
202:士4進5
203:炮六平一
204:車5退5
205:炮一進二
206:砲2退1
207:帥六退一
208:卒6平5
209:炮一退七
210:砲2平6

+--\將/--+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----+ 傌 馬
#+#+卒+#+# 俥 車
|#+\+砲+#炮 炮 砲
|+++++++| 兵 卒
+--帥-\--+    

211:帥六平五
212:砲6平1
213:帥五平四
214:砲1進2
215:炮一進七
216:車5平6
217:帥四平五
218:卒5進1
219:炮一平二
220:車6平5

+--\將/-炮+ 紅 黑
|+++士+++|    
|#+/車\+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----+ 傌 馬
#+#+#+#+# 俥 車
|#+\卒/+#| 炮 砲
|+++++++| 兵 卒
砲--/帥\--+    

221:帥五平四
222:卒5進1
223:炮二退一
224:車5平6

+--\將/--+ 紅 黑
|+++士++炮|    
|#+/+車+#| 帥 將
#+#+#+#+# 仕 士
+-------+ 相 象
+-卒-----+ 傌 馬
#+#+#+#+# 俥 車
|#+\+/+#| 炮 砲
|+++卒+++| 兵 卒
砲--/-帥--+    

(黑勝)
頁: [1]
查看完整版本: 改良中國象棋程式後之測試