Top Banner
AI pada Game Development [Path Finding] Agung Toto Wibowo http://gameprogramming.blog.ittelkom.ac.id /blog/ Bourg, David M., dan Seeman, Glenn, ”AI for Game Developers “, O'Reilly, 2004
13

Ai Pada Game Development Pathfinding

Dec 27, 2015

Download

Documents

nasi_balap

Ai Pada Game Development Pathfinding
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ai Pada Game Development Pathfinding

AI pada Game Development [Path Finding]

Agung Toto Wibowohttp://gameprogramming.blog.ittelkom.ac.id/blog/

Bourg, David M., dan Seeman, Glenn, ”AI for Game Developers “, O'Reilly, 2004

Page 2: Ai Pada Game Development Pathfinding

Apa “artificial intelligence”?Kemampuan komputer atau mesin lain untuk

melakukan kegiatan-kegiatan (biasanya berpikir) yang membutuhkan kecerdasan

proses atau ilmu dalam menciptakan mesin cerdas

“apa itu cerdas?“Cerdas memerlukan hati nurani dan emosi

yang terkait dengan kecerdasan secara menyeluruh

kemampuan untuk memecahkan masalah yang memerlukan kecerdasan jika ingin dapat dipecahkan oleh manusia tidak cukup

Page 3: Ai Pada Game Development Pathfinding

Deterministik vs Non-deterministikDeterministic

perilaku atau kinerja yang ditetapkan dan dapat diprediksi

tidak ada ketidakpastianContoh : menggerakkan NPC dari satu koordinat ke

lokasi tujuan.

Nondeterministic memiliki tingkat ketidakpastian dan agak tak terdugaContoh : NPC belajar untuk beradaptasi dengan taktik

pertempuran pemain. menggunakan JST, Bayesian, atau GA atau teknik

learning yang lain.

Page 4: Ai Pada Game Development Pathfinding

Basic Pathfinding

Algortima sangat sederhanaMasalah muncul pada saat ada obstacle

if(positionX > destinationX) positionX--;

else if(positionX < destinationX) positionX++;

if(positionY > destinationY) positionY--;

else if(positionY < destinationY) positionY++;

Page 5: Ai Pada Game Development Pathfinding

Random Movement Obstacle Avoidanceif Player In Line of Sight {

Follow Straight Path to Player

} else { Move in Random Direction

}

Page 6: Ai Pada Game Development Pathfinding

Tracing Around ObstaclesBasic Tracing Improved Tracing Los Tracing

Page 7: Ai Pada Game Development Pathfinding

Path FollowingTerkadang pergerakan harus mengikuti

pola/arah tertentu, e.g jalan

Page 8: Ai Pada Game Development Pathfinding

Wall-tracing pathMirip dengan obstacle, namun mengikuti

tembokPergerakan mengikuti relative direction

Page 9: Ai Pada Game Development Pathfinding

Waypoint NavigationMengurangi waktu

komputasi, dan respon time

Menggunakan labelling node, dan predefined routing table.

Page 10: Ai Pada Game Development Pathfinding

AI Path FindingUnInformed Search

Breadth First SearchUniform Cost SearchDeth First SearchDepth LImited SearchIterative Deepening Search

Informed Searchgreedy Best First SearchA* searchRecursive Best First SearchIterative Deepening A* Simplified Memory A*

Page 11: Ai Pada Game Development Pathfinding

RangkumanCriteria BFS UCS DFS DLS IDS

Complete?

Yes Yes No No Yes

Time O(bd+1) O(b[C*/Є]) O(bm) O(bl) O(bd)

Space O(bd+1) O(b[C*/Є]) O(bm) O(bl) O(bd)

Optimal? Yes Yes No No Yes

Criteria GBFS A* RBFS IDA* SMA*

Complete?

No Yes Ya Ya Yes

Time O(bm) Exp Tidak bisa ditentukan

Tergantung Heuristik

O(bd)

Space O(bm) - O(bd) O(bd) O(bd)

Optimal? No Yes Ya Ya Yes

Page 12: Ai Pada Game Development Pathfinding

Kunci SearchingBFS DF

SUCS Greedy BFS A*

Insert Last First

Urut Urut Urut

Delete First First

First First First

Heuristik Sesungguhnya / g(n)

Estimasi/h(n) f(n) = g(n) + h(n)

Page 13: Ai Pada Game Development Pathfinding

Romania (step cost dalam km)A (366)B (0)C (160)D (242)E (161)F (176)G (77)H (151)I (226)L (244)M (241)N (234)O (380)P (100)R (193)S (253)T (329)U (80)V (199)Z (374)

Jaraklangsung ke B