Layout optimisation
A high-level process for using the automatic layout optimisation tools in WindFarmer is as follows:
- Build a workbook ready to run the Frequency Domain Annual Energy Production calculation.
- Define buildable area and other optimisation constraints
- Ensure that you have wind flow predictions that cover the buildable area in which you want to optimise turbine locations.
- Choose your layout optimisation settings. Adjust your energy calculation settings, if desired, to ensure a quicker optimisation cost function calculation.
- Run the optimiser to generate new layouts that have improved performance.
- When you are ready, stop the optimiser and review the Layout Optimisation Results, clicking on a result to see the temporary turbine layout.
- Select your preferred temporary turbine layout to apply to the workbook for further development.
- Consider running further optimisations with different settings to further improve your design.
Optimisation preparation
To prepare a workbook for layout optimisation your workbook needs the following ingredients:
Input | description |
---|---|
Turbine types | A valid description of the turbine types is essential for all energy calculations. |
Initial turbine locations | This is not necessary for the symmetric layout optimisation algorithm, but the other optimisation algorithms require an initial layout. |
Lock any fixed turbine locations | Locked turbines, or place turbines in a neighbour wind farm or locked wind farm so they will not be moved in an optimisation. |
Valid wind flow grid | Ensure there is a wind flow prediction covering the entire buildable area at the hub heights of all turbines to be optimised. Ensure there are point predictions at any fixed neighbouring turbines outside of the grid. (See Flow model setup) |
Wind climate setup at measurement sites | The measured wind climate should be defined at each initiation measurement site. If you are using an external flow model this must be defined at the same location as the reference measurement site point wind resource. |
Buildable area | You must have one or more inclusion region to define legal turbine locations. Optionally exclusion regions can be used to define where turbines cannot be placed. |
Turbine constraints | Set a sensible minimum separation distance between turbines, either an ellipse or circular setback. |
Air density | Calculate an air density external to WindFarmer, then input this in the air density task. |
Elevation data | If you wish to use the terrain slope constraint you need gridded elevations covering the buildable area. |
Tip
When calculating wind flow and you have neighbouring wind farms, or fixed turbine locations outside the buildable area, there is no need to calculate a single enormous wind flow grid. To calculate the wind flow faster and reduce workbook size only set the flow target area to cover the buildable area. For fixed turbine locations outside this area WFA will calculate point predictions.
Layout optimisation settings The following settings apply to all optimisation algorithms:
Setting | Description |
---|---|
Max iterations | Unless some earlier stop criteria is reached, the optimiser will test the energy output of a new layout this many times before stopping. |
Number of results to keep | The Optimiser keeps this many of the top performing layouts. The summary results for these N layouts are presented in the Layout Optimisation Results table. Clicking on one row of the Layout Optimisation Results table will show that layout on the map for comparison with the current layout. |
Random number seed | The optimisers use random number generators to generate new layouts. The seed allows you to replicate the same optimisation process twice if all inputs are the same and you use the same seed. Changing the seed will make the optimiser take a different path. |
Optimisation algorithms
Onshore irregular
The onshore irregualar algorithm is based on the optimiser in WindFarmer 5.3 and performs much better than current random optimisers when there is a significant variation in the wind resource across the site. Typically, this is used on onshore sites where a regular geometry (gridded) layout is not possible.
Setting | Description |
---|---|
Max fruitless iterations | The maximum number of iterations (attempts to find a better energy yield after finding a valid layout) made by the optimiser before ending the optimisation process. |
Acceptance factor | To accept a new turbine location, the gross yield for the wind farm must be greater than acceptance factor * the previous max gross yield. See the calculation reference for more details |
Random independent
Turbine placement is completely random when using this algorithm. Each subsequent layout is unrelated to the previous layout. This can be useful for generating several starting layouts but it is unlikely to be an effective computational optimisation method.
Random walk
The random walk option is useful when you start with a layout that is already well designed. See the calculation reference for more information and discussion of the settings.
Symmetrical layout
This algorithm is based on finding the highest energy content directions in the selected frequency distribution. It will place as many turbines as possible, up to the maximum specified, within your buildable area with the defined symmetry and respecting constraints. More details about Symmetrical Layout Optimisation Algorithm can be found in the calculation reference and paper on this topic.
Setting | description |
---|---|
Number of turbines to add | Up to this many turbines will be added in each iteration to the selected wind farm. All turbines in the selected farm are first removed. The number added depends on how many turbines may be fit into the buildable area with the pre-defined geometries this algorithm will select (it may be fewer than the user entered value). |
Turbine type | The type of turbine to add in each layout. |
Wind farm | The farm to add the turbines to |
Frequency table | Select a wind speed and direction frequency distribution (defined in Wind > Calculate Wind Climate) to use to determine the array geometries. Pick a frequency distribution representative of the wind farm site. The directional distribution is used |
Cost benefit algorithm selection
You have the option to select the target of the layout optimisation process. The default is to Maximise Energy Yield.
If you have the Automation module you can import into the workbook, or create, a cost-benefit algorithm script to define a customised optimisation target. This has been used to enable optimisation of project financial performance metrics.
The options to search for larger / smaller the wind farm area are included for testing the various algorithms, but are less useful.
Optimisation tips
Test more layouts faster
Reduce resolution in the energy calculation settings to make the energy calculation faster:
- Reduce the "Number of Direction Steps" considered to 180 (if using the LWF correction) or 72 if not.
- Uncheck “calculate wind sector management rules”
- Consider running less accurate but faster energy calculations to iterate quickly to an initial layout. In a second stage perform further optimisations using the eddy viscosity wake model with the large wind farm correction at full resolution to fine tune the layout further.
Remove unnecessary buildable area constraints
- Terrain slope checking has a negative performance impact. Consider creating exclusion regions to keep turbines off obvious steep slopes and turn off this constraint if steep slopes are not likely to be a problem within the buildable area.
- Simplify your buildable area constraints. See our guidance on defining buildable area with shape files and consider using the point simplification tool to reduce the number of data points.
Use the optimiser to fine tune a sensible layout
Start the optimisation from a sensible layout then use the random walk optimiser to seek nearby better locations from the initial layout. The random walk optimiser is dependent on the initial layout. To create an initial layout, you can either:
- Design by hand a starting layout by placing turbines on the map.
- Use the gridded layout generation tool to create a starting layout.
- Use the Symmetric Layout Optimisation Algorithm to quickly generate ~10 symmetric layouts then apply the one you prefer to the workbook to set the initial layout.
Run successive layout optimisations
After each round of layout optimisation review the top stored layouts by clicking on that row in the grid. You can then select your preferred layout and apply this to the workbook as the starting point for another round of optimisation using different optimisation options. The random walk optimiser starts by making large jumps which then get smaller over time, it is susceptible to finding local maxima for this reason but if you run it multiple times you may be able to combat this. Consider also running the random independent optimisation to generate unrelated initial turbine locations for a second run of the optimiser.
If the optimiser fails to find valid layouts...
If the constraints (buildable area, slope limit or minimum turbine separation) are too restrictive the optimiser may fail to find a valid layout and the optimisation run will be aborted after 1000s of attempts. To combat this:
- Reduce the constraints (usually best done by first reducing the minimum separation distance).
- If using the random walk optimisation algorithm, try changing the jump size. See the guidance in the calculation reference
- Change the random seed for the optimiser, otherwise the same starting positions will be tested again.