Pencarian dan Strategi Kontrol 1 Searching and Control

  • Slides: 37
Download presentation
Pencarian dan Strategi Kontrol (1) Searching and Control Strategy Pertemuan 2

Pencarian dan Strategi Kontrol (1) Searching and Control Strategy Pertemuan 2

Review • Ada dua cara pandang tentang AI. Pertama, AI berfokus pada proses berpikir

Review • Ada dua cara pandang tentang AI. Pertama, AI berfokus pada proses berpikir sedangkan yang kedua AI berfokus pada tingkah laku. • Defenisi yang paling tepat untuk AI adalah acting rationally dengan pendekatan rational agent. • Komputer bisa melakukan penalaran secara logis dan juga bisa melakukan aksi secara rasional berdasarkan hasi penalaran tersebut

Teknik-Teknik AI • Banyak teknik yang berkaitan dengan bagaimana pengetahuan direpresentasikan, dimanipulasi dan dinalar

Teknik-Teknik AI • Banyak teknik yang berkaitan dengan bagaimana pengetahuan direpresentasikan, dimanipulasi dan dinalar untuk memperoleh penyelesaian masalah dapat diaplikasikan dalam bentuk kecerdasan buatan • Contoh : Teknik yang membuat sistem bertindak “cerdas” • • • Describe and match (gambarkan dan cocokkan) Constraint satisfaction ( batasan terpenuhi) Generate and test (bentuk dan uji) Goal reduction (reduksi tujuan) Tree searching ( pencarian dengan pohon) Rule based systems (sistem berbasis aturan)

Describe and Match • Model adalah deskripsi mengenai tingkah laku sebuah sistem. Dengan kata

Describe and Match • Model adalah deskripsi mengenai tingkah laku sebuah sistem. Dengan kata lain merupakan representasi sebuah sistem. • Finite State Model terdiri dari satu set himpunan keadaan (states), satu set input kejadian (input events) dan relasi antara keduanya. Jika diberikan suatu keadaan terkini (current states) dan suatu input kejadian maka kita dapat memprediksi keadaan berikutnya (next current states) dari sebuah model

 • Model komputasi adalah bentuk dari finite state machine. Terdiri dari satu set

• Model komputasi adalah bentuk dari finite state machine. Terdiri dari satu set states, satu set start states (kondisi awal / initial states), sebuah input alphabet dan sebuah fungsi transisi (transition function) yang memetakan simbol input dan keadaan terkini ke keadaan selanjutnya (current to next states). • Sebuah set aturan transisi dalam bentuk aturan produksi harus ditetapkan untuk mengubah kondisi state • Relasi Transisi : S S’ • State-Transition system dikatakan deterministik jika setiap state memiliki paling banyak satu successor; dikatakan non deterministic jika paling sedikit satu state memiliki lebih dari satu successor.

Contoh : Menara Hanoi dengan 2 Piringan • Masalah memindahkan 2 piringan dari sumber

Contoh : Menara Hanoi dengan 2 Piringan • Masalah memindahkan 2 piringan dari sumber ke tujuan dengan langkah seminimal mungkin dengan bantuan satu tempat piringan. • Syarat : • Harus memindahkan satu piring dalam satu saat. • Piring yang lebih kecil harus berada di atas piring yang lebih besar. • Memindahkan dari piring yang paling atas.

 • Solusi Sumber : Chakraborty, 2010

• Solusi Sumber : Chakraborty, 2010

Goal Reduction • Prosedur Goal-Reduction adalah satu kasus khusus dalam representasi pengetahuan pada AI

Goal Reduction • Prosedur Goal-Reduction adalah satu kasus khusus dalam representasi pengetahuan pada AI ; alternatif pada representasi logisdeklaratif. • Prosesnya meliputi pembuatan hierarki subdivisi dari tujuan menjadi sub-tujuan hingga sub tujuan mencapai solusi sesaat dan dapat dikatakan bahwa tujuan tercapai. • Contoh : struktur AND-OR tree/ graf

Contoh : Struktur AND-OR tree/graf Sumber : Chakraborty, 2010

Contoh : Struktur AND-OR tree/graf Sumber : Chakraborty, 2010

Constraint Satisfaction • Constraint adalah relasi logis antara variabel mis : lingkaran dalam sebuah

Constraint Satisfaction • Constraint adalah relasi logis antara variabel mis : lingkaran dalam sebuah bujursangkar. Constraints menghubungkan objek tanpa penjelasa spesifik mengenai posisi masing-masing; memindahkan salah satunya , relasi tetap dipertahankan. • Constraint satisfaction adalah sebuah proses menemukan sebuah solusi dari set constraint mengekspresikan nilai-nilai yang dibolehkan untuk variabel-variabel dan menemukan solusi adalah evaluasi dari setiap variabel yang memenuhi semua constraints.

Contoh : N- Queens Puzzle • Masalah : Diberikan integer N, tempatkan N queens

Contoh : N- Queens Puzzle • Masalah : Diberikan integer N, tempatkan N queens pada N*N papan catur yang memenuhi constraint bahwa tidak ada dua queen yang mengancam yang lainnya ( sebuah queen mengancam lainnya jika berada pada baris, kolom dan diagonal yang sama) • Solusi : Untuk memodelkan masalah ini • Asumsi bahwa setiap queen berada pada kolom yang berbeda; • Tetapkan sebuah variabel Ri (i = 1. . N) pada queen di kolom ke-i yang mengindikasikan posisi queen pada baris. • Tetapkan constraint “ tidak mengancam” pada setiap pasangan Ri dan Rj dan terapkan algoritma di atas.

Contoh : 8 – Queens Puzzle

Contoh : 8 – Queens Puzzle

Generate and Test (GT) • Metode ini dimulai dengan menebak solusi yang mungkin dan

Generate and Test (GT) • Metode ini dimulai dengan menebak solusi yang mungkin dan kemudian menguji apakah solusi benar, yang berarti bahwa solusi memenuhi constraints. • Paradigma ini meliputi dua proses : • Membentuk solusi-solusi yang mungkin (hipotesis). • Pengujian untuk mengevaluasi setiap solusi yang diusulkan • Algoritma :

 • Kelemahan : • Tidak efisien ; menghasilkan banyak penetapan nilai variabel yang

• Kelemahan : • Tidak efisien ; menghasilkan banyak penetapan nilai variabel yang salah yang kemudian akan ditolak pada fase pengujian • Generator menghasilkan banyak konflik dan penetapan yang bersifat independen dari konflik. • Untuk efisiensi, pendekatan GT harus didukung oleh pendekatan bactraking. • Contoh : membuka kombinasi kunci tanpa tau kombinasinya.

Rule-Based Systems (RBS) • Rule-based system adalah teknik AI yang sederhana dan paling sukses.

Rule-Based Systems (RBS) • Rule-based system adalah teknik AI yang sederhana dan paling sukses. • Rules (aturan) : IF (kondisi) THEN (aksi) • Sering diatur dalam hierarki (pohon/graf) • Ketika semua kondisi dari aturan terpenuhi maka aturan dapat dibentuk.

Komponen RBS

Komponen RBS

 • Working Memory (Memori kerja) : • Terdiri dari fakta-fakta yang diobservasi atau

• Working Memory (Memori kerja) : • Terdiri dari fakta-fakta yang diobservasi atau diperoleh dari sebuah aturan • <object, attribute, values) • Contoh : < mobil, warna, merah> : “warna mobil saya merah”. • Terdiri dari pengetahuan temporer tentang sesi pemecahan masalah. • Dapat dimodifikasi dengan aturan (rules).

 • Rule Base (RB) : • RB terdiri dari aturan-aturan(rules); setiap aturan adalah

• Rule Base (RB) : • RB terdiri dari aturan-aturan(rules); setiap aturan adalah langkah dalam penyelesaian masalah. • Rules adalah domain pengetahuan dimodifikasi hanya dari luar. • Sintaks : IF <kondisi> THEN < aksi > • Contoh : IF <temperatur, lebih, 20 > • THEN < add (laut, bisa berenang, ya)> • Jika kondisi-kondisi sesuai pada memori kerja dan jika terpenuhi maka aturan dapat diberlakukan. • Aksi RB : “ add” (fakta dari WM) , “remove” (fakta dari WM), “modify” (fakta dalam WM).

 • Interpreter : • Adalah domain mekanisme penalaran (reasoning) independen pada RBS. •

• Interpreter : • Adalah domain mekanisme penalaran (reasoning) independen pada RBS. • Memilih aturan dari Rule Base dan mengaplikasikannya dalam bentuk aksi. • Beroperasi dalam sebuah siklus : • Retrieval – temukan aturan yang sesuai dengan current WM • Refinement – menghapus konflik yang tidak diinginkan, mengatur kembali dan menyelesaikan konflik. • Execution – mengeksekusi aksi-aksi dalam aturan pada set konflik dan mengaplikasikan aturan dengan melakukan aksi.

