PLEXOS 7.5 Release Notes

  1. Upgrade Compatibility
  2. Changes
    1. Solver Updates
  3. Performance
  4. Features
    1. LDC Slicing Group Options
    2. Optimized Conditional Constraints
    3. Sub-minute Modelling
    4. Age-based Degradation
    5. Algebraic Diagnostic Writer
    6. Generator Transition
    7. Gas Transport
    8. Custom Warnings / Errors
    9. Rounded Relaxation Commitment Model
  5. New Attributes
  6. New Input Properties
  7. New Reporting Properties
Released
22nd September 2017
Previous Version
7.4
Next Version
8.0

1. Upgrade Compatibility

This version will automatically upgrade any previous Version 5-7 database. You may need to check the upgrade notes of earlier releases for any compatibility issues.

If you experience any problems during upgrade contact Energy Exemplar Support.

If your simulations run differently or slower in this version, also seek support and we will assist with the upgrade process.

Databases in 7.5 format will retro-grade to any previous Version 7.x however please check upgrade compatibility notes for all previous versions. In addition, the databases from PLEXOS Enterprise, currently a Beta version, can be downgraded to the 7.5 format.

2. Changes

The following are the changes to existing functionality between this version and 7.4:

  • The user interface component has been upgraded to use .NET 4.6.1., whereas the engine component continues to use.NET 4.5.
  • The LP file constraints and variables will now be re-ordered compared to 7.4. Note: If you do wish to re-order them for comparison, then the undocumented generic writer can be used (with its sort functionality).
  • The variable generation code has been modified, which directly impacts the random number draws. Therefore, it will be highly likely that your sampled variable values will be different in this version.
  • The outage generation code has also had some modifications. This directly impacts the random number draws, which will ultimately result in different outage patterns being drawn.
  • If you use the "Connect" functionality, within the UI, then you will need to upgrade your PLEXOS Connect version to 3.0.
  • Certain objects, like batteries and all water related objects, are internally processed and generated from existing objects. In earlier versions these objects would internally have a prefix appended to them, for example "Battery A" would be named "Bat_Battery A". This meant that you had to explicitly include this prefix in any data files which uses the object names. This was actually a general work-around for this issue. In this version, the data file is now expecting the real name, rather than expecting the prefix to be present.
  • If the "repair time distribution" is not defined on an object, then no outages are modelled and an appropriate warning is issued. In previous versions no warning was issued.
  • The Data file Holiday property was not using the Yes/No values and simply included it as a holiday if defined. The Yes/No flags are now read as expected, so to produce the same data file build results please ensure all Holidays are set to "Yes".
  • When a conditional variable is used for a Constraint Variables Value Coefficient the value returned is a Boolean value (zero or minus one). In the previous versions the boolean value returned would be a zero or a positive one. Therefore, the user will need to update their Value Coefficient settings to produce the same result. In addition to this, the previous versions also incorrectly scaled the Value Coefficient by the number of hours in the interval.

2.1. Solver Updates

The following solvers were updated as part of this update release.

Solver Version Release Notes
ILOG CPLEX 12.7.1https://www.ibm.com/support/knowledgecenter/SSSA5P_12.7.1/ilog.odms.studio.help/Optimization_Studio/topics/COS_relnotes_intro.html
MOSEK 8.0.0.91http://docs.mosek.com/8.0/releasenotes/index.html
FICO Xpress 31.1.2.0 -

3. Performance

Several optimizations have been made to the simulation engine and user interface codes, which will improve performance, especially in simulations that have a large number of steps/objects.

The following changes and/or new features specifically address performance of the simulation:

  • Templates - the template processing time is a component of the "Compiled File" time. This has been significantly improved, especially for larger models.
  • Outage creation and step bridging - some slowness in these area were detected and improvements have been made on both aspects.
  • General simulation speed improvements - this covers input data parsing and solution calculations.
  • Formulation improvements - more variables/constraints are dropped when they are not required. These would normally be presolved out of the formulation, but of course it's more efficient to omit them.
  • Data file reading - speed improvements for file reading. Re-organized and file cache structure allowing for much faster accessing of the file data from the Model.
  • Variable Sampling - the sampling time for models with large horizons can be quite time consuming, especially if many variables are defined.
  • Summary output solution data - refactoring and speed improvements were made, particularly improving the overall runtime for multi-sample models.

