Skip to content

Repository files navigation

UCMatlabToolbox

A Matlab Unit Commitment Toolbox for Future Grid Modeling for Educational and Research Purposes

Aaron Ramsden & Gregor Verbič

School of Electrical & Information Engineering, Faculty of Engineering and Information Technologies, University of Sydney, New South Wales, Australia

About

This package is an educational open-source Matlab and CPLEX-based market modeling toolbox for future grid studies. The market model is based on a unit commitment problem and is suitable for power system analysis involving renewable energy sources and energy storage.

The toolbox includes a simple graphical user interface as well as a suite of input data and case studies that can be simulated without requiring additional files. The software is written in Matlab, with CPLEX as a backend solver. The source code is provided for ease of understanding and modification, which makes the tool suitable for research. The toolbox includes a number of case studies to demonstrate the capabilities of the toolbox, using wind, solar, and demand traces published by the Australian Energy Market Operator.

License

This work is intended for educational and research purposes only. The work is published under the GNU General Public License v3.0.

Attribution

Australian Energy Market Operator (AEMO)

The contents of the folder input_traces/ were sourced from the AEMO. These files are publically available on the AEMO website. These traces and other useful data can be found by looking on the AEMO website under ElectricityPlanning and ForecastingNational Transmission Network Development Plan (NTNDP), and then looking around for databases or supporting material.

M. Gibbard and D. Vowles

The 58-bus network model that is used in some of the case studies that are provided with the UC Matlab Toolbox is based on the network model published in Simplified 14-generator model of the SE Australian power system (Revision 3, June 2010) by M. Gibbard and D. Vowles.

J. Glover, M. Sarma, and T. Overbye

The simple network model that is used in some of the case studies that are provided with the UC Matlab Toolbox is based on a network model published in Power System Analysis and Design, 5th ed. Cengage Learning, 2012 by J. Glover, M. Sarma, and T. Overbye (Chapter 12, Example 12.8).

Kristjan Jonasson

The contents of the folder lib/rgb/ is credited to Kristjan Jonasson and is redistributed under license Copyright (c) 2009. This function was sourced from the MathWorks File Exchange.

A. Novianto, T. Stewart, and T. Perrau

Andreas Novianto, Thomas Stewart, and Thomas Perrau contributed to acquiring and processing the generator and demand data used in some of the case studies that are provided with the UC Matlab Toolbox.

Installation

Matlab Files

All of the required Matlab files are available here on GitHub. The easiest way to install the files is:

  • Click on Clone or downloadDownload ZIP
  • Copy the downloaded folder and all contents into the local MATLAB directory
  • Within Matlab, go to HomeSet PathAdd with Subfolders..., and select the downloaded folder
  • Install Cplex as per the instructions below
  • Type UCGUI in the command window to run the Unit Commitment Matlab Toolbox

Alternatively, clone the repository.

Back-end Solver

A Mixed Integer Linear Programming (MILP) back-end solver is required for the UC Matlab Toolbox.

Cplex

The IBM ILOG CPLEX Optimization Studio is recommended to be used as a back-end MILP solver. Cplex is available to academics and students for free as part of the IBM academic initiative program, more information is available on the IBM website.

Follow the installation instructions provided with the download. A useful tip for Mac users is to change the permission of the installation file to be executable before running it:

  • In the terminal type "chmod +x file.bin" (e.g. "chmod +x cplex_studio123.acad.macos.bin")
  • To run the .bin file (and start the installation process), type "./file.bin" (e.g. "./cplex_studio123.acad.macos.bin")

Detailed installation instructions that may be useful have been publised by Columbia University.

Matlab In-Built Optimisation Toolbox

The Matlab Optimisation Toolbox can be used as an alternative to Cplex. The benefit of this would be that the Matlab Optimisation Toolbox is included in most Matlab installs. The drawback is that the computational time required to perform simulations will significantly increase compared to using Cplex. This may not be an issue for simple models (on the order of 10 busses).

In order to use the Matlab Optimisation Toolbox, the Matlab function UCGUI_cplex_solver.m will have to be modified to use the Matlab function intlinprog.

More information on the Matlab Optimisation Toolbox can be found on the MathWorks website, or by typing help intlinprog in the Matlab command window.

Contribition

Open a pull request if you would like to contribute to this Matlab toolbox.

About

An Open-Source Unit Commitment Toolbox for Future Grid Modeling

Resources

Stars

5 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages