Skip to content

Commit

Permalink
Full implementation of the project.
Browse files Browse the repository at this point in the history
  • Loading branch information
claudiogreco committed Mar 5, 2016
1 parent 31dcc47 commit 8405ebc
Show file tree
Hide file tree
Showing 72 changed files with 7,684 additions and 0 deletions.
36 changes: 36 additions & 0 deletions docs/Documentazione.bbl
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
\begin{thebibliography}{aNP09}

\bibitem[aNP09]{russell2009artificial}
Russell~Stuart \and Norvig~Peter.
\newblock {\em {Artificial Intelligence: A Modern Approach}}, volume~1.
\newblock Prentice Hall, 2009.

\bibitem[Doo95]{doorenbos1995production}
Robert~B Doorenbos.
\newblock {\em Production matching for large learning systems}.
\newblock PhD thesis, University of Southern California, 1995.

\bibitem[For82]{forgy1982rete}
Charles~L Forgy.
\newblock Rete: A fast algorithm for the many pattern/many object pattern match
problem.
\newblock {\em Artificial intelligence}, 19(1):17--37, 1982.

\bibitem[Ing]{cis587}
Giorgio Ingargiola.
\newblock {CIS587}: {The} {RETE}
{Algorithm}.\\\url{http://www.cis.temple.edu/~giorgio/cis587/readings/rete.html}.

\bibitem[Jac98]{jackson1999introduction}
Peter Jackson.
\newblock {\em Introduction to {Expert Systems International Computer Science
Series}}.
\newblock Addison-Wesley Pub Co, ISBN, 1998.

\bibitem[Min90]{minton1990quantitative}
Steven Minton.
\newblock Quantitative results concerning the utility of explanation-based
learning.
\newblock {\em Artificial Intelligence}, 42(2):363--391, 1990.

\end{thebibliography}
Binary file added docs/Documentazione.pdf
Binary file not shown.
120 changes: 120 additions & 0 deletions docs/Documentazione.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
%
% TURTLE
%
% Documentazione
%

\documentclass[12pt, a4paper]{report}

\usepackage[italian]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{syntax}
\usepackage{textcomp}
\usepackage{verbatim}
\usepackage{color}
\usepackage{fancyhdr}
\usepackage{hyperref}
\usepackage[titletoc]{appendix}
\usepackage{setspace}
\usepackage{indentfirst}
\usepackage{listings}
\usepackage[italiano]{algorithm2e}

\lstdefinestyle{customlisp}{
belowcaptionskip=1\baselineskip,
breaklines=true,
frame=L,
xleftmargin=\parindent,
language=Lisp,
showstringspaces=false,
basicstyle=\footnotesize\ttfamily,
}

%\lstset{style=customlisp}

\pagestyle{fancy}
\lhead{}
\chead{}
\rhead{\small{\fancyplain{}%
{\slshape \leftmark}}}

%\singlespace % interlinea singola
\onehalfspace % interlinea 1.5
%\doublespace % interlinea doppia

\title{
Università degli Studi di Bari Aldo Moro
\\A.A. 2012-2013
\\~
\\Ingegneria della Conoscenza e Sistemi Esperti
\\---------
\\\textbf{TURTLE}
\\Una expert system shell ispirata a CLIPS
}
%\\Documentazione parziale \textbf{pre-release}
%\footnote{Documentazione parziale soggetta a continui cambiamenti poiché realizzata durante lo sviluppo del sistema.}


\author{
\href{mailto:[email protected]}{Claudio Greco}\\
\#545060
\and
\href{mailto:[email protected]}{Daniele Negro}\\
\#528038
\and
\href{mailto:[email protected]}{Marco Di Pietro}\\
\#477442
}

\makeindex


\begin{document}
% copertina
\maketitle

\begin{abstract}
La presente documentazione descrive TURTLE, un tool per lo sviluppo di sistemi basati su conoscenza, come progetto d'esame per il corso di Ingegneria della Conoscenza e Sistemi Esperti. Questo documento illustra le caratteristiche del sistema, gli aspetti implementativi, nonché le scelte progettuali adottate al fine di ottenere un software a scopo didattico che realizzi un compromesso tra codice sorgente scalabile e riduzione della complessità legata al modello computazionale basato su regole di produzione, oltre che al linguaggio interpretato Python. Quest'ultimo obiettivo è anche la motivazione per cui il sistema prende il nome di TURTLE: un modo per scongiurare ogni preoccupazione legata alle performance in termini di velocità. Essendo la gestione di un sistema a produzioni un problema non banale, l'intento è stato quello di rendere meno degradanti possibile le prestazioni.
\end{abstract}

\tableofcontents

% corpo
\input{contents/chapter1.tex}
\input{contents/chapter2.tex}
\input{contents/chapter3.tex}
\input{contents/chapter4.tex}

% appendici
\begin{appendices}
\chapter{Grammatica del linguaggio}
\input{contents/grammatica.tex}

\chapter{Funzioni e Predicati}
\input{contents/funzioni.tex}
\input{contents/predicati.tex}

\chapter{Esempi}
\input{contents/esempi.tex}

\chapter{Note di installazione}
\input{contents/note.tex}

\end{appendices}

% bibliografia
\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Bibliografia}
\nocite{*}
\bibliographystyle{alpha}
\bibliography{contents/bibliografia}

