शतरंज के इंजन कभी-कभी अच्छी चाल क्यों याद करते हैं (या हमेशा के लिए जगह लेना)?


17

यह पहली बार नहीं है कि मुझे शतरंज के इंजन की तुलना में बहुत बेहतर कदम मिला, यह आपको इन चालों को समझने के बाद भी कुछ समय लगेगा।

उदाहरण के लिए, 15 ... Bf2नीचे दिए गए खेल में कदम :

एनएन - एनएन, 0-1
1. E4 E5 2. Nf3 NC6 3. BB5 Nf6 4. OO NG4 5. h3 h5 6. hxg4 hxg4 7. Bxc6 gxf3 8. Qxf3 Qh4 9. Qh3 Qxh3 10 gxh3 dxc6 11. 1 रुपया Bxh3 12. f3 Bc5 + 13। Kh2 Bf1 + 14. Kg3 Rh3 + 15. Kg4 Bf2 16. Rxf1 Rg3 + 17. Kf5 Rxf3 + 18. Kg4 Rg3 + 19. Kf5 f6 20 20। D3 Kf7 0-1

इंजन द्वारा कुछ समय के लिए इस कदम पर किसी का ध्यान नहीं जाता है, यह तब तक नहीं है जब तक कि मैं स्थानांतरित नहीं करता कि यह बाकी के हिमशैल को देखना शुरू कर दे।

मुझे पता है कि यह सब इस बात पर निर्भर करता है कि आप उन्हें विश्लेषण करने के लिए कितना समय देते हैं, लेकिन यह अस्वीकार्य है कि कभी-कभी इंसान कंप्यूटर से कम समय में इन चालों को खोजने का प्रबंधन करते हैं।

  • शतरंज इंजन कुछ स्थानों पर अच्छी चाल क्यों नहीं चला पाते हैं? (मैं एक बार 'क्षितिज प्रभाव' के बारे में कुछ पढ़ता हूं, शायद यह संबंधित है?)
  • क्या अन्य उल्लेखनीय उदाहरण हैं? (उदाहरण के लिए यह प्रसिद्ध पहेली , कंप्यूटर को हल करने में कुछ समय लेता है)

इन सवालों में कुछ कारकों को आंशिक रूप से समझाने के लिए उपयोगी जानकारी है जो इस विसंगति का कारण हो सकती हैं: कंप्यूटर एल्गोरिथ्म में क्या एल्गोरिदम और ह्यूरिस्टिक्स लोकप्रिय हैं? , जब एक कंप्यूटर प्रतिद्वंद्वी खेल रहा हूं तो मुझे खुद को जीतने का बेहतर मौका देने के लिए क्या परिस्थितियां बनानी चाहिए? , कंप्यूटर मूल्यांकन: वे कितने भरोसेमंद हैं?

