[AI the series] ตอนที่ 1: จับ AI มาเล่นหมากล้อม มันมีประโยชน์ตรงไหน?

[AI the series] ตอนที่ 1: จับ AI มาเล่นหมากล้อม มันมีประโยชน์ตรงไหน?

เกาะกระแสแมทช์ประวัติศาสตร์ Alpha Go vs Lee Sedol ที่หลายๆ คนคงมีคำถามมากมายเกี่ยวกับการพัฒนา AI เช่น

     - สักวันมันจะครองโลกแบบ Skynetไหม?
     - เอามันไปขับรถได้ไหม?
     - คนจะตกงานไหม?
     - มันทำงานยังไง?
     - มันฉลาดตรงไหน?


หลายๆ คำถาม ความจริงมันก็ถูกถามมานานแล้ว ทั้งโดยคนใน และนอกวงการ AI นั่นแหละ และหลายๆ คำถาม มันก็ยังไม่มีคำตอบ ไม่มีข้อสรุปที่ชัดเจน

จริงๆ แล้วทุกคำถามที่โผล่ขึ้นมาให้เห็นในพันทิป จขกท คิดว่ามันก็น่าสนใจทั้งนั้น แม้บางคำถามมันอาจจะฟังดูเป็นคำถามไร้สาระ แต่หลายๆ คนก็คงถามเพราะความที่ไม่ได้มีพื้นฐานความเข้าใจความรู้ความเข้าใจด้าน AI มาก่อน อาจจะได้ยิน ได้สัมผัสผ่านการ์ตูน ผ่านภาพยนต์ ผ่านการเล่นเกม หรือผ่านโฆษณามาเท่านั้น

จขกท เอง เคยพยายามทำเนื้อหาพื้นฐานด้าน AI อยู่พักหนึ่ง ช่วงที่กระทู้ JARVIS โผล่ขึ้นมาถี่หน่อยนั่นแหละ เพราะมีน้องๆ หลายคนหลังไมค์มาขอคำแนะนำ แต่ทำยังไม่ทันถึงไหน เจองานด่วนเข้ามาขัดจังหวะ เลยหยุดชะงักไป (มันจะอารัมภบทยาวไปหน่อยไหมนี่ เข้าเรื่องเลยละกัน)

เนื่องจากหนึ่งในคำถามที่น่าสนใจจากกระแส Alpha Go ที่เกือบจะกลายเป็นตราม่าย่อมๆ ในกระทู้หนึ่ง นั่นก็คือ “จับ AI มาเล่นหมากล้อม มันมีประโยชน์ตรงไหน?”

ตอนแรกก็คิดว่าจะแค่อธิบายสั้นๆ ถ้าคนที่ถามหลังไมค์มา แต่กลายเป็นว่ากลับมีคนสนใจหลังไมค์มาหามากกว่าที่คิด ทั้งๆ ที่คนที่คุยกันอยู่ในกระทู้นั้นมีไม่กี่คน (แต่คนต้นคำถามไม่เห็นจะหลังไมค์มาแฮะ – แอบกัด อิอิ) เลยเอามาเป็นจุดเริ่มต้น ตั้งกระทู้เป็นซีรี่ส์ซะเลย เผื่อจะเป็นประโยชน์ เป็นแรงผลักดันให้หลายๆ คนหันมาสนใจ และศึกษาด้าน AI ซึ่งไม่ว่าจะจริงจัง หรืองานอดิเรก ก็น่าจะดีทั้งนั้น


(เมื่อไหร่มันจะเข้าเรื่องซะทีฟะ)


“จับ AI มาเล่นหมากล้อม มันมีประโยชน์ตรงไหน?”

AI นั้นมีหลายอย่าง ถ้าไม่รู้สักอย่างก็ไม่ควรจะพูดไป ไม่ใช่สินั่นมันเพลง (แต่คนที่จำเพลงนี้ได้ จะมีสักกี่คนหว่า ใครบอกว่าจำได้นี่ บ่งบอกอายุ อิอิ)

