10
Logic Programming โโโโโโโ โโโโโโโโโ

Logic Programming

  • Upload
    xuxa

  • View
    34

  • Download
    2

Embed Size (px)

DESCRIPTION

Logic Programming. โปรแกรมเชิงตรรกะ. Characteristics. ไม่ต้องให้รายละเอียดทุกขั้นตอน สะสมข้อมูลเป็นฐานความรู้ ( Knowledge base) ตัวอย่าง นาย ก. เป็นพี่นาย ข. นาย ข. เป็นพี่นาย ค. นาย ก. เป็นพี่นาย ค. ด้วย สรุป. ภาษา LP. องค์ประกอบของภาษา Object : สิ่งที่เราสนใจ - PowerPoint PPT Presentation

Citation preview

Page 1: Logic Programming

Logic Programming

โปรแกรมเชิงตรรกะ

Page 2: Logic Programming

Characteristicsไม�ต�องให้�รายละเอ�ยดทุ�กขั้��นตอนสะสมขั้�อม ลเป!นฐานความร � (Knowledge base)

ต�วอย�าง นาย ก . เป!นพี่�&นาย ขั้. นาย ขั้ . เป!นพี่�&นาย ค. นาย ก . เป!นพี่�&นาย ค . ด�วย สรุ�ป

Page 3: Logic Programming

ภาษา LPองค)ประกอบขั้องภาษา

Object : ส&งทุ�&เราสนใจ Relation : อธิบายค�ณสมบ�ต/ความส�มพี่�นธิ)ขั้อง Obj. ร ปแบบ relation-name (list of object names) ต�วอย�าง FATHER(TOM, JANE).

LARGER(2,1). MALE(ROBERT). COST(CAR1, 256000).

Page 4: Logic Programming

ภาษา LP (ต�อ)วธิ�การเขั้�ยนโปรแกรม

ประโยคค.าส�&ง 3 ร ปแบบ•เป/าห้มาย/ค.าถาม (Goal)•ขั้�อเทุ1จจรง/ฐานความร � (Facts)•กฎเกณฑ์) (Rules)

แต�ละประโยคค�&นด�วย “.” แต�ละโปรแกรมต�องม�อย�างน�อย 1 ค.าถาม ขั้�อเทุ1จจรง และกฏเกณฑ์)ม�มากกว�าห้น5&งได�

Page 5: Logic Programming

ภาษา LP (ต�อ)ค.าถาม (Goal) ม� 2 ประเภทุ

ไม�ม�ต�วแปร : จรง / เทุ1จ โดยใชิ�ขั้�อเทุ1จจรงและกฎเกณฑ์) ต�วอย�าง ?FATHER(JOHN,SUE).

TRUE ม�ต�วแปร : object ทุ��งห้มดทุ�&สอดคล�องก�บขั้�อเทุ1จจรงทุ�&ก.าห้นดต�วอย�าง ?ADJACENT(x,CALIFORNIA).

x = OREGON x = NEVADA x = ARIZONA

Page 6: Logic Programming

ภาษา LP (ต�อ)ขั้�อเทุ1จจรง (Fact) ม� 2 ประเภทุ

ไม�ม�ต�วแปร : ความส�มพี่�นธิ)ระห้ว�าง object ต�วอย�าง FATHER(JOHN,SUE). ม�ต�วแปร : ความส�มพี่�นธิ)ขั้อง obj . ทุ��งห้มดขั้องโปรแกรม ต�วอย�าง FEMALE(person).

FRIENDS(x, JACK).

Page 7: Logic Programming

ภาษา LP (ต�อ)กฎเกณฑ์) (Rule)

ประกอบด�วย Fact และ List of facts ร ปแบบ c if h1, h2, …, hn for n > 0

ต�วอย�าง PARENT(JOHN,SUE) if FATHER(JOHN,SUE). PARENT(x,y) if FATHER(x,y). MOTHER(x,y) if PARENT(x,y), FEMALE(x).

Page 8: Logic Programming

ภาษาโปรลอกPROLOG : PROgramming in LOGicAlian Colmerauer ชิาวฝร�&งเศสสร�างเม8&อ 1972

นยมใชิ�ในงานวจ�ยด�านคอมพี่วเตอร)ในย�โรปและญี่�&ป�:น

คล�ายก�บภาษา LP แตกต�างก�นเล1กน�อยในด�านการเขั้�ยนโปรแกรม

Page 9: Logic Programming

ภาษาโปรลอก (ต�อ)ชิ8&อขั้อง Object และ relation ขั้5�นต�น

ด�วยอ�กษรต�วเล1กชิ8&อต�วแปร ขั้5�นต�นด�วยอ�กษรต�วให้ญี่�ค.าถาม ขั้5�นต�นด�วย ?-กฎเกณฑ์)ม�ร ปแบบด�งน��

c :- h1, h2,…,hn for n > 0

Page 10: Logic Programming

Imperative Language imperare = to commandแนวคดพี่8�นฐานตามสถาป;ตยกรรมแบบ Von

Neumannประกอบด�วยชิ�ดค.าส�&งทุ�&เปล�&ยนค�าในห้น�วยความจ.าล�กษณะส.าค�ญี่

ต�วแปร (variables)การก.าห้นดค�า (Assignment)การทุ.าซ้ำ.�า (Repetition)