User interface speed improvements include:

  • Improved export functionality for the "heat map" charts.
  • Optimized solution querying, when viewing multiple series.

4. Features

4.1. LDC Slicing Group Options

This feature allows the user to define custom slicing groups, which can be used to prevent "unlike" intervals being mixed, i.e. mutually exclusive period groups can be defined (e.g. day/night or summer/winter). These groups are then used during the LDC creation/slicing, where X number of blocks are reserved to represent group A and Y blocks for group B. A LDC is built for each period group and the slicing is done on these duration curves, using the newly allocated block counts. Finally the intervals/periods are mapped accordingly, making sure that intervals from the various groups are not combined in a single simulation period. Please note that this is only applicable to non-chronological phases.

This feature can be enabled using the "GlobalLDCPattern" undocumented parameter. The input for this is a multi-band string value, where each string represents a timeslice, e.g.

  • Band 1: H1-6,19-24
  • Band 2: H7-18

Here we are defining one group for the hours of 1 to 6 and 19 to 24, i.e. "night time" hours. The second group has hours 7 to 18 defined, i.e. "day time" hours. Any pattern type's can be defined, for example a user may want to explicitly defined seasons, so can create four slicing groups.

4.2. Optimized Conditional Constraints

An undocumented parameter has been exposed allowing the user to specify the method for dealing with the conditional constraints. By default the conditions are evaluated iteratively, but this new option allows them to be optimized. See Constraint Condition Method in the 7.5 table.

Note that this feature can only be applied to constraints, where the condition is dynamic and it does not define certain squared terms (e.g. Generation Squared Coefficient).

4.3. Sub-minute Modelling

The Periods per Day can now be set to a value of 86,400, which equates to a simulation resolution as low as one second, allowing detailed analysis of fast response systems, e.g. Battery energy storage systems (BESS). The example below shows the results of a simulation, with a 4 second resolution.

Figure 1: Sub-second Simulation Results

4.4. Aged-based Degradation

A major feature implemented in this version is the ability to model age-based degradation of generation units. Please see the aged based degradation article for more details.

4.5. Algebraic Diagnostic Writer

The algebraic diagnostic feature forms part of the generic writer feature (please see the Generic Writer undocumented solver parameters - PLEXOS_SolverParam.xml). The parameter to enable this is named "Algebraic" and is a simple boolean value (True=On, False=Off).

\Problem name: Base \ variables: 144 integers: 0 \ constraints: 72 nonzeros: 191

A small but typical example will look like:

Example:


   Minimize
   Obj:
   + 100000 NodUSE_*{1,...,24}
   + 10 GenLoad_*{1,...,24}
   Subject To
   Energy_*{0}{1,...,24}:
   + ZonInj_*
   - Loss_*
   + NodUSE_*
   = [0.8, 1]
   ZonInjDef_*{1,...,24}:
   - ZonInj_*
   + NodUSE_*
   + GenLoad_*
   = 0
   LossDef_*{0}{1,...,24}:
   - Loss_*
   = 0
   Bounds
   ZonInj 
   0 ≤ NodUSE ≤  [0, 0.6]
   0 ≤ GenLoad ≤  1
   End
                

4.6. Generator Transition

A new "Transition" collection has been added, allowing a user to define a transition process between a generator and the target group of generators with an associated transition cost. This feature is very useful for modelling typical CCGT (Combined Cycle Gas Turbine) setup, where transition relationship between the primary generator and secondary generators can be defined with applicable costs.

4.7. Gas Transport

This latest version includes the Gas Transport class, where the user can define gas shipping contracts. The class includes a number of properties to accurately model shipping schedules, e.g. Loading Time, Discharge Time, etc. For a full list of new properties please see the property reference page.

4.8. Custom Warnings/Errors

Custom messages can now be defined in a user database, which will be processed and raised in the simulation engine. Ultimately, custom conditions can now be added which are tested at run-time, and if the condition is met then the appropriate warning/error is raised. For example a custom check/message may be applied to a specific transmission line, which would be raised when the flow exceeds a known value. This type of condition/warning could be used for checking when unexpected values are produced, which could be the result of badly defined data.