AI นั้นมีหลายอย่าง แต่ละอย่างก็มีความเหมาะสมกับงานรูปแบบต่างๆ กันไป แต่โดยรวมแล้วจุดประสงค์หลักของการพัฒนา AI คือจะให้มันมาทำงานแทนมนุษย์ ซึ่งก็ขอแบ่งง่ายๆ เป็น 2 ระดับ

     - ทำงานพื้นๆ ที่มนุษย์ก็ทำได้
     - ทำงานที่เกินความสามารถของมนุษย์


ในขณะที่เราสามารถสร้าง AI ให้สามารถคิดคำนวณซ้ำซ้อนยาวเหยียดได้ง่าย แต่งานง่ายๆ ที่อาศัยจินตนาการมันกลับทำได้ไม่ดีนัก เหตุผลง่ายๆ เพราะมันยังไม่มีความเข้าใจ หรือยังไม่ได้ถูกโปรแกรมให้เรียนรู้ และเข้าใจ สิ่งที่ จขกท ขอเรียกว่า “สุนทรีย์แห่งชีวิต”ของมนุษย์ได้ดีพอ ตัวอย่างเช่น เราสามารถสร้างโปรแกรม ให้มันแต่งเพลงออกมาได้ถูกต้องตามหลักดนตรีภายในเสี้ยววินาที แต่มันอาจจะบอกไม่ได้ว่าเพลงไหนเพราะ เพลงไหนจะถูกใจคนฟัง

แน่นอนว่านักพัฒนาด้าน AI ไม่มีทางที่จะยอมแพ้อยู่แค่นั้น จึงพยายามเรียนรู้ทดลอง และสรรหาเทคนิควิธีการใหม่ๆ ขึ้นมาพัฒนาของเดิมต่อไปเรื่อยๆ

กลับมาเรื่องหมากล้อม

หนึ่งในงานที่เป็นที่คาดหวัง และอาจจะเป็นที่ต้องการมากที่สุด ว่าจะสามารถนำ AI มาช่วยได้ก็คือ งานด้านการตัดสินใจ จะเห็นได้ว่าจากกระทู้พันทิปที่คนเอามาถาม มาคุยกันมากที่สุดจากกระแส Alpha Go ก็วนๆ อยู่แถว

     - มันจะมาช่วยเล่นหุ้นได้ไหม
     - ถ้าเอามันมาขับรถ จะเลือกหลบรถ หลบคนได้ไหม
     - จะเอา AI มาตัดสินคดีแทนผู้พิพากษาได้ไหม

ความจริงคำถามเหล่านี้ อย่างที่บอกคือ มันก็มีมานานแล้ว และที่ดูจะคลาสสิคที่สุดในวงการ AI (แต่เหมือนจะไม่เห็นในพันทิป) คือ เอามาวิเคราะห์แผนการรบในการทำสงครามได้ไหม

เรื่องตลก AI ยุคโบราณ เมื่ออเมริกาลงทุนสร้างเครื่องคอมพิวเตอร์เมนเฟรมขนาดยักษ์ เพื่อเอามาช่วยวางแผนการรบ หลังจากใส่ข้อมูลเข้าไปให้มันวิเคราะห์ แล้วรออยู่สามวัน คำตอบที่ได้ออกมาคือ “ไม่สามารถวิเคราะห์ได้ เพราะข้อมูลไม่เพียงพอ”

อันนั้นแม้จะเป็นเรื่องตลก แต่มันก็แสดงถึงความเข้าใจได้ในเรื่องหนึ่ง นั่นคือการตัดสินใจทำการใหญ่ๆ ในชีวิตจริง ตัวแปรมันอาจจะเยอะมาก มากจนเกินความสามารถของโปรแกรมเมอร์ที่จะเตรียมความพร้อมใส่ไว้ในโปรแกรมได้ แต่นั่นไม่ได้หมายความว่าการพัฒนา AI จะล้มเหลว แล้วหยุดอยู่แค่นั้น

