PLEXOS 7.4 Release Notes

  1. Upgrade Compatibility
  2. Changes
    1. Solver Updates
  3. Performance
  4. Features
    1. Generic LP and Solution Writer
    2. Quarterly Input Properties
    3. Quarterly Reporting
    4. Periodic Auto-Regressive Moving Average Estimation
    5. Periodic Auto-Regressive Moving Average Prediction
    6. Interleave Look-ahead Outage Control
    7. Historical Hanging Branch Method
    8. Capacity Outage Probability Table Diagnostic
    9. Sample Subset Execution
    10. Attribute Setting Support
    11. User Script Execution
    12. Custom Solution Data (OpenPLEXOS API)
    13. Enterprise Retrograde
    14. Split Run with Lookahead Support
    15. Forced Outages based on Operating Time
    16. Support for 64 Logical Processors
  5. New Attributes
  6. New Input Properties
  7. New Reporting Properties
Released
12th September 2016
Previous Version
7.3
Next Version
7.5

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.4 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.4 format.

2. Changes

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

  • Property name change - all "Hours of" properties have been renamed. For example "Hours of Pump Operation" has been renamed to "Pump Operational Hours".

2.1. Solver Updates

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

Solver Version Release Notes
ILOG CPLEX 12.6.3http://www.ibm.com/support/knowledgecenter/SSSA5P_12.6.3/ilog.odms.studio.help/CPLEX/ReleaseNotes/topics/releasenotes1263/home.html
MOSEK 7.1.0.53http://docs.mosek.com/7.1/toolsrelnotes/index.html
FICO Xpress 28.1.13.0 -

3. Performance

A number of 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:

  • Parallelization of the Data File Missing Values Method code. This can significantly improve performance if reading large multi-band files with missing values.
  • Scenario Tree generation speed improvement (see the Global class for related properties). The speed of traversing the scenario tree has been significantly improved, making the whole generation process far faster.
  • Added parallel run support for the Execution Manager.
  • Refactored the charting of the Execution Manager taking advantage of GPU acceleration.

4. Features

4.1. Generic LP and Solution Writer

This feature allows the user to bypass the solver specific LP and solution writers, by using an in-built generic writer. Each solver has varying default file format values that can impact the file writing format, for example:

  • the order of the constraints and variables;
  • numeric precision;
  • numeric notation;
  • variable per line; etc.

This feature thereby standardizes the output, regardless of which solver is used. This will ultimately make it far easier to compare LP files between solvers. The options for this feature can be found here.

4.2. Quarterly Input Properties

Input properties such as LDC Type, Discount Period Type and Growth Period support the quarterly period type. More information on this can be found under the 'New Attributes' section.

4.3. Quarterly Reporting

In the report object, a new option is available to switch on/off writing of summary results for each calender quarter of the simulation horizon.

Figure 1: Quarterly Report Settings

The following images demonstrate monthly reporting, along with the equivalent quarterly reporting.

Figure 2: Monthly Generation Levels

Figure 3: Quarterly Generation Levels

Note:  Quarterly reporting is enabled for all forms of reporting, e.g. Flat file, MDB, etc.

4.4. Periodic Auto-Regressive Moving Average Estimation

Many time series data (such as river historical flows) can be approximated by Periodic Auto-Regressive Moving Average (PARMA) models. This feature has been implemented to estimate the parameters of PARMA models for the Variable class. PARMA period estimation, parameters estimation, and order selection are all included so the best estimated parameters will be determined automatically.

Two new hidden parameters (PARMAVariable and PARMAHistoricalFileName) can be used to enable this feature when using Hanging Branches Scenario Trees. For example, if there is a Variable with name 'Inflow' that will use the PARMA to generate the stochastic samples, the hidden parameters are like this:


  <Stochastic>
  <ParameterName>PARMAVariable</ParameterName>
    <Band>1</Band>
    <Value>Inflow</Value>
  </Stochastic>

  <Stochastic>
    <ParameterName>PARMAHistoricalFileName</ParameterName>
    <Band>1</Band>
    <Value>Inflow.csv</Value>
  </Stochastic>
                

Notice that the Global Tree Period Type should match with the period type of the historical time series data in the input file

4.5. Periodic Auto-Regressive Moving Average Prediction

The prediction is working seamlessly with the estimation. After the PARMA parameters have been estimated, the multi-stage stochastic variables will be generated based on the historical data and the Hanging Branches Scenario Tree created according to the Global settings.

The time range of the historical data and the modelling horizon can be overlapped or there can be a gap between them. If they are overlapped, the stochastic variables will be created using the historical data before the horizon. If there is a gap, the historical data in the gap will be automatically generated before the prediction.

