วันที่ 22 สิงหาคม 2560

AI ปัญญาประดิษฐ์พิชิตโลก ศาสตร์แห่งอนาคต "วิทยาการคอมพิวเตอร์"

หรือว่าโลกกำลังเข้าสู่ยุค AI แล้วหรือนี่?

โดย ผศ.ดร.วิศิษฏ์ หิรัญกิตติ ประธานหลักสูตรวิศวกรรมซอฟต์แวร์ (นานาชาติ) พระจอมเกล้าลาดกระบัง

น้องๆ หลายคนคงได้ติดตามการแข่งขัน Go ครั้งประวัติศาสตร์ เมื่อระหว่างวันที่ 8-15 มีนาคม 2559 แต่ครั้งนี้ไม่ใช่ระหว่างมนุษย์กับมนุษย์ แต่กลับเป็นระหว่างมนุษย์กับซอฟต์แวร์คอมพิวเตอร์ที่ชื่อ AlphaGo ส่วนมนุษย์นั้นเป็นแชมป์โลกผู้ไร้ทียมทานอย่าง Lee Sedol ชาวเกาหลีใต้ ผมในฐานะผู้หนึ่งที่เลือกเรียนปริญญาเอกด้านปัญญาประดิษฐ์ (Artificial Intelligence: AI) มาเมื่อ 17 ปีที่แล้ว จึงได้ติดตามการแข่งขันครั้งประวัติศาสตร์นี้ทุกนัด ทั้งหมด 5 นัด อย่างตื่นเต้นและใจจดใจจ่อ หวังว่าคอมพิวเตอร์จะทำได้อีกครั้ง ซึ่งเมื่อนับย้อนหลังไปเมื่อเกือบ 20 ปีที่แล้ว ในปี 1996 สมัยผมที่กำลังเรียนปริญญาเอกอยู่ที่กรุงลอนดอน ที่เคยได้ติดตามการแข่งขันหมากรุกระหว่าง Deep Blue ซูปเปอร์คอมพิวเตอร์ของบริษัท IBM กับ Gary Kasparov แชมป์โลกหมากรุกชาวรัสเซีย ในตอนนั้น Deep Blue ชนะเกมส์แรก แต่แล้ว Kasparov กลับมาชนะ 3 เกมส์ และเสมอกันไปอีก 2 เกมส์ สุดท้าย มนุษย์ก็ชนะไปด้วยคะแนน 4-2 (ชนะได้ 1 คะแนน เสมอได้ฝั้งละครึ่งคะแนน) หลังจากนั้นมา Deep Blue ได้รับการอัพเกรดความสามารถมาใหม่จนได้มีการแข่งขันนัดล้างตากันในครั้งที่ 2 ในปีต่อมา ซึ่งครั้งนี้ Deep Blue ได้ชนะไปแบบฉิวเฉียด ด้วยคะแนน 3.5 ต่อ 2.5 นับเป็นชัยชนะครั้งประวัติศาสตร์ครั้งแรกของเครื่องจักรกลคอมพิวเตอร์หรือถ้าจะว่าให้ถูกคือ โปรแกรมคอมพิวเตอร์ AI เหนือมนุษย์ที่เป็นยอดแชมป์โลก หลังจากนั้นเป็นต้นมา ก็ไม่มีการจัดการแข่งขันหมากรุกระหว่างกันอีกเลย คล้ายกับว่ามนุษย์ได้ยกธงขาวยอมแพ้ AI ในเกมส์หมากรุกไปแล้วนับตั้งแต่บัดนั้น