\begin{flushright}
\vspace{2cm}
Made with \LaTeX{}
\end{flushright}

\end{document}
17 changes: 17 additions & 0 deletions docs/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
DOC = Documentazione

Documentazione.pdf : $(DOC).tex
pdflatex $(DOC).tex
bibtex $(DOC)
pdflatex $(DOC).tex


clean :
rm -f $(DOC).aux $(DOC).idx $(DOC).ind \
$(DOC).log $(DOC).toc $(DOC).out


delete:
rm -f $(DOC).aux $(DOC).idx $(DOC).ind \
$(DOC).log $(DOC).toc $(DOC).out \
$(DOC).pdf
10 changes: 10 additions & 0 deletions docs/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Utilizzo del makefile:

1) make
Crea i file di lavoro e genera il pdf utilizzando pdflatex.

2) make clean
Ripulisce la directory eliminando tutti i file di lavoro lasciando inalterati i file .tex e .pdf

3 make delete
Come make clean ma in aggiunta rimuove anche il file .pdf
50 changes: 50 additions & 0 deletions docs/contents/bibliografia.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
@book{russell2009artificial,
title={{Artificial Intelligence: A Modern Approach}},
author={Russell Stuart \and Norvig Peter},
volume={1},
year={2009},
publisher={Prentice Hall}
}

@book{jackson1999introduction,
title={Introduction to {Expert Systems International Computer Science Series}},
author={Jackson, Peter},
year={1998},
publisher={Addison-Wesley Pub Co, ISBN}
}

@article{forgy1982rete,
title={Rete: A fast algorithm for the many pattern/many object pattern match problem},
author={Forgy, Charles L},
journal={Artificial intelligence},
volume={19},
number={1},
pages={17--37},
year={1982},
publisher={Elsevier}
}

@phdthesis{doorenbos1995production,
title={Production matching for large learning systems},
author={Doorenbos, Robert B},
year={1995},
school={University of Southern California}
}

@misc{cis587,
title={{CIS587}: {The} {RETE} {Algorithm}.\\\url{http://www.cis.temple.edu/~giorgio/cis587/readings/rete.html}},
author={Giorgio Ingargiola},
journal={http://www.cis.temple.edu/~giorgio/cis587/readings/rete.html}
}


@article{minton1990quantitative,
title={Quantitative results concerning the utility of explanation-based learning},
author={Minton, Steven},
journal={Artificial Intelligence},
volume={42},
number={2},
pages={363--391},
year={1990},
publisher={Elsevier}
}
Loading

0 comments on commit 8405ebc

Please sign in to comment.