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

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

Artificial Intelligence (AI)

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


งานนำเสนอเรื่อง: "Artificial Intelligence (AI)"— ใบสำเนางานนำเสนอ:

1 Artificial Intelligence (AI)
สัปดาห์ที่ 6 Chasing and Evading อ.เทพฤทธิ์ สินธำรงรักษ์ เรียบเรียง

2 Topics Basic rules of chasing and evading Line of sight chasing
Chasing and evading in continuous environments Line of sight chasing in tiled environments Line of sight chasing in continuous environments Intercepting : stopped enemy

3 Basic Chasing(การไล่ล่า) and Evading(การหนี)
If (predatorX > preyX){ predatorX--; } else if (predatorX < preyX){ predatorX++; If (predatorY > preyY){ predatorY--; else if (predatorY < preyY){ predatorY++;

4 Basic tile-based chase

5 Problem Line of sight Chasing
เมื่อไหร่เราจะเริ่มไล่ล่า (Chasing) และเริ่มหนี (Evading) หลักการง่ายๆให้คิดระยะทางระหว่างจุดที่ผู้ล่าอยู่ (Predator) กับเหยื่อ (Prey) ถ้าเท่ากับหรือน้อยกว่า ระยะสายตาให้ทำการเริ่มไล่ล่า Line of sight Chasing SQRT เป็นค่าระยะสายตา โดยการเคลื่อนที่ไปหาเหยื่อจะมีแบบเป็นช่องตาราง (Tile) กับแบบต่อเนื่อง (Continuous)

6 Line-of-Sight If the prey is not moving –the path followed is a straight line Limited of direction Tile-base movement can appear jaggy

7 Line-of-Sight The predator always takes a straight line path towards the prey The predator always moves towards the prey’s current position Result: movement appears natural.

8 Line to move Simple chase versus line-of-sight chase

9 Bad Good

10 Bresenham’s Algorithm
Xk+1,Yk+1 Xk,Yk Xk+1,Yk คำถามคือจะเดินผ่านสีส้มหรือสีแดง

11 Bresenham’s Algorithm
(Xk+1,Yk+1) Y=mX+b d2 d1 Y=mX+b (Xk,Yk) (Xk+1,Yk)

12 Summary ได้สมการเป็น Pk+1 = Pk + 2ΔY(Xk+1 - Xk) - 2ΔX(Yk+1 - Yk)
ขั้นตอนการคำนวณ Input First Point, End Point Plot First Point Cal ΔX, ΔY, 2ΔY and 2ΔY- 2ΔX Cal P0 = 2ΔY- ΔX Loop Until Xk=XEndPoint If Pk < 0 Choose (Xk+1,Yk) Pk+1 = Pk+ 2ΔY If Pk >= 0 Choose (Xk+1,Yk+1) Pk+1 = Pk+ 2ΔY - 2ΔX

13 Example จงPlot จุดจาก (5,8) ไป (10,11)
6 7 8 9 10 11

14 Digital Differential Analyzer (DDA)
มี 4 กรณี 1.m <= 1 (และมากกว่า 0) 2.m > 1 3.m <=-1 4.m > -1 (และน้อยกว่า 0)

15 กรณี M>1 กรณี m <= 1 กรณี M>=-1 กรณี M<-1

16 ตัวอย่าง DDA

17 Type 1: Using delta values
function chasing(){ deltaX=px2-px1; deltaY=py2-py1; px1=px1+deltaX*velocityPredator; py1=py1+deltaY*velocityPredator; }

18 Types 2:Using normalizing vector
delta[0]=Pos_prey[0]-Pos_predator[0]; delta[1]=Pos_prey[1]-Pos_predator[1]; deltaManitude=Math.sqrt(Math.pow(delta[0],2)+Ma th.pow(delta[1],2)); Pos_predator[0]+=delta[0]/deltaManitude*Vpredato r[0]; Pos_predator[1]+=delta[1]/deltaManitude*Vpredato r[1];

19 Predator find/calculate point of intercepting

20 Types 3:Intercepting Scenario1
Vr = Vprey – Vpredator ;Vr คือ ความสัมพันธ์ระหว่าง ความเร็วผู้ล่าและเหยื่อ Sr = Sprey – Spredator ;Sr คือ ระยะทางระหว่างผู้ล่ากับ เหยื่อ tc = |Sr|/|Vr| ;tc คือ เวลาเฉลี่ยที่ผู้ล่าจะวิ่งไป ถึงเหยื่อ St = Sprey + (Vprey)(tc) ; St คือ จุดที่คาดคะเนที่เหยื่อจะ เดินทางไป

21 Line-of-Sight Chasing in Continuous Environments

22 Intercepting

23 Types 4:Intercepting Scenario2

24 Types 4:Intercepting Scenario2

25 References David M. Bourg and Glenn Seemann. Creating Intelligent behavior in Games ISBN:

26 จบการนำเสนอ


ดาวน์โหลด ppt Artificial Intelligence (AI)

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


Ads by Google