การแข่งขันหมากรุกระหว่าง Deep Blue ซูปเปอร์คอมพิวเตอร์ของบริษัท IBM กับ Gary Kasparov แชมป์โลกหมากรุกชาวรัสเซีย

        จากวันนั้นมาถึงวันนี้ เวลาผ่านไป 20 ปี มาครั้งนี้เป็นการเผชิญหน้ากันอีกครั้งระหว่างมนุษย์กับ AI กับเกมส์ที่ถือว่าน่าตื่นเต้นมากกว่า เนื่องจากเป็นเกมส์ที่เรียกว่ายากกว่าหมากรุกมาก คือเปลี่ยนจากสนามหมากรุกมาเป็นสนามหมากล้อม Go แต่ในครั้งนี้เกมส์น่าตื่นเต้นยิ่งกว่า เพราะความยากของเกมส์ Go และยิ่งด้วยเวลาที่ได้ผ่านไป 20 ปี วิทยาการด้าน AI และประสิทธิภาพของฮาร์ดแวร์คอมพิวเตอร์ได้พัฒนาไปอย่างก้าวกระโดด ในบทความของ Alan Levinovitz จากวารสาร Wired เขียนไว้อย่างน่าสนใจว่า สำหรับเกมส์หมากรุกพอเราเดินไปหนึ่งตา จำนวนหน้ากระดานในครั้งถัดไปที่จะออกมาได้ มีได้ถึง 400 แบบ แต่สำหรับเกมส์ Go จำนวนหน้ากระดานที่จะออกมาได้กลับมีมากถึง 129,960 แบบทีเดียว และนอกจากนี้ ในการเดินแต่ละครั้งในเกมส์หมากรุกเราอาจจะสามารถเดินได้ 35 ทางเลือก แต่ของ Go มีได้ถึง 250 ทางเลือก เทคนิควิธีการทางด้าน AI ที่ทีมพัฒนา AlphaGo นำมาประยุกต์ใช้ร่วมกันคือ การเลือกจุดตำแหน่งที่จะลงหมากโดยใช้เทคนิค Tree Search โดยเลือกตำแหน่งที่จะลงด้วยวิธีการสุ่มแบบ Monte Carlo และจำลองผลการเล่นสืบเนื่องจากการลงหมากนั้นล่วงหน้าไปหลายๆ ตาจนกระทั่งเกมส์นั้นจบแล้วได้ชัยชนะ รวมทั้งยังใช้เทคนิคการเรียนรู้ AI ด้วยวิธี Deep Neural Networks จากการสร้างชั้นโครงข่ายนิวรอลจำนวน 12 ชั้น เพื่อเรียนรู้รูปแบบหน้ากระดานต่างๆ ที่จะใช้คาดการณ์ว่ารูปหน้ากระดานแบบไหนที่จะชนะคู่ต่อสู้ได้

และแล้ววงการ AI ที่หลับไหลไปนานและถูกละทิ้งไปนาน ก็ถูกปลุกให้ตื่นขึ้นอีกครั้งอย่างกระหึ่มดังก้องด้วยชัยชนะของ AlphaGo เหนือแชมป์โลก Lee Sedol อย่างทล่มทลาย 4-1 เกมส์ ปิดฉากหน้าประวัติศาสตร์ครั้งสำคัญสำหรับมวลมนุษยชาติกับ AI บนสนามประลองยุทธอันสำคัญ ที่ AI ชนะไปอีกคำรบหนึ่ง

การแข่งขันหมากล้อม (Go) ระหว่างซอฟต์แวร์ AlphaGo ที่พัฒนาโดย Google กับแชมป์โลก Lee Sedol ชาวเกาหลีใต้

 

มารู้จักประวัติความเป็นมาของสาขา AI กัน

