Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Depth First Search (DFS) As’ad Djamalilleil

Presentasi serupa


Presentasi berjudul: "Depth First Search (DFS) As’ad Djamalilleil"— Transcript presentasi:

1 Depth First Search (DFS) As’ad Djamalilleil

2 Depth First Search (DFS) DFS dapat diartikan sebagai “pencarian mendalam diutamakan” Berbeda dengan BFS yang mencari penyelesaiannya per level, maka DFS akan terfokus pada satu cabang hingga solusi ditemukan/tidak Bila solusi tidak ditemukan pada state terakhir dari cabang tersebut, maka pencarian dikembalikan ke level sebelumnya dan mencari di cabang yang lain

3 Contoh Kasus Ember Air Ruang Masalah –x = 1, 2, 3 atau 4(isi ember 4 galon) –y = 1, 2 atau 3(isi ember 3 galon) Initial State  (0,0) –Menyatakan jumlah air kedua ember (x,y) masih kosong Goal State  (n,2) –Ember x berisi berapa pun, y berisi 2 galon

4 1if(x < 4)(x,y)  (4,y)Isi penuh ember 4 galon 2if(y < 3)(x,y)  (x,3)Isi penuh ember 3 galon 3if(x > 0)(x,y)  (x-d,y)Buang sebagian air dari ember 4 galon 4if(y > 0)(x,y)  (x,y-d)Buang sebagian air dari ember 3 galon 5if(x > 0)(x,y)  (0,y)Kosongkan ember 4 galon 6if(y > 0)(x,y)  (x,0)Kosongkan ember 3 galon

5 7if(x+y >= 4 and y > 0)(x,y)  (4,y-(4-x)) Tuangkan air dari ember 3 galon ke ember 4 galon sampai ember 4 galon penuh 8if(x+y >= 3 and x > 0)(x,y)  (x-(3-y),3) Tuangkan air dari ember 4 galon ke ember 3 galon sampai ember 3 galon penuh 9if(x+y 0(x,y)  (x+y,0) Tuangkan seluruh air dari ember 3 galon ke ember 4 galon

6 10if(x+y 0)(x,y)  (0,x+y) Tuangkan seluruh air dari ember 4 galon ke ember 3 galon 11(0,2)  (2,0)Tuangkan 2 galon air dari ember 3 galon ke ember 4 galon 12(2,y)  (0,y)Buang 2 galon air dalam ember 4 galon sampai habis

7 0,0 Level 1 Initial State 

8 0,0 4,0 Level 1 Level 2 Initial State 

9 0,0 4,0 4,3 Level 1 Level 2 Level 3

10 0,0 4,0 4,3 0,3 Level 1 Level 2 Level 3 Level 4

11 0,0 4,0 4,3 0,3 Level 1 Level 2 Level 3 Level 4 4,3

12 0,0 4,0 4,3 0,3 Level 1 Level 2 Level 3 Level 4 0,0

13 4,0 4,3 0,3 Level 1 Level 2 Level 3 Level 4 3,0 Level 5

14 0,0 4,0 4,3 0,3 Level 1 Level 2 Level 3 Level 4 3,0 Level 5

15 3,0 Level 5 4,0

16 3,0 Level 5 3,3 Level 6

17 3,0 Level 5 3,3 Level 6 4,2 Level 7

18 Solusinya Air pada ember 4 galon (x) Air pada ember 3 galon (y) Aturan produksi yang digunakan

19 Bagaimana jika pada akhir cabang tidak ditemukan solusi ? Maka kembali ke level sebelumnya dan melanjutkan pencarian pada cabang yang lain

20 Contoh

21 A Level 1

22 A B Level 2 Apakah state B pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan B Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state B Apakah state B merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya

23 A B C Level 1 Level 2 Level 3 Apakah state C pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan C Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state C Apakah state C merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya

24 A B C A Level 1 Level 2 Level 3 Level 4 Apakah state A pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan A Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state A Apakah state A merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya

25 A B C AB Level 1 Level 2 Level 3 Apakah state B pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan B Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state B Apakah state B merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya Level 4

26 A B C AB Level 1 Level 2 Level 3 Apakah state C pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan C Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state C Apakah state C merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya Level 4

27 A B C AB Level 1 Level 2 Level 3 Apakah state D pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan D Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state D Apakah state D merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D Level 4

28 A B C AB Apakah state A pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan A Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state A Apakah state A merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A

29 A B C AB Apakah state D pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan D Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state D Apakah state D merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A

30 A B C AB Apakah state B pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan B Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state B Apakah state B merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A

31 A B C AB Apakah state E pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan E Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state E Apakah state E merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A E

32 A B C AB Apakah state F pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan F Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state F Apakah state F merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A E F

33 A B C AB Apakah state B pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan B Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state B Apakah state B merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A E F B

34 A B C AB Apakah state F pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan F Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state F Apakah state F merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A E F B

35 A B C AB Apakah state G pernah dikerjakan sebelumnya? Jika YA  cari alternatif state lain pada level yg sama dengan G Jika tidak ada alternatif yg se-level  kembali ke state sebelumnya Jika TIDAK  kerjakan state G Apakah state G merupakan solusi? Jika YA  proses pencarian selesai Jika TIDAK  lanjutkan pencarian pada level berikutnya D A E F B G


Download ppt "Depth First Search (DFS) As’ad Djamalilleil"

Presentasi serupa


Iklan oleh Google