เนื่องจากในชีวิตจริงตัวแปรมันอาจจะเยอะมาก การจะพัฒนา AI โดยคาดหวังจะให้มันออกมาใช้จริงในทันทีเลยย่อมเป็นไปได้ยาก อย่าว่าแต่ AI เลย มนุษย์เองก็ต้องเรียนรู้จากตัวอย่างในวงจำกัดก่อน แล้วจึงค่อยๆ ขยาย เก็บประสพการณ์ต่อยอดไปเรื่อยๆ เปรียบเทียบเหมือนจะพัฒนายาสักตัว ก็ต้องเอามาลองกับเนื้อเยื่อ ลองกับสัตว์ แล้วค่อยลองกับคนเป็นต้น ด้วยเหตุนี้ เกมพวกหมากรุก หมากล้อม หมากฮอส หรือแม้แต่ Tic-Tac-Toe จึงเป็นที่นิยมในการนำมาเป็นเวทีทดสอบการทำงานของ AI ซึ่งคู่ต่อสู้ที่นำมาเปรียบเทียบวัดฝีมือที่ดีที่สุดก็ไม่ใช่ใครอื่น ก็คือ “มนุษย์” นั่นแหละ

“ทำไมบางคนจึงมองว่าการที่ Alpha Go สามารถเอาชนะนักหมากล้อมอย่าง Lee Sedol 3 กระดานรวดได้ ถือเป็นความสำเร็จอันยิ่งใหญ่”

ในวงการหมากกระดาน หมากล้อมถือเป็นหนึ่งในเกมที่มีความซับซ้อนมากที่สุด ความเป็นไปได้ทั้งหมดนั้น >361! (รวม mirror positions และ ko) หรือถ้าคิดแบบไม่นับตาเดินโง่ๆ ก็อยู่ที่ประมาณ 10200 ในขณะที่เกมอื่นๆ อย่างหมากรุกสากล คอมบ้านๆ ก็แทบจะตบ Grandmaster หงายหลังได้แล้ว (ซับซ้อนไม่แพ้หมากล้อม ก็คงจะเป็นหมากรุกญี่ปุ่น หรือ Shogi ถ้านับเฉพาะเกมที่พอเป็นที่รู้จักนะ)

ก่อนหน้า Alpha Go นี้ ก็มีโปรแกรมหมากล้อมถูกพัฒนาขึ้นมาหลายตัว ส่วนมากทำโดยนักพัฒนากลุ่มเล็กๆ หรือมหาวิทยาลัย นั่นอาจเป็นส่วนหนึ่งที่ทำให้ความสำเร็จของโปรแกรมหมากล้อมที่ผ่านๆ มายังไม่ค่อยดีเท่าที่ควร ระดับฝีมือยังห่างไกลกับมนุษย์ โดยเฉพาะมืออาชีพมากโขอยู่ หมากล้อมจึงถือเป็นกำแพงขวางกั้นอันหนึ่งของ วงการ AI ที่ยังข้ามไปไม่ได้

รายชื่อโปรแกรมหมากล้อม http://senseis.xmp.net/?GoPlayingPrograms

การแข่งหมากล้อมระหว่างคน กับคอมพิวเตอร์ที่น่าสนใจ ก่อนหน้า Alpha Go

Myungwan Kim 8p vs MoGo
7 สิงหาคม2008 หมากต่อ 9 เม็ด MoGo ชนะไป 1.5 แต้ม
MoGo รันบน supercomputer 4 cores 800 nodes 4.7 Ghz 15 Teraflops จำกัดเวลาฝ่ายละ 1 ชั่วโมง MoGo ใช้เวลาไป 55 นาที Kim ใช้ไป 13 นาที
http://www.usgo.org/files/ejournal_archive/20080807/20080807.htm

