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