Passa al contenuto principale

Impact Assessment GFM

Il Gap Filling Module Impact Assessment esegue la valutazione dell'impatto del ciclo di vita (Life Cycle Impact Assessment - LCIA) convertendo i flussi ambientali (emissioni e consumo di risorse) in punteggi di impatto standardizzati. Utilizzando i fattori di caratterizzazione IPCC, calcola gli equivalenti CO2 e altri indicatori ambientali per i prodotti alimentari durante tutto il loro ciclo di vita.

Riferimento Rapido

ProprietaDescrizione
Eseguito suTipi ActivityNode inclusi FoodProcessingActivityNode, ModeledActivityNode, SupplySheetActivityNode
DipendenzeMatrixCalculationGapFillingWorker (deve completare prima)
Input ChiaveFlussi ambientali (scambi biosfera) dal calcolo matriciale
OutputValori di valutazione impatto (equivalenti CO2), consumo acqua scarsa
TriggerViene eseguito sui nodi attivita dopo che i flussi ambientali sono calcolati

Quando Viene Eseguito

Il modulo si attiva quando:

  1. Il nodo e un ActivityNode (non un ElementaryResourceEmissionNode)
  2. Il MatrixCalculationGapFillingWorker ha completato e popolato environmental_flows
  3. Per i nodi radice, viene eseguito solo su FoodProcessingActivityNode, ModeledActivityNode o SupplySheetActivityNode

Output Chiave

Il modulo aggiunge proprieta di valutazione impatto sia ai nodi attivita che ai loro nodi di flusso genitori:

  • Valutazione Impatto: Valori equivalenti CO2 usando i metodi di caratterizzazione richiesti
  • Consumo Acqua Scarsa: Impronta di scarsita idrica in litri

Metodologia Scientifica

Panoramica della Valutazione dell'Impatto del Ciclo di Vita

La valutazione dell'impatto del ciclo di vita (Life Cycle Impact Assessment - LCIA) e la fase dell'LCA in cui l'inventario dei flussi ambientali viene tradotto in potenziali impatti ambientali. Il GFM Impact Assessment implementa questo processo:

  1. Raccogliendo i flussi ambientali dal calcolo matriciale (emissioni in aria, acqua, suolo e consumo di risorse)
  2. Applicando i fattori di caratterizzazione per convertire ogni flusso in un'unita comune (come kg CO2-eq)
  3. Aggregando i risultati attraverso tutti i flussi per produrre punteggi di impatto totali

Metodo di Caratterizzazione IPCC

Il modulo utilizza il metodo IPCC 2013 GWP100a (Potenziale di Riscaldamento Globale, orizzonte temporale 100 anni) come approccio di caratterizzazione primario:

Impatto [kg CO2-eq] = Somma di (Flusso Ambientale [kg] x Fattore di Caratterizzazione [kg CO2-eq/kg])

Fattori del Potenziale di Riscaldamento Globale

Principali fattori di caratterizzazione dal Quinto Rapporto di Valutazione IPCC (AR5):

SostanzaGWP100 (kg CO2-eq/kg)Note
Anidride carbonica (CO2)1Sostanza di riferimento
Metano (CH4)28Senza feedback clima-carbonio
Metano (CH4)34Con feedback clima-carbonio
Protossido di azoto (N2O)265
Monossido di carbonio (fossile)4,06

Il sistema utilizza i valori GWP senza feedback clima-carbonio (CCFB) seguendo le raccomandazioni di PRe Sustainability e il consenso UNEP/SETAC. Questa scelta fornisce stime piu conservative mantenendo la coerenza con i database LCA consolidati.

Fonti dei Fattori di Caratterizzazione

I fattori di caratterizzazione provengono da:

  • Quinto Rapporto di Valutazione IPCC (AR5): Fonte primaria per i valori GWP
  • Database ecoinvent: Mappato agli identificatori dei flussi elementari ecoinvent
  • Software Brightway LCA: 211 sostanze caratterizzate per l'impatto del cambiamento climatico

Categorie di Impatto Supportate

Il modulo puo calcolare molteplici categorie di impatto in base alla richiesta:

Categoria di ImpattoMetodoUnitaDescrizione
Cambiamento ClimaticoIPCC 2013 GWP100akg CO2-eqPotenziale di riscaldamento globale su 100 anni
Scarsita IdricaAWARELConsumo di acqua scarsa

