信頼度制約を考慮した 設備起動停止問題

起動停止問題の研究
発表者
指導教員
西堀 俊輝
椎名 孝之 准教授
0841115
1. 研究背景
1. 研究背景
本論文では、
発電機の電力供給への関与を決定する発電機起動
停止問題(UC: unit commitment)を扱う。
• 電力系統におけるスケジューリング問題
• 各時間帯に与えられた電力需要を満足するよう
に各発電機のon/off、発電量を決定
1
1. 研究背景
発電機起動停止問題
需要曲線
MW
出
力
出
力
on
on
on
on
on
on
off
off
on
on
on
off
従来の方法では各発電機の連続稼働不可を考慮し
ていないため、連続稼働させると故障する可能性が
ある。
2
2. 研究目的
2. 研究目的
本論文では、
連続稼働不可制約を考慮した起動停止問題の
数理計画モデルを提案する。
連続稼働させると故障する可能性があること
から新たに連続稼働不可制約を加えたときの
費用の変動を測定する。
3
3. 研究方法 - 1. 数理計画法による数理モデル化
3. 研究方法
1. 数理計画法による数理モデル化
• 連続稼働不可制約を考慮した起動停止問題モデル
として問題(UC)を示す。
•パラメータ名
•パラメータについての説明
パラメータI
パラメータT
パラメータi
パラメータt
パラメータdt
決定変数uit
決定変数xit
パラメータτ
パラメータQi, qi
パラメータLi, li
関数fi(xit)
関数gi (ui t-1, uit)
設備数
期間数
設備を指定するインデックス変数
時間を指定するインデックス変数
tにおける電力需要
iのtにおける起動停止状態
iのtにおける出力量
連続稼働制約の終了時間
iの最大出力量、及び最小出力量
iの連続稼働制約期間、及び連続停止制約期間
iのtにおける出力量から出力費用を出力
起動状態の変化から起動費用を出力
4
3. 研究方法 - 1. 数理計画法による数理モデル化
I
T
(UC): min  
i  1t  1
(目的関数)
I
subject to:  xit
(第1制約) i 1
(第2制約)
(第3制約)
(第4制約)
(第5制約)
I
T
g i ( ui, t 1, uit )   
i  1t  1
f i ( xit ) uit
d t ,t ,
uitui,t 1ui , t 1 ,...,min{ t  Li 1,T}, i, t 2,...,T
ui,t 1uit1ui , t 1 ,...,min{ t l i 1,T} i, t 2,...,T
qi uit xitQi uit,uit{0,1}, i,t,
si
 ui,t tt si
tt 0
•目的関数・・・起動費用と出力費用の総和をコストとし、最小化することが目的。
•第1制約・・・出力の総和が時間tの電力需要dtを満たすための条件。
•第2制約・・・発電機iは一旦起動したらLi時間連続で運転しなければならない。
•第3制約・・・発電機iは一旦停止したらli時間連続で停止しなければならない。
•第4制約・・・発電機の出力の上下限を与える。
•第5制約・・・連続で稼働させられる時間を制限する。
5
3. 研究方法 - 1. 数理計画法による数理モデル化
連続稼動制約・・・一旦起動したら一定時間以上継続
設備i
off
on
on
時間t
on
on
off
Li
t
t+Li-1
連続停止制約・・・一旦停止したら一定時間以上継続
設備i
on
off
時間t
off
off
on
on
li
t
t+li-1
起動費用処理・・・設備が停止状態から起動した際にコストが発生
設備i
1900
1340
0
0
off
0
on
1900+2000
時間t
fit
コストgiが発生
6
3. 研究方法 - 1. 数理計画法による数理モデル化
連続稼働不可制約・・・発電機iが連続して稼働でき
る時間の上限をSiとし、Si時
si
間以上連続で稼働させられ
 ui,t tt si
tt 0
なくする。
off
設備i
on
on
時間t
on
Si
on
設備i
off
on
off
off
off
off
t+Si-1
t
on
on
on
時間t
Si
t+Si-1
t
on
設備i
on
時間t
t
on
Si
t+Si-1
off
7
3. 研究方法 - 2. AMPLによるプログラム化
2. AMPLによるプログラム化
•数理計画モデル
パラメータI
パラメータT
パラメータi
パラメータt
パラメータdt
決定変数uit
決定変数xit
パラメータτ
パラメータQi, qi
パラメータLi, li
関数fi(xit)
関数gi (ui t-1, uit)
•プログラムモデルにおける表現
param N
param T
(インデックス変数は宣言しない)
(インデックス変数は宣言しない)
param d{t in 1..T}
var u{i in 1..N, t in 0..T} binary
var x{i in 1..N, t in 1..T} >=0
param xmin{i in 1..N}; param xmax{i in 1..N}
xmin[i]*u[i,t] <= x[i,t]
uptime{i in 1..N}, downtime{i in 1..N}
(a[i]*x[i,t]*x[i,t]+b[i]*x[i,t]+c[i])
f[i]*v[i,t]
8
3. 研究方法 - 2. AMPLによるプログラム化
目的関数:目的式
minimize cost: sum{i in 1..N, t in 1..T}
(a[i]*x[i,t]*x[i,t]+b[i]*x[i,t]+c[i])+sum{i in 1..N, t in
1..T}f[i]*v[i,t];
第1制約:需要処理関数 subject to demand{t in 1..T}: sum{i in 1..N}x[i,t] >=
d[t];
第2制約:最小出力制約 subject to minoutput{i in 1..N, t in 1..T}: xmin[i]*u[i,t]
<= x[i,t];
第3制約:最大出力制約 subject to maxoutput{i in 1..N, t in 1..T}: x[i,t] <=
xmax[i]*u[i,t];
第4制約:連続稼働制約 subject to minup{i in 1..N, t in 2..T, s in
0..min(uptime[i]-1,T-t)}: u[i,t]-u[i,t-1] <= u[i,t+s];
第5制約:連続停止制約 subject to mindown{i in 1..N, t in 2..T, s in 0..
min(downtime[i]-1,T-t)}: u[i,t-1]-u[i,t] <=1- u[i,t+s];
第6制約:起動費処理関数 subject to uv{i in 1..N, t in 1..T}: u[i,t]-u[i,t-1] <= v[i,t];
第7制約:第0列の初期化 subject to uv2{i in 1..N}: u[i,0] == 0
subject to kinshi{i in 1..N, t in 1..T-teishi[i]}: sum{tt in
第8制約:
0..teishi[i]}u[i, t+tt] <=teishi[i];
連続稼働不可制約
9
4. 数値実験と考察
4.数値実験と考察
• 数理計画用モデリング言語AMPLを用いて発電機起
動停止問題のプログラムを実装する。設定条件とし
て、I=3, T=12であるシステムを対象とした。
T=12(12h)
I=3
設備1
300
250
200
設備2
0
200
150
設備3
0
0
100
・・・
(3機)
10
4. 数値実験と考察
出力設備の内訳
• 連続稼働不可制約あり
500
450
• 連続稼働不可制約の条件
に伴い、施設がバランスよ
く稼働している。
400
350
300
250
200
150
100
50
0
1
2
3
4
5
施設1
6
施設2
7
8
9
10
11
12
施設3
• 連続稼働不可制約なし
• ベース需要を受け持つ
施設2は常に稼働し、故
障する要因になる。
出力設備の内訳
500
400
300
200
100
0
1
2
3
4
5
施設1
6
施設2
7
8
9
10
11
12
施設3
11
4. 数値実験と考察
UC
UC1.1
UC1.2
UC1.3
UC1.4
UC1.5
コストの推移
連続稼働不 連続稼働不
可制約あり 可制約なし
uc.run
uc2.run
差額(%)
58571.4
48223.3
1.21
60800
50584.9
1.20
63330.2
56126.7
1.13
66268.2
58618.2
1.13
70501.7
61115.8
1.15
73765.3
63666.7
1.16
• 連続稼働不可制約を与
えたものを上の図と比
較すると、連続稼働不
可制約の値を+1したも
のの方がコストは低くな
る。
UC
UC1.1
UC1.2
UC1.3
UC1.4
UC1.5
• コストの推移を連続稼働不
可制約の有無で比較する
と、連続稼働不可制約を
与えない方がコストは低く
なる。
連続稼働不可制約の値を+1
連続稼働不 連続稼働不
可制約あり 可制約なし
uc.run
uc2.run
差額(%)
55781.3
48223.3
1.16
57928.5
50584.9
1.15
60201.7
56126.7
1.07
62715.8
58618.2
1.07
67598.1
61115.8
1.11
70286.6
63666.7
1.10
12
5. 結論
5. 結論
• 連続稼働不可制約を与えないと起動する施
設にバラツキが生じる。
• これを回避する為に連続稼働不可制約を与
え、バラツキがでないようにした。
• その結果、特定の設備に負担がかかることを
回避することができた。
13