नोट: जाल मछली पकड़ने के ध्रुव के रूप में जाना जाता है , मुझे पता है कि मैं 3 में एक दोस्त (और 7 में एक दोस्त) याद किया :(, प्रति चाल समय सीमा दिन था (पत्राचार शतरंज) लेकिन यह मुझे 5-10 मिनट की तरह लगा सब कुछ गणना करने के लिए।


1
बहुत ही रोचक। मेरे औसत शक्ति पीसी पर स्टॉकफिश 15... Bf25 मिनट के बाद बिल्कुल नहीं मिला ।
टोनी एननिस

... और अगली चाल पर एक समान मेट-इन -7 खोजने में 7 मिनट से अधिक समय लगा।
टोनी एननिस

20 d3 एक त्रुटि है। 20 d4 का प्रयास करें।
dcaswell

1
कंप्यूटर से कम समय में एक चाल खोजने के लिए आप मानव के लिए "अस्वीकार्य" भाषा का उपयोग क्यों करते हैं? क्या आप इस पर अपने विचार अनपैक कर सकते हैं?
Xonatron

इसमें कई बेहतर मूव्स छूट गए। विशेष रूप से सिंगल ही क्यों?
योबामामा

जवाबों:


33

शतरंज इंजन कुछ स्थानों पर अच्छी चाल क्यों नहीं चला पाते हैं?

कारण को पहली पंक्ति में प्रोबक्यूट के साथ फॉरवर्ड प्रूनिंग तकनीक ( http://chessprogramming.wikispaces.com/Pruning देखें ) कहा जाता है ।

चाल 15 ... Bf2 उथले गहराई पर छंटनी की जाती है क्योंकि इसमें 16.Rxf1 बलिदान शामिल है, बिना कुछ ठोस सबूत के तुरंत बाद पुन: प्राप्त करना। मेटनेट को देखना भी कठिन है, क्योंकि इसमें कुछ और 'मूक' चाल शामिल हैं उदाहरण के लिए 17 ... के 7, और हाँ इंजन भी, न केवल मनुष्यों को दूर की मूक चाल को देखने के लिए कठिनाइयाँ होती हैं क्योंकि वे अक्सर छंट जाते हैं।

इस ठोस मामले में आप यह भी नहीं कह सकते हैं, कि इंजन अच्छी चालों को प्रदर्शित करने में विफल रहते हैं, क्योंकि निरंतरता 15 ... Rh3h1 एक बहुत ही अच्छी चाल है और एक बिल्कुल जीते हुए स्थान की ओर ले जाती है।

अंतिम लेकिन कम से कम आपको यह याद रखना होगा कि इंजन की ताकत हमेशा एलो-स्ट्रेंघ के संदर्भ में मापी जाती है, न कि जीतने के लिए सबसे छोटा रास्ता खोजने की क्षमता में। इससे कोई फर्क नहीं पड़ता, अगर कोई इंजन 8 चालों में या 25 चालों में जीतता है। कम से कम जीत के लिए बहुत कुछ करने का मतलब है, समय की बर्बादी होगी, क्योंकि ज्यादातर समय ऐसा कोई गुप्त अच्छा कदम नहीं होता है। और समय की बर्बादी से इंजन ईएलओ-रेटिंग को नुकसान होगा।


1
अच्छा जवाब, साइट पर आपका स्वागत है!
एंड्रयू

Pruned और पूर्ण खोज के बीच व्यापार-बंद का उल्लेख करने के लिए +1। मैं कम से कम आश्चर्यचकित नहीं हूं कि 13+ PLY संयोजन जल्दी से नहीं मिला है। इंजन में उस गहराई की हर संभावना की गणना करने की तुलना में "बेहतर काम करने" हैं।
डैनियल बी

2
कुल मिलाकर अच्छा जवाब। +1 के लिए "अंतिम लेकिन कम से कम आपको यह याद रखना होगा कि इंजन की ताकत हमेशा एलो-
स्ट्रेंघ के संदर्भ में मापी जाती है

बहुत बढ़िया जवाब।
Xonatron

12

मैं हौदिनी 1.5 (मुक्त संस्करण) के साथ यह कोशिश कर रहा हूं। पहले 15 में ... Bf2 शीर्ष 5 चालों में दिखाई नहीं देता है, फिर जब यह 15 तक पहुंचता है, तो यह # 1 के रूप में होता है। मेरे चार साल पुराने कंप्यूटर पर लगभग 19 सेकंड लगते हैं, लंबे समय तक नहीं।

इसलिए यह इसे जगह देने में विफल नहीं होता है, इसके बजाय यह केवल एक बार गहराई 15 तक पहुंचने पर इसे सबसे अच्छा कदम मानता है। जाहिरा तौर पर, जब तक यह केवल 14 प्लाई गहरा दिखता है, अन्य चालें बेहतर होती हैं (जैसे कि 15 भी जीतना ... f5 +)।

जाहिरा तौर पर 15 ... Bf2 8 में एक दोस्त है, जो 15 प्लाई (काले रंग से 8 चाल, 7 सफेद) है। लेकिन पहले तो यह सिर्फ इसे +10 या तो, फिर +20 मानता है, फिर 10 में दोस्त, फिर 8 में दोस्त।

8 लाइन में मेट है:

एनएन - एनएन
1. E4 E5 2. Nf3 NC6 3. BB5 Nf6 4. OO NG4 5. h3 h5 6. hxg4 hxg4 7. Bxc6 gxf3 8. Qxf3 Qh4 9. Qh3 Qxh3 10 gxh3 dxc6 11. 1 रुपया Bxh3 12. f3 Bc5 + 13। Kh2 Bf1 + 14. Kg3 Rh3 + 15. Kg4 Bf2 16. Rxf1 Rh4 + 17. Kg5 Ke7 18. Rh1 Rxh1 19. Nc3 Rah8 20. Nd5 + Xx5 21. d3 R8h5 + 22. Kg4 R1h4 #।

स्पष्ट रूप से जब हडिनी 1.5 15 प्लाई गहरा लगता है, तो यह सभी संभावित लाइनों पर विचार नहीं करता है जो 15 प्लाई गहरी हैं, या यह 8 मिनट में मेट को देखेगा, इसकी 15-प्लाई-गहराई खोज समाप्त हो गई है।

मुझे लगता है कि प्रूनिंग के कारण , यह कुछ लाइनों को देखना बंद कर देता है जब उन्हें लगता है कि वे पर्याप्त वादा नहीं कर रहे हैं। इस तरह, यह आशाजनक लाइनों पर अधिक समय बिता सकता है, और प्रोग्रामर सोचता है कि पेशेवरों ने विपक्ष को पछाड़ दिया। लेकिन मेरे पास अभी इस पर कोई जवाब नहीं है कि वह यहां क्या तय करता है (यह शायद 15 साल की गहराई में लाखों अलग-अलग pruning निर्णय लेता है)।

यह मूक चाल के साथ करना पड़ सकता है ... Ke7, और ... राह 8, दो गैर-चेक गैर-कैप्चर एक पंक्ति में जहां काला एक टुकड़ा है। यह संभावना है कि यह कहीं न कहीं तय करता है कि इस पंक्ति को देखते रहना उपयोगी नहीं है। केवल बाद में, जब वह लाइन जारी रखता है और अंत में मेट को पाता है कि अन्य लाइनों को करें जो खेल को लम्बा करती हैं (18.Rh1 Rxh1 और इसी तरह) तो दिखाओ।

वैसे भी, यह ज्ञात है कि यह काम नहीं करता है कि कंप्यूटर को कुछ सेकंड के लिए सोचने दें यदि आप किसी चीज़ की तह तक जाना चाहते हैं, तो कुछ मिनट बेहतर हैं।


मेरा अनुमान है कि यह क्यों लगता है, क्योंकि 16 है। Rxf1 "हेयुरिस्टिकली" दिखता है कि महान-श्वेत राजा खुले में बाहर नहीं है, लेकिन कोई भी तत्काल चेकमेट नहीं है और सामग्री में मोहरे के लिए ब्लैक नाइट के नीचे है। यह तब तक नहीं है जब तक गहन विश्लेषण नहीं होता है (जैसा कि आपने कहा) कि इस "बलिदान" का मूल्य स्पष्ट हो जाता है।
जो के

ध्यान दें कि "15 प्लाई" का अर्थ है कि यह कुछ चालों पर 15 गहराई तक दिखता है , सभी चालों में नहीं । यही कारण है कि ले जाएगा waay अब 4 सेकंड से, यहां तक कि एक सुपर कंप्यूटर पर।
ब्लूराजा - डैनी पफ्लुगुफ्ट

2

सभी उत्तरों और अन्य स्रोतों को पढ़ने के बाद, मैं अब समझ गया हूं कि वे 'मिस' नहीं करते हैं या इन चालों को याद करने के लिए चुना है, मानव ने उन्हें इस तरह से प्रोग्राम किया कि वे एक विशिष्ट पैटर्न का अनुसरण करते हैं (जहां / कैसे / जब + से) खोज और अधिक महत्वपूर्ण बात यह है कि संसाधनों को बचाने के लिए खोज और अधिक होनहार लाइनों को देखें।

लेकिन पर्याप्त समय दिया गया है, एक कंप्यूटर एक निश्चित गहराई पर हर संभव संयोजन को खत्म करेगा।

टी एल; डॉ

  • Q1: वे कभी भी चाल नहीं चूकते, उन्होंने अभी तक उन्हें नहीं पाया है
  • Q2: वे समय लेते हैं क्योंकि उन्हें संसाधनों को बचाने के लिए प्रोग्राम किया जाता है और वे अन्य लोगों की कुछ पंक्तियों को प्राथमिकता देंगे (जैसे कि जिनके पास निष्क्रिय चाल नहीं हैं या अगले कुछ चालों में सामग्री को पुनर्प्राप्त नहीं करते हैं)।

-1

मुझे लगता है कि हर कोई बहुत जल्दी दोस्त को याद कर रहा है। जब हउदिनी 3 के साथ स्थिति की जांच करते हैं, तो वास्तव में 3 चाल में 3 में काला है। Bf1 + के बजाय, काले को Bf2 खेला जाना चाहिए, और यह 14. d3 bf1 + 15. Bh6 Rxh6 # के साथ प्रतिस्पर्धा करता है। इसलिए, आपके प्रश्न के असामान्य उत्तर में, शायद कुछ इंजनों ने आपकी चाल को ठीक से नहीं देखा था, लेकिन, हाउदिनी 3 के मामले में, यह बहुत तेज दोस्त पाया।


5
यदि आप पूरे प्रश्न को पढ़ते हैं, तो आप देखेंगे कि वह 3 में दोस्त के बारे में जानता है। सभी यथोचित नए इंजनों को तुरंत 3 में दोस्त मिल जाएगा, और यह यहां पूछे जाने वाले भाग का हिस्सा नहीं है।
हवलदार
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.