|
@@ -44,7 +44,7 @@ public class StorageProductionController {
|
|
|
for (StorageElement se: storages) {
|
|
|
if(!se.chargeDepleted()){
|
|
|
energyLeftToEnabled = energyLeftToEnabled - se.setStatusAndSetEnergy(
|
|
|
- StorageElement.Mode.EMIT, energyLeftToEnabled / storagesLeft, energyRequiredForPowerplantBlackstart);
|
|
|
+ StorageElement.Mode.EMIT, energyLeftToEnabled, energyRequiredForPowerplantBlackstart);
|
|
|
}
|
|
|
storagesLeft = storagesLeft - 1;
|
|
|
if(energyLeftToEnabled <= 0){
|
|
@@ -91,7 +91,7 @@ public class StorageProductionController {
|
|
|
private double distanceFitness(){//TODO: nicht lieber mit wiederstand?
|
|
|
double distancePenalty = 0;
|
|
|
for (StorageElement ele : storages) {
|
|
|
- if(ele.getStatus().equals(StorageElement.Mode.EMIT)){
|
|
|
+ if(!ele.chargeDepleted()){
|
|
|
if(ele.getStatus().equals(StorageElement.Mode.EMIT)) {
|
|
|
distancePenalty += goodDistance(ele);
|
|
|
}
|
|
@@ -137,7 +137,7 @@ public class StorageProductionController {
|
|
|
private double avgUtilization(){
|
|
|
double totalUtilization = 0;
|
|
|
for (StorageElement ele : storages) {
|
|
|
- if(ele.getStatus().equals(StorageElement.Mode.EMIT)){
|
|
|
+ if(!ele.chargeDepleted()){
|
|
|
totalUtilization += ele.getUtilization(energyRequiredForPowerplantBlackstart);
|
|
|
}
|
|
|
}
|
|
@@ -169,20 +169,20 @@ public class StorageProductionController {
|
|
|
}
|
|
|
|
|
|
private double holdMaxPowerFitness(){
|
|
|
- double couldNotHoldPower = 0;
|
|
|
+ double willNotHoldPower = 0;
|
|
|
for (StorageElement ele : storages) {
|
|
|
if(ele.getStatus().equals(StorageElement.Mode.EMIT)) {
|
|
|
- couldNotHoldPower += maxPowerNextIteration(ele);
|
|
|
+ willNotHoldPower += maxPowerNextIteration(ele);
|
|
|
}
|
|
|
}
|
|
|
- return couldNotHoldPower;
|
|
|
+ return willNotHoldPower;
|
|
|
}
|
|
|
|
|
|
private double maxPowerNextIteration(StorageElement ele){
|
|
|
- if(ele.getStateOfCharge() - ele.getEnergyPerElement() >= ele.getCurrentMaxOutRatio()){//TODO:
|
|
|
+ if(ele.getStateOfCharge() - ele.getChargingRatio() >= ele.getNominalOutRatio()){//TODO:
|
|
|
return 0;
|
|
|
}else{
|
|
|
- return ele.getCurrentMaxOutRatio() - (ele.getStateOfCharge() - ele.getEnergyPerElement());
|
|
|
+ return ele.getNominalOutRatio() - (ele.getStateOfCharge() - ele.getChargingRatio());
|
|
|
}
|
|
|
}
|
|
|
|