Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane systemy decyzyjne. Laboratorium. prowadzący:andrzejczajkowski 1

Podobne dokumenty
Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa TECHNIKI REGULACJI AUTOMATYCZNEJ

I. Program II. Opis głównych funkcji programu... 19

Bydgoskie Centrum Archiwizacji Cyfrowej sp. z o.o.

Przewodnik... Tworzenie ankiet

Przenoszenie, kopiowanie formuł

KaŜdy z formularzy naleŝy podpiąć do usługi. Nazwa usługi moŝe pokrywać się z nazwą formularza, nie jest to jednak konieczne.

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania

Program RMUA. Instrukcja konfiguracji i pracy w programie. (Wersja 2)

Część 3 - Konfiguracja

Rozdział 5. Administracja kontami użytkowników

Aplikacje WWW - laboratorium

Kadry Optivum, Płace Optivum

Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2

OBSŁUGA PRACY DYPLOMOWEJ W APD PRZEZ RECENZENTA

1. Menadżer raportów 2 2. Edytor parametrów 3 3. Parametr główny 4 4. Parametr zależny 5 5. Zestawienie atrybutów 6 6.

LEGISLATOR. Data dokumentu:24 maja 2013 Wersja: 1.3 Autor: Paweł Jankowski, Piotr Jegorow

FAKTURY SERYJNE. I. Kalendarz. II. Fakturowanie seryjne

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy.

Kleos Mobile Android

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7

Zapytania do baz danych

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

Jak ustawić cele kampanii?

OPIS PRODUKTU EXSYS CORVID

dokumentacja Edytor Bazy Zmiennych Edytor Bazy Zmiennych Podręcznik użytkownika

W każdej sali najważniejszym narzędziem są prawdopodobnie Zasoby. Przyjrzyjmy się teraz temu narzędziu, któremu zmieniono poniżej nazwę na Wspólne

Raytracer. Seminaria. Hotline. początkujący zaawansowani na miejscu

BAZY DANYCH Panel sterujący

Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku

Karty pracy. Ustawienia. W tym rozdziale została opisana konfiguracja modułu CRM Karty pracy oraz widoki i funkcje w nim dostępne.

Wersja z dnia

Instrukcja przywrócenia hasła w urządzeniach:

TWORZENIE PRZYCISKÓW:

Instrukcja wprowadzania graficznych harmonogramów pracy w SZOI Wg stanu na r.

Instrukcja obsługi programu Do-Exp

System obsługi wag suwnicowych

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

KASK by CTI. Instrukcja

Bazy danych Access KWERENDY

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Instrukcja użytkownika systemu medycznego

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

Tworzenie prezentacji w MS PowerPoint

Zadanie 2. Tworzenie i zarządzanie niestandardową konsolą MMC

Praca z programami SAS poza lokalną siecią komputerową UZ. Zestawienie tunelu SSH oraz konfiguracja serwera proxy w przeglądarce WWW

Zapisz i autoryzuj płatności w folderze

Kwerendy, czyli zapytania. Opracowała: I. Długoń

Instrukcja użytkownika

LabVIEW PLATFORMA EDUKACYJNA Lekcja 1 Pierwsze kroki w środowisku LabVIEW

RCP Grafiki zmiany w kontekście funkcjonowania nieobecności w grafiku pracy

Problemy techniczne. Kontrolę konta administratora można z powrotem włączyć po zainstalowaniu programu.

5.5. Wybieranie informacji z bazy

Instrukcja obsługi programu:

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Spis treści 1. Wstęp Logowanie Główny interfejs aplikacji Ogólny opis interfejsu Poruszanie się po mapie...

Dodawanie nowego abonenta VOIP na serwerze Platan Libra

Zmiany wprowadzone w pakiecie. Projekt PSZ.eDOK

1.Instalacja. Przechodzimy przez kolejne okna instalatora klikacjąć Dalej. wolek.zallegro.pl

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6

BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Laboratorium - Podgląd informacji kart sieciowych bezprzewodowych i przewodowych

1 Moduł Konfigurowanie Modułu

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Niestandardowa tabela częstości

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.

Bazy danych TERMINOLOGIA

1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3

System Wsparcia Organizacji Zakupów w GRUPIE TAURON - Podręcznik Oferenta

Opcje raportów. łatwe i czytelne raportowanie

