Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Documentazione assistita di ABMs (Agent-Based Models)
Relatore Prof. Vittorio Scarano Dott. Carmine Spagnuolo Candidato Simone Romano
2
Struttura della presentazione
Panoramica modelli di simulazione basati sugli agenti - MASON ODD Protocol e MASON Doxygen Può aiutarci? Soluzione proposta: Plugin per Eclipse Caratteristiche Conclusioni Automatic ABMs documentation - Simone Romano
3
Automatic ABMs documentation - Simone Romano
Sistemi multi-agente Branca relativamente nuova dell’informatica: Primi studi: anni ‘80 Diffusione: circa metà anni ‘90 STRUTTURA Agenti (entità autonoma) Ambiente I sistemi multi-agente costituiscono un'interessante tipologia di modellazione di società, ed hanno a questo riguardo vasti campi d'applicazione, che si estendono fino alle scienze umane e sociali (economia, sociologia, etc.). Un sistema multi-agente o (sistema ad agenti multipli) è un insieme di agenti situati in un certo ambiente ed interagenti tra loro mediante una opportuna organizzazione. Un agente è cioè un'entità caratterizzata dal fatto di essere, almeno parzialmente, autonoma, sia essa un programma informatico, un essere umano, e così via. I sistemi multi-agente vengono utilizzati per simulare le interazioni esistenti tra agenti autonomi. Si cerca di determinare l'evoluzione del sistema al fine di prevederne l'organizzazione risultante. Automatic ABMs documentation - Simone Romano
4
Automatic ABMs documentation - Simone Romano
MASON “MASON is a fast discrete-event multiagent simulation library core in Java” STRUTTURA Agenti - Steppable Ambiente – SimState OBIETTIVO: Generazione assistita di documentazione di programmi MASON Automatic ABMs documentation - Simone Romano
5
Idea Procedura guidata mirata alla generazione documentazione
Richiedeva confidenza con la libreria AST e con lo stile richiesto da Doxygen per i commenti, plug-in developement
6
Come si documenta un ABMs?
ODD Protocol Purpose Entities, State variables and scales Process overview and scheduling Design concepts Initialization Input Submodels MASON Definito dall’utente Ambiente, Agenti, variabili Lista azioni eseguite in start() SimState step() Steppable Valore iniziale delle variabili Pseudo-codice delle azioni elencate in 3 Evidenziamo le relazioni tra le linee guida del protocollo ODD e le caratteristiche della libreria MASON In verde le informazioni generate in automatico In rosso quelle lasciate all’utente
7
Automatic ABMs documentation - Simone Romano
Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular programming languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl, and to some extent D. Multilinguaggio configurabile Automatic ABMs documentation - Simone Romano
8
Automatic ABMs documentation - Simone Romano
Ricreiamo ODD Parsing del codice Generazione automatica di informazioni Informazioni inserite dall’utente Generazione commenti al codice Vengono raccolte le informazioni e vengono generati commenti per popolare correttamente Ciascuna sezione della documentazione Automatic ABMs documentation - Simone Romano
9
Plug-in – caratteristiche 1
Generazione pseudocodice Fasi Process overview and scheduling, Submodels di ODD Selezione colore output Separazione tra commenti autogenerati e commenti inseriti dall’utente Definito dall’utente Generato dal plugin Generato da Doxygen
10
Plug-in – caratteristiche 2
Pulizia del codice
11
Plug-in – caratteristiche 3
Iterabilità ODD object Output type Doxygen Pdf-Rtf (iText library) Txt
12
… Flusso degli eventi Purpose Entities, state variables and scales
Process overview and scheduling Design concepts Initialization Input Submodels Doxygen Pdf Rtf txt INTRO OUTPUT Choice New ODD object … ODD serialized object
13
Screenshots - 1
14
Screenshots - 2
15
Screenshots - 3
16
Conclusioni OBIETTIVO INIZIALE PRODOTTO REALIZZATO
Documentare programmi di simulazione multi-agente scritti in Java con libreria MASON PRODOTTO REALIZZATO Supporta l’utente durante la fase di documentazione Struttura la documentazione secondo uno standard noto (ODD) supporta l’utente durante la fase di documentazione e genera output organizzato secondo uno standard noto Il prodotto produce quindi un risultato esaustivo rispetto all’obiettivo iniziale
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.