งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2"— ใบสำเนางานนำเสนอ:

1 การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2
เรียนรู้หลักการค้นหาคำตอบอย่างฉลาด ด้วยวิธีการทางปัญญาประดิษฐ์ ภาคที่สอง การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2 การค้นหาตาบู (Tabu Search) มีน-เอ็นอะแนลิซิส (Mean-end analysis)

2 การค้นหาตาบู (Tabu Search)
ตาบู (Tabu หรือ Taboo) การค้นหาตาบู จะกำหนดเส้นทางต้องห้ามในการค้นหา เพราะเชื่อว่า เส้นทางนั้นอาจไม่นำไปสู่คำตอบ หรือเป็นเส้นทางที่เคยค้นหามาแล้ว การกำหนดเส้นทางต้องห้าม เกิดจากการกระทำผ่านตัวกระทำการหรือหน่วยย่อยของตัวกระทำการ โดยกำหนดให้มีสภาวะเป็น สภาวะต้องห้าม ทำให้เส้นทางที่สร้างขึ้นเป็นเส้นทางต้องห้ามไปด้วย แปลว่า ต้องห้าม

3 การค้นหาตาบู (Tabu Search) (ต่อ)
การค้นหาตาบูมีแนวคิดว่า การค้นหาที่ดีต้องมีการสำรวจแบบตอบสนอง (Responsive Exploration) พร้อมกับการใช้หน่วยความจำปรับตัวได้ (Adaptive Memory) การสำรวจแบบตอบสนอง มีหลักในการสำรวจอยู่ 2 อย่างคือ ความละเอียด ความหลากหลาย หน่วยความจำปรับตัว ถูกสร้างขึ้นมาเพื่อสนับสนุนการสำรวจแบบตอบสนอง โดยการจำสิ่งที่ต้องห้ามไว้

4 การค้นหาตาบู (Tabu Search) (ต่อ)
รูปที่ 1 ปริภูมิคำตอบ (Solution Space)

5 การค้นหาตาบู (Tabu Search) (ต่อ)
รูปที่ 2 การค้นหาตาบูบนปริภูมิคำตอบ

6 หน่วยความจำปรับตัว หน่วยความจำปรับตัว แบ่งออกเป็น 2 ชนิด
หน่วยความจำตามเวลา (Recency-Base Memory) ข้อมูลที่อยู่ในหน่วยความจำจะปรับเปลี่ยนไปตามการค้นหา หน่วยความจำตามความถี่ (Frequency-Base Memory) ใช้เก็บข้อมูลที่พบบ่อยๆในการค้นหา

7 หน่วยความจำระยะสั้น หน่วยความจำระยะสั้น (Short Term Memory) ทำหน้าที่เป็นหน่วยความจำตามเวลา หน่วยความจำระยะสั้นใช้เก็บคำตอบหรือคุณสมบัติของคำตอบในการค้นหาที่เพิ่งผ่านมา ซึ่งถูกกำหนดให้มีสภาวะเป็นสภาวะต้องห้าม เนื่องจากไม่ต้องการให้เป็นตัวเลือกของการสร้างเส้นทางในการค้นหา

8 ปัญหาต้นไม้ k กิ่งน้อยสุด
ปัญหาต้นไม้ k กิ่งน้อยสุด (minimum k-tree problem) คือการหาต้นไม้จำนวน k กิ่งจากกราฟ ที่ให้ผลรวมของน้ำหนักที่น้อยสุด (กำหนดให้ k = 4)

9 ปัญหาต้นไม้ k กิ่งน้อยสุด (ต่อ)
ตารางที่ 1 การสร้างคำตอบเริ่มต้นโดยใช้อัลกอริทึมตะกราม (Greedy Algorithm) Step Candidates Selection Total Weight 1 (1,2) 2 (1,4), (2,3) (1,4) 26 3 (2,3), (3,4), (4.6), (4,7) (4,7) 34 4 (2,3), (3,4), (4.6), (6,7), (7,8) (6,7) 40

10 ปัญหาต้นไม้ k กิ่งน้อยสุด (ต่อ)
เมื่อได้คำตอบเริ่มต้นของต้นไม้ 4 กิ่งน้อยสุดแล้ว ต่อไปจะเริ่มทำการค้นหาอย่างละเอียดในคำตอบนั้นต่อไป โดยการแทนที่กิ่ง 1 กิ่งในต้นไม้ด้วยกิ่งใหม่ เส้นปะคือกิ่งที่ถูกลบ เส้นทึบหนาคือกิ่งที่เพิ่มมา