INSTRUKCJA OBSŁUGI PEŁNA KSIĘGOWOŚĆ. Artykuły

Podręcznik Użytkownika 360 Księgowość

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)

UONET+ moduł Dziennik

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

Przydziały (limity) pojemności dyskowej

EXCEL. Rozpoczynanie pracy z programem EXCEL. Interfejs EXCEL. Zaznaczanie komórek

Instrukcja użytkownika mforex WEB

Cash Flow System Instrukcja

POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY KATEDRA ENERGOELEKTRYKI LABORATORIUM INTELIGENTNYCH INSTALACJI ELEKTRYCZNYCH

Kancelaria zmiany w programie czerwiec 2011

ABC 2002/XP PL EXCEL. Autor: Edward C. Willett, Steve Cummings. Rozdział 1. Podstawy pracy z programem (9) Uruchamianie programu (9)

Laboratorium - Zdalny pulpit i zdalna Pomoc w systemie Windows XP

Palety by CTI. Instrukcja

MATERIAŁY DYDAKTYCZNE. Streszczenie: Z G Łukasz Próchnicki NIP w ramach projektu nr RPMA /15

Podręcznik użytkownika programu. Ceremonia 3.1

Polityka cookies w serwisie internetowym

Instrukcja. Internet Explorer 8 pracuje domyślnie w trybie dokumenty Internet Explorer 7. Brak możliwości korzystania z systemu e-pfron2

Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.

Kurs obsługi CMS. 1. Dodawanie kolejnych podstron 2. Obsługa wielojęzycznej witryny

Poszczególne statusy wprowadzone są na stałe, możliwy jest jedynie ich podgląd.

ODPOWIEDNIKI PRZETARGOWE - INSTRUKCJA

LibreOffice Calc VBA

Transkrypt:

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Zaawansowane systemy decyzyjne Laboratorium prowadzący:andrzejczajkowski 1 Zmienne i bloki logiczne 1 Celćwiczenia. Celem ćwiczenia jest zapoznanie się z możliwościami tworzenia zmiennych i bloków logicznych w programie Corvid Exsys w celu wykorzystania przy tworzeniu systemu ekspertowego. 2 Instrukcje do wykonania. 2.1 Tworzeniezmiennych. Zmienne są podstawą każdego budowanego systemu za pomocą Exsys Corvid. Zmienne są wykorzystywane podczas zadawania pytań, wyświetlania wyników jak i wnioskowania na podstawie stworzonej logiki działania. Zmienne są wykorzystywane do budowania reguł oraz bloków logicznych. Nie można przypisać zmiennych do reguł zanim te zmienne nie zostaną utworzone!!!. Dlatego przed przystąpieniem do budowy systemu należy zaplanować jaką system będzie mieć funkcjonalność i jakich zmiennych będziemy potrzebować. Można oczywiście dodawać zmienne w trakcie powstawania zapotrzebowania podczas konstruowania reguł ale może to prowadzić do nieczytelności projektu. Tworzenie zmiennych odbywa się poprzez okno zmiennych, które uruchamiamy przyciskiem lub poprzez menu Windows->Variables. Najważniejsze składowe okna zmiennych: 1. przycisk tworzenia nowej zmiennej, 1 AndrzejCzajkowski,InstituteofControlandComputationEngineering,UniversityofZielonaGóra,ul.Podgórna50,65-246Zielona Góra, Poland. Email: a.czajkowski@issi.uz.zgora.pl 1

