ผมไม่แน่ใจว่าหมากรุกจะเป็นที่รู้จักของคนทุกคนหรือเปล่า ผมเชื่อว่าหลาย ๆ คนอาจจะรู้จักสิ่งที่เรียกว่าหมากรุก แต่ไม่รู้หรอกว่ามันเล่นยังไงและมีกติกายังไงบ้าง
ก็เหมือนกับผมรู้จัก american football, baseball แต่ไม่รู้จักกฎการเล่นของมันนั่นแหล่ะ!!!
ผมคิดว่าในโลกเราน่าจะมีหมากรุกอยู่หลายชนิด หลายแบบ แต่สำหรับผมแล้ว ผมรู้จักแค่หมากรุกไทย, หมากรุกจีน และหมากรุกสากล หมากรุกทั้งสามแบบ ผมรู้จักและรู้วิธีการเล่นอย่างดีทีเดียว แต่ผมก็เล่นไม่เก่งซักที ไม่ใช่ผมไม่รู้กลยุทธการเล่นหรอกนะ แต่เพราะใจผมไม่คิดจะเอาชนะใคร ทุกครั้งที่ผมเล่นหมากรุก ผมจึงตั้งรับ จนกระทั่งอีกฝ่ายเสมอกับผมไปเอง
ในบรรดาหมากรุกทั้งสามแบบที่ผมเคยลองเล่น ผมพบว่าหมากรุกสากล เป็นหมากรุกที่เล่นยากที่สุด ไม่ใช่เพราะผมไม่คุ้นเคยกับมันหรอก แต่เป็นเพราะอำนาจของหมากแต่ล่ะตัวมันน่ากลัว ตัวหมากส่วนใหญ่ของหมากรุกสากล มีช่วงการเดินที่ยาวมาก ๆ จนกระทั่งเรามักจะพบว่า เราสามารถรุก king ของอีกฝ่ายให้จนได้ โดยที่ยังมีหมากอยู่เต็มกระดาน
การเล่นหมากรุกต้องเล่นกันสองคน ดังนั้นหากขาดไปซักคนนึงก็จะเล่นไม่ได้ ก็จึงเกิดความคิดขึ้นมาว่าถ้าเราสามารถหาจักรกลมาเล่นหมากรุกกับเราได้ก็คงดี ซึ่งการเกิดขึ้นของ digital computer เมื่อราว 50 ปีก่อนเป็นตัวจุดประกายให้กับความคิดนี้
ปรกติแล้ว computer มันคิดเองไม่ได้หรอกครับ มันต้องอาศัยการเขียน software เข้าไปควบคุมมัน เป็นเรื่องที่น่าสนใจว่า แขนงวิชาสำหรับการทำ software หมากรุกนั้นสามารถแบ่งได้เป็น 3 เรื่องหลัก ๆ คือ การแทนค่าบนกระดาน 8 ช่อง คูณ 8 ช่องของกระดานหมากรุก, การค้นหาเทคนิคในการเดินที่ดีที่สุด และการปิด game ที่ดีที่สุด ซึ่งทั้ง 3 เรื่องที่ว่าก็แบ่ง ๆ ให้นักวิทยาศาสตร์ computer ไปศึกษากัน
ในการค้นหาเทคนิคในการเดินที่ดีที่สุด เรามีความจำเป็นต้องใช้แขนงวิชา artificial intelligence เข้ามาช่วยในการประเมินเส้นทางเดินที่ดีที่สุด ทีนี้การพูดเลื่อนลอยแค่ว่าใช้ artificial intelligence มันคงกว้างเกินไป มันไม่พอ ดังนั้นเราต้องมาบีบวงให้แคบลงหน่อย โดยการทำความเข้าใจว่า computer มันตัดสินใจด้วยทฤษฎี artificial intelligence ไม่ได้หากเราให้ข้อมูลมันไม่เพียงพอ ซึ่งข้อมูลที่เราจะให้กับมันได้ก็คือ ค่าของตัวหมาก และตำแหน่งที่มันตั้งอยู่ โดยหมากแต่ล่ะตัวจะมีค่าอำนาจของหมาก หมากตัวสำคัญก็ค่ามากหน่อย หมากไม่สำคัญก็ค่าน้อยหน่อย และตำแหน่งยิ่งอยู่ตรงกลางของกระดาน ก็จะให้ค่าเสริมพลังที่มากขึ้นไปอีก (พูดแล้วนึกถึงเกมส์ Yu-Gi-Oh เลย ที่ไพ่แมลงจะมีพลังมากขึ้น ถ้าหากเราเล่นมันบนกระดานที่เป็นป่า)
การค้นหาเส้นทางก็จะอิงไปทางทฤษฎี game เป็นหลัก ต้องทำความเข้าใจอย่างนึงก่อนว่า ทฤษฎี game คือทฤษฎีที่ช่วยให้เราเลือกและตัดสินใจเพื่อให้ได้ผลตอบแทนสูงสุดแก่เรา โดยการพิจารณาจากเส้นทางหลายทาง หากเส้นทางใดให้ผลตอบแทนที่ดีกว่า เราก็จะเลือกผลตอบแทนนั้น เลือกไปเรื่อย ๆ จนจบ
ดังนั้นหากเราจะค้นหาเทคนิคในการเดินที่ดีที่สุด เราจึงต้องทำสองอย่างซึ่งอธิบายในสองย่อหน้าข้างต้นคือ
- สร้างเส้นทางที่เป็นไปได้ทั้งหมดในการเดิน ซึ่งมีลักษณะเป็นโครงสร้าง tree ซึ่งอาจจะมีเส้นทางในแต่ล่ะ node มากกว่า 2 เส้นทางขึ้นไป พร้อมทั้งบรรจุตัวเลขผลตอบแทนของเส้นทางดังกล่าวไว้ ซึ่งคำนวณได้จากค่าอำนาจของหมาก และตำแหน่งของหมาก โดยที่ค่าผลตอบแทนจะคำนวณได้โดยการใช้ algorithm ที่มีลักษณะเป็น recursive!!!
- ใช้ algorithm ของทฤษฎี game เพื่อเลือกผลตอบแทนที่ดีที่สุดจากโครงสร้าง tree ในข้อ 1 เลือกไปเรื่อย ๆ จนจบ แล้วจึงเลือกที่จะเดินในตาที่ให้ผลตอบแทนสูงสุด
คิดดูก็แล้วกันครับ ว่าการจะทำข้อ 1 แล้วจึงมาทำข้อ 2 เสร็จ มันจะกินเวลาของ CPU และกินเนื้อที่ใน RAM มากแค่ไหน? และนี่เป็นแค่การค้นหาเส้นทางที่ดีที่สุดสำหรับการเดินเพียงหนึ่งตาเท่านั้นครับ เมื่อเริ่มเดินตาใหม่ ก็ต้องมาคำนวณข้อ 1 แล้วจึงมาทำข้อ 2 ใหม่อีกครั้งนึง ผมว่า CPU คงวิ่งหัวหมุนเลยล่ะ
ทีนี้ก็คำนวณไปเรื่อย ๆ ครับ แล้วก็เดินไปเรื่อย ๆ กินหมากกันไปเรื่อย ๆ จนกระทั่งเหลือหมากน้อยตัวซึ่งในเชิงหมากเราจะถือว่ากำลังเข้าสู่ช่วง “ปลายกระดาน” โดยลักษณะก็คือถ้าหมากน้อยกว่านี้ ก็ไม่สามารถจะมีฝ่ายใดฝ่ายนึงเอาชนะกันได้แล้ว
จุดที่เป็นปัญหาก็จะอยู่ตรงนี้ครับ เพราะในช่วงแรก ๆ หมากยังหนาแน่นในกระดานอยู่ ดังนั้นการคำนวณในข้อ 1 และข้อ 2 ยังทำได้แบบหยาบ ๆ เพราะสามารถข้ามตาที่เป็นไปไม่ได้ซึ่งมีอยู่เยอะแยะได้ ไม่ว่าจะเป็นช่องที่หมากเดินไปได้ แต่มีหมากของตัวเองวางอยู่ก่อนแล้วเป็นต้น
แต่พอมาถึงช่วงปลายกระดาน หมากเหลือน้อย กระดานก็โล่งโจ้ง ทำให้การคำนวณในข้อ 1 ได้ผลลัพท์เป็น tree ที่ทั้งยาวทั้งกว้าง แล้วจึงทำให้การหาผลตอบแทนที่ดีที่สุดในข้อ 2 กินเวลานานขึ้น ซึ่งนี่เป็นปัญหาใหญ่มาก ๆ
เขาก็เลยมีการคิดกันว่า จะทำไงดีหนอ ถึงจะทำให้สามารถคำนวณหาผลตอบแทนสูงสุดในช่วงปลายกระดานได้ดีที่สุด ก็เลยมีความคิดลักไก่กันขึ้นมาว่า น่าจะเป็นการดีนะ ถ้าจะรวบรวมเอาวิธีการไล่หมากให้จนในช่วงปลายกระดานไว้ในรูปของฐานข้อมูล โดยกำหนดถึงหมากที่เป็นไปได้ในช่วงปลายกระดาน ซึ่งน่าจะเรียกว่าเป็นกลหมากปลายกระดานก็ได้ ซึ่งเจ้ากลหมากปลายกระดานที่ว่า เขาก็ทำมาแจกด้วยนะ เห็นว่าใหญ่ตั้งแต่ 1 GB ถึง 1 TB เลยล่ะ ใหญ่โตมโหฬารเลยทีเดียว
โดยส่วนตัวแล้วผมเห็นว่า แค่สร้างเส้นทางพร้อมผลตอบแทนของแต่ล่ะเส้นทางล่วงหน้าเอาไว้ พร้อมทั้งใช้ทฤษฎี game เข้าช่วยในการตัดสินใจในแต่ล่ะเส้นทาง ผมก็ว่า computer นี่โคตรขี้โกงแล้วนะ นี่เล่นให้มีการจดจำกลหมากปลายกระดานที่เป็นไปได้ทั้งหมดด้วย โคตรโกงเลยอ่ะ จะเอาอะไรไปสู้มันได้ล่ะเนี่ย?
แล้วหลายปีก่อนก็มีคนไปสู้กับมันครับ ซึ่งส่วนใหญ่ก็เป็นนักหมากรุกระดับโลกกันทั้งนั้น โดยเป็นข่าวบ้างไม่เป็นข่าวบ้าง ผลก็คือผลัดกันแพ้ ผลัดกันชนะ
จนกระทั่ง champion โลกซึ่งจริง ๆ ก็วางมือไปแล้ว แต่ก็ยังได้รับการนับหน้าถือตาในวงการให้เป็นอันดับหนึ่งอยู่ก็คือ Garry Kasparov ซึ่งอีตาคนนี้ก็ผลัดกันแพ้ผลัดกันชนะกับหมากรุก computer มาหลายครั้งแล้ว จึงคิดตกว่า การจะเอาชนะหมากรุก computer นั้น เห็นทีจะค่อย ๆ ยากขึ้นเต็มทน ดังนั้น สู้ร่วมมือกับหมากรุก computer ดีกว่า และด้วยความคิดนี้ก็เลยตกผลึกออกมา โดยการจัดตั้งเป็นองค์กรที่ชื่อว่า Advanced Chess Organization หรือ CCO ขึ้นมา เพื่อขยายความคิดที่จะให้นักหมากรุกระดับโลก ร่วมมือกับ software หมากรุกระดับโลก เพื่อต่อสู้แข่งขันหมากรุกกับอีกฝ่าย ซึ่งเป็นนักหมากรุกระดับโลก ที่ร่วมมือกับ software หมากรุกระดับโลกเช่นกัน
อธิบายง่าย ๆ ก็คือ ผมกับคุณผู้อ่านเล่นหมากรุกสู้กัน โดยต่างฝ่ายต่างก็มี software หมากรุกคอยเป็นที่ปรึกษาให้นั่นแหล่ะ พอคุณเดินหมาก ผมก็จะเอาหมากที่คุณเดิน ไปเดินใน software หมากรุกของผม แล้วก็ปล่อยให้มันคิดไป ผมเองก็คิดเหมือนกัน เสร็จแล้วผมก็จะสรุปว่าผมจะเดินตาไหน แล้วก็เหลือบไปดู software หมากรุกของผมว่าจะเดินตาไหน คิดเหมือนกันหรือเปล่า ถ้าคิดไม่เหมือนกัน มันก็จะบอกผมได้ด้วยว่าทำไมมันถึงคิดไม่เหมือนผม มันคิดดีกว่าตรงไหน แล้วพอผมเดินหมาก คุณผู้อ่านก็ทำเหมือนกับผม แล้วก็สลับไปสลับมา จนแพ้ หรือ ชนะ หรือเสมอกันไป
บางคนอาจจะมองว่าเป็นการขี้โกง ใน internet เอง ใคร ๆ ก็บอกงี้แหล่ะ แต่สิ่งสะท้อนที่ Garry Kasparov ชี้ให้เห็นก็คือเราต้องยอมรับว่าเครื่องจักรมันจะเหนือกว่าเราแล้ว แต่หากเรายังควบคุมสั่งการมันได้ ความเหนือกว่าของมัน ก็จะสร้างผลประโยชน์สูงสุดให้กับเรานั่นเอง
สมัยก่อนมนุษย์ไม่ได้เหนือกว่าสัตว์ทางด้านกำลังกาย เราสู้มันไม่ได้เลย มันมีเขี้ยว, เล็บ, ความอดทน, ความว่องไว เราสู้มันไม่ได้เลยถ้าปะทะกันด้วยมือเปล่า แต่เพราะมนุษย์อย่างเรามีกำลังทางสติปัญญา เรารู้จักคิดค้นอาวุธ, รู้จักวางกลยุทธ, รู้จักทำเครื่องมือ เราก็เลยเหนือกว่าสัตว์ได้
ตอนนี้เรากำลังพบกับความเหนือกว่าของเครื่องจักรซึ่งกลายเป็นว่าจะมีกำลังทางสติปัญญาเหนือกว่าเรา ดังนั้นเราก็ต้องรู้จักควบคุมมันให้จงได้ เหมือนที่เราเคยควบคุมสัตว์ต่าง ๆ มาแล้วนั่นเอง เพียงแต่เราจะเอาอะไรไปคุมมันล่ะเนี่ย???
คำตอบก็คือ 🙂 ใช้กำลังกายควบคุมมันไง!!! สลับกันนั่นเอง มันงี่เง่าก็ถอดปลั๊กมันซะเลย
[tags]หมากรุก, หมากรุกสากล, ทฤษฎีหมากรุก, Advanced Chess[/tags]
คุณพี่ไท้ ขยันจริง ๆ เลยครับอัพทุกวันเลยแหะ ยอดมาก ๆ เลยติดตามอ่านทุกวันครับได้ประโยชน์อย่างมากเลยครับ
ชักจะเข้าใกล้ Matrix เข้าไปทุกทีแฮะ
ถ้าวันนึงมันป้ัองกันไม่ให้เราถอดปลั๊กได้เนี่ย..โอ้ว…
ขอบคุณสำหรับบทความดีๆ นะครับ
up blog บ่อย ๆ ถึงจะดีครับ
โอววว เขียนบล็อกได้ดีมากๆ เขียนยาว และได้น้ำได้เนื้อที่สุด
เยี่ยมครับ บอกได้คำเดียว
เห็นด้วยกับคุณ patsonic ครับ อิอิ
ขอบคุณคุณ Patsonic กับคุณ BigNose ที่เข้ามาอ่านครับ ว่าแต่คุณ BigNose ไม่ up blog เลยนะเนี่ย ผมเข้าไปเยี่ยมหลายทีแล้ว มิเห็นมีเปลี่ยนแปลงเลย
ผมไปเจอลิงค์อีกตัว ครับ http://en.wikipedia.org/wiki/Computer_chess แต่ได้ข่าว ว่า Garry Kasparov คนนี้ออกจากวงการไปแล้วละครับ (วางมือ) แต่ไม่ทราบรายละเอียด
ครับ เขาเพียงแค่วางมือจากการแข่งขันครับคุณหมี แต่ก็ยังเล่นอยู่นะ
i like yu gi oh and like chess,thai chess,chicker now i live in usa but i thai people thank you for ……………