ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
INC 551 Artificial Intelligence
Lecture 4 Iterative Improvement Algorithms & Constraint Satisfaction Problems (CSP)
2
Deliberative Agent Environment Action Sense, Perceive
Make Decision World Model Sense, Perceive State-Action nodes or others
3
World Model (Black Box) Best action? What is the best action? Similar to optimization problem
4
Search for Best Solution
System Input Output 1 2 3 4 5 6 : 23 12 192 175 34 16 :
5
Iterative Improvement Algorithms (Optimality Search)
Hill Climbing Simulated Annealing Genetic Algorithms
6
Comparison มีจิงโจ้ตาบอดที่ต้องการพาตัวเองกระโดดขึ้นไปบนยอดสูงสุดของยอดเขา Hill Climbing จิงโจ้ลองหย่อนขาไปในทิศต่างๆ ถ้าสูงขึ้นก็จะยอมก้าว Simulated Annealing จิงโจ้กินเหล้าเข้าไปก้าวผิดก้าวถูก แต่พอผ่านไปก็จะสร่างเมาแล้วก้าวถูกมากๆขึ้น Genetic Algorithms ใช้วิธีออกลูกหลานมากๆ แล้วเรายิงจิงโจ้ที่อยู่ต่ำๆทิ้งไปเรื่อยๆ จนในที่สุด จะหวังว่าจิงโจ้ที่เหลืออยู่คือตัวที่อยู่สูงๆ
7
Hill Climbing ข้อเสีย สามารถติดอยู่ที่ local minima “ลองก้าว”
ถ้าสูงกว่าเดิมก็ไป
8
8-queen problem วาง queen 8 ตัวให้ไม่สามารถกินกันได้
9
Thinking ชนกัน = 5 คู่ ชนกัน = 3 คู่ ชนกัน = 1 คู่
10
Traveling Salesman Problem
หาเส้นทางที่สั้นที่สุดที่เชื่อมเมืองเป็น chain
11
Thinking ระยะทางรวม = 230 ระยะทางรวม = 110
12
Simulated Annealing T ลดลงเรื่อยๆเมื่อเวลาผ่านไปจนเป็น 0
คล้าย hill-climbing แต่จะเดินลงเขาด้วย ด้วย probability T ลดลงเรื่อยๆเมื่อเวลาผ่านไปจนเป็น 0
14
Evolutionary Algorithms
Genetic Algorithms (GA) Evolutionary Strategies (ES) Evolution Programming (EP)
15
Objective of the Algorithms
Finding a Maximum or minimum (numerical way) เหมาะสำหรับปัญหาที่ไม่ทราบอะไรเกี่ยวกะมันเลย รู้แค่มี input อย่างนี้ output ออกมาเป็นอย่างนี้
16
Evolutionary Algorithm
Initial Population Representation Evaluation Selection Crossover Mutation
17
8-Queen Crossover Example
18
Heuristics of Evolutionary Algorithms
System Input Output 1 2 3 4 5 6 : 23 12 192 175 34 16 : แถวๆนี้น่าจะดี ลองเยอะๆหน่อย โดยลองค่าที่มาจากคุณสมบัติ ของ 2 ค่านี้เช่น 3.6
19
Evolutionary Algorithms
System Input Output 1 2 3 4 5 6 : 23 12 192 175 34 16 : Fitness Function Population Evaluation
20
(Mutation, Recombination) 1 2 3 4 5 6 1 2 3 4 5 6 2.1 3.2 4.3 5.4 5.2 6.4 Evaluation Breeding Initial Population Add offsprings 3 4 5 3.2 4.3 5.2 Selection New population in the next era
21
Create initial random population
Procedure of Evolutionary Algorithms Create initial random population Evaluate fitness of each individual yes Termination criteria satisfied ? stop no Select parents according to fitness Recombine parents to generate offspring Mutate offspring Replace population by new offspring
22
Constraint Satisfaction Problems
Variables – X1,X2,X3,…. Constraints – C1,C2,C3,…. ต้องการหาค่า X1,X2,X3,… ที่ satisfy C1,C2,C3,…. ปัญหาแบบนี้สามารถแก้ได้ด้วยวิธีการ search
23
Example
25
Constraint Graph Variables อันไหนเชื่อมกันแสดงว่ามี constraint ต่อกัน
Nodes คือ variables Link คือ constraints Variables อันไหนเชื่อมกันแสดงว่ามี constraint ต่อกัน
26
Example Cryptarithmetic
27
Sudoku Sudoku is a CSP problem.
28
Types of Constraints Unary (เกี่ยวกับ 1 ตัวแปร เช่น WA ≠ red)
Binary (เกี่ยวกับ 2 ตัวแปร เช่น WA ≠ Q) High-order (เกี่ยวกับ 2 ตัวแปร เช่นใน Cryptarithmetic) Preference (เป็น soft constraint ที่เกี่ยวกับ optimization เช่น red < green)
29
Search Formulation Initial State = Empty set (no assignment to any variables) Successor function = Assign 1 value to 1 variable Goal = All constraints are satisfied
30
Search Choices Breadth – first Depth - first
Depth-first ที่ expand node ตาม constraint เรียก Backtracking search
31
Breadth – first ได้ solution ที่ depth n อาจได้ solution ซ้ำกันถ้าคำตอบสลับกันได้ Depth – first Depth จำกัด = n ใช้เนื้อที่และเวลาน้อย
32
Backtracking Search
36
Depth-first เป็น uninformed search
เราสามารถเพิ่มประสิทธิภาพได้จากการจัดลำดับ หรือ ขจัด solution ที่ไม่น่าป็นไปได้ จัดเป็น informed search ด้วย heuristics
37
Most-constraint Heuristic
หรือ minimum remaining values heuristic จะเลือก assign variable ที่มี set of value น้อยที่สุดก่อน หรือ variable ที่มี constraints มากสุดก่อน
38
Least-constraint Heuristic
จะเลือก assign variable ให้มี constraints กับ variables ที่เหลือน้อยที่สุด
39
Forward checking Heuristic
จะ keep track ค่าที่เป็นไปได้ของแต่ละ variable จะ backtrack เมื่อ variable ใดอันหนึ่งไม่มีค่าที่จะเป็นไปได้
43
Constraint Propagation Method
Idea: การนำเอา constraints มาประกอบกันจะช่วยให้ลดจำนวน node ได้
44
Arc Consistency Heuristic
เป็นวิธีการ propagate constraints แบบหนึ่ง จะมี list ของ constraints ทั้งหมดไว้ โดยทั่วไป จะเป็น Queue แล้วจะทำการ check ทีละอัน หลังจากนั้นจะทำการขจัด domain ของ variable ที่เป็นไปไม่ได้ทิ้ง วิธีนี้จะทำให้ทราบล่วงหน้าเมื่อ variable assignment ใช้ไม่ได้
45
for every value of X, some value of Y must be true
กฏ for every value of X, some value of Y must be true OK!
46
for every value of X, some value of Y must be true
กฏ for every value of X, some value of Y must be true NSW = blue ทำให้ SA = ?? ดังนั้นตัด NSW = blue ออก
47
Blue ใน NSW ไป รัฐที่มี constraints ต้องมา check ใหม่
48
พบว่า detect error ได้ก่อน forward checking ธรรมดา
49
Arc Consistency Algorithm (AC3)
50
Tree-Structure CSPs Problem ที่มี constraint graph เป็น tree (ไม่เป็น loop) จะมีขั้นตอนการ solve ที่แน่นอนตายตัว จะทำให้ลดเวลาในการคิดอย่างมาก
51
Nearly Tree-Structured CSPs
จะทำได้โดยให้ค่า SA fix ไปเลย แล้วตัดออกไป ถ้าไม่ได้ก็ลองเปลี่ยนค่า SA ใหม่
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.