3.Ssss(Ucs+Bfh)

Embed Size (px)

Citation preview

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    1/25

    Lecture 3State Space Solution Search (UCS+BFS)

    Joan Santoso, S.Kom.

    Sekolah Tinggi Teknik Surabaya

    1

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    2/25

    Metode pencarian dalam State SpaceSearch dibagi menjadi 2 macam, yaitu : Pencarian tanpa informasi (Blind Search)

    + Breadth First Search

    + Depth First Search+ Uniform Cost Searcch

    Pencarian heuristik (Informed/Heuristic

    Search)+ Best First Search

    + Optimum A*2

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    3/25

    3

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    4/25

    4

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    5/25

    5

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    6/25

    6

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    7/25

    BFS BFS selalu mencari shortest path menuju ke

    goal Sangat efficient jika solusi ditemukan pada

    kedalaman yang pendek Tidak efficient jika solusi berada pada

    kedalaman yang dalam. DFS

    Dapat terperangkap di dalam tree Lebih effisien jika solusi berada di dalam

    kedalaman tree Siapa yang lebih baik ? 7

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    8/25

    Renegade node adalah node yangmelanggar constraint yang telahditetapkan pada masalah yangdiberikan

    Recurring Node adalah node yangidentik dengan salah satu ancestornya.Jika node x ke n indentik denan node-node x ke 0... X ke n-1, yang terdapatpada path x ke 0 s.d. x ke n, maka nodex ke n tersebut adalah recurring node. 8

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    9/25

    Contoh dari renegade node padaproblem missionaris and canibal.

    9

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    10/25

    Contoh dari recurring node padaproblem missionaris and canibal.

    10

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    11/25

    Konsep yang dimiliki hampir samadengan BFS. UCS VS BFS

    BFS melakukan ekspansi dari levelterendah ke level terdalam. UCS melakukan ekspansi dengan

    menggunakan biaya terendah

    UCS berusaha menemukan solusimenuju goal dengan cost terendah

    Cost dilambangkan dengan fungsi g(x) 11

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    12/25

    Karena mengikuti konsep dari BFS makaUCS memiliki solusi yang optimal. Syarat yang harus dipenuhi oleh pohon

    UCS adalah g(SUCCESSOR(n))>=g(n)untuk setiap node n.

    Jika syarat tidak dipenuhi maka akanmenjadi tidak complete atau optimal.

    12

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    13/25

    13

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    14/25

    Disebut juga Informed Search atau IntellegentSerch

    Problem pada Blind Search (Brute Force Search,Systematic Search, Uninformed Search):Combinatorial Explosion .

    Inilah sebabnya blind search sering disebutsebagai Exhaustive Search (Pencarian Solusiyang Melelahkan).

    Pada heuristic search, ditambahkan informasikhusus yang spesifik untuk masalahnya(domain-specific information) saat memilihpath / operator yang dianggap terbaik dalammelanjutkan pencarian solusi. 14

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    15/25

    Heuristik Search didefinisikan denganfungsi h(x).

    h(x) yang baik haruslah cepat untukdihitung.

    Karakteristik nilai h(x): h(x)>=0, untuk semua state x h(x)=0, menunjukkan bahwa x adalah sebuah

    goal state h(x)=tak terbatas, menunjukkan bahwa state n

    adalah sebuah kondisi saat mana sebuah goalstate tidak mungkin terjangkau. 15

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    16/25

    Keuntungan penerapan heuristic search dalampencarian solusi: Heuristic search memiliki fleksibilitas tinggi yang

    memungkinkan untuk digunakan pada masalahyang kompleks dan tidak terstruktur.

    Blind search menjamin ditemukannya solusioptimal, tetapi kurang layak untuk digunakandalam komputasi karena kebutuhan memory (danwaktu) yang sangat besar.

    Metode heuristic lebih sederhana untuk dipahamioleh pengambil keputusan, secara khusus apabiladidukung oleh analisis kualitatif .

    Suatu metode heuristic dapat digunakan sebagaibagian dari prosedur iteratif yang tetap menjaminditemukannya sebuah solusi optimal. 16

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    17/25

    Road Map (Route Finding) h(x) : Euclidian distance (akar dari dx^2 +

    dy^2) antara 2 kota yang berbeda. Nilai minimal adalah yang dianggap terbaik.

    Missionaries and Cannibals Jumlah orang (total misionari dan kanibal) di

    tepi kiri sungai.

    8-Puzzle h(x) : Jumlah kotak yang tidak cocok

    (mismatched) pada 2 konfigurasi papan yangberbeda. 17

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    18/25

    Pencarian heuristik (Informed/HeuristicSearch) Best First Search Optimum A*

    Implementasi dari OPEN berubahmenjadi priority queue sedangkan closetetap berupa stack.

    18

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    19/25

    Priority queue pada Java sudah menjadilibrary bawaan. Contoh Definisi :PriorityQueue open =

    new PriorityQueue(32000,comparator);class PairStateComparator implements Comparator{

    public int compare(PairState x, PairState y){

    if (x.getfx() < y.getfx()){

    return -1;}if (x.getfx() > y.getfx()){

    return 1;}return 0;

    }}

    19

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    20/25

    Untuk implementasinya Priority Queuedapat diimplementasikan dengan heapdata structures seperti binary heap.

    Selain dengan menggunakan tree juga

    dapat menggunakan self balancingbinary search tree.

    Untuk implementasi bagi data integer

    dapat menggunakan struktur dataseperti berikut agar lebih optimal : van Emde Boas tree Fusion Tree 20

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    21/25

    21

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    22/25

    Dua cara populer untuk mengukur unjukkerja dari State-Space Solution Searchadalah penetrance dan effective branching

    factor . Penetrance dihitung secara sederhana

    dengan rumus:L

    P = ---N

    dimana:+ L adalah panjang dari path solusi+ N adalah total jumlah node yang digenerate dalam

    state-space. 22

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    23/25

    Secara umum penetrance yang lebih besarmenunjukkan performansi algoritma yanglebih baik.

    Branching Factor adalah rata-rata children

    yang diexpand untuk setiap node dalamtree. Search yang dilakukan dengan

    menggunakan heuristic sempurna,

    h(x)=h'(x) akan menyebabkan branchingfactor=1. Artinya algoritma hanya expandsebuah child yang selalu merupakanoptimal search path. 23

    Sekolah Tinggi Teknik Surabaya

  • 7/31/2019 3.Ssss(Ucs+Bfh)

    24/25

    Bahan Kuliah Artificial Intelgence STTS yang dibuat oleh Ir.Gunawan, M.Kom.

    Slide AI State Space Solution Search University of Victoria CENG 420.

    http://en.Wikipedia.org/wiki/State_space_search

    http://www.cis.temple.edu/~giorgio/cis587/readings/search.html

    http://en.wikipedia.org/wiki/Priority_queue http://www.cs.trincoll.edu/~ram/cpsc352/notes/search.ht

    ml AIMA Slides, (C) Stuart Russel and Peter Norvig, 1998 Rajjan Shinghal. 1992.Formal Concepts in Artificial

    Intellegence. Chapman & Hall Suyanto, ST, MSC., 2007, Artificial Intelligence Searching -

    Reasoning-Planning- Learning, Informatika:Bandung.

    24

    Sekolah Tinggi Teknik Surabaya

    http://en.wikipedia.org/wiki/State_space_searchhttp://www.cis.temple.edu/~giorgio/cis587/readings/search.htmlhttp://www.cis.temple.edu/~giorgio/cis587/readings/search.htmlhttp://en.wikipedia.org/wiki/Priority_queuehttp://www.cs.trincoll.edu/~ram/cpsc352/notes/search.htmlhttp://www.cs.trincoll.edu/~ram/cpsc352/notes/search.htmlhttp://www.cs.trincoll.edu/~ram/cpsc352/notes/search.htmlhttp://www.cs.trincoll.edu/~ram/cpsc352/notes/search.htmlhttp://en.wikipedia.org/wiki/Priority_queuehttp://www.cis.temple.edu/~giorgio/cis587/readings/search.htmlhttp://www.cis.temple.edu/~giorgio/cis587/readings/search.htmlhttp://en.wikipedia.org/wiki/State_space_search
  • 7/31/2019 3.Ssss(Ucs+Bfh)

    25/25

    25

    S k l h Ti i T k ik S b