Logické programovanie ASP
Skúška
Zatiaľ neúplný výber zo slajdov asp-quick.pdf. Chýbajú vlastnosti SM (asp04.pdf).Prednáška
Streda 11:30, M-XII
Slajdy k prednáškam (miestami sa trochu líšia oproti tomu čo bolo na prednáškach, hlavne plánovanie):
- asp00.pdf asp01.pdf Úvod, modely v logike, herbrandovské modely.
- asp02.pdf Stabilné modely, logické programovanie, definitný a normálny LP.
- asp03.pdf Rozšírenia: explicitná negácia(rozšírené LP), def. neg. v hlave (zovšeobecnené LP), obmedzenia.
- asp04.pdf Vlastnosti LP: existencia stab. modelu, minimalita, podopretosť.
- asp05.pdf Preklady logických programov.
- asp06.pdf asp07.pdf Plánovanie (prednáška išla podľa [Bar] kap.5).
- asp08.pdf Diagnóza.
[Bar] Baral: Knowledge Representation, Reasoning and Declarative Problem Solving
Cvičenia
Utorok 18:10 H-3
- DLV http://www.dbai.tuwien.ac.at/proj/dlv/
- Priame linky na binárky z ich stránky: Ideálne si to uložte ako dlv resp dlv.exe.
- SMODELS http://www.tcs.hut.fi/Software/smodels/
Nejaké skompilované binárky sú: smodels, lparse, sm, mktaoms. sm je skript ktorý spustí lparse a presmeruje výstup rovno do smodels (viac info na 1. cvičení). - Clasp, gringo, clingo (potascoo project), http://potassco.sourceforge.net/
-
V linuxe (v škole) je najlepšie ak si všetky binárky uložíte niekam na sieťový disk
(adresár
net
vo vašom dom. adresári, čiže napr do~/net/asp
), nastavíte im execute práva a nastavíte si cestu (PATH) do toho adresára, aby stačilo napísať len meno programu:mkdir -p ~/net/asp cd ~/net/asp # dlv wget http://www.dbai.tuwien.ac.at/proj/dlv/dlv.i386-linux-elf-static.bin -O dlv # smodels for url in http://dai.fmph.uniba.sk/~siska/asp/files/{smodels,lparse,sm,mkatoms} ; do \ wget "$url" ; \ done # clingo wget "http://downloads.sourceforge.net/project/potassco/clingo/3.0.5/clingo-3.0.5-x86-linux.tar.gz?use_mirror=garr" \ -O- | tar xz --strip-components=1 clingo-3.0.5-x86-linux/clingo chmod a+x * export PATH="$HOME/net/asp:$PATH"
Na ďalších cvikách Vám už stačí len ten posledný príkaz na nastavenie cesty.
Cvičenia:
Cvičenie 1Cvičenie 2*
Cvičenie 3
Cvičenie 4
Cvičenie 5*
Cvičenie 6
Cvičenie 7*
Cvičenie 8
Cvičenie 9*
Cvičenie 10*
Cvičenie 11
Hodnotenie
- ústna skúška
- projekt
- riešenia povinných cvičení
Projekty
Podmienkou na skúšku je odovzdanie projektu (dostatočne vopred). Projekt by mala byť nejaká úloha vyriešená v ASP, zložitejšia ako tie čo sa robili na cvičeniach. Zároveň by to ale nemala byť veľmi známa úloha, ktorej ASP riešenia je možné nájst na internete :).
Dobré témy sú buď rôzne plánovacie alebo logické úlohy. Nejake príklady sa dajú nájsť napríklad na wikipédii: http://en.wikipedia.org/wiki/Category:Logic_puzzles. Dá sa tiež inšpirovať na stránke http://www.cs.uni-potsdam.de/~torsten/asp/, v sekcii Applications sú referencie na aplikácie ASP v rôznych oblastiach (treba si samozrejme vybrať/vymyslieť niečo správnej zložitosti.