Progetto e sviluppo di un modulo per la persistenza di clausole logiche: esperimenti in tuProlog-Kotlin
| |
|
|
@mastersthesis{crivellari2pktdbstorage2020,
abstract = {Nello stesso momento in cui le tecniche subsimboliche stanno prendendo il sopravvento nel campo dell'Intelligenza Artificiale, le tecniche simboliche stanno ottenendo grande attenzione per rispondere ad alcune criticit\`{a} evidenziate dalle prime, come possibilit\`{a} di essere comprensibili e facilmente spiegabili. Tuttavia, nel tempo, le tecniche simboliche -- e, le tecnologie legate alla programmazione logica in particolare -- hanno mostrato alcuni limiti, che un campo attivo nell'ambito della ricerca sta cercando di superare. Tra questi limiti si evidenza solitamente la possibilit\`{a} di gestire un numero limitato di dati — quelli che possono essere mantenuti senza problemi in memoria. La tesi si muove in questo contesto con lo scopo di studiare la fattibilit\`{a} e progettare un sistema di archiviazione della conoscenza di un motore Prolog che consenta la gestione di un numero elevato di dati. tuProlog \`{e} un motore Prolog ideato per l'Intelligenza Artificiale che lavora con teorie logiche mantenute in memoria, e verr\`{a} utilizzato per la realizzazione del caso di studio. Si vuole ampliare l'applicazione con la possibilit\`{a} di salvare le teorie Prolog in un database NoSQL per permettere di operare con teorie molto grandi che non stanno in memoria. L'interazione con il database deve essere resa trasparente all'utente, il quale non deve accedere direttamente al database n\'{e} deve conoscere il linguaggio in cui si formulano le query. Nel dettaglio la tesi si articoler\`{a} come segue: i) studio e analisi dei database NoSQL a grafo e basati su documenti (rispettivamente nelle implementazioni Neo4j e MongoDB) confrontando le loro peculiarit\`{a}; ii) selezione della tecnologia ritenuta migliore; iii) progettazione di una soluzione efficiente ed efficace per i motori Prolog; iv) implementazione e collaudo in tuProlog.},
author = {Crivellari, Ilaria},
cosupervisor = {Denti, Enrico and Ciatto, Giovanni},
cycle = {L},
description = {Studiare la fattibilit\`{a} e progettare un sistema di archiviazione della conoscenza di un motore Prolog che consenta la gestione di un numero elevato di dati non salvati in memoria in modo trasparente all'utente.},
keywords = {tuProlog, database NoSQL, Neo4j, indicizzazione clausole logiche},
language = {it},
month = jul,
start = {2020-02-08},
supervisor = {Calegari, Roberta},
title = {Progetto e sviluppo di un modulo per la persistenza di clausole logiche: esperimenti in tuProlog-Kotlin},
type = {Bachelor's thesis},
year = 2020
}
abstract = {Nello stesso momento in cui le tecniche subsimboliche stanno prendendo il sopravvento nel campo dell'Intelligenza Artificiale, le tecniche simboliche stanno ottenendo grande attenzione per rispondere ad alcune criticit\`{a} evidenziate dalle prime, come possibilit\`{a} di essere comprensibili e facilmente spiegabili. Tuttavia, nel tempo, le tecniche simboliche -- e, le tecnologie legate alla programmazione logica in particolare -- hanno mostrato alcuni limiti, che un campo attivo nell'ambito della ricerca sta cercando di superare. Tra questi limiti si evidenza solitamente la possibilit\`{a} di gestire un numero limitato di dati — quelli che possono essere mantenuti senza problemi in memoria. La tesi si muove in questo contesto con lo scopo di studiare la fattibilit\`{a} e progettare un sistema di archiviazione della conoscenza di un motore Prolog che consenta la gestione di un numero elevato di dati. tuProlog \`{e} un motore Prolog ideato per l'Intelligenza Artificiale che lavora con teorie logiche mantenute in memoria, e verr\`{a} utilizzato per la realizzazione del caso di studio. Si vuole ampliare l'applicazione con la possibilit\`{a} di salvare le teorie Prolog in un database NoSQL per permettere di operare con teorie molto grandi che non stanno in memoria. L'interazione con il database deve essere resa trasparente all'utente, il quale non deve accedere direttamente al database n\'{e} deve conoscere il linguaggio in cui si formulano le query. Nel dettaglio la tesi si articoler\`{a} come segue: i) studio e analisi dei database NoSQL a grafo e basati su documenti (rispettivamente nelle implementazioni Neo4j e MongoDB) confrontando le loro peculiarit\`{a}; ii) selezione della tecnologia ritenuta migliore; iii) progettazione di una soluzione efficiente ed efficace per i motori Prolog; iv) implementazione e collaudo in tuProlog.},
author = {Crivellari, Ilaria},
cosupervisor = {Denti, Enrico and Ciatto, Giovanni},
cycle = {L},
description = {Studiare la fattibilit\`{a} e progettare un sistema di archiviazione della conoscenza di un motore Prolog che consenta la gestione di un numero elevato di dati non salvati in memoria in modo trasparente all'utente.},
keywords = {tuProlog, database NoSQL, Neo4j, indicizzazione clausole logiche},
language = {it},
month = jul,
start = {2020-02-08},
supervisor = {Calegari, Roberta},
title = {Progetto e sviluppo di un modulo per la persistenza di clausole logiche: esperimenti in tuProlog-Kotlin},
type = {Bachelor's thesis},
year = 2020
}