Techniki sztucznej inteligencji Andrzej Macioł
Literatura http://www.lpa.co.uk/vrs_dem.htm Mulawka J., Systemy ekspertowe. WNT Warszawa 1996. Flasiński M., Wstęp do sztucznej inteligenji, PWN Warszawa 2011. Bubnicki Z., Wstęp do systemów ekspertowych. PWN, Warszawa 1990. Kasperski M. J., Sztuczna Inteligencja. Helion 2003 http://www.lpa.co.uk/vrs_dem.htm
Co to jest sztuczna inteligencja? Nauka o maszynach realizujących zadania, które wymagają inteligencji wówczas, gdy są wykonywane przez człowieka [Minsky 1963] Dziedzina informatyki dotycząca metod i technik wnioskowania symbolicznego przez komputer oraz symbolicznej reprezentacji wiedzy stosowanej podczas tego wnioskowania [Feigenbaum 1977?]
Co to jest rozumowanie symboliczne? Posługiwanie się językiem składającym się ze słownika i gramatyki Wiedza w sztucznej inteligencji podobnie jak przedstawiona wiedza człowieka wyraża się w symbolach (słowach) i związkach zachodzących między nimi Sztuczne sieci neuronowe, algorytmy genetyczne to nie są metody sztucznej inteligencji w jej podstawowym rozumieniu
Stanowiska wobec AI wg R. Penrosa Myślenie zawsze polega na obliczeniach (kalkulacji) Świadomość jest cechą fizyczną działającego mózgu; procesy fizyczne można symulować obliczeniowo ale nie towarzyszy im świadomość Procesy fizyczne powodują w mózgu powstanie świadomości ale nie można ich symulować obliczeniowo Świadomości nie można wyjaśnić w żaden fizyczny, obliczeniowy czy inny naukowy sposób
Filozofia Sztucznej Inteligencji epistemologia filozofia języka filozofia umysłu logika matematyka filozofia matematyki psychologia kognitywna rozwoju dziecka Filozofia Sztucznej Inteligencji informatyka nauki o mózgu
Maszyna Turinga Abstrakcyjny schemat działania wedle zadanego algorytmu: Odczytaj zawartość komórki pamięci Zmień stan obiektu Zapisz nowy symbol do komórki Przejdź do zadanej komórki pamięci Powtórz cykl Maszyna Turinga to maszyna stanów dyskretnych
Test Turinga Co najmniej dwoje ludzi i jedna maszyna Żaden z uczestników testu nie widzi drugiego Jeden z ludzi jest sędzią i prowadzi dialog z pozostałymi uczestnikami Sędzia w wyniku prowadzonego dialogu ma ustalić kto jest człowiekiem a kto maszyną Każda maszyna, która „oszuka” sędziego spełni test Turinga
Zastosowania AI w gospodarce Systemy ekspertowe (eksperckie) zastosowania techniczne wojskowość medycyna ograniczone zastosowania biznesowe Systemy sterowania (technika) Systemy zarządzania regułami biznesowymi Symulacja komputerowa (systemy agentowe)
Co to jest system ekspertowy? Program komputerowy przeznaczony do rozwiązywania problemów decyzyjnych wyposażony w elektroniczny zapis wiedzy i niezależny od niej mechanizm wnioskowania podobny w działaniu do wnioskowania eksperta-człowieka. Do budowy systemów ekspertowych wykorzystuje się osiągnięcia tzw. sztucznej inteligencji.
Zarządzanie regułami biznesowymi Źródło: przezwyciężenie luki pomiędzy modelami procesów tworzonych w języku naturalnym przez kierownictwo przedsiębiorstwa i zrozumiałych dla niego, a sposobem ich zapisu w sposób zrozumiały dla informatycznych systemów zarządzania Zarządzanie regułami biznesowymi BRM, którego celem jest opis procesu jako zbiór reguł zrozumiały dla kierownictwa przedsiębiorstwa, a realizacją są Systemy Zarządzania Regułami Biznesowymi (BRMS) oraz Maszyny Wnioskujące (Business Rules Engine)
Definicja Reguły biznesowe umożliwiają ekspertom przepisanie strategii przedsiębiorstwa na poziom operacyjny przy pomocy prostych stwierdzeń, które następnie mogą zautomatyzować reakcje na zdarzenia wewnątrz i w otoczeniu przedsiębiorstwa Reguły definiują zachowanie przedsiębiorstwa jako zbiór stwierdzeń logicznych Podstawową zaletą takiego podejścia do opisu procesów jest prostota i elastyczność reguł biznesowych, co pozwala na ich łatwe zastosowanie w różnych instytucjach i do różnych celów
Przykłady zastosowań Systemy wspomagające zarządzanie kontaktami z klientem (reguły opisują w tym przypadku ofertę, jaką w sposób zindywidualizowany można kierować do różnych klientów) Systemy oceny klientów (np. oceny zdolności kredytowej, oceny wartości klienta)
Przykłady zastosowań Rozbudowane cenniki i regulaminy sprzedaży Systemy wspomagające zarządzanie łańcuchem dostaw (np. dobór dostawców) Kontrola kosztów i budżetowanie (reguły opisują zasady dekretowania kosztów, zasady budżetowania itp.)
Model reguł biznesowych
Objaśnienia do modelu
Tablica decyzyjna
Plan wykładu Wiedza Komputery wyposażone w wiedzę Metody zapisu wiedzy Metody pozyskiwania wiedzy Wnioskowanie w systemach sztucznych Zagadnienia praktyczne Przykłady zastosowań
Wiedza Płynne połączenie doświadczenia, ocen wartości, informacji o kontekście oraz analitycznego wglądu w zagadnienia, które zapewnia ramy dla oceny i włączania nowych doświadczeń i informacji Wiedza organizacji wywodzi się i jest charakterystyczna dla umysłów ludzi [Davenport i Prusak 1998]
Wiedza Cechą wiedzy jest porządek, którego poszukiwali filozofowie zajmujący się metafizyką czy jak wolimy to dzisiaj mówić ontologią, której zadaniem jest po prostu opisanie rzeczywistości, a więc tego co istnieje Tradycyjnym celem ontologii jest podział wiadomości o świecie (bycie) na kategorie definiujące rzeczy składające się na niego Wiedza składa się z uporządkowanych opisów, relacji i procedur
Wiedza człowieka (eksperta) wiedza milcząca (tacit knowledge) – wiem jak postępować w danych okolicznościach ale nie wiem dlaczego i nie potrafię tego wyjaśnić asocjacyjna wiedza empiryczna – znam wiele przykładów i umiem je wykorzystać do wnioskowania wiedza głęboka – dokładnie wiem dlaczego (oczywiście w pewnej ontologii)
Wiedza - reprezentacja reprezentacja proceduralna – określenie zbioru procedur, których działanie reprezentuje wiedzę o dziedzinie (np. procedura wyznaczania ekstremum funkcji) reprezentacja deklaratywna, polegająca na określeniu zbioru specyficznych dla rozpatrywanej dziedziny faktów i reguł
Komputery wyposażone w wiedzę Systemy ekspertowe to „programy z wiedzą” Sam program realizuje procedury wnioskowania i ew. obliczania, objaśniania, uczenia, komunikowania Wiedza zapisana jest w osobnych zbiorach i poza tym, że może być poszerzana przez program (uczenie) jest od niego niezależna
Przykład: tabela decyzyjna Klient jest wiarygodny T Klient nie jest wiarygodny Klient płaci gotówką Klient dokonuje przedpłaty Klient płaci przelewem Wartość kontraktu jest duża Wartość kontraktu jest mała Decyzja ostateczna: sprzedać po cenie standardowej X Decyzja ostateczna: przyznać klientowi upust Decyzja ostateczna: odrzucić ofertę
If "Klient jest wiarygodny" And " Klient płaci przelewem" And "Wartość kontraktu jest duża" Then "przyznać klientowi upust” If "Klient jest wiarygodny" And " Klient płaci przelewem" And "Wartość kontraktu jest mała" Then "sprzedać po cenie standardowej„ If "Klient nie jest wiarygodny" And " Klient płaci przelewem" And "Wartość kontraktu jest duża" Then konkluzja = "odrzucić ofertę„ If " Klient płaci gotówką" And "Wartość kontraktu jest duża" Then "przyznać klientowi upust„ If " Klient płaci gotówką" And "Wartość kontraktu jest mała" Then "sprzedać po cenie standardowej„ If " Klient dokonuje przedpłaty" And "Wartość kontraktu jest duża" Then "przyznać klientowi upust„ If " Klient dokonuje przedpłaty " And "Wartość kontraktu jest mała" Then "sprzedać po cenie standardowej"
Przykład: fasety Nr faktu Opis 1 Klient jest wiarygodny 2 Klient nie jest wiarygodny 3 Klient płaci gotówką 4 Klient dokonuje przedpłaty 5 Klient płaci przelewem 6 Wartość kontraktu jest duża 7 Wartość kontraktu jest mała 8 Decyzja wstępna: sprzedać towar 9 Decyzja ostateczna: sprzedać po cenie standardowej 10 Decyzja ostateczna: przyznać klientowi upust 11 Decyzja ostateczna: odrzucić ofertę
Przykład:baza wiedzy (przesłanki) 1 2 3 jeżeli Klient płaci gotówką to Decyzja wstępna: sprzedać towar Klient dokonuje przedpłaty Klient płaci przelewem i Klient jest wiarygodny Klient nie jest wiarygodny Decyzja ostateczna: odrzucić ofertę Wartość kontraktu jest duża Decyzja ostateczna: przyznać klientowi upust Wartość kontraktu jest mała
For k = 1 To LiczbaReguł prawda1 = True l = 1 Do prawda = False For ll = 1 To LiczbaFaktów If fakty(ll) = przeslanki(k, l) Then prawda = True End If Next If Not prawda Then prawda1 = False l = l + 1 Loop Until IsEmpty(przeslanki(k, l)) If prawda1 Then fakty(LiczbaFaktów) = konkluzje(k) LiczbaFaktów = LiczbaFaktów + 1