Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pertemuan VIII Mid Term Discussions Alpha Beta Pruning Logical Agent (intro to proportional logic)

Presentasi serupa


Presentasi berjudul: "Pertemuan VIII Mid Term Discussions Alpha Beta Pruning Logical Agent (intro to proportional logic)"— Transcript presentasi:

1 Pertemuan VIII Mid Term Discussions Alpha Beta Pruning Logical Agent (intro to proportional logic)

2 Mid Term Discussions File di-download di Nilai UTS  hari Senin selesai

3 Algoritma Alpha Beta (optimized MinMax) Beberapa cabang tidak perlu untuk dibuka jika berhadapan dengan lawan yang cerdas Idenya adalah dengan memantau nilai pada cabang setiap kali DFS dilakukan Yang dipantau adalah nilai alpha (jika MAX), dan beta (jika MIN) Alpha = nilai terbesar sampai saat ini Beta = nilai terkecil sampai saat ini Jika Beta  Alpha, stop percabangan – Tidak ada nilai yang lebih menguntungkan MAX – MIN tidak mengijinkan MAX untuk terus maju

4 Minimax Revisited

5  -  Pruning Example

6

7

8

9

10  -  Pruning Algorithm

11  -  Pruning The “Heuristic”

12 More Detailed  -  Pruning Example O W -3 B N4N4 F G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 A minimax(A,0) max Call Stack A A Aα=Aα=

13 More Detailed  -  Pruning Example O W -3 B N4N4 F G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(B,1) max Call Stack A B Bβ=Bβ= B min

14 More Detailed  -  Pruning Example O W -3 Bβ=Bβ= N4N4 F G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(F,2) max Call Stack A F Fα=Fα= B min max F

15 More Detailed  -  Pruning Example O W -3 Bβ=Bβ= N4N4 Fα=Fα= G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(N,3) maxCall Stack A N4N4 B min max F blue: terminal state N

16 More Detailed  -  Pruning Example O W -3 Bβ=Bβ= N4N4 Fα=Fα= G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(F,2) is returned to max Call Stack A alpha = 4, maximum seen so far B min max F blue: terminal state F α =4

17 More Detailed  -  Pruning Example O W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(O,3) max Call Stack A B min max F blue: terminal state O min O Oβ=Oβ=

18 More Detailed  -  Pruning Example blue: terminal state Oβ=Oβ= W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(W,4) max Call Stack A B min max F blue: terminal state (depth limit) O W -3 min W

19 More Detailed  -  Pruning Example blue: terminal state Oβ=Oβ= W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(O,3) is returned to max Call Stack A beta = -3, minimum seen so far B min max F O min O β =-3

20 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(O,3) is returned to max Call Stack A O's beta  F's alpha: stop expanding O (alpha cut-off) B min max F O min X -5

21 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= Why?Smart opponent will choose W or worse, thus O's upper bound is –3. So computer shouldn't choose O:-3 since N:4 is better max Call Stack A B min max F O min

22 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= max Call Stack A B min max Fmin X -5 alpha not changed (maximizing) minimax(F,2) is returned to

23 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 Bβ=Bβ= N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(B,1) is returned to max Call Stack A B min max min X -5 beta = 4, minimum seen so far B β =4

24 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =4 N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(G,2) max Call Stack A B min max min X -5 G G -5

25 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =4 N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(B,1) is returned to max Call Stack A B min max X -5 beta = -5, updated to minimum seen so far B β =-5 min

26 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(A,0,4) is returned to max Call Stack A min max X -5 alpha = -5, maximum seen so far A α =-5 min

27 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(C,1) max Call Stack A min max min X -5 A α =-5 C C Cβ=Cβ=

28 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 Cβ=Cβ= R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(H,2) max Call Stack A min max min X -5 A α =-5 C H3H3 H

29 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 Cβ=Cβ= R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(C,1) is returned to max Call Stack A min max min X -5 beta = 3, minimum seen so far A α =-5 C C β =3

30 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(I,2) max Call Stack A min max min X -5 A α =-5 C I8I8 I

