บทที่ 2 ทักษะพื้นฐานการแก้ปัญหาด้วยการค้นหา

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เฉลย (เฉพาะข้อแสดงวิธีทำ)
Advertisements

System Requirement Collection (2)
เฉลยใบงานที่ 1 องค์ประกอบและหลักการทำงานของคอมพิวเตอร์
เป็นหลักสำคัญในการนำเสนอเนื้อหา ของบทเรียนคอมพิวเตอร์ช่วยสอนก็คือ ควร นำเสนอภาพที่เกี่ยวข้องกับเนื้อหา ประกอบ กับคำอธิบายสั้นๆ ง่ายๆ แต่ได้ใจความ การใช้ภาพประกอบจะทำให้ผู้เรียน.
คอมพิวเตอร์ช่วยสอน (CAI)
การใช้งานโปรแกรม SPSS
Entity-Relationship Model E-R Model
ผู้วิจัย : นางธนิตา ขาวทอง วิทยาลัยอาชีวศึกษาบริหารธุรกิจวิทยา สงขลา
หน่วยการเรียนรู้ที่ 2 หลักการแก้ปัญหาด้วยคอมพิวเตอร์
Chapter I พฤติกรรมผู้บริโภค.
กระบวนการของการอธิบาย
การใช้งาน Microsoft Excel
เรื่อง หลักการเขียนโปรแกรม เบื้องต้น จัดทำโดย นางสาวชาดา ศักดิ์บุญญารัตน์
โปรแกรมคำนวณคะแนน สหกรณ์ ตามเกณฑ์ดีเด่นแห่งชาติ กรมส่งเสริม สหกรณ์ กองพัฒนาสหกรณ์ด้านการเงิน และร้านค้า วิธีการใ ช้
นาย สรวิศ เตธัญญวรากูล ปวช.3/2 นาย ศิวกร มาลี ปวช.3/2.
เทคนิคการใช้ Microsoft Excel. 1. การตีตารางในรูปแบบต่าง ๆ 2. การแทรกภาพในตาราง 3. การตกแต่งข้อมูลด้วย Format Cells 4. การคำนวณ บวก ลบ คูณ หาร 5. การย่อ.
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
บทที่ 3 นักวิเคราะห์ระบบและการ วิเคราะห์ระบบ. 1. นักวิเคราะห์ระบบ (System Analysis) 1.1 ความหมายของนักวิเคราะห์ระบบ นักวิเคราะห์ระบบ (System Analysis:
การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ การจัดกิจกรรมการ เรียนรู้แบบการทำ โครงงานคอมพิวเตอร์ ครูชาญณรงค์ ปานเลิศ โรงเรียนพระบางวิทยา ครูชาญณรงค์
ซอร์ฟแวร์ ( Software ). Microsoft excel Microsoft excel Microsoft power point.. Link Link.
Project Management by Gantt Chart & PERT Diagram
ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts.
วิชากฎหมายอาคาร รหัสวิชา ท-ป-น (2-0-2) หลักสูตรประกาศนียบัตรวิชาชีพ ปวช.2556 ประเภทวิชาช่างอุตสาหกรรม สาขาวิชาช่างก่อสร้าง สาขาวิชาช่างโยธา.
เรื่อง กระบวนการเทคโนโลยีสารสนเทศ
การสร้างแผนปฏิบัติการระดับตำบลหรือท้องถิ่น
Material requirements planning (MRP) systems
สถิติเบื้องต้นสำหรับการวิเคราะห์ข้อมูล
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
มาตรฐานระบบการบริหารงานคุณภาพ
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
ACCOUNTING FOR INVENTORY
บทที่ 7 การหาปริพันธ์ (Integration)
BC320 Introduction to Computer Programming
แนวทางการออกแบบโปสเตอร์
โครงสร้างภาษา C Arduino
บทที่ 1 ความรู้ทั่วไปเกี่ยวกับคอมพิวเตอร์
การบัญชีต้นทุนช่วง (Process Costing).
บทที่ 4 การอินทิเกรต (Integration)
เภสัชวิทยา (Pharmacology)
เรื่อง ความพึงพอใจต่อการให้บริการห้องสมุด
บทที่ 8 การควบคุมโครงการ
One Point Lesson (OPL).....บทเรียนประเด็นเดียว
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
การบริหารโครงการซอฟต์แวร์
พื้นฐานการออกแบบ กราฟิก หมายถึง ศิลปะแขนงหนึ่งซึ่งใช้การสื่อความหมาย ด้วยเส้น สัญลักษณ์ รูปวาด ภาพถ่าย กราฟ แผนภูมิ การ์ตูน ฯลฯ เพื่อให้สามารถสื่อความหมายของข้อมูลได้ถูกต้องตรง.
Data storage II Introduction to Computer Science ( )
แผ่นดินไหว.
บทที่ 6 แนวคิดเทคโนโลยีเสมือนจริง
บริษัท พัฒนาวิชาการ (2535) จำกัด
บทที่ 9 การทำซ้ำ (Loop).
อาจารย์อภิพงศ์ ปิงยศ Lab 06 : Microsoft Excel (Part2) ทท101 เทคโนโลยีสารสนเทศและนวัตกรรมการสื่อสารทางการท่องเที่ยว อาจารย์อภิพงศ์
วัฏจักรหิน วัฏจักรหิน : วัดวาอาราม หินงามบ้านเรา
การนำเสนอผลงานการวิจัย
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
Data storage II Introduction to Computer Science ( )
เราคือ ‘One PPG’ We protect and beautify the world วัตถุประสงค์ของเรา
BASIC STATISTICS MEAN / MODE / MEDIAN / SD / CV.
บทที่ 9 การเรียงลำดับข้อมูล (Sorting)
การวิจัยทางการท่องเที่ยว
การเปลี่ยนแปลงประมาณการทางบัญชี และข้อผิดพลาด
ความช้าเร็ว ที่เกิดของวิปัสสนา
ค่ารูรับแสง - F/Stop ค่ารูรับแสงที่มีค่าตัวเลขต่ำใกล้เคียง 1 มากเท่าไหร่ ค่าของรูรับแสงนั้นก็ยิ่งมีความกว้างมาก เพราะเราเปรียบเทียบค่าความสว่างที่ 1:1.
บทที่ 2 โครงสร้างข้อมูลแบบแถวลำดับหรืออาร์เรย์ (Array)
heuristic Search Techniques
การจัดทำแผนการสอบบัญชีโดยรวม
บทที่ 4 การจำลองข้อมูลและกระบวนการ (Data and Process Modeling)
การสร้างแบบทดสอบ อาจารย์ ปรีชา เครือวรรณ อาจารย์ สมพงษ์ พันธุรัตน์
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
กระดาษทำการ (หลักการและภาคปฏิบัติ)
ใบสำเนางานนำเสนอ:

บทที่ 2 ทักษะพื้นฐานการแก้ปัญหาด้วยการค้นหา (Problem-Solving with Search) นำเสนอโดย ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี หลักสูตรวิทยาการคอมพิวเตอร์ มหาวิทยาลัยสวนดุสิต

เนื้อหาในบทที่ 2 ประกอบด้วย 2.1 ทักษะพื้นฐานในการแก้ปัญหา 2.2 เทคนิคการค้นหา

1. ทักษะพื้นฐานในการแก้ปัญหา การแก้ปัญญาส่วนใหญ่ในระบบชาญฉลาด จะมองในรูปแบบ ของการค้นหา (search) เป็นหลัก เช่น 1. การเรียนรู้ของเครื่อง (Machine Learning) 2. การประมวลผลภาษาธรรมชาติ (Natural Language Processing) เป็นต้น ซึ่งส่วนใหญ่จะใช้การสร้างปริภูมิ (space) ขึ้นมา หนึ่งปริภูมิ โดยสมาชิกในปริภูมิจะแทนตัวเลือกของคำตอบ จากนั้นก็จะทำการค้นหาโดยวิธีการค้นหาที่ดีหรือเหมาะสมที่สุด ที่ผู้ใช้งานเลือกนำมาใช้

1. ทักษะพื้นฐานในการแก้ปัญหา ทักษะที่ใช้ในการแก้ปัญหา คือ 1. นิยามปัญหาอย่างชัดเจน เช่น Initial-->Final Situation เป็นต้น 2. วิเคราะห์ปัญหา 3. หาความรู้ที่ใช้ในการแก้ปัญหาว่ามีอะไรบ้าง 4. เลือกเทคนิคการแก้ปัญหาที่เหมาะสม

1. ทักษะพื้นฐานในการแก้ปัญหา ปัญหา 8-Puzzle

1. ทักษะพื้นฐานในการแก้ปัญหา ปัญหา 8-Puzzle

1. ทักษะพื้นฐานในการแก้ปัญหา ปัญหา 8-Puzzle

2. เทคนิคการค้นหา เทคนิคการค้นหา สามารถแบ่งประเภท ได้ดังนี้ 1. การค้นหาแบบบอด (Blind Search) 1.1 การค้นบางส่วน (Partial Search) 1.1.1 การค้นหาแนวกว้างก่อน (Breadth-First-Search) 1.1.2 การค้นหาแนวลึกก่อน (Depth-First-Search) 1.2 การค้นหาทั้งหมด (Exhaustive Search)

2. เทคนิคการค้นหา เทคนิคการค้นหา สามารถแบ่งประเภท ได้ดังนี้ 2. การค้นหาแบบฮิวริสติก (Heuristic Search) 2.1 อัลกอริทึมแบบปีนเขา (Hill-Climbing Search) 2.2 อัลกอริทึมแบบอบเหนียวจำลอง (Simulated annealing Search) 2.3 การค้นหาดีที่สุดก่อน (Best-First-Search) 2.4 การค้นหาแบบ A* (A* Search) 2.5 วิธีอื่น ๆ

2. เทคนิคการค้นหา 1. การค้นหาแบบบอด (Blind Search) โดยเริ่มการค้นหาใน แนวกว้างก่อน แล้วตามด้วยการค้นในแนวลึก Ex. ปัญหาโลกของบล็อก (Block World Problem)

2. เทคนิคการค้นหา 1.1.1 การค้นหาแนวกว้างก่อน (Breadth-First-Search)

2. เทคนิคการค้นหา ตารางที่ 2-1 อัลกอริทึมการค้นหาแนวกว้างก่อน

2. เทคนิคการค้นหา 1.1.2 การค้นหาแนวลึกก่อน (Depth-First-Search)

2. เทคนิคการค้นหา ตารางที่ 2-1 อัลกอริทึมการค้นหาแนวลึกก่อน

2. เทคนิคการค้นหา ตารางที่ 2-2 เปรียบเทียบอัลกอริทึมการค้นหาแนวลึกก่อนและ การค้นหาแบบแนวกว้างก่อน

2. เทคนิคการค้นหา ตารางที่ 2-2 เปรียบเทียบอัลกอริทึมการค้นหาแนวลึกก่อนและ การค้นหาแบบแนวกว้างก่อน

2. เทคนิคการค้นหา ตารางที่ 2-2 เปรียบเทียบอัลกอริทึมการค้นหาแนวลึกก่อนและ การค้นหาแบบแนวกว้างก่อน

2. เทคนิคการค้นหา ปัญหาการเดินทางของพนักงานขาย (Traveling Salesman Problem)

2. เทคนิคการค้นหา 2. การค้นหาแบบฮิวริสติก (Heuristic Search) จะใช้รูปแบบ ฮิวริสติก (ความรู้ที่ไม่สมบูรณ์หรือการคาดเดาอย่างมีเหตุผล) มา ช่วยในการค้นหาให้มีประสิทธิภาพมากขึ้น โดยวิธีนี้จะช่วย ชี้แนะกระบวนการเลือกเส้นทางใดหรือสถานะใดเพื่อทำการ ค้นหาต่อไปให้ได้คำตอบอย่างมีประสิทธิภาพ พิจารณาจาก ปัญหาการเดินทางของพนักงานขาย (Traveling Salesman Problem)

2. เทคนิคการค้นหา ลักษณะเด่นของการค้นหาแบบฮิวริสติก 1. เป็นเทคนิคที่ใช้เพิ่มประสิทธิภาพของกระบวนการค้นหา โดยอาจจะต้องยอมให้ขาดความสมบูรณ์ไปบ้าง คือ ไม่พบ คำตอบที่ถูกต้อง แม้ว่าปริภูมิสภานะจะมีคำตอบนี้อยู่ 2. การนำฮิวริสติกมาใช้จะต้องนำมาใช้ในรูปแบบที่วัดค่าได้ อย่างง่าย ซึ่งมักจะทำโดยนิยามฮิวริสติกให้อยู่ในรูปแบบของ ฟังก์ชัน เรียกว่า ฮิวริสติกฟังก์ชัน (Heuristic function) ซึ่ง เป็นฟังก์ชันที่คำนวณค่าสถานะไปยังตัวเลขที่ชี้ว่าสถานะนั้นเข้า ใกล้สถานะเป้าหมายมากเท่าไร (ยิ่งมากเท่าไร ยิ่งมีโอกาสที่ จะเปลี่ยนสถานะเป้าหมายมากเท่านั้น) การค้นหาจึงมุ้งไป เส้นทางที่มีค่าฟังก์ชันฮิวริสติกที่ดีกว่า

2. เทคนิคการค้นหา ลักษณะเด่นของการค้นหาแบบฮิวริสติก 3. ฟังก์ชันฮิวริสติกนี้เป็นสิ่งที่ใช้ชี้แนะกระบวนการค้นหาว่าควร จะค้าหาไปในทิศทางใด ซึ่งกระบวนการค้นหาที่ใช้ฟังก์ชันฮิวริ สติกสามารถถอบแบบได้หลายชนิด 4. ในบางกรณี สามารถนิยามฟังก์ชันฮิวริสติกได้อย่างสมบูรณ์ แบบ การค้นหาก็จะมุ้งตรงไปสถานะเป้าหมายโดยไม่ผิด เส้นทางเลย แต่ถ้าฟังก์ชันฮิวริสติกไม่ดีก็อาจทำให้กระบวนการ ค้นหาหลงไปในทิศทางที่ผิดได้ ทำให้คำตอบที่ได้เมื่อใช้ ฟังก์ชันฮิวริสติก ก็จะไม่ใช่คำตอบที่ดีที่สุด

2. เทคนิคการค้นหา Ex. ฟังก์ชันฮิวริสติก h1 สำหรับปัญหาโลกของบล็อก

2. เทคนิคการค้นหา Ex. แสดงค่าฮิวริสติกสำหรับสถานะต่าง ๆ

2. เทคนิคการค้นหา Ex. ฟังก์ชันฮิวริสติก h2 สำหรับปัญหาโลกของบล็อก

2. เทคนิคการค้นหา Ex. แสดงค่าฮิวริสติกสำหรับสถานะต่าง ๆ

2. เทคนิคการค้นหา Ex. ฟังก์ชันฮิวริสติกสำหรับปัญหา 8-Puzzle

2. เทคนิคการค้นหา Ex. ตัวเลขที่อยู่มุมขวาบนแผ่นป้ายแต่ละแผ่นแสดงจำนวนครั้งที่ต้องเลื่อน ไปยังตำแหน่งที่มันควรอยู่เมื่อเทียบกับ คำตอบ ดังนั้น ค่าฮิวริสติกของสถานะปัจจุบัน = 2+1+4+2+2+2+2+0 = 15 หน่วย

2. เทคนิคการค้นหา Ex. เมื่อนำฟังก์ชัน hMan ไปวัดค่าฮิวริสติกให้กับสถานะต่างๆ ในรูป 2-2 จะได้ผลดังรูปที่ 2-13 ต่อไปนี้

2. เทคนิคการค้นหา 3. อัลกอริทึมปีนเขา (Hill-climbing Algorithm)

2. เทคนิคการค้นหา ตารางที่ 2-4 อัลกอริทึมแบบปีนเขาอย่างง่าย

2. เทคนิคการค้นหา Ex. การใช้ฟังก์ชันฮิวริสติก h2 แสดงอัลกอริทึมแบบปีนเขาอย่างง่าย

2. เทคนิคการค้นหา ปัญหาของอัลกอริทึมปีนเขา (Hill-climbing Algorithm) ค่าดีที่สุดวงกว้าง (global optimum) ค่าดีที่สุดเฉพาะที่ (local optimum)

2. เทคนิคการค้นหา 4. อัลกอริทึมการอบเหนียวจำลอง (Simulated Annealing Algorithm) ถูกออกแบบมาเพื่อให้สามารถหลุดออกได้จาก สถานะดีที่สุดเฉพาะที่ โดยใช้แนวคิดของอุณหพลศาสตร์ของ กระบวนการอบเหนียว ซึ่งเป็นการลดอุณหภูมิลงอย่างช้าๆ ระหว่างการหลอม เพื่อให้ได้โลหะที่อยู่ในสภาวะเหมาะสมที่สุด เป็นโลหะเหนียว ไม่เปราะ

2. เทคนิคการค้นหา ตารางที่ 2-5 อัลกอริทึมแบบอบเหนียวจำลอง

2. เทคนิคการค้นหา 4. อัลกอริทึมดีที่สุดก่อน (Best-First Search) จะเก็บสถานะทุก ตัวโดยไม่ตัดทิ้งไป โดยการที่ไม่ตัดทิ้งไปจึงทำให้อัลกอริทึมนี้ ไม่พลาดเส้นทางที่นำไปสู่คำตอบ โดยแต่ละขั้นตอนจะเลือก สถานะที่มีค่าฮิวริสติกดีสุด โดยพิจารณาทุกตัวที่ยังไม่ถูก กระจาย (สถานะที่ยังไม่ได้สร้างสถานะลูก)

2. เทคนิคการค้นหา ตารางที่ 2-5 อัลกอริทึมดีที่สุดก่อน (Best-First Search)

2. เทคนิคการค้นหา Ex. การค้นหาแบบอัลกอริทึมดีที่สุดก่อน (Best-First Search)

2. เทคนิคการค้นหา 5. อัลกอริทึม A* เป็นการขยายอัลกอริทึมดีที่สุดก่อนโดย พิจารณาเพิ่มถึงต้นทุนจากสถานะเริ่มต้นมายังสถานะปัจจุบันเพื่อ ใช้คำนวณค่าฮิวริสติกด้วย ในกรณีของอัลกอริทึม A* ต้องหา ค่าต่ำสุดของฟังก์ชัน f’(x) ของสถานะ s นิยามดังนี้

2. เทคนิคการค้นหา Ex. แสดงการค้นหาด้วยอัลกอริทึมที่ดีที่สุดก่อน

2. เทคนิคการค้นหา Ex. แสดงการค้นหาด้วยอัลกอริทึม A*

2. เทคนิคการค้นหา 6. การค้นหาตาบู ตาบู (tabu, ta boo) แปลว่า ต้องห้าม (เช่น สิ่งของที่เป็นของศักดิ์สิทธิ์ จึงห้ามแตะต้อง) โดยจะทำ เครื่องหมายบางเส้นทางที่ไม่สนใจจะค้นหา การทำเครื่องหมาย นี้อาจทำในระดับของตัวกระทำการ หรือ หน่วยย่อยของตัว กระทำการก็ได้ หน่วยย่อยใดถูกทำเครื่องหมายไว้จะเปลี่ยนเป็น สถานะภาพต้องห้าม (tabu status) ให้อยู่ในภาวะต้องห้าม (tabu active) กล่าวคือหน่วยย่อยนี้จะไม่ถูกนำมาใช้เพื่อสร้าง เส้นทางในการค้นหา อาจเป็นเพราะเส้นทางนี้คงนำไปสู่คำตอบ หรืออาจเป็นเส้นทางที่เคยค้นหามาแล้ว เป็นต้น

2. เทคนิคการค้นหา แนวคิดการค้นหาที่ฉลาดจะต้องพิจารณาถึงสิ่งเหล่านี้ คือ 1. หน่วยความจำปรับตัว (adaptive memory) ตามสถานะภาพ การค้นหา ณ ตำแหน่งนั้นๆ 2. การสำรวจแบบสอบถาม (responsive exploration) 2.1 หน่วยความจำตามเวลา (recency-based memory) จะ ปรับเปลี่ยนไปตามขั้นตอนการค้าหา 2.2 หน่วยความจำตามความถี่ (frequency-based memory) ใช้สำหรับจำว่าตัวกระทำการตัว ไหนใช้งานบ่อย ๆ

2. เทคนิคการค้นหา Ex. แสดงการค้นหาแบบตาบู

2. เทคนิคการค้นหา Ex. ปัญหาแบบต้นไม้ k กิ่งน้อยที่สุด

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา Ex. แสดงการสร้างผลเฉลยใหม่ 2 ตัวโดยการลบกิ่ง 1 กิ่ง (แสดงด้วย เส้นปะในรูป) ออกจากต้นไม้เดิมและเพิ่มกิ่งอีก 1 กิ่ง (แสดงด้วย เส้นทึบในรูป) เข้าไป

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา หน่วยความจำระยะยาว

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

2. เทคนิคการค้นหา

จบบทที่ 2