11 การกำหนดคุณสมบัติของการต้องห้าม
ในการแทนที่กิ่งไม้ในต้นไม้ ต้องมีการพิจารณาถึงคุณสมบัติเพื่อใช้ในการกำหนดสภาวะต้องห้าม กิ่งเพิ่มเข้า (Added Edge) (กิ่งที่นำมาแทนที่) คือคำตอบใดๆที่จะลบกิ่งนี้จะมีสภาวะเป็นสภาวะต้องห้าม กิ่งลบออก (Dropped Edge) (กิ่งที่ถูกมาแทนที่) คือคำตอบใดๆที่จะเพิ่มกิ่งนี้จะมีสภาวะเป็นสภาวะต้องห้าม ในการแก้ปัญหานี้คือกิ่งที่ถูกแทนที่และกิ่งที่นำมาแทนที่ เมื่อมีการกำหนดคุณสมบัติของการต้องห้ามเรียบร้อยแล้ว ต้องกำหนดระยะเวลาต้องห้ามให้กับคุณสมบัติเหล่านี้ด้วย

12 การกำหนดระยะเวลาต้องห้าม
ระยะเวลาต้องห้าม (Tabu Tenure) ของกิ่งลบออกเท่ากับ 2 หมายถึง ห้ามเพิ่มกิ่งนี้ในต้นไม้เป็นเวลา 2 รอบ ระยะเวลาต้องห้ามของกิ่งเพิ่มเข้าเท่ากับ 1 หมายถึง ห้ามลบกิ่งนี้ในต้นไม้เป็นเวลา 1 รอบ ตารางที่ 2 การสร้างคำตอบเมื่อเวลาผ่านไป 3 รอบ Iteration Tabu-active net tenure Add Drop Weight 1 2 - (4,6) (4,7) 47 (6,8) (6,7) 57 3 (6,8),(4,7) (8,9) (1,2) 63

13 กระบวนการค้นหาเมื่อเวลาผ่านไป 3 รอบ
รูปที่ 3 การใช้หน่วยความจำระยะสั้นของการค้นหาตาบู

14 เกณฑ์แห่งความหวัง (Aspiration Criteria)
เกณฑ์แห่งความหวัง คือเกณฑ์ที่ใช้เปลี่ยนสถานภาพต้องห้าม ของคำตอบใดๆ จากสภาวะต้องห้าม (Tabu Active) ไปเป็นสภาวะไม่ต้องห้าม (Tabu Non-Active) เกณฑ์นี้จะใช้ก็ต่อเมื่อ คำตอบที่อยู่ในสถานภาพต้องห้าม เป็นคำตอบที่ดีที่สุดเท่าที่เคยมีมา (เปลี่ยนสถานะจาก Tabu Active เป็น Tabu Non-Active)

15 กระบวนการค้นหาเมื่อเวลาผ่านไป 10 รอบ
ในการค้นหาตาบูจะกำหนดจำนวนรอบสำหรับการค้นหาไว้ โดยปัญหานี้กำหนดไว้ 10 รอบ

16 กระบวนการค้นหาเมื่อเวลาผ่านไป 10 รอบ (ต่อ)

17 หน่วยความจำระยะยาว หน่วยความจำระยะยาว (Long Term Memory) ทำหน้าที่เป็นหน่วยความจำตามความถี่ (แต่ในตัวอย่างนี้ไม่มีการนำความถี่มาพิจารณาสภาวะต้องห้าม) หน่วยความจำระยะยาว ใช้สนับสนุนการค้นหาที่หลากหลายโดยจะหยุดกระบวนการค้นหาจากหน่วยความจำระยะสั้น แล้วเริ่มต้นสร้างจุดเริ่มต้นของการค้นหาใหม่ (คำตอบเริ่มต้น) หน่วยความจำระยะยาวมีหลายรูปแบบ รูปแบบที่หนึ่งที่นิยมใช้คือ การจำเหตุการณ์วิกฤติ (Critical Event Memory)

18 การจำเหตุการณ์วิกฤติ
การจำเหตุการณ์วิกฤติ คือการจำเหตุการณ์สำคัญที่ผ่านมาในการค้นหา โดยนำมาเป็นข้อมูลสำหรับการกำหนดสภาวะต้องห้ามให้กับจุดใหม่ที่จะใช้เป็นจุดเริ่มต้นในการค้นหาครั้งใหม่ การกำหนดเหตุการณ์สำคัญของปัญหาต้นไม้ k กิ่งน้อยสุด จุด (คำตอบ) เริ่มต้นของการค้นหาแต่ละครั้ง จุดที่ให้ค่าต่ำสุดเฉพาะที่ จุดที่มีค่าน้ำหนักน้อยกว่าหรือเท่ากับจุดก่อนหน้าและจุดด้านหลัง รอบที่ 0 รอบที่ 5,6 และ 9