Database Settings Window - Custom Messages

4.9. Rounded Relaxation Commitment Model

The rounded relaxation algorithm has been extended to work in two distinct modes or commitment models. These are:

  • Central - this is the default method of unit commitment, using the standard heuristic approach (existing functionality).
  • Self - this option treats the unit commitment as soft constraints, applying appropriate violation penalties to allow a potential variation in generation (new feature)

5. New Attributes

New attributes are:

Class Property Description
Market Unit Commitment If Market [Buy/Sell Unit] properties act like unit commitment or apply independently every period.
LT Plan Sampling Interval For Chronology = "Sampled", take [Sample Type] samples in each of these intervals of time.
MT Schedule Sampling Interval For Chronology = "Sampled", take [Sample Type] samples in each of these intervals of time.
Production Rounded Relaxation Commitment Model Determines if the unit commitment decisions are made centrally or by self-commitment.
Production Forced Outage Relaxes Min Down Time If ramp constraints should all be formulated upfront rather than checked iteratively.
Competition Demand Scaling If Nash-Cournot result scales input loads to reflect price elasticity of demand.
Diagnostic Sample From Limit diagnostic file writing to sample numbers starting at this number.
Diagnostic Sample To Limit diagnostic file writing sample numbers ending at this number (-1 means infinity).

6. New Input Properties

New input properties are:

Collection Property Description Relates To
Generator Initial Age Average age of units at the start of the simulation horizon Initial Conditions
Generator Max Release Maximum rate of release from each units Hydro;Constraints
Battery Energy Target Battery stored energy target Constraints
Battery Energy Target Hour End of hour battery stored energy target Constraints
Battery Energy Target Day End of day battery stored energy target Constraints
Battery Energy Target Week End of week battery stored energy target Constraints
Battery Energy Target Month End of month battery stored energy target Constraints
Battery Energy Target Year End of year battery stored energy target Constraints
Battery Energy Target Penalty Penalty for violating the battery stored energy target Constraints
Battery Non-anticipativity Price for violating non-anticipativity constraints in scenario-wise decomposition mode Stochastic
Battery Non-anticipativity Time Window of time over which to enforce non-anticipativity constraints in scenario-wise decomposition Stochastic
Battery Initial Age Average age of units at the start of the simulation horizon Initial Conditions
Battery Capacity Degradation Annual degradation in capacity with age Capacity
Battery Build Non-anticipativity Price for violating non-anticipativity constraints in scenario-wise decomposition mode Capacity Expansion;Stochastic
Battery Retired Non-Anticipativity Price for violating non-anticipativity constraints in scenario-wise decomposition mode Capacity Expansion;Stochastic
Gas Contract Price Setting Flag if the gas contract can set price at the Gas Node Pricing
Gas Transport Voyage Time Time taken for the voyage from Export Node to Import Node -
Gas Transport Loading Time Time taken to load gas into the transport -
Gas Transport Discharge Time Time taken to unload gas from the transport -
Gas Transport Min Volume The minimum volume of gas allowed feasible for transport -
Gas Transport Max Volume The maximum volume of gas the transport can carry -
Gas Transport Shipping Charge The per unit cost of shipping the gas on the transport Variable Cost
Gas Transport Boil Off Rate Rate of boil off of gas during the voyage -
Gas Transport Max Shipments Maximum number of voyages Constraints
Gas Transport Max Shipments Hour Maximum hourly number of voyages Constraints
Gas Transport Max Shipments Day Maximum daily production of gas from the basin Constraints
Gas Transport Max Shipments Week Maximum weekly production of gas from the basin Constraints
Gas Transport Max Shipments Month Maximum monthly production of gas from the basin Constraints
Gas Transport Max ShipementsYear Maximum annual production of gas from the basin Constraints
Gas Transport x Value to pass-through to solution -
Gas Transport y Value to pass-through to solution -
Gas Transport z Value to pass-through to solution -
Decision Variable Non-Anticipativity Price for violating non-anticipativity constraints in scenario-wise decomposition mode Stochastic
Decision Variable Non Anticipativity Time Window of time over which to enforce non anticipativity constraints in scenario-wise decomposition Stochastic
Data File Minimum Minimum value of the created profile -
Gas Plants Production Rate Emissions produced per unit of gas Emissions
Water Plants Share Company's share of the gas demand Competition
Companies Share Company's share of the gas demand Competition
Constraint Generators Waste Heat Coefficient Coefficient of waste heat Heat
Constraint Generators Age Coefficient Coefficient on the number of years since the expansion candidate was built Capacity Expansion
Constraint Fuels Generation Coefficient Coefficient of generation with given fuel -
Batteries Energy Coefficient Coefficient of energy stored in the BESS -
Batteries Age Coefficient Coefficient on the number of years since the expansion candidate was built Capacity Expansion
Gas Plants Energy Usage Coefficient Coefficient of energy usage of the Gas Plant -
Constraint Gas Pipelines End Volume Coefficient Coefficient of gas in storage -
Constraint Interfaces Flow Coefficient Coefficient of flow Power Flow
Decision Variable Generators Heat Input Definition Coefficient Coefficient of the Decision Variable in the Generator Heat Input definition equation -
Decision Variable Gas Plants Energy Usage Definition Coefficient Coefficient of the Decision Variable in the Gas Plant Energy Usage definition equation -
Water Plants Energy Usage Definition Coefficient Coefficient of the Decision Variable in the Water Plant Energy Usage definition equation -
Generator Transition Type If the generator can transition between a single generator or to a group of generators Unit Commitment
Generator Transition Transition Cost Cost required for a Generator transition Unit Commitment
Constraint Gas Transports Shipments Coefficient Coefficient of gas transport voyage count -

