Zadanie rozruchowe

Post date: Feb 25, 2014 10:17:54 AM

Uwaga! Termin oddania został przełożony na tydzień 17-21.03.2014.

Niestety będę nieobecny w tym terminie, proszę o przysłanie mi rozwiązań emailem do godziny 23:59, a o rozwiązaniach porozmawiam z Państwem podczas zajęć w tygodniu 24-28.03.2014.

Uwaga! Dołączyłem zzipowanego CLIPSa dla Windows nie wymagające uprawnień administracyjnych.

Pierwsze zadanie dotyczy systemu regułowego CLIPS.

Termin oddania: zadania w tygodniu 10-14.03.2014

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

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ł, abyu 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.