-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DO NOT MERGE - FOR EXECUTABLES ONLY RTEi #1190
Conversation
@hugo-antoine-rtei |
I'll remove you as the reviewer now. Not to fill up your outlook with stupid mails. Will let you know when I finish. |
This reverts commit 3c9e642.
4111cae
to
f4461c3
Compare
SonarCloud Quality Gate failed. |
Hi, @hugo-antoine-rtei @flomnes please take a look (Florian volunteered himself). I did lots of testing.
SonarCloud is going crazy cause of the unused variables, functions.. commented-out lines... |
@@ -49,7 +49,7 @@ double calculateQuadraticCost(const PROBLEME_HEBDO* problemeHebdo, int hour, int | |||
else if (problemeHebdo->adqPatchParams->PriceTakingOrder | |||
== Data::AdequacyPatch::AdqPatchPTO::isDens) | |||
{ | |||
priceTakingOrders = problemeHebdo->ResultatsHoraires[area]->ValeursHorairesDENS[hour]; | |||
priceTakingOrders = problemeHebdo->ResultatsHoraires[area]->ValeursHorairesDENS[hour]; // densNew value taken! OK! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Careful, ValeursHorairesDENS[hour] = 0
, see src/solver/optimisation/adequacy_patch_local_matching/adequacy_patch_weekly_optimization.cpp.
priceTakingOrders = problemeHebdo->ResultatsHoraires[area]->ValeursHorairesDENS[hour]; // densNew value taken! OK! | |
priceTakingOrders = problemeHebdo->ResultatsHoraires[pays]->ValeursHorairesDeDefaillancePositive[hour]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm positive we are good here. According to spec:
s0 PTO=DENS not PTO=ENS.
if ValeursHorairesDENS[hour] = 0 function calculateQuadraticCost will just return zero. It will not try to divide with zero.
If you meant that by this point in the code the column DENS is going to be all zeros, It is not the case. Zeros are overwritten for areas inside adq-patch in
src/solver/optimisation/post_process_commands.cpp line 231
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, LGTM
// problemeHebdo_->adqPatchParams->AdequacyFirstStep = true; | ||
// OPT_OptimisationHebdomadaire(problemeHebdo_, thread_number_); | ||
|
||
// never set AdequacyFirstStep to True and skip the islanding optimization |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't need to change the definition of this class (revert all changes).
We made a nice factory method just for that, see file src/solver/optimisation/base_weekly_optimization.cpp. Just return std::make_unique<DefaultWeeklyOptimization>
in all cases (adq patch enabled/disabled), it's much simpler.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I saw that. Nice. I agree it's a proper way to do it.
I just wanted to be sure that AdequacyFirstStep = false. Even though I think I overwritten all the code where AdequacyFirstStep is used.
Also for areas outside adq-patch we need to set zero values for DENS somewhere.
I agree DENS should be initialized to zero somewhere else if just defaultWeeklyOptimization is required.
On TODO list.
We will add a new option to disable the LMR, probably in 8.6. I'll be closing this temporary solution. |
This PR is created to generate executables for the beta-12 version of adequacy patch for Elia.
From Daniel's Email:
What we need now is a beta 12 version as follows
Hence on paper it seems rather feasible to provide us a “beta 12 version on Antares v8.5.0” quite fast since the steps to take are just*