Download

System Requirements

Installation

File List

Support

Build Environment

FAQ


MINOPF

A MINOS-based OPF Solver for MATPOWER

by Carlos E. Murillo-Sánchez


MINOPF is a MINOS-based optimal power flow solver for use with MATPOWER, a Matlab power system simulation package. MINOPF is for educational and research use only. It is typically much faster than MATPOWER's other OPF solvers.

When MINOPF is installed, it becomes the default optimal power flow solver for MATPOWER. Documentation on the generalized OPF formulation used by MINOPF can be found in the MATPOWER User's Manual, or by typing help genform at the Matlab prompt. Additional options for MINOPF can be set using mpoption (see help mpoption for details).

MINOS1 is a Fortran-based software package, developed at the Systems Optimization Laboratory at Stanford University, for solving large-scale optimization problems.


Download MINOPF

You will be asked to fill out a brief form the first time you download from this site.

Note: We are required, as part of our MINOS sublicensing agreement, to report the names and e-mail addresses of all MINOPF sublicensees to Stanford.



MINOPF
(current version is 3.2)

Pre-compiled versions are available for Linux, Mac OS X and Windows.

As of Apr 10, 2008, there is a new build for Intel Mac which should eliminate the crash-Matlab-after-10-minutes-of-use issue caused by a compiler bug.

Terms of Use

  • MINOPF is free of charge.
  • The use of MINOPF under this license is restricted to non-commercial education/research use with MATPOWER only. Commercial use requires licensing MINOS directly from Stanford.
  • We make no warranties, express or implied. Specifically, we make no guarantees regarding the correctness MINOPF's code or its fitness for any particular purpose.
  • Any publications derived from the use of MINOPF must acknowledge MINOS. (Please cite: B. A. Murtagh & M. A. Saunders, "MINOS 5.5 User's Guide", Stanford University Systems Optimization Laboratory Technical Report SOL 83-20R.)
  • MINOPF may not be redistributed. Each user must obtain it directly from the MINOPF web site. As part of our MINOS sublicense agreement we are required to report names and e-mail addresses of MINOPF sublicensees to Stanford.
  • MINOPF may not be modified or reverse engineered.

System Requirements

To use MINOPF you will need:

  • Matlab version 6 or later
    • Windows builds may require Matlab 7.3 or later
  • MATPOWER version 3.2 or later
  • BPMPD_MEX (needed only to precondition problem if initial OPF fails)

Installation

  1. Unzip the downloaded file.
  2. Place the files in a location on your Matlab path.

What's New in Version 3.2

Below is a summary of the changes since version 3.0.0 of MINOPF. See the CHANGES file for all the gory details.

New features:

  • new generalized cost model
  • piece-wise linear generator PQ capability curves
  • branch angle difference constraints
  • simplified interface for specifying additional linear constraints
  • ability to specify initial value and bounds on user variables z
  • access to all constraint shadow prices
  • support for new (v. 2) case file format
  • printing of version info unless MNS_VERBOSITY is 0
  • handling of multiple reference buses

Bugs fixed:

  • No longer trust return codes 9 and 13 as being successful.
  • Phase shifters shifted the wrong direction.
  • Improved initialization of basic/superbasic variables and increased the allowed size for the reduced Hessian.
  • Fixed bug in calculation of cost gradients.
  • Linear constraint coefficients below the theta, V columns of nonlinear Jacobian would unsynchronize Jacobian elements order.

INCOMPATIBLE CHANGES:

  • User supplied A matrix for general linear constraints in OPF no longer includes columns for helper variables for piecewise linear gen costs, and now requires columns for all x (OPF) variables.
  • Changed the sign convention used for phase shifters to be consistent with PTI, PowerWorld, PSAT, etc. E.g. A phase shift of 10 deg now means the voltage at the "to" end is delayed by 10 degrees.

File List

CHANGES A detailed change history, with Unix line endings
CHANGES.txt A detailed change history, with DOS line endings (for Windows users)
minopf.m Help for the MEX file
minopf.mexglx MEX file for Linux
minopf.mexmac MEX file for Mac OS X (PowerPC)
minopf.mexmaci MEX file for Mac OS X (Intel)
minopf.mexw32 MEX file for Windows
minopfver.m Prints or returns version information
mopf.m Top level OPF routine which sets up the problem and calls minopf()
README The README file with Unix line endings
README.txt The README file with DOS line endings (for Windows users)
sqppf.m Called by mopf to precondition the problem if minopf() has trouble initially

Support

Questions about MINOPF can be addressed to Carlos E. Murillo-Sánchez via the MATPOWER mailing list.


Build Environment

Linux built Wed, Aug 15, 2007
  VMware Fusion 1.0 VM on MacBook Pro
Red Hat 7.3 (Linux kernel 2.4.18)
Matlab 6.5.1 (R13sp1)
gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
g77 version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
(from FSF-g77 version 0.5.26 20000731 (Red Hat Linux 7.3 2.96-110)
Linux R2007+ built Thu, Sep 20, 2007
  Dell Optiplex G260, Intel Pentium 4, 3.06 GHz
Red Hat Enterprise Linux 4 (Linux kernel 2.6.9)
Matlab 7.5 (R2007b)
gcc version 3.4.6 20060404 (Red Hat 3.4.6-8)
g95 - gcc version 4.0.3 (g95 0.90!) Jul 27 2006
Mac OS X built Wed, Aug 15, 2007
  PowerBook G4, 1 GHz
Mac OS X 10.4.10 (Tiger)
Matlab 7.2 (R2006a)
gcc version 4.0.1 (Apple Computer, Inc. build 5367)
GNU Fortran (GCC) 3.4.3  (installed via fink: g77 3.4.3-1)
f2c (version 20030320)  (installed via fink: f2c 20030428-2)
Mac OS X (Intel) built Thu, Apr 10, 2008
  MacBook Pro, Intel Core 2 Duo, 2.33 GHz
Mac OS X 10.5.2 (Leopard)
Matlab 7.6 (R2008a)
gcc version 4.3.0 (GCC)
gfortran - part of gcc-4.3 installed via fink
Windows built Fri, Sep 14, 2007
  Parallels Desktop 3.0 VM on MacBook Pro
Windows XP Pro, SP2
Matlab 7.5 (R2007b)
Microsoft Visual Studio 2005 Pro, SP1, Version 8.0.50727.762
Intel Visual Fortran 10.0.027

Frequently Asked Questions

Q: Why am I getting the following error when running on Windows?
Invalid MEX-file 'C:\minopf3.2_w32\minopf.mexw32': This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.

A: You need to install the latest Microsoft Visual C++ 2005 Redistributable, available from:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=200b2fd9-ae1a-4a14-984d-389c36f85647


1MINOS is a trademark of Stanford University and is copyright © 1983-1998 by Stanford University.


PSERC Logo MINOPF
Copyright © 1997-2007 PSERC
Fri, Sep 21, 2007