TEMU BALIK INFORMASI
MODEL BOOLEAN DAN ADVANCED BOOLEAN
Definisi Aljabar Boolean
Aljabar boolean merupakan aljabar yang berhubungan dengan variabel-variabel biner dan operasi-operasi logik. Variabel-variabel diperlihatkan dengan huruf-huruf alfabet, dan tiga operasi dasar dengan AND, OR dan NOT (komplemen). Fungsi boolean terdiri dari variabel-variabel biner yang menunjukkan fungsi, suatu tanda sama dengan, dan suatu ekspresi aljabar yang dibentuk dengan menggunakan variabel-variabel biner, konstanta-konstanta 0 dan 1, simbol-simbol operasi logika, dan tanda kurung.
Suatu fungsi boolean bisa dinyatakan dalam tabel kebenaran. Suatu tabel kebenaran untuk fungsi boolean merupakan daftar semua kombinasi angka-angka biner 0 dan 1 yang diberikan ke variabel-variabel biner dan daftar yang memperlihatkan nilai fungsi untuk masing-masing kombinasi biner.
Operasi – Operasi Yang Terdapat Pada Model Boolean
- Operasi AND
Operasi AND merupakan operasi boolean yang yang akan memghasilkan nilai 1 ketika dipasangkan dengan 1 pula. Operasi AND dilambangkan dengan dot ( . ). Operasi ini hanya akan menghasilkan nilai benar jika kedua variabel bernilai benar, selain itu akan bernilai salah.
- Operasi OR
Operasi OR merupakan operasi yang hanya akan menghasilkan nilai benar(1) jika salah satu variabelnya bernilai benar(1) serta akan menghasilkan nilai salah jika kedua variabelnya bernilai salah. Operasi OR dilambangkan dengan plus (+).
- Operasi Turunan / Operasi logika NOR
Operasi NOR merupakan perpaduan dari operasi OR dan INVERS / NOT. Operasi NOR kan menghasilkan keluaran OR yang di inverskan. Operasi NOR mempunyai dua buah lambang yaitu lambang OR (+) dan INVERS / NOT ( ‘ ).
- Operasi logika NAND
Operasi NAND merupakan perpaduan dari operasi AND dan INVERS / NOT. Operasi NAND akan menghasilkan keluaran AND yang di inverskan. Operasi NAND mempunyai dua buah lambang yaitu lambang AND ( . ) dan INVERS / NOT ( ‘ ).
- Operasi logika EXOR
EXOR berarti exklusive OR berarti “yang satu atau yang satunya tapi tidak keduanya”. Operasi XOR akan menghasilkan keluaran 1(benar) jika jumlah masukan yang bernilai 1(benar) berjumlah ganjil. Operasi XOR merupakan hasil dari (a’.b) + (a.b’) atau biasa ditulis a b. Tabel kebenaran untuk operasi XOR.
Definisi Model Boolean
Model penelusuran informasi dimana kita dapat membentuk query berdasarkan aturan Boolean dan dikombinasikan dengan operator AND, OR, dan NOT serta menggunakan tanda kurung untuk menentukan scope operator. Model Boolean ini berdasarkan teori himpunan dan aljabar Boolean.
Dokumen adalah himpunan dari istilah (term) dan query adalah pernyataan Boolean yang ditulis pada term. Istilah (term) dalam sebuah query dihubungkan dengan menggunakan operator AND, OR atau NOT. Pada proses penelusuran model Boolean, setiap kata dirubah ke dalam ekspresi Boolean sehingga menghasilkan sebuah aturan binary yang disebut incidence matrix. Sehingga variabel nilai bobot istilah indeks selalu bersifat biner (dua pilihan), yaitu nol atau satu. Jika nilainya satu maka model Boolean menyimpulkan bahwa dokumen relevan terhadap sebuah permintaan (query). Selebihnya, kalau bernilai nol maka dokumen dianggap tidak relevan.
Untuk dapat melakukan proses penelusuran Booelan, keberadaan inverted index sangat diperlukan, karena index ini akan sangat membantu dalam proses penelusuran yang efektif.
Langkah melakukan inverted index :
- Kumpulkan dokumen untuk diindeks
- Lakukan pemisahan teks, mengubah setiap dokumen menjadi daftar token
- Lakukan proses linguistik, menghasilkan daftar token normalisasi, yang merupakan istilah pengindeksan
- Indeks dokumen yang terjadi pada setiap istilah dengan menciptakan sebuah indeks terbalik (inverted index), yang terdiri dari kamus dan posting
Beberapa langkah yang dapat dilakukan dalam Proses Booelan Retrieval ini antara lain:
- Lakukan indexing, dalam hal ini inverted index
- Temukan kata/term query didalam kamus dan daftar posting
- Lakukan operasi dari operator logika yang diinginkan dengan mencari irisan dari posting list
Contoh untuk memproses permintaan kata sambung berikut :
Contoh Kalimat : Brutus AND Calpurnia
Lakukan inverted index :
- Brutus Cari di Kamus
- Ambil posting nya
- Calpurnia Cari di Kamus
- Ambil posting nya
- Perpotongan (bagian yang sama) dari daftar dua posting
Operasi perpotongan (intersection)
adalah satu hal penting: kita perlu memotong daftar postingan sehingga dapat dengan cepat menemukan dokumen yang mengandung kedua istilah. (Operasi ini kadang-kadang disebut sebagai penggabungan daftar posting: nama ini mencerminkan sedikit berlawanan menggunakan istilah penggabungan algoritma untuk keluarga umum algoritma yang menggabungkan daftar diurutkan beberapa oleh interleaved memajukan pointer melalui masing-masing, di sini kita menggabungkan daftar dengan operasi logika AND.)
Algoritmanya untuk perpotongan dua daftar posting, p1 dan p2 :
INTERSECT(p1, p2)
- answer ← h i
- while p1 6= NIL and p2 6= NIL
- do if docID(p1) = docID(p2)
- then ADD(answer, docID(p1))
- p1 ←next(p1)
- p2 ←next(p2)
- else if docID(p1) < docID(p2)
- then p1 ←next(p1)
- else p2 ←next(p2)
- return answer
Untuk memproses query yang lebih rumit dapat dilakukan optimasi query. Optimasi Query adalah proses pemilihan bagaimana mengatur pekerjaan menjawab query sehingga jumlah pekerjaan yang harus dilakukan oleh sistem lebih sedikit. Unsur utama untuk query Boolean ini adalah urutan daftar postingan yang diakses.
Algoritma untuk query kata penghubung yang mengembalikan set dokumen yang berisi setiap istilah dalam daftar istilah masukan:
INTERSECT(ht1, . . . , tni)
- terms ← SORTBYINCREASINGFREQUENCY(ht1, . . . , tni)
- result ←postings( f irst(terms))
- terms ←rest(terms)
- while terms 6= NIL and result 6= NIL
- do result ← INTERSECT(result, postings( f irst(terms)))
- terms ←rest(terms)
- return result
Model Boolean tidak melakukan pengambilan peringkat. Namun, model ini masih dijadikan pilihan utama untuk search engine dengan memasukkan tambahan seperti operator kedekatan panjang. Sebuah operator kedekatan adalah cara menentukan bahwa dua istilah dalam query harus terjadi dekat satu sama lain dalam dokumen, dimana kedekatan dapat diukur dengan membatasi jumlah kata intervensi yang diizinkan atau dengan mengacu pada unit struktural seperti kalimat atau paragraf .
Beberapa Keuntungan & Kerugian dari Model Boolean
Keuntungan menggunakan model Boolean :
- Model Boolean merupakan model sederhana yang menggunakan teori dasar himpunan sehingga mudah diimplementasikan.
- Model Boolean dapat diperluas dengan menggunakan proximity operator dan wildcard operator.
- Adanya pertimbangan biaya untuk mengubah software dan struktur database, terutama pada sistem komersil.
Kerugian menggunakan Model boolean :
- Model Boolean tidak menggunakan peringkat dokumen yang terambil. Dokumen yang terambil hanya dokumen yang benar-benar sesuai dengan pernyataan boolean/query yang diberikan sehingga dokumen yang terambil bisa sangat banyak atau bisa sedikit. Akibatnya ada kesulitan dalam mengambil keputusan
- Teori himpunan memang mudah, namun tidak demikian halnya dengan pernyataan Boolean yang bisa kompleks. Akibatnya pengguna harus memiliki pengetahuan banyak mengenai query dengan boolean agar pencarian menjadi efisien
- Tidak bisa menyelesaikan partial matching pada query.
Untuk mengatasi masalah ini, maka dikembangkan operasi pembobotan dokumen berdasarkan frekuensi kemunculan istilah (term) pada dokumen tersebut. Model Boolean juga dikombinasikan dengan content-based navigation dengan menggunakan konsep lattice, dimana shared term dari dokumen yang terambil sebelumnya digunakan untuk memperbaiki dan meng-expand query.
ADVANCED BOOLEAN
Sumber Referensi :
- https://vajza.wordpress.com/2010/10/13/boolean-model/
- http://hirupmotekar.com/2017/04/18/anjas-eko-p-konsep-dasar-dan-metode-serta-model-model-dalam-tbi/
- http://hirupmotekar.com/2017/04/25/iqbal-rifadhli-pertemuan-2-konsep-metode-dan-model-dalam-tbi/
- http://slideplayer.info/slide/11910495/
- http://nalasumarna.blogspot.co.id/2017/09/pengertian-aljabar-boolean.html
- http://tips-triks-ilmu-komputer.blogspot.co.id/2014/10/pengertian-boolean.html
download ppt nya disini : ppt4