In order to be able to simulate the Nord Pool market, amethod should
to beused that can, given thecorrect data, calculate the prices,
produc-tion,consumption, export andimport for each market. With such atool
developed, adeviation from the production cost function can be used to
simulatemarketpower.
12.1.1 Eltra's method
Eltra has developed aprogram to calculate the correct market prices on
eachmarket,givencertaindemandandsupplycurves.Eltrapresentsthisas
anintegeroptimizationproblem,wherethetotalsocialsurplusisoptimized.
This surplus is composed of producer surplus, consumer surplus and the
gridorthebottlenecksurplus. Thegridsurplusistheprotderivedfrom
buying aunit of electricityfrom acheap market and selling it to amore
expensiveoneandisadministratedbytherelevantsystemoperators. This
maximizationprovidesthecorrectresultsassellingaunit totheonewho
is ready to pay the most for it, is always optimal and gives the correct
quantityofnetexport andimport,giventhetransmissionlimitations.
Example12.1 If aunitwith aproduction costof NOK190 couldsatisfy
aSwedish buyer ready topay NOK 200, the combinedconsumer and
pro-ducersurplus fromthat sale would beNOK 10. However, ifinsteadof the
Swedish buyer, a Norwegian buyer would be ready to buy that unit for up
toNOK 220, the consumersand producer surplus withthe additionof the
grid surpluswouldbe 30.
Thus,ifthecheapestpowerunit,fromallthemarkets,isalwaystakenand
soldto thebuyer whois ready to paythe mostfor it and is ablebuy it,
giventhatthiscanonlyhappenwhenthereisadirectconnectionbetween
markets, we will end up with the optimalsolution. This may sometimes
meanthat units willbereturned when thenextunit issold from market
AtomarketB,ifBhadpreviouslybeenthenetexportertoA.
ThebeautybehindEltra'sapproachisthatforeachmarket,duetothe
sup-ply and demand functions,the correct surpluses,given price,import and
export, canalwaysbecalculated. However,thisneedsalittledata
prepa-ration as the cumulative consumers surplus (
CCS
), and the cumulativeproducersurplus (
CP S
)functions,mustbecreated. wecanassumethattheproductioncostofthelastunitproducedwillbeeitherthesameasor
closetothemarketprice. Iftheproductioncostoftherstthreeunitsis1,
2and3respectively,usingtheaboveassumption,thecumulativeproducer
surplusfunctionwouldbe0,1and3(
1 −1, 2 ×2 −(1+2), 3 ×3 −(1+2+3)
).Therecanalsoonlybeapricedierencebetweenareaswheretransmission
is at its maximum, as otherwise there would be the same (or practically
thesame)price.
Therefore,if
t j,i
istheexportfrommarketi
tomarketj, Capacity i,j
isthemaximumexport capacityfrom market
i
toj
,BN S i,j
isthe gridsurplusfromexportingfrommarket
i
toj
andS
andD
respectivelyarethesupply anddemandfunctions:BN S i,j = (D j (x j ) − D i (x i )) × Capacity i,j . . . ∀i, j
(12.4)This is a linear integer problem, with two multidimensional variables,
x
which is theconsumption in each market and
t
which is thetransmission betweenmarkets. Althoughy
ispresentedasavariable,itissimplythesumofthe othertwo. This is,in fact, notEltra'spresentation oftheproblem
butasimpleronetounderstand,althoughbuiltonthesameprinciplesand
requiresmorecomputerpowerfortheoptimization.
Eltrabeginsbycalculatingthepricesand surplusesforeach market when
thereisnointernationaltransmissionandthencreatestheCCSandCPSas
functionsofnetimportorexportaswellasthepricefunction
P
. Therefore,when there is import, CCSincreases but CPS decreases. More
precalcu-lations are required, asdemand and supply must be compared for every
possiblemagnitudeofimport/exportforeach market.
x i = X
Here, there is only a single multidimensional variable,
t
, asx i
, now netexportfrommarket
i
,isonlythesumofsomeoftheelementsoft
.Eltra'salgorithmiswrittenin theoptimization programlanguageGAMS.
12.1.2 IMM's verication algorithm
Toverify whetherEltra's GAMSalgorithm wasgivingthecorrect results
giventhedata, amatlabalgorithmhadbeendevelopedatIMM.
1
As with Eltra's algorithm, the data has to be prepared, and vectors for
supplyanddemand havetobecreated. Thevector'sindex numberis the
volume and the vector's value is the price. Interpolation is used to ll
theover26thousandlongvectorsforeachmarket,whichisthemaximum
volume oered onthe largestmarket,Sweden. Therefore, theproblem is
solveddiscreetlywith each MWh/hasthelowest unit,which seemstobe
satisfactoryasthelowestequilibriumisaround5000MWh/h.
TheIMM'salgorithmsolvedtheproblemin thefollowingsteps:
1. Calculate pricesfor each market by comparing where there is least
dierencebetweenthesupplyanddemand vectors.
2. FindallpossiblelegaltransmissionsofoneMWhfromanymarketto
another.
3. TransferoneMWh fromthe cheapest market tothemostexpensive
marketthancanreceivetransmissionfromit.
4. Repeatfrom step1untilthereisnolegaltransmissionavailable.
The algorithm did conrm Eltra's results, but the calculation time, four
daysforeachtradinghour,onIMM'sserverSunre,madeitratherlimited
toolforanalysis. [27]
12.1.3 Revision
Inordertospeedupthecalculations,ImadesomechangestoIMM's
algo-rithm. Thefollowingaretheforemost:
•
Allowed morethan1 unit to be transmitted eachtime; now the al-gorithmnowusuallybeginswith1000units.•
Usedpointers (asinC++)insteadof changingthelongvectors.•
Exploited thefact that when x units are sent from market A to B,thenewequilibriumislessthanorequaltoxunitsawayfromtheold
equilibrium. Therefore,onlyasmallpartofthesupplyanddemand
vectorshadtobecompared.
1
TheDepartmentofInformaticsandMathematicalModellingattheTechnical
Uni-•
Skipped a numberof unnecessary repeated calculations asprevious resultscouldoftenbekeptandreused.Ialso madeitpossibleto useaunit largerorsmallerthan1MWh asthe
basic unit. However, I do use the 1MWh as the basic unit. Although,
there is not much left of the original algorithm, the four steps listed in
section12.1.2arethereasbefore,exceptthatmorethanoneunitcannow
be transmitted. Afterathorough revision,eachcycle ofcalculationsnow
takesapprox.0.05secondsonSunre,withoutthedatapreparations. This
isaconsiderableimprovementandmakesthisalgorithm thefastest ofthe
three mentionedandwill thereforebeused hereafter. Thenewalgorithm
canbefoundin appendix B.1andhasthefollowingmain steps:
1. Calculate pricesfor each market by comparing where there is least
dierencebetweenthesupplyanddemand vectors.
2. FindallpossiblelegaltransmissionsofoneMWhfromanymarketto
another.
3. Transfer
x
MWh from the cheapest market to the most expensivemarketthancanreceivetransmissionfromit.
4. Repeat from step 1 until no legal transmission available, otherwise
reduce
x
.5. Repeat from step1 until there is nolegal transmission available or