Dinamica dei Sistemi

Sino ad oggi la maggior parte della teoria e della pratica manageriale si è occupata principalmente delle componenti. Contabilità, produzione, marketing, finanza, relazioni umane e valutazioni economiche sono state pensate e messe in pratica come se fossero argomenti separati. Solo nelle posizioni manageriali più elevate esiste la necessità di integrare queste funzioni separate.”

“I nostri sistemi industriali stanno diventando così estesi e complessi che la conoscenza delle singole parti non è più sufficiente. Sia per quanto concerne gli aspetti gestionali che per quelli tecnici ed ingegneristici, dobbiamo aspettarci che le interconnessioni e le interazioni tra i componenti del sistema diventino più importanti dei componenti medesimi”.

J. W. Forrester

J. W. Forrester
J.W. Forrester

Lo strumento quantitativo ideato da Forrester per modellare i problemi delle organizzazioni è eccezionale per la sua semplicità: variabili di flusso (derivate o valori di periodo), e variabili di livello (integrali o valori cumulati). La metafora idraulica (vedi figura) è tra le migliori per comprendere la Dinamica dei sistemi (S.D., System Dynamics). In un progetto, ad esempio, le ore spese periodo per periodo, cioè l’istogramma di carico, sono rappresentate dalla portata del rubinetto (il flusso) che può variare da un periodo all’altro. L’avanzamento fisico progressivo (o cumulato), cioè la curva ad “S”, è rappresentato dal livello del recipiente che, dopo un certo tempo (la durata del progetto), grazie al flusso periodico delle ore lavorate, raggiunge il 100% (recipiente colmo e progetto completato).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nei modelli dinamici di Forrester hanno un ruolo centrale i circuiti di feed-back positivo (crescita esponenziale) e i circuiti di feed-back negativo (tendenza, con oscillazioni o meno, all’obiettivo desiderato). I flussi e i livelli di Forrester possono essere utili per modellare problematiche di imprese che lavorano per progetti, imprese che lavorano su produzioni di serie, imprese di servizi, ecc.. I flussi e i livelli possono essere fisici (Es. pezzi prodotti e stoccati, ore lavorate) o economici (Es. voci del conto economico e stato patrimoniale) ed il legame tra essi è garantito anche da variabili ausiliarie di tipo informativo.
Avremo dunque le variabili di flusso che influenzano i livelli (tratto continuo) e le variabili di livello che influenzano i flussi attraverso interazioni informative (tratteggiate). In figura il segno “+” rappresenta un circuito di retroazione (feed-back) positivo, mentre il segno (-) un circuito di retroazione negativa. Con le nuvolette si rappresentano variabili di livello esterne al sistema in studio, che non vengono quindi prese in considerazione.
Le prime applicazioni furono aziendali e si svolsero in USA alla General Electric nella prima metà degli anni 50. I lavori fondativi della simulazione dinamica scritti da Forrester sono: Industrial Dynamics (1961), Principles of Systems (1968), Urban Dynamics (1969), World Dynamics (1971).
Per il suo accento sulla interazione delle parti, la metodologia da lui proposta, consente di sviluppare quantitativamente modelli di ogni genere (economici, aziendali, biologici, ambientali, demografici) che permettono di simulare, in modo integrato tra le varie componenti, i possibili percorsi evolutivi fornendo elementi preziosi per la presa di decisioni.
Una celebre applicazione dei modelli di simulazione dinamica fu quella del Club di Roma – M.I.T. (Aurelio Peccei, H. Meadows e altri, “I limiti dello Sviluppo”, Mondadori 1972) relativa ai limiti dello sviluppo a causa della finitezza del pianeta, delle materie prime ed in particolare del petrolio. Molte delle previsioni pessimistiche del Club di Roma non si avverarono e, in un libro successivo (Meadows, Randers, “Beyond the limits”, Eartscan, Londra 1992), gli autori ripresero l’analisi estendendola ulteriormente e giungendo a conclusioni leggermente più ottimistiche. Questi lavori diedero origine alle numerose ricerche sullo sviluppo sostenibile che, dopo il convegno di Rio de Janeiro, divenne centrale in tutti gli studi socio-economici, ambientali e demografici sia a livello macro che microeconomico.
Generalmente un lavoro basato sulla dinamica dei sistemi richiede la realizzazione di diversi passi che debbono essere svolti in sequenza, ma con tentativi, errori e rifacimenti:

  1. Individuazione del sistema in esame e dei sotto-sistemi componenti. In questa fase si dovrebbe anche cominciare a capire quali sono le variabili interne al sistema (endogene) e quindi oggetto di studio e quelle ad esso esterne, esogene;
  2. Individuazione delle variabili (Livelli, Flussi, Ausiliarie) e dei parametri pertinenti al problema. Questo lavoro può essere facilitato da tecniche di Brain Storming o dei questionari (ad esempio il metodo Delphi);
  3. Individuazione delle interazioni tra le variabili che può essere facilitato dall’uso di grafi causa-effetto o di matrici Cross Impact anaysis;
  4. Individuazione quantitativa dei legami tra le variabili e i parametri: determinazione del sistema di equazioni ricorsive. Si noti che questo sistema non deve contenere anelli chiusi riferiti allo stesso periodo di tempo, cioè non è consentito un sotto-sistema di equazioni simultanee. Le analisi statistiche di Correlazione e Regressione sui dati storici possono essere molto utili in questa fase per determinare natura e parametri delle equazioni;
  5. Trasferimento delle equazioni su computer. Può essere sufficiente, come fatto in questo articolo, un semplice foglio elettronico:
  6. Messa a punto del modello effettuata con varie prove. In questa fase, se sono disponibili serie storiche, è molto utile vedere se il modello riesce a ricostruire in modo accettabile la storia passata del sistema;
  7. Esecuzione del modello computerizzato per i periodi di tempo desiderati e per vari valori dei parametri;
  8. Valutazione dei risultati ottenuti. Decisioni e strategie da seguire.