19 การจำเหตุการณ์วิกฤติ (ต่อ)
เหตุการณ์สำคัญของปัญหาต้นไม้ k กิ่งน้อยสุด คือเหตุการณ์รอบที่ 0,5 และ 6 เก็บข้อมูลกิ่งของทั้ง 3 รอบไว้ในหน่วยความจำระยะยาว ซึ่งคือกิ่ง กำหนดสภาวะต้องห้ามให้กับกิ่งที่อยู่ในหน่วยความจำระยะยาว เพื่อป้องกันการสร้างจุดเริ่มต้นไม่ให้มีกิ่งเหมือนกับกิ่งที่เก็บในหน่วยความจำนี้ ปัญหานี้กำหนดระยะเวลาต้องห้ามของหน่วยความจำระยะยาวเท่ากับ 2 รอบ (ป้องกันมากในขั้นตอนต้นๆและป้องกันน้อยในขั้นตอนท้ายของการเริ่มสร้างจุดเริ่มต้นใหม่) ไม่นับรอบที่ 9 เนื่องจากมีค่าน้ำหนักต่ำสุดของการค้นหาที่ผ่านมา (1,2), (1,4), (4,7), (6,7), (6,8), (8,9) และ (6,9)

20 การใช้หน่วยความจำระยะยาว
ตารางที่ 3 กระบวนการหาจุดเริ่มต้นใหม่โดยใช้หน่วยความจำระยะยาว Step Candidates Selection Total Weight 1 (3,5) 6 2 (2,3),(3,4),(3,6),(5,6),(5,9),(5,12) (5,9) 22 3 (2,3),(3,4),(3,6),(5,6),(5,12),(6,9), (8,9),(9,12) (8,9) 29 4 (2,3),(3,4),(3,6),(5,6),(5,12),(6,8), (6,9),(7,8),(8,10),(9,12) (8,10) 38 20

21 การใช้หน่วยความจำระยะยาว (ต่อ)

22 การค้นหาจากจุดเริ่มต้นที่จุดใหม่
ตารางที่ 4 กระบวนการค้นหาจากจุดเริ่มต้นที่สร้างขึ้นมาใหม่ Iteration Tabu-active net tenure Add Drop Weight 1 2 - (9,12) (3,5) 41 (10,11) (5,9) 34 3 (10,11), (3,5) (6,8) 4 (6,8), (5,9) (6,7) 38 5 (6,7), (9,12) (4,7) (8,10) 37

23 การค้นหาจากจุดเริ่มต้นที่จุดใหม่ (ต่อ)

24 การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2
เรียนรู้หลักการค้นหาคำตอบอย่างฉลาด ด้วยวิธีการทางปัญญาประดิษฐ์ ภาคที่สอง การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2 การค้นหาตาบู (Tabu Search) มีน-เอ็นอะแนลิซิส (Means-ends analysis)

25 มีน-เอ็นอะแนลิซิส (Means-Ends Analysis)
การค้นหาคำตอบในปริภูมิสถานะ จะทดลองเลือกตัวกระทำการเพื่อใช้สร้างสถานะลูกให้มีคุณสมบัติตามที่ต้องการ (ขึ้นอยู่กับอัลอริทึมที่ใช้ในการค้นหา) มีน-เอ็นอะแนลิซิส มีความรู้อยู่ในตัวเพื่อใช้เลือกตัวกระทำการ ให้ตรงกับสถานการณ์ในขณะนั้น มีน-เอ็นอะแนลิซิสเป็นเทคนิคหนึ่งของการแก้ปัญหาแบบตัวแก้ปัญหาทั่วไป (General Problem Solver; GPS)

26 มีน-เอ็นอะแนลิซิส (Means-Ends Analysis) (ต่อ)
มีน-เอ็นอะแนลิซิส มีหลักการในการแก้ปัญหาดังนี้ พิจารณาความแตกต่างระหว่างสถานะปัจจุบัน (Current State) และสถานะเป้าหมาย (Goal State) เลือกตัวกระทำการ ที่สามารถลดความแตกต่างๆระหว่างสถานะปัจจุบันและสถานะเป้าหมายให้ลดลง หรือหมดไปได้ ในการเลือกตัวกระทำการไม่จำเป็นที่ตัวกระทำการตัวนั้นจะเปลี่ยนสถานะปัจจุบันไปเป็นสถานะเป้าหมายได้เลย แต่อาจทำให้ความแตกต่างลดลงและนำไปสู่สถานะเป้าหมายได้จากการใช้ตัวกระทำการต่อๆมา