Metodi di valutazione dell'impatto aggiuntivi possono essere caricati tramite il flag --import_all_impact_assessments durante l'importazione dei dati.


Dettagli di Implementazione

Formula di Calcolo

Il calcolo principale applica i fattori di caratterizzazione a tutti i flussi ambientali:

impact_assessments = {
char_method: sum([
flow_quantity * characterization_factor.get(biosphere_uid, 0.0)
for biosphere_uid, flow_quantity in environmental_flows.items()
])
for char_method in requested_impact_assessments
}

Dove:

  • flow_quantity: Quantita di ogni flusso ambientale (dal calcolo matriciale)
  • characterization_factor: Mappatura degli ID dei flussi biosfera ai fattori di impatto
  • biosphere_uid: Identificatore univoco per ogni flusso elementare (emissioni, risorse)

Allocazione dei Flussi ai Nodi Genitori

I risultati di impatto sono allocati ai nodi di flusso genitori in modo proporzionale:

# Per ogni nodo di flusso genitore
value = impact_quantity * flow_amount / production_amount

Questo garantisce che quando una ricetta utilizza molteplici nodi attivita, il contributo di ogni ingrediente sia correttamente attribuito.

Gestione dell'Acqua Scarsa

Il consumo di acqua scarsa e tracciato separatamente dagli altri flussi ambientali:

  1. Il consumo idrico e identificato da un UID biosfera specifico (SCARCE_WATER_CONSUMPTION_XID)
  2. Estratto dai flussi ambientali prima del calcolo generale dell'impatto
  3. Memorizzato come ScarceWaterProp dedicato sui nodi attivita e flusso
  4. Unita: litri (L)

Ordine di Elaborazione dei Nodi

Il modulo implementa un sistema di pianificazione per garantire il corretto ordine di esecuzione:

def can_run_now(self) -> GapFillingWorkerStatusEnum:
# Attendi il completamento del calcolo matriciale
if MatrixCalculationGapFillingWorker is scheduled:
return GapFillingWorkerStatusEnum.reschedule

# Verifica se esistono flussi ambientali
if node.environmental_flows is None:
return GapFillingWorkerStatusEnum.cancel

return GapFillingWorkerStatusEnum.ready

Flusso dei Dati

Input: Flussi Ambientali

I flussi ambientali sono forniti dal MatrixCalculationGapFillingWorker e includono:

Tipo di FlussoEsempiDirezione
Emissioni in ariaCO2, CH4, N2O, CO, NOxOutput (positivo)
Emissioni in acquaAzoto, FosforoOutput (positivo)
Emissioni nel suoloMetalli pesanti, PesticidiOutput (positivo)
Consumo di risorsePetrolio grezzo, Gas naturale, AcquaInput (negativo)

Output: Proprieta di Valutazione Impatto

Il modulo crea oggetti ImpactAssessmentProp con:

ImpactAssessmentProp(
quantities={
impact_term_uid: ReferencelessQuantityProp(
value=calculated_impact,
unit_term_uid=unit_term_uid # es., "kg CO2-Eq"
)
},
for_reference=ReferenceAmountEnum.amount_for_activity_production_amount
)

Struttura della Cache

I fattori di caratterizzazione vengono caricati all'inizializzazione e memorizzati in cache per le prestazioni:

cache_characterization_factors_data = {
"ipcc-2013-gwp100a": {
"biosphere_flow_uid_1": {"amount": 1.0}, # CO2
"biosphere_flow_uid_2": {"amount": 28.0}, # CH4
# ... 211 sostanze caratterizzate in totale
}
}

cache_characterization_factors_unit = {
"ipcc-2013-gwp100a": "kg_co2-eq_term_uid"
}

Esempio di Calcolo

Scenario: Calcolare l'impatto climatico per 1 kg di pomodori

Passo 1: Flussi Ambientali dal Calcolo Matriciale

Dopo il calcolo matriciale, il nodo attivita pomodoro ha questi flussi ambientali:

Flusso BiosferaUUIDQuantita (kg)
Anidride carbonica, fossile099b36ab-...0,85
Metano, fossileb53d3744-...0,012
Protossido di azoto20185046-...0,0003

Passo 2: Applicare i Fattori di Caratterizzazione

Utilizzando i fattori IPCC 2013 GWP100a:

FlussoQuantitaFCImpatto
CO20,85 kg1,00,85 kg CO2-eq
CH40,012 kg28,00,336 kg CO2-eq
N2O0,0003 kg265,00,0795 kg CO2-eq

Passo 3: Aggregare l'Impatto

Impatto Totale = 0,85 + 0,336 + 0,0795 = 1,2655 kg CO2-eq per kg di pomodori

Passo 4: Allocare al Flusso Genitore

Se questa attivita pomodoro fornisce 0,5 kg a una ricetta:

Contributo ricetta = 1,2655 * (0,5 / 1,0) = 0,633 kg CO2-eq

Configurazione

Richiedere Metodi di Valutazione Impatto

I metodi di valutazione impatto sono specificati nella richiesta di calcolo:

requested_impact_assessments = calc_graph.get_requested_impact_assessments()
# Restituisce: ["IPCC 2013 GWP100a", ...]

Valutazione Impatto Predefinita

Se non sono configurati termini di valutazione impatto specifici:

DEFAULT_IMPACT_ASSESSMENT_METHOD = "IPCC 2013 GWP100a"
DEFAULT_IMPACT_ASSESSMENT_METHOD_XID = "ipcc-2013-gwp100a"

Caricamento di Metodi Aggiuntivi

Metodi di valutazione impatto aggiuntivi possono essere importati utilizzando:

python bw_import_controller.py --import_all_impact_assessments

Questo carica i fattori di caratterizzazione per metodi oltre al cambiamento climatico, abilitando valutazioni multi-indicatore.


Integrazione con il Calcolo Matriciale

Il GFM Impact Assessment dipende dal GFM Calcolo Matriciale, che:

  1. Costruisce la matrice tecnosfera: Rappresentando tutte le interconnessioni dei processi
  2. Costruisce la matrice biosfera: Catturando tutti gli scambi ambientali
  3. Risolve il sistema: Utilizzando l'inversione matriciale per calcolare i flussi cumulativi
  4. Popola environmental_flows: L'input per la valutazione dell'impatto

Struttura delle Matrici

Le matrici tecnosfera e biosfera seguono le convenzioni LCA standard:

Matrice Tecnosfera (A):

  • Diagonale: Quantita di produzione (tipicamente 1,0 per processi normalizzati)
  • Fuori diagonale: Flussi inter-processo (negativi per consumo)

Matrice Biosfera (B):

  • Righe: Flussi elementari (emissioni, risorse)
  • Colonne: Processi
  • Valori: Quantita di ogni flusso per unita di output del processo

Calcolo:

s = A^(-1) * f  (vettore fornitura)
g = B * s (flussi ambientali totali)
h = C * g (impatti caratterizzati)

Dove C e la matrice dei fattori di caratterizzazione applicata da questo GFM.


Limitazioni Note

Copertura delle Sostanze

  • 211 sostanze caratterizzate per il metodo IPCC GWP100a
  • Alcune emissioni (black carbon, aerosol) non completamente caratterizzate
  • NOx, SO2 e altre emissioni correlate agli aerosol potrebbero non includere effetti climatici indiretti

Considerazioni Metodologiche

  • Feedback clima-carbonio non inclusi (approccio conservativo)
  • Nessun fattore di caratterizzazione regionalizzato
  • Fattori di caratterizzazione statici (non tengono conto della tempistica delle emissioni)

Note sulla Qualita dei Dati

  • Fattori di caratterizzazione dall'IPCC AR5 (2013) - aggiornamenti ad AR6 non ancora implementati
  • Alcune mappature di unita assumono "kg CO2-Eq" per i metodi IPCC quando mancano i dati sull'unita

Riferimenti

  1. IPCC (2013). Climate Change 2013: The Physical Science Basis. Contribution of Working Group I to the Fifth Assessment Report. Capitolo 8: Anthropogenic and Natural Radiative Forcing, Tabella 8.A.1.

  2. Heijungs, R. & Suh, S. (2002). The Computational Structure of Life Cycle Assessment. Springer Netherlands.

  3. Ecoinvent Centre. Database Overview for Ecoinvent v3.8. ecoinvent.org

  4. PRe Sustainability. SimaPro Implementation Notes on IPCC AR5 Methods.

  5. Brightway LCA. brightway.dev - Framework LCA open source utilizzato per i calcoli matriciali.