Caso di Studio

Nei primi anni 70 l’istituto per l’informatica e i sistemi (isis) di Roma propose un caso di studio per introdurre anche in Italia le tecniche di Simulazione Dinamica dei Sistemi. Si trattava di un piccolo modello (circa 15 variabili e 5 parametri) che rappresentava l’evoluzione (popolazione, occupazione, salari) di una piccola comunità collocata in un ambito regionale più ampio. La modellazione seguiva le impostazioni originali di Forrester (Equazioni di Livello, di Flusso e Ausiliarie). Il linguaggio di programmazione utilizzato era lo SSD (Simulazione Sistemi Dinamici) della IBM una variante del Dynamo (DYNAmic MOdels) originariamente proposto dal gruppo di Forrester. Nel 1975 lo scrivente ebbe l’occasione di riscrivere il modello con il linguaggio della P652 Olivetti, erede della celebre P101 considerata il primo calcolatore da tavolo. Questa classe di computer non era dotata di video, memorizzava dati e programmi su una scheda magnetica e si programmava con un linguaggio di 2° generazione. I linguaggi di seconda generazione (tipo Assembler) erano superiori e più pratici del linguaggio macchina (sequenza di zeri e uni), ma inferiori a quelli di 3° generazione (Fortran, Basic, Cobol, ecc.). Infatti essi, a differenza di quelli di 3° non realizzavano l’indipendenza logica e fisica dei dati: ciò implicava che il programmatore dovesse gestire i singoli registri in cui smistare i dati e le operazioni di calcolo. A distanza di quasi 45 anni lo scrivente ripropone, in questo articolo, lo stesso modello implementato su un foglio di lavoro Excel. Con soddisfazione, e qualche stupore durante la traduzione delle equazioni in formule, i risultati della P652 sono identici a quelli della tabella elettronica, almeno sino alla ottava cifra decimale. L’aspetto interessante della questione è che il metodo proposto da Forrester oltre ad essere matematicamente semplice, richiede poco più della conoscenza delle 4 operazioni e un minimo di logica, può essere codificato con qualunque metodo di programmazione (linguaggio di programmazione, foglio elettronico, software dedicato. Per quest’ultimo vedi, ad esempio il divertente caso proposto da Stefania Migliavacca e citato nei Riferimenti).
Il Caso qui presentato si riferisce ad un piccolo comune che all’anno 0 ha una popolazione di 1000 anime, di cui 360 occupati e con vita media di 65 anni. Si suppone che la durata media della vita aumenti di 1 anno ogni 10 anni. Nel primo anno della simulazione sono nate 40 persone, ne sono morte 15 e il saldo migratorio risulta negativo (-10). Cioè gli emigrati superano di 10 unità gli immigrati. La disoccupazione è al 10%, il doppio di quella della regione circostante e i salari medi del comune sono pari al 90% di quelli della regione circostante.