สาขา AI (ย่อมาจาก Artificial Intelligence) เริ่มต้นมาจากการริเริ่มของเหล่าปรมาจารย์ทางด้านคอมพิวเตอร์ในยุคปี 60 ที่ไปร่วมประชุมกันที่ Dartmouth College ในช่วงฤดูร้อนในสหรัฐ ในปี ค.ศ. 1956 เพื่อเสนอแนวคิดใหม่ๆ ที่ทำให้คอมพิวเตอร์มีความสามารถในการแก้ปัญหาเลียนแบบมนุษย์ได้ เช่น การเล่นเกมส์หมากรุก การแก้สมการทางพีชคณิต การเข้าใจภาษามนุษย์ การคิดวิเคราะห์โดยอาศัยครรกศาสตร์ เป็นต้น ซึ่งสิ่งเหล่านี้เป็นความสามารถแปลกไหม่ในยุคนั้นโดยไม่มีศาสตร์อันใดในยุคนั้นรองรับ ดังนั้นเหล่าปรมาจารย์ที่มาจากมหาวิทยาลัยและบริษัทชั้นนำในสหรัฐในยุคนั้น มีตั้งแต่ MIT, Stanford, Princeton, Carnegie Mellon, Dartmouth, IBM จึงเห็นพร้องให้ตั้งสาขาใหม่ขึ้นมาในวิทยาการคอมพิวเตอร์ (Computer Science) และ John McCarthy ก็ได้เสนอให้เรียกสาขาใหม่นี้ว่า “Artificial Intelligence” หรือที่เรารู้จักกันสั้นๆ ว่า “AI” นั่นเอง

แท้ที่จริงแล้วแนวคิดของเครื่องจักรที่สามารถทำงานเลียนแบบความชาญฉลาดของคนไม่ได้เริ่มมีในปี 1956 ที่สหรัฐอเมริกา แต่มีมาก่อนหน้านั้นแล้วที่เมือง Manchester ประเทศอังกฤษ คือในปี 1950 Alan Turing บิดาแห่งคอมพิวเตอร์ ผู้ที่เสนอแนวคิดต้นแบบของเครื่องคอมพิวเตอร์เป็นคนแรกของโลก ได้เสนอแนวคิดที่ว่าเครื่องคอมพิวเตอร์ในอนาคตจะมีความฉลาดเลียนแบบมนุษย์ได้ และได้อธิบายถึงคุณลักษณะดังกล่าวโดยอาศัยการทดสอบที่ชื่อ Turing Test ซึ่งเป็นการทดสอบง่ายๆ โดยให้มีห้องที่ปิดประตู 2 ห้อง ห้องหนึ่งมีคนอยู่ข้างใน ส่วนอีกห้องมีเฉพาะเครื่องคอมพิวเตอร์อยู่ ผู้ทดสอบอยู่ภายนอกห้องทั้งสอง โดยไม่รู้ว่ามีอะไรอยู่ในห้องไหนบ้าง แต่จะมีเครื่อง Terminal จอภาพและคีย์บอร์ดภายนอกห้องทั้งสอง และผู้ทดสอบสามารถพิมพ์ Chat กับสิ่งที่อยู่ในห้องทั้งสองได้จนกระทั่งพอใจ ซึ่งเมื่อไรก็ตามที่ผู้ทดสอบภายนอกหลังจาก Chat กับสิ่งที่อยู่ภายในทั้งสองห้องแล้ว ไม่สามารถแยกแยะได้เลยว่าห้องไหนเป็นคนอยู่ ห้องไหนเป็นเครื่องคอมพิวเตอร์อยู่ เมื่อถึงขั้นนั้นแล้ว Turing จะถือว่าเครื่องคอมพิวเตอร์เครื่องนั้นมีความสามารถถึงขั้นเป็น “Machine Intelligence”

 

AI ไม่ใช่แค่เกมส์คอมพิวเตอร์

        สาขา AI เป็นสาขาที่ต้องการพัฒนาขีดความสามารถของคอมพิวเตอร์ปัจจุบันให้ถึงขั้นสามารถทำงานได้อย่างมนุษย์ คือสามารถแก้ไขปัญหายากๆ ที่มนุษย์เท่านั้นที่ทำได้ ดังนั้นจึงไม่ใช่จำกัดเฉพาะเจาะจงที่เป็นเกมส์คอมพิวเตอร์เท่านั้น หัวข้อขอบเขตต่างๆ ที่ศึกษาในสาขา AI ได้แก่ Machine Learning, Logical Reasoning, Natural Language Processing, Machine Translation, Computer Game, Expert System, Planning, Intelligent Control, Robotic, Computer Vision, Knowledge Representation, Semantic Web, Big Data Analysis ฯลฯ

 

