lsr, ai: ik103 12/11/2009 1 -...

76
12/11/2009 1 LSR, AI: IK103

Upload: votruc

Post on 03-Apr-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 1LSR, AI: IK103

Page 2: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Romania with step cost in km

Oradea

Zerind

Arad

Timisora

Lugoj

Mehadia

Dobreta

Craiova

Sibiu Fagaras

Rimnicu Vilcea

Pitesti

Giurgiu

Bucharest

Urziceni

Neamt

lasi

Vaslui

Hirsova

Eforie

120

71

15175

118

111

70

75

140

99

80

97

146

138

101

211

85

90

87

92

142

98

86

Straight-line distance

to Bucharest

Arad 366

Bucharest 0

Craiova 160

Dobreta 242

Eforie 161

Fagaras 178

Giurgiu 77

Hirsova 151

Iasi 226

Lugoj 226

Mehadia 241

Neamt 234

Oradea 380

Pitesti 98

Rimnicu Vilcea 193

Sibiu 253

Timisoara 329

Urziceni 80

Vaslui 199

Zerind 374

Kasus Pelacakan untuk Pemilihan rute terpendek

Bagaimana Representasi Graph (start : Arad => tujuan:Bucharest)???12/11/2009 2LSR, AI: IK103

Page 3: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

PELACAKAN Optimal

Sistematis

- Depth-first search (Vertical)

- Breadth-first search (Horizontal)

Trial & Error

Heuristik

- Hill Climbing

- Best-First Search

- Algoritma A

- Algoritma A*

MINIMAX

..........

12/11/2009 3LSR, AI: IK103

Page 4: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

A. Arah pelacakan

B. Topologi proses pelacakan

C. Representasi simpul (Matrik, String, Array)

D. Pemilihan kaidah (rule) yang dapat

diterapkan

E. Penggunaan fungsi heuristik

12/11/2009 4LSR, AI: IK103

Page 5: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Forward

o dimulai dari initial state

o matching dengan pola kiri kaidah pola kanan membentuk

simpul anak

Backward

o dimulai dari goal state

o matching dengan pola kiri kaidah pola kiri membentuk

simpul induk

initial state > goal state backward dan sebaliknya

Faktor percabangan (jumlah rata-rata simpul yang dapat dicapai

secara langsung dari sebuah simpul). Arah pelacakan menuju faktor

percabangan yang kecil

Proses penalaran

12/11/2009 5LSR, AI: IK103

Page 6: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Graph Tree (pohon),

Graph Bebas (Grafik). (0, 0)

(4, 0) (0, 3)

(1, 3) (4, 3)(0, 0)(4, 3) (0, 0) (3, 0)

(0, 0)

(4, 0) (0, 3)

(1, 3) (4, 3) (3, 0)

Graph Tree

Graph Bebas

12/11/2009 6LSR, AI: IK103

Page 7: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 7LSR, AI: IK103

Page 8: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Control

Strategy

Operators

Data Base

- Initial States

- Goal

- Current Status

- Record of previous

transactions

Basic search process

12/11/2009 8LSR, AI: IK103

Page 9: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

TRIAL & ERROR

Metode paling sederhana

Prosedur Pelacakan

1. Ambil state sebagai keadaam awal

2. While state keadaan sasaran do

3. Begin

4. Pilih operator yang dapat diterapkan pada state, dan diset sebagai operator

5. State : = operator (state)

6. End

Penjelasan:

Operator = fungsi untuk penentuan state berikutnya.

Pada langkah 4, operator dipilih secara acak

Pada langkah 5, operator yang dipilih diterapkan pada state membentuk

state baru

Stokastik, tidak menjamin dicapainya keadaan sasaran

Tidak memperlihatkan karakteristik „intelegensi‟

12/11/2009 9LSR, AI: IK103

Page 10: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Pelacakan Depth-First Search

Representasi: Diagram pohon atau grafik

Simpul yang lebih dalam diperiksa terlebih dahulu Penelusuran

simpul-simpul pada suatu cabang sampai kedalaman yang ditentukan.

Prosedur

1. Berikan simpul awal pada daftar open

2. Loop: if open = kosong then exit (fail)

3. n : = first (open)

4. if goal (n) then exit (success)

5. Remove (n, open)

