ปัญญาประดิษฐ์ (AI : Artificial Intelligence) เป็นศาสตร์หนึ่งของวิทยาศาสตร์คอมพิวเตอร์ที่มีจุดมุ่งหมายเพื่อทำให้คอมพิวเตอร์มีความสามารถคล้ายมนุษย์หรือเลียนแบบพฤติกรรมมนุษย์ โดยเฉพาะความสามารถในการคิดเองได้ ความสามารถเหล่านี้เกิดจากการออกแบบและวิเคราะห์ความเป็นไปได้ในแนวทางต่าง ๆที่มนุษย์ผู้เขียนได้วางแนวทางไว้ จึงถือว่ามนุษย์เป็นผู้สร้างหรือประดิษฐ์ปัญญาให้แก่คอมพิวเตอร์นั่นเอง รูปที่ 1 ปัญญาประดิษฐ์ ที่มา : http://www.tamaraberg.com/teaching/Spring_14/AI.jpg มุมมองต่อปัญญาประดิษฐ์ที่แต่ละคนมีอาจไม่เหมือนกันขึ้นอยู่กับว่าต้องการความฉลาดโดยคำนึงถึงการทำงานหรือพฤติกรรมที่มีต่อสิ่งแวดล้อมในรูปแบบใด ปัญญาประดิษฐ์จึงถูกแบ่งออกเป็น 4 กลุ่มอิงตามพฤติกรรมการทำงานเหล่านี้ อันได้แก่ การกระทำคล้ายมนุษย์ (Acting Humanly) - สื่อสารกับมนุษย์ได้ด้วยภาษาที่มนุษย์ใช้ เช่น การใช้เสียงสั่งให้คอมพิวเตอร์ทำงานต่าง ๆ ให้ - มีประสาทสัมผัสคล้ายมนุษย์ เช่น การมองเห็นภาพ การรับเสียง การรับสัมผัส เป็นต้น - ทำงานต่าง ๆ ที่มนุษย์เป็นผู้ทำ เช่น เก็บกวาด สร้างสิ่งของ ออกแบบสิ่งต่าง ๆ เป็นต้น - เกิดการเรียนรู้ได้ โดยสามารถตรวจจับรูปแบบการเกิดของเหตุการณ์ แล้วตอบสนองหรือปรับตัวเข้ากับสิ่งแวดล้อมที่เปลี่ยนไปได้ การคิดคล้ายมนุษย์ (Thinking Humanly) ก่อนที่จะทำให้คอมพิวเตอร์คิดอย่างมนุษย์ได้ ต้องรู้ก่อนว่ามนุษย์มีกระบวนการคิดอย่างไร ซึ่งการวิเคราะห์ลักษณะการคิดของมนุษย์เป็นศาสตร์ด้าน วิทยาการปัญญา(Cognitive Science) เป็นการศึกษา สหวิทยาการ หรือวิทยาการหลายสาขา อันประกอบด้วย ประชานจิตวิทยา(Cognitive Psychology) ประสาทจิตวิทยา(Neuropsychology) ภาษาศาสตร์(Philology) ปรัชญา(Philosophy) วิทยาการคอมพิวเตอร์(Computer Science) มานุษยวิทยา (Anthropology) และ จิตชีววิทยา(Psychobiology) หรือสาขาประยุกต์ที่เกี่ยวข้อง ทั้งนี้เพื่อการศึกษาวิจัยภาวะของจิตและกระบวนการที่มนุษย์ควบคุมเปลี่ยนแปรยักย้ายข้อมูลข่าวสาร การรู้ได้ พฤติกรรม การรับรู้ ความสนใจ การจำ การแก้ปัญหา การคำนวณ การให้เหตุผล การตัดสินใจ ความสัมพันธ์ระหว่างการคิด อารมณ์ และการกระทำ บนพื้นฐานทางวิทยาศาสตร์ การคิดอย่างมีเหตุผล (Thinking Rationally) เป็นการสร้างปัญญาประดิษฐ์ให้คิดวิเคราะห์โดยใช้หลักตรรกศาสตร์(Logic)ในการคิดหาคำตอบอย่างมีเหตุผล การพิจารณาเลือกแนวทางที่สมเหตุสมผลที่สุดจากข้อมูลและหลักฐานที่มีอยู่ การใช้เหตุผลเป็นทักษะวิธีการคิดที่จำเป็นต่อการตัดสินใจสรุป และเป็นทักษะการคิดที่สำคัญของการคิดอย่างมีวิจารณญาณ ดังนั้นการคิดอย่างมีวิจารณญาณจึงจำเป็นต้องใช้เหตุผลที่ดีเพื่อนำไปสู่ข้อสรุปอย่างสมเหตุสมผลและคุณลักษณะของการคิดอย่างมีวิจารณญาณมีความสัมพันธ์กับการใช้เหตุผลแบบตรรกศาสตร์หรือใช้เหตุผลแบบอุปมานและอนุมาน กระทำอย่างมีเหตุผล (Acting Rationally) เป็นความสามารถในการกระทำ หรือเป็นตัวแทนในระบบอัตโนมัติต่าง ๆ สามารถกระทำอย่างมีเหตุผล กระทำการเพื่อบรรลุเป้าหมายที่ได้ตั้งไว้ เช่น ในระบบขับรถอัตโนมัติที่มีเป้าหมายว่าต้องไปถึงเป้าหมายในระยะทางที่สั้นที่สุด ต้องเลือกเส้นทางที่ไปยังเป้าหมายที่สั้นที่สุดที่เป็นไปได้ หรือ เกมหมากรุกมีเป้าหมายว่าต้องเอาชนะคู่ต่อสู้ ต้องเลือกเดินหมากที่จะทำให้คู่ต่อสู้แพ้ให้ได้ เป็นต้น AIML เกี่ยวข้องอย่างไรกับปัญญาประดิษฐ์ AIML หรือชื่อเต็ม ๆ คือ Artificial Intelligence Mark-up Language เป็นภาษาปัญญาประดิษฐ์ที่พัฒนาจากภาษา XML (Extensive Markup Language) ช่วยให้มนุษย์สามารถถ่ายทอดความรู้ หรือข้อมูลลงไปยังระบบสนทนาโต้ตอบอัตโนมัติที่มีพื้นฐานบนโปรแกรม A.L.I.C.E (Artificial Linguistic Internet Computer Entity) ซึ่งเป็นโปรแกรมที่สร้างระบบโต้ตอบอัตโนมัติด้วยปัญญาประดิษฐ์สามารถโหลดได้ฟรี ถูกสร้างขึ้นโดยชุมชนออนไลน์ที่ชื่อว่า Alicebot และ Dr. Richard S. Wallace รูปที่ 2 A.L.I.C.E ที่มา : http://www.alicebot.org/logo-info.html AIML มีลักษณะของข้อมูลที่จัดเก็บเรียกว่า AIML objects โดยสร้างขึ้นเป็นหน่วยข้อมูลพื้นฐาน 2 ส่วนที่เรียกว่า “Topics” และ “Categories” โดยทั้ง Topics และ Categories สามารถจัดเก็บข้อมูลในรูปข้อมูลแบบอ้างอิงหรือในรูปข้อมูลแบบไม่อ้างอิงก็ได้ โดยถ้าเป็นข้อมูลแบบอ้างอิงจะสามารถสื่อความหมายให้โปรแกรมรู้ได้ว่าข้อมูลที่เก็บเป็นข้อมูลแบบใด มีความหมายอย่างไร ใกล้เคียงกับข้อมูลอื่น ๆ รึไม่อย่างไร ได้อีกด้วย รูปที่ 3 A.L.I.C.E and judge Chating ที่มา : http://alice.pandorabots.com/ หน่วยข้อมูล Categories ของ AIML แต่ละ Categories จะประกอบด้วย คำถาม คำตอบ และตัวเลือก โดยตัวคำถามหรือประโยคจะเรียกเป็น “Patern” คำตอบหรือผลลัพธ์จะเรียกเป็น “Template” ส่วนตัวเลือกจะมี 2 ประเภทคือ “That” และ “Topic” รูปแบบข้อมูลที่ใช้ในภาษา AIML จะมีรูปแบบการพัฒนาที่ง่ายโดยมีส่วนประกอบเพียงแต่ ตัวอักษร ช่องว่าง สัญลักษณ์ _ และสัญลักษณ์ * เพียงเท่านั้น ทำให้สามารถสร้างข้อมูลหรือประโยคทั่วไปที่ประกอบด้วยคำและตัวเลขได้ แต่ยังสามารถคั่นแต่ละคำด้วยช่องว่าง _ และ * ได้ - ใน ภาษา AIML รุ่นแรก (AIML1.0) อนุญาตให้ใส่ช่องว่างหรือสัญลักษณ์คั่นได้เพียงแค่อันเดียว - ในรุ่นถัดมา (AIML1.01) อนุญาตให้ใส่ช่องว่างหรือสัญลักษณ์คั่นได้โดยไม่จำกัดจำนวนแต่มีเงื่อนไขว่าต้องเขียนให้อยู่ในรูปแบบประโยคที่ไม่ซับซ้อน และในส่วนของผลลัพธ์ที่ได้ จะส่งข้อมูลได้เพียงแค่ตัวหนังสือทั่วไปที่ไม่ซับซ้อนเท่านั้น - ในรุ่นต่อ ๆ มาถึงปัจจุบัน มีการพัฒนาต่อยอดจนทำให้ AIML สามารถตอบสนองไปยังโปรแกรมอื่น ๆ ที่อยู่ในเครื่อง เช่น นำผลลัพธ์ไปใส่ในเอกสารเปล่า สั่งเปิดโปรแกรม ถามเงื่อนไขหรือขอข้อมูลเพิ่มเติมจากผู้ใช้ หาข้อมูลที่ใกล้เคียงที่จะเก็บอยู่ในระบบเพื่อนำมาให้แก่ผู้ใช้ และเพิ่มข้อมูลใหม่ ๆ จัดเก็บลงไปใน “Patern” เพื่อนำไปใช้ในโอกาสต่อ ๆ ไปได้อีกด้วย โดยในขณะนี้ AIML สนับสนุนการพัฒนาส่วนเชื่อมต่อกับโปรแกรมหรือภาษาอื่น ๆ อยู่ 2 วิธี วิธีแรกคือ ผ่านทาง <system> ซึ่งแท็ก(tag) นี้สามารถสั่งการทำงานและเพิ่มข้อมูลของโปรแกรมในระบบปฏิบัติการที่ผู้ใช้อนุญาตให้เข้าถึงผ่านทางคำสั่งแบบ Shell Command วิธีที่สองคือ ผ่านทาง <javascript> ซึ่งสามารถนำไปใช้สั่งงานต่าง ๆ ผ่านทางคำสั่งในรูปแบบเว็บหรือในรูปแบบออนไลน์ต่าง ๆ ได้ ในส่วนการเขียน แท็ก เพื่อสร้างตัวเลือกตอบทั้ง 2 ประเภท ประเภทแรก “That” จะใช้ แท็ก คือ <that>โดยจัดเก็บใน “Categories” และรูปแบบของข้อมูลต้องคล้ายคลึงกับคำถามหรือข้อมูลล่าสุดที่ผู้ใช้ถาม ประเภทที่สอง “Topic” จะใช้แท็ก คือ <topic> จะเอาไว้ภายนอก “Categories” เพื่อใช้ในการจัดเก็บ และจัดประเภทของ “Categories” เข้าไว้ด้วยกัน รูปแบบการเขียน AIMLไม่ได้เหมือนการเขียนถามตอบด้วยฐานข้อมูลโดยทั่วไป แต่วิธีการที่จะนำเอา AIML ไปโยงกับฐานข้อมูลเดิมนั้นไม่ใช้เรื่องยากเนื่องจากถูกออกแบบมาให้อยู่ในรูปแบบที่พื้นฐานที่สุดคลายคลึงกับภาษา XML ซึ่งโยงเข้ากับฐานข้อมูลทั่วไปได้อยู่แล้ว และยังมี่จุดเด่นที่เหนือกว่าโดยมีการเพิ่มแท็ก <srai> โดยแท็กนี้จะทำหน้าที่จับคู่คำถาม คำตอบ ตัวเลือกอื่นๆ ที่เกี่ยวข้องกันเข้าไว้ด้วยกันได้อีกด้วย แท็กในภาษา AIML แท็ก <aiml> เป็นแท็กที่ใช้เมื่อเริ่มต้น และสิ้นสุดเอกสาร AIML แท็ก <category> เป็นแท็กที่เริ่มต้น และสิ้นสุดการเพิ่ม 1 ฐานความรู้ของแชทบอท แท็ก <pattern> เป็นแท็กที่ใช้เปรียบเทียบประโยคที่ผู้ใช้พิมพ์สนทนากับแชทบอท แท็ก <template> เป็นแท็กที่โต้ตอบผู้ใช้ แท็ก <random> เป็นแท็กที่ใช้ในการสุ่มประโยคเพื่อโต้ตอบผู้ใช้ แท็ก <li> เป็นแท็กที่ใช้เป็นประโยคตัวเลือกในการสุ่มประโยคเพื่อโต้ตอบผู้ใช้ แท็ก <that> เป็นแท็กที่อ้างถึงบทสนทนาที่ผ่านมา แท็ก <think> เป็นแท็กที่ใช้กำหนดให้แชทบอทมีความนึกคิด ซึ่งจะไม่แสดงผลลัพธ์นั่นกลับไปยังผู้ใช้เป็นวิธีหนึ่งที่ทำให้บทสนทนามี ความกระชับมากยิ่งขึ้น แท็ก <topic> เป็นแท็กที่เพิ่มประเด็น หรือหัวข้อในกับแชทบอท แท็ก <srai> เป็นแท็กที่ใช้อ้างอิงถึง Category อื่น ๆ ตัวอย่างเช่น เมื่อผู้ใช้พิมพ์ประโยค "คุณ คือ ใคร” ซึ่งตรง <pattern> ที่กำหนดไว้ แชทบอทจะตอบกลับมาตามที่กำหนดไว้ใน <template> ว่า "ดิฉันคือแชทบอท มีชื่อว่าอลิซ”การกำหนดแท็ก <pattern> และ แท็ก <template> นั้นจะต้องกำหนดภายใต้ <category> </category> เท่านั้น และภายในแท็ก <category> จะมี <pattern> และ แท็ก <template> ได้เพียง 1 ชุดเท่านั้น แท็ก <think> เป็นแท็กที่ใช้กำหนดให้แชทบอทมีความนึกคิด ซึ่งไม่แสดงผลลัพธ์นั้นกลับไปยังผู้ใช้ ในที่นี้ แชทบอทจะไปกำหนด <topic> เป็น "Me” ซึ่งบ่งบอกว่าคำถามล่าสุดที่ถามคือถามเกี่ยวกับตัวแชทบอทเอง เครื่องมือที่ใช้ในการเขียน AIML เครื่องมือที่จำเป็นสำหรับการเขียน AIML ได้แก่ Text Editor AIML Interpreter และบราวเซอร์ Text Editor คือโปรแกรมที่ไว้ใช้สำหรับการเขียนโค้ดคำสั่งของภาษาต่างๆ ที่มีลักษณะเป็นไฟล์ตัวอักษร โปรแกรมที่ Text Editor นิยมใช้ เช่น Notepad, Wordpad และ EditPlus เป็นต้น การเขียน AIML สามารถใช้ Text Editor โปรแกรมใดก็ได้ AIML Interpreter เป็นซอฟต์แวร์ที่ใช้ในการประมวลภาษา AIML ซึ่งพัฒนามาจากภาษาต่าง ๆ เช่น Lisp, Java, PHP, Ruby, Perl, Pascal, Python, .Net, C++ และ SETL ซึ่งมีความสามารถ และฟังก์ชั่นแตกต่างกันไป ตัวอย่าง AIML Interpreter เช่น Chatterbean, libaiml, Rebecca, AIML, J-Alice เป็นต้น บราวเซอร์ (Browser)ใช้ในการทดสอบผลลัพธ์ของแชทบอทที่เขียนขึ้น โดยบราวเซอร์ที่นิยมใช้ได้แต่ Internet Explorer Chrome และ Firefox ซึ่งบราวเซอร์สามารถรับการทำงานของแชทบอทได้เป็นอย่างดี เอกสารอ้างอิง วิกิพีเดีย สารานุกรมเสรี. ปัญญาประดิษฐ์. (ออนไลน์). แหล่งที่มา : https://th.wikipedia.org/wiki/ปัญญาประดิษฐ์. สืบค้นเมื่อ 21 มิถุนายน 2558 Addada. วิทยาการปัญญาคืออะไร. (ออนไลน์). แหล่งที่มา : http://addada.exteen.com/20100928/entry-1. สืบค้นเมื่อ 23 มิถุนายน 2558 Doubly Aimless. A Tutorial for adding knowledge to your robot [cited 2015 June 24]. Available from: http://www.pandorabots.com/pandora/pics/aimless/tutorial.htm Dr. Richard S. Wallace. AIML Overview [cited 2015 June 23]. Available from: http://www.pandorabots.com/pandora/pics/wallaceaimltutorial.html Dr. Richard S. Wallace. The Anatomy of A.L.I.C.E [cited 2015 June 24]. Available from: http://www.alicebot.org/anatomy.html Noel Bush. Artificial Intelligence Markup Language (AIML) Version 1.0.1 [cited 2015 June 24]. Available from: http://www.alicebot.org/TR/2001/WD-aiml/ Stuart Russell and Peter Norvig. Artificial Intelligence: Modern Approach, 2nd Edition. Prentice Hall 2003, New Jersey, USA
ความคิดเห็น