Inteligentne systemy w pozyskiwaniu informacji
Transkrypt
Inteligentne systemy w pozyskiwaniu informacji
Inteligentne systemy w pozyskiwaniu informacji Intelligence systems in obtaining information Justyna Stasieńko, Tomasz Kożak Instytut Inżynueri Technicznej PWSZ, Jarosław 37-500 Jarosław ul. Czarnieckiego 16 [email protected], [email protected] 1 WSTĘP Obecnie trudno mówić o informatyce nie łącząc jej z innymi dziedzinami życia. Ani medycyna, ani gospodarka, ani produkcja nie funkcjonowałyby dziś w takiej postaci, gdyby nie ta dziedzina nauki. Rozwój informatyki, to m.in. rozwój wszelkich technologii informatycznych i informacyjnych, jak również sztucznej inteligencji. Od poziomu inteligencji istoty żywej, czy też sztucznego organizmu zależy poprawność i sprawność działania oraz skuteczność poszukiwania trafnych rozwiązań w sytuacjach nowych i trudnych. Inteligencja to nie sama wiedza, bądź mądrość, ale właśnie adaptacyjność, czyli zdolność do dostosowania do nieprzewidzianych warunków otoczenia, do wykonywania nieprzewidzianych zadań. Inteligencja zakłada zdolność do uczenia się z obserwacji oraz zdolność do działania. Zachowania inteligentne wyróżniają operacje myślowe, takie jak przewidywanie, czyli wyobrażanie przyszłości i skutków podejmowanych działań zanim je podejmiemy; formułowanie celów oraz planowanie działań zamierzonych ze względu na te cele; rozumowanie, czyli analiza faktów i formułowanie wniosków na drodze rozważań logicznych (dedukcji). System inteligentny (ang. intelligent system) jest to system charakteryzujący się zdolnością samodzielnego pozyskiwania danych z jego otoczenia, generowania wiedzy z pozyskanych danych, tj. uczenia się oraz wykorzystania wygenerowanej wiedzy do rozwiązania postawionego mu zadania. Przedmiotem zainteresowania w dziedzinie sztucznej inteligencji są niektóre narzędzia, urządzenia i programy. Jednym z narzędzi jest inteligentny agent Jest to mały, sprytny program pozwalający zautomatyzować wybraną czynność, często podejmujący decyzje w trakcie działania. Może to być na przykład program odwiedzający Internet i wyszukujący tam zadanych informacji. Może to też być dowolny program wykonujący automatycznie pewne czynności i reagujący w określonej sytuacji, zdolny do niezależnego działania. Istnieje wiele definicji inteligentnego agenta, często bardzo wąskich lub też skrajnie ogólnych. 2 TECHNOLOGIE AGENCKIE Technologią budzącą żywe zainteresowanie wielu środowisk są inteligentni agenci. Idea inteligentnych agentów pojawiła się już dawno, jednak wciąż jest źródłem wielu badań. Na całym świecie prowadzone są różne projekty wykorzystujące inteligentnych agentów w różnych dziedzinach nauki, życia gospodarczego, jak i społecznego. Pomysł inteligentnego agenta zrodził się w połowie lat 50 tych [5]. John McCarthy i Oliver Selfrige stworzyli wizje systemu, który dąży do zadanego celu za pomocą odpowiednich operacji komputerowych. Pojęcie „agent” zostało w pewnym stopniu odziedziczone po technikach z lat 80-tych. Techniki te, na przykład sztuczna inteligencja i systemy ekspertowe, nie spełniły pokładanych nadziei. Kolejna generacja programów – obecnych agentów ma znacznie większe szanse zaistnienia w świecie informatyki. Ich zaletą jest to, że wykorzystują nowe modele inteligencji komputerowej. Ważnym elementem tego modelu jest wspólna filtracja, która wykorzystuje myśl ludzką w postaci bazy danych z priorytetami użytkowników. Nadal istnieją standardowe rozwiązania wykorzystujące sztuczną inteligencję. Kilku agentów odwołuje się w swoim działaniu do dziedzin wiedzy takich jak sieci neuronowe, logika rozmyta, przetwarzanie języka naturalnego i wspólna filtracja. Inteligentny agent to system posiadający zdolność postrzegania swojego środowiska poprzez tzw. sensory oraz podejmowania działań w środowisko za pomocą efektorów. Jest implementowany poprzez odpowiednie oprogramowanie i dysponuje odpowiednimi cechami. Autonomiczne agenty nie wymagają interwencji człowieka, jak i innych programów. Kontrolują wykonywane przez siebie działania i swój stan wewnętrzny. Są komunikatywne. Wchodzą w interakcje z innymi agentami lub człowiekiem. Potrafią określać otoczenie i reagować w przypadku jego zmian. Osiągają cel przez przejęcie inicjatywy. Działają nieustannie nawet, gdy użytkownik z nich nie korzysta. Dodatkowo, mają umiejętność uczenia się określają poszczególne typy agentów. Do charakterystycznych cech agentów zalicza się: • zdolność do wykonywania zadań bez ścisłej kontroli przez użytkownika, • zdolność do kontrolowania lokalnych lub zdalnych zdarzeń takich jak modyfikowanie danych w bazie danych, aktywność w sieci, zdeterminowane przez czas wykonania, • zdolność do werbowania innych agentów (włączając ludzi) do wykonywania powierzonych zadań (komunikacja), • zdolność do determinowania możliwości innych agentów (rozumowanie), • zdolność do stwierdzenia, który agent może pomóc w wykonaniu zadania (planowanie). Poza wymienionymi zdolnościami inteligentny agent jest autonomiczny, reaktywny, proaktywny, kooperujący prospołecznie, adaptatywny, zorientowany na cel, elastyczny, samouruchamiający się, mobilny, posiadający ciągłość czasową oraz osobowość, o pewnej specjalizacji. Można powiedzieć, że inteligentny agent łączy w sobie takie właściwości jak reaktywność i inwencja, komunikatywność, autonomiczność, synchroniczność oraz demonstracyjność. Agent postrzega swoje środowisko (którym może być realny świat, użytkownik – Технічні вісті 2008/1(27), 2(28) 115 poprzez interfejs graficzny użytkownika, zbiór innych agentów, Internet, lub być może wszystkie powyższe czynniki połączone razem) i odpowiada w rozsądnym czasie na występujące w nim zmiany. Agent nie działa tylko w odpowiedzi na środowisko. Jest zdolny również wykazywać zachowanie nakierowane na cel poprzez przejmowanie inicjatywy. Reaktywność agenta polega na tym, że musi być on wrażliwy na zdarzenia występujące w ich otoczeniu, które oddziaływają na cele agentów oraz założenia leżące u podstaw wykonywanych przez nich procedur. Komunikatywność agenta jest zdolnością agentów do współdziałania z innymi agentami (może też i ludźmi) poprzez pewien rodzaj języka komunikacji agentów – Agent Communication Language. Agenty potrafią zademonstrować sposób rozwiązania problemu innemu agentowi, pokazać mu strategię, jaką dysponują. Cecha ta pozwala na uczenie agenta przez agenta, nie tylko przez doświadczenie wynikające z rozwiązywania samodzielnie nowych problemów. Agenty operują beż bezpośredniej interwencji ludzi lub innych agentów, mają ponadto pewien rodzaj kontroli nad swoimi akcjami i stanem wewnętrznym. Budowa agenta uwzględnia to, iż na rozwiązanie problemu inny agent lub użytkownik potrzebuje pewną ilość czasu. Nie można doprowadzić do sytuacji, w której praca jednego agenta zostanie zatrzymana na czas potrzebny do rozwiązania jakiegoś problemu przez innego. Ze względu na szeroki wachlarz możliwości technologie agenckie wykorzystywane są w przemyśle, w handlu elektronicznym (e-commerce), jako osobista sekretarka, asystent, w telekomunikacji, edukacji, w medycynie, rozrywce oraz wykorzystywana w różnych symulacjach. Na wyróżnienie zasługuje klasa agentów informacyjnych (internetowych), które służą do wyszukiwania informacji w sieci WWW. 2.1 AGENCI ASYSTENCI Paradoksalnie wraz ze wzrostem ilości dostępności informacji coraz trudniej jest znaleźć potrzebne dane. Do rozwiązania problemu przeładowania konieczne jest stworzenie narzędzi, które pozwoliłyby na filtrowanie informacji docierających do użytkownika oraz sprawne wyszukiwanie potrzebnych danych bez konieczności przedzierania się przez tysiące stron. Popularnym pomysłem jest stworzenie inteligentnego asystenta, w oparciu o technologie agenckie, który wyręczałby użytkownika w wielu czynnościach, przeszukiwał dla niego zbiory informacyjne, wstępnie analizował i podpowiadał ograniczając nadmierną ilość danych, wyręczał w rutynowych, mało wymagających a czasochłonnych czynnościach. Takie zastosowanie mogłoby znacznie usprawnić funkcjonowanie działów firm dbających o utrzymanie relacji z klientami (Call Center, Help Desk, Hotline, pomoc techniczna) Agent informacyjny (ang. Information agent) jest jedną z propozycji rozwiązania wspomnianego problemu. Przykładem elektronicznego agenta filtrującego pocztę elektroniczną jest Maximus, który uczy się hierarchizować, usuwać, przesyłać dalej lub archiwizować listy elektroniczne w imieniu użytkownika. System NewT jest 116 elektronicznym agentem filtrującym newsy z list tematycznych. Głównym celem agentów przeszukujących sieci WWW jest odwiedzanie i indeksowanie jak największej ilości miejsc. Bardziej wyrafinowani agenci pozyskują strony z określonej dziedziny tematycznej (Cora, MetaCrawler, WAWA). Chatterbot’y są pierwszą generacją “social agents” oprogramowania interfejsowego, który został zaprojektowany by tworzyć trwałą i znaczącą relację z użytkownikiem [1]. Na wiarygodność agentów składa się szereg ich cech m.in. sposób w jaki się zachowują, posiadane przez nich cechy społeczne jak i wygląd. Niezwykłą zaletą tych agentów jest fakt posiadania przez nich tzw. „umysłu” i „osobowości”, które kierują ich zachowaniem, wykorzystując zdolności poznawcze, społeczne i wrażliwość afektywną. Chaterbotem będzie wirtualna postać w serwisie internetowym, czy też wirtualny asystent, który rozmawia z internatami, nawet wieloma jednocześnie, zapamiętuje swoich rozmówców, np. Witając ich po imieniu (Fido), udziela informacji, zadaje pytania, zapisuje odpowiedzi lub też prowadzić luźną konwersację, odpowiadać na wszelkie pytania dotyczące Firmy, oprowadza po stronach firmy, przedstawia i sprzedaje produkty i usługi oferowane przez firmę Hubert (Rysunek 1), jest ankieterem (Joanna) prowadzi wstępne rozmowy kwalifikacyjne oraz spełnia wiele innych funkcji. 2.2 AGENCI W E-COMMERCE W obecnej dobie programy agenckie mają coraz większy udział w procesie zautomatyzowania handlu elektronicznego. Inteligentny agent może być stosowany od marketingu, poprzez bezpośredni kontakt z klientem, rekomendowanie produktów, wyszukiwanie towarów i dostawców, negocjowanie cen, czy też warunków dostawy, aż do reprezentowania klienta na aukcjach i rynkach elektronicznych. Programy tego typu spełniają rolę agentów rekomendujących, tzw. shopbot’ów i pricebot’ów, elektronicznych pośredników oraz negocjatorów. Agent rekomendujący dokonuje oceny przedmiotów wybieranych przez klienta i porównuje je z przedmiotami wybieranymi przez innych użytkowników, następnie poleca produkt, który podoba się osobom o tych samych wymaganiach. Agent musi współpracować z innymi agentami, aby uzyskać odpowiednią wiedzę na temat preferencji użytkowników. Технічні вісті 2008/1(27), 2(28) Systemem wieloagenckim rekomendującym w oparciu o „collaborative filtering”, który poleca produkt za pomocą profilu użytkownika tworzonego na podstawie oceny produktów był Ring [1]. Kolejnym przykładem jest Amazon Delivers, który automatycznie wysyła recenzje najciekawszych książek z interesujących danego klienta. Technikę tą wykorzystuje też serwis MovieCentral polecający ciekawe filmy. Inną techniką rekomendowania wykorzystywaną przez system agencki jest reguła filtrowania na podstawie kontekstu [2]. Agent obserwuje i zbiera informacje o preferencjach użytkownika, a następnie koreluje je z opisami produktów. Wadą tej techniki jest ciągłe rekomendowanie tego, co użytkownik już raz widział. Agenci są również wykorzystywani w celach marketingowych do zbierania i analizowania informacji na temat sprzedaży produktów, zachowań potencjalnych konsumentów, mają też za zadanie przeanalizować historię zakupów oraz stwarzać profile grup, do których będą skierowane prowadzone kampanie. Innym wykorzystaniem agentów w e-commerce są postacie wirtualne, posiadające ciało oraz zdolność porozumiewania się z klientem, zwane z ang. embodied conversational agents (ECA). Zadaniem tego rodzaju agentów jest zwiększenie zaufania klienta, udzielanie pomocy przy zakupach on-line, odpowiadanie na zadane pytania, zbieranie informacji o klientach, budowanie trwałych i znaczących relacji z klientem w celu zwiększenia zadowolenia wynikającego z kontaktów klienta z firmą, jak również budowanie jego lojalności wobec firmy. Przykładów tego oprogramowania jest bardzo wiele, np. Rea, Ramona (Rysunek.1), Mr Clean, Hubert (Rysunek 2). Po zidentyfikowaniu potrzeby zakupu produktu przez klienta następnym krokiem jest znalezienie odpowiedniej oferty i dostawcy. Shopbot’y to programy oparte o niekooperujących, racjonalnych agentów, którzy polecają użytkownikowi najlepsze według nich oferty na określony towar. Programy te rekomendują produkt na podstawie wielu jego atrybutów takich jak: cena, jakość, czas i koszty dostawy, udzielanie gwarancji, promocja i prezenty jak również obsługa posprzedażowa i reputacja sprzedającego. Do przedstawicieli należą: BargainFinder (już nieistniejący w Andersen Konsulting), Frictionless Sourcing, serwis mySimon.com oraz system Intel- liShoper, który rezyduje na komputerze użytkownika [4], obserwuje użytkownika przy dokonywaniu zakupów w sieci WWW ucząc się jego preferencji po to, by móc znajdować nowe oferty na podobne towary. Taki agent przeszukuje nie tylko sklepy internetowe, ale również serwisy aukcyjne. W systemie tym położono duży nacisk na anonimowość i zadbanie o ochronę prywatności użytkownika. Jednostka taka składa się z agenta uczącego, monitorującego, chroniącego prywatność oraz samego shopbot’a. Większość shopbot’ów tworzona jest przez firmy oferujące określone produkty. Kolejną grupą są pricebot’y [3]. Są to systemy zbudowane z agentów dynamicznie wyceniające produkt w miarę zmiany sytuacji na rynku tak, aby zmaksymalizować korzyść sprzedającego. W systemie e-commerce oprócz zintegrowania potrzeby oraz wybrania towaru oraz dostawcy potrzebni są agenci negocjujący terminy i warunki umów. W zautomatyzowanych negocjacjach agenci tacy przygotowują i oceniają oferty w imieniu klienta tak, aby zyskać najkorzystniejsze warunki. Wszelkiego rodzaju transakcje dokonują się przy wykorzystaniu pewnych strategii negocjacji, które są określone w protokole. Protokół negocjacji opisuje zasady interakcji agentów. Prostym przykładem agenta służącego do prowadzenia negocjacji na elektronicznej aukcji jest Bid-Click [1] dostępny na stronach aukcyjnych firmy Amazon. Klient zainteresowany zakupem towaru określa minimum/maksimum ceny, jaką jest w stanie zaoferować za dany produkt. Agent samodzielnie bierze udział w aukcji na podstawie określonych przez użytkownika zasad. 2.3 EDUKACJA Platformy zdalnego nauczania, np. (SAVER, ConBa, Persona) są to zwykle serwisy internetowe, które oferują dostęp do szerokiego wachlarza narzędzi edukacyjnych: materiałów kursowych, serwisów testujących, forum użytkowników, chat’ów z nauczycielami. Zastosowanie agentów w tych platformach służy głównie personalizowaniu prezentowanych treści oraz doradztwa w wyborze ścieżki nauki (dopasowanie tempa nauki i strategii do preferencji użytkownika). Na podstawie zebranych informacji agent uczy się, jakie są cele i intencje studenta oraz w jakich sytuacjach może interweniować, aby mu pomóc. Oprogramowanie agenckie SAVER polega na tym, że każdy użytkownik ma przypisanego jednego agenta interfejsowego, który pełni rolę osobistego asystenta. Agent obserwuje użytkownika, kiedy ten czyta materiały, wykonuje ćwiczenia oraz uruchamia testy sprawdzające. Jednym słowem zapisuje sekwencję wykonywanych czynności, czas poświęcany na każdą z nich, czyli szuka indywidualnego wzorca uczenia się i buduje profil danego użytkownika. Inteligentne systemy uczące się (DTexSys, COMET) również wspierają asynchroniczne zdalne nauczanie. Składają się z następujących modułów: eksperckiego, uczącego, użytkownika, interfejsowego. Guidboty – wirtualni animowani przewodnikami i nauczycielami. Ten typ agentów jest wrażliwy na stany emocjonalne użytkownika i może wnioskować o afek- Технічні вісті 2008/1(27), 2(28) 117 tywnych aspektach rozwiązywania problemów. Agenci tego typu mają bogatą osobowość, reagują emocjonalnie w zależności od kontaktu oraz modelują emocje użytkownika. Przykładami agenta pedagogicznego są Steve, lowałby wyników, sortowałby wyniki według jakiegoś klucza itd. Brakuje „agentów” na stronach firm, które tworzyłyby np. profil psychologiczny klienta, czy też lepszego wykorzystania istniejących lingbot’ów. Rozwijająca się sztuczna inteligencja próbuje rozwiązywać te i wiele innych problemów, tworzyć oprogramowanie, które mogłoby zastępować w niektórych czynnościach ludzi. Jednak stworzenie algorytmu działającego przy niekompletnej informacji, niedoskonałym algorytmie uczenia nie jest proste. Dziedzina ta jednak wciąż zaskakuje, dlatego też za klika lat będzie można mieć osobistych asystentów, którzy będą dokonywać zakupów, planować podróż itp. Powstaną doskonalsze systemy, które będą zdolne zdobyć każdą informację, czy to w Internecie, czy też w funkcjonujących w organizacjach systemach. Adele, Guilly. Ciekawym pomysłem na zastosowanie agentów w edukacji jest stworzenie agenta, którego użytkownik musi nauczyć wiedzy z określonej dziedziny, zwanego teachable agent (Betty’s Brain). W celu poprawienia ich efektywności zastosowano agentów inteligentnych społecznie (ang. Socally intelligent agents) 2.4. MEDYCYNA Informatyka w medycynie znajduje coraz to więcej nowych zastosowań, dlatego nie jest zaskoczeniem, że technologie oparte o rozwiązania agenckie również znajdują zastosowanie. Wspomnieć należy o inteligentnych systemach wspierających diagnozę (Guardian, IM-Agents, Marvin), system prowadzący opiekę nad osobami starszymi i upośledzonymi (TeleCARE), system wspierający harmonogramowanie i zarządzanie szpitalem (Agent. Hospital, OTM). [1] BORKOWSKA A., Inteligentni agenci w handlu elektronicznym, W: e-mentor [online dostęp 15.04.2008]. Dostępny w World Wide Web: http://www.e-mentor.edu.pl/ artykul_v2.php?numer=7&id=101. [2] JAMESOM A., Adaptive Interfaces and Agents, W: A. Jacko, A. Sears (ed.), Human-Computer Interaction Handbook, Mahwah, Erlbaum, 2003,s.305-330. [3] KLUSCH M., Information Agent Technology for the Internet: A. Survey. W: D. Hensel (ed), Specjal Issue on Intelligent Information Integration. 2001. [4] MENCZER F., MANGE A., STREET N., Adaptive Assistants for Customized E-Shopping, IEEE Inteligent Systems, Vol.17, Issue 6 2002, s.12-19 [5] ORDYSIŃSKI t., Funkcje agentów w wirtualnych organizacjach gospodarczych, Dostępny [10.04.2008] w World Wide Web: http://iiwz.univ.szczecin.pl/zsgi/konferencje/4/pliki/ordy.doc. 3. WNIOSKI Zaprezentowane przykładowe zastosowania inteligentnych agentów ukazują ogromny wachlarz możliwości, jak również olbrzymi potencjał tego oprogramowania. Poruszając się w Internecie, korzystając z przeglądarek i uzyskując wiele powtarzających się wyników na dany temat, brakuje takiego agenta, który nie dub Pozyskiwanie i analiza trajektorii ruchu oka u pacjentów z zaburzeniami neurologicznymi Tomasz Lewandowski1 , Zbigniew Gomółka2 1 Instytut Inżynierii Technicznej Państwowa Wyższa Szkoła Zawodowa 37-500 Jarosław, ul. Czarnieckiego 16 2 Instytut Techniki, Uniwersytet Rzeszowski, 35-959 Rzeszów, ul. Rejtana 16 The analysis of the eye balls movement in patients treated for Parkinson’s disease who were performed to simple visual tasks permits to reveal disorders associated with this disease, determine its scale and to estimate the sight organ dysfunction. The aim of such analysis is to determine the type, frequency, intensity and the direction of sight organ trembling as well as counting the frequency of blinking acquired during the observation of static and dynamic objects and the objects emerging from light blue background (low contrast). This study presents, proposed by the author, a prototype implementation of visual tasks connected with the issues concerning the acquisition, 118 processing and analysis of sight path of people suffering from Parkinson’s disease by means of OBER 2 system and the MATLAB software. I. Wprowadzenie I.1 Charakterystyka jednostki chorobowej Wielu chorobom występującym współcześnie towarzyszą zaburzenia ruchowe – jednym z takich zaburzeń jest drżenie definiowane jako rytmiczne, oscylacyjne ruchy mimowolne różnych części ciała wywołane naprzemiannymi lub synchronicznymi skurczami mięśni antagonistycznych Технічні вісті 2008/1(27), 2(28)