1 / 12

A Simple Unit Commitment Problem

A Simple Unit Commitment Problem. Valentín Petrov, James Nicolaisen 18 / Oct / 1999 NSF meeting. G. G. G. G. G. G. G. G. G. Economic Dispatch (Covered last time).

albert
Download Presentation

A Simple Unit Commitment Problem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A SimpleUnit Commitment Problem Valentín Petrov, James Nicolaisen 18 / Oct / 1999 NSF meeting

  2. G G G G G G G G G Economic Dispatch (Covered last time) • With a given set of units running, how of the load much should be generated at each to cover the load and losses? This is the question of Economic dispatch. • The solution is for the current state of the network and does not typically consider future time periods.

  3. G G G G G G G G G Deciding which units to “commit” • When should the generating units (G) controlled by the GENCO be run for most economic operation? • Concern must be given to environmental effects • How does one define “economic operation”? Profit maximizing? Cost minimizing? Depends on the market you’re in.

  4. Problem Setup • Last meeting we discussed the economic dispatch problem • Now we will see how the unit commitment fits into the general picture • Unit commitment is bound to the economic dispatch • Use similar optimization methods

  5. What is Unit Commitment (1) • We have a few generators (units) • Also we have some forecasted load • Besides the cost of running the units we have additional costs and constraints • start-up cost • shut-down cost • spinning reserve • ramp-up time... and more

  6. What is Unit Commitment (2) • It turns out that we cannot just flip the switch of certain units on and use them! • We need to think ahead, and based on the forecasted load and unit constraints, determine which units to turn on (commit) and which ones to keep down • Minimize cost, cheap units play first • Expensive ones run only when demand is high

  7. How Do We Solve the Problem • If a unit is on, we designate this with 1 and respectively, the off unit is 0 • So, somehow we decide that for the next hour we will have "0 1 1 0 1" if we have five units • Based on that, we solve the economic dispatch problem for unit 2, 3 and 5 • We start turning on U2, U3, U5 • When the next hour comes, we have them up and running

  8. To Come Up With Unit Commitment • The question is, _how_ do we come up with this unit commitment "0 1 1 0 1" ? • One very simplistic way: if we have very few units, go over all combinations from hour to hour • For each combination at a given hour, solve the economic dispatch • For each hour, pick the combination giving the lowest cost!

  9. Lagrange Relaxation (1) • Min f = (0.25 x21+15)U1 + (0.255 x22+15)U2 • subject to: • W = 5 – x1U1 - x2U2 • 0 < x1 < 10 • 0 < x2 < 10 • U may be only 0 or 1

  10. Lagrange Relaxation (2) • L = (0.25 x21+15)U1 + (0.255 x22+15)U2 +l(5 – x1U1 - x2U2) • Pick a value for l and keep it fixed • Minimize for U1 and U2 separately • 0 = d/dx1(0.25x21 + 15 - x1l1) • 0 = d/dx2(0.255x22 + 15 - x2l1)

  11. Lagrange Relaxation (3) • 0 = d/dx1(0.25x21 + 15 - x1l1) • if the value of x1 satisfying the above falls outside the 0 < x1 < 10, we force x1 to the limit. • If the term in the brackets is > 0, set U1 to 0, otherwise keep it 1 • 0 = d/dx2(0.255x22 + 15 - x2l1) • same as above

  12. Lagrange Relaxation (4) • Now assume the variables x1, x2, U1, U2 fixed • Try to maximize L by moving l1 around • dL/dl = (5 – x1U1 - x2U2) • l2 = l1 + dL/dl (a) • if dL/dl > 0, a = 0.2 • if dL/dl < 0, a = 0.005 • After we found l2, repeat the whole processstarting at step 1

More Related