Boolify – Boole’owska „wyszukiwarka” edukacyjna

Artur Machlarz ByArtur Machlarz

Boolify – Boole’owska „wyszukiwarka” edukacyjna

Boolify to nie tyle wyszukiwarka internetowa, co projekt edukacyjny przedstawiający zasadę działania operatorów Boole’a w wyszukiwarkach – uczniowie mogą się przekonać na przykładach, jak bardzo zmieniają się listy wyników wyszukiwania przy zastosowaniu różnych operatorów. Walor edukacyjny tego programu niestety pomniejsza brak bogatszego komentarza do działań, które można wykonać przy pomocy operatorów Boole’owskich – poza linkiem do pracy Boole’a An Investigation of the Laws of Thought.

Boolify

Czym są tzw. „operatory Boole‚owskie” powinien wiedzieć każdy użytkownik wyszukiwarek internetowych – każdy z nas miał okazję je bardziej lub mniej świadomie stosować przy wyszukiwaniu obejmującym więcej niż jeden termin. Złożone z kliku terminów zapytania nie są przez współczesne wyszukiwarki traktowane jak zapytania składające się z kilku niezależnych słów. Dla wyszukiwarek lista terminów użytych w zapytaniu to lista logicznie powiązanych warunków, które muszą być spełnione przez zbiór dokumentów wskazanych w odpowiedzi. Na przykład, jeśli w zapytaniu użyjemy słów Rudawy Janowickie, nie otrzymamy po prostu zbioru linków do stron zawierających dowolny z tych terminów. Priorytetem dla wyszukiwarki będzie wydobycie ze zbioru dokumentów takich, które zawierają wszystkie terminy: zarówno Rudawy jak i Janowickie. Jeśli w Google wprost nie wskażemy zasady łączenia warunków (czyli terminów), priorytet będzie miał ich iloczyn: spełnione będą musiały być łącznie wszystkie.

Do tzw. operatorów Boole’owskich zalicza się przede wszystkim odpowiedniki podstawowych elementów algebry Boole’a. W Google są to dwuargumentowe operatory AND (+), OR (|) i jednoargumentowy NOT (-). Użycie tych operatorów w zapytaniu pozwala poszerzyć lub zawęzić listę wyników. Jeśli zatem użylibyśmy np. operatora NOT i w Google próbowali wyszukać dokumenty dla Rudawy -Janowickie, otrzymamy inne dokumenty, niż wtedy gdy nie użyjemy żadnego operatora (czyli domyślnie użyty zostanie AND). Wyszukiwarka wybiera dokumenty, w których charakterystyce zawarte są określone w zapytaniu terminy: w zależności od użytego operatora – wszystkie, przynajmniej jeden, lub wszystkie poza wykluczonymi. Na podstawie tych kryteriów wybierany jest podzbiór dokumentów ze zbioru dokumentów indeksowanych przez wyszukiwarkę.

Działanie operatorów Boole’owskich w wyszukiwarkach to po prostu zastosowanie w wyszukiwarkach reguł algebry Boole’a: operacji na zbiorach, w przypadku wyszukiwarek traktowanych jako operacji na zbiorach dokumentów lub stron internetowych, charakteryzowanych przez występujące w różnych polach opisu dokumentów terminy. Elementy algebry Boole’a mogą w różnych systemach wyszukiwawczych znaleźć różną formę zapisu (w samej wyszukiwarce Google możemy je wprowadzić na trzy różne sposoby), jednak ich funkcja zawsze jest identyczna: suma, iloczyn lub dopełnienie zbioru. Interpretacja tych operatorów także będzie zawsze zgodna z podstawowymi zasadami interpretacji wyrażeń algebry Boole’a (suma dwóch zbiorów jest zbiorem elementów należących do obu zbiorów, iloczyn zbiorem części wspólnej, dopełnienie lub negacja zbioru składa się zaś z elementów uniwersum nie należących do wskazanego zbioru).

Podstawowa postać algebry Boole’a składa się z dziedziny, sumy zbiorów, iloczynu zbiorów, dopełnienia zbioru oraz wyróżnionych elementów 0 (zbiór pusty) i 1 (uniwersum zbiorów). Jest to algebra bardzo prosta, ponieważ miała być maksymalnie ogólna (według Boole’a oddawała ona najogólniejsze prawa ludzkiego myślenia). Z czasem, w różnych systemach logicznych, w których zastosowanie znajdowały funkcje Boole’owskie (jak np. w rachunku zdań), w zależności od potrzeb, dodawano elementy pozwalające na wyrażenie innych funkcji logicznych. W wyszukiwarkach internetowych funkcjonującym czasami operatorem typu Boole’owskiego jest NEAR – funkcja ta pozwala określić warunek występowania w dokumencie dwóch terminów w określonej odległości. Zazwyczaj możemy także określić obszar występowania danego terminu (tytuł strony, treść itp.) i ograniczyć dziedzinę wyszukiwania (np. do dokumentów w określonym języku, stworzonych w określonym czasie). W polach liczbowych możemy także wprowadzać operatory typu „<„, „>”. W różnych wyszukiwarkach możemy stosować także nawiasowanie, używać znaków maskujących (? i *) i cudzysłowów.

Operatory Boole’owskie pozwalają zdefiniować warunki wyboru odpowiednich dokumentów z całego ich zbioru. Operatory Boole’a nie mają zaś nic wspólnego z porządkowaniem zdefiniowanego zbioru dokumentów. Nie odpowiadają np. w żadnym razie za to, w jaki sposób ostatecznie prezentuje nam się lista wyników w Google. Działania Boole’owskie stanowią jednak logiczny fundament budowania i interpretowania złożonych zapytań w olbrzymiej większości wyszukiwarek.

AM.

O autorze

Artur Machlarz

Artur Machlarz administrator

Od 2005 pracuje jako infobroker, zajmuje się wyszukiwaniem i opracowywaniem informacji. Specjalizuje się w tworzeniu unikalnych baz danych. Jako pracownik naukowy zajmuje się modelami przetwarzania informacji w systemach rozproszonych. Lubi się wspinać i grać na kontrabasie.

Odpowiedz

Time limit is exhausted. Please reload the CAPTCHA.