Unit Commitment – Programmazione Dinamica
Quattro centrali dalle seguenti caratteristiche
Pmax
80
250
300
60
Ora
1
2
3
4
5
6
7
8
Carico (MW)
450
530
600
540
400
280
290
500
Pmin
23
60
75
20
BTU/kWh
10.44
9
9,73
11,9
u.m./h
213,00
585,62
684,74
252
Tup
4
5
5
1
Tdown
2
3
4
1
Cstart
350
400
1100
0
Stato iniz
-5
8
8
-6
Ci ( Pi )  k  (i  i  Pi )
C(P)
dC(P)/dP
Gruppo
1
2
3
4
Pmin
Pmax
P
Pmin
Fabrizio Pilo - University of Cagliari
Pmax
P
1
Unit Commitment – Programmazione Dinamica
Stato
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Combinazione
1111
1110
0111
0110
1011
1101
1010
0011
1100
0101
0010
0100
1001
1000
0001
0000
Potenza
690
630
610
550
440
390
380
360
330
310
300
250
140
80
60
0
Lista di merito sul costo
specifico alla potenza
massima
5
12
14
15
0010
0110
1110
1111
Gruppo
3
2
1
4
Cspe,Pcmax
19,74
20,34
23,54
28
300
550
630
690
La lista di merito ci porta ad usare le
quattro centrali nell’ordine indicato.
In ogni stato si cerca di usare al
massimo le centrali più economiche
Fabrizio Pilo - University of Cagliari
2
Unit Commitment – Programmazione Dinamica
1
2
3
4
5
6
7
8
0010
0010
0010
0010
0010
0010
0010
0010
9208
19856
Etichetto con il minimo valore
0110
0110
0110
Tra 19856
e 21223
e 0110
marco 0110
il percorso
0110
0110
0110
1110
1110
1110
9843
20488
32471
1111
1111
1111
10211
20859
32782
0110
Etichetto
con il minimo
valore
1110
1110
1110
1110
Tra 20488 e 20773 e marco il percorso
1110
Etichetto
con il minimo
valore
1111
1111
1111
1111
Tra 20859 e 21144 e marco il percorso
1111
Risolvo per semplicità memorizzando solo i due stati precedenti
Fabrizio Pilo - University of Cagliari
3
Unit Commitment – Programmazione Dinamica

La transizione da 0 a 1 (Carico 450 MW) può essere
soddisfatta solo da tre stati 15, 14, 12
Stato 12


F(1,14)=C(1,12)+Cstart(0,12 1,14)+F(0,12)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (1,14)  
1

4
 300 max 
 150 diff 
 9208

 off

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(0,12 1,12)=0
F(1,12)= 9208
Fabrizio Pilo - University of Cagliari
4
Unit Commitment – Programmazione Dinamica

La transizione da 0 a 1 (Carico 450 MW) può essere
soddisfatta solo da tre stati 15, 14, 12
Stato 14


F(1,14)=C(1,14)+Cstart(0,12 1,14)+F(0,12)
Carico la centrale più economica al massimo e quella meno
economica al minimo
3
2
C (1,14)  
1

4
 300 max 
 125 diff 
 9493
 25 min 

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(0,12 1,15)=350=350
F(1,14)= 9843
Fabrizio Pilo - University of Cagliari
5
Unit Commitment – Programmazione Dinamica

La transizione da 0 a 1 (Carico 450 MW) può essere
soddisfatta solo da tre stati 15, 14, 12
Stato 15


F(1,15)=C(1,15)+Cstart(0,12 1,15)+F(0,12)
Tutte le macchine sono ON, carico la centrale più economica
al massimo e quella meno economica al minimo
3
2
C (1,15)  
1

4
 300 max 
 105 diff 
 9861
 25 min 

 20 min 
Per lo start up devo mettere in
costo il costo di accensione di 1
e 4
Cstart(0,12 1,15)=350+0=350
F(1,15)= 10211
Fabrizio Pilo - University of Cagliari
6
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 12 (passando da 12)


F(2,12)=C(2,12)+Cstart(1,12 2,12)+F(1,12)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,12)  
1

4
 300 max 
 230 diff 
 10648

 off

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,12 2,12)=0
F(2,12)= 10648+9208=19856
Fabrizio Pilo - University of Cagliari
7
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 12 (passando da 14)


F(2,12)=C(2,12)+Cstart(1,12 2,12)+F(1,14)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,12)  
1

4
 300 max 
 230 diff 
 10648

 off

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,12 2,12)=350
F(2,12)= 10648+350+9843=21223
Fabrizio Pilo - University of Cagliari
8
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 14 (passando da 12)


F(2,14)=C(2,14)+Cstart(1,12 2,14)+F(1,12)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,14)  
1

4
 300 max 
 205 diff 
 10930
 25 min 

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,12 2,14)=350
F(2,14)= 10930+350+9208=20488
Fabrizio Pilo - University of Cagliari
9
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 14 (passando da 14)


F(2,14)=C(2,14)+Cstart(1,12 2,14)+F(1,12)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,14)  
1

4
 300 max 
 205 diff 
 10930
 25 min 

 off

Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,14 2,14)=0
F(2,14)= 10930+9843=20773
Fabrizio Pilo - University of Cagliari
10
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 15 (passando da 12)


F(2,15)=C(2,15)+Cstart(1,12 2,15)+F(1,12)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,15)  
1

4
 300 max 
 185 diff 
 11301
 25 min 

 20 min 
Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,12 2,15)=350+0
F(2,14)= 11301+350+9208=20859
Fabrizio Pilo - University of Cagliari
11
Unit Commitment – Programmazione Dinamica

La transizione da 1 a 2 (Carico 530 MW) può essere
soddisfatta da tre stati 15, 14, 12
Stato 15 (passando da 14)


F(2,15)=C(2,15)+Cstart(1,14 2,15)+F(1,14)
Carico la centrale più economica al massimo e quella meno
economica alla differenza
3
2
C (2,15)  
1

4
 300 max 
 185 diff 
 11301
 25 min 

 20 min 
Per lo start up devo mettere in
costo il costo di accensione di 1
Cstart(1,14 2,15)=0
F(2,14)= 11301+9843=21144
Fabrizio Pilo - University of Cagliari
12
Unit Commitment – Programmazione Dinamica

La transizione da 2 a 3 (Carico 600 MW) può essere
soddisfatta da due stati 15, 14 che possono essere
raggiunti dagli stati memorizzati (12,14)
Stato 15 (passando da 14)
Dai calcoli
F(3,14)= 32782 passando da 12
F(3,15)= 32471 passando da 12
Fabrizio Pilo - University of Cagliari
13
Unit Commitment – Programmazione Dinamica




Se uso il metodo enumerativo completo trovo soluzioni più
efficienti;
Ad esempio al livello 3 se potessi fare la transizione da
0110 a 0111 (non prevista dalla lista di merito)
consentirebbe di alimentare i carichi con un costo
complessivo di 32307 contro quello ottenuto con lista di
merito 32472 (risparmio di 165)
Nei periodi successivi il metodo enumerativo trova lo
stesso risultato
Se considero anche i tempi minimi ci può trovare nelle
condizioni di non avere soluzioni accettabili (sono richieste
transizioni impossibili fra i gruppi)
Fabrizio Pilo - University of Cagliari
14
Unit Commitment – Programmazione Dinamica
Il metodo che non considera
i tempi minimi prevede il
distacco tra 5 e 6 del
gruppo 2 che a quel punto
deve stare off per tre ore,
oltre il limite del periodo
considerato
Fabrizio Pilo - University of Cagliari
15
Scarica

Unit Commitment – Programmazione Dinamica