Я здесь с проблемой. мы работаем над чем-то, чтобы оптимизировать конкретную проблему c, но мы не получаем ожидаемых решений. Причина, по которой я обращаюсь к вам за помощью, заключается в том, что мы пытались в течение нескольких дней, не принося удовлетворительных результатов. Ниже я опубликую всю проблему, которая на французском языке, и программу, которую мы уже сделали. Мы благодарны за любую помощь, которую вы можете оказать.
'model Electrardennes
uses "mmxprs", "mmsheet"; !gain access to the Xpress-Optimizer solver and Excel
setparam("XPRS_VERBOSE",true)
setparam("XPRS_MAXTIME",60)
declarations
!SETS
NH=24;
SH=1..NH;
!PARAMETERS
VolAmontMin=500000;
VolAmontMax=8000000;
VolAmontIn=4000000;
VolAvalMin=200000;
VolAvalMax=4000000;
VolAvalIn=3500000;
TurbMax=500000;
PompMax=720000;
FluxMin=36000;
VarMax=576000;
P_A :array(SH) of integer;
P_Prix :array(SH) of integer;
!VARIABLES
x:array(SH) of mpvar; !turbinage
m:array(SH) of mpvar; !pompage
d:array(SH) of mpvar; !délestage amont/aval
b:array(SH) of mpvar; !volume aval
h:array(SH) of mpvar; !volume amont
f:array(SH) of mpvar; !délestage aval/rivière
z:array(SH) of mpvar; !variation turbinage
y:array(SH) of mpvar; !variation délestage amont/aval
v:array(SH) of mpvar; !variation délestage aval/rivière
!Printable Solutions
printx:array(SH) of real;
printm:array(SH) of real;
printd:array(SH) of real;
printh:array(SH) of real;
printb:array(SH) of real;
printf:array(SH) of real;
printz:array(SH) of real;
printy:array(SH) of real;
printv:array(SH) of real;
!OBJECTIVE
MaxProfit:linctr; !OBJ
!CONSTRAINTS
CResAval:linctr;
CResAmont:linctr;
CVarMax:linctr;
end-declarations
! Initialization Data from Excel
initializations from "mmsheet.excel:noindex;elctradennes.xlsx"
P_A as "[Feuil1$B3:Y3]"
P_Prix as "[Feuil1$B4:Y4]"
end-initializations
! OBJ : max profit
MaxProfit := (0.0001*sum(t in SH) P_Prix(t)*x(t) ) - (0.00013*sum(t in SH) P_Prix(t)*m(t) );
! CONSTRAINTS
! Variables domain
forall(t in SH) h(t)>= VolAmontMin
forall(t in SH) h(t)<= VolAmontMax
forall(t in SH) b(t)>= VolAvalMin
forall(t in SH) b(t)<= VolAvalMax
forall(t in SH) x(t)<= TurbMax
forall(t in SH) x(t)>=0;
forall(t in SH) m(t)<= PompMax
forall(t in SH) m(t)>=0;
forall(t in SH) f(t)>= FluxMin
b(23)>=3500000
h(23)+b(23)+P_A(23)=7500000
h(24)=4000000
b(24)=3500000
x(24)=0
d(24)=0
!conservation reservoirs
forall(t in SH) if t=1 then
3500000 +x(t) -f(t) -m(t) +d(t)=b(t)
else CResAval := b(t-1) +x(t) +f(t) -m(t) -d(t) =b(t)
end-if
forall(t in SH) if t=1 then
4000000 +P_A(t) -x(t) -d(t) +m(t) =h(t)
else CResAmont := h(t-1) +P_A(t) -x(t) -f(t) +m(t) =h(t)
end-if
! variation max
forall(t in SH) do
if t=1 then
x(t) +d(t) <= VarMax
else
z(t)= (x(t-1)-x(t))
y(t)= (d(t-1)-d(t))
v(t)=(f(t-1)-f(t))
z(t)+y(t) +v(t) <= VarMax
end-if
end-do
! RUN OPTIMIZATION
maximize(MaxProfit)
! PRINT SOLUTIONS
! Save solutions into constants
forall(t in SH) printh(t) := getsol(h(t));
forall(t in SH) printb(t) := getsol(b(t));
forall(t in SH) printx(t) := getsol(x(t));
forall(t in SH) printm(t) := getsol(m(t));
forall(t in SH) printd(t) := getsol(d(t));
forall(t in SH) printf(t) := getsol(f(t));
forall(t in SH) printz(t) := getsol(z(t));
forall(t in SH) printy(t) := getsol(y(t));
! Print in Excel
initializations to "mmsheet.excel:noindex;elctradennes.xlsx"
printh as "[feuil2$B6:Y6]"
printb as "[feuil2$B7:Y7]"
printx as "[feuil2$B8:Y8]"
printm as "[feuil2$B9:Y9]"
printd as "[feuil2$B10:Y10]"
printf as "[feuil2$B11:Y11]"
printz as "[feuil2$B12:Y12]"
printy as "[feuil2$B13:Y13]"
printv as "[feuil2$B14:Y14]"
end-initializations
end-model'
La soci´et´e Electrardennes g ere un barrage hydro´electrique en Ardennes. Jusqu’
настоящий, самый лучший Джекки, l'ing´enieur de production «Свернуть все вопросы планирования и организации работ». Mais Jacky 's Approche de la Pension и Levcteur Trouve Abovele De Disposer D'un Otil Inmacatika D'Aide a la d´ecision pour effectuer cette planification cruciale pour l’entreprise.
La gestion du barrage hydro-´electrique suit un cycle jour-nuit : l’eau est pomp´ee durant la
nuit lorsque le prix de l’´electricit´e est faible est restitu´ee durant les heures de pointe. Votre
installation comporte deux barrages et donc deux r´eservoirs : le r´eservoir amont et le r´eservoir
aval.
Grˆace
Специальная услуга, очень хорошая оценка и оценка ere qui
alimente l’installation, de la quantit´e des eaux de pluie et de ruissellement : at vous donne en
m
количественная оценка расходов на охрану за пределами США (см. таблицу 1 для примера). Объем запасов до минимума составляет не менее 500 000 м3 и не более 8 000 000 м3, средняя стоимость не менее 200 000 м3 и не более 4 000 000 м3. Vous pouvez a tout instant envoyer un certain flux d’eau du barrage amont vers le r´eservoir
aval via la turbine, et produire une certaine quantit´e d’´electricit´e. La turbine produit 0, 0001
MWh par m3 d’eau et a une puissance maximale de 50MW. Autrement dit, maximum 500 000
m3 d’eau peuvent passer par la turbine en une heure. Vous pouvez ´egalement d´elester de l’eau
sans passer par la turbine.
Vous contrˆolez aussi le flux d’eau qui s’´ecoule du r´eservoir aval vers la rivi
ere a travers le
second barrage (ce barrage ne produit pas d’´electricit´e). Mais vous ne pouvez jamais ass
echer la rivi ere compl
etement: минимальное значение минимальной 10 м3 в секунду. Вы можете найти лучший способ создания водохранилища в сравнении с водохранилищем. La pompe consomme 0, 00013 МВтч в м3 д.д. и неисчислимая максимальная стоимость в 200 м3 в.д. Le le 'elestage и le turinage se font a l’aide de vannes qui ne peuvent se refermer instantan´ement. La variation maximale en une heure est de 576 000 m3/h. Vous connaissez ´egalement
le prix de gros de l’´electricit´e heure par heure (pt est le prix en euros par MWh durant l’heure
t, voir Table 1 pour un exemple).
Votre directeur vous demande de d´evelopper un outil d’aide
a la décision for ’thetablir chaque jour leplan, посвященный операциям помпезности, turinage и d'elestage for le lendemain. Pour aujourd'hui, vous estimez que vous aurez a minuit 3 500 000 m3 d’eau dans le r´eservoir aval
et 4 000 000 m3 d’eau dans le r´eservoir amont. N’oubliez pas que vous devrez continuer votre
activit´e le jour d’apr
es. Nous Supposerons не c Que Les Niveaux D'Eau De Chaque R'e водохранилище (a leur valeur de d´epart (mˆeme valeur
минута). Вы можете сэкономить время и деньги на турбинах или дорогах, начиная с 23 часов и до конца. t 1 2 3 4 5 6 7 8 9 10 11 12 при 50 55 55 50 60 80 100 110 105 100 80 80 пт 25 23 22 20 32 41 80 105 80 65 65 62 т 13 14 15 16 17 18 19 20 21 22 23 24 at 70 70 60 60 50 50 50 45 45 45 45 45 pt 63 70 85 90 91 85 65 50 43 35 31 28 Таблица 1 - «Пример без досье на 24 часа». PS a propos des unit´es : Dans le domaine de la production d’´electricit´e, une puissance s’exprime en M´egaWatt (MW) et mesure la quantit´e d’´energie produite ou consomm´ee par seconde
(et est donc un flux d’´energie). Une quantit´e d’´energie s’exprime en M´egaWatt-heure (MWh)
et correspond
в количественном выражении ie продукция или стандартная установка для установки на подвесную подвеску MW. Вопросы 1. Все, что требуется, - это требование донора и модератора, его решение и решение. 2. Удовлетворение потребностей и преимуществ, а также эффективный инвестиционный вклад в развитие водохранилища. Pouvez-vous l'aider a estimer quelle augmentation serait ad´equate et
выгодно ли? 3. Dans les faits, le rendement de la turine уменьшить линейную пролет c hauteur d'eau dans le barrage. Комментировать переходник для модератора для работы в сети? 4. En pratique, Les pr´evisions de plu ie и ruissellement и de prix horaire de l'´lectricit´e, ne sont jamais Parfaites. Комментировать sugg´ereriez-vous d'utiliser votre outil pour tenir compte de ces вариации в течение длительного времени? Выступая в роли малины, и других, в первую очередь, за критику и справедливость в финале. Вот и все, что нужно для получения информации. Vous devriez ´egalement faire vos propres рекомендации.