6. Ekspansikan n, berikan semua simpul anak pada kepala open dan

bubuhkan pointer dari simpul anak ke n

7. Kembali ke Loop

Penjelasan:

- Pada langkah 3, elemen pertama daftar open diambil

- Ekspansi simpul n = pembangkitan simpul-simpul anak dari suatu simpul n

12/11/2009 10LSR, AI: IK103

Page 11: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [A]

12/11/2009 11LSR, AI: IK103

Page 12: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [BC]

12/11/2009 12LSR, AI: IK103

Page 13: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [DEC]

12/11/2009 13LSR, AI: IK103

Page 14: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [HIEC]

12/11/2009 14LSR, AI: IK103

Page 15: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [IEC]

12/11/2009 15LSR, AI: IK103

Page 16: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [EC]

12/11/2009 16LSR, AI: IK103

Page 17: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open: [JKC]

12/11/2009 17LSR, AI: IK103

Page 18: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Vertikal (Eksploitasi dulu anak – anaknya) Daftar Open Pointer bapak-anak pencatatan goal (PR ? )

S

A B

C D E F

H G

Urutan pelacakan:

S, A, C, D, B, E, H, G

Goal

12/11/2009 18LSR, AI: IK103

Page 19: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Pelacakan Breadth-First Search

- Bersifat horizontal

- Evaluasi dilakukan terhadap simpul-simpul pada suatu level sebelum

dilanjutkan pada level berikutnya

Prosedur

1. Berikan simpul awal pada open

2. Loop: if open = kosong then exit (fail)

3. n : = first (open)

4. if goal (n) then exit (success)

5. Remove (n, open)

6. Add (n, closed)

7. Ekspansikan n. Berikan pada ekonr open semua simpul anak yang belum

muncul pada open atau closed dan bubuhkan pointer ke n.

8. Kembali ke Loop

12/11/2009 19LSR, AI: IK103

Page 20: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open:[A]

Daftar Closed:[]

12/11/2009 20LSR, AI: IK103

Page 21: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open:[BC]

Daftar Closed:[A]

12/11/2009 21LSR, AI: IK103

Page 22: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open:[CDE]

Daftar Closed:[AB]

12/11/2009 22LSR, AI: IK103

Page 23: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Daftar Open:[DEFG]

Daftar Closed:[ABC]

12/11/2009 23LSR, AI: IK103

Page 24: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Horizontal (Eksplorasi dulu sepupu-sepupunya),

Daftar open dan closed.

Pointer untuk trace back.

12/11/2009 24LSR, AI: IK103

Page 25: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Breadth-First Search

• Kebutuhan waktu dan memori BFS

• Branching factor b=10; (2) 1000 nodes/second; (3) 100 bytes/node

12/11/2009 25LSR, AI: IK103

Page 26: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Mencari jejak dengan cost minimum,

Cost diberikan oleh user.

Prosedur Pelacakan

1. Berikan simpul awal S pada open, g‟(s) = 0

2. Loop : if open = kosong then exit (fail)

3. n : = first (open)

4. if goal (n) then exit (success)

5. Remove (n, open)

6. Ekspansikan n, hitung g‟(ni) untuk semua simpul anak ni dan bubuhkan pointer dari

ni ke n. Berikan semua simpul anak pada open dan urutkan mulai biaya terendahnya

7. Kembali ke Loop

Penjelasan

Pada langkah 6, jika fungsi biaya dari simpul n ke ni didefinisikan sebagai C(n, ni),

maka fungsi biaya dari simpul ni adalah : g‟(ni) = g‟(n) + C(n, ni)

12/11/2009 26LSR, AI: IK103

Page 27: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

G1 & G

2 = Goal

S

A B

C D E F

H G1

I G2

1

1

1

4

4

2 2 3

3 2

Pelacakan untuk memperoleh Solusi Optimal

Daftar Open : (S(0)) (B(1)A(4)) (E(3)A(4)F(4)) (A(4)F(4)G1(6)H(7)) (F(4)C(5)G1(6)D(6)H(7)) (G2(5)C(5)G1(6)D(6)I(6)H(7))

12/11/2009 27LSR, AI: IK103

Page 28: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Heuristik adalah kriteria, metode, atau prinsip-prinsip untuk menentukan pilihan dari sejumlah alternatif mencapai sasaran dengan efektif

