| 1 | = How to use the !HiveEngine = |
| 2 | |
| 3 | To use the !HiveEngine you need the assemblies found in source:/branches/HeuristicLab.Hive-3.4/binaries/HeuristicLab.Hive.ExperimentManager-3.4.zip . Just as explained in [wiki:HiveHowTosUseHiveForOptimization] you must enter your credentials before you can use it. When you start HL and open an algorithm you can choose the !HiveEngine at the engines-tab. |
| 4 | |
| 5 | The !HiveEngine parallelizes child-operations from !UniformSubScopesProcessor-operations where the Parallel flag is set to true. The [wiki:Genetic Algorithm] for example is pre-configured to parallelize the solution evaluation of all individuals. If the !HiveEngine is used for such a genetic algorithm every time a new !UniformSubScopesProcessor-operator is executed (the solution evaluation) a new HiveExperiment is created: |
| 6 | |
| 7 | [[Image(HiveEngine.png, width=700)]] |
| 8 | |
| 9 | A job is created for every child-operation (= one solution evaluation). The jobs are uploaded and executed in the Hive. When all jobs are finished the scopes of the resulting operations are copied back into the original operations and the algorithm continues. The !HiveExperiment is deleted after it finished. The runtime-information about previous !HiveEngine runs is still available after those !HiveExperiments are deleted online. However they are not stored when the algorithm is stored. Every time a new !UniformSubScopesProcessor-operator is executed this process repeats. |
| 10 | |
| 11 | [[Image(HiveEngine2.png, width=700)]] |
| 12 | |
| 13 | When the algorithm is paused or stopped, the current !HiveEngine run is deleted. When resume is hit a new !HiveEngine run is created, so pausing results in the loss of all currently calculating jobs. |