April 25, 2024

Understanding optimization parameters to control project shape


ForSys can create projects with a wide range of shapes in terms of compactness and smoothness of the boundary.   The shape of projects is controlled by parameters that change how ForSys selects adjacent stands to “grow” a project.  Compact, circular projects are created when the search algorithm penalizes stands for being farther away from the seed stand even though they might have the highest objective.

Conversely, diffuse and stringy shapes are created when the search algorithm selects stands only based on the objective value with no consideration of the distance from the seed stand.  By adjusting the parameters, a wide range of shapes can be generated.  Project compactness-diffuseness can be controlled by two features in ForSysX:

• Inverse distance power

• Max project diameter

The inverse distance power controls the penalty for adding stands far away from the centroid, with a value of 0 specifying no penalty.  The max project diameter controls how far ForSys can search but applies no penalty for stands far away; a value of -1 specifies no search distance limit. Originally, max project diameter was created to limit how far ForSys can search from a seed stand to speed up initial runs when scenarios were being explored. This was then turned off for final runs. However, this feature can also be used to control project compactness. Let’s compare how these two features function on an example landscape.

Here is a map of an example landscape on the Shasta-Trinity National Forest showing areas that are available for treatment.


We want to create five 1500-hectare projects, prioritizing timber volume. First let’s look at where areas of high timber volume are located within our study area.

Let’s run ForSys with the default optimization parameters to create five projects.

Default Scenario

Here, for clarity we have the default parameters for inverse_distance_power and max_project_diameter using ForSysXR. ForSysXR is an R package that allows the user to setup and run ForSysX from R using Windows batch files and DLL wrappers. The settings applied below are identical to the parameters in the ForSysX GUI.

Projects created using the default ForSys optimization parameters.

We can see that projects are diffuse and located across the study area. Let’s rerun ForSys and penalize stands that are farther from our seed stand. ForSys will optimize looking for a combination of spatial objectives (compactness) as well as our attribute objective (timber volume).

Inverse Distance Power Scenario - High penalty

Here we have selected a really high penalty for distance by inputting an inverse_distance_power value of 5.

Projects created when changing the optimization parameter to set a high inverse distance power (IDP = 5).

Now our projects are very compact and move towards the southwest portion of the study area. Let’s modify the penalty to be less severe.

Inverse Distance Power Scenario - Low penalty

Now we are going to have a more conservative penalty for distance by inputting an inverse_distance_power value of 0.5.

Projects created when changing the optimization parameter to set a low inverse distance power (IDP = 0.5).

This output is much less compact than the first, but does achieve our objective of preventing long stringers of high objective.

Let’s now compare what happens if we create a “fence” around where ForSys can search for stands to treat by setting a max project diameter. In this case, stands won’t be penalized for being far from a seed stand, but ForSys will hit a wall in terms of how far it can look for stands with high objective. We’ll set the Max Project Diameter to 8,740 meters. This is about double a circle with an area of 1500 hectares.

Max Project Diameter Scenario - 8k

Projects created when changing the optimization parameter for max project diameter (8740 m).

Now our projects look a bit more like the default. They have fingers projecting from the center as ForSys looks for veins of high objective, and again, projects are located in the northeast of the study area.

What if we run the same scenario, but decrease the size of the “fence”. Let’s rerun and set the Max Project Diameter to 5,000 meters.

Max Project Diameter Scenario - 5k

Projects created when changing the optimization parameter for max project diameter (5000 m).

These projects look a lot like the outputs for the high and low penalty IDP scenarios. How do all these scenarios compare in terms of attainment?

On this landscape, the inverse distance power scenario with a high penalty for distance (maximizing project compactness) achieved the lowest amount of our objective because it was seeking spatial factors (compactness) over the objective (timber volume). But a low IDP penalty created a middle ground between optimizing for both spatial factors (compactness) and our objective, timber volume. The “small fence” scenario where ForSys is limited as to how far it can search, found a similar “middle ground”; this scenario achieved the objective while still keeping projects compact. Again, on this particular landscape, the “big fence” scenario almost matched the default setting, effectively only constraining the northeast project to a small extent.

This set of scenarios illustrates it is important to understand how these parameters function on a particular landscape, and the tradeoff in attainment when building compact projects. These settings need to be applied carefully.

These two metrics can be tweaked to achieve varying degrees of project compactness, but the impact on the total objective attained should be understood.

Comparison of project shape for all five scenarios.




Show more

Getting started with scenario planning and ForSys

Read more
Read more

How to use ForSys

Read more
Read more