2. obszar wspólnych opcji dla wszystkich typów zmiennych, 3. pole w którym są wyświetlane istniejące w projekcie zmienne, 4. obszar opcji dla wybranego typu zmiennej, 5. przycisk wyszukiwania gdzie zaznaczona zmienna jest wykorzystywana, 6. obszar filtrowania i sortowania istniejących zmiennych(po utworzeniu zmiennych należy samodzielnie sprawdzić poszczególne opcje). Przy tworzeniu nowej zmiennej wyświetlane jest okno wyboru typu zmiennej oraz nadania jej nazwy: Typy zmiennych: static list- lista statyczna, przeważnie służy do przechowywania pytań z wieloma odpowiedziami lub zmiennych, które wykorzystują stałą liczbę statycznych wartości(np. zmienna przełącznik z wartościami wł. i wył.), dynamic list- lista dynamiczna, podobnie jak lista statyczna przechowuję listę wartości z tym, że mogą one być modyfikowane i dodawane w trakcie działania systemu np. na skutek przeprowadzonego wnioskowania, numeric value- zmienna numeryczna, zmienna przechowująca wartość liczbową, która może być wykorzystana w wyrażeniach logicznych(np. jeśli zmienna 1 mniejsza od zmienna 2 to...). Ponadto zmienna numeryczna powinna być wykorzystywana wszędzie gdzie mamy do czynienia z obliczeniami matematycznymi. string value- zmienna o postaci tekstu, wykorzystywane głównie w raportowaniu wyników( istnieje wiele funkcji wbudowanych do manipulowania zmiennymi znakowymi). date value- zmienna przechowująca datę. Istnieje również wiele funkcji wbudowanych do sprawdzania zakresu data czy obliczania przyszłej lub przeszłej daty. collection/report- zmienna przechowująca listę wartości tworzona przez system podczas wnioskowania zazwyczaj w bloku THEN reguł logicznych. Przeważnie wykorzystywana w celu skonstruowania raportu, uwag czy porad dla użytkownika systemu. Kolekcje mogą być konstruowane w dowolny sposób np. w celu wygenerowania raportu w formacie HTML czy RTF. Confidence- zmienna przechowująca wartość dotycząca ufności, prawdopodobieństwa czy pewności. Przeważnie opis zmiennej tego typu opisuje zalecaną czynność lub możliwe zaistnienie konkretnego zdarzenia, które zostanie wskazane przez system. Wartość zmiennej opisuję jak prawdopodobne bądź zalecane jest wykonanie tej czynności w sytuacji, która została utworzona poprzez udzielanie odpowiedzi przez użytkownika(np. w przypadku urządzenia z 3 elementami- silnik, przekładnia, komputer istnieją 3 zmienne dotyczące ufności -usterka silnika, usterka przekładni i usterka komputera. Po udzieleniu przez użytkownika wszystkich odpowiedzi, zgodnie z zaimplementowaną logiką wnioskującą zostaną ustawione zmienne ufności. Następnie wskazana zostanie usterka elementu o najwyższej wartości odpowiedniej zmiennej ufności). W przypadku tego ćwiczenia należy stworzyć zmienne: 2

lista statyczna o nazwie dzień tygodnia(nazwa może zawierać również polskie znaki, niedozwolone są znaki operatorów i spacje). W polu Promt należy wpisać tekst odnoszący się do wartości zmiennej np. dzisiaj jest, można również wykorzystać znak dwukropka dzień tygodnia:. Do zmiennej w panelu opcji dotyczącym zmiennych typu static list należy dodać opcję: poniedziałek, wtorek... niedziela. Dodawanie opcji wykonywane jest poprzez przycisk Add to list po uprzednim wpisaniu opcji w polu tekstowym. Zanim zmienna zostanie wykorzystana w systemie można zmienić jej typ. Opcja Optional Short Text służy do wprowadzenia skróconego tekstu opcji. Skrócony tekst jest wykorzystywany w diagramach drzew decyzyjnych w celu zwiększenia przejrzystości, skrócona nazwa nie jest dostępna dla użytkownika końcowego. Dodatkowo w opcjach w górnym bloku można ustawić wartość domyślną oraz w zakładce Ask With sposób odpytywania o zmienną(zostawiamy radio button gdyż nasza zmienna będzie miała tylko jedną możliwą wartość w dany czasie). lista statyczna o nazwie Pogoda. W Promt wpisujemy Na dworze jest. Dodajemy opcje do listy: słonecznie, deszczowo, pochmurnie, zamieć. zmienną numeryczna temperatura. W Promt wpisujemy Temperatura na dworze wynosi. W zakładce Continuous można ustawić limit górny i dolny, w razie złego wprowadzenia wartości przez użytkownika system odrzuci odpowiedź i ponowi zapytanie. Można zaznaczyć również opcję Integers Only w celu wymuszenia licz całkowitych. zmienna dotycząca ufności o nazwie idź na plażę. W zakładce Confidence można określić jak będzie wyliczana wartość ufności dla zmiennej. W przypadku zwykłej zmiennej numerycznej po przypisaniu do zmiennej 4 a potem 2, zmienna będzie przechowywać wartość 2. W przypadku zmiennej ufności ustawionej na wyliczanie za pomocą sumy wartość będzie wynosiła 6. Natomiast gdy ustawimy sposób wyliczania Average czyli średnia, zmienna będzie wynosić 3. Dzięki temu za pomocą kolejnych reguł można zwiększać lub zmniejszać prawdopodobieństwo zdarzenia jakim np. w naszym przypadku jest wymiana źródła światła. Zmienne ufności mogą być wyliczane w przeróżny sposób np. na podstawie zależnego i niezależnego prawdopodobieństwa statystycznego. zmienna dotycząca ufności o nazwie idź do pracy. Sposób wyliczania za pomocą sumy. zmienna dotycząca ufności o nazwie zostań w domu. Sposób wyliczania za pomocą sumy. 2.2 Blokilogiczne W środowisku Exsys Corvid wszystkie zbudowane systemy ekspertowe opierają się o reguły typu if/then. Reguły te opisują poszczególne kroki jakie musi rozważyć ekspert podczas podejmowania decyzji. W wyniku takiego działania podjęta decyzja jest kombinacją wielu również bardzo skomplikowanych reguł. Poszczególne reguły mogą być bardzo skomplikowane lub złożone z innych reguł. Odzwierciedla to proces podejmowania decyzji w świecie rzeczywistym. Reguły w środowisku Exsys Corvid są zorganizowane w bloki logiczne. Dzięki czemu zbiory reguł są tworzone w prosty i przejrzysty sposób, jak również zarządzanie nimi jest intuicyjne. Nie ma określonych zasad budowy bloków logicznych jak i świecie rzeczywistym różni eksperci różnie mogą podejmować swoje decyzje. Narzędzia, które są udostępnione pozwalają na dowolną strategie budowy systemu. Dzięki temu możliwe jest odzwierciedlenie dowolnego sposobu myślenia przy rozwiązywaniu danego problemu. Blok logiczny może być pojedynczą reguła jak również skomplikowanym drzewem decyzyjnym. Cały system może mieć jeden jak również wiele bloków logicznych. W większości zastosowań pojedynczy blok logiczny powinien zawierać wszystkie reguły dotyczące konkretnego problemu czy podejmowanej decyzji. Wielu projektantów systemów ekspertowych preferuję budowę wielu bloków logicznych odpowiedzialnych za cząstkowe części systemów natomiast część woli budować duże bloki pokrywające duże porcje systemu. Wszystko zależy od rozwiązywanego problemu i sposobu myślenia danego projektanta. Podsumowując bloki logiczne należy budować zgodnie z zasadą aby były one ustrukturyzowane i zorganizowane tak by łatwo można było zrozumieć logikę jaka w nich jest zawarta. Istotne jest również aby bloki logiczne były kompletne i łatwe w zarządzaniu. Tworzenie bloków logicznych odbywa się poprzez okno bloków logicznych, które uruchamiamy przyciskiem lub poprzez menu Windows->Logic Block. 3

