Knowledge Base

Back to Softree Optimal

Optimizing Long Roads

Updated August 02, 2016

This article applies to:
  • Softree Optimal

The tutorial files referred to in this article can be installed from the Updates section of or from your CD/Flash Drive provided at time of software purchase. See Getting Started for additional information on tutorial files and the location of file install folders.

Defining a Large Problem

Large optimization problems can take a very long time to solve. One measure of problem size for Softree Optimal is the number of sampled stations; this is proportional to the length of the alignment. Another important factor is the Alignment Specification curve type in the Options, Standards Tab. Station sample spacing can vary (see Section Sampling and Accurate Costing), but if we assume 10 meters, the table below provides a rough guideline for maximum problem size.

Table 1: Recommended maximum problem size for vertical alignment optimization.

Note: There will be many exceptions to the guidelines above. Optimization solution times are very hard to predict.

Long Road Example

If you wish to optimize a long alignment (see table above) it is probably worth trying to solve to in one piece. If, however, the solver finds no solution in a reasonable amount of time, you will need to break the problem into segments. You are the one to define reasonable amount of time; optimizations can sometimes take hours or days.

In the example below, we will divide the alignment into three pieces, optimize each piece and merge the resulting alignments into a final single alignment.

Is this a Long Road?

1. Open the Location module application.

2. File | Open. Select LongRoad.dsn. Press Open.

This design has one vertical alignment named Initial; you can see this in the Alignment Properties panel on the right hand side of the screen.

3. Press Options in the Alignment Properties panel.

Figure 1: Alignment Properties, General tab, showing number of Sections sampled

In the General tab, note that the number of Sections sampled is 1391. In the Standards tab, note the alignment specification Curves and tangents [Slow] has been selected. This is a large problem according to Table 1 above.

4. Press Cancel to exit the options dialogue.

5. Press the Process button.

The Optimization Control dialogue box will appear; this allows you to examine your optimization setup before you run the optimizer. Note the red warning symbol, , next to the Sampling item.

6. Select the Sampling item in the tree to show the warning message as shown below.

Figure 2: Optimization Control dialogue box showing the large problem warning

7. Press the Proceed button.
You will be prompted with the same warning as shown above. If you have some time to kill, press the OK button and see how long this takes; go get some lunch and come back.

8. Press Cancel to abort.

Define Segment 1

Now we will define a station range to represent our first segment.

9. Create a new alignment with limited station range:

  • Press the New button to open the Options dialogue box.
  • Change the Name to “Segment 1”
  • Change the Description to “0 to 9500”.
  • Under Station Range, uncheck All. Set the Station Range from .. to 9500.
  • Leave the Sections sampled and Vertical Control as is.
  • Press the Tab key or click in any white space to update number of Selected points
The General tab of the options dialogue box should look like the figure below.

Figure 3: Restricting the Optimization Range

Note that the number of selected points has been reduced to 476, slightly below our threshold.
Note: The “long road” threshold used by Softree Optimal is somewhat arbitrary; different computers will solve the same problem in different times. In addition, different problems with the same number of points and the same curve settings will often take significantly different times to solve.
The other settings have been prepared for you; take a look at the other tabs if you’re curious.
  • Press OK to close the options dialogue box.

10. Create a vertical alignment:

  • Press the Process button to open the Optimization control dialogue box (Figure 2).
Note: there is no Sampling warning this time. Press the Proceed button in the Optimization Control dialogue box.
  • Press the Proceed button in the Optimization Control dialogue box.
On our test computer, the Pre-Process took about one minute. Then it took another minute to find a solution with Optimality Gap of about 14%.

Figure 4: Optimization progress after a solution has been found.

  • Press the Cancel button once a solution is found (it is not important for this example to wait for the optimal solution).
  • Press Yes to confirm that you accept the current best solution.
  • Finally press OK to close the Log report.
The costs shown are for the range [0, 9500]; in the profile window, observe that the new optimal alignment (heavy blue dash) stops at station 9500.

Define Segment 1 Optional

If you had troubles with the previous section or if you wish to skip it, open LongRoad - First section.dsn. Then select the Segment 1 alignment.

11. Merge Segment 1 into the current alignment:
  • Make sure Segment 1 alignment is selected.
  • Press the Set Current button to open the Make Alignment Current dialogue box.
  • Press the Merge button.
  • Wait for the recalculation.
This operation merges the optimized alignment First section with the current alignment. There is a discontinuity at station 9500 but, as we will see below, this is not a problem. Note that if you decide to re-cost the current alignment, it will only calculate over the interval [0, 9500].

Define Segment 2

To prevent the need for material movement between optimized segments, we want to start the next segment at a zero crossing in the Mass Haul diagram.

Figure 5: Hover tip in Mass Haul diagram shows zero crossing near station 9460

Note: It is not always possible to end your first segment with zero accumulated volume. In this event, create a fixed (not variable) pit in your second optimization to account for the surplus or deficit (Pits tab in the options dialogue box).

12. Create another segment:

  • With Segment 1 alignment selected in the Alignments list, press the New button.
  • The name is now “Segment 2” (automatic).
  • Change the description to “stations 9460 to 18500”.
  • Under Station Range, set the Station Range from 9460 to 18500.
  • Leave Sections and Vertical Control as is.

Figure 6: Selection of Second Alignment Range

In order for the start of the second segment alignment to match the end of the first segment, a control point must be created.

13. Create a control point to ensure continuity:

  • Click on the Control Pts. tab.
  • Select and Remove the control point at station 0.0 (outside our station range).
  • Press the Add button and enter 9460 (or select Start of alignment). Press OK.
Note that the Elevation value is already set correctly (click to the Get from Alignment button if you are not sure).
  • Set the Enable Grade Control check box.
  • And press the associated Get from Alignment button to set the Grade value as shown below.
  • The Description is optional.
  • Press OK to close options.

Figure 7: Control point to ensure continuity of second optimized range

Now we’ll optimize the second segment.

14. Press Process and Proceed. Again, stop once a solution is found.

15. Again, press Set Current and Merge. Notice that the alignment is smooth and continuous at station 9460.

Define the 3rd and Final Segment

If you had troubles with the previous section or if you wish to skip it, open LongRoad - Second section.dsn. Then select the Segment 2 alignment.

16. Repeat the above process for the last section in the road (specify the station to value with “..” as shown in the figure below).

  • Set Current, Merge.
  • Find a Mass haul zero before the end of the last segment (station 18410).
  • Create a New alignment: “Segment 3”.
  • Add Control point to ensure continuity.
  • Optimize.

Figure 8: Final segment, set end stations to “..”.

Create Complete Alignment

When you have completed the final Set Current, Merge operation you will want to look at the cost and haul information for the entire 27 km. We do this by creating one more vertical alignment.

If you had troubles with the previous section or if you wish to skip it, open LongRoad - final.dsn.

17. Create the final combined alignment:

  • With the Segment 3 (the current alignment) selected, press the New button.
  • Change the name to “final”.
  • Change the description to “entire road optimal”.
  • Under Station Range, set the All check box.
  • Leave Sections and Vertical Control areas as is; we will not optimize this alignment.
  • Press OK to close options.
This alignment contains all the merged alignments.
18. Press the Set Current button.19.When the volumes calculation is finished, Re-Cost the selected alignment:
  • Press the Re-Cost button to open the Re-Cost dialogue box.
  • Keep the existing options and press the Re-Cost button.

The costs and Haul Graph now show the complete design. You also have all the component segment alignments if you want to review the process or repeat any portion.

Figure 9: Combined alignment.

20. File | Exit.Do not save the design.