31 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(C,1) is returned to max Call Stack A min max min X -5 beta not changed (minimizing) A α =-5 C

32 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J L2L2 Aα=Aα= minimax(J,2) max Call Stack A min max min X -5 A α =-5 C J J Jα=Jα=

33 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 Jα=Jα= L2L2 Aα=Aα= minimax(P,3) max Call Stack A min max min X -5 A α =-5 C J P P9P9

34 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 Jα=Jα= L2L2 Aα=Aα= minimax(J,2) is returned to max Call Stack A min max min X -5 alpha = 9 A α =-5 C J J α =9

35 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= minimax(J,2) is returned to max Call Stack A min max min X -5 J's alpha  C's beta: stop expanding J (beta cut-off) A α =-5 C J Q -6 R0R0

36 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= max Call Stack A min max min X -5 A α =-5 C J Why?Computer should choose P or better, thus J's lower bound is 9; so smart opponent won't take J:9 since H:3 is worse

37 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= minimax(C,1) is returned to max Call Stack A min max min X -5 beta not changed (minimizing) A α =-5 C

38 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= minimax(A,0) is returned to max Call Stack A min max min X -5 alpha = 3, updated to maximum seen so far A α =-5 A α =3

39 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= max Call Stack A min max min X -5 A α =3 D D0D0 minimax(D,1)

40 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= minimax(A,0) is returned to max Call Stack A min max min X -5 alpha not updated (maximizing) A α =3

41 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 KM H3H3 I8I8 J α =9 L2L2 Aα=Aα= How does the algorithm finish the search tree? max Call Stack A min max min X -5 A α =3

42 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E β =2 D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 K α =5 M H3H3 I8I8 J α =9 L2L2 Aα=Aα= E's beta  A's alpha: stop expanding E (alpha cut-off) max Call Stack A min max min X -5 A α =3

43 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E β =2 D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 K α =5 M H3H3 I8I8 J α =9 L2L2 Aα=Aα= max Call Stack A min max min X -5 A α =3 Why?Smart opponent will choose L or worse, thus E's upper bound is 2; so computer shouldn't choose E:2 since C:3 is better path

44 More Detailed  -  Pruning Example blue: terminal state O β =-3 W -3 B β =-5 N4N4 F α =4 G -5 X -5 E β =2 D0D0 C β =3 R0R0 P9P9 Q -6 S3S3 T5T5 U -7 V -9 K α =5 M H3H3 I8I8 J α =9 L2L2 Aα=Aα= Result: Computer chooses move to C max Call Stack A min max min X -5 A α =3

45 Properti  -  Pruning Tidak mengubah hasil akhir Urutan simpul akan mempengaruhi pemangkasan yang terjadi – Kasus terbaik = O(bm/2) – Kasus terburuk = O(bm) = DFS Fungsi evaluasi dapat digunakan untuk mengatur susunan simpul

46 Logical Intelligent Agent Problem solving agent hanya bisa menyelesaikan masalah yang lingkungannya accessible Kita membutuhkan agen yang dapat menambah pengetahuan dan menyimpulkan keadaan Agent seperti ini kita beri nama knowledge based agent

47 Knowledge based agent Representasi Pengetahuan yang bersifat general. Kemampuan beradaptasi sesuai temuan fakta. Kemampuan menyimpulkan sesuatu dari pengetahuan yang sudah ada.

48 Knowledge based agent ENVIRONMENTENVIRONMENT Mesin Inferensi (Inference Engine) percept aksi Basis Pengetahuan (Knowledge Base) pengetahuan Mula-mula berisi background knowledge Persepsi yang diterima Diubah menjadi pengetahuan Berdasarkan pengetahuan yang dimiliki Agen memilih aksi yang tepat (inferensi) Hasil dari aksi disimpan kembali dalam bentuk pengetahuan

49 Knowledge Based Agent Komponen utama dari knowledge based agent adalah knowledge basenya Knowledge base (KB) adalah kumpulan representasi fakta tentang lingkungan atau dunia yang berhubungan atau menjadi daerah bekerjanya agen Setiap representasi dalam KB disebut sebagai sebuah sentence yang diekspresikan dalam sebuah bahasa yakni knowledge representation language

