Ottantadue grammi di pepe nero
Abbiamo chiesto a un risolutore di scrivere il pranzo scolastico che inquina meno. La prima risposta era immangiabile. La seconda dice che a decidere tutto è una cosa sola: il secondo piatto.
- Metodo
- Problema della dieta con obiettivo di emissioni, in versione mista intera
- Strumenti
- Python, Gurobi, HiGHS
- Fonte dati
- CREA — Tabelle di composizione degli alimenti · Poore & Nemecek (2018), Science — emissioni per chilo di alimento (via Our World in Data) · SINU — LARN, IV revisione (fabbisogni di riferimento)
- Risultato
- 10,2× — quanto separa il pranzo più leggero da quello più pesante, a parità di nutrienti
Nel 1945 l’economista George Stigler si pose una domanda semplice: qual è la dieta più economica che tiene in vita una persona rispettando i fabbisogni nutrizionali noti? Il problema si scrive in poche righe, e risolverlo ha contribuito a fondare la programmazione lineare. C’era però un dettaglio. La risposta era immangiabile. Nella versione che ne fece Dantzig, la soluzione ottima prescriveva svariate centinaia di litri di aceto.
La matematica era giusta. Il menù era assurdo. E il motivo è che «essere buono da mangiare» non è un vincolo lineare.
Ottant’anni dopo la domanda interessante non è più il prezzo. Il cibo vale circa un quarto delle emissioni globali di gas serra, e la ristorazione pubblica — le mense scolastiche in particolare — è uno dei pochi posti dove il menù è una decisione politica e non una scelta privata. Quindi abbiamo rifatto il conto di Stigler con il carbonio al posto dei soldi.
E abbiamo preso sul serio il problema dell’aceto, perché è lì che si gioca tutto.
Stesso pranzo, stesse calorie, stessi minimi di proteine, calcio e ferro. Cambia solo il secondo piatto. Quante volte emette di più quello più pesante rispetto a quello più leggero?
Prova a dire quante volte
10,2 volte
Dai legumi (0,25 kg di CO₂) all'agnello (2,57 kg). E il formaggio sta più in alto della carne di maiale.
01La sfida
La domanda è: quanti grammi di ciascun alimento mettere in un pranzo scolastico, per emettere il meno possibile rispettando tutti i fabbisogni.
I fabbisogni sono quelli veri. Le linee di indirizzo nazionali per la ristorazione scolastica assegnano al pranzo circa il 35 per cento dell’apporto giornaliero; i valori giornalieri sono i LARN per un bambino di riferimento di otto anni: 1.795 kcal, 29,5 kg di peso, proteine 0,99 g per chilo, calcio 1.100 mg, ferro 13 mg, zinco 8 mg, magnesio 150 mg, potassio 3 grammi. Il sodio è un tetto, tutto il resto sono pavimenti. I grassi devono stare fra il 20 e il 35 per cento dell’energia, i carboidrati sopra il 45.
Scritto così è un problema lineare puro, e si risolve in un istante.
02Gli ingredienti
- Le tabelle di composizione degli alimenti del CREA, il riferimento italiano: 832 alimenti, ognuno con il pannello completo di macro e micronutrienti per 100 grammi di parte edibile.
- Le emissioni per chilo dallo studio di Poore e Nemecek pubblicato su Science nel 2018 — una meta-analisi su circa 38.700 aziende agricole in 119 paesi — nella versione di Our World in Data: 42 categorie, dalla frutta agli agrumi a 0,39 kg di CO₂ per chilo fino ai 99,5 della carne bovina da allevamento da carne.
- Un incrocio fra i due che non esiste e che ci siamo fatti noi. Nessuno pubblica una corrispondenza fra 832 alimenti italiani e 42 categorie globali, quindi l’abbiamo costruita per categoria e parola chiave, e l’abbiamo pubblicata riga per riga: è la parte del lavoro su cui si può — e si deve — discutere.
Tre scelte, dette subito. La carne bovina è valutata come bovino da latte (circa 33 kg di CO₂ per chilo) e non da carne (99,5), perché la maggior parte del manzo italiano è un sottoprodotto del settore lattiero: è la lettura prudente, e dimezza il risultato finale. Gli alimenti sono presi crudi, perché è a quelli che si riferiscono i fattori di emissione. E una casella vuota nel CREA vale zero: il CREA lascia il campo vuoto sia quando il nutriente è assente sia quando non è stato determinato — lo zinco manca per 531 alimenti su 832 — e leggerla come zero garantisce che il modello non soddisfi mai un fabbisogno con un contributo che la fonte non documenta.
03Il verdetto, primo tentativo
Il risolutore ha risposto in un decimo di secondo, ed ecco il pranzo che propone: 82 grammi di pepe nero, 46 di anacardi, 14 di mele disidratate e due grammi di mandorle. Emissioni: 0,071 chili di CO₂. Tutti i fabbisogni rispettati.
Il motivo è che il pepe nero contiene 430 mg di calcio e 11,2 mg di ferro per cento grammi. È una miniera di micronutrienti, e a un risolutore a cui si concedono 250 grammi di «verdura» non pare vero.
Ottant’anni dopo Stigler, con dati diversi e un obiettivo diverso, il problema della dieta cade esattamente nella stessa buca. Non è un bug: è la natura del problema.
04Il verdetto, secondo tentativo
Quello che trasforma una soluzione in un menù è la struttura, e la struttura richiede variabili binarie. Al modello abbiamo aggiunto il pranzo italiano vero: un primo di cereali da almeno 60 grammi, un secondo proteico da almeno 60, un contorno di verdura da almeno 100, frutta da almeno 100, e dai 5 ai 15 grammi di condimento. Al massimo otto ingredienti in tutto, con un tetto per porzione. Le spezie hanno un gruppo a parte e un tetto di tre grammi — ed è questo che, alla fine, uccide il pepe.
Il pranzo che ne esce è plausibile: orzo perlato, piselli, tarassaco e carote, un’arancia, un cucchiaino di olio. 0,25 chili di CO₂.
E adesso la domanda che conta: cosa succede se si tiene ferma tutta la struttura e si cambia soltanto il secondo?
A decidere è il secondo piatto
Stesso pranzo, stesse calorie, stessi minimi di nutrienti: cambia solo la portata proteica, il resto si riottimizza intorno
Vedi i dati in tabella (kg di CO₂)
| Emissioni del pranzo | |
|---|---|
| Legumi | 0,25 |
| Uova | 0,47 |
| Carne bianca | 0,78 |
| Maiale | 0,93 |
| Pesce d'allevamento | 0,99 |
| Formaggio | 1,61 |
| Manzo | 2,18 |
| Agnello | 2,57 |
Il formaggio sta più in alto del maiale, del pollo e del pesce: servono 60 grammi pieni di un prodotto che pesa circa 24 kg di CO₂ al chilo.
Otto modelli misti interi risolti all'ottimo su dati CREA e Poore-Nemecek
Fra il pranzo ai legumi e quello all’agnello ci sono dieci volte. Fra pasti che, per costruzione, sono nutrizionalmente equivalenti: stessa energia, stesse proteine, stesso calcio, stesso ferro.
Questo vuol dire che il secondo piatto non è una leva fra le tante. È praticamente tutta la decisione.
E c’è una sorpresa. Il formaggio si piazza sopra il maiale, il pollo e il pesce, a 6,4 volte il pranzo ai legumi. Non è dove lo mette l’intuizione. Il motivo è aritmetico: una porzione di formaggio sono 60 grammi pieni di un prodotto che pesa circa 24 chili di CO₂ al chilo, mentre una porzione di pollo sono 100 grammi a 9,9.
Quanto pesa un anno di mense
Un anno scolastico è circa 40 settimane. Ecco cosa cambia sostituire un solo pranzo alla settimana, per un bambino solo.
per un bambino solo
Tutti gli scenari in tabella
| Sostituzione settimanale | Risparmio in un anno | |
|---|---|---|
| Uova al posto dei legumi | −9 kg di CO₂ | in negativo: le uova pesano di più |
| Pollo → legumi | 21 kg di CO₂ | |
| Pesce → legumi | 30 kg di CO₂ | |
| Manzo → legumi | 77 kg di CO₂ | per un bambino solo |
| Agnello → legumi | 93 kg di CO₂ | il caso estremo |
Differenze fra gli scenari, moltiplicate per 40 settimane
Settantasette chili di CO₂ all’anno per un bambino solo, cambiando un pranzo su cinque. Una città che serve trentamila pasti al giorno lavora tre ordini di grandezza più in alto.
Il modello, per chi vuole la matematica
Sia xi ≥ 0 i grammi dell’alimento i, ei le sue emissioni per chilo, nki il nutriente k per 100 grammi e Tk l’obiettivo del pranzo.
min Σi (xi/1000) ei
0,95 Tkcal ≤ Σi (xi/100) nkcal,i ≤ 1,05 Tkcal
Σi (xi/100) nki ≥ Tk (proteine, calcio, ferro, zinco, magnesio, potassio, fibra)
Σi (xi/100) nNa,i ≤ TNa
Questo è il programma lineare, ed è quello del pepe nero. La versione realistica aggiunge le binarie yi con xi ≤ Cg(i) yi, dove C è il tetto di porzione del gruppo, il vincolo di cardinalità Σ yi ≤ 8, e i cinque minimi di portata.
Vale la pena notare perché servono le binarie. Il tetto di porzione da solo si scriverebbe linearmente (xi ≤ C), ma non basta: senza il limite sul numero di ingredienti il risolutore sparpaglia due grammi qua e tre là su cinquanta alimenti diversi, che è un altro modo di essere immangiabile. È il conteggio degli ingredienti a richiedere l’intero, ed è lui a costare: si passa da 0,071 a 0,25 chili di CO₂. Il realismo è caro tre volte e mezzo.
Un’ultima onestà sulle etichette. Dentro un gruppo il risolutore sceglie sempre il membro più leggero, quindi «carne rossa» diventa maiale, non manzo: per questo manzo e agnello hanno una riga tutta loro. Le righe di gruppo vanno lette come casi migliori, non come casi tipici.
05Dove il gioco finisce
L’incrocio fra CREA e Poore-Nemecek è una scelta di modello, non un dato. Una corrispondenza diversa sposta i numeri, e la tabella che abbiamo pubblicato va trattata come la cosa su cui litigare, non come il risultato.
I fattori di emissione sono mediane globali. Una lenticchia italiana, un formaggio di malga e uno industriale finiscono nella stessa casella, e la dispersione interna a una categoria, nello studio originale, è spesso più grande della distanza fra due righe vicine del nostro grafico.
Il modello ottimizza un pranzo, non un ciclo di menù: non dice niente sulla varietà nella settimana né sulle ripetizioni nel mese, che sono esattamente i vincoli su cui è costruito un piano di ristorazione vero. La commestibilità resta approssimata da tetti di porzione e struttura delle portate, ed è un’approssimazione grezza: l’ottimo continua ad allungare la mano verso stranezze nutrizionalmente dense come il tarassaco, e un dietista boccerebbe parecchi dei menù che scrive.
Restano fuori la cottura, l’energia della cucina, il trasporto fino a scuola e — soprattutto — lo scarto nel piatto, che nelle mense è enorme e non è neutro fra i menù: un piatto di legumi che i bambini rifiutano ha un’impronta reale peggiore di una fettina che finiscono. Quello, un modello lineare non lo sa. È la ragione per cui il numero da portarsi a casa non è «0,25 chili» ma il rapporto: dieci a uno, e sta tutto in un piatto.