Error: Could not find weather forecast for timeslot 361

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Error: Could not find weather forecast for timeslot 361

LampMakr
Hello, I hope you are all safe and healthy,

I tried to run some games using boot files of 2019 games but I got the following error:

Exception in thread "Thread-12" java.lang.Error: Could not find weather forecast for timeslot 361
        at org.powertac.factoredcustomer.DefaultCapacityOriginator.computeForecastCapacity(DefaultCapacityOriginator.java:177)
        at org.powertac.factoredcustomer.DefaultCapacityOriginator.getForecastCapacity(DefaultCapacityOriginator.java:153)
        at org.powertac.factoredcustomer.DefaultCapacityOriginator.getForecastForTimeslot(DefaultCapacityOriginator.java:128)
        at org.powertac.factoredcustomer.DefaultCapacityOriginator.getForecastForNextTimeslot(DefaultCapacityOriginator.java:116)
        at org.powertac.factoredcustomer.DefaultUtilityOptimizer$TariffEvaluationWrapper.getCapacityProfile(DefaultUtilityOptimizer.java:343)
        at org.powertac.common.TariffEvaluator.forecastCost(TariffEvaluator.java:653)
        at org.powertac.common.TariffEvaluator.getDefaultTariffEval(TariffEvaluator.java:644)
        at org.powertac.common.TariffEvaluator.evaluateTariffs(TariffEvaluator.java:338)
        at org.powertac.factoredcustomer.DefaultUtilityOptimizer.evaluateTariffs(DefaultUtilityOptimizer.java:207)
        at org.powertac.factoredcustomer.LearningUtilityOptimizer.evaluateTariffs(LearningUtilityOptimizer.java:73)
        at org.powertac.factoredcustomer.DefaultFactoredCustomer.evaluateTariffs(DefaultFactoredCustomer.java:121)
        at org.powertac.factoredcustomer.FactoredCustomerService.publishNewTariffs(FactoredCustomerService.java:219)
        at org.powertac.tariffmarket.TariffMarketService.publishTariffs(TariffMarketService.java:730)
        at org.powertac.tariffmarket.TariffMarketService.activate(TariffMarketService.java:704)
        at org.powertac.server.CompetitionControlService.step(CompetitionControlService.java:799)
        at org.powertac.server.CompetitionControlService.access$900(CompetitionControlService.java:67)
        at org.powertac.server.CompetitionControlService$SimRunner.run(CompetitionControlService.java:1131)

Thanks in advance
Lampros
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

grampajohn
Administrator
Hello, Lampros -
LampMakr wrote
Hello, I hope you are all safe and healthy,
So far we're fine, but there are plenty of folks who are not.
I tried to run some games using boot files of 2019 games but I got the following error:

Exception in thread "Thread-12" java.lang.Error: Could not find weather forecast for timeslot 361
        at org.powertac.factoredcustomer.DefaultCapacityOriginator.computeForecastCapacity(DefaultCapacityOriginator.java:177)
...
This sounds like a problem with the weather server in Rotterdam. Perhaps Govert could look into it?

In the meantime, if you let me know which 2019 game this happened with, I have all the boot files here and I'll see if I can reproduce your problem.

Stay safe -

John
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

gbuijs
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

grampajohn
Administrator
In reply to this post by grampajohn
Lampros and all -

I have replicated your problem using a randomly-selected boot-data file from the 2019 tournament. I'll let you know when I understand more clearly what's happening. I have opened Issue #1046 to track this problem.

John
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

LampMakr
Hello John
grampajohn wrote
So far we're fine, but there are plenty of folks who are not.
Let's hope everyone will recover soon and return to their loved ones.

grampajohn wrote
In the meantime, if you let me know which 2019 game this happened with, I have all the boot files here and I'll see if I can reproduce your problem.
I tried some random boot files from http://powertac.org/log_archive/PowerTAC_2019_finals.html
The same happens when I run 2018 finals boot files.

I confrim too, your note at Issue #1046 :  the problem does not occur with a freshly-generated boot record.

Thank you,
Lampros
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

grampajohn
Administrator
In reply to this post by LampMakr
Lampros and all -
LampMakr wrote
I tried to run some games using boot files of 2019 games but I got the following error:
This is not working because the boot file contains the start date for the sim, but not the location for the weather data. The default location is Rotterdam, but the boot file I selected from the 2019 finals (game 42) starts in mid-2014. If you try to retrieve Rotterdam data for that date from the weather server you get a 500 error. The Rotterdam data runs through the middle of 2011.

So in general it will not work to run sims using boot records from old tournaments unless you change the simulation base time in the boot record, or set the location to a location for which there's weather data at the base time specified in the boot record.

I hope this helps. It took me a while to see what was happening. I'll see if I can improve the error reporting for this case.

John
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

grampajohn
Administrator
One last note on this issue - the way to use old boot files is to use the corresponding state logs as weather data. The README in server-distribution explains how to do this. I currently have a game running with the current SNAPSHOT server, the game 42 boot file, and the game 42 state log.

I should have thought of this originally; it's been too long since I tried it.

John
Reply | Threaded
Open this post in threaded view
|

Re: Error: Could not find weather forecast for timeslot 361

LampMakr
Thank you,
John