H.10 Version 5.1 – released Mar 20, 2015
The Matpower 5.1 User’s Manual is available
online.
New License
- Switched to the more permissive 3-clause BSD license from the previously used
GNU General Public License (GPL) v3.0.
New Case Files
- Added four new case files, ranging from 89 up to 9421 buses, representing parts
of the European high voltage transmission network, stemming from the Pan
European Grid Advanced Simulation and State Estimation (PEGASE) project.
Thanks to Cédric Josz and colleagues from the French Transmission System
Operator.
New Documentation
New Features
- Added support for using PARDISO (https://pardiso-project.org/) as
linear solver for computing interior-point update steps in MIPS, resulting
in dramatic improvements in computation time and memory use for very
large-scale problems.
- Added support for LP/QP solver CLP (COIN_OR Linear Programming,
https://github.com/coin-or/Clp). Use opf.dc.solver option 'CLP' or
qps_clp().
- Added support
for OPTI Toolbox (https://www.inverseproblem.co.nz/OPTI/) versions of
CLP, GLPK and Ipopt solvers, providing a very simple installation path for
some free high-performance solvers on Windows platforms.
- Network reduction toolbox for creating smaller approximate network
equivalents from a larger original case file. Contributed by Yujia Zhu and Daniel
Tylavsky.
- Added unified interface to various solvers for mixed-integer linear and quadratic
programming (MILP/MIQP) problems.
- Major update to have_fcn(), which now determines and caches version
numbers and release dates for optional packages, and includes ability to toggle
the availability of optional functionality.
- New and updated support for 3rd party solvers:
- High-performance Ipopt-PARDISO solver builds from the PARDISO
Project https://pardiso-project.org (at time of release this is
Matpower’s highest performing solver for very large scale AC OPF
problems)
- OPTI Toolbox versions of CLP, GLPK, Ipopt
- CLP
- Gurobi 6.x
- Knitro 9.1
- MOSEK 7.1
- Optimization Toolbox 7.2
- dual-simplex algorithm for linprog()
- intlinprog() for MILP
- New functions:
- mplinsolve() provides unified interface for linear system solvers, including
PARDISO and built-in backslash operator
- miqps_matpower() provides unified interface to multiple MILP/MIQP
solvers.
- miqps_clex() provides a unified MILP/MIQP interface to CPLEX.
- miqps_glpk() provides a unified MILP interface to GLPK.
- miqps_gurobi() provides a unified MILP/MIQP interface to Gurobi.
- miqps_mosek() provides a unified MILP/MIQP interface to MOSEK.
- miqps_ot() provides a unified MILP interface to intlingprog().
- mosek_symbcon() defines symbolic constants for setting MOSEK options.
Other Improvements
- Cleaned up and improved consistency of output in printpf() for generation
and dispatchable load constraints.
- Modified runcpf() to gracefully handle the case when the base and target cases
are identical (as opposed to getting lost in an infinite loop).
- Optional generator and dispatchable load sections in pretty-printed output now
include off-line units.
Bugs Fixed
- Fixed fatal bug in case_info() for islands with no generation.
- Fixed fatal bug in toggle_dcline() when pretty-printing results. Thanks to
Deep Kiran for reporting.
- Fixed sign error on multipliers on lower bound on constraints in qps_clp() and
qps_glpk().
- Fixed bug in handling of interface flow limits, where multipliers on binding
interface flow limits were off by a factor of the p.u. MVA base.
- Fixed minor bug with poly2pwl(), affecting units with PMAX 0.
- Fixed error in qps_mosek() in printout of selected optimizer when using
MOSEK 7.
- Fixed bug in hasPQcap() that resulted in ignoring generator capability curves
for units whose reactive range increases as real power output increases. Thanks
to Irina Boiarchuk for reporting.
- Fixed several incompatibilities with Matlab versions < 7.3.