Zadanie rozruchowe

Post date: Feb 25, 2015 3:50:39 PM

Pierwsze zadanie dotyczy systemu regułowego CLIPS.

Termin oddania: 11.03.2014 18.03.2015

Treść: http://sequoia.iiar.pwr.wroc.pl/~witold/ai/CLIPS_zadanie.html

Dodatkowy tutorial CLIPSA: http://www.csie.ntu.edu.tw/~sylee/courses/clips/toc.htm

Ściągawka składni CLIPSA: http://www.csie.ntu.edu.tw/~sylee/courses/clips/clpsum.htm

Aby skorzystać z CLIPSa na komputerach pracownianych można użyć załączonego zipa (nie wymaga instalacji).

Krótki opis CLIPSA:

CLIPS jest językiem programowania regułowego. Oznacza to, że rozwiązywany problem definiowany jest przez:

    1. Zbiór faktów (baza wiedzy) zawierający krotki opisujące znane zależności. Baza jest inicjalizowana przy starcie programu i zmieniana przez reguły.

    2. Zbiór reguł produkcyjnych. Reguły, których zależności są spełnione, są uruchamiane i mogą modyfikować bazę wiedzy przez dodawanie bądź usuwanie faktów.

W każdym momencie wykonywania programu może być wiele reguł nadających się do uruchomienia. Są one umieszczane na liście zwanej agendą (CLIPS używa algorytmu RETE do szybkiej aktualizaji agendy). W trakcie wykonania system w pętli wybiera jedną z reguł w agendzie, uruchamia ją, wykonuje aktualizację bazy wiedzy i agendy.

Bardzo istotnym aspektem programowania regułowego jest taka konstrukcja reguł, aby nie wymuszały one okreslonej kolejności odpalania, np. przez tworzenie wyników tymczasowych. Poprawnie napisane reguły powinny raczej zawierać kompletny, indywidualny element wiedzy eksperta.