50 Robot Sonar

51 Agent Control Architecture Control dipisahkan ke dalam lapisan-lapisan yang merespons tingkah laku

52 Contoh Control Architecture

53 Knowledge Based Agent Inferensi adalah proses menyimpulkan fakta dari fakta fakta yang sudah ada di KB KB agent memiliki pengetahuan dasar yang disebut sebagai background knowledge

54 Generic KB-Agent

55 KB agent layer Knowledge level / epistemological layer Logical level Implementation level

56 Syarat Representasi KB Representational Adequacy kemampuan merepresentasikan semua pengetahuan yang dibutuhkan dalam domainnya Inferential Adequacy kemampuan memanipulasi struktur pengetahuan untuk membentuk struktur baru dalam menampung pengetahuan baru hasil inferensi Inferential Efficiency kemampuan untuk manambahkan informasi untuk mempercepat pencarian dalam inferensi Acquisitional Efficiency kemampuan untuk menambah informasi baru secara mudah

57 The Wumpus World

58 Wumpus world Environment sederhana, berguna untuk menguji dan menjelaskan logical agent. Gua gelap dengan banyak ruangan yang dihubungkan dengan lorong-lorong. Agent masuk ke gua untuk mengambil emas yang ada di salah satu ruangan. Wumpus (monster) bersembunyi di salah satu ruangan. Jika agent bertemu, ia akan menjadi santapannya. Terdapat ruang-ruang yang memiliki lubang jebakan yang dapat membunuh agent. Agen hanya punya 1 panah yang bisa membunuh wumpus dari jarak jauh.

59 Performance Measure: ketemu emas: +1000, mati: untuk setiap langkah, -10 untuk memanah Environment: – Petak yang bersebelahan dengan wumpus berbau busuk (smelly) – Petak yang bersebelahan dengan pit (lubang) terasa angin (breezy) – Petak tempat emas berada bercahaya (Glitter) – Agent dapat memanah mati wumpus jika berhadapan langsung – Memanah perlu 1 panah – Agent bisa mengambil emas jika berada di petak emas tersebut ada

60 Actuators: Left turn, Right turn, Forward, Grab, Release, Shoot Sensors: Breeze, Glitter, Smell, Bump (jika agent menabrak tembok), Scream (jika wumpus mati)

61 Background knowledge : Jika ada bau maka ada wumpus di petak tetangga Jika ada angin maka ada lubang di petak tetangga Jika tak ada bau maka tak ada wumpus di petak tetangga Jika tak ada angin maka tak ada lubang di petak tetangga Jika tak ada lubang dan Wumpus boleh maju dst.

62 1.Tak ada angin dan bau di (1,1) maka tak ada Wumpus dan lubang di (2,1) dan (1,2) 2.Maju ke (2,1) 3.Ada angin di (2,1) maka ada lubang di (2,2) atau (3,1) 4.Tak ada bau di (2,1) maka tak ada Wumpus di (2,2) dan (3,1) 5.Mundur ke (1,1) 6.Maju ke (1,2) 7.Ada bau di (1,2) maka ada Wumpus di (3,1) (karena tidak ada Wumpus di (2,2))

63

64

65

66

67

68

69

70

71 Breeze di (1,2) dan (2,1)  tidak ada aksi yang aman Jika distribusi peluang lubang seragam, maka kemungkinan lubang ada di (2,2) lebih besar daripada (1,3)/(3,1) Smell di (1,1)  wumpus ada di (1,2) atau (2,1), agent tidak dapat bergerak. bisa menggunakan strategi: panah lurus ke depan ada wumpus  wumpus mati  aman tidak ada wumpus  aman

72 Soal Latihan  Pruning A B FEGHIJK CD LMNOPQRSTU VWXY max min max min


Download ppt "Pertemuan VIII Mid Term Discussions Alpha Beta Pruning Logical Agent (intro to proportional logic)"

Presentasi serupa


Iklan oleh Google