Note
This page is generated from inline documentation in MESSAGE/parameter_def.gms
.
Parameter definition
This file contains the definition of all parameters used in MESSAGEix.
In MESSAGEix, all parameters are understood as yearly values, not as per (multi-year) period.
This provides flexibility when changing the resolution of the model horizon (i.e., the set year
).
General parameters of the MESSAGEix implementation
Caution
Parameters written in bold are auxiliary parameters
that are either generated automatically when exporting a message_ix.Scenario
to gdx
or that are computed during the pre-processing stage in GAMS (see the footnotes for more
individual details). These are not meant to be edited through the API when editing scenarios.
Parameter name |
Index dimensions |
Explanatory comments |
---|---|---|
interestrate |
|
Economy-wide interest rate or social discount rate |
duration_time |
|
Duration of sub-annual time slices (relative to 1) [1] |
duration_period (\(|y|\)) [2] |
|
Duration of multi-year period (in number of years) [3] |
duration_period_sum |
|
Number of years between two periods [4] |
duration_time_rel |
|
Relative duration between sub-annual time slices [4] |
df_period |
|
Cumulative discount factor over period duration [4] |
df_year |
|
Discount factor of the last year in the period [4] |
Parameters of the Resources section
In MESSAGEix, the volume of resources at the start of the model horizon is defined by resource_volume
. The quantity of the
resources that are extracted per year is dependent on two parameters. The first is bound_extraction_up
, which constraints
the maximum extraction of the resources (by grade) in a year. The second is resource_remaining
, which is the maximum
extraction of the remaining resources in a certain year, as a percentage. Extraction costs for resources are represented by
resource_cost
parameter.
Parameter name |
Index dimensions |
---|---|
resource_volume |
|
resource_cost |
|
resource_remaining |
|
bound_extraction_up |
|
commodity_stock [5] |
|
historical_extraction [6] |
|
Commodity stock refers to an exogenous (initial) quantity of commodity in stock. This parameter allows (exogenous) additions to the commodity stock over the model horizon, e.g., precipitation that replenishes the water table.
Historical values of new capacity and activity can be used for parametrising the vintage structure of existing capacity and implement dynamic constraints in the first model period.
Parameters of the Demand section
Parameter name |
Index dimensions |
---|---|
demand [demand_fixed] [7] |
|
peak_load_factor [8] |
|
The parameter demand
in a MESSAGE
-scheme ixmp.Scenario
is translated
to the parameter demand_fixed
in the MESSAGEix implementation in GAMS. The variable DEMAND
is introduced
as an auxiliary reporting variable; it equals demand_fixed
in a MESSAGE-standalone run and reports
the final demand including the price response in an iterative MESSAGE-MACRO solution.
The parameters peak_load_factor
(maximum peak load factor for reliability constraint of firm capacity) and
reliability_factor
(reliability of a technology (per rating)) are based on the formulation proposed by Sullivan et al., 2013 [11].
It is used in Reliability of installed capacity.
Parameters of the Technology section
Input/output mapping, costs and engineering specifications
Parameter name |
Index dimensions |
---|---|
input [9] |
|
output [9] |
|
inv_cost [9] |
|
fix_cost [9] |
|
var_cost [9] |
|
levelized_cost [10] |
|
construction_time [11] |
|
technical_lifetime |
|
capacity_factor [9] |
|
operation_factor [9] |
|
min_utilization_factor [9] |
|
rating_bin [12] |
|
reliability_factor [8] |
|
flexibility_factor [13] |
|
renewable_capacity_factor [14] |
|
renewable_potential [14] |
|
emission_factor |
|
Fixed and variable cost parameters and technical specifications are indexed over both the year of construction (vintage) and the year of operation (actual). This allows to represent changing technology characteristics depending on the age of the plant.
The parameter levelized_cost
is computed in the GAMS pre-processing under the assumption of
full capacity utilization until the end of the technical lifetime.
As these are calculated in the preprocessing, the reported levelized_cost
in the output GDX-file exclude fuel costs.
The construction time only has an effect on the investment costs; in MESSAGEix, each unit of new-built capacity is available instantaneously at the beginning of the model period.
Maximum share of technology in commodity use per rating. The upper bound of a contribution by any technology to the constraints on system reliability (Reliability of installed capacity) and flexibility (Equation SYSTEM_FLEXIBILITY_CONSTRAINT) can depend on the share of the technology output in the total commodity use at a specific level.
Contribution of technologies towards operation flexibility constraint. It is used in Equation SYSTEM_FLEXIBILITY_CONSTRAINT.
renewable_capacity_factor
refers to the quality of renewable potential by grade and renewable_potential
refers to the size of the renewable potential per grade.
Bounds on capacity and activity
The following parameters specify upper and lower bounds on new capacity, total installed capacity, and activity. The bounds on activity are implemented as the aggregate over all vintages in a specific period (Equation ACTIVITY_BOUND_UP and Equation ACTIVITY_BOUND_LO).
Parameter name |
Index names |
---|---|
bound_new_capacity_up |
|
bound_new_capacity_lo |
|
bound_total_capacity_up |
|
bound_total_capacity_lo |
|
bound_activity_up |
|
bound_activity_lo |
|
Dynamic constraints on new capacity and activity
These parameters are used in the dynamic constraint equations to limit the growth (or decline) of activity or of new capacity in each period, relative to the preceding period.
The soft_
parameters control ‘soft’ relaxation of these dynamic constraints, using the method of Keppo and Strubegger (2010) [5].
The growth_
and soft_
parameters are expressed as relative annual change and are unitless.
Because these are annual values, are compounded in the constraint equations by duration_period
(\(|y|\)) to obtain the relative inter-period change.
Example: a value of 0.05 for growth_activity_up
sets an upper bound of \(1 + 0.05 = 105\%\) activity in one year relative to activity in the preceding year.
In a period with duration \(|y| = 5 \text{ years}\), the activity in the representative year is bounded at \((1.05)^5 = 128\%\) of the activity in the representative year of the preceding period.
Because these parameters do not have a mode
(\(m\)) dimension, they cannot be used to constraint the activity/new capacity of single modes of technologies; only the total across all modes.
Parameter name |
Index names |
---|---|
initial_new_capacity_up |
|
growth_new_capacity_up |
|
soft_new_capacity_up |
|
initial_new_capacity_lo |
|
growth_new_capacity_lo |
|
soft_new_capacity_lo |
|
initial_activity_up |
|
growth_activity_up |
|
soft_activity_up |
|
initial_activity_lo |
|
growth_activity_lo |
|
soft_activity_lo |
|
Parameters for the add-on technologies
The implementation of MESSAGEix includes the functionality to introduce “add-on technologies” that are specifically
linked to parent technologies. This feature can be used to model mitigation options (scrubber, cooling). Upper and
lower bounds of add-on technologies are defined relative to the parent: addon_up
and addon_lo
, respectively.
Note
No default addon_conversion
factor (conversion factor between add-on and parent technology activity) is set.
This is to avoid default conversion factors of 1 being set for technologies with multiple modes, of which only a
single mode should be linked to the add-on technology.
Parameter name |
Index names |
---|---|
addon_conversion |
|
addon_up |
|
addon_lo |
|
Parameters for representing storage solutions
The MESSAGEix formulation includes “storage” solutions to model sub-annual, inter-temporal storage of commodities in each period.
This feature can be used to model electricity storage (pumped hydro, batteries, compressed air energy storage, etc.), thermal energy storage,
demand side management, and in general any technology for storing commodities (gas, hydrogen, water, etc.) over sub-annual timesteps.
The user defines the chronological order of sub-annual time slices by assigning a number to them in parameter time_order
.
This order is used by storage equations to shift the stored commodity in a correct timeline, e.g., from Jan through to Dec, and not vice versa.
The last sub-annual time slice is linked to the first one to close the loop of the year. Parameter storage_initial
is to set an initial amount
for the content of storage in any desirable time slice (optionally). This initial value is a cost-free stored media that storage can discharge
in the same or following time slices. storage_self_discharge
represents the self-discharge (loss) of storage as % of the level of stored media
in each time slice. This allows to model time-related losses in storage separately, in addition to charging and discharging losses.
Parameter name |
Index names |
---|---|
storage_initial |
|
storage_self_discharge |
|
time_order |
|
Cost parameters for ‘soft’ relaxations of dynamic constraints
The implementation of MESSAGEix includes the functionality for ‘soft’ relaxations of dynamic constraints on new-built capacity and activity (see Keppo and Strubegger, 2010 [5]). Refer to the section Dynamic constraints on new capacity and activity. Absolute cost and levelized cost multipliers are used for the relaxation of upper and lower bounds.
Parameter name |
Index names |
---|---|
abs_cost_new_capacity_soft_up |
|
abs_cost_new_capacity_soft_lo |
|
level_cost_new_capacity_soft_up |
|
level_cost_new_capacity_soft_lo |
|
abs_cost_activity_soft_up |
|
abs_cost_activity_soft_lo |
|
level_cost_activity_soft_up |
|
level_cost_activity_soft_lo |
|
Historical capacity and activity values
To model the transition of an energy system, the initial energy system with its energy mix needs to be defined first. The historical activity and the historical new capacity do this. These parameters have to be defined in order to limit the capacity in the first model period.
Historical data on new capacity and activity levels are therefore included in MESSAGEix for correct accounting of the vintage portfolio and a seamless implementation of dynamic constraints from historical years to model periods.
Parameter name |
Index names |
---|---|
historical_new_capacity [6] |
|
historical_activity [6] |
|
The activity in the historic period can be defined with
and the historical new capacity with
Both equations are equally valid for model periods. However, to calculate historical_new_capacity
and historical_activity
all parameters must describe the historic period.
The duration_period
of the first period (historic period) is set to the value that appears
most frequently in the model. If, for example, the majority of periods in the model
consists of 10 years, the duration_period
of the first period is likewise 10 years.
Auxiliary investment cost parameters and multipliers
Auxiliary investment cost parameters include the remaining technical lifetime at the end of model horizon (beyond_horizon_lifetime
) in addition to the
different scaling factors and multipliers as listed below. These factors account for remaining capacity (remaining_capacity
) or construction time of new capacity (construction_time_factor
),
the value of investment at the end of model horizon (end_of_horizon_factor
) or the discount factor of remaining lifetime beyond model horizon (beyond_horizon_factor
).
Parameter name |
Index names |
---|---|
construction_time_factor |
|
remaining_capacity |
|
end_of_horizon_factor |
|
beyond_horizon_lifetime |
|
beyond_horizon_factor |
|
Parameters of the Emission section
The implementation of MESSAGEix includes a flexible and versatile accounting of emissions across different categories and species, with the option to define upper bounds and taxes on various (aggregates of) emissions and pollutants, (sets of) technologies, and (sets of) years.
Parameter name |
Index dimensions |
---|---|
historical_emission [6] |
|
emission_scaling [15] |
|
bound_emission |
|
tax_emission |
|
The parameter emission_scaling
is the scaling factor to harmonize bounds or taxes across types of
emissions. It allows to efficiently aggregate different emissions/pollutants and set bounds or taxes on various categories.
Parameters of the Land-Use model emulator section
The implementation of MESSAGEix includes a land-use model emulator, which draws on exogenous land-use scenarios (provided by another model) to derive supply of commodities (e.g., biomass) and emissions from agriculture and forestry. The parameters listed below refer to the assigned land scenario.
Parameter name |
Index dimensions |
---|---|
historical_land [6] |
|
land_cost |
|
land_input |
|
land_output |
|
land_use |
|
land_emission |
|
initial_land_scen_up |
|
growth_land_scen_up |
|
initial_land_scen_lo |
|
growth_land_scen_lo |
|
initial_land_up |
|
dynamic_land_up |
|
growth_land_up |
|
initial_land_lo |
|
dynamic_land_lo |
|
growth_land_lo |
|
Parameters of the Relations section
Generic linear relations are implemented in MESSAGEix. This feature is intended for development and testing only - all new features should be implemented as specific new mathematical formulations and associated sets & parameters. For the formulation of the relations, refer to Section of generic relations (linear constraints).
Parameter name |
Index dimensions |
---|---|
relation_upper |
|
relation_lower |
|
relation_cost |
|
relation_new_capacity |
|
relation_total_capacity |
|
relation_activity |
|
Fixed variable values
The following parameters allow to set variable values to a specific value. The value is usually taken from a solution of another model instance (e.g., scenarios where a shock sets in later to mimic imperfect foresight).
The fixed values do not override any upper or lower bounds that may be defined, so fixing variables to values outside of that range will yield an infeasible model.
Parameter name |
Index dimensions |
---|---|
fixed_extraction |
|
fixed_stock |
|
fixed_new_capacity |
|
fixed_capacity |
|
fixed_activity |
|
fixed_land |
|
Note that the variable \(\text{STOCK_CHG}\) is determined implicitly by the \(\text{STOCK}\) variable and therefore does not need to be explicitly fixed.
Auxiliary reporting parameters
The following parameters are used for reporting (post-processing) solved models. They assign monetary value to
the net total system costs from trading and emission taxes (total_cost
). Morevoer, they also assign a value
to the total trade of commodities (the difference between the revenues from exports and the costs of imports,
trade_cost
) and to the costs from importing (import_cost
) and the revenues from exporting (export_cost
)
in each node and year.
Parameter name |
Index dimensions |
---|---|
total_cost |
|
trade_cost |
|
import_cost |
|
export_cost |
|