High Level Architecture

Gabriele D'Angelo

http://gda.jpolis.com/

Simulazione distribuita

 

  1. Cosè HLA
  2. HLA = approccio pratico e generalista alla simulazione distribuita

  3. NON è rivolto a singole esigenze di simulazione ma vuole fare da base generica
  4. Cè bisogno di un collante che nasconda allimplementatore della simulazione alcuni dei problemi del lavorare in ambiente distribuito
  5. Middleware simulativo, collante per simulazioni

 

Cenni storici

 

  1. I militari hanno sempre fatto uso massiccio di simulazioni (fosse anche solo per i calcoli balistici)
  2. Tagli di bilancio (fine guerra fredda) = sempre più simulazioni ma allo stesso tempo riutilizzo delle simulazioni
  3. Esplosione di Internet = possibilità di collegare simulazioni distanti tra di loro in ununica entità
  4. Invece che creare una tecnologia proprietaria hanno avuto il buon senso di lavorare a qualcosa di aperto e ora di standard (IEEE)
  5. Sviluppo = collaborazione tra settore statale + enti di ricerca + privati

 

Descrizione tecnica (1/4)

 

  1. Le singole simulazioni ora si chiamano federati
  2. Comè intuibile un insieme di federati = una simulazione, ma non basta servono anche un software che faccia da "collante" lRTI e un insieme di regole per definire esattamente le interazioni tra le componenti (FOM)
  3. Siamo di fronte ad una simulazione per componenti dove componente = federato

 

Descrizione tecnica (2/4)

 

  1. Vediamo una federazione implementata su un singolo host
  2.  

    Descrizione tecnica (3/4)

     

  3. Invece ora il caso di una federazione distribuita su vari host allinterno di una LAN
  4. Grazie a questo middleware simulativo il fatto che si lavori su un solo host o su una LAN o al limite su Internet è diventato trasparente ai realizzatori della simulazione
  5. (e un buon motivo di disperazione per chi deve implementare lRTI)

 

Descrizione tecnica (4/4)

 

  1. Nel dettaglio linterazione tra federato e RTI avviene per mezzo di interfacce standardizzate anchesse e implementate sotto forma di particolari oggetti
  2.  

    HLA: standard IEEE 1516

     

  3. Nella realtà lo standard si occupa di
  1. Lo standard NON si occupa di implementazioni, cè la massima libertà (implementativa e algoritmica) sono definiti solo comportamenti a cui sottostare
  2.  

    Vantaggi

     

  3. Si possono "fare a pezzi" simulazioni talmente complesse da essere ingestibili
  4. Allo stesso modo si può lavorare di ricomposizione
  5. Il riutilizzo è estremamente facilitato, anche nellottica di espansione dellesistente, il nuovo rimane comunque compatibile con il vecchio
  6. Vi è un forte isolamento tra simulazione e tecnologia a supporto di essa
  7. E possibile gestire compiutamente la Proprietà Intellettuale, non cè bisogno di fornire le specifiche di implementazione di un componente ma solo di indicare le interazioni (in qualche modo le API), eventualmente può essere permesso luso da remoto, rimaniamo in suo possesso

 

Comunicazione

 

  1. Come comunicano fra di loro i federati? O attraverso oggetti oppure attraverso interazioni.
  2. I primi hanno senso per comunicazione ripetute, i secondi per eventi occasionali e da non ripetere in modo costante nel tempo.
  3. In entrambi i casi il metodo è di publishing / subscribing
  4. La presentazione delle informazioni è gerarchica

 

Servizi

 

  1. In pratica, cosa viene fornito dallRTI ai singoli federati?
  1. Molto importante il time-management
  2.  

    Time-management

     

  3. Una simulazione distribuita senza coordinamento temporale non ha molto senso, il time-management si occupa proprio di questo.
  4. Nellottica di supporto a svariati tipi di simulazione HLA permette varie gestioni:

 

Time management e federati

 

  1. A sua volta ogni federato può avere un approccio diverso con time-mangement
  1. Abbiamo quindi 4 combinazioni
  2.  

    Runtime Infrastructure (RTI)

     

  3. Esistono varie implementazioni, quelle di rilievo sono 2.
  4. Dipartimento della difesa USA: DMSO RTI
  1. Pitch: implementazione commerciale interamente realizzata in Java
  2. Ci sono alcune implementazioni "accademiche", soprattutto a scopo di studio

 

Framework adattivo GAIA

 

  1. La mia tesi: il federato è lunità minima di simulazione? Secondo la mia visione NO.
  2. Thread come unità minima: unità che può migrare tra un federato e laltro
  3. Adattività della migrazione
  4. Obiettivo? Aumentare lo speed-up della simulazione
  5. Implementazione basata su HLA, Java e Linux



Per maggiori informazioni puoi visitare: http://gda.jpolis.com/