Mekanisme Backtracking = kembali ke state sebelumnya jika suatu solusi gagal diperoleh

Heuristik dipergunakan untuk mempersempit ruang pelacakan.

12/11/2009 28LSR, AI: IK103

Page 29: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Hill Climbing

Memilih simpul-simpul suatu cabang yang diperkirakan lebih dekat terhadap

sasaran (nilai heuristik terkecil)

Mirip “depth-first search”

Prosedur:

1. Ambil n sebagai simpul awal

2. Loop: if goal(n) then exit(success)

3. Ekspansikan n, hitung h (ni) untuk semua simpul ni dan ambil simpul dengan nilai

heuristik terkecil next n

4. If h (n) < h (next n) then exit (fail)

5. n := next n

6. Kembali ke Loop

Hill climbing tidak dapat diterapkan pada persoalan yang memiliki puncak-puncak

local.

12/11/2009 29LSR, AI: IK103

Page 30: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

A

C DB E

F G H

M

I J

K L

(15) (13) (14) (14)

(11) (10) (8)

(5) (6)

(4) (2)

Initial

O P

(1)

Goal

(3)

(0)

12/11/2009 30LSR, AI: IK103

Page 31: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Gabungan Breadth-first & Depth-first Pada setiap langkah dipilih simpul yang diperkirakan lebih dekat

terhadap sasaran dari semua simpul yang dibangkitkan (tetapi belum diekspansikan)

Pseudo code untuk representasi Tree :

1. Berikan simpul awal n pada daftar open

2. If open = kosong then exit(fail)

3. N:= first(open)

4. Loop : if goal(n) then exit(success)

5. Remove (n,open)

6. Ekspansi n, masukan semua simpul anak dari n (ni) yang belum muncul pada open ke dalam daftar open dan bubuhkan pointer dari ni ke n, berikan h(ni) untuk setiap simpul pada ni. Ambil simpul yang memiliki nilai h(ni) yang terkecil dari daftar open sebagai next(n).

7. Kembali ke Loop

Catatan h(n) = nilai dari informasi heuristik untuk simpul n.

12/11/2009 31LSR, AI: IK103

Page 32: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Langkah 1

A

Langkah 2

A

B C D(5) (1)(3)

Langkah 3

A

B C D(5)(3)

E F(4) (6)

Langkah 4

A

B C D(5)

E F(4) (6)E F(6) (5)

Langkah 5

A

B C D(5)

E F(6)E F(6) (5)

I J(2) (1)

12/11/2009 32LSR, AI: IK103

Page 33: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

• Untuk tree

1. Berikan simpul awal n pada daftar open

2. if open = kosong then exit(fail).

3. n:=first(open).

4. Loop: if goal(n) then exit(success).

5. Remove (n, open).

6. Ekspansi n, Masukan simpul anak dari n (ni) ke dalam daftar open dan hitung f(ni) untuk tiap ni. Bubuhkan pointer dari ni ke n. Ambil simpul yang memiliki nilai f(ni) yang terkecil dari daftar open sebagai next(n).

7. Kembali Loop

Catatan: f(n) = g(n) + h(n), dimana,

f(n) merupakan fungsi evaluasi dari simpul n,

g(n) merupakan kumulatif cost dari inisial awal ke simpul n(current state).

h(n) merupakan informasi heuristik dari simpul n

12/11/2009 33LSR, AI: IK103

Page 34: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

(7)S

A B

2 3

C D

3 3

E

1 2

(6) (6)

(5) (3) (5)

F H

4 3

I

2 3

(3) (3) (2) J

4

(3)

4

K

3 4

L

4 3

(2) (2)

24

M

33

G1

G2

2 2 2 2

(2)goal goal

A-algorithm

Find optimum solution when the cost to the goal can be inferred

Use knowledge about the problem

Open-list

(S(7)) (A(8)B(9)) (D(8)B(9)C(10)) (B(9)C(10)H(10)I(10))