Tree Searching • Banyak masalah dapat diselesaikan dengan cara mendeskripsikan dalam bentuk search tree.

Tree Searching • Banyak masalah dapat diselesaikan dengan cara mendeskripsikan dalam bentuk search tree. Solusi dari masalah ini dapat diperoleh dengan menemukan sebuah alur (path) melewati sebuah tree. • Proses pencaharian ke seluruh tree hingga diperoleh alur yang memenuhi disebut exhaustive search.

Pemecahan Masalah (Problem Solving) • Ada dua jenis masalah : masalah yang bisa diselesaikan

Pemecahan Masalah (Problem Solving) • Ada dua jenis masalah : masalah yang bisa diselesaikan dengan cara langsung dan masalah yang pemecahannya melalui proses pencarian solusi. AI digunakan pada jenis masalah yang memerlukan proses pencarian (searching) • Problem Solving adalah proses pembentukan solusi dari data yang diobsevasi. Sebuah masalah dibentuk dari sebuah set tujuan, sebuah set objek dan set operasi.

Ruang Masalah (Problem Space) • Sebuah ruang masalah adalah sebuah ruang yang bersifat abstrak.

Ruang Masalah (Problem Space) • Sebuah ruang masalah adalah sebuah ruang yang bersifat abstrak. • Terdiri dari semua kondisi valid (valid states) yang dapat dibentuk dari kombinasi setiap operator pada kombinasi setiap objek. • Sebuah ruang masalah dapat terdiri dari satu atau lebih solusi. • Solusi adalah kombinasi dari operasi dan objek yang digunakan untuk mencapai tujuan.

Pendefinisian Masalah • Sebuah masalah terdiri dari : current state (kondisi terkini), aksi yang

Pendefinisian Masalah • Sebuah masalah terdiri dari : current state (kondisi terkini), aksi yang dapat mentransformasikan satu state ke state yang lain, kondisi yang diinginkan (desired state). • Sebuah ruang masalah dapat didefinisikan secara eksplisit atau implisit. Sebuah ruang masalah harus menggambarkan seluruh kondisi yang diinginkan untuk memecahkan masalah. • Initial state adalah keadaan awal. • Goal state adalah kondisi yang harus dipenuhi (kondisi tujuan)

 • Goal state berisi deskripsi mengenai kondisi yang diinginkan. Deskripsi bisa seluruhnya atau

• Goal state berisi deskripsi mengenai kondisi yang diinginkan. Deskripsi bisa seluruhnya atau dapat sebagian. • Operator melakukan aksi yang dapat mentransformasikan satu state ke state lainnya. Operator terdiri dari Preconditions dan Instructions. Preconditions berisi deksripsi partial dari state yang harus benar agar dapat melakukan aksi. Instruksi memberitahukan bagaimana membentuk kondisi berikutnya (next state). • Problem solving adalah proses pencarian sekuens operator berurutan yang dapat mentransformasikan initial state ke goal state.

Contoh Pendefinisian Masalah • Game 8 -Puzzle : • State Space : Konfigurasi 8

Contoh Pendefinisian Masalah • Game 8 -Puzzle : • State Space : Konfigurasi 8 blok pada papan. • Initial State : semua konfigurasi yang mungkin. • Goal State : Blok dalam urutan spesifik • Aksi : “pindahkan blok kosong” • Kondisi : pemindahan dalam papan • Transformasi : blok kosong berpindah kiri, kanan, atas, bawah Solusi : sekuens optimal dari operator.

Metode Searching • Metode searching adalah metode pemecahan masalah dengan menggunakan aturan yang dikombinasikan

Metode Searching • Metode searching adalah metode pemecahan masalah dengan menggunakan aturan yang dikombinasikan dengan strategi kontrol yang bekerja dalam ruang masalah dan berpindah dari kondisi awal (initial state) ke kondisi tujuan (goal state) dalam sebuah alur (path). • Ruang masalah umumnya dibentuk dalam bentuk tree atau graf untuk memudahkan pemecahan masalah. • Proses pencarian mengeksplorasi semua kemungkinan path dari initial state ke goal state.

Kriteria Metode Searching Untuk mengukur performansi metode searching digunakan 4 kriteria : • Completeness