แล้วถ้าสนใจ จะเรียน AI ได้ที่ไหน ? เรียนจบมาแล้วจะทำงานอะไร ?

        สาขา AI เป็นแขนงย่อยในสาขาวิทยาการคอมพิวเตอร์ (Computer Science) ซึ่งในหลักสูตรวิศวกรรมซอฟต์แวร์ (หลักสูตรนานาชาติ) ที่พระจอมเกล้าลาดกระบัง เป็นวิชาบังคับที่นักศึกษาชั้นปีที่ 3 ต้องเรียนกันทุกคน ทั้งนี้เนื่องจากเราเล็งเห็นถึงความสำคัญของวิชานี้ในอนาคตของอุตสาหกรรมซอฟต์แวร์คอมพิวเตอร์ ซึ่งกระผมเป็นอาจารย์ผู้สอนวิชานี้เอง ในการเรียนวิชานี้ ผมจะให้งานเป็นโปรเจคมีเวลาให้ 3 เดือน ให้นักศึกษาสร้างสรรค์พัฒนาโปรแกรม AI ด้วยตนเองโดยใช้ความรู้ที่เรียนไปในวิชานำไปประยุกต์แก้ปัญหา ปีที่แล้วเรามีนักศึกษากลุ่มหนึ่งซึ่งพัฒนาโปรแกรมแก้ปัญหาเกมส์ Rubik ได้เองอัตโนมัติ โดยใช้เวลาคำนวณเร็วมาก เกมส์นี้ถือว่าเป็นเกมส์ที่ยากพอสมควร นอกจากนี้หลักสูตรของเราก็กำลังจะปรับปรุงเพื่อเพิ่มแขนงสาขาใหม่คือ Intelligent System ซึ่งนักศึกษาในหลักสูตรที่จะปรับปรุงใหม่สามารถเลือกเรียนสาย Intelligent System ซึ่งก็คือ AI เป็น Major ได้อีกด้วย

http://3.bp.blogspot.com/-qDrqapJpAOI/TgFsWaTxApI/AAAAAAAAAL4/GK_GOJU-P4Y/s1600/rubik_cube.jpeg

เกมส์ Rubik

        น้องๆ อาจจะถามว่าเรียน AI แล้ว จะนำความรู้ไปใช้ทำงานอะไร ก็ขอตอบว่าความรู้ AI สามารถนำไปใช้พัฒนาซอฟต์แวร์ให้มีความชาญฉลาด และมีอาชีพในการพัฒนาซอฟต์แวร์ดังกล่าว ดังที่เห็นใน Search engine ของ Google โปรแกรมพูดคุยกับคน สั่งงานด้วยเสียงจำพวก Siri, Cortana, ระบบนำทางในรถยนต์ม ระบบเรียกรถแท็กซี่ เช่น Uber, รถที่ขับเคลื่อนด้วยตัวเอง, หุ่นยนต์ในโรงงาน, หุ่นยนต์กู้ภัย, Smart Home, เกมส์คอมพิวเตอร์ และอีกมากมาย ซึ่งถ้าใครได้ติดตามข่าวก็จะเห็นว่าบริษัทซอฟต์แวร์ยักษ์ใหญ่ตอนนี้ ได้แก่ Facebook, Samsung, Google, Apple, IBM, Microsoft ต่างกำลังหันมาทุ่มทุนพัฒนาแผนกวิจัย AI และซอฟต์แวร์ AI กันถ้วนหน้า ซึ่งเราจะได้เห็นความเปลี่ยนแปลงในอุตสาหกรรมคอมพิวเตอร์กันในไม่ช้านี้

        การเรียนในสาขานี้ ถือว่าเป็นความใฝ่ฝันของใครหลายคนที่จะอยากจะสร้างสรรค์ซอฟต์แวร์คอมพิวเตอร์ที่ชาญฉลาดที่จะสามารถสร้างประโยชน์อย่างมากให้กับมวลมนุษยชาติ

 

ข้อมูลอ้างอิง

เนื้อหาหลักสูตรวิศวกรรมซอฟต์แวร์ (นานาชาติ) พระจอมเกล้าลาดกระบัง