Optimisation Calculation Options Dialog - General

Calculation Description

The genetic algorithms (GA) used by DesignBuilder require a number of options to control the way that the solutions evolve.

Calculation description

Enter a description for the calculation. This text will be used to identify the results on the graph and any other related outputs.

From

The Start date set up for the base simulation on the analysis screen is displayed but cannot be edited here.

To

The End date set up for the base simulation on the analysis screen is displayed but cannot be edited here.

Optimisation Options

Maximum generations

The maximum number of generations to be used will determine the time and computing resources required to complete the analysis. The value entered here will usually reflect the size and complexity of the analysis. Typical values are in the range 50-500 depending on size of the problem, the population size and whether a Pareto archive is used.

Tip 1: Setting the right number of Maximum generations is not a crucial setting provided you use a large number such as 100 or more.

Tip 2: When seeking accurate optimal outputs and hence using a large value for Maximum generations it can be worth experimenting with higher mutation rates to help avoid early convergence.

Generations for convergence

This option is used to decide when to stop the optimisation simulations. As the optimisation process progresses and most optimum solutions have been identified, less and less new optimal solutions will be found and there comes a point when it's time to stop. At the end of each generation, DesignBuilder checks whether any new optimal solutions were found in the most recent Generations for convergence generations. If so, the simulations continue, otherwise the optimisation process is considered to be complete and results are displayed. It isn't generally possible to be sure that no new optimum solutions wouldn't be found if the optimisation process continued, but this setting offers a simple way to stop simulations once it seems that most have been identified.

 

The default is 5 generations. Enter a higher number to give you the best chance of finding all possible solutions, or enter a smaller number if you are less concerned about finding every possible optimum solution. Alternatively you can enter a very high number (e.g. same as Maximum generations) if you would like to control convergence manually by using the Stop button.

 

When using the JEA optimisation engine, this setting works in conjunction with the Max wall time and Max evaluations settings - whichever limit is reached first will cause the optimisation to stop.

Initial population size

Each generation will include at least this number of designs. The bigger the population size the more different solutions may exist within the same generation. Larger population sizes may be required for problems containing 5 or more design variables or where some variables have many options.

Tip: Initial population size will typically be between 10 and 50 depending on the size of the analysis. For 3 design variables with say 10 options each then choose an initial population size of between 10 and 20. For 10 variables, each with 10 options then choose a value between 20 and 50. Like other settings on this dialog the best values to use for fastest and most reliable convergence will come from experience. In the meantime a value of 20 will work well for most typical applications.

Note: All simulations for a generation must complete before the next generation is started so if you have many parallel cores at your disposal and the time taken to run the simulations is the main bottleneck in calculations (as opposed to IDF generation) then a higher number here can be helpful.

Note: There is no way to control the exact number of iterations that will be run since the optimiser controls the population size of each generation.

Apply constraints to Pareto front

This option allows you to control the way that constrained optimisation result sets are displayed but does not affect the optimisation process itself. It is only available when one or more constraints are applied. The options are:

 

 

The Apply constraints to Pareto front selection can be changed during the simulation.

Pause on errors

It is important to understand the cause of any errors that occur during an optimisation. The Pause on errors option, when checked, causes a message to be displayed and the optimisation is paused. For example if there is an overlap in heating and cooling setpoint temperatures, in configurations where the heating setpoint is higher than the cooling setpoint the following error message is displayed:

 

 

This sort of error does not cause a problem for the overall optimisation study. If a particular design variant has an invalid configuration then it is assigned a penalty using the maximum objective score (assuming objectives are being minimised). This applies evolutionary pressure to discourage similar invalid design variants from appearing in future generations.

 

Once you are clear about the cause of any errors you will normally want to stop seeing reports and allow the optimisation to continue. To do this simply uncheck the Pause on errors check box. Simulations with errors are displayed in red in the grid as shown below.

 

 

Common causes of errors are:

 

Quietly retry if server is unavailable

Normally, if DesignBuilder is unable to access the requested Simulation Server, it will ask you whether you would like to Abort, Retry or Ignore the missing server. Selecting Abort cancels the whole analysis. Selecting Retry or Ignore instructs the software to keep trying. The latter option would be selected if the server became temporarily unavailable, perhaps due to a network error or because the server was down for a while.

 

However, if you are running a long analysis and you don't want to be prompted in this way due to a temporary glitch in the availability of your simulation server then you can check this option. This is similar to pre-selecting the retry or ignore options in advance.

Advanced Options

Optimisation engine

Select the engine to use from the options:

 

 

The options for Open Beagle and JEA are different and are therefore explained in their respective sections below.

 

 

Discussion on Selecting Settings

An important and often overlooked consideration is the impact of the time taken by DesignBuilder to generate the IDF input file for each design. The longer this is relative to simulation time the greater the model generation bottleneck and the less useful the large number of parallel simulations. On the other hand, the larger and more complex the model and the more detailed the simulations (nat vent, detailed HVAC, more time steps etc) the more time is taken in simulation and relatively less in IDF generation. For an extremely large/complex model, all IDF inputs will have been generated before the first results are in and the large number of parallel simulations will speed progress. For a smaller model, the IDF generation bottleneck is often more significant and first simulation results will be in before the 3rd or 4th IDF input has been generated and in this case the multiple cores will not be needed. This is often the case for simple single zone models. To test and understand this watch the Simulation Manager while the optimisation takes place. You will see new jobs being submitted, queued and simulated.

Multi-Objective Pareto Scatter Graph

When 2 objective functions are defined, the trade off for the range of design variables considered is displayed graphically on the scatter graph. The Pareto optimal solutions are displayed in red, current generation are shown in blue and previous generations are shown in dark grey.

Single Objective Graph

When a single objective is used the graphical output shows the evolution of the objective function for each iteration. Because there is no trade off with single objective optimisation, only the single most optimal solution is highlighted in green in the grid.

Grid Output