(D(7)C(10)E(10)H(10)I(10) (H(9)I(9)C(10)E(10))

(I(9)G1(10)C(10)E(10)L(11)) (G2(9)G1(10)C(10)E(10)L(11))

Solution : S B D I G2 12/11/2009 34LSR, AI: IK103

Page 35: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Oradea

Zerind

Arad

Timisora

Lugoj

Mehadia

Dobreta

Craiova

Sibiu Fagaras

Rimnicu Vilcea

Pitesti

Giurgiu

Bucharest

Urziceni

Neamt

lasi

Vaslui

Hirsova

Eforie

120

71

15175

118

111

70

75

140

99

80

97

146

138

101

211

85

90

87

92

142

98

86

Romania with step cost in km

Straight-line distance

to Bucharest

Arad 366

Bucharest 0

Craiova 160

Dobreta 242

Eforie 161

Fagaras 178

Giurgiu 77

Hirsova 151

Iasi 226

Lugoj 226

Mehadia 241

Neamt 234

Oradea 380

Pitesti 98

Rimnicu Vilcea 193

Sibiu 253

Timisoara 329

Urziceni 80

Vaslui 199

Zerind 374

Heuristik

Tentukan rute dari arad ke Bucharest ???

Dgn Greedy search/BFS dan Alg. A*12/11/2009 35LSR, AI: IK103

Page 36: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Arad (366)

12/11/2009 36LSR, AI: IK103

Page 37: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Greedy Search (Best First Search)

12/11/2009 37LSR, AI: IK103

Page 38: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 38LSR, AI: IK103

Page 39: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 39

Goal tercapai:

Arad Sibiu Fagaras Bucharest

Page 40: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 40

Evaluation function f(n)=g(n) + h(n)g(n) the cost (so far) to reach the node.h(n) estimated cost to get from the node to the goal.f(n) estimated total cost of path through n to goal.

Oradea

Zerind

Arad

Timisora

Lugoj

Mehadia

Dobreta

Craiova

Sibiu Fagaras

Rimnicu Vilcea

Pitesti

Giurgiu

Bucharest

Urziceni

Neamt

lasi

Vaslui

Hirsova

Eforie

120

71

15175

118

111

70

75

140

99

80

97

146

138

101

211

85

90

87

92

142

98

86

Romania with step cost in km

Straight-line distance

to Bucharest

Arad 366

Bucharest 0

Craiova 160

Dobreta 242

Eforie 161

Fagaras 178

Giurgiu 77

Hirsova 151

Iasi 226

Lugoj 226

Mehadia 241

Neamt 234

Oradea 380

Pitesti 98

Rimnicu Vilcea 193

Sibiu 253

Timisoara 329

Urziceni 80

Vaslui 199

Zerind 374

Page 41: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 41

Page 42: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 42

Page 43: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 43

Page 44: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 44

Page 45: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 45

Page 46: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 46

Page 47: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 47LSR, AI: IK103

Page 48: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 48LSR, AI: IK103

Page 49: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

2 3

1 8 4

7 6 5

1 2 3

8 4

7 6 5

Initial State Goal State

2 3

1 8 4

7 6 5

2 8 3

1 4

7 6 5

2 3

1 8 4

7 6 5

(A) (B) (C)

Heuristic

h1 = number of mismatched tiles

h2 = sum of the (horizontal and vertical) disatancer of mismatched tiles (manhattan

distance)

h1(A) = 2, h1(B) = 3, h1(C) = 4

h2(A) = 2, h2(B) = 4, h2(C) = 4

The state A is the one closest to the goal.

Kasus: Puzzle8

12/11/2009 49LSR, AI: IK103

Page 50: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 50

Page 51: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Representasi masalah (matrik 3x3, string).

Definisikan rule (up, down, left, right).

Cek rule yang aktif.

Catat perubahan, rule yang aktif, parent untuk mencatat solusi.

Hitung nilai heuristik.

Implementasikan sesuai metode.

12/11/2009 51LSR, AI: IK103

Page 52: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 52LSR, AI: IK103

Page 53: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Minimax

12/11/2009 53LSR, AI: IK103

Page 54: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Ruang keadaan/repesentasi masalah -> graph tree,

Tiap node merepresentasikan keadaan yang mungkin terjadi.

Persoalannya : menentukan child state yang terbaik.

Salah satu metodenya adalah minimax (untuk 2 atau lebih pemain)

Minimax ditemukan pertama kali oleh von neumann Morgenstern tahun 1944, sebagai bagian dari game theory

12/11/2009 54LSR, AI: IK103

Page 55: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Pelacakan: Game

9!+1 = 362,88012/11/2009 55LSR, AI: IK103

Page 56: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

B C D(8)

maxA

(3) (-2) min

Static evaluation function : [-10, 10]

w in for opponent w in for us

Minimax

One-ply search

Ply = gerakan “lawan” atau “kita”12/11/2009 56LSR, AI: IK103

Page 57: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

A

B DC

3

223

a1 a2a3

3 12 8 2 4 6 14 5 2

b1b2

b3 c1 c2 c3 d1 d2 d3

MAX (pihak 1)

MIN (pihak 2)

Pihak 1: mendapatkan giliran melangkah (dinode A) dan sebagai pihak “max”.

Pihak 1 akan memilih langkah “a1” karena memiliki bobot tertinggi diantara “B”, “C”, “D”.

Sedangkan pihak 2 akan memilih langkah “b1” karena memiliki bobot terendah diantara “E”, “F”, “G”.

F GE

12/11/2009 57LSR, AI: IK103

Page 58: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

B C D

A

GF HE KJI

7

P QN O R SL M V WT U X Y

6 8 5 2 3 0 -2 6 2 5 8 9 2

A = maximizing player

Question : What move should he choose ?

12/11/2009 58LSR, AI: IK103

Page 59: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

A = maximizing player

Question : What move should he choose ?

Solusi :

B C D

A

GF HE KJI

7

P QN O R SL M V WT U X Y

6 8 5 2 3 0 -2 6 2 5 8 9 2

MAX

MIN

MAX 7 8 3 0 6 8 9

3 0 8

8

12/11/2009 59LSR, AI: IK103

Page 60: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

n

A B

n1

S

C D E F

n2

n11

n12

n21

n22

max

max

min

n = Max node

ni = child of max node, i = 1 – m

nij = child node of each max node, j = 1 – im

f = evaluation function

MAX : f (ni) = i

max f (ni)

MIN : f (nij) = j

min f (nij)

MAX : f (nij) = i

max {j

min f (nij)}

k = depth of the tree

MAX should select i1 s.t:

f )(nk21 i ii =

1imax

2imin … { f } )(n

k21 i ii

Minimax

12/11/2009 60LSR, AI: IK103

Page 61: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

- Penghitungan bobot dimulai dari kiri ke kanan, bawah ke atas.- α cutoff krn sudah jelas node “E” dengan bobot 8 tidak dipilih oleh MIN B,- β cutoff krn sudah jelas node C dengan bobot 2 akan terpilih oleh MAX A.

α pruning = pemotongan 1 level,β pruning = pemotongan > 1 level

12/11/2009LSR, AI: IK103 61

Page 62: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 62

Page 63: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Contoh α/β pruning

?????

12/11/2009LSR, AI: IK103 63

Page 64: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 64

Page 65: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 65

Page 66: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 66

Page 67: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009LSR, AI: IK103 67

Untuk game catur, fungsi evaluasinya:

Page 68: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Beberapa games melibatkan peluang. Contoh

- lempar dadu,

- Memutar game wheel

Representasi pohon game ditambahkan node chance:◦ Computer moves (max)

◦ Chance node

◦ Opponent moves (min)

12/11/2009 68LSR, AI: IK103

Page 69: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 69LSR, AI: IK103

Page 70: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 70LSR, AI: IK103

Page 71: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 71LSR, AI: IK103

Page 72: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 72LSR, AI: IK103

Page 73: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 73LSR, AI: IK103

Page 74: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 74LSR, AI: IK103

Page 75: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

12/11/2009 75LSR, AI: IK103

Page 76: LSR, AI: IK103 12/11/2009 1 - file.upi.edufile.upi.edu/Direktori/FPMIPA/PRODI._ILMU_KOMPUTER/LALA/Materi... · Forward o dimulai dari initial state o matching dengan pola kiri kaidah

Key Point: Langkah membuat deskripsi formal:

1. Definisikan Ruang keadaan/State Space (konfigurasi yang mungkin dari objek-objek yang relevan)

2. Definisikan Initial State 3. Definisikan Goal State 4. Tentukan kaidah/operator

12/11/2009 76LSR, AI: IK103