การเขียนโปรแกรมเชิงตรรกะ (Logic programming) ผู้อ่านที่เคยศึกษาภาษาคอมพิวเตอร์มาระดับหนึ่ง จะรู้จักภาษาที่มีชื่อเสียงในการเขียนโปรแกรมเชิงตรรกะ คือ ภาษาโปรล็อก (prolog) ซึ่งเกิดมานานมากกว่า 30 ปี และในปัจจุบันยังมีการใช้งานในการศึกษาเรื่องปัญญาประดิษฐ์ (AI) ของมหาวิทยาลัย (รวมทั้งในไทย) และยังมีการใช้งานอยู่เพื่อทำงานวิจัยปัญญาประดิษฐ์ (AI) อย่างบริษัท IBM และอื่น ๆ
โดยการเขียนโปรแกรมเชิงตรรกะมีหลักการคือ ความจริง + กฎ = ผลลัพธ์
ในภาษาไพทอน ได้มีนักพัฒนาได้แรงบันดาลใจจากภาษาโปรล็อก จึงได้มีการพัฒนาโมดูลเพื่อให้สามารถเขียนโปรแกรมเชิงตรรกะในภาษาไพทอนได้ หนึ่งในนั้นคือ โมดูล Pyke
โมดูล Pyke มีความสามารถดังนี้
- Expert System
- Automatic Programming: Generates Python Programs
- Backward Chaining
- Foreward Chaining
- Multiple Knowledge Engines and Rule Bases
- Rule Base Inheritance
และ ใช้ MIT License รองรับทั้งภาษาไพทอน 2 และภาษาไพทอน 3
สามารถโหลดไฟล์ติดตั้งได้จาก http://sourceforge.net/projects/pyke/files/pyke/1.1.1/
- Python 2 โหลดไฟล์ http://sourceforge.net/projects/pyke/files/pyke/1.1.1/pyke-1.1.1.zip/download
- Python 3 โหลดไฟล์ http://sourceforge.net/projects/pyke/files/pyke/1.1.1/pyke3-1.1.1.zip/download
แตกไฟล์ แล้วเปิดคอมมานด์ไลน์ ใช้คำสั่ง cd เข้าไปยังโฟลเลอร์ที่แตกไฟล์ออกมา จนถึงภายในโฟลเลอร์ที่เก็บไฟล์ setup.py ใช้คำสั่งติดตั้ง
python setup.py install
เอกสารการใช้งาน
วิดีโอจากงาน Pycon 2008 https://www.youtube.com/watch?v=GlT0N79Y_LE
ตัวอย่างโครงการทำ AI ด้วย pyke ในภาษาไพทอน https://github.com/bok/AI-with-Pyke
สามารถอ่านเอกสารได้ที่ http://pyke.sourceforge.net
ชุมชนนักพัฒนาโมดูล pyke http://groups.google.com/group/pyke
ประกาศจากทางบล็อก python3.wannaphong.com หลังจากพรบ.ลิขสิทธิ์ ได้ออกมาเมื่อวันที่ 4 สิงหาคม ที่ผ่านมา ทางผมได้ตัดสินใจที่จะเปลี่ยนสัญญาอนุญาตบทความทั้งหมดในบล็อกนี้ โดยมีผลกับบทความทั้งหมดในบล็อกนี้ นับตั้งแต่วันที่ 8 สิงหาคม พ.ศ.2558 เวลา 08.08 น. นี้เป็นต้นไป เปลี่ยนไปใช้ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า 3.0 ประเทศไทย. โดยสามารถนำบทความทั้งหมดนี้ไปใช้ในการศึกษาได้ แต่ห้ามนำไปใช้ในเชิงการค้าทุกรูปแบบโดยไม่ได้ขออนุญาติ (นับตั้งแต่ผมทำบล็อกมานี้ ผมไม่เคยเจอคนมาคัดลอกบทความของบล็อกผมครับ แต่หลัง ๆ มาเริ่มมีการนำบทความไปดัดแปลงแต่ไม่ได้อ้างอิง และใช้เชิงการค้าด้วย ผมจึงตัดสินใจเปลี่ยนครับ) แต่โค้ดในบทความนี้ยังคงเป็นสาธารณะ ไม่มีสัญญาอนุญาตครับ (ยกเว้น บางโค้ดที่มีการหมายเหตุไว้) และบล็อกนี้จะไม่มีโฆษณาแบบตามเว็บต่าง ๆ ครับ เพราะผมทำบล็อกนี้ไม่แสวงหาผลกําไร แต่ทำบล็อกนี้เพราะผมชื่นชอบในภาษาไพทอนนี้ครับ วรรณพงษ์ ภัททิยไพบูลย์ ผู้ดูแลบล็อก python3.wannaphong.com
ขอขอบคุณผู้อ่านที่ติดตามบทความของผมมาโดยตลอดครับ
ขอบคุณครับ
0 ความคิดเห็น:
แสดงความคิดเห็น
แสดงความคิดเห็นได้ครับ :)