- Use licence MPL 2.0 instead of GPL3_WITH_RTE-Exceptions (#1812)
- Include overflow variable in HydroPower constraint (#1903)
- Add total time logging at the end of the simulation (#1908)
- Add STS level constraint to suspect list for infeasible problem analysis (#1891)
- Use precompiled OR-Tools for Oracle Linux 8 CI (#1893)
- Change version behavior to allow more flexibility (#1898)
- Use std::shared_ptr instead of indices for active binding constraints in results (#1887)
- Fix a few compilation warnings (#1880)
- Scratchpad numspace (#1749)
- Fix invalid index causing segfault in
test-study
test (#1902)
- Fix segfault caused by uninitialized
cluster.series.timeseriesNumbers
(#1876). This bug was introduced in v8.8.1 by #1752 - Bump OR-Tools from 9.5 to 9.8 (fix crash with XPRESS) (#1873)
/!\ This version has known bugs, please use 8.8.2 instead.
- Simplify TS numbers drawings, fix bug related to refresh & local thermal generation (#1752)
- Take into account breaking change in OR-Tools's API, enable SCIP & GLPK solvers, bump OR-Tools (#1825). This should improve performances with FICO XPRESS
- Fail if OR-Tools solver is not found (#1851)
- Normalize simulation mode Expansion, fix logs (#1771)
- Add possibility to release without running any tests (#1852)
- Use
std::unordered_map
for tmpDataByArea_ (hydro ventilation) (#1855) - Remove
mutable
keyword fromPROBLEME_HEBDO
(#1846) - Remove
Study::gotFatalError
, throw exceptions instead (#1806) - Renewable containers (#1809)
- Use modern style
for
loops, avoid int cast (#1847) - Remove
YUNI_STATIC_ASSERT
(#1863)
- Add tests on short-term storage/thermal cluster/renewable cluster removal (#1841)
- Add precision about
enabled
field in ST storage (#1850) - Use dedicated URL path for Doxygen, instead of root (#1865)
- Fix HTML generation for readthedocs (#1867)
- Add dark mode switch for Doxygen online documentation (#1792)
- New "cash-flow" variable for ST storage (#1633)
- Experimental optimization with discrete variables (MILP unit-commitment mode #670)
- Add
enabled
property for ST storage objects, fix bug related to saving ST objects (#1807) - Solver logs can be enabled either by the command-line option (--solver-logs) or in the generaldata.ini
- Add shortcut -s for names MPS problems in CLI options (#1613)
- Use 50% as a default value for ST-storage property initiallevel (#1632)
- Add warning logs for non-existent output variable (#1638)
- Add area name in error message for rare error (#1695)
- Fix wrong year number in logs upon failed year (#1672)
- Always check mingen against maxPower, regardless of reservoirManagement (#1656)
- New log msg when solver not found in or-tools (#1687)
- Fix annoying error log about correlation matrices in tests (#1573)
- Fix output variable PROFIT for thermal clusters (#1767)
- Bug on renewable cluster (wrong group) (#1631)
- Fix oracle-linux8 binaries missing compression feature (#1741)
- Named MPS - fix duplicated "ranged" binding constraints (#1569)
- Fix save for short term storage objects (#1807)
- Prevent segfault during simulation, check bounds of scenario builder (#1567)
- Fix number of links in deprecated output file digest.txt (#1646)
- Fix unfeasible problem analyzer (#1527)
- [Windows only] Increase file size limit when reading file (#1674)
- Fix segfault encountered when importing logs (#1702)
- Fixes swallowed exceptions in computation thread (#1685)
- Fix writer causing a segfault with OR-Tools (#1584)
- Create Doxygen documentation (#1650)
- Update README.md (#1654)
- Add advice for developers (#1639)
- Document the usage of XPRESS (#1596)
- Fix regression on cluster renaming, add unit tests (#1699)
- Use minizip-ng 4.0.1 (from 3.0.7) (#1696)
- Bump vcpkg to latest tag (2023.07.21) (#1532)
- Remove dead code yuni-docmake (#1544)
- Remove fixed-size ints from Yuni (#1622, #1629)
- Architecture Decision Record for Study breakdown (#1600)
- Remove dependency to UI, use RAII to handle resources (#1678)
- De-templatize
HydroManagement::prepareNetDemand
(#1679) - Use
std::unique_ptr::operator->
rather thanstd::unique_ptr::get
(#1676) - Renamed
timeSeries
intotimeSeriesEnum
(#1675) - Remove RenouvelableParPalier from global variable (#1659)
- Remove code duplication in src/libs/antares/study/parameters.cpp (#1667)
- Remove manual alloc and update code standards in hydro/daily2 (#1651)
- Remove
StudyRuntimeInfos::parameters
(#1665) - Introduce & use DataSeriesCommon::getAvailablePowerYearly (#1660)
- Add getValue for thermal clusters, remove
State::timeSeriesIndex
(#1644) - Move
resultWriter
out of classStudy
(#1649) - Remove malloc in src/solver/hydro/ (#1626)
- Refactor constraint building (#1607)
- Remove most uses of
IResultWriter::Ptr
, use ref instead (#1642) - Refactor hydro pmin checks (#1381)
- Clean up parameters.cpp (#1623)
- Remove unused
BindingConstraintsRepository::eachActive
(#1625) - Provide reference to
Benchmarking::IDurationCollector
, not raw pointer (#1621) - Use
int32_t
anduint32_t
inPROBLEME_HEBDO
(#1577, #1543) - Reduce use of study in helper functions (#1610)
- Move thermal noises to class Simulation (#1594)
- Upgrade src/solver/hydro to C++ (#1581)
- Remove duplicate header (#1595)
- Remove unused variable (#1585)
- Remove dynamic alloc of PROBLEME_HEBDO (#1554)
- Remove memory usage (#1578)
- Use reference instead of raw pointers (#1579)
- Re-order initialization to avoid compilation warnings (#1599)
- Remove some global variables (#1545)
- Remove
goto
inOPT_AppelDuSimplexe
(#1533) - Remove useless Area's data member :
enabled
(#1556) - Clarify string -> enum conversion for thermal cluster groups (#1553)
- Remove unmanaged dynamic allocation for
ProblemeAResoudre
(#1549) - Remove
shared_ptr
forOptPeriodStringGenerator
(#1528) - Final removal of study singleton from the solver (#1536)
- Remove use of current study singleton in emergency exit (#1519)
- Remove unused function
getFilenameWithExtension
(#1537) - Remove tmpnam from tests (#1506)
- ACR CMake (#1551)
- Add "Antares::action" CMake library, build only if BUILD_UI=ON (#1637)
- Fix conflicting library name (#1590)
- Cleanup date dependency (#1565)
- CMake Memory and Sys (#1558)
- Split benchmarking (#1582)
- Remove liblib* CMake targets (#1609)
- Split study in CMakefile (#1583)
- CMake usage improvements (#1548)
- Fix build for Oracle Linux 8 (#1542)
- Schedule deps compile instead of develop merge (#1530)
- Binding constraint RHS scenarization (#1219)
- Implement --mps-export command-line option (#1404)
- Name constraints & variables in MPS files using --named-mps-problems command-lin e option (#1294)
- Thermal price definition (contributed by RTE-i, #1272)
- Write full command-line instead of solver location in logs (#1518)
- Give Oracle Linux 8 assets a proper name instead of "unknown" (#1438)
- Don't build tools (study-updater, etc.) by default (#1442)
- Fix error when writing files over 80Mb into a zip (#1488)
- Fix memory leaks (#1468)
- Fix segfault, add !skipped to enabled constraints (#1441)
- Backport v8.4.3 changes
- Thermal price definition (RTEi's -> CR20) - UI (#1485)
- Fix possible values for ST storage (#1455)
- Add named MPS tests (#1408)
- Enforce better unit test isolation (#1486)
- Add tests for Windows CI when job is scheduled (#1483)
- Tests for CR20: thermal price definition (#1364), improvements (#1422)
- Remove platform-specific headers (#1523)
- Remove one
goto
instruction in OPT (#1522) - Remove study singleton in application signal handlers (#1513)
- Remove barely-used
ThermalCluster::productionCost
temporary (#1517) - Bindings constraints scenario : handling last remarks (#1466)
- Replace remaining vector of pointers by plain vector (#1505)
- Split ts numbers data classes in different files (#1398)
- Remove more usage of study singleton (#1509)
- Group of constraints (#1388)
- Remove unused headers in optimization module (#1495)
- Refactor ProblemeHebdo allocation (#1489)
- Remove use of study singleton in optimization module (#1492)
- Remove Study::Get from SIM, pass as function argument instead (#1494)
- Objects in CMakeFiles (#1465)
- Variables with a Ref or Ref_SV suffix (#1475, #1481, #1497, #1498, #1500, #1501, #1502)
- Use std::vector instead of MemAlloc/MemFree, clean up (#1471)
- Use ~class() = default (#1473)
- Memory allocation for ProblemeAResoudre, use std::vector (#1432)
- Improve clarity for constraints that should be used (#1452)
- Automatically include yuni include directory in dependents (#1525)
- Clarify logs & code in case of "failed year" (#1450)
- Remove two static functions (#1440)
- Avoid copies using std::move (#1445)
- Memory allocation, use std::vector (#1402)
- Fix critical code smells (#1412)
- Named MPS: factorize variable & constraint namers (#1409)
- Array, logs jit and correlation in makefile (#1410)
- Backport v8.4.3 changes
- Fix major bug related to short-term storage & MRG. PRICE (#1377)
- Short-term storage (#1163).
- Add pollutant emissions (#1184, #1222)
- Minimal generation for hydraulic (#1273, RTE/RTE-i/Redstork)
- Make LMR optional for adequacy patch (#1247)
- Use ISO8601 for date format in the logs (#1303)
- Publish installers for Oracle Linux 8 (#1341)
- Remove doc from UI/package, publish it as a separate PDF (#1233)
- Tune XPRESS resolution (#1158), this should improve performance for OR-Tools+XPRESS
- Performance metrics (produce a JSON file) (#1306)
- Fix a bug in adequacy study mode (#1314)
- Fix memory errors detected by valgrind (#1302)
- Fix empty ROR & STORAGE in output using the TS-Generator (#1293)
- Simplify if/else (#1309)
- Max number of columns in an output file (#1159)
- Fix a few compilation warnings (int -> uint) (#1301)
- Remove parameters.hxx, fix Parameters::memoryUsage (#1299)
- Remove OUI_ANTARES NON_ANTARES (#1188)
- Use CMakeLists.txt instead of *.cmake (#1198)
- Clean up src/solver/optimisation (#1161)
- Adequacy patch : refactor parameters management (#1154)
- Add a few const qualifiers (#1178)
- INI files load encapsulation (#1057)
- Remove group{Min,Max}Count, annuityInvestment in thermal clusters (#1350)
- Bumped OR-Tools 9.2 -> 9.5. CMake 3.18+ is required for build if building OR-Tools, and XPRESS 9.0 for execution (previously 8.13).
- Backport v8.4.3 changes
- Curtailment Sharing Rule for Adequacy Patch #1062, including a scaling coefficient in hurdle costs #1155. This feature was contributed by RTE-i with support from RTE, ELIA and APG.
- Hydraulic patch #697
- Fix link path error in Kirchhoff constraint builder #1157
- Fix build on Ubuntu 22.04 #1160
- Cleaning #1142, 1146, #1149
- Update docs to include CSR #1156
- Fix examples studies (invalid v8.3.0 -> v8.5.0) #1136
- Increase file size limit from 80Mo to 80Go when reading file.
- Fix "unhandled error" with big studies in zip mode. MPS files were too big and hit file size hard limit
- Generate a solver-only asset for every release #976, #1080
- Use MPS writer from solvers, instead of copy-pasted functions #1023
- Allow more than 100 thermal clusters #1011
- Remove status bar count. The sum was sometimes wrong #1029
- Remove unused "District marginal prices" button from Advanced Parameters #1067
- Fix overwritten MPS files when optimization/simplex-range=day #1041
- Restore warm start for OR-Tools+XPRESS #1079
- Fix output overwrite when using zip output by adding a -2, -3, etc. suffix #1044
- Fix crash when generaldata.ini is empty, using default values #892
- Introduce missing MPS comparison tests #1035
- Fix empty CMAKE_BUILD_TYPE #1028
- Fix memory leaks #669
- Clean up Yuni #1055
- Remove default implementation for hourEnd (see variable.hxx) #1020
- Remove free functions for areas' mem allocation #922
- Remove dead code associated to debug #1048
- Remove unused
ContrainteDeReserveJMoins1ParZone
,NumeroDeVariableDefaillanceEnReserve
#1047 - Extract code related to spilled energy bounds #1049
- Simplify code for adq patch (Local matching) #1054
- Refactor naming for {MPS, criterion, etc.} files and exported structures (see parameter optimization/include-exportstructure) #1030
- Refactor: move current year and week from study to weekly optimization problem #1032
- Pass optimization number as an argument #1040
- @JasonMarechal25 made their first contribution in #1055
Full Changelog: https://github.com/AntaresSimulatorTeam/Antares_Simulator/compare/v8.4.1...v8.4.2
- Fix formula for profit calculation #1022
- Add option & command-line argument to write results into a single zip archive #794
- Add option to set link capacity to null/infinity for physical links only #792
- Speed up simulations by extracting simplex basis in XPRESS/OR-Tools #957
- Move Kirchhoff constraint generator to an executable #909
- Do not export BC MARG PRICE variable by default by #928
- Enable MPS write with OR-Tools+Sirius
- Make sure that RC/beta are displayed in version numbers #739
- Remove error message printed on -h/--help in antares-solver #895
- Use average for BC MARG PRICE (daily & weekly) #940
- Fix crash when exporting MPS with OR-Tools #923
- Remove obsolete option
include-split-exported-mps
#956 - Fix crash when many binding constraints are present in a study #924
- Fix BC MARG COST values in parallel by @flomnes in #1015
- Use min gen modulation to compute variable "profit by plant" by @guilpier-code in #1016
- Round renewable power generation by @flomnes in #985
- Make logs more expressive when checking link values by @flomnes in #1005
- Add condition to avoid null pointer by @payetvin in #989
- Case insensitive option for build type by @payetvin in #986
- [DEV] Refactored ortools_utils by @payetvin in #978
- [CI] Integrate ortools v9.2-rte2.0 by @payetvin in #1007
- [FIX] Cleaned day ahead reserve management by @payetvin in #1010
- [CentOS 7] Remove deps from docker image by @flomnes in #994
- Cleaning, renaming (#896, #897, #898, #935, #937, #944, #945, #950, #954, #959 , #966)
- Refactor average results #946
- CI: upgrade deprecated Github actions #938
- CI: activate automatic gcov report on SonarCloud #967
- Use GIT_SHALLOW for OR-Tools's FetchContent #904
- Remove antares-solver swap variant & librairies, reduce build duration #906
- [DOC] OR-Tools build #880
- Document how to run JSON tests #902
- Document option --list-solvers #770
- @kathvargasr made their first contribution in #967
Full Changelog: https://github.com/AntaresSimulatorTeam/Antares_Simulator/compare/v8.3.2..v8.4.0
- Round renewable production (#985)
- Daily, weekly, monthtly & annual values for link variable "MARG. COST" (EUR/MWh) was previously obtained by a sum. It now computed by average (#881).
- Add new BC marginal price output variable (#801)
- Add Antares logo in solver logs (#861)
- Add XPRESS-compatible assets for Ubuntu. Windows coming soon.
- In the "Links" panel, replace "Flat" view by "By area" view (#755)
- Fix segfault when more than 9 renewable clusters are present in an area (#869)
- Fix segfault related to the digest occurring when many thermal clusters are present (#852)
- Statistics: use std::mutex / std::atomic<> to prevent concurrent writes (#838)
- Allow more than 100 thermal clusters (#886)
- Fix warning in hydro.ini loading function (#883)
- MPS for the 1st optimization were erased by the one related to the 2nd optimization. Fixed (#863).
- Simplify day ahead reserve condition (#777)
- Remove unused "shedding strategy" (#788)
- Refactor Layers by adding a LayerData class (#866)
- Output variables: remove useless methods for renewable clusters (#869)
- Restore notifications from Sonar (#828)
- Restore tests in the CI (Windows only) (#850)
- Add OR-Tools+XPRESS to Ubuntu CI and merge files for centos CI (#859)
- Simplify Parameters::fixRefreshIntervals, clean headers (#832)
- Simplify tuneSolverSpecificOptions (#829)
- Input and output format due to addition of BC marginal prices (#836)
- Fix e-mail address and website (#834)
- Add execution-info.ini output file, containing execution durations and study info #740 #803 #816
- OR-Tools: set solver-specific options for XPRESS #796
- Fix missing renewable columns in districts (sets of areas) #802
- Fix wrong number of cores in the "Run a simulation" window #793
- Bump C++11 to C++17
- Adequacy patch - share the unsupplied energy according to the "local matching rule". This feature was contributed by RTE-i with support from RTE, ELIA and APG #657
- Add output variable "profit by cluster". This variable represents the difference between proportional costs and marginal costs in the area. It provides a partial answer to the question "what is the economic profit associated to a thermal cluster ?", excluding non-proportional (€/h) and startup costs (€/startup). #686
- Allow +/- infinity in binding constraint RHS, allowing the user to enable BCs only for some timesteps #631(*)
- Add option to enable the splitting of exported MPS files. This feature is intended to be used by Antares Xpansion.
- Add --list-solvers command-line argument, to list linear solvers available through OR-Tools
- Measure the execution duration for every computation step, store the durations in a dedicated file #546
(*) May not work with the Sirius solver. Consider using other solvers through OR-Tools
- Fix segfault occuring when inter/intramodal correlation is enabled and TS width are inconsistent #694
- Fix logging of performed MC years when running jobs in parallel #680
- Fix a crash occuring in studies where an area contains 100+ thermal clusters (#753)
- Load & check prepro data only if needed (#754)
- Fix possible loss of data if adq-patch is disabled (#738)
- UI For property update for adq-patch mode, allow batch edit (#747)
- UI - Fix GUI freeze when using multiple map layers (#721)
- Display the git commit-id in the logs for debugging & diagnosis purposes #698
- Code cleaning in hydro heuristic #671
- Use antares-deps 2.0.2, which now excludes OR-Tools #684
- Fetch OR-Tools directly, allowing more flexibility on the flavor (XPRESS/Sirius/etc.) #684
- Code cleaning #663 #665 #666 #687 #725 #667 #668 #730
- Generate 2 assets in CentOS 7 : one that includes XPRESS, one that does not #689
- Upgrade examples 8.1 -> 8.3 (#733)
- Round renewable production (#985)
- Fix solver crash on parsing command-line parameters #624
- Fix crash occuring when switching to the links panel #658
- Fix scenario builder data loss when renaming area #610
- Write 1 in the ts-numbers when series.width == 1 #609
- Add noise to the cost vector in the allocation problems to enforce uniqueness #622
- Linux only : fix segfault occurring when an INI file does not exist #606
- Place "Dataset > Resize columns to..." in first position #607
- Allow that all NTC be 0 in one direction #595
- Fix occasional crash when opening the links panel #594
- Linux only : fix frozen window occurring after a "Save as..." #586
- Linux only : fix impossibility to save a study #600
- Developer version only : fix assertion errors in the GUI #584
- Multiple timeseries for link capacities (NTC). It is now possible to establish different scenarios for the capacity of a link. Users can now take partial or total outages for links into account #520
- Infeasible problem analyzer. When the underlying problem has no solution, list the most suspicious constraints in a report. This should help users identify faulty binding constraints #431
- Add a hydro-debug switch that allows the printing of some useful debug data in heuristic mode #254
- Add a "view results" button in the dialog that appears when a simulation has been completed #511
- Help menu : add an "online documentation" item #509
- Improve UI for new thermal parameter "tsGenBehavior" #534
- Improve cell styles when loop-flow is enabled for a link #571
- Prevent an area from having a link to itself #531
- Fix crash when the study folder does not exist #521
- Fix crash when failing to load a study #502
- Remove calls to exit() #505. Provide consistent return values for antares-solver by fixing a segfault related to the log object #522
- Remove calls to setjmp, goto's big brother #527
- Large refactor of antares-solver's main function, hoping to make error management easier to understand #521
- Use std::shared_ptr instead of Yuni::SmartPtr in most cases #529
- Simplify and clean some parts of the code #537, #538, #540
- Fix segfault occurring randomly when thermal clusters are disabled (#472)
- Fix hydro level discontinuities (#491). Very rarely, hydro reservoirs would inexplicably be filled from 0% to 100% in 1h, this violating the modelling constraints.
- Execution times when the Sirius solver is used in conjunction with OR-Tools are now similar as with Sirius alone. This is a result of this fix, related to "hot-start".
- Speed up scrolling (#395)
- Warn the user about disabled renewable clusters only when relevant (#386)
Include antares-analyzer into .zip and .tar.gz archives (#470). This is especially useful if you use the portable version of Antares.
In the CI workflow, CentOS 7 now uses devtoolset-9 (previously 7), with in particular gcc 9. This allows for C++17 features to be used without hassle.
- Allow up to 9 RES groups (off-shore wind, on-shore wind, rooftop solar, PV solar, etc.) as opposed to wind and solar previously. This allows the user to distinguish between more renewable energy sources. When creating a new study, renewable generation modelling is set to "clusters" by default. This change does not affect opening an existing study. Note that TS generation is not available for these new RES groups.
- Add 3 thermal groups, named other, other 2, other 3 and other 4.
- When a binding constraint is marked as skipped in the GUI, disable it in the solver #366
- Keep selection on thermal/renewable cluster when its group changes #360
- Dialogs "Thematic trimming" and "User playlist" are now resizable
- Add non-regression tests on each release
- Fix vcpkg on Github Actions
- Add build cache for Github Actions to speed up the build (Linux only)
- Fix calculation of average for variable "congestion probability"
- Fix NODU when unit number is not an integer i.e has decimals
- GUI: allow decimal nominal capacity for thermal clusters
- GUI: Linux: use xdg-open to open pdf files instead of gnome-open
- Remove code related to licence management
- Remove openssl and libcurl dependencies
- Remove dead code
- Fix GUI freeze when area color is changed but user don't validate new color
- Correction of MC year weight use for PSP and MISC NDG
- Add "Continue Offline" button at startup if antares metric server is unreachable
- Error with hydro start when using scenario playlist and stochastic TS refresh span
- Files needed for antares-xpansion not exported when using scenario playlist with first year disabled
- Correction of crash if user define a stochastic TS refresh span of 0 : minimum value is now 0
- Correction of MC years playlist weight write when sum of weight was equal to number oy years (no MC years playlist export in .ini)
- Add a GitHub action to check if branch name will launch CI
- Add shared dll in windows .zip archive
-
OR-Tools integration :
- add command line option in antares-solver to define OR-Tools use and OR-Tools solver (option --use-ortools and --ortools-solver='solver')
- add GUI option in run simulation to define antares-solver launch with OR-Tools option
-
Add advanced hydro allocation feature. The default and existing behavior is to accomodate the guide curves, the new behavior is to maximize generation, even if it means that the reservoir level goes beyond the guide curves.
-
Add indication on how to disable anonymous metrics
-
antares-xpansion :
- add option
include-exportstructure
ingeneraldata.ini
to export .txt files needed for antares-xpansion
- add option
-
Scenario builder and hydraulic level :
Adding an hydraulic starting level tab in the scenario builder.
For each MC year and area, a starting level can be defined, that is a 0-100 value.
When the scenario builder is enabled, these levels get priority upon hot-start mode. -
Binding constraints (BC) and thermal clusters :
If a must-run or disabled cluster is involved in a binding constraint :- the cluster is marked as "N/A" in the BC formula (GUI > Binding constraint > Summary)
- the cluster is marked as must-run/disabled in the Weights or Offsets tabs.
If a BC involves only zero weighted clusters/links or must-run/disabled clusters, the BC is :
- marked with a red bullet in the Summary tab
- marked as Skipped in the Weights and Offsets tabs
-
MC Scenario Playlist : Add possibility to define a weight for each MC years in the synthetis results.
See : GUI > Configure > MC scenario playlist.
By default, a MC year's weight is 1, but can be set by user to more or less.
After simulation, the MC year have a contribution to averages or standard deviations in synthesis results depending on the weight it was given.
- Selecting an area and then, from the inspector, trying to select a thermal cluster or a link of this area in the dependencies section causes a crash. The inspector's cluster/link selection was removed.
- Scenario builder :
- It makes no sense for the user to access the scenario builder Configure menu item whereas the Building mode parameter is set to Automatic or Derated. In the previous cases, the Configute menu item is disabled.
- If a disabled thermal cluster is given a time series number in a non active rule of the scenario builder, a warning should not be triggered. If the disabled cluster is given a number for many MC years in the active rule, a single summary warning should be raised, not a warning per year.
-
External dependencies :
- use of new repository antares-deps for external dependencies compilation
-
Fix several compilation warnings
-
Remove unused
COUT_TRANSPORT
constant -
Add code formatting with clang-format
-
Remove PNE dead code
-
docker image :
- create of dockerfile for docker image creation
-
continuous integration :
- use docker images in CI
- use of antares-deps release artifact in CI
- push of docker image to dockerHub in antaresrte/rte-antares repository
- add Centos7 support
-
Unit tests :
- Adding an end-to-end test in memory (see simple-study.cpp) :
This test calls high level functions to build a simple study and runs it.
It then checks if some elements of results match associated expected values.
During this process, file system is not involved : everything takes place in RAM - Adding pytest scripts to check reference output values
- Add pytest scripts related to unfeasible problems
- Adding an end-to-end test in memory (see simple-study.cpp) :
-
Simulation dashboard: A new "Geographic Trimming" option is now available in the "Configure" menu. This option makes it possible to filter the simulation's output content so as to include only results regarding Areas and Links of interest
-
Optimization: a new parameter "Unfeasible Problems Behavior" is available in the "advanced preferences" section of the "Configure" menu, with four possible values: (Error Dry, Error Verbose, Warning Dry, Warning Verbose) The first two options make the simulation stop right after encountering the first mathematically unfeasible problem, if any The last two options make the simulation skip all unfeasible problems, if any
"Verbose" options print faulty problems in the “mps” format "Dry" options only report the time frame (MC year, week) for which an unfeasible problem was detected -
Compilation and cmake tree : Updates were made for more modern CMake use. Git submodules (extern dependencies : curl, openssl, wxwidget) are no more in use. These external dependencies can be retrieved :
- either from a library manager : vcpkg for Windows, classic package repositories for Linux. With this way to proceed, an installation of external dependencies is required once for all.
- or thanks to an automatic download : at Antares' cmake configure step, all needed downloads, compilation and installation are done.
-
Unit tests : unit tests around class Matrix are now available. They can be compiled (on demand) during Antares' cmake build step and run either with ctest or in the classic way. Boost.Test is required and can be priorily retrieved and installed in the same way as the other external dependencies.
-
Continuous integration : yaml files for github actions allow the run of all build chain and unit tests on several environment (Windows and Ubuntu). The 2 ways of getting external dependencies are also tested.
-
Documentation: updated reference guide
-
Usage metrics: added reference key for this version
-
GUI of the "Thematic trimming" option: Window size is naturally readjusted to improve readability by upgrading wxwidgets (3.1.3 and above).
-
Auxiliary "Batchrun" tool: two options previously missing in the command line syntax have been introduced and now make it possible to launch a sequence of simulations to run in parallel
-
Simulation Dashboard: A new option "Thematic Trimming" is available in the "Output Profile" Section. This option now makes it possible to define precisely the content of output files so as to include only variables of interest
-
Optimization: a new parameter "Hydro Pricing mode" is
available in the "advanced parameters" section, with two possible values (fast, accurate): In mode "fast", water value is, in the course of optimization, taken to be constant throughout the (daily or weekly) optimization period, and equal to that found for the exact day and level at which the optimization begins. Water values are reassessed afterwards, for each hour, on the basis of relevant time and level. In mode "accurate", the variations of water value along with the reservoir level are taken into account in the course of the (weekly) optimization. Reference (level-dependent) values are those attached to the end of the week. Water values are reassessed afterwards, for each hour, on the basis of relevant time and level. -
Documentation: updated reference guide
-
Documentation: updated optimization problem formulation (modelling of hydro pricing options)
-
Usage metrics: added reference key for this version
-
Output file "mc-all/grid/digest.txt": replaced "NaN" values by zeroes, where appropriate
-
Output file "mc-all/grid/digest.txt": replaced "0" values by N/A, where appropriate (especially, hydro reservoir-related variables, when the "reservoir management" area attribute is set to "No")
-
Output GUI: fixed a display bug regarding missing items in the "links" panel, in the case where simulation parameters are set so as not to produce synthetic results
-
Links GUI: improved integrity control regarding hurdle costs. Negative values are allowed in either direct or indirect orientation, provided that the sum of both is non-negative
-
General GUI: removed redundant items and renamed option menu "Geographic District" as "Regional District" to avoid confusion with new "Trimming" options
-
Output: when simulation results are trimmed so as not to produce any data for given Areas or Links, avoid creation of empty folders named after said Areas or Links
- Time-series analysis: in "detrended mode", extended perimeter to raw data including periods with no meaningful signal (e.g. solar production at night)
- Hydro-storage modelling: added ability to optimize pumping along with generation in mode "use heuristic target without leeway"
- GPL release: updated companion files (README,...)
- GPL release: updated project Icons
- GPL release: insertion of license headers
- GPL release: translation of comments
- GPL release: removal of license control
- GPL release: code restructuring to separate Antares and Sirius
- Examples library: upgraded and added 16 new examples
- Documentation: updated reference guide
- Documentation: updated map editor guide
- Documentation: updated optimization problem formulation
- Documentation: updated examples library
- Improved code for linux compilation with gcc 7
- Fixed various issues in GUI
- Fixed RHS of constraints generated by the KCG when min and max values of PST settings are strictly equal and constraints are generated for the whole year
- Fixed index in hydro heuristic engine
- Hydro GUI: added scrollbars for correct display on laptops
- Output: improved presentation of results for incomplete calendar-based weeks
- Kirchhoff's constraint generator: fixed several GUI issues
- Districts GUI: improved syntax control
-
Implementation of Kirchhoff's laws (DC approximation), modeling of phase-shifters and representation of passive loop flows (to account for on highly reduced gris): a dedicated Kirchhoff's constraints generator is now available It makes use of both classical input data (impedances) and new input data. Its results are specific binding constraints whose names begin by @UTO-, storable in the INPUT folder after user's validation ("save")
New or modified input data for link L (8760 hourly values): Impedances (moved from col.3 to col.5)(Ohms at ref. voltage U) Loop flow (passive) (MW) Min Tap of phase-shifter (MWOhms/U2 along any AC cycle including L) Max Tap of phase-shifter (MWOhms/U2 along any AC cycle including L) New link parameters (one value) Asset type (AC,DC,Gas,Virtual,Other) : KCG deals only with AC links "account for loop flow" toggle "tune PST" toggle KCG generating directives: Working map to use for generation Calendar to use for constraints activation (relaxation outside) Status of passive loop flow in constraints RHS (included or not) Status or PST settings in constraints RHS (included or not) Auto-check of nodal loop flow balance (activated or not) Definition of the "infinite" to use for constraints relaxation
KCG results: For AC Links involved in the generation process: The KCG sets the values of the two input data toggles related to loop flows and PST settings, in accordance with the current generation directivesIdentification of an optimal (minimum-weight) cycle basis for the formulation of constraints Generation of all relevant constraints (equality, inequalities, with or without relaxation)
-
Reservoir-type hydro and other energy storage facilities: interface, input and output data structure, functionalities, have been completely redesigned. As a consequence, a number of new items (variables & parameters) are introduced in both input and output, while a few input variables are redefined or deprecated:
Deprecated hydro variables: Pmax hydro "min", Pmax hydro "max" Redefined hydro variables and parameters: Hydro-storage time-series : redefined at the daily scale Bounds for Reservoir levels: redefined at the daily scale Res.level initialization date: redefined at the monthly scale New hydro variables and parameters: Input : max daily hydro generating energy max daily hydro pumping energy and power monthly-to-daily inflow breakdown pattern water value (time, level) modulation of max generating power (level) modulation of max pumping power (level) pumping efficiency +many "storage management options" parameters Output: Reservoir level (H.LEV) Water value (H.VAL) Pumping power (H.PUMP) Natural Inflow (H.INFL) Forced Overflow (H.OVFL) Cost of Gen+Pumping (H.COST) Optimization preferences: "Hot/Cold start" (year N may start or not at the final N-1 level)
-
GUI: Districts may now be defined from within the interface (notepad tab connected to the Inspector's clipboard)
-
Time-series generation (solar, wind, load) : increased speed when "high accuracy" option is selected, in the special case where all diffusion processes produce "Normal" variables
-
Example library: upgraded to 6.5 (without extension)
-
Time-series generation: the storage (Input folder) of time-series generated for thermal clusters either in the "disabled" or "must-run" state did not work properly
-
Time-series analysis: when short- and long-term levels defined for auto-correlation assessment are identical, the analyzer now performs a pure exponential fitting
-
Time-series analysis: monthly time-series containing no non-zero value are no longer rejected by the analyzer
-
Output: the link-variable "MARG.COST" was rounded to an integer value (changed to 2 decimal accuracy)
-
Output: added a new file at the root of simulation results, displaying a short summary of the overall system economic performance throughout all Monte-Carlo years
-
Log file: added new info messages on the size of optimization problems
-
Updater (standalone): added new options and improved help messages
-
Expansion mode: presolve stage replaced by hot start
-
Simulation: In the "accurate" Unit Commitment mode, the optimization preference "thermal Clusters Min Up/Down Time" can now be turned to "ignore"
-
Simulation: removed remaining debug traces
-
Simulation: zero-reset on interconnection marginal costs was sometimes missing in optimization final stage
-
Example library : upgraded to 6.1 and extended
- Solver, Simplexe package: Improvement of the Scaling stage (Matrix, right hand side, costs)
- Solver: Light changes in Presolve stage
- GUI and simulation: "binding constraints" objects may now involve not only flows on interconnections but also power generated from thermal clusters. Alike flows, generation from thermal clusters may be handled either on an hourly, daily or weekly basis and may be associated with arbitrary offsets (time-lags expressed in hours).
-
GUI: Binding constraint parameters tables (weights and offsets) are trimmed line-wise so as to fit exactly with the content of the selected working map
-
Solver: strenghtening of the final admissibility check step in the "accurate" commitment mode
-
Solver: Pruning of redundant messages in simulations launched from command line
-
Solver: Removal of misprints in command line help messages
-
Files: Fixed issues (detected as of 6.0.1) regarding storage of thermal time-series files
-
Study Cleaner: Unwarranted removal of the graphic multi-map lay-out could occur when cleaning datasets (detected as of 6.0.0)
-
GUI: The "variable per variable" view of the output files allows to display the power generated by each thermal cluster
-
Simulation: Negative "ROW Balance" is properly included in unsupplied energy allowances
- GUI: The number of system maps that could be stored in a given study was limited to 19. This number is now unbounded.
-
GUI: The list of thermal clusters displayed for a given Area in the current map was sometimes wrongly initialized (Area considered selected though not explicitly clicked on yet)
-
GUI: The order in which binding constraint terms are shown in the "summary" Window could depend on the execution platform used
-
GUI: The Antares study icon could not be properly copied in some circumstances
- Optimization : To help discriminate between equivalent economic solutions, random noises on hydro hourly prices are more regularly spread out (absolute values) in the interval (5 e-4 ,1 e-3)Euros/MWh
- Simulation : The identification of the Monte-Carlo year numbers in which the smallest/greatest values of random variables are reached could be ambiguous when identical results are found for two years ore more.
-
Thermal Time-series generation: Data regarding all thermal clusters are generated and stored in the same way, regardless of their activity status (unabled/disabled). This makes easier to check data consistency
-
Simulation: Upper bounds for spilled power and unsupplied power are actually set to their maximum theoretical value(i.e. if economic conditions make it justified: spill all power or shed all demand) So far, spillage of power that could be absorbed by the local demand was not allowed
-
Simulation: a silent "Expansion" mode has been added to the regular modes "Economy/Adequacy/Draft". The three differences with the "Economy" mode are: a) In "accurate" unit commitment, integrity constraints are relaxed in the core optimization problem. b) Day-ahead reserve is no more subtracted from the initial demand to get back to "standard" conditions c) The values of all optimal criteria are printed in ad hoc files The use of this mode should be restricted to well-designed scripted automatic simulation sequences taking into account the simplifications listed above
-
GUI: A new interface makes it possible to define several views (maps) of the Power System modelled in an Antares study. These maps are meant to give the user the ability to set different layouts in which each Antares Area or Link can be either shown or remain hidden. Accordingly, all input and output data windows can now adapt the information displayed so as to match exactly the content of any given map. Copy/Paste functions have been extended so as to work between different maps of different studies opened in multiple Antares sessions
-
Simulation: Introduction of a flexible multi-threaded mode for the processing of heavy problems: Antares "Monte-Carlo years" can be be distributed on a number of CPU cores freely set by the user. This parameter appears as a new tunable item of the "advanced parameters" list attached to any Antares Study. Five values are available in the [1, N] interval, N being the number of CPU cores of the machine (virtual or physical) Antares is run on
-
License control through the internet: a new system has been developed for accommodating situations where users wish to operate Antares on a large fleet of machines among which a limited set of commercial license tokens can float freely
-
Data organizer: Antares studies often include a great number of files of all sizes, which may take long to process when multiple copies are needed. Likewise, the management of the HDD space required for regular storage of all of the studies involved in a complex study workflow may turn out to be a demanding and heavy task. To save both time and hardware resources, the Antares Data Organizer, now provided as a companion tool to the Antares Simulator, brings the ability to schedule basic data management tasks such as study archiving/expansion (use of a specific compressed format), copy to backup folders, registering of studies and archives in catalogues.
-
Random noises on thermal clusters costs now include the zero-cost "must-run" clusters (as a consequence, noises assumptions do not vary with the cluster status)
-
Fixing an initialization issue that could sporadically affect the minimum number of committed thermal units (+1 or -1 deviation, "accurate" mode only)
- License control : management of SSL certificates encrypted through SHA-256 algorithm
- Fixing a packaging error
-
Results processing: For full "must-run" thermal clusters, the NODU variable could be wrongly assessed in the "accurate" unit commitment simulation mode
-
GUI: when the scenario builder feature is active, saving right after deleting a thermal cluster could result in a partial dataset corruption (references to the deleted object were kept alive in the scenario builder context)
-
Unsupplied energy control: if the actual economic optimization requires it, load shedding is now allowed to occur in areas where the available thermal generation is higher than the local demand (e.g. if local VOLL < local thermal costs)
-
Linear solver, hot starting of weekly problems: in the "fast" unit commitment mode, optimal bases are flushed at the beginning of each Monte-Carlo year. This comes as a pre-requirement for the next versions of Antares, which will be fully multi-threaded
-
Simulation results: code segments processing all variables attached to spatial aggregates, and the variable representing the number of running thermal units on the first hour of the year, were re-written to be compatible with the next versions of Antares, which will be fully multi-threaded
-
No-Load Heat costs and Start-up costs: in the "fast" unit commitment options, the result was slightly below the actual optimal possible cost for some datasets (i.e. datasets in which the thermal cluster coming last in alphabetic order had a minimum stable power equal to zero).
-
Spilled energy control: the three parameters defining how energy in excess should be split between the different possible sources when there is a choice to make can work properly again (feature inhibited in previous 5.0.x versions)
-
License control throughout the internet: all combinations of UTF8 characters can now be used within proxy ids and passwords
-
Economic optimization: in an area where the amount of available thermal power exceeds that of load, the fact that the demand should necessarily be served is locally expressed as a constraint of the optimization problem (LOLE=0)
- Errors occured on loading the "min gen modulation" time-series of thermal clusters
- Better estimate of the number of thermal units dispatched in "fast" unit commitment mode
- Nodal Marginal Prices and Marginal yield on interconnections are now available in "accurate" unit commitment mode
- Binding constraints including offset parameters: unbounded positive or negative values can be used for all classes of constraints (hourly, daily, weekly)
- Crashes occured when the "full must-run status" parameter was set on "true" for thermal clusters
- Removed debug information that should not be displayed in release mode
- The optimization criterion used to assess the hydro energies to generate throughout each month incorporates heavier penalization terms for the 12 deviations from the theoretical monthly targets (formerly, only the largest deviation was penalized).
-
Adequacy mode: fixed a memory allocation bug that forced the post-simulation output files processing to be interrupted
-
In the previous version, additional logs were added. That could lower the simulation performances in some cases. This problem is now solved.
-
GUI, system map: copy /paste of binding constraints could alter the activity status or the names of the duplicated binding constraints in some instances
-
GUI, system map: some conflicts in copy/paste actions were not always properly raised (e.g. attempt to copy three nodes and paste them on two other nodes)
-
Thermal clusters: Improved checking of time-series generation parameters (improper use of a nominal capacity modulation factor lower than the minimum stable power is no longer possible)
-
Thermal clusters: Improved checking of ready-made time-series. If the user-chosen time-series are not consistent with the parameters set in the GUI, warnings are issued in log files
-
Output , LOLD variable: in some instances, the values assessed in "economic" simulation mode and in "adequacy" simulation mode could slightly differ because of sporadic rounding side-effects. rounding convention is now set uniformly to : 0 < X < 0.5 -> (X=0)
-
Output, MISC.NDG and PSP variable: values were not properly edited for the specific category "geographic districts, "year-by-year results"
-
Output, OV. COST, OP. COST, NP. COST variables: values were not properly edited for the last hour of the last day of the simulation
-
Output, File comparison functions: calendar marks were not properly displayed in some views
-
Output, File comparison functions: "Max" operator has been added
-
Optimization: introduction of a new unit-commitment mode based on a MILP approach slower but more accurate than the former one. An option lets the user choose which mode should be used (fast/accurate)
-
Optimization: in "accurate" unit-commitment mode, incorporation of thermal start-up costs and no-load heat costs within the global objective function to minimize. In "fast" unit-commitment mode, start-up costs and no-load heat costs are minimized independently from the main objective
-
Optimization: in both unit-commitment modes, improvement of the inter-weekly start-up strategies (seamless reformulation of the optimization results obtained beforehand)
-
Thermal clusters: definition of separate minimum up/down durations to be used for unit-commitment
-
Thermal clusters: definition of a minimum amount of power (hourly time-series) to be generated by the units of the cluster, regardless of economic considerations (partial must-run commitment)
-
Thermal clusters: start-up cost can now be set from -5000000 to 5000000 (was from -50000 to 50000)
-
Binding constraints: introduction of new "offset" parameters which make it possible to define constraints whose terms can refer to different times (e.g. 2 X(t) - 1.5 Y(t-4) + 3 Z(t+1) <10)
-
Benchmarking: so as to allow transparent comparisons with other software, the user may demand that all optimization problems solved by Antares be printed in a standardized "mps" format along with the values of the optimized criterion.
-
GUI, System map : new button available in the tool bar for centring the map on a (x,y) location
-
GUI, System map : new button available in the tool bar for map trimming around used space
-
Output: In synthetic Monte-Carlo results,year-by-year results and cluster-by-cluster results, Addition of a field "Number of dispatched units" (NODU)
-
License checking: internet proxys for which no login and/or password have been defined can now be used
-
Upgrade to 4.5 format of datasets edited in 4.4 format or lower, in which the "scenario builder" feature was activated: the conversion to 4.5 format could fail sometimes.
-
Start-up and fixed thermal costs: the interpretation of the unit-commitment strategy (starting-up and shutting-down times of each thermal unit) includes the explicit minimization of the total sum of start-up costs and fixed costs (in previous versions, units were called on as late as possible and called off as soon as possible)
-
Various improvements in the linear solver yielding some speed increase in hard cases
-
Control of license validity through the internet (setting up of a dedicated server)
-
Scenario builder: indices not subject to random draws could be mixed up in areas including both "must-run" units and "regular" units (bug circumscribed to the thermal time-series section)
-
Spillage management, when numerous binding constraints are active: an excessive leeway could be observed regarding the level of hydro power allowed to be curtailed
- In the previous version, the average values of interconnection-related variables were multiplied by two and this error was propagated to the standard deviation of the same variables
-
Start-up and fixed thermal costs: the contribution of each thermal cluster to the operating cost is now explicitly displayed in the results (field : "non proportional cost")
-
Load time-series : negative values are now authorized
-
Creation of a thermal cluster : the default value of the NPOMAX parameter is set to 100
-
Hydro energy spatial allocation matrix : values are displayed more clearly in the GUI
-
Copy/paste of nodes : the field "spread on unsupplied energy cost" was not pasted
-
Simplex solver: acceleration regarding the control of the admissibility of the solution in the dual stages. This brings a significant improvement of the calculation time for large problems in which the relative scale of system costs is very wide
-
Identical upper and lower bounds have been set for the absolute values of all non-zero system costs ( max = 5 10^4 Euros/MWh ; min = 5 10^-3 Euros/MWh)
-
Hydro Time-series generation : the GUI did not react properly when forbidden values (negative) were seized for energy expectation and/or standard deviation
-
Unit commitment of thermal plants: the time of the first activation of a plant within a week was not fully optimized
-
Creation of a new binding constraint: the operation needed to be confirmed twice (double click on "create button") and the study had to be "saved as" and reloaded before proceeding further.
-
Time-series analyzer : due to round-off errors, spatial correlation of 100 % (perfectly identical sets of time-series in different locations) could sometimes be casted to 99%. Exact 100% correlations are now properly displayed.
-
Antares licenses can be either static or floating. Floating tokens are managed and distributed by the Flexnet product, version 11.9.
-
Thermal plants time-series generator : availability parameters (outage rates and duration) corresponding to a Mean Time Between Failure (MTBF) < 1 day are now allowed. Though unusual, such sets of parameters may prove useful when it comes to modelling specific situations
-
Thermal plants time-series generator : it is possible to model the duration of each kind of outages as 365-day random arrays instead of 365-day constant arrays. Two parameters are available for the description of the probability distribution function of each component. A first parameter allows to set the variable law to either "uniform" or "geometric". A second parameter allows to set the ratio of the variable standard deviation to its expectation to a particular value
-
Thermal plants time-series generator : The planned outage process is now committed to meet a set of constraints defined by two 365-day arrays (PO Min Nb, PO Max Nb). For every day of each Monte-Carlo year, the actual number of overhauls is kept within the [Min,Max] interval, the exact value being determined by regular random draws based on outage rates and durations
-
As a consequence of the introduction of these new features, Monte-Carlo time-series of available thermal power generated with Antares 4.4 may differ from those generated with previous versions. Though differences may be observed draw by draw, the statistical properties of the generated time-series are strictly preserved when datasets are identical.
-
Hydro storage optimization : when the maximum available power of a given day is not high enough to allow the full use of the daily hydro storage energy credit, the energy in excess is levelled on the other days of the month with a flatter pattern.
- On creation of a new link, the transmission capacity status parameter is set
to
Use transmission capacities
instead ofSet to null
.
- Performance improvements for graphical display of large tables
- The binding constraint data might not be written properly in some cases when the constraint was renamed.
-
Windows only: fixed potential crash which could happen when exiting a simulation in adequacy mode with import of generated time-series
-
Windows only: improved free disk space assessment, which now takes into consideration user- and folder-related quotas
-
The calendar field "year" is now available in the simulation main screen (allows not only simulations from JAN to DEC but also from OCT to SEP, etc.)
-
The attribute "Leap year" is now available in the simulation main screen
-
The attribute "Week" is now available in the main simulation screen (weekly results may be defined not only from MON to SUN but also from SAT to FRI,etc.)
-
Time-series screens: a new function is available for hourly and daily time-series (shift rows until #date#)
-
Linear solver: new version slightly more accurate than the previous one.
Note that when a daily or weekly optimization has multiple equally optimal solutions, the ultimate choice may differ from that of the previous version
-
Reference numbers of the time-series used in the course of a simulation:
When the simulation is based on a user-defined scenario (building mode: custom) and when a printout of the reference numbers of the time-series used in the simulation is asked for (MC scenarios: true), the numbers printed for thermal clusters running under the "must-run" status were wrong -
Interconnection results, marginal costs:
For a congested interconnection whose transmission capacities are not symmetric, and in presence of hurdle costs, a zero could sometimes be delivered instead of the actually expected value -
Districts: when the Monte-Carlo synthesis edition is skipped, the results regarding districts were not accessible via the output viewer.
-
The field "MAX MRG" (last of the nodal results) is now available in the output files
-
The Monte-Carlo synthesis edition can be skipped when year-by-year results are asked for
-
Binding constraints: in the filter available for the weight matrix, removal of redundant options
-
Copy/Paste nodes on the general map: "print status" parameters can now be copied like any other data
-
Upgrade of studies in 3.8 format: negative hurdle costs were not correctly transposed
-
Thermal plants time-series generator: outages lasting N days, starting on day D, were considered as outages lasting N days starting on D+1 (corrected by removal of the one-day shift)
-
Advanced parameters, option "shave peaks" used along with the "weekly" simplex range: the maximum intra-daily hydro storage limit on power could occasionally be overcome during the unsupplied energy levelling process (corrected by a slight lessening of the authorized levelling)
-
Hydro storage energy management : each nodal policy of use can be tuned so as to accommodate simultaneously the net load of several nodes
-
Hydro storage energy modelling : monthly time-series of inflows and reference trajectories for reservoir levels can be used instead of monthly time-series of generated energies.
-
Load shedding strategies : when unsupplied energy is unavoidable, a choice is now possible between two policies : minimize the duration of sheddings or "shave" the load curve.
-
When multiple mathematically equivalent solutions exist a the first order for the economic optimization problem, a choice can be made at the second order between three ramping strategies
-
The simulation mode
Adequacy
is renamedDraft
. -
A new simulation mode
Adequacy
is available. In this mode, all thermal plants are considered as must-run zero-cost units. -
New possibilities are given regarding the filtering of simulation results (selection of nodes, of interconnections, etc.)
-
Automatic spatial aggregation of results is possible through the use of the new "district" object (a district is a sort of macro-node gathering several regions)
-
Nodal costs of unsupplied energy and of spilled energy : a small additive stochastic noise around the reference values can be introduced to help discriminate between theoretically equivalent solutions
-
New version of the dual simplex engine (speed is about twice that of 3.6 version)
-
Economic optimizations now encompass a full week (168 hours) span. Traditional day-long optimizations can still be carried out (ad hoc "preference" parameter)
-
Binding constraints can be defined at the weekly scale in addition to the daily and hourly scales
-
Several other "optimization preferences" are made available to allow the quick examination of variants used in sensitivity analyses
-
A new graphic interface is available for the consultation of all simulation results (except those obtained in draft mode)
-
Extraction of data regarding any given variable from the whole Monte-Carlo year-by-year set of results is now possible
-
New variables are introduced in the economic output files : the overall available dispatchable thermal generation (AVL DTG) and the thermal margin (DTG MRG = AVL DTG - dispatched power)
- The "scenario builder" is now available. With this builder it is possible to define precisely the simulation context (for any given year, random numbers drawn for each kind of time-series can be replaced by user-defined numbers). This feature allows simulations to be carried out in a versatile "What If" mode.
-
Addition of the fuel category "lignite" to the regular options available for the description of thermal plants.
-
Improvement of the presentation of the 365-day arrays "market bid modulation" and "marginal cost modulation".
-
Automatic processing of the inter-monthly & inter-regional hydro correlation hydro energy matrix to meet the feasibility constraints (the matrix has to be positive semi-definite). User should check in the simulation log file that no warning such as : "info : hydro correlation not positive semi-definite : shrink by factor x " appears.
- The names of nodes, thermal clusters and binding constraints can be extended to
128 characters. Authorized characters are :
a-z, A-Z,0-9,-,_, space
-
Two calculations modes are now available (in the "run" window):
"regular": the software tries to hold all simulation data in RAM this mode is faster than the second one when datasets are small but can get dramatically slow when RAM limits are close
"swap" : a dedicated memory management module loads in RAM amounts of data as small as possible. This mode should be prefered to the other when datasets are large.
Note that in "regular" mode, the maximum amount of data loaded is limited by the OS to 2 Go on 32-bit machines, regardless of the memory installed. The integrality of installed memory can be used on 64-bit machines.
-
A new module (time-series analyzer) is available to help set the parameters of the stochastic time-series generators for wind power, solar power and load. The analyzer determines, on sets of historical 8760-hour time-series the relevant parameters for different kinds of random laws (uniform, normal,Weibull, Beta, Gamma), along with a description of the auto-correlation dynamic (two parameters) and a full spatial correlation matrix
-
Improvement of the wind power time-series generator (faster calculations)
-
Introduction of new stochastic time-series generators for solar power and load
-
Introduction of an explicit modelling of wind-to-power curves. As a consequence, wind power time-series can now be generated either through a direct approach (by analysis of historical time-series of power) or through an indirect (more physical) approach, based on the analysis of historical time-series of wind speed
-
Introduction of a new 8760-hour power array for each node, representing the day-ahead reserve that should be made available (either on-site or at distance) to face last-minute incidents and/or forecasts errors.
-
Introduction of so-called hurdles costs on interconnection.
-
Breakdown of monthly hydro storage energy credits in daily credits: The pilot curve is now the net load (i.e. load - all must-run generation) instead of the gross load
-
New functionalities available for datasets management (stucy cleaner, Log file wiewer)
-
New info is given for simulation context (available & required amounts of RAM & HDD space)
- Refer to project development archives (TRAC thread)