Elenco delle variabili e dei parametri

Variabili di Livello:

L11 Livello della popolazione,
L12 Livello della occupazione,
S11 Integrale del rapporto salario regionale/salario esterno.

Variabili di Flusso:

F11 Flusso di natalità,
F13 Flusso di mortalità
F12 Flusso migratorio (saldo immigrati – emigrati),
F14 Flusso della occupazione.

Variabili Ausiliarie:

A11 1/(tasso di mortalità). Durata media della vita,
A12 Tasso migratorio,
A13 Differenza rapporto disoccupazione tra comune e regione,
A15 Totale forza lavoro,
A16 Tasso di incremento dell’occupazione,
A17 Rapporto tra salario medio nel comune e nella regione.

Parametri:

TN Tasso di natalità,
DN Rapporto di disoccupazione nazionale,
PPA Percentuale forza lavoro sulla popolazione,
RS Numero di anni su cui si integra,
T Tempo (anni),
DT Passo della simulazione.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Il Sottosistema popolazione è caratterizzato da il livello dei presenti nel comune (L11)
che è alimentato dal numero dei nati F11 e dal saldo migratorio F12 (circuiti di retroazione positiva) e svuotato dal numero dei morti F13 (retroazione negativa).
Il Sottosistema occupazione verte sul livello L12 che è alimentato (feed-back positivo) dal flusso degli occupati F14 e dal tasso di incremento della occupazione A16. Il livello della occupazione L12 influenza poi, attraverso le variabili ausiliarie: A14, A13 e A12 e tenendo conto della disoccupazione nazionale DN, il saldo migratorio F12.
Infine il Sottosistema Salari è governato da il rapporto tra salari regionali/nazionali (A17, S11). Questo rapporto è influenzato da A13 (disoccupazione nel comune – regione) e a sua volta influenza A16, cioè il tasso di incremento della occupazione.

Elenco delle equazioni ricorsive

Secondo la notazione originale del linguaggio Dynamo si indica con “j” l’istante precedente, con “k” l’istante attuale e con “l” l’istante successivo. Dunque le variabili di Livello e saranno riferite ad un preciso istante: Lj, Lk, Ll. Le variabili di Flusso ad un periodo di tempo: Fjk, Fkl e quelle Ausiliarie all’istante attuale: Ak.

Variabili di Livello:

L11k = L11j + DT * (F11jk + F12jk – F13jk); (L110 = 1000)
L12k = L12j + DT * F14jk; (L120 = 360)
S11k = S11j + DT /RS * (A17j –S11j) (S110 = 0.920)

Variabili di Flusso:

F11kl = L11k * TN
F12kl = L11k*A12k
F13kl = L11k/A11k
F14kl = L12k*A16k

Variabili Ausiliarie:

A11k = 65 + 0.1*T(k)
A12k = -0.2*A13k
A13k = A14k – DN
A14k = (A15k – L12k) / A15k
A15k = L11k * PPA

A16k = -0.2*S11k + 0.22 (se S11 <= 1)
A16k = -0.15*S11k + 0.17 (se S11 > 1)

A17k=-A13 + 1 (se A13 <=0)
A17k = -2* A13 + 1 (se A13 > 0)

Parametri:

TN = 0.04 (0.02 nella seconda simulazione).
DN = 0.05
PPA = 0.4
RS = 10
Tk = Tj + DT
DT = 1

Le simulazioni effettuate partono dall’anno 0 e si estendono per 50 anni. Nel seguito sono riportati i grafici delle variabili principali, mentre nel foglio Excel si possono trovare in forma tabellare i valori numerici di tutte le variabili (Livelli, Flussi e Ausiliarie) elencati anno per anno e raggruppate per i tre sottosistemi: popolazione, occupazione e salari.

Prima Simulazione: Tasso di natalità della comunità (TN) 4%

Il Livello della popolazione (L11) passa da 1000 unità a 3302 nel 50° anno,
il Numero degli occupati (L12) passa da 360 a 1242 unità nel 50° anno:

 

 

 

 

 

 

 

 

 

La Natalità (F11) passa da 40 unità/anno a 132 nel 50° anno,
La Mortalità (F13) passa da 15 unità/anno a 47 nel 50° anno,
IL Flusso occupazione (F14) passa da 13 unità/anno a 29 nel 50° anno,
IL Saldo Migratorio (F12) passa da -10 unità/anno a -6 nel 50° anno. Si osservi che tra il 4° e 15° anno il saldo migratorio è positivo:

 

 

 

 

 

 

 

 

 

Il Rapporto disoccupati/forza lavoro (A14) passa dal 10% al 5% nel 50° anno con un minimo del 2.9% allo 8° anno,
Il Rapporto salariale (A17) tra comune e regione passa dal 90% al 98% al 50° anno con un massimo del 102% allo 8° anno:

 

 

 

 

 

 

 

 

 

Seconda Simulazione: Tasso di natalità della comunità (TN) 2%

Il Livello della popolazione (L11) passa da 1000 unità a 2101 nel 50° anno,
il Numero degli occupati (L12) passa da 360 a 833 unità nel 50° anno:

 

 

 

 

 

 

 

 

 

La Natalità (F11) passa da 20 unità/anno a 42 nel 50° anno,
La Mortalità (F13) passa da 15 unità/anno a 30 nel 50° anno,
IL Flusso occupazione (F14) passa da 13 unità/anno a 12 nel 50° anno,
IL Saldo Migratorio (F12) passa da -10 unità/anno a +17 nel 50° anno, con un picco positivo di 20 unità/anno tra il 7 e lo 11° anno.

 

 

 

 

 

 

 

 

 

 

Il Rapporto disoccupati/forza lavoro (A14) passa dal 10% a meno dello 1% nel 50° anno con un minimo del – 4% allo 8° anno,
Il Rapporto salariale (A17) tra comune e regione passa dal 90% al 104% al 50° anno con un massimo del 109% allo 8° anno:

 

 

 

 

 

 

 

 

 

 

La seconda simulazione (TN = 2%) mostra come una politica di educazione sessuale, diffusione dei contraccettivi, separazione tra sessualità (gioco, affettività) e riproduzione (responsabilità) può portare benefici all’intera comunità. Tra l’altro si riduce la necessità di emigrare (saldo migratorio F12 positivo invece che negativo); si ottiene un livello di disoccupazione (A14 < 1%) inferiore a quello regionale (TN=5%) e dei salari superiori a quelli regionali (A17 = 104%).

Conclusioni

Il Caso presentato è solo una esemplificazione didattica a scopo di studio, ma mostra come tematiche estremamente attuali e complesse come l’eccessiva natalità in alcune aree del mondo (Es. Africa), le differenze economiche tra paesi ricchi e poveri, le migrazioni dai paesi del Sud a quelli del Nord del mondo possano essere modellate con l’aiuto della dinamica dei sistemi.
Queste tecniche di simulazione non debbono essere viste come tecniche previsionali volte a stimare i valori futuri delle variabili, ma come sistemi di supporto alle decisioni (DSS) che, attraverso diverse ipotesi fatte sui parametri controllabili, aiutino a stabilire delle strategie che permettano, per quanto possibile, di pilotare l’evoluzione del sistema in studio.

Riferimenti

 

Commenti

commenti