Najważniejsze składowe okna bloków logicznych: 1. nazwa wyświetlanego bloku logicznego, 2. obszar roboczy gdzie tworzona jest struktura reguły, 3. okno podglądu sworzonych reguł(po zmaknięciu można je otworzyć poprzez menu Display->Rule View), 4. kontrolki do dodawania nowych węzłów. W poniższym zadaniu tworzymy blok funkcyjny o nazwie co mam zrobic poprzez modyfikację nazwy nadanej automatycznie Logic block 1. Tworzenie reguł: 1. W pierwszej kolejności tworzymy reguły dotyczące czynności jaką jest pójście do pracy. Można utworzyć pięć oddzielnych reguł dla każdego dnia roboczego tygodnia(if dzisiaj jest poniedziałek THEN idź do pracy, if dzisiaj jest wtorek THEN idź do pracy itd), ale przejrzyściej jest zgrupować równorzędne wartości jakimi są dni tygodnia(if dzisiaj jest poniedziałek or wtorek or środa itd THEN idź do pracy). Bloki if i THEN wyglądają podobnie ale działanie jest zupełnie inne. W przypadku bloku if warunek dzisiaj jest deszczowo oznacza odpytanie użytkownika jaka jest dziś pogoda. Natomiast takie stwierdzenie w bloku THEN powoduje uznanie przez system, że pogoda jest deszczowa i ustawienie tej zmiennej na taką wartość. Tworzenie takiej reguły odbywa się poprzez obszar dodawania nowych węzłów. Aby dodać warunek if należy przycisnąć przycisk Add. W nowo otwartym oknie wyświetlane są zmienne dostępne w systemie. Należy wybrać Dzień tygodnia i w zakładce Static List dodać nowy węzeł poprzez przycisk Add to list(aby dodać węzeł złożony z kilku opcji należy wybierać je trzymając wciśnięty CTRL. 2. Następnie należy dodać kolejny węzeł odnoszący się do dni wolnych(należy dodać oba węzły do jednej listy. W razie zamknięcia okna po dodaniu poprzedniego węzła należy go wybrać w głównym oknie roboczym i wybrać z menu podręcznego opcję Edit i powtórzyć dodawanie węzłów. W celu połączenia osobnych węzłów można tego dokonać przyciskiem Group Together 4

Po zatwierdzeniu w obszarze roboczym powinny pojawić się stworzone węzły: W głównym oknie przedstawiona jest skrócona wersja węzłów natomiast w po wybraniu węzła w dolnym oknie Node będzie wyświetlony podgląd pełnego tekstu dotyczącego reguły. 3. Następnie należy zbudować zbudować blok THEN w którym zostanie przypisana reguła pójścia do pracy w dzień roboczy. Aby stworzyć taką regułę należy zaznaczyć węzeł warunkowy odnoszący się do dni roboczych i następnie nacisnąć przycisk Variable. W nowo otwartym oknie należy wybrać zmienną ufności, którą chcemy ustawić w tym bloku czyli idź do pracy. W zakładce expression, zmienna jest przedstawiona w nawiasach kwadratowych znaczy to, że do zmiennej będzie przypisywana wartość. Jaka wartość przedstawiająca ufność przy przypisywaniu do zmiennej zależy tylko i wyłącznie od projektanta systemu i jego implementacji. Należy jedynie pamiętać o strategii przypisywania wartości i trzymania się jej w całym systemie. W poniższym ćwiczeniu należy przypisać wartość 10 do zmiennej([idź do pracy] = 10). Można dodać wiele elementów do bloku THEN czyniąc go dowolnie rozbudowanym zależnie od potrzeby ale w tym ćwiczeniu pozostaniemy na jednej instrukcji. Dla tak stworzonej reguły można sprawdzić jej strukturę za pomocą okna Rule view. Ponadto warto zwrócić uwagę na zielony wskaźnik przy pełnej regule(idź do pracy w dni robocze) i kolor czerwony wskaźnika przy regule niepełnej(co robić w dni wolne). 4. Kolejnym krokiem jest utworzenie reguł dla dni wolnych od pracy zgodnie z poniższym schematem(należy zwrócić uwagę na poziom zagnieżdżenia kolejnych instrukcji warunkowych). Należy pamiętać, że zagnieżdżanie instrukcji warunkowych powoduje wymóg spełnienia obu tych instrukcji(operator AND) aby blok THEN był zrealizowany. 5

W celu przetestowania systemu należy wcisnąć przycisk i wybrać opcję zbudowania domyślnego bloku sterowania (Command Block- bloki sterowania będą dokładnie omówione na późniejszych zajęciach). 3 Zadanie do samodzielnego wykonania Zbudować system ekspertowy dotyczący sterowania ogrzewaniem w pomieszczeniu. Należy utworzyć następujące zmienne: zmienne numeryczne: temperatura żądana, temperatura w pomieszczeniu, temperatura na dworze. zmienne ufności: otwórz okno, włącz klimatyzację, włącz ogrzewanie. System ma doradzać następujące czynności: otworzyć okno gdy temperatura zadana jest niższa niż temperatura w pomieszczeniu i wyższa niż temperatura na zewnątrz, otworzyć okno gdy temperatura zadana jest wyższa niż temperatura w pomieszczeniu i niższa niż temperatura na zewnątrz, włączyć klimatyzację gdy temperatura zadana jest niższa niż temperatura w pomieszczeniu i niższa niż temperatura na zewnątrz, włączyć ogrzewanie gdy temperatura zadana jest wyższa niż temperatura w pomieszczeniu i wyższa niż temperatura na zewnątrz. Przetestować powstały system. 6