Kriteria Metode Searching Untuk mengukur performansi metode searching digunakan 4 kriteria : • Completeness : Apakah metode tersebut menjamin penemuan solusi jika solusinya memang ada ? • Time Complexity : berapa lama waktu yang dibutuhkan? • Space Complexity : berapa banyak memori yang diperlukan? • Optimality : apakah metode tersebut menjamin menemukan solusi yang terbaik jika terdapat beberapa solusi yang berbeda ?

Metode-metode Pencarian • Uninformed Search : blind, exhaustive atau bruteforce search Pencarian buta/ tanpa

Metode-metode Pencarian • Uninformed Search : blind, exhaustive atau bruteforce search Pencarian buta/ tanpa informasi yang dapat membantu proses pencarian; tidak terlalu efisien • Informed Search : heuristic atau intelligent search. proses pencarian dengan informasi mengenai masalah, umumnya menebak jarak ke goal state dan efisien. Namun tidak ada jaminan bahwa solusi dapat tercapai.

Depth-First Search (DFS) • Pencarian dilakukan pada satu node dalam setiap level dari yang

Depth-First Search (DFS) • Pencarian dilakukan pada satu node dalam setiap level dari yang paling kiri. Jika pada level yang paling dalam, solusi belum ditemukan, maka pencarian dilanjutkan pada node sebelah kanan. Node yang kiri dapat dihapus dari memori. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada level sebelumnya. Demikian seterusnya sampai ditemukan solusi. Jika solusi ditemukan maka tidak diperlukan proses backtracking (penelusuran balik untuk mendapatkan jalur yang dinginkan).

 • Kelebihan DFS adalah: • Pemakain memori hanya sedikit, berbeda jauh dengan BFS

• Kelebihan DFS adalah: • Pemakain memori hanya sedikit, berbeda jauh dengan BFS yang harus menyimpan semua node yang pernah dibangkitkan. • Jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya secara cepat. • Kelemahan DFS adalah: • Jika pohon yang dibangkitkan mempunyai level yang dalam (tak terhingga), maka tidak ada jaminan untuk menemukan solusi (Tidak Complete). • Jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang berbeda, maka pada DFS tidak ada jaminan untuk menemukan solusi yang paling baik (Tidak Optimal).

Penelusuran : A B D E H L M N I O P C

Penelusuran : A B D E H L M N I O P C F G J K Q

Breadth-First Search (BFS) • Pencarian dilakukan pada semua node dalam setiap level secara berurutan

Breadth-First Search (BFS) • Pencarian dilakukan pada semua node dalam setiap level secara berurutan dari kiri ke kanan. Jika pada satu level belum ditemukan solusi, maka pencarian dilanjutkan pada level berikutnya. Demikian seterusnya sampai ditemukan solusi. Dengan strategi ini, maka dapat dijamin bahwa solusi yang ditemukan adalah yang paling baik (Optimal). Tetapi BFS harus menyimpan semua node yang pernah dibangkitkan. Hal ini harus dilakukan untuk penelusuran balik jika solusi sudah ditemukan.

Penelusuran : A B C D E F G H I J K L

Penelusuran : A B C D E F G H I J K L M N O P Q

Depth-Limited Search (DLS) • Metode ini berusaha mengatasi kelemahan DFS (tidak complete) dengan membatasi

Depth-Limited Search (DLS) • Metode ini berusaha mengatasi kelemahan DFS (tidak complete) dengan membatasi kedalaman maksimum dari suatu jalur solusi. • Level maksimum dari suatu solusi harus diketahui terlebih dahulu. • Jika batasan kedalaman terlalu kecil, DLS tidak dapat menemukan solusi yang ada. DLS menjadi tidak complete jika batasan kedalaman lebih kecil dibandingkan dengan level solusinya.

Uniform Cost Search (UCS) • Konsepnya hampir sama dengan BFS. Perbedaannya adalah BFS menggunakan

Uniform Cost Search (UCS) • Konsepnya hampir sama dengan BFS. Perbedaannya adalah BFS menggunakan urutan level dari yang paling rendah ke paling tinggi sedangkan UCS menggunakan urutan biaya dari yang paling kecil sampai yang terbesar. • UCS berusaha menemukan solusi dengan total biaya yang terendah yang dihitung berdasarkan biaya dari simpul asal menuju ke simpul tujuan. • Biaya dari simpul asal ke suatu simpul n dilambangkan dengan g(n).