Catalin Taranu 5p vs MoGoTW
28 กรกฎาคม 2010 หมากต่อ 7 เม็ด MoGo ชนะ
MoGoTW ใช้ supercomputer 512 core
http://www.egc2010.fi/news.php

Shodan Go Bet
28-29 ธันวาคม 2010 John Tromp 2d vs MFGO ซีรี่ส์ 7 เกม ไม่มีหมากต่อ Tromp ชนะไป 4-0
ท้าพนันกันไว้ตั้งแต่ปี 1997 โดย Tromp ท้า 1000 ปอนด์ ว่าไม่มีโปรแกรมหมากล้อมตัวไหนชนะเขาได้ก่อนปี 2011 (เงื่อนไขคือต้องเป็นคอมพิวเตอร์ทั่วไป ยกไปตั้งที่สนามแข่งได้)
14-17 มกราคม 2012 John Tromp vs Zen แมทช์ล้างตา Zen ชนะไป 3-1
Zen ทำงานบน dual 6-core Xeon X5680, over-clocked to 4.2Ghz
http://www.computer-go.info/h-c/gobet/index.html
http://dcook.org/gobet/

การแข่งรายการอื่นๆ http://www.computer-go.info/h-c/


ระหว่างนั่งเรียบเรียงข้อมูลอยู่นี้ Alpha Go ก็เอาชนะ Lee Sedol ไปแล้ว 4-1 กระดาน แต่ 1 กระดานที่ Lee ชนะมาได้ สะท้อนให้เห็น 3 สิ่ง


     - ความซับซ้อนของเกมหมากล้อม ที่ทำให้ Alpha Go ที่มีความสามารถในการวิเคราะห์ตาเดินเป็นล้านๆ ตา ยังพลาด หมากขาวตาที่ 78 ได้
     - ความสามารถของมนุษย์ ที่ทั้งๆ ที่ไม่สามารถจะคำนวณหมากเป็นล้านตาเดินได้อย่างคอมพิวเตอร์ กลับสามารถมองหมากตำแหน่งนั้นออกมาได้
     - ความสำคัญของการนำระบบ AI มาทดลองสภาพแวดล้อมจำกัด เช่น เกมกระดานอย่างหมากล้อม เพื่อสามารถที่จะวิเคราะห์ เก็บข้อมูลการทำงานได้ง่าย


นอกเรื่องนิดหน่อย แต่อยากพูดถึงตัวอย่าง หมากตาสำคัญๆ ในประวัติศาสตร์วงการหมากล้อม สัก 3 กระดาน

หมากหูแดง
ขาว : Gennan Inseki
ดำ : Honinbo Shusaku
หนึ่งในตาหมากที่โด่งดังที่สุดในวงการหมากล้อม
http://senseis.xmp.net/?EarReddeningGame


Yose พิศดาร พลิกชนะ 1 แต้ม
ขาว : Yasui Senkaku
ดำ : Honinbo Dochi
จากที่ดูยังไงก็แพ้ 1 แต้ม ดำแก้เกมจนพลิกกลับเป็นชนะ 1 แต้ม
http://senseis.xmp.net/?DochiYoseTesuji


หมากปริศนา
ขาว : Genjo
ตำ : Chitoku
ผ่านมากว่า 200 ปี ยังไม่มีใครกล้าฟันธง ว่าเดินทำไม
http://senseis.xmp.net/?ABrilliantWasteOfAMove



คงจะน่าสนใจไม่น้อย ว่าถ้าให้ Alpha Go มาวิเคราะห์หมากสามกระดานข้างบน มันจะว่าอย่างไร

Alpha Go แม้จะชนะ 4 กระดาน แต่กลับไปคราวนี้ ผู้พัฒนาก็คงไม่น่าจะนิ่งนอนใจ แต่คงกลับไปดูจุดอ่อน วิเคราะห์การทำงานของอัลกอริทึ่มที่ใช้ว่ามันเป็นอย่างไร ยังบกพร่องตรงไหน