4.6. Interleave Look-ahead Outage Control

A new hidden parameter (SuppressInterleaveOutages) has been implemented for handling the Day-Ahead run to ignore any outages except units already on outage. This will stop the Day-Ahead from having any foresight of outages, but Real-Time will be able to see them, with the exception being units already on outage. For example:

Step 1) Allow any unit already in an outage block to have that outage block modelled.
Step 2) Ignore any other outages which may occur in that step, for that unit.
Step 3) Repeat for all units.

Ultimately this will prevent the DA model from having any foresight of outages, but the real-time (interleaved model) will be able to see them. One important requirement, is that the outages between the interleaved models must be the same (i.e. have the same random seed and outage properties).

More information can be found under the article 'Hidden Parameters'.

4.7. Historical Hanging Branch Method

The new hidden parameters can be used to generate the stochastic samples from historical data when using Hanging Branches Scenario Trees. For example, if there is a Variable with name 'Inflow' that will use the historical data to generate the stochastic samples, the hidden parameters are like this:



  <Stochastic>
    <ParameterName>HistoricalVariable</ParameterName>
    <Band>1</Band>
    <Value>Inflow</Value>
  </Stochastic>
  <Stochastic>
    <ParameterName>HistoricalFileName</ParameterName>
    <Band>1</Band>
    <Value>Inflow.csv</Value>
  </Stochastic>
  <Stochastic>
    <ParameterName>HistoricalYearFrom</ParameterName>
    <Band>1</Band>
    <Value>1970</Value>
  </Stochastic>
  <Stochastic>
    <ParameterName>HistoricalYearTo</ParameterName>
    <Band>1</Band>
    <Value>2012</Value>
  </Stochastic>
  <Stochastic>
    <ParameterName>HistoricalPeriodType</ParameterName>
    <Band>1</Band>
    <Value>3</Value>
  </Stochastic>
  <Stochastic>
    <ParameterName>HistoricalYearStart</ParameterName>
    <Band>1</Band>
    <Value>1998</Value>
  </Stochastic>                

4.8. Capacity Outage Probability Table Diagnostic

The new hidden parameters can be used to write out Capacity Outage Possibility Table (COPT) into spreadsheets for specific time periods.

Figure 4: Generator Outage Settings

Figure 5: Generator Outage Probability Table

More information can be found under the article 'Hidden Parameters'.

4.9. Sample Subset Execution

The PLEXOS engine can be run from the command line, which allows for models, projects and solution merging to be executed without opening the PLEXOS graphical user interface. Any arguments, such as model name, project name, output path or destination file, that might contain spaces will need to wrapped in quotations.

An example command, where the 5th sample only is executed would be: "C:\Program Files (x86)\Energy Exemplar\PLEXOS 7.4\PLEXOS64.exe" "C:\PLEXOS Models\Test model.xml" -m "Base model" -n -sp 5 5

More information can be found under the article Command Line Options.

4.10. Attribute Setting Support

The undocumented parameters file also allows any attribute of any simulation object that is currently enabled in a model to be modified by specifying attribute information in "PLEXOS_Param.xml". This is a very powerful feature, as it allows attribute data (e.g. horizon start date) to be modified without needing to programmatically do so. For example a basic script file could automatically update the horizon start date (see object attribute list for all attributes available) and trigger the simulation to re-run. This example is essentially a basic way to automate the engine.

More information can be found under the article Hidden Parameters.

4.11. User Script Execution

PLEXOS allows user defined scripts to run prior to a simulation or post-simulation as part of the simulation execution. To include a pre-simulation script as part of the simulation execution simply save the script as Pre-simulation.bat within the same directory as the PLEXOS database being executed. Similarly for post-simulation scripts, just use Post-simulation.bat.

More information can be found under the article Automation.

4.12. Custom Solution Data (OpenPLEXOS API)

The Solution OpenPLEXOS API has been developed, allowing the user to easily customize the solution. The core functionality provides flexibility to quickly and easily add objects into the solution databases and to register calculation functions for these object. This essentially allows the solution database to be modified at runtime, allowing powerful customizations.

For more information please see the Solution API section of the OpenPLEXOS article.

4.13. Enterprise Retrograde

The next major Beta release will be PLEXOS Enterprise. The back-end schema of this version has changed somewhat, therefore the dataset upgrade procedure is reasonably significant (although automated). However the retro-grade functionality will not be available for older version of PLEXOS (7.3 and earlier), but is supported in the 7.4 version, i.e. Enterprise datasets can be easily downgraded to the 7.4 desktop schema.

4.14. Split Run with Lookahead Support

Earlier versions did not support for splitting a model by both planning and chronological horizon, with the horizon including a look-ahead. Support for this has now been added.

4.15. Forced Outages based on Operating Time

A new property has been introduced called Generator Forced Outage Rate Denominator. This property directly impacts the Forced Outage Rate generation by basing the rate on Time (default) versus Operating Time (new mode).

4.16. Support for 64 Logical Processors

Windows groups logical processors into processor groups. Each group is a set of logical processors that are treated as a single scheduling entity. The maximum number of logical processors in any group is 64. Systems with fewer than 64 logical processors always have a single group (Group 0). By default .NET only supports a single processor group, so supports at maximum 64 logical processes. However this limitation has been removed and the runtime is now able to distribute managed threads across all CPU groups.

5. New Attributes

New attributes are:

Class Property Description
Report Output Results by Quarter If summary results are written by quarter
LT Plan Discount Period Type A unique discount factor and expansion decisions will be computed for each of these periods.

The following attributes have all been updated to support the quarterly period type:

Class Property Description
Data File Growth Period Cycle over which the growth algorithm matches energy targets (year,month,day)
LT Plan LDC Type One LDC is created for each period of this type in horizon
MT Schedule Discount Period Type A unique factor will be computed for each of these periods
MT Schedule Step Type Each simulation step will span steps of this type
MT Schedule LDC Type One LDC is created for each period of this type in horizon
ST Schedule Discount Period Type A unique discount factor will be computed for each of these periods
Stochastic Convergence Period Type Convergent Monte Carlo convergence period type

6. New Input Properties

New input properties are:

Collection Property Description Relates To
Generator Forced Outage Rate Denominator Denominator for Forced Outage Rate calculations Stochastic
Generator Min Pump Down Time Minimum number of hours a unit must be off after being shut down from pump mode Unit Commitment;Constraints
Generator Initial Units Pumping Number of units pumping at time zero Initial Conditions;Unit Commitment
Generator Initial Operating Hours Number of units pumping at a time zero Initial Conditions;Unit Commitment
Battery Max Cycles Number of cycles allowed each interval Constraints
Battery Max Cycles Hours Number of cycles allowed each hours Constraints
Battery Max Cycles Day Number of cycles allowed each day (000) Constraints
Battery Max Cycles Week Number of cycles allowed each week (000) Constraints
Battery Max Cycles Month Number of cycles allowed each Month (000) Constraints
Battery Max Cycles year Number of cycles allowed each year(000) Constraints
Company Risk Level Risk level for risk-constrained optimization Risk
Global Deterministic Stages Scenario Tree: Number of deterministic stages -
Market Capacity Generators Offer Quantity Quantity offered in band for capacity market -
Market Capacity Generators Offer Price Price of energy in band of capacity market -
Constraint Batteries Cycles Coefficient Coefficient of cycles -
Constraint Maintenances Start Coefficient Coefficient on the number of maintenances started -
Constraint Gas Plants Capacity Factor Coefficient Coefficient of Gas Plant capacity factor -
Constraint Gas Plants Installed Capacity Coefficient Coefficient of installed capacity -
Constraint Gas Plants Capacity Built Coefficient Coefficient of capacity built -
Constraint Gas Plants Capacity Retired Coefficient Coefficient of capacity retired -
Constraint Gas Plants Build Cost Coefficient Coefficient of total build cost -
Constraint Gas Plants Built Coefficient Coefficient on binary variable indicating if any capacity is built in the year -
Constraint Gas Plants Built in Year Coefficient Coefficient on binary variable indicating if any capacity is built in the year -
Variable Regions Price Coefficient Coefficient of region price in condition -

7. New Reporting Properties

New reporting properties are:

Collection Property Description
Generator Total System Cost Total system cost including fuel, Vo&M, start and shutdown costs, emissions costs and ramp costs.
Generator Forced Outage Rate Total system cost including fuel, VO&M, start and shutdown costs, emissions costs and ramp costs.
Market Capacity Generators Cleared Offer Price Price of marginal offer band.
Market Capacity Generators Cleared Offer Cost Cost of cleared offer bands.
Region Total System Cost Total system cost including fuel, VO&M, start and shutdown costs, emissions costs and ramp costs.
Zone Total System Cost Total system cost including fuel, VO&M, start and shutdown costs, emissions costs and ramp costs.
Company Total System Cost Total system cost including fuel, VO&M, start and shutdown costs, emissions costs and ramp costs.