7. New Reporting Properties

New reporting properties are:

Collection Property Description
Storage Inflow Rate Inflow
Storage Release Rate Total releases from storage
Storage Natural Inflow Rate Rate of natural inflow
Storage Generator Release Rate Release for generation
Storage Downstream Release Rate Release downstream via waterways
Storage Spill Rate Spill to "the sea"
Battery Energy Energy stored in the BESS
Gas Pipeline Hours Congested Number of hours the pipeline is congested in the reference direction
Gas Pipeline Hours Congested Back Number of hours the pipeline is congested in the counter-reference direction
Gas Node Price Settlement price for gas at the gas node
Gas Demand Companies Demand Gas Demand
Gas Demand Companies Shortage Shortage of gas supply
Gas Demand Companies Shortage Cost Cost of gas supply shortages
Gas Demand Companies Excess Excess of gas supply
Gas Demand Companies Excess Cost Cost of gas excesses
Gas Demand Companies Net Demand Gas demand net of shortages and excesses
Gas Demand Companies Cost Cost of gas demand
Gas Node From Participation Factor Percentage of total Gas Node inflow from a given exporting Gas Pipeline
Gas Node To Participation Factor Percentage of total gas node inflow from a given importing Gas Pipeline
Gas Transport Imports Gas discharged at the import gas node
Gas Transport Exports Gas loaded at the export gas node
Gas Transport Losses Gas lost during the voyage
Gas Transport Contract Imports Delivered gas associated with gas contracts
Gas Transport Spot Imports Delivered gas associated with spot market shipments
Gas Transport Shipping Cost Cost of shipping
Gas Transport x Pass-through value (summed in summary)
Gas Transport y Pass-through value (summed in summary)
Gas Transport z Pass-through value (averaged in summary)
Water Plant Energy Consumption The total electric and heat consumption of the Water Plant
Water Plant Electric Load The part of the [Energy Consumption] met by electric
Water Plant Heat Load The part of the [Energy Consumption]
Water Pipeline Hours Congested Number of hours the pipeline is congested in the reference direction
Water Pipeline Hours Congested Back Number of hours the pipeline is congested in the counter-reference direction
RSI Import Capacity Import Capacity
Generator Raw Rating Rated capacity of units (excluding any outage derating)
Generator Transition Transition Cost Cost of transitioning to another generator
Generator Transition Transition Count The number of transitions in the given period