27 มีน-เอ็นอะแนลิซิส (Means-Ends Analysis) (ต่อ)
มีน-เอ็นอะแนลิซิส จะเก็บความรู้อยู่ในส่วนประกอบ 2 ส่วนคือ กฎของตัวกระทำการ ประกอบด้วย เงื่อนไขเริ่มต้น (Precondition) คือ เงื่อนไขการใช้ตัวกระทำการ ผลลัพธ์ (Result) คือ ผลลัทธ์ที่ได้จากการใช้ตัวกระทำการนี้ ตารางแสดงความแตกต่าง (Difference Table) เป็นตารางที่แสดงความแตกต่างของตัวกระทำการแต่ละตัวกับงานที่ตัวกระทำการนั้นสามารถทำได้

28 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส
หุ่นยนต์ต้องการย้ายตู้และกล่องใบเล็ก 1 ใบ ซึ่งวางอยู่ด้านบนตู้ โดยให้ย้ายจากจุดหนึ่งไปอีกจุดหนึ่ง และกล่องต้องวางอยู่บนตู้เหมือนเดิม โดยตำแหน่งที่หุ่นอยู่ ณ ปัจจุบันอยู่ห่างจากตู้ Operator Precondition Result PUSH(obj,loc) at(robot,obj)^large(obj)^ clear(obj)^armempty at(obj,loc)^at(robot,loc) CARRY(obj,loc) at(robot,obj)^small(obj) WALK(loc) None at(robot,loc) Pickup(obj) at(robot,obj) holding(obj) Putdown(obj) ~holding(obj) Place(obj1,obj2) at(robot,obj2)^holding(obj1) on(obj1,obj2)

29 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส (ต่อ)
ตารางที่ 5 ตารางแสดงความแตกต่าง (Difference Table) Push Carry Walk Pickup Putdown Place Move Object x Move Robot Clear Object Get Object on Object Get arm empty Be holding object

30 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส (ต่อ)
หุ่นยนต์ต้องทำอย่างไรบ้างในการทำงานนี้ ? หุ่นยนต์ต้องเลือก Push เพื่อให้ตู้ไปอยู่ยังจุดที่ต้องการ Push มี Precondition อยู่ 4 เงื่อนไข แต่มีอยู่ 2 เงื่อนไขที่หุ่นยนต์ยังทำไม่ได้คือ at(robot,obj) และ clear(obj) ซึ่งถือว่า 2 เงื่อนไขนี้เป็น เป้าหมายย่อย (Subgoals) ที่ต้องทำให้ได้เพื่อลดความแตกต่างระหว่างจุด A และ B A B C D Push Current Goal

31 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส (ต่อ)
เลือกตัวกระทำการ Walk เพื่อให้เกิดผลลัพธ์ at(robot,obj) เลือกตัวกระทำการ Pickup และ Putdown เพื่อให้เกิดผลลัพธ์ clear(obj) โดยที่ armempty ด้วย งานต่อไปที่ต้องทำคือลดความแตกต่างระหว่างจุด C และ D โดยเลือกตัวกระทำการ A B C D Push Current Goal Walk Putdown Pickup Carry

32 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส (ต่อ)
Carry มี Precondition อยู่ 2 เงื่อนไข แต่มีอยู่ 1 เงื่อนไขที่หุ่นยนต์ยังทำไม่ได้คือ at(robot,obj) ดังนั้นต้องเลือกตัวกระทำการ เพื่อให้เกิดผลลัพธ์ at(robot,obj) และลดความแตกต่างระหว่างจุด C กับ E A B C D Push Current Goal Walk Putdown Pickup E F Carry Walk

33 ตัวอย่างการแก้ปัญหาด้วยมีน-เอ็นอะแนลิซิส (ต่อ)
การที่จะให้หุ่นยนต์ทำงานสำเร็จ คือการลดความแตกต่างระหว่าง F กับ D โดยการเลือกตัวกระทำการ A B C D Push Current Goal Walk Putdown Pickup Carry E F Walk Place เพื่อวางกล่องบนตู้ A B C D Push Current Goal Walk Putdown Pickup Carry E F Place


ดาวน์โหลด ppt การค้นหาคำตอบของปัญญาประดิษฐ์ตอนที่ 2

งานนำเสนอที่คล้ายกัน


Ads by Google