หลายคนอาจจะคิดว่า Alpha Go ก็ไม่เห็นจะฉลาดอะไร แค่อาศัยฮาร์ดแวร์แรงๆ อ่านหมากเยอะๆ เข้าว่า ประเด็นนั้นก็ถือว่ามีส่วนจริง แต่มันก็ขึ้นกับมุมมอง ในทาง AI มีการแบ่งความฉลาดของ AI เป็นสองประเภท เรียก Hard AI กับ Soft AI ซึ่งเป็นเรื่องที่เราจะเอามาคุยกันในตอนหน้า

ส่วนการทำงานของ Alpha Go นั้น คงจะต้องรอพูดถึงในตอนต่อๆ ไป หลังจากที่เราได้ทำความเข้าใจพื้นฐานด้าน AI กันมากกว่านี้ เพราะคิดว่าสมาชิกหลายๆ ท่านที่ผ่านมาอ่าน อาจจะไม่มีพื้นฐานเท่าที่ควร ถ้าลงเรื่องยากมากเกินไปแต่แรก เดี๋ยวจะงง นอกจากนี้ พื้นที่ 10000 ตัวอักษรมันจะหมดแล้ว จขกท ไม่อยากแตกความเห็น ระหว่างนี้ก็อยากแนะนำให้อ่านกระทู้ How Alpha Go work  http://pantip.com/topic/34896422 ของสมาชิก pramote_saechiew สำหรับคนที่ยังไม่เคยอ่านครับ

ทิ้งท้าย

โดยส่วนตัว สิ่งที่ จขกท อยากเห็นผลงานของ Alpha Go ในอนาคตก็คงเป็น

1) เล่นเกมยาวๆ ชนิดมีเวลาให้ฝั่งละ 10 ชั่วโมง เพราะในเกมเร็วนั้น ฝ่ายมนุษย์ค่อนข้างจะเสียเปรียบ การแข่งขันรายการใหญ่ๆ ของญี่ปุ่น เขาเล่นกันข้ามวัน ให้เวลาคิดกันเต็มที่ นอกจากนี้ เราอาจจะได้เห็นด้วยว่า ถ้ามีเวลาให้ Alpha Go มากขึ้น จะส่งผลต่อรูปแบบการเล่นมากน้อยแค่ไหน เพราะ Alpha Go มันใช้ heuristic (สำหรับคนที่ไม่รู้ว่ามันคืออะไร เดี๋ยวเราจะได้คุยกันในบทต่อๆ ไปครับ)

2) เล่นแข่งกับทีมมืออาชีพ ให้ตั้งวงช่วยกันวิเคราะห์เลย ว่าจะเดินกันยังไง เพราะหมากล้อมสมัยโบราณ ก็แทบจะขนทั้งสำนักมาช่วยกันเดินหมากตาสำคัญๆ ในขณะที่ Alpha Go ใช้ไม่รู้กี่ core คู่แข่งมีอยู่แค่ core เดียว ดังนั้นต้องเล่นกันแบบยกทีม ถึงจะได้ชื่อว่าชนะมนุษย์ได้จริงๆ

3) ช่วย simulation เก็บสถิติดูให้หน่อยเถอะ ว่าโคมิมันควรจะเป็นกี่แต้ม ข้องใจมากเลย

โพสต์ยอดนิยมจากบล็อกนี้

I miss you all กับ I miss all of you ต่างกันอย่างไร

ปัญหาและเฉลยวิชาธรรม นักธรรมชั้นตรี สอบในสนามหลวง วันอังคาร ที่ ๒๙ กันยายน พ.ศ.๒๕๕๒

ปัญหาและเฉลยวิชาอนุพุทธประวัติ นักธรรมชั้นโท สอบในสนามหลวง วันอาทิตย์ ที่ ๒๐ พฤศจิกายน พ.ศ. ๒๕๔๘