The power-cut is a crucial problem in our campus and engineering building in campus because electricity power point and jacks does not have any protection for electronic devices. In addition to protection, we (at least me and my graduate students) study on swarm intelligence or evolutionary computation methods and they are iterative and sometimes they consumes much more time until the iteration finishes. When any power-cut occurs in the office, the iteration is interrupted and to finish our study takes long time due to power-cut.
Absolutely, if you are not in Turkey, this post does not mean anything for you but if the power-cut is often in your office or campus like me, this post can be useful.
First of all, we implement our algorithm on Matlab platform and it allows saving all the variables and their contents in a external file (.mat). The algorithms are run at least thirty times and statistics of the obtained results are important for us to report them. I assume you code your algorithm on Matlab and use a function (assume that its name is runALL) to iterate it.
To maintain the run of the algorithms (after power-cut)
1. Set your Computer
a) Enter the BIOS after power button of the computer is pushed.
b) Set power options what will be happened after power is on (not power button)
2. Write a code for run_counter (from 1 to 30)
3. Pass this run_counter to the runALL function
4. For the run counter in runALL function, set the initial value of this counter as passing parameter.
5. In the initialization of runALL, load initial value of the variables used in runALL function from an external .mat file.
6. After each run in rulALL function, remove the initial .mat file and save all the variables to the .mat file with same name.
The steps seems as ambiguous but if you are familiar with Matlab, I am sure that this is useful.
Absolute Solution: The Power Cut must not be in a University Campus.