JESS FAKTY, REGUŁY. czyli faktami. Rodzaje faktów, oraz sposoby ich implementacji w programie. Szablony do tworzenia faktów.
|
|
- Stefan Stankiewicz
- 7 lat temu
- Przeglądów:
Transkrypt
1 Ćwiczenie numer 2 JESS FAKTY, REGUŁY 1. Cel ćwiczenia 1) Celem ćwiczenia jest zapoznanie się z jedną z form reprezentacji wiedzy w JESS, czyli faktami. Rodzaje faktów, oraz sposoby ich implementacji w programie. Szablony do tworzenia faktów. 2) Celem ćwiczenia jest zapoznanie się z jedną z form reprezentacji wiedzy w JESS, czyli regułami. Reguły, oraz sposoby ich implementacji w programie. 2. Opis ćwiczenia Reprezentacja wiedzy w dziedzinie sztucznej inteligencji jest jednym z głównych problemów, które jeszcze nie zostały rozwiązane. Wiedza oznacza zbiór wiadomości z określonej dziedziny, wszelkie zobiektywizowane i utrwalone formy kultury umysłowej i świadomości społecznej powstałe w wyniku kumulowania doświadczeń i uczenia się. Można powiedzieć, że wiedza jest symbolicznym opisem otaczającego nas świata rzeczywistego. JESS pozwala na reprezentowanie wiedzy w postaci faktów. Zbiór takich faktów zwany jest w składni JESS jako pamięć robocza. Cała taka wiedza (zbiór informacji) jest reprezentowana w postaci faktów w pamięci roboczej. Dla przykładu jeżeli nasz program polega na kontroli klimatyzatora, to faktami będą temperatura, wilgotność, i inne. Fakty jak większość konstrukcji w JESS zapisane są w postaci listy. Fakt jest najmniejszą częścią informacji, która może być dodana lub usunięta z pamięci roboczej systemu ekspertowego. Fakty nie są pojedynczymi atomami, mają zazwyczaj określoną strukturę. Na elementach pamięci roboczej jakimi są w fakty można dokonywać różnych operacji. Do podstawowych operacji należą: reset inicjacja pamięci roboczej assert dodanie nowego faktu retract usunięcie faktu facts wyświetlenie zawartości pamięci roboczej (faktów) clear usunięcie wszystkiego z pamięci roboczej
2 ASSERT: (assert (lista_faktow temperatura wilgotnoscć)) Jako wynik takiego działania zostanie dodany fakt do pamięci roboczej. Aby go wyświetlić posługujemy się poleceniem. RETRACT: (assert (lista_faktow temperatura wilgotnosc)) (assert (lista_faktow2 temperatur2 wilgotnosc2)) (retract 1) Jako wynik takiego działania zostaną utworzone 2 fakty, następnie poleceniem (retract numer_faktu) zostanie usunięty wybrany fakt. Czasami zamiast dodawać fakty poleceniem assert możemy posłużyć się poleceniem deffacts, które pozwala na hurtowe dodawanie faktów. Jest to przydatne kiedy chcemy wprowadzić do pamięci roboczej fakty początkowe, na podstawie których dokona się proces wnioskowania. Konstrukcja taka ma postać: (deffacts catalog "Product catalog" (product 1 sticky-notes "$1.99") (product 2 paper-clips "$0.99") (product 3 blue-pens "$2.99") (product 4 index-cards "$0.99") (product 5 stapler "$5.99")) Dodane zostanie 5 faktów, które poleceniem załadujemy do pamięci roboczej. Fakty takie można później usuwać podobnie jak we wcześniejszym przykładzie, należy podać tylko odpowiedni numer faktu.
3 W JESS można wyróżnić następujące rodzaje faktów, które różnią się między sobą sposobem ich implementacji: unordered facts (fakty nieuporządkowane) ordered facts (fakty uporządkowane) Fakty nieuporządkowane Ich podstawową charakterystyką jest to, że posiadają określoną strukturę: (deftemplate person (name Jan Kowalski) (age 23 ) (eye-color blue) (hair-color brown)) W JESS można definiować (tworzyć) różne rodzaje faktów nieuporządkowanych. Należy jednak pamiętać, że aby dodać jakiś fakt nieuporządkowany musimy wcześniej zdefiniować jego szablon, co pokazano poniżej: (deftemplate person "People" (slot name) (slot age) (slot gender)) (assert (person (age 34) (name "Bob Smith") (gender Male))) W przypadku, w którym dodając nowy fakt nie podamy wartości slotu, przyjmie on wartość nil (pustą). Np.: nie podajemy slotu name: (assert (person (age 34) (gender Male))) Taki fakt zostanie dodany, a pod wartość name zostanie przypisana wartość pusta. Można także domyślnie każdemu slotowi przypisać konkretną wartość, jeżeli nie podamy wartości slotu podczas dodawania faktu to zostanie pod niego automatycznie przypisana wartość domyślna. Wartość domyślną dodajemy przy definiowaniu szablonu faktu: (deftemplate person "People" (slot name (default "Jan Kowalski")) (slot age) (slot gender))
4 Można także tworzyć tzw. multisloty. W sytuacji kiedy chcemy lub wiemy, że dana wartość slotu składa się więcej niż z jednego symbolu, np.: wartość slotu to opis (składający się z kilku symboli), należy posłużyć się trochę inna konstrukcją szablonu faktu: (deftemplate person "People" (slot name) (slot age) (multislot hobbies)) Tworząc fakt jako wartość hobbies możemy użyć ciągu symboli, np.: sport, tv, gry etc.. Osoba taka ma kilka wartości slotu hobbies. (assert (person (age 34) (name "Bob Smith") (gender Male) (hobbies sport, tv, gry etc. ) )) Wartości poszczególnych faktów mogą zostać modyfikowane przy pomocy polecenia modify. (deftemplate person "People" (slot name) (slot age) (slot gender)) (assert (person (age 34) (name "Bob Smith") (gender Male))) (modify 1 (age 23)) Zmieniona zostanie wartość age na nową = 23. Fakty uporządkowane Są one prostymi listami, gdzie pierwszym polem jest rodzaj kategorii faktu. Np.: (stal niklowana) (data-godzina :30) (lista-numerow )
5 W sytuacji, w której dany fakt nie musi mieć wielu slotów lepiej posłużyć się faktami uporządkowanymi. Fakty takie definiujemy w postaci szablonu przed dodaniem faktu z konkretnymi wartościami. (deftemplate number (slot value)) (assert (number (value 123))) Podobnie jak w przypadku z faktami nieuporządkowanymi możemy posługiwać się poleceniami usuwania I modyfikowania takich faktów. Modyfikowanie: (deftemplate number (slot value)) (assert (number (value 123))) (modify 1 (value 1)) Usuwanie: (deftemplate number (slot value)) (assert (number (value 123))) (retract 1) 3. Opis ćwiczenia JESS pozwala na reprezentowanie wiedzy w postaci reguł. Zbiór reguł w JESS to typowa baza wiedzy. Podczas tworzenia systemów ekspertowych najważniejsze i najtrudniejsze jest pozyskanie wiedzy od ekspertów z dziedziny tworzonego systemu. Zdobytą wiedzę należy odpowiednio zapisać w naszym systemie w postaci zbioru reguł. Program posiadający zestaw faktów i reguł, oraz interfejs współpracy z użytkownikiem, który dokonuje procesu wnioskowania na zestawach tych danych można nazwać systemem ekspertowym. JESS posiada dwa mechanizmy wnioskowania:
6 Wnioskowanie wprzód Wnioskowanie wstecz Na regułach podobnie jak na faktach można dokonywać różnych operacji. Do podstawowych operacji należą: defrule definiowanie nowej reguły undefrule usunięcie reguły run uruchomienie odpalania reguł, czyli proces wnioskowania DEFRULE: (defrule nazwa_reguly "regula nic nie robi" ) Jako wynik takiego działania zostanie wyświetlone tylko TRUE. Jest to tylko przykład reguły, która nie robi nic. Postać każdej reguły jest następujący: IF THEN, czyli jeżeli coś jest prawdziwe to wykonaj działanie. W JESS słówko THEN to znak, aby działanie po prawej stronie znaku wykonało się wszystko co znajduje się po jego lewej stronie musi być prawdziwe. Gdy mamy już tak utworzoną regułę możemy wpisać do konsoli poniższe komendy: (watch facts) (watch activations) (watch rules) (run) Watch facts, activations i rules to funkcje, które w konsoli wyświetlą nam odpowiednie informacje. Reset ładuje fakty do pamięci roboczej (kiedy użytkownik sam nie wprowadzi faktu, w JESS zawsze istnieje fakt początkowy initial, który jest przez niego używany). Run odpowiada za odpalenie reguł. Polega to na tym, że przegląda on bazę reguł i fakty, jeżeli reguła może zostać uruchomiona przez fakt to jest ona uruchamiana. Jest to typowy proces wnioskowania, który JESS wykonuje samodzielnie. UNDEFRULE: (undefrule nazwa_reguly) Polecenie to usunie nam daną regułę.
7 Poniżej przedstawiam kompletny fragment kodu JESS, w którym mamy funkcję, regułę i fakt: (watch all) (deffunction change-baby () (printout t "Baby is now dry" crlf)) (defrule change-baby-if-wet "If baby is wet, change its diaper."?wet <- (baby-is-wet) (change-baby) (retract?wet)) (assert (baby-is-wet)) (run) Aby reguła została odpalona musi być fakt uruchamiający tą regułę. Dodaliśmy fakt poleceniem assert. Run uruchomi proces wnioskowania, sprawdzi, że jest jedna reguła, którą można aktywować i to robi. Reguła jako efekt działania uruchamia naszą funkcję, która wyświetla nam informację. (defrule literal-values (letters b c) ) (watch activations) (assert (letters b d)) (assert (letters b c)) W tym przypadku dodajemy dwa fakty, pierwszy z nich nie uruchomi naszej reguły. Dodaje on litery b i d, aby uruchomić regułę potrzeba liter b i c, litery te dodaje fakt drugi, który uruchomi naszą regułę. (defrule repeated-variables (a?x) (b?x) (printout t "?x is "?x crlf)) (watch activations) (deffacts repeated-variable-facts (a 1) (a 2) (b 2) (b 3)) (run)
8 Mamy tutaj regułę, która zostanie aktywowana tylko wtedy, gdy fakty będą się powtarzać. Dodajemy jako fakty 4 liczby, powtarza się liczba z faktu 2 i 3, dlatego to te fakty uruchomią naszą regułę. Przedstawione teraz będą reguły, których przesłanki są bardziej rozbudowane. Przesłanki muszą być prawdziwe, aby reguła została uruchomiona. Jako efekt pracy reguły może zostać wyświetlona informacja, dodany/usunięty/zmodyfikowany fakt, lub nawet wywołanie funkcji. (deftemplate person (slot age)) (defrule find-trustworthy-people-1 (person (age?x)) (test (<?x 30)) (printout t?x " is under 30!" crlf)) W tym przypadku reguła wymaga aby osoba miała wiek poniżej 30 lat. Tylko dla takiej osoby reguła zadziała. (deftemplate used-car (slot price) (slot mileage)) (deftemplate new-car (slot price) (slot warrantyperiod)) (defrule might-buy-car?candidate <- (or (used-car (mileage?m&:(<?m 50000))) (new-car (price?p&:(<?p 20000)))) (assert (candidate?candidate))) (assert (new-car (price 18000))) (assert (used-car (mileage 30000))) (run) Tutaj reguł sprawdza nam informacje o samochodach, jeżeli używany samochód ma mniej niż 50k km na liczniku lub nowy ma cenę poniżej 20k zł to samochody takie są polecane użytkownikowi. Aby taka reguła została uruchomiona wystarczy jeden fakt, który ją spełnia (mamy słówko or, and powoduje, że obydwa fakty musiałby być spełnione).
9 4. Zadania Kod przydatny do zapętlenia programu, aby pytał czy chcemy kontynuować znajduje się poniżej: (bind?co 1) (while (=?co 1) do (kod naszego programu) (printout t "Dodac nowego" crlf) (printout t "tak / nie" crlf) (bind?odp (read)) (if (=?odp tak) then (bind?co 1) else (bind?co 0) ) ) Mgr inż. Marynowski Przemysław pmarynow@agh.edu.pl
Kontrola przepływu wykonywania -pętle (foreach, if, while ). Tworzenie własnych funkcji przy pomocy polecenia deffunction( ).
Ćwiczenie numer 1 Wprowadzenie do języka programistycznego JESS Kontrola przepływu wykonywania -pętle (foreach, if, while ). Tworzenie własnych funkcji przy pomocy polecenia deffunction( ). Fakty, reguły
Bardziej szczegółowoProgramowanie w CLIPS
Programowanie w CLIPS CLIPS - środowisko open source do tworzenia systemów ekspertowych. Stworzone w NASA - Johnson Space Center. System ekspertowy - jest to program lub zestaw programów komputerowych
Bardziej szczegółowoProgramowanie w CLIPS
Programowanie w CLIPS Wiedza początkowa Reguły oraz fakty początkowe dodane na początku programu za pomocą deffacts. (deffacts people "Znajomi" (person (name "Adam Kowalski") (age 24) (eye-color blue)
Bardziej szczegółowoSystemy ekspertowe. Wykład 5 Wprowadzenie do CLIPSa Programowanie systemów ekspertowych. Joanna Kołodziejczyk
Systemy ekspertowe Wykład 5 Wprowadzenie do CLIPSa Programowanie systemów ekspertowych Joanna Kołodziejczyk 2016 Joanna Kołodziejczyk Systemy ekspertowe 2016 1 / 26 Historia Plan wykładu 1 Historia 2 3
Bardziej szczegółowoInżynieria wiedzy. Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki 1. Podstawy programowania w języku CLIPS
Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki www.kwmimkm.polsl.pl Wydział Mechaniczny Technologiczny Politechnika Śląska Inżynieria wiedzy Instrukcja do zajęć laboratoryjnych 1. Podstawy
Bardziej szczegółowoĆwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY.
Ćwiczenie numer 4 JESS PRZYKŁADOWY SYSTEM EKSPERTOWY. 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przykładowym systemem ekspertowym napisanym w JESS. Studenci poznają strukturę systemu ekspertowego,
Bardziej szczegółowoRys. 1 Budowa systemu ekspertowego
Wstęp Systemy ekspertowe [3] to jedno z narzędzi informatycznych, którego celem jest pomoc podczas podejmowania decyzji. Typowe systemy ekspertowe można podzielić na: Systemy doradcze których celem jest
Bardziej szczegółowoInżynieria wiedzy. Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki
Katedra Wytrzymałości Materiałów i Metod Komputerowych Mechaniki www.kwmimkm.polsl.pl Wydział Mechaniczny Technologiczny Politechnika Śląska Inżynieria wiedzy Instrukcja do zajęć laboratoryjnych 2. Tworzenie
Bardziej szczegółowoZmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.
Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez
Bardziej szczegółowoSystemy ekspertowe. Krzysztof Patan
Systemy ekspertowe Krzysztof Patan Wprowadzenie System ekspertowy Program komputerowy, który wykonuje złożone zadania o dużych wymaganiach intelektualnych i robi to tak dobrze jak człowiek będący ekspertem
Bardziej szczegółowoPo uruchomieniu programu nasza litera zostanie wyświetlona na ekranie
Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których
Bardziej szczegółowoSystemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
Bardziej szczegółowoTrochę o plikach wsadowych (Windows)
Trochę o plikach wsadowych (Windows) Zmienne środowiskowe Zmienną środowiskową można ustawić na stałe w systemie (Panel sterowania->system- >Zaawansowane ustawienia systemu->zmienne środowiskowe) lub też
Bardziej szczegółowoPodstawowe definicje Z czego składa się system ekspertowy? Wnioskowanie: wprzód, wstecz, mieszane
Podstawowe definicje Z czego składa się system ekspertowy? Wnioskowanie: wprzód, wstecz, mieszane Tworzymy system ekspertowy 1. Wstępna analiza i definicja dziedziny problemu. W tym: poznanie wiedzy dziedzinowej
Bardziej szczegółowoProgramowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Bardziej szczegółowoTypy, klasy typów, składnie w funkcji
Typy, klasy typów, składnie w funkcji Typy w Haskell Każde wyrażenie w Haskell posiada zdefiniowany typ. Dzięki temu już na etapie kompilacji kodu następuje sprawdzenie poprawności kodu i zabezpiecza nas
Bardziej szczegółowoUstalanie dostępu do plików - Windows XP Home/Professional
Ustalanie dostępu do plików - Windows XP Home/Professional Aby edytować atrybuty dostępu do plikow/ katalogow w systemie plików NTFS wpierw sprawdź czy jest Wyłączone proste udostępnianie czyli przejdź
Bardziej szczegółowoJESS. Tomasz Rybak Applied Systems Division Software Departament Faculty of Computer Science Bialystok Technical University
JESS Tomasz Rybak rybak@ii.pb.bialystok.pl Applied Systems Division Software Departament Faculty of Computer Science Bialystok Technical University Tomasz Rybak (PB) JESS 1 / 50 Table of content 1 Wprowadzenie
Bardziej szczegółowoPrzedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa.
Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa. Celem ćwiczenia jest nabycie umiejętności wykorzystania w praktyce instrukcji warunkowych programowania
Bardziej szczegółowoLaboratorium Systemów SCADA
Laboratorium Systemów SCADA Ćwiczenie 4. Tworzenie skryptów w programie InTouch Opracował: dr hab. inż. Sebastian Dudzik 1. Cel ćwiczenia Zapoznanie się z rodzajami skryptów w programie InTouch. Zapoznanie
Bardziej szczegółowoapp/ - folder zawiera pliki konfiguracyjne dla całej aplikacji src/ - folder zawiera cały kod PHP aplikacji
Baza danych i ORM Projekt zestaw usług dostępnych pod daną domeną. Aplikacja niezależnie działające programy/serwisy (w obrębie pojektu). Zwyczajowo projekt posiada dwie aplikacje: Frontend Backend Moduł
Bardziej szczegółowoSystemy ekspertowe. Sprawozdanie I. Tworzenie bazy wiedzy w systemie PC- Shell. Wykonali: Wiktor Wielgus Łukasz Nowak
Systemy ekspertowe Sprawozdanie I Tworzenie bazy wiedzy w systemie PC- Shell Wykonali: Wiktor Wielgus Łukasz Nowak 1. Opis systemu System został stworzony w celu pomocy użytkownikowi przy wyborze sprzętu
Bardziej szczegółowoZawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6
Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki
Bardziej szczegółowoDelphi Laboratorium 3
Delphi Laboratorium 3 1. Procedury i funkcje Funkcja jest to wydzielony blok kodu, który wykonuje określoną czynność i zwraca wynik. Procedura jest to wydzielony blok kodu, który wykonuje określoną czynność,
Bardziej szczegółowoWskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
Bardziej szczegółowoPHP 5 język obiektowy
PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje
Bardziej szczegółowo1.Formatowanie tekstu z użyciem stylów
1.Formatowanie tekstu z użyciem stylów Co to jest styl? Styl jest ciągiem znaków formatujących, które mogą być stosowane do tekstu w dokumencie w celu szybkiej zmiany jego wyglądu. Stosując styl, stosuje
Bardziej szczegółowoSystem ekspertowy JESS
System ekspertowy JESS 1. Informacje wst epne System ekspertowy Jess jest w ca lości napisany w j ezyku Java. Jest to tzw. business rules engine, czyli biznesowy silnik regu l. Inaczej, jest to oprogramowanie,
Bardziej szczegółowoSystemy ekspertowe. Wnioskowanie w systemach regułowych. Część piąta. Autor Roman Simiński.
Część piąta Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim uczestnictwa.
Bardziej szczegółowoVisual Basic Debugging and Error Handling
Visual Basic Debugging and Error Handling Typy błędów 1. Compile-Time, (wykrywane w czasie kompilacji np. błąd w składni) 2. Run-Time, (pojawiające się podczas wykonywania programu, np. zły typ danych
Bardziej szczegółowoUwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)
Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie
Bardziej szczegółowoParadygmaty programowania
Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów
Bardziej szczegółowo5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel
5.3. Tabele Tabela jest podstawowym elementem bazy danych. To właśnie w tabelach gromadzone są w bazie rekordy danych. Projektując tabelę, definiujemy, jakie pola będzie zawierał pojedynczy rekord informacji.
Bardziej szczegółowo1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania
1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja nie ma parametru i zwraca wartość na zewnątrz. nie ma parametru i nie zwraca wartości na zewnątrz. ma parametr o nazwie void i zwraca
Bardziej szczegółowoPodstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują
Bardziej szczegółowoSmarty PHP. Leksykon kieszonkowy
IDZ DO PRZYK ADOWY ROZDZIA SPIS TREœCI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG Smarty PHP. Leksykon kieszonkowy Autor: Daniel Bargie³ ISBN: 83-246-0676-9 Format: B6, stron: 112 TWÓJ KOSZYK
Bardziej szczegółowoZapisywanie algorytmów w języku programowania
Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym
Bardziej szczegółowoLABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab
LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem
Bardziej szczegółowoZadanie 2: Arytmetyka symboli
1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie
Bardziej szczegółowowhile(wyrażenie) instrukcja
emat zajęć: Operatory i instrukcje w języku C - 2 Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (instrukcja cyklu: while) Do wykonywania cyklicznych obliczeń w języku C stosuje się instrukcje cyklu (pętli).
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoINFRA. System Connector. Opis systemu
INFRA System Connector Opis systemu Spis treści Opis składników systemu... 3 Bezpieczeństwo systemu... 4 Bezpieczeństwo komunikacji... 4 Zabezpieczenie dostępu do serwisów... 4 Autoryzacja użytkowników...
Bardziej szczegółowoBackend Administratora
Backend Administratora mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 W tym celu korzystając z konsoli wydajemy polecenie: symfony generate:app backend Wówczas zostanie stworzona
Bardziej szczegółowoSQL, LIKE, IN, CASE, EXISTS. Marcin Orchel
SQL, LIKE, IN, CASE, EXISTS Marcin Orchel Spis treści 1 LIKE 2 2 BETWEEN 4 3 IN 5 4 EXISTS 6 5 WYRAŻENIA CASE 7 6 Zadania 9 1 Rozdział 1 LIKE Predykat LIKE jest testem dopasowującym wzorzec łańcucha. Składnia
Bardziej szczegółowoUniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych
Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych ELEMENTY SZTUCZNEJ INTELIGENCJI Laboratorium nr 6 SYSTEMY ROZMYTE TYPU MAMDANIEGO
Bardziej szczegółowoapp/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP
Baza danych i ORM Struktura Bundle app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP src/ - folder zawiera cały kod PHP aplikacji vendor/
Bardziej szczegółowoProcedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Bardziej szczegółowoZakład Systemów Rozproszonych
Zakład Systemów Rozproszonych Politechnika Rzeszowska Moduł 5: Wybrane programy użytkowe Edytor Vi Edytor Vi uruchamiany jest w oknie terminala. Przy jego pomocy możemy dokonywać następujących operacji:
Bardziej szczegółowoProgramowanie w Turbo Pascal
Skróty: ALT + F9 Kompilacja CTRL + F9 Uruchomienie Struktura programu: Programowanie w Turbo Pascal Program nazwa; - nagłówek programu - blok deklaracji (tu znajduje się VAR lub CONST) - blok instrukcji
Bardziej szczegółowoWidoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Bardziej szczegółowoPodstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji
Podstawy programowania Laboratorium Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji Instrukcja warunkowa if Format instrukcji warunkowej Przykład 1. if (warunek) instrukcja albo zestaw
Bardziej szczegółowoW przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby
Część XI C++ W folderze nazwisko36 program za każdym razem sprawdza oba warunki co niepotrzebnie obciąża procesor. Ten problem można rozwiązać stosując instrukcje if...else Instrukcja if wykonuje polecenie
Bardziej szczegółowoMATLAB Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący
MATLAB Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący Laboratorium 13: GUI - Graficzny interfejs użytkownika Cel: Projektowanie z wykorzystaniem Graficzny Interfejs Użytkownika Czas: Wprowadzenia
Bardziej szczegółowoMake jest programem komputerowym automatyzującym proces kompilacji programów, na które składa się wiele zależnych od siebie plików.
Spis treści 1 Krótkie wprowadzenie do makefile'a 1.1 Typowa reguła programu make 1.2 Zmienne w pliku Makefile 1.3 Zmienne standardowe 1.4 Zmienne automatyczne 1.5 Więcej o regułach 1.5.1 Reguły z wzorcem
Bardziej szczegółowoDokumentacja programu. Zoz. Uzupełnianie kodów terytorialnych w danych osobowych związanych z deklaracjami POZ. Wersja
Dokumentacja programu Zoz Uzupełnianie kodów terytorialnych w danych osobowych związanych z deklaracjami POZ Wersja 1.40.0.0 Zielona Góra 2012-02-29 Wstęp Nowelizacja Rozporządzenia Ministra Zdrowia z
Bardziej szczegółowoC++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów
Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów
Bardziej szczegółowoLekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()
Paweł Gmys PHP strona 1 Lekcja 10 Uprawnienia Aby skrypt PHP mógł odwołać się do pliku, musi mieć odpowiednie uprawnienia. Szczegóły są zależne od serwera. Najczęściej chyba skrypt ma uprawnienia takie,
Bardziej szczegółowoSystem imed24 Instrukcja Moduł Analizy i raporty
System imed24 Instrukcja Moduł Analizy i raporty Instrukcja obowiązująca do wersji 1.8.0 Spis treści 1. Moduł Analizy i Raporty... 3 1.1. Okno główne modułu Analizy i raporty... 3 1.1.1. Lista szablonów
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoOBIEKTY TECHNICZNE OBIEKTY TECHNICZNE
OBIEKTY TECHNICZNE Klawisze skrótów: F7 wywołanie zapytania (% - zastępuje wiele znaków _ - zastępuje jeden znak F8 wyszukanie według podanych kryteriów (system rozróżnia małe i wielkie litery) F9 wywołanie
Bardziej szczegółowoĆwiczenie Konfiguracja statycznych oraz domyślnych tras routingu IPv4
Ćwiczenie Konfiguracja statycznych oraz domyślnych tras routingu IPv4 Topologia Tabela adresacji Urządzenie Interfejs Adres IP Maska podsieci Brama domyślna R1 G0/1 192.168.0.1 255.255.255.0 N/A S0/0/1
Bardziej szczegółowo7. Konfiguracja zapory (firewall)
7. Konfiguracja zapory (firewall) Konfiguracja firewalla w rozwiązaniach NETASQ podzielona jest na dwie części. Pierwszą z nich są reguły domyślne a drugą polityki konfigurowane przez administratora. W
Bardziej szczegółowoMetody numeryczne Laboratorium 2
Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania
Bardziej szczegółowoLokalizacja jest to położenie geograficzne zajmowane przez aparat. Miejsce, w którym zainstalowane jest to urządzenie.
Lokalizacja Informacje ogólne Lokalizacja jest to położenie geograficzne zajmowane przez aparat. Miejsce, w którym zainstalowane jest to urządzenie. To pojęcie jest używane przez schematy szaf w celu tworzenia
Bardziej szczegółowoPodstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Bardziej szczegółowoPROLOG INNE PRZYKŁADY MACIEJ KELM
PROLOG INNE PRZYKŁADY MACIEJ KELM PREDYKAT RANDOM Funkcja random zwraca losową liczbę całkowitą w przedziale od 1 do X. Gdzie X jest parametrem funkcji random. Przed użyciem random należy zainicjować tak
Bardziej szczegółowoR o g e r A c c e s s C o n t r o l S y s t e m 5
R o g e r A c c e s s C o n t r o l S y s t e m 5 Nota aplikacyjna nr 003 Wersja dokumentu: Rev. B Uprawnienia Uwaga: Niniejszy dokument dotyczy RACS v5.2 (VISO 1.2.2 lub nowszy) Wprowadzenie W systemie
Bardziej szczegółowoInformatyka II. Laboratorium Aplikacja okienkowa
Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.
Bardziej szczegółowo9 Zakup [ Zakup ] 56. 9. Zakup
9 Zakup [ Zakup ] 56 9. Zakup Moduł zakupu działa na podobnych zasadach, które opisywaliśmy w poprzednim rozdziale: Sprzedaż. Dla uproszczenia zastosowano niemal ten sam interfejs, który tam widzieliśmy,
Bardziej szczegółowoPodstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
Bardziej szczegółowoInstalowanie VHOPE i plików biblioteki VHOPE
Instalowanie VHOPE i plików biblioteki VHOPE Krok 1. Zainstaluj aplikację VHOPE Przed rozpoczęciem korzystania z materiałów prezentacyjnych znajdujących się na tym dysku USB należy zainstalować na komputerze
Bardziej szczegółowoDodawanie i modyfikacja atrybutów zbioru
Dodawanie i modyfikacja atrybutów zbioru Program Moje kolekcje wyposażony został w narzędzia pozwalające na dodawanie, edycję oraz usuwanie atrybutów przypisanych do zbioru kolekcji. Dzięki takiemu rozwiązaniu
Bardziej szczegółowoCelem ćwiczenia jest zapoznanie się z podstawowymi możliwościami języka Prolog w zakresie definiowania faktów i reguł oraz wykonywania zapytań.
Paradygmaty Programowania Język Prolog Celem ćwiczenia jest zapoznanie się z podstawowymi możliwościami języka Prolog w zakresie definiowania faktów i reguł oraz wykonywania zapytań. Wstęp Prolog (od francuskiego
Bardziej szczegółowoOpis podstawowych funkcji PC- SHELLa
Opis podstawowych funkcji PC- SHELLa addfact - instrukcja addfact umożliwia utworzenie i dodanie faktu do bazy wiedzy - w sposób dynamiczny - podczas wykonywania programu z bloku control. neditbox - Instrukcja
Bardziej szczegółowoKiedy i czy konieczne?
Bazy Danych Kiedy i czy konieczne? Zastanów się: czy często wykonujesz te same czynności? czy wielokrotnie musisz tworzyć i wypełniać dokumenty do siebie podobne (faktury, oferty, raporty itp.) czy ciągle
Bardziej szczegółowoWydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 1 Programowanie 1 Program wykładu Struktura programu Instrukcja przypisania Wprowadzanie danych Wyprowadzanie wyników Instrukcja
Bardziej szczegółowoKoncepcja systemu informatycznego realizującego w środowisku Oracle Spatial proces generalizacji modelu BDOT10 do postaci BDOT50
Koncepcja systemu informatycznego realizującego w środowisku Oracle Spatial proces generalizacji modelu BDOT10 do postaci BDOT50 Architektura systemu Architektura systemu System udostępnia dwa kanały dostępu,
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Bardziej szczegółowoakademia androida Składowanie danych część VI
akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.
Bardziej szczegółowoPython wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA
Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający
Bardziej szczegółowoBlockly Kodowanie pomoc.
1 Blockly Kodowanie pomoc. Słowniczek: Zmienna posiada nazwę wywoływaną w programie oraz miejsce na przechowywanie wartości. Instrukcja warunkowa pozwala na wykonanie instrukcji w zależności od warunku
Bardziej szczegółowoKontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.
Kontrola topto Obsługa aplikacji Kontrola topto 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja. 5. Dodawanie, edycja i usuwanie przejść.
Bardziej szczegółowoPowłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.
Powłoka I Popularne implementacje W stylu sh (powłoki zdefiniowanej w POSIX) bash (najpopularniejsza) zsh ksh mksh W stylu csh csh tcsh 12 października 2018 1 / 16 Powłoka II Zachęta Komunikuje się z użytkownikiem
Bardziej szczegółowoPalety by CTI. Instrukcja
Palety by CTI Instrukcja Spis treści 1. Logowanie... 3 2. Okno główne programu... 4 3. Konfiguracja... 5 4. Zmiana Lokalizacji... 6 5. Nowa Paleta z dokumentu MMP... 8 6. Realizacja Zlecenia ZW... 10 7.
Bardziej szczegółowoWprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Bardziej szczegółowoLiczby losowe i pętla while w języku Python
Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak
Bardziej szczegółowoUONET+ moduł Dziennik. Rejestrowanie frekwencji uczniów na lekcjach w widoku Lekcja
UONET+ moduł Dziennik Rejestrowanie frekwencji uczniów na lekcjach w widoku Lekcja W module Dziennik widok Lekcja przeznaczony jest przede wszystkim do wprowadzania zapisów związanych z bieżącą lekcją
Bardziej szczegółowoSystemy ekspertowe i sztuczna inteligencja. dr Agnieszka Nowak Brzezioska
Systemy ekspertowe i sztuczna inteligencja dr Agnieszka Nowak Brzezioska Email: agnieszka.nowak@us.edu.pl Architektura SE Pojęcia z dziedziny systemów ekspertowych Inżynieria wiedzy - dziedzina sztucznej
Bardziej szczegółowoInstalacja
Wprowadzenie Scilab pojawił się w Internecie po raz pierwszy, jako program darmowy, w roku 1994 Od 1990 roku pracowało nad nim 5 naukowców z instytutu INRIA (Francuski Narodowy Instytut Badań w Dziedzinie
Bardziej szczegółowoInstrukcja użytkowania
Instrukcja użytkowania Aby skutecznie pracować z programem Agrinavia Map należy zrozumieć zasadę interfejsu aplikacji. Poniżej można odszukać zasady działania Agrinavia Map. Szczegółowe informacje na temat
Bardziej szczegółowoPrzekształcenie danych przestrzennych w interaktywne mapy dostępne na stronach www (WARSZTATY, poziom zaawansowany)
Wrocławski Instytut Zastosowań Informacji Przestrzennej i Sztucznej Inteligencji Przekształcenie danych przestrzennych w interaktywne mapy dostępne na stronach www (WARSZTATY, poziom zaawansowany) Szkolenia
Bardziej szczegółowo1.Wstęp. 2.Generowanie systemu w EDK
1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).
Bardziej szczegółowoAdministracja sieciowymi systemami operacyjnymi III Klasa - Linux
Administracja sieciowymi systemami operacyjnymi III Klasa - Linux SKRYPTY POWŁOKI mgr inż. Tomasz Borowiec SKRYPTY POWŁOKI - PODSTAWY W Linuksie skrypt jest plikiem tekstowym zawierającym polecenia systemowe
Bardziej szczegółowoInstrukcja wprowadzania graficznych harmonogramów pracy w SZOI Wg stanu na 21.06.2010 r.
Instrukcja wprowadzania graficznych harmonogramów pracy w SZOI Wg stanu na 21.06.2010 r. W systemie SZOI została wprowadzona nowa funkcjonalność umożliwiająca tworzenie graficznych harmonogramów pracy.
Bardziej szczegółowoSzanowni Państwo. Należy przy tym pamiętać, że zmiana stawek VAT obejmie dwie czynności:
Szanowni Państwo Zapowiedź podniesienia stawek VAT stała się faktem. Zgodnie z ustawą o podatku od towarów i usług z dniem 1 stycznia 2011 roku zostaną wprowadzone nowe stawki VAT. Obowiązujące aktualnie
Bardziej szczegółowoSztuczna Inteligencja Projekt
Sztuczna Inteligencja Projekt Temat: Algorytm LEM2 Liczba osób realizujących projekt: 2 1. Zaimplementować algorytm LEM 2. 2. Zaimplementować klasyfikator Classif ier. 3. Za pomocą algorytmu LEM 2 wygenerować
Bardziej szczegółowotutaj Poniższe makro nie zadziała dla pakietu Open lub Libre Office! O co chodzi?
Niedawno opublikowaliśmy trochę materiałów na temat pracy z Wordem, dziś mamy kolejne dodatkowe ułatwienie dla konkursowiczów i nie tylko. Niewiele osób zdaje sobie sprawę z tego, że dzisiejsze pakiety
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Bardziej szczegółowoSkrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:
Skrypty powłoki Skrypty są zwykłymi plikami tekstowymi, w których są zapisane polecenia zrozumiałe dla powłoki. Zadaniem powłoki jest przetłumaczenie ich na polecenia systemu. Aby przygotować skrypt, należy:
Bardziej szczegółowoProgramowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Bardziej szczegółowo