conference_footprint

compute the CO2 footprint of an academic conference
git clone https://a3nm.net/git/conference_footprint/
Log | Files | Refs | LICENSE

README.md (7733B)


      1 # Compute the CO2e footprint of an academic conference
      2 
      3 This repository contains scripts to compute the CO2e footprint of trips made for
      4 an academic conference.
      5 
      6 It was used to compute the footprint of the [Highlights'22
      7 conference](https://highlights-conference.org/2022/).
      8 
      9 ## Data collection
     10 
     11 We collected information about the travel plans of participants using a [web
     12 form](https://framaforms.org/highlights-participant-travel-information-1664806487)
     13 ([archive](https://web.archive.org/web/20221003161159/https://framaforms.org/highlights-participant-travel-information-1664806487)).
     14 To ensure that everyone filled the form, the link to payment was only given once
     15 the form was completed.
     16 
     17 The transportation modes proposed on the form were: train, plane, bus/coach,
     18 local transportation (for local participants), and other. Car travel was not
     19 supported, but could be added for further years.
     20 
     21 We manually removed duplicate records and fake data.
     22 
     23 For people who did not fill in the details of their travel, we:
     24 
     25 - assumed that they were coming to/from the institution of their first
     26   affiliation
     27 - when the transportation mechanism was unspecified, we assumed that trips of
     28   <=400km were done by rail and trips of >400km were done by plane, following:
     29   https://github.com/ConferenceCarbonTracker/CarbonFootprintAGU#44-mode-of-transport
     30 
     31 Afterwards, we discarded the name and institution of participants.
     32 
     33 We manually translated the free-form city and country to a
     34 machine-understandable location by searching by hand for the closest
     35 three-letter code (airport or metropolitan area). This step could be automated.
     36 
     37 The result is a CSV file in the following format:
     38 
     39 - Field 1: 3-letter airport or metropolitan area code of origin (first leg, before the conference)
     40 - Field 2: Transportation means of the first leg: "train", "plane", or "bus/coach".
     41 - Field 3: 3-letter code of destination (second leg, after the conference)
     42 - Field 4: Transportation means of the second leg
     43 - Additional fields, e.g., fields indicating if the participant is extending
     44     their stay for scientific reasons other than the conference. These files are
     45     ignored.
     46 
     47 ## Running the computation
     48 
     49 You need python3, standard shell utilities, and `GeodSolve` from Debian package
     50 `geographiclib-tools`.
     51 
     52 Run `./run.sh FILE CODE LAT LON NOISE` where:
     53 
     54 - FILE is the CSV file above
     55 - CODE is the 3-letter code used for local participants (their trips will be
     56     ignored, as well as any trips with mode "local")
     57 - LAT and LON are the geographical coordinates where the conference is taking
     58     place.
     59 - NOISE is the percentage of random error added to the distance (e.g., 0.2 for
     60     20%). Specifically, for x the true value, the anonymization will return some
     61     value chosen uniformly at random between (1-NOISE) x and (1+NOISE) x
     62 
     63 The script will generate:
     64 
     65 - map.geojson: a Geojson file displaying the various points of travel with color
     66     describing whether they are by plane or not. This can be plotted, e.g., with
     67     [uMap](http://umap.openstreetmap.fr/fr/).
     68 - `trips_anonymized.csv`, a list of trips with headers and with the following fields:
     69       - Field 1: mode of trip (as above)
     70       - Field 2: distance of trip, with random error added
     71 - `trips_with_footprint`, a comma-separated list of trips with the following
     72     fields:
     73       - Field 1: name (note that commas are dropped from names)
     74       - Field 2: institution (ditto)
     75       - Field 3: distance of trip in meters
     76       - Field 4: mode of trip (inferred if missing)
     77       - Field 5: CO2e footprint of trip in kilograms
     78 - It will also output some aggregate values on the standard error output, and prepare temporary files `trips`
     79     and `trips_with_dist`
     80 
     81 ## Footprint computation methodology
     82 
     83 ### Local participants
     84 
     85 We ignore local participants, for which we estimate a CO2 footprint of 0.
     86 
     87 ### Geocoding and distance computation
     88 
     89  We used the OpenFlights
     90 database airport-extended.dat on [this page](https://openflights.org/data.html) to convert these
     91 to geographical coordinates, and used known geographic coordinates for the
     92 conference venue. We used GeodSolve to compute the distance of each trip.
     93 
     94 ### Carbon footprint
     95 
     96 We compute the CO2 fotprint following the
     97 [labos1point5](https://labos1point5.org/ges-1point5) data, which is adapted from
     98 the French agency [Ademe](https://www.ademe.fr/).
     99 
    100 - For train, we count **37 gCO2e/pkm** (international train). This is pessimistic in France, very
    101   pessimistic for TGV, but similar to the 41 gCO2e/pm for national (UK) rail
    102   given by [Our World in
    103   Data](https://ourworldindata.org/travel-carbon-footprint).
    104 - Plane is counted following
    105     [labos1point5](https://labos1point5.org/ges-1point5), including the effect
    106     of contrails:
    107   - 258 gCO2e/pkm for less than 1000km
    108   - 187 gCO2e/pkm between 1001km and 3500km
    109   - 152 gCO2e/pkm above 3500km. This value is consistent to the 150 gCO2e/pkm
    110       value for long-haul flight given by [Our World in
    111       Data](https://ourworldindata.org/travel-carbon-footprint) (also including
    112       contrails)
    113 - For bus/coach, we count 28 gCO2e/pkm as the coach value given by [Our World in
    114     Data](https://ourworldindata.org/travel-carbon-footprint) as there is no
    115     value in labos1point5.
    116 
    117 We then sum the total emissions to arrive at the final value.
    118 
    119 ## Highlights'22 methodology
    120 
    121 ### Data collection
    122 
    123 The [Highlights registration
    124 form](https://framaforms.org/highlights2022-on-site-registration-1652701135) 
    125 ([archive](https://web.archive.org/web/20220622164245/https://framaforms.org/highlights2022-on-site-registration-1652701135))
    126 asked particiants:
    127 
    128 - "To estimate the carbon footprint of this edition of Highlights, please give
    129   us some information about your travel"
    130 - "Arriving from": city and country, free text
    131 - "Arriving by": other / plane / train / bus or coach / car / local transportation (for locals)
    132 - ditto for departure
    133 - Extended stays: we asked whether:
    134   - They participated to a co-located conference
    135   - They participated to an extended stay support scheme
    136   - They were "extending their stay for scientific reasons by another way"
    137 
    138 The fields were optional, but almost everyone filled them.
    139 
    140 ### Adjusting for other scientific reasons
    141 
    142 In the original carbon footprint given at the conference, to account for
    143 participants whose stay had other scientific justifications (no matter which),
    144 we counted only the longest of the two trips. The effect is basically to halve
    145 their emissions by considering that the conference carries half the
    146 responsibility. The reason why we do this instead of dividing the total by two
    147 is to make sure that we account for one of the "long trips" required between
    148 their institution and conference venue: indeed, some participants gave details
    149 of these long trips, whereas other gave details of one long trip and one trip to
    150 a neighboring place, e.g., for an extended stay.
    151 
    152 Because of differing opinions on the method, the code presented here no longer
    153 does this computation, i.e., it forgets about extended stay information.
    154 
    155 ### Anonymized data
    156 
    157 The file `trips_anonymized.csv` in this repository describes the trips of
    158 Highlights'22 participants, computed by running the script `run.sh` above.
    159 
    160 Each line describes one individual trip (not a return trip), with the declared
    161 mode of transportation, and the distance in meters with a multiplicative noise
    162 of `1.2` (i.e., each distance `d` was replaced by a value between `0.8 d` and
    163 `1.2 d` chosen uniformly at random).
    164 
    165 The total CO2 footprint of the file `trips_anonymized.csv` accounts for 42 tons
    166 of CO2e, which (after rounding) is the same value as the [publicly released
    167 value](https://highlights-conference.org/2022/#discussion) computed on the data
    168 without noise.
    169