General Actions:
Log-in
Home
Courses
Events
Journals
People
Products
Projects
Publications
Talks
Theses
it
Page Actions:
Export
▼
:
Export as PDF
More actions
▼
:
Print preview
View Source
APICe
»
Courses
»
Class
»
LMC0910
»
LMC0910 Projects Page
Wiki source code of
LMC0910 Projects Page
Hide line numbers
1: 1 Progetti 2: 3: 1.1 Note: 4: 5: Si ricordano i principali aspetti relativi ai progetti da svolgere per l'esame: 6: 7: * Il progetto è comunque facoltativo, e può essere rimpiazzato da una prova orale sul programma del corso (la cui preparazione richiede tuttavia un tempo analogo, e può essere svolta in un qualunque periodo dell'anno, concordato col docente con 2-3 settimane di anticipo) 8: * Il progetto è scelto dallo studente in accordo col docente, può essere eseguito da un gruppo di 1, 2 o 3 persone (dipendentemente dall'impegno richiesto), e deve comportare un impegno temporale di circa 80-90 ore a testa (ogni studente è tenuto a tenere traccia delle ore impiegate per svolgere il progetto) 9: * Una volta assegnato il progetto, questo deve essere terminato nel giro di 30-40 giorni circa (ossia deve essere eseguito almeno a half-time). Eventuali proroghe dovranno essere contrattate col docente. 10: * Qui sotto si elencano proposte del docente per i progetti. Si rammenta che altre possibilità possono essere relative a progetti suggeriti da altri docenti, o possono anche venire dagli studenti stessi. Nel caso in cui un progetto sia a carattere pratico piuttosto che scientifico (ossia sia relativo allo sviluppo di un software), si ricorda che sarà necessario portare tale software a completamento, in modo che sia ad esempio pubblicabile su SourceForge. 11: * Per qualunque delucidazione o maggiori informazioni non si esiti a chiedere. 12: * Questa lista verrà estesa via via durante lo svolgimento del corso, o durante l'anno accademico. 13: 14: 1.1 Consegna del Progetto: 15: 16: * Il progetto si consegna dopo aver svolto con esito positivo il compito. La consegna è in anticipo (solitamente per e-mail) al docente, che dopo aver fatto alcune verifiche di completezza/adeguatezza fissa una data per l'esame di comune accordo (solitamente nel giro di 1-2 settimane) 17: * La documentazione del progetto deve essere correlata (ove possibile dipendentemente dalla tipologia di progetto) di: relazione in formato PDF completa di bibliografia, software prodotto (incapsulato in un JAR o JNLP per facilitarne il deployment), documento di installazione/uso README.txt, codice sorgente, manuale d'uso, documentazione javadoc della libreria 18: * Per l'esame ci si deve preparare una presentazione di 15 minuti a cui seguirà una discussione (è possibile ma non necessario prepararsi delle slides). Si noti che nel caso di gruppi l'esame è svolto singolarmente, e ogni studente sarà responsabile della parte del progetto da lui stesso dichiarata (anche eventualmente/parzialmente sovrapposta a quella degli altri studenti) 19: 20: 1.1 Proposte di Progetto 21: 22: Questa lista è fortemente dinamica. Progetti vengono tolti quando assegnati, e aggiunti quando concepiti. Al momento attuale mancano ovviamente indicazioni su progetti relativi alla parte finale del corso. 23: 24: * *2p-ide - Assigned to DiGiacomo*: Consolidate current tuprolog IDE, and develop new features related to debugging and checking the correctness of a theory 25: * *2p-p@j - Assigned to Zoffoli*: Design a suitable inclusion of P@J into tuProlog release, possibly also re-designing current alice.tuprolog APIs 26: * *2p-libs*: (this is actually a project template) porting existing libraries of other Prologs (SWI, GNU, SICSTUS) into tuProlog; generally, even libraries for Java couldbe used 27: * *semantics-lib - (no longer assigned, it is available!)*: a notable example of lib for tuprolog is based on encapsulating a reasoner for description logic (many exist in the Web), to be used by Prolog, possibly in the form of a semantic unification mechanism 28: * *advanced-dcg*: creating a new DCG library, with advanced features such as EBNF support, AST flexible generation, LOOKAHEAD, tokenization 29: * *pj-tokens*: develop a Java-Prolog solution for fast and flexible tokenization in Prolog, parhaps using JavaCC of Jlex 30: * *2p-dcgxml - Assigned to Bruschi*: in the spirit of DCGs, develop a library for parsing XML documents that works using a grammar-based approach, featuring automatic Tree generation, and possibly re-assessing an XML document after modifications 31: * *2p-metacut*: Design a Prolog metainterpreter that also supports the cut predicate 32: * *imp-opsem - Assigned to Gramellini and Magnani*: using the operational semantics meta-interpreter, develop and implement an interpreter for a complete imperative language 33: * *fj-opsem*: using the operational semantics meta-interpreter, develop and implement an interpreter for featherweight java 34: * *javac-dcg - Assigned to Dusi, Amaducci and Garattoni*: building a declarative parser for Java Compiler, using Prolog 35: * *speed-2p*: profile the performance of tuProlog engine, and evaluate improvements 36: * *2p-maude*: Prolog and Maude can interact with each other, e.g. by sockets; this project should develop flexible libraries for both sides of the integration 37: * *fast-match*: Study and possibly develop faster matching mechanisms for Prolog, considering e.g. the red-black tree implementation of Maude 38: * *petri-maude*: Build in Maude an engine and property checker for some advanced Petri net model (e.g. colored Nets) 39: * *rt-maude*: Analyse the RealTime Maude system, and experiment on its use to model and check Stochastic Petri Nets 40: * *pmaude - Assigned to Grandi*: Analyse the Probabilistic Maude system (PMaude), and experiment on its use to model and check Stochastic Petri Nets 41: * *meta-maude*: Maude is a reflective language, in that it can be used to parse and meta-execute other Maude specifications: this can be used to define slight extensions of Maude language for various purposes. This project analyse this feature and creates toy examples. 42: * *biosim - Assigned to Moretti*: Consolidate an existing simulator for biochemical networks using a Prolog interpreter for chemical laws and a C++ engine implementing Gillespie algorithm 43: * *alg-net*: Realise in Prolog algorithms for the creation and growth of topological networks, to be used for simulation of morphogenesis processes 44: * *art-chem*: Using a chemical simulator, and starting from the Oregonator chemical system, design patterns of artificial chemical systems with usefulness for various problems in computer science 45: * *prism-stopetri - Assigned to Domeniconi and Fabbri* : Build a Java/Prolog tool for specifying stochastic Petri Nets, and for verification/simulation through translation in PRISM. 46: * *prism-net - Assigned to Maggiulli and Vichi* : Define an extension of PRISM in which a network of modules can be defined, with goal of modelling and simulating self-organisation of spatial systems: this is to be supported by a translation to standard PRISM. 47: * *prism-dynanet* : Use PRISM to simulate and verify properties of dynamic topological networks. 48: 49: Note: some projects based on Sara Montagna's and Matteo Casadei's work will be added before Christmas vacations
Courses
Home
Search
All
New
Views
2020/2021
2019/2020
2018/2019
2017/2018
2016/2017
2015/2016
2014/2015
2013/2014
2012/2013
2011/2012
2010/2011
2009/2010
2008/2009
Before 2008
Per A.Y.
Pages
Giovanni Ciatto
Angelo Croatti
Andrea Omicini
Alessandro Ricci
Andrea Roli
Mirko Viroli