KOMPUTRUS – doradca przy zakupie zestawu komputerowego

Raport wykonany w ramach projektu z przedmiotu "Metody i Algorytmy Sztucznej Inteligencji"


Prowadzacy: dr inż. Witold Paluszyński

Wykonał: Łukasz Bielecki 133058 IV ARS

Data: 15.06.2008r

KOMPUTRUS – A computer configuration consultant

This report has been prepared as a requirement for the course: "Methods and Algorithms of Artificial Intelligence"


Conducted by: Dr Witold Paluszyński

Author: Łukasz Bielecki 133058 IV ARS

Date: 15.06.2008r

Abstract

This raport describes an attempt to create a chatterbot with basic knowledge about personal computer configurations. Bot named "Komputrus" has got knowladge base about following computer configurations : Earl, Harley, Iriois, Tracy, Zeke and Vince . The bot is able to tell us about technologies used in computer, construction, purpose of each configuration, prize. If necessary you will recieve informations about sites with more detailed informations.




Opis zadania
Sposób realizacji
Język AIML
Testowanie
Przykładowe rozmowy
Wnioski
Źródła


1. Opis zadania

Celem projektu było stworzenia chatterbota udzielającego informacji na temat zestawów komputerowych. Bot o imieniu "Komputrus" zawiera zbiór podstawowych informacji o następujących zestawach komputerowych: Earl, Harley, Irinois, Tracy, Zeke oraz Vince. Potrafi odpowiedzieć na pytania dotyczące zastosowanych technologii, budowy, zastosowania, a w razie konieczności zwrócić strony zawierające potrzebne dla nas informacje.



2. Sposób realizacji

Do realizacji projektu posłużyłem się darmowym programem do tworzenia chatterbotów GaitoBot ,który w łatwy, szybki i wygodny sposób umożliwia tworzenia bazy wiedzy naszego bota dzięki wbudowanym gotowym Tagom. Jest to edytor języka AIML (Artificial Intelligence Markup Language) który został stworzony na potrzeby tworzenia chatterbotów.

Screen gaito

Rys. 1. Wygląd edytora języka AIML.


3. Język AIML

AIML - Artificial Intelligence Markup Language (ang. Język Opisu Sztucznej Inteligencji) jest językiem znacznikowym pochodnym od XML. Język AIML służy do opisu bazy wiedzy dla programów, których celem jest prowadzenie rozmowy, potocznie zwanych „chatterbotami”. Język ten został opracowany w 1995 roku przez amerykańskiego naukowca dr Richarda Walles’a pierwotnie jako baza wiedzy dla chatterbota A.L.I.C.E., który stanowi mocno rozwiniętą wersję innego znanego chatterbota „Eliza”.


Podczas programowania w języku AIML należy pamiętać:
  • W dowolnym dokumencie AIML musimy zaczynać od znacznika <aiml> i kończyć znacznikiem </aiml>
  • dokument AIML może składa się z dowolnej liczby obiektów zwanych kategoriami i które umieszczamy między znacznikami <category> i </category>
  • między znacznikami <pattern> i </pattern> należy umieszczać wypowiedzi użytkownika dotyczących danej kategorii
  • między znacznikami <template> i <template> definiujemy reakcję bota na wypowiedź użytkownika
  • jedna kategorii może się składać tylko z jednego elementu <pattern></pattern> i jednego elementu <template></template>
  • między znacznikami <srai> i </srai> możemy definiować synonimy dla pewnych określonych wyrażeń
  • <star/> powoduje umieszczenie wewnątrz Tagu <template> ciągu znaków
  • element umieszczony między znacznikami <that> i </that> (umieszczone między znacznikiem <pattern>, a znacznikiem <template>) rozszerza możliwości <template> o sprawdzenie jednej z poprzednich wypowiedzi chatterbota
  • między znacznikami <think> i </think> (umieszczone wewnątrz <template>) umieszcza się wypowiedzi które nie mają być wyświetlone na ekranie.
  • Do zapisywania i odczytywania zmiennych służą znaczniki <set></set> i <get>
  • między znacznikami <condition> i </conditon> (Umieszczony wewnątrz znacznika <template>) można sprawdzić wartości określonej zmiennej i reakcję chatterbota w zależności od otrzymanego wyniku


4. Testowanie

Do testowania zaprosiłem grupę znajomych, wśród których były osoby dobrze obeznane w temacie, mniej obeznane i praktycznie nic nie mające wspólnego. Pozwoliło mi to na sprawniejsze testowanie i rozbudowanie bota. Osoby testujące sprawdzały bazę wiedzy, dzięki czemu mogłem modyfikować i rozbudowywać bazę wiedzy bota. Część osób wykazywała się większą wiedzą od bota, co w pewnym sensie „zatykało” bota.



5. Przykładowe rozmowy

Rozmowa 1:

Human: Dzien dobry
Komputrus: Witaj, czego chcesz sie dowiedziec? Przywitanie
Human: Potrzebuje komputera
Komputrus: Moje zdolnosci interakcji z otoczeniem sa ograniczone, gdyz jestem programem, który tylko i wylacznie udziela podstawowych informacji na temat zestawow komputerowych Sprecyzowanie zdolności bota
Human: Ile posiadasz zestawow? Pytanie o zestawy
Komputrus: Na dzien 11.06.08r - 6 Odpowiedz
Human: Jakie posiadasz zestawy komputerowe? Konkretne pytanie o zestawy
Komputrus: Harvey, Irinoise, Tracy, Earl, Zeke, Vince, ktory zestaw Cie interesuje ? Odpowiedz bota
Human: Co powiesz o Tracy? Pytanie o zestaw Tracy
Komputrus: Cyclone TRACY to propozycja skierowana do uzytkowników indywidualnych wykorzystujacych komputer do wszechstronnych zastosowan domowych i biurowych. W serii Cyclone TRACY zastosowano podzespoly renomowanych producentów co dodatkowo daje gwarancje niezawodnosci i pozwala w pelni korzystac z multimedialnych programów edukacyjnych a w wolnych chwilach, cieszyc sie i bawic w gronie rodzinnym jak i uzytkowac komputer do zastosowan biurowych. Wyczerpująca odpowiedz
Human: Z czego jest zbudowany? Pytanie o budowe
Komputrus: Komputer oparty na ekonomicznym i stabilnym procesorze AMD Sempron 64, dzieki któremu sprawdzi sie doskonale zarówno w codziennej pracy w biurze jak i w domu. Plyta glówna firmy Asrock zostala oparta na chipsecie nForce 6100, który zawiera wbudowana karte graficzna. Zintegrowana grafika jest w pelni zgodna z DirectX 9.0 i bez trudu obsluzy zaawansowany gaficznie, trójwymiarowy swiat multimediów. Wysokiej klasy zasilacz o mocy 350W charakteryzuje sie miedzy innymi praktycznie bezglosna praca. Duzy dysk twardy umozliwi przechowywanie sporej ilosci danych, a dzieki nagrywarce mozliwe bedzie zrobienie kopii bezpieczenstwa dowolnych plików na plytach CD lub DVD. Odpowiedz
Human: Acha, a jakie ma parametry? Pytanie o parametry
Komputrus: Procesor Sempron 64 3200+ Plyta glówna NForce 6100 VGA s. AM2 Pamiec operacyjna 512MB DDR2 667 Dysk twardy 160GB sATA II 300 Mb/s Nagrywarka DVD±RW Klawiatura Logitech PS/2 Mysz Optyczna Logitech, czarna System operacyjny MS Windows XP Home Edition PL Obudowa Cyclone 2119 Black/Black. Dokładny opis parametrów
Human: Czy to dobry komputer? Pytanie o zdanie bota
Komputrus: Niestety nie jestem programem doradczym, który móglby wystawiac rekomendacje. Bot nie wydaje rekomendacji
Human: Rozumiem, a w jakiej jest cenie? Pytanie o cene
Komputrus: Ostatnia cena to 1399,0 zl Podanie ceny
Human: Gdzie mogl bym sie dowiedziec czegos wiecej? Pytanie o wieksza liczbe informacji
Komputrus: Polecam: www.skapiec.pl, www.arest.pl, www.proline.pl, www.return.com.pl Polecane przez bota strony
Human: To by bylo chyba na tyle, dzieki
Komputrus: Zawsze do uslug
Human: Do widzenia
Komputrus: Do zobaczenia Pożegnanie

Rozmowa 2:

Human: Witam
Komputrus: czesc, w czym moge Tobie pomoc? Przywitanie bota
Human: A co wiesz? Pytanie o wiedze bota
Komputrus: Udzielam podstawowych informacji na temat zestawu komputerowego Harvey Niezbyt ogólna odpowiedz
Human: Co o nim powiesz? Pytanie o wspomniany przez bota zestaw
Komputrus: W serii Cyclone HARVEY zastosowano podzespoly renomowanych producentów co dodatkowo daje gwarancje niezawodnosci i pozwala w pelni korzystac z multimedialnych programów edukacyjnych a w wolnych chwilach, cieszyc sie i bawic w gronie rodzinnym jak i uzytkowac komputer do celów biurowych. Odpowiedz o zestawie HARVEY
Human: A jakis inny? Pytanie o inny zestaw
Komputrus: Harvey, Irinoise, Tracy, Earl, Zeke, Vince, ktory zestaw Cie interesuje ? Odpowiedz
Human: Co powiesz o earlu? Pytanie o EARL
Komputrus: Cyclone EARL powstal z mysla o bardziej wymagajacych uzytkownikach komputerów, takze dla tych stawiajacych swoje pierwsze kroki w swiecie cybertechniki. odpowiedz
Human: Jakie ma parametry? Drążenie tematu
Komputrus: Procesor Athlon 64 x2 4000+ s.AM2 Plyta glówna NForce560 s. AM2 Pamiec operacyjna Geil 2 GB DDR2 Dual Chanel Dysk twardy 250GB sATA II 300 Mb/s Nagrywarka DVD±RW Klawiatura Logitech PS/2 Mysz Optyczna Logitech, czarna System operacyjny MS Windows Vista Home Premium 64-bit PL Karta graficzna GF 8600GT Zasilacz 400 W Wyczerpująca odpowiedz
Human: Ile kosztuje? Pytanie o cene
Komputrus: Ostatnia cena to 2299,0 zl Podanie ostatniej ceny
Human: Nic, dzieki
Komputrus: nie ma sprawy
Human: Papa Pożegnanie
Komputrus: Pa, do usłyszenia

Rozmowa 3 – przykład gubienia się programu

Human: Siema
Komputrus: czesc, w czym moge Tobie pomoc? Przywitanie
Human: Szukam komputera Nawiazanie rozmowy
Komputrus: Udzielam podstawowych informacji na temat zestawu komputerowego Harvey Odpowiedz zwracajaca jeden zestaw
Human: Ale ja nie chce o nim Próba zmiany tematu
Komputrus: Moje zdolnosci interakcji z otoczeniem sa ograniczone, gdyz jestem programem, który tylko i wylacznie udziela podstawowych informacji na temat zestawow komputerowych Odpowiedz w przypadku nieposiadania zapytania w bazie
Human: Ale ja sie pytam... Próba uzyskania odpowiedzi
Komputrus: Udzielam podstawowych informacji na temat zestawu komputerowego Harvey Ponowne nawiazanie do zestawu HARVEY
Human: No powiedz cos "Ciągniecie bota za język"
Komputrus: jaki zestaw Cie interesuje? Bot oczekuje odpowiedzi
Human: Co masz? Dalsze pytania
Komputrus: Moje zdolnosci interakcji z otoczeniem sa ograniczone, gdyz jestem programem, który tylko i wylacznie udziela podstawowych informacji na temat zestawow komputerowych Znowu bot niema zapytania w bazie
Human: Widze, ze sie z toba nie dogadam
Komputrus: Moje zdolnosci interakcji z otoczeniem sa ograniczone, gdyz jestem programem, który tylko i wylacznie udziela podstawowych informacji na temat zestawow komputerowych Ponownie to samo
Human: Narka
Komputrus: Do widzenia Pożegnanie

6. Wnioski

Tematem projektu był bot doradzający przy zakupie komputera. Stworzenie takiego bota wiąże się z nie lada wyzwaniem, gdyż nie łatwo jest stworzyć bota przypominającego zachowaniem i mową człowieka. Powodem tego stanu rzeczy jest niezliczona liczba możliwych wariantów pytań które ludzie mogą zadać, chcąc uzyskać chociażby jedna konkretną odpowiedz. Dlatego też oprócz poświęconego czasu na stworzenie bazy wiedzy, należy też przeprowadzić szereg testów z udziałem ludzi, którzy w dużym stopniu przyczynią się do doskonalenia bota oraz jego reakcji na zadawane pytania. Dzięki takiemu zabiegowi na bieżąco można uzupełniać bazę wiedzy i poprawiać błędy, gdzie z czasem może stać się na tyle uniwersalnym i odpornym na „potknięcia” słowne botem, że można go z powodzeniem stosować na różnego rodzaju stronach internetowych. Przykładem takiego doradcy może być bot Ania doradzający przy zakupie mebli na stronie Ikea.



7. Źródła


Valid XHTML 1.0 Transitional Poprawny CSS! Politechnika Wrocławska Wydział Elektroniki AiR