WaterEnergy : 물-에너지 넥서스

참조

  • Alireza Soroudi, 메가 슬롯의 전력 시스템 최적화 모델링, 모델워터에너지(Gcode10.1) 장에너지 시스템 통합, 2017

카테고리 : 메가 슬롯 PSOPT 라이브러리


메인파일 : WaterEnergy.gms

$title 물에너지 넥서스

$onText
자세한 내용은 다음 책의 10장(Gcode10.1)을 참조하세요.
소루디, 알리레자. 메가 슬롯의 전력 시스템 최적화 모델링. 스프링거, 2017.
--------------------------------------------------------------------------------
모델 유형: MINLP
--------------------------------------------------------------------------------
작성자:
알리레자 소루디 박사
IEEE 수석 회원
이메일: alireza.soroudi@gmail.com
우리는 개발된 메가 슬롯 코드를 사용하여 파생된 출판물을 요청합니다.
인용함으로써 그 사실을 명시적으로 인정한다.
소루디, 알리레자. 메가 슬롯의 전력 시스템 최적화 모델링. 스프링거, 2017.
DOI: doi.org/10.1007/978-3-319-62350-4
$offText

세트
   t / t1*t24 /
   나는 / p1*p4 /
   c / c1*c3 /
   w / w1 /;

테이블 gendata(i,*) '발전기 비용 특성 및 한계'
       a b c P최대 Pmin
   p1 0.0002069 -0.1483 57.11 500 0
   p2 0.0003232 -0.1854 57.11 400 0
   p3 0.001065 -0.6026 126.8 400 0
   p4 0.0004222 -0.2119 57.11 350 0 ;

표 부산물(c,*)
       Pmax Pmin Wmax Wmin rmin rmax A11 A12 A22 b1 b2 C
   c1 800 160 200 30 4 9 0.0004433 0.003546 0.007093 -1.106 -4.426 737.4
   c2 600 120 150 23 4 9 0.0007881 0.006305 0.01261 -1.475 -5.901 737.4
   c3 400 80 100 15 4 9 0.001773 0.01419 0.02837 -2.213 -8.851 737.4;

테이블 물데이터(w,*)
       a b c W최대 W최소
   w1 1.82E-02 -7.081e-1 7.374 250 0 ;

테이블 PWdata(t,*)
        PD수
   t1 1250 150
   t2 1125 130
   t3 875 100
   t4 750 150
   t5 950 200
   t6 1440 350
   t7 1500 300
   t8 1750 200
   t9 2000 300
   t10 2250 400
   t16 2500 550
   t17 2125 550
   t18 2375 500
   t19 2250 400
   t20 1975 350
   t21 1750 300
   t22 1625 250
   t23 1500 200
   t24 1376 150 ;

변수 p(i,t), TC, CC, Pc(c,t), Wc(c,t), Water(w,t), WaterCost;
이진 변수 Up(i,t), Uc(c,t), Uw(w,t);
양의 변수 p, Pc, Wc, 물;

p.up(i,t) = gendata(i,'Pmax');
Pc.up(c,t) = 부산물(c,'Pmax');
Wc.up(c,t) = 부산물(c,'Wmax');
Water.up(w,t) = waterdata(w,'Wmax');

방정식
   costThermal, 균형P(t), 균형W(t), 비용Coprodcalc, 목적,
   비용수계산, 비율1(c,t), 비율2(c,t), eq1(w,t), eq2(w,t), eq3(c,t),
   eq4(c,t), eq5(c,t), eq6(c,t), eq7(i,t), eq8(i,t);

costThermal.. TC =e= sum((t,i), gendata(i,'a')*sqr(p(i,t)) + gendata(i,'b')*p(i,t)
                                 + gendata(i,'c')*Up(i,t));
BalanceP(t).. sum(i, p(i,t)) + sum(c, Pc(c,t)) =e= PWdata(t,'Pd');
BalanceW(t).. sum(w, Water(w,t)) + sum(c, Wc(c,t)) =e= PWdata(t,'water');
costCoprodcalc.. CC =e= sum((c,t), Coproduct(c,'A11')*sqr(Pc(c,t))
                               + 2*부산물(c,'A12')*Pc(c,t)*Wc(c,t)
                               + 부산물(c,'A22')*sqr(Wc(c,t))
                               + 부산물(c,'B1')*Pc(c,t)
                               + 부산물(c,'B2')*Wc(c,t)
                               + 부산물(c,'C')*Uc(c,t));
costwatercalc.. WaterCost =e= sum((t,w), waterdata(w,'a')*sqr(Water(w,t))
                                        + 물데이터(w,'b')*물(w,t)
                                        + waterdata(w,'c')*Uw(w,t));
목표.. =e= TC + CC + WaterCost;
ratio1(c,t).. Pc(c,t) =l= Wc(c,t)*부산물(c,'Rmax');
ratio2(c,t).. Pc(c,t) =g= Wc(c,t)*부산물(c,'Rmin');
eq1(w,t).. 물(w,t) =l= Uw(w,t)*waterdata(w,'Wmax');
eq2(w,t).. 물(w,t) =g= Uw(w,t)*waterdata(w,'Wmin');
eq3(c,t).. wc(c,t) =l= Uc(c,t)*부산물(c,'Wmax');
eq4(c,t).. wc(c,t) =g= Uc(c,t)*부산물(c,'Wmin');
eq5(c,t).. Pc(c,t) =l= Uc(c,t)*부산물(c,'Pmax');
eq6(c,t).. Pc(c,t) =g= Uc(c,t)*부산물(c,'Pmin');
eq7(i,t).. p(i,t) =l= Up(i,t)*gendata(i,"Pmax");
eq8(i,t).. p(i,t) =g= Up(i,t)*gendata(i,"Pmin");

모델 DEDcostbased / all /;
minlp min을 사용하여 DEDcostbased를 해결합니다.