A Reinforcement Learning Model to Assess Market Power Under Auction Based Energy Pricing Vishnutej - ShinMyungJae/A-Reinforcement-Learning-Model-to-Assess-Market-Power-Under-Auction-Based-Energy-Pricing---Vishnutej GitHub Wiki
-
Market Power :
* seller가 가격을 유지하기위한 능력. * Participants 의 market power (MP)는 electric power market의 규제 완화의 주요한 개념중에 하나 * market design의 타고난 특성 혹은 operational parameter들을 통해서 명시되는 요소들에서 도출해 낸다. * Design parameter들은 market rules (capacity, price caps, ..), pricing and settlement mechanism( type of auctions ,... ) and demand side bidding 등이 있다. * Operational parameter들은이용가능한 generation technologies의 size와 type들을 의미하며 핵, 석탄,가스 하이드로 등이 존재 한다.
-
Daily operation of a day-ahead (DA) electricity market with competing market participants and random demand realizations 는 nonzero-sum stochastic games로 연구되어진다.
-
nonzero-sum stochastic game들은 competitive Markov Decision Procesess (CMDPs)로 모델링
-
이 논문에서는 CMDP model을 DA energy market에 적용하여 prices 와 quantity 가 multi-unit auction에 따라서 결정되는 시장에 반영 하였다.
-
CMDPs 해결을 위한 정확한 통계학적 솔루션을 얻는 방법이 없음으로 reinforcement-learning 기반접근으로 computation 측면에서 실현 가능한 정답에 근사한 답을 제시하는 방법을 사용한다.
-
Stochastic game에서 가장 중요한 기준은 "Reward Mechanism"이다.
* Discounted Reward * Average Reward * Total Reward
-
DA market에서는 bid를 통한 reward가 day안에 결정이 나므로 "average reward"가 적절한 기준이 된다.
-
reward의 기준은 "Stochastic game의 Nash equilibrium에 중요한 영향을 미친다"
-
Average reward criterion을 사용할 때는 nonzero-sum game에서 언제나 equilibrium이 존재한다. 그러나 이것은 "irreducible game"과 같은 특정 상황에 한정된다.
-
DA energy market에서의 Markov chain은 irreducible하다. bidding 전략의 어떤 조합에 대해서도 DA market의 모든 state들은 ergodic class를 형성한다.
[GAME THEORETIC MODEL FOR DAY-AHEAD ENERGY MARKET]
- DA market에서는 multiple generator들이 network에 power를 공급하기 위해서 bidding 을 수행한다.
- t day에 generators는 t+1 day를 위한 bidding을 수행한다.
- t-1 day의 system state로 구성된 actual load 와 price 는 t+1 day의 bidding을 위해 사용된다.
- (forcasted load condition, price, quantity bid)를 사용해서 "optimal power flow (OPF)"는 "least cost dispatch quantities 와 bus prices"를 결정합니다.
[MARKOV CHAIN AND CMDP MODEL]
- B :: the set of buses in network. B(s) 는 supply buses 의 subset
- N(i) :: B(s) 의 supply bus i 에서의 generator의 수
- M :: network 내의 loads의 수
- G(i) :: supply bus i 의 generators set 으로 {1, ... , N(i)}
- L = :: network 내의 loads 의 set 으로 {1, ..., M}
- System state for the t day 는 X(t) 로 표기하며, vector of load q(t), price p(t) 이다. 즉, X(t) = {q(t),p(t)}
- loads와 price들의 possible values 의 range는 Q와 P로 나눈다.
- System state space 24는 day의 hours를 의미한다.
- 이 논문의 모델은 Q와 P를 model accuarcy에 따라 조절할 수있으나, accuracy와 computation needs에 따라 적절하게 조절하는 것이 필요하다
- DA market의 state transition 을 위한 stochastic process는 로 표현된다.
- 이 논문의 machine learning based solution approach 는 simulation model을 사용한다. 이런 simulation based model은 auction-based pricing과 OPF-based dispatch를 위한 solution methods들을 쉽게 통합한다.
- 그러므로, 복잡하게 state transition probability를 계산할 필요가없다.
- well-defined simulation-based machine learning approach가 stochastic decision-making problem을 효과적으로 풀 수 있음을 보여준다.
- t day에서의 bid decision vector 는
- generators에 의해 bid parameters의 daily selection이 이루어지는 것을 stochastic bidding process에 포함시킨다.
- decision process로써 이 stochastic process를 나타낸다.
- D(t) 는 t day에 선택된 decision vector
- D(t)_l 은 비협조적인 방법으로 generator들에 의해서 결정되므로, bidding 시나리오 joint process X and D 는 stochastic game으로 모델링된다.
- 그리고 이 모델이 CMDP 모델이다.
- CMDP 는 game 참여자들의 bid로부터 reward드들을 계산하는 것을 요구한다.
- t day의 bidding decision 을 위한 reward는 t+1 day의 price 와 quantity 로부터 결정된다.
[CALCULATION OF REWARDS BY SOLVING OPTIMAL POWER FLOW PROBLEM]
- Reward는 generators들이 market에서 얻는 (price X quantity supplied) 가 된다.
- Price 와 Quantities at bus 는 network의 OPF solution에 의해 결정된다.
- Network 내에 1개 이상의 generator를 가진 경우, price는 auction 결과와 supply quantities에 의해서 영향을 받게 된다.
- nonlinear OPF model의 iterative solution은 supply allocation을 minimize the cost를 하는 방향으로 결정한다.
- 그러나 이런 minimize cost는 auction 전략에 따라 달라지므로, OPF 와 auction 은 같이 고려되어야 한다.
- 이 논문에서는 AC-OPF로 active power demand ( 실질적인 power에 대한 수요 )를 충족시키는 total cost를 minimize하는 것을 모델로 한다.
- 는 bus j 에서의 clearing price ( Auction 알고리즘의 payment )가 된다.
- 는 bus j 에 allocated된 supply quantity는 generator들에게 bid prices에 기반하여 나누어 진다.
- 모든 generator들은 자신의 bid 값을 가지므로 OPF objective function이 아래와 같이 변할 수 있다.
[CMDP MODEL SOLUTION STRATEGY]
- RL-based approach는 simulation model을 사용하여 transition probability matrices 대신 dynamics system을 다룹니다.
- Simulation model은 random variable의 probability distribution을 상대적으로 쉽게 구해낼 수 있다.
- 그러나, diffusion wavelet-based function approximation과 같은 RL의 확장성을 증가시키기 위해 연구되고 있다.
[OVERVIEW OF RL APPROACH]
- 기본적으로 RL은 "Bellman equation" 과 "stochastic approximation theory"로 구성되어 있다.
- 어떤 learning model 이든지 아래의 4가지 요소를 가지고 있다.
- system envirionment
- learning agent (market participants)
- set of actions for agent (action space)
- system response (participant rewards)
- 3개의 participants가 존재하는 market을 가정해본다.
- Decision-making epoch에서 system state 가 s 일때, 3 개의 참여자들은 각자 action 하나를 action space에서 선택한다.
- 참여자들의 action에 의해 system의 state 는 s' 가 된다.
- 참여자들의 action 집합 vector (a0와 resulting state transition froms s to s' 로 인해 참여자(agents)들은 reward를 얻는다.
- 이때 reward 는 r( s, a , s') 로 표기한다.
- reward를 바탕으로 learning agents들은 reinforcement value 인 R-value를 사용해서 ( s , a )에 대한 정보를 업데이트한다.
- R-value를 업데이트할 때 learning rate를 사용해서 slowly하게 update가 이루어 지도록 한다.
- 이 결과로 인해 agent들은 state에서 R-value에 따라 action을 선택하며, 다른 action을 선택하며 학습 할 수 있도록 "exploration rate"를 사용해서 learning step을 구성한다.
- learning step이 진행됨에 따라 learning rate와 exploration rate는 점점 사라지는 decay 방식을 사용한다.
- 위와 같은 학습 과정에서 R-value가 converge(수렴)하게 되면 각각의 agent들을 위한 stable bidding policy를 찾기위해서 R-value가 사용됩니다.
[AVERAGE REWARD RL ALGORITHM FOR CMDP MODEL]
- 논문에서 제시하는 framework는 2가지 layer를 가지고있다.
- outer layer는 learning을 수행, inner layer는 auction과 AC-OPF procedure를 수행한다.
- DA energy market을 위한 parameter들을 초기화 한다.
- System state는 t - 1 day의 demand 와 price를 이용해서 예측된다
- 기존의 R-value를 따라서 generators (agents) 들은 bid decision을 수행한다.
- actual DA demand는 auction-OPF program으로 보내지는 bid decisions에 따라 simulated 된다.
- OPF solution으로 얻어지는 least cost dispatch에 대응되는 price 와 quantities 는 각 generator(agent)의 reward calculation으로 보내진다.
- generator에서 계산된 reward에 따라서 agent들은 자신의 R-value를 업데이트 한다. R-value가 수렴하지 않았다면 (2)번으로 복귀 한다. 만약 수렴한다면 (7)번으로 진행한다.
- R-value는 더이상 업데이트 되지 않고 학습된 R-value에 의거하여 행동을 수행한다
- learnt phase의 완료는 average rewards for each generator를 생산한다.