Tempi recenti
If you are looking for information about the course Informatica Legislativa e Scienze Sociali Computazionali (ILSSC) please visit its google site.
Laurea specialistica
Panoramica
- Era una notte buia e tempestosa degli ultimi giorni di Aprile 2012 quando decisi di ritornare in ISISLab per lo svolgimento della tesi di Laurea Specialistica.
Questa volta mi occupo di D-MASON. Cos'è D-MASON? Una versione distribuita di MASON. Cos'è MASON? Una libreria in Java per la creazione di simulazioni multiagenti ad eventi discreti. Cosa è una libreria? Cosa è Java? Cosa è un agente? Che vuol dire ad eventi discreti?
Abstract
MASON permette di costruire simulazioni ad agenti, ed uno dei motivi per cui si crea ed esegue una simulazione è il monitoraggio di alcuni parametri. Un classico esempio è quello del formicaio: supponiamo di avere un terreno quadrato in cui c'è un formicaio, una fonte di cibo lontana dal formicaio, ed alcuni ostacoli tra il formicaio e il cibo. È risaputo che inizialmente le formiche vagano per il terreno alla ricerca del cibo. Quando una formica trova il cibo, torna verso il formicaio marcando con un speciale feromone la strada che porta dal formicaio al cibo, così che le altre formiche possano seguire lo stesso percorso. Supponiamo di aver realizzato questo tipo di simulazione (in effetti è proprio uno degli esempi resi disponibili da MASON) e di voler analizzare, a titolo di esempio:
- Qual è la distanza media percorsa dalle formiche per raggiungere il cibo?
- Qual è la quantità totale di cibo trasportato nel formicaio?
... e così via.
Ovviamente siamo interessati non solo al valore istantantaneo di queste proprietà, ma vogliamo analizzarne l'andamento nel tempo, ad ogni passo della simulazione. La versione distribuita di MASON, sviluppata in ISISLab e ribattezzata D-MASON, attualmente non prevede nessuna funzionalità del genere, ed è su questo punto che attualmente verte la mia tesi.
Global Inspector
Il Global Inspector è la componente di D-MASON che ingloba il Global Viewer di D-MASON 1.0/1.5 e ne arricchisce le funzionalità includendo la possibilità di raccogliere, aggregare, visualizzare, tracciare su grafico o salvare su disco i parametri di una simulazione distribuita. Il suo utilizzo non penalizza la velocità di esecuzione della simulazione. Al ricercatore che scrive la simulazione distribuita e vuole utilizzare questo meccanismo è richiesto semplicemente di aggiornare la classe della simulazione in modo da definire quali dati raccogliere e quali funzioni di riduzione utilizzare per aggregarli.
Global Parameters
Il meccanismo dei parametri globali permette a qualsiasi cella della simulazione distribuita di avere dati riguardanti l'intera simulazione. Il meccanismo implementato segue la stessa logica di raccolta-riduzione del Global Inspector: prima di ogni passo di simulazione i dati di ogni singola cella vengono distribuiti alle altre celle in modo che ognuna possa applicare la funzione di distruzione (indicata dal ricercatore/sviluppatore della simulazione).
Laurea di primo livello
Panoramica
Il mio lavoro di tirocinio/tesi per la Laurea di primo livello ha riguardato l'implementazione all'interno di FireFly di moduli scritti in Flex e il miglioramento delle prestazioni e della scalabilità del sistema.
Seminari
- 18/05/2007 - Adobe Flex 2, Building next-generation web experiences
- Slide con note in formato pdf/zip
- 15/02/2008 - FireFly 2: Tool grafici e scalabilità
- Slide con note in formato pdf
Lavoro di tesi
- FireFly2: Un Framework efficiente e leggero in Flex per la Cooperazione Sincrona
- Abstract
- Tesi
- Discussione della tesi (con note)
Software utilizzati
- [1] Adobe Flex 2 SDK
- [2] Eclipse + Adobe Flex 2 Plugin (trial)
- [3] FireBug, add-on per Mozilla FireFox
- [4] InkScape, disegno vettoriale open-source
- [5] JavaScript debugger, add-on per Mozilla FireFox
- [6] Kile, LaTeX editor per KDE
- [7] LiveHTTPHeader, add-on per Mozilla FireFox
[8] Umbrello UMD Modeller,
tool di modellazione UML per KDE
- [9] UMLet, tool di modellazione UML
Bibliografia
- [10] Adobe. The history of Flash.
- http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Book_Parts&file=cellrenderer_072_33.html Adobe. Working with item renderers.
- [11] Adobe. Adobe Flex 2 - Technical overview. Technical report, Adobe, 2006.
- [12] Jeremy Allaire. Macromedia Flash MX - A next-generation rich client. Technical report, Macromedia, March 2002.
- [13] Jeff Atwood. JavaScript: The Lingua Franca of the Web, May 2007.
- [14] Bogdan Brinzarea. AJAX whiteboard, 2006.
- http://www.augitaly.com/flexgala/index.php?cmd=newsreader&id=12 Marco Casario. Flex 2 SDK o Data Service?, September 2006.
- [15] Computer Literacy. Macromedia Flash version release history.
- [16] Douglas Crockford. Introduzione a JSON.
- Rosario de Chiara, Antonio Emilio di Matteo, Ilaria Manno, and Vittorio Scarano. CoFFEE: Cooperative Face2Face Educational Environment. In Third International Conference on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom2007), 2007.
- Rosario de Chiara and Marco Volpe. FireFly: Lightweight AJAX System for F2F-CL. In E. Tomadaki and P. Scott, editors, Innovative Approaches for Learning and Knowledge Sharing, EC-TEL 2006 Workshops Proceedings, pages 59-66, March 2006.
- [17] ECMA. ECMAScript for XML (E4X) Specification, 2 edition, December 2005.
- David Flanagan. JavaScript: The Definitive Guide. O'Reilly, August 2006.
- [18] Jesse James Garret. AJAX: A new approach to web applications, February 2005.
- Susan C. Herring. Interactional Coherence in CMC. In Proocedings of the Thirty-Second Annual Hawaii International Conference on System Sciences, volume 2, June 1999.
- Birgit R. Krogstie. The Potential of Instant Messaging for Informal Collaboration in Large-Scale Software Development. In Supporting the Social Side of Large Scale Software Development - CSCW workshop, 2006.
- [19] Jim Ley. Don't serve JSON as text/html, July 2006.
- [20] Chris Loosley. Rich Internet Applications: Design, Measurement and Management Challenges. Technical report, Keynote Systems, 2006.
- Kevin Lynch. La piattaforma Flash: Distribuire esperienze efficaci all'interno di browser, sistemi operativi e dispositivi. Technical report, Adobe, June 2005.
- David Mosberger and Tai Jin. httperf: A tool for measauring web server performance. Performance evaluation review, 26(3):31-37, December 1998.
- Robert Slagter, Margit Biemans, and Henri tere Hofte. Evolution in Use of Groupware: Facilitating Tailoring to the Extreme. In Proceedings of the Seventh International Workshop on Groupware (CRIWG), 2001.
- Robert Slagter, Henri ter Hofte, and Oliber Stiemerling. Component-Based Groupware: An Introduction. In Proceedings of Component Based Groupware Workshop of CSCW2000, 2000.
- Marc Smith, JJ Cadiz, and Byron Burkhalter. Conversation trees and threaded chats. In Proceedings of the 2000 ACM conference on Computer supported cooperative work (CSCW '00), pages 97-105, New York, NY, USA, 2000. ACM Press.
- Marco Volpe. FireFly: Un FrameWork leggero e modulare in Ajax per la cooperazione sincrona. Master's thesis, Università degli Studi di Salerno, 2006.
- [21] Rick Waldron. The Flash history, July 2002.
- [22] Wikipedia. Rich Internet Applications.
- [23] Wikipedia. SuperPaint.
Link utili
- [24] Impara LaTeX (... e mettilo da parte), introduzione all'uso di LaTeX
Ipse dixit
- «La tesi è come la lasagna: più ci metti e più ci trovi» ~ Rosario De Chiara
- «Il superenalotto è una tassa sulla stupidità» ~ Rosario De Chiara
Contatti
